diff --git a/apps/api/documents/api.js b/apps/api/documents/api.js index 05c8e9e39..3ecce3439 100644 --- a/apps/api/documents/api.js +++ b/apps/api/documents/api.js @@ -175,9 +175,12 @@ }, leftMenu: { navigation: false/true, - spellcheck: false/true // spellcheck button in sse + spellcheck: false/true // spellcheck button in sse, + mode: false/true // init value for left panel, true - is visible, false - is hidden, used for option "Left panel" on the View Tab } / false / true, // use instead of customization.leftMenu - rightMenu: false/true, // use instead of customization.rightMenu + rightMenu: { + mode: false/true // init value for right panel, true - is visible, false - is hidden, used for option "Right panel" on the View Tab + } / false/true, // use instead of customization.rightMenu statusBar: { textLang: false/true // text language button in de/pe docLang: false/true // document language button in de/pe @@ -190,6 +193,10 @@ change: false/true // hide/show feature in de/pe/sse } / false / true // if false/true - use as init value in de/pe. use instead of customization.spellcheck parameter }, + font: { + name: "Arial", + size: "11px"; + }, chat: true, comments: true, zoom: 100, @@ -219,6 +226,7 @@ hideRulers: false // hide or show rulers on first loading (presentation or document editor) hideNotes: false // hide or show notes panel on first loading (presentation editor) uiTheme: 'theme-dark' // set interface theme: id or default-dark/default-light + integrationMode: "embed" // turn off scroll to frame }, coEditing: { mode: 'fast', // , 'fast' or 'strict'. if 'fast' and 'customization.autosave'=false -> set 'customization.autosave'=true. 'fast' - default for editor @@ -493,6 +501,9 @@ if (target && _checkConfigParams()) { iframe = createIframe(_config); + if (_config.editorConfig.customization && _config.editorConfig.customization.integrationMode==='embed') + window.AscEmbed && window.AscEmbed.initWorker(iframe); + if (iframe.src) { var pathArray = iframe.src.split('/'); this.frameOrigin = pathArray[0] + '//' + pathArray[2]; diff --git a/apps/api/documents/cache-scripts.html b/apps/api/documents/cache-scripts.html index 8f1b4efbe..4ef772077 100644 --- a/apps/api/documents/cache-scripts.html +++ b/apps/api/documents/cache-scripts.html @@ -10,7 +10,7 @@ - + diff --git a/apps/common/forms/resources/less/common.less b/apps/common/forms/resources/less/common.less index e2580c7f0..fd41bfa58 100644 --- a/apps/common/forms/resources/less/common.less +++ b/apps/common/forms/resources/less/common.less @@ -698,6 +698,14 @@ .fontsize(@font-size-large); } +.font-size-medium { + .fontsize(@font-size-medium); +} + +.font-size-huge { + .fontsize(@font-size-huge); +} + .search-bar { z-index: 50; } \ No newline at end of file diff --git a/apps/common/main/lib/component/Button.js b/apps/common/main/lib/component/Button.js index 2f0356539..41a7a1ccc 100644 --- a/apps/common/main/lib/component/Button.js +++ b/apps/common/main/lib/component/Button.js @@ -237,7 +237,7 @@ define([ var getWidthOfCaption = function (txt) { var el = document.createElement('span'); - el.style.fontSize = '11px'; + el.style.fontSize = document.documentElement.style.getPropertyValue("--font-size-base-app-custom") || '11px'; el.style.fontFamily = 'Arial, Helvetica, "Helvetica Neue", sans-serif'; el.style.position = "absolute"; el.style.top = '-1000px'; @@ -769,7 +769,7 @@ define([ return (this.cmpEl) ? this.cmpEl.is(":visible") : $(this.el).is(":visible"); }, - updateHint: function(hint) { + updateHint: function(hint, isHtml) { this.options.hint = hint; if (!this.rendered) return; @@ -795,10 +795,12 @@ define([ this.btnMenuEl.removeData('bs.tooltip'); this.btnEl.tooltip({ + html: !!isHtml, title : (typeof hint == 'string') ? hint : hint[0], placement : this.options.hintAnchor||'cursor' }); this.btnMenuEl && this.btnMenuEl.tooltip({ + html: !!isHtml, title : hint[1], placement : this.options.hintAnchor||'cursor' }); diff --git a/apps/common/main/lib/component/ComboBorderSize.js b/apps/common/main/lib/component/ComboBorderSize.js index d784d0f7a..6401e6867 100644 --- a/apps/common/main/lib/component/ComboBorderSize.js +++ b/apps/common/main/lib/component/ComboBorderSize.js @@ -102,12 +102,12 @@ define([ var txtPt = Common.Utils.Metric.getMetricName(Common.Utils.Metric.c_MetricUnits.pt), data = [ {displayValue: '0.5 ' + txtPt, value: 0.5, pxValue: 0.5, offsety: 0}, - {displayValue: '1 ' + txtPt, value: 1, pxValue: 1, offsety: 20}, + {displayValue: '1 ' + txtPt, value: 1, pxValue: 1, offsety: 20}, //pxValue = 1.34px {displayValue: '1.5 ' + txtPt, value: 1.5, pxValue: 2, offsety: 40}, {displayValue: '2.25 ' + txtPt, value: 2.25,pxValue: 3, offsety: 60}, {displayValue: '3 ' + txtPt, value: 3, pxValue: 4, offsety: 80}, - {displayValue: '4.5 ' + txtPt, value: 4.5, pxValue: 5, offsety: 100}, - {displayValue: '6 ' + txtPt, value: 6, pxValue: 6, offsety: 120} + {displayValue: '4.5 ' + txtPt, value: 4.5, pxValue: 6, offsety: 100}, + {displayValue: '6 ' + txtPt, value: 6, pxValue: 8, offsety: 120} ]; if (options.allowNoBorders !== false) data.unshift({displayValue: this.txtNoBorders, value: 0, pxValue: 0 }); @@ -209,8 +209,8 @@ define([ {displayValue: '1.5 ' + txtPt, value: 1.5, pxValue: 2, offsety: 40}, {displayValue: '2.25 ' + txtPt, value: 2.25,pxValue: 3, offsety: 60}, {displayValue: '3 ' + txtPt, value: 3, pxValue: 4, offsety: 80}, - {displayValue: '4.5 ' + txtPt, value: 4.5, pxValue: 5, offsety: 100}, - {displayValue: '6 ' + txtPt, value: 6, pxValue: 6, offsety: 120} + {displayValue: '4.5 ' + txtPt, value: 4.5, pxValue: 6, offsety: 100}, + {displayValue: '6 ' + txtPt, value: 6, pxValue: 8, offsety: 120} ]; if (options.allowNoBorders !== false) diff --git a/apps/common/main/lib/component/ComboBox.js b/apps/common/main/lib/component/ComboBox.js index 63e7a524c..1eb060eb2 100644 --- a/apps/common/main/lib/component/ComboBox.js +++ b/apps/common/main/lib/component/ComboBox.js @@ -407,8 +407,9 @@ define([ }, selectCandidate: function() { - var index = this._search.index || 0, + var index = (this._search.index && this._search.index != -1) ? this._search.index : 0, re = new RegExp('^' + ((this._search.full) ? this._search.text : this._search.char), 'i'), + isFirstCharsEqual = re.test(this.store.at(index).get(this.displayField)), itemCandidate, idxCandidate; for (var i=0; iindex) { itemCandidate = item; diff --git a/apps/common/main/lib/component/DataView.js b/apps/common/main/lib/component/DataView.js index ce1471505..e2413e9d8 100644 --- a/apps/common/main/lib/component/DataView.js +++ b/apps/common/main/lib/component/DataView.js @@ -393,18 +393,36 @@ define([ if (suspendEvents) this.suspendEvents(); - - if (!this.multiSelect) { + this.extremeSeletedRec = record; + if (!this.multiSelect || ( !this.pressedShift && !this.pressedCtrl) || !this.currentSelectedRec || (this.pressedShift && this.currentSelectedRec == record)) { _.each(this.store.where({selected: true}), function(rec){ rec.set({selected: false}); }); if (record) { record.set({selected: true}); + this.currentSelectedRec = record; } } else { - if (record) - record.set({selected: !record.get('selected')}); + if (record) { + if(this.pressedCtrl) { + record.set({selected: !record.get('selected')}); + this.currentSelectedRec = record; + } + else if(this.pressedShift){ + var me =this; + var inRange=false; + _.each(me.store.models, function(rec){ + if(me.currentSelectedRec == rec || record == rec){ + inRange = !inRange; + rec.set({selected: true}); + } + else { + rec.set({selected: (inRange)}); + } + }); + } + } } if (suspendEvents) @@ -708,13 +726,22 @@ define([ onKeyDown: function (e, data) { if ( this.disabled ) return; if (data===undefined) data = e; - if (_.indexOf(this.moveKeys, data.keyCode)>-1 || data.keyCode==Common.UI.Keys.RETURN) { + + if(this.multiSelect) { + if (data.keyCode == Common.UI.Keys.CTRL) { + this.pressedCtrl = true; + } else if (data.keyCode == Common.UI.Keys.SHIFT) { + this.pressedShift = true; + } + } + + if (_.indexOf(this.moveKeys, data.keyCode)>-1 || data.keyCode==Common.UI.Keys.RETURN) { data.preventDefault(); data.stopPropagation(); - var rec = this.getSelectedRec(); - if (this.lastSelectedRec===null) + var rec =(this.multiSelect) ? this.extremeSeletedRec : this.getSelectedRec(); + if (this.lastSelectedRec === null) this.lastSelectedRec = rec; - if (data.keyCode==Common.UI.Keys.RETURN) { + if (data.keyCode == Common.UI.Keys.RETURN) { this.lastSelectedRec = null; if (this.selectedBeforeHideRec) // only for ComboDataView menuPicker rec = this.selectedBeforeHideRec; @@ -724,6 +751,7 @@ define([ if (this.parentMenu) this.parentMenu.hide(); } else { + this.pressedCtrl=false; var idx = _.indexOf(this.store.models, rec); if (idx<0) { if (data.keyCode==Common.UI.Keys.LEFT) { @@ -804,12 +832,20 @@ define([ } }, + onKeyUp: function(e){ + if(e.keyCode == Common.UI.Keys.SHIFT) + this.pressedShift = false; + if(e.keyCode == Common.UI.Keys.CTRL) + this.pressedCtrl = false; + }, + attachKeyEvents: function() { if (this.enableKeyEvents && this.handleSelect) { var el = $(this.el).find('.inner').addBack().filter('.inner'); el.addClass('canfocused'); el.attr('tabindex', this.tabindex.toString()); el.on((this.parentMenu && this.useBSKeydown) ? 'dataview:keydown' : 'keydown', _.bind(this.onKeyDown, this)); + el.on((this.parentMenu && this.useBSKeydown) ? 'dataview:keyup' : 'keyup', _.bind(this.onKeyUp, this)); } }, @@ -819,7 +855,11 @@ define([ this.scrollToRecord(this.lastSelectedRec); this.lastSelectedRec = null; } else { - this.scrollToRecord(this.getSelectedRec()); + var selectedRec = this.getSelectedRec(); + if (!this.multiSelect) + this.scrollToRecord(selectedRec); + else if(selectedRec && selectedRec.length > 0) + this.scrollToRecord(selectedRec[selectedRec.length - 1]); } }, @@ -1328,12 +1368,30 @@ define([ props = {minScrollbarLength : this.minScrollbarLength}; this.scrollAlwaysVisible && (props.alwaysVisibleY = this.scrollAlwaysVisible); - if (top + menuH > docH ) { - innerEl.css('max-height', (docH - top - paddings - margins) + 'px'); - this.scroller.update(props); - } else if ( top + menuH < docH && innerEl.height() < this.options.restoreHeight ) { - innerEl.css('max-height', (Math.min(docH - top - paddings - margins, this.options.restoreHeight)) + 'px'); - this.scroller.update(props); + var menuUp = false; + if (this.parentMenu.menuAlign) { + var m = this.parentMenu.menuAlign.match(/^([a-z]+)-([a-z]+)/); + menuUp = (m[1]==='bl' || m[1]==='br'); + } + if (menuUp) { + var bottom = top + menuH; + if (top<0) { + innerEl.css('max-height', (bottom - paddings - margins) + 'px'); + menuRoot.css('top', 0); + this.scroller.update(props); + } else if (top>0 && innerEl.height() < this.options.restoreHeight) { + innerEl.css('max-height', (Math.min(bottom - paddings - margins, this.options.restoreHeight)) + 'px'); + menuRoot.css('top', bottom - menuRoot.outerHeight()); + this.scroller.update(props); + } + } else { + if (top + menuH > docH ) { + innerEl.css('max-height', (docH - top - paddings - margins) + 'px'); + this.scroller.update(props); + } else if ( top + menuH < docH && innerEl.height() < this.options.restoreHeight ) { + innerEl.css('max-height', (Math.min(docH - top - paddings - margins, this.options.restoreHeight)) + 'px'); + this.scroller.update(props); + } } }, diff --git a/apps/common/main/lib/component/Menu.js b/apps/common/main/lib/component/Menu.js index 03e16cc01..8b2c0e30d 100644 --- a/apps/common/main/lib/component/Menu.js +++ b/apps/common/main/lib/component/Menu.js @@ -145,7 +145,7 @@ define([ style : '', itemTemplate: null, items : [], - menuAlign : 'tl-bl', + menuAlign : 'tl-bl',//menu - parent menuAlignEl : null, offset : [0, 0], cyclic : true, @@ -472,8 +472,9 @@ define([ }, selectCandidate: function() { - var index = this._search.index || 0, + var index = (this._search.index && this._search.index != -1) ? this._search.index : 0, re = new RegExp('^' + ((this._search.full) ? this._search.text : this._search.char), 'i'), + isFirstCharsEqual = re.test(this.items[index].caption), itemCandidate, idxCandidate; for (var i=0; iindex) { itemCandidate = item; @@ -1051,8 +1054,9 @@ define([ }, selectCandidate: function() { - var index = this._search.index || 0, + var index = (this._search.index && this._search.index != -1) ? this._search.index : 0, re = new RegExp('^' + ((this._search.full) ? this._search.text : this._search.char), 'i'), + isFirstCharsEqual = re.test(this.items[index].caption), itemCandidate, idxCandidate; for (var i=0; iindex) { itemCandidate = item; diff --git a/apps/common/main/lib/component/Mixtbar.js b/apps/common/main/lib/component/Mixtbar.js index 7b59950ed..0361f6c1d 100644 --- a/apps/common/main/lib/component/Mixtbar.js +++ b/apps/common/main/lib/component/Mixtbar.js @@ -399,7 +399,9 @@ define([ _btns = data.buttons, _flex = data.flex; var more_section = $active.find('.more-box'); - + if (more_section.length===0) { + me.setMoreButton($active.attr('data-tab'), $active); + } if ( !_rightedge ) { _rightedge = $active.get(0).getBoundingClientRect().right; } @@ -527,10 +529,30 @@ define([ this.$moreBar = btnsMore[tab].panel; }, + clearMoreButton: function(tab) { + var panel = this.$panels.filter('[data-tab=' + tab + ']'); + if ( panel.length ) { + var data = panel.data(); + data.buttons = data.flex = data.rightedge = undefined; + panel.find('.more-box').remove(); + } + if (btnsMore[tab]) { + var moreContainer = optsFold.$bar.find('.more-container[data-tab="' + tab + '"]'); + moreContainer.remove(); + btnsMore[tab].remove(); + delete btnsMore[tab]; + } + }, + resizeToolbar: function(reset) { var $active = this.$panels.filter('.active'), - more_section = $active.find('.more-box'), - more_section_width = parseInt(more_section.css('width')) || 0, + more_section = $active.find('.more-box'); + + if (more_section.length===0) { + this.setMoreButton($active.attr('data-tab'), $active); + } + + var more_section_width = parseInt(more_section.css('width')) || 0, box_controls_width = $active.parents('.box-controls').width(), _maxright = box_controls_width, _rightedge = $active.get(0).getBoundingClientRect().right, diff --git a/apps/common/main/lib/component/TableStyler.js b/apps/common/main/lib/component/TableStyler.js index 018873d69..b54139f7e 100644 --- a/apps/common/main/lib/component/TableStyler.js +++ b/apps/common/main/lib/component/TableStyler.js @@ -45,324 +45,202 @@ define([ 'common/main/lib/component/BaseView' ], function () { 'use strict'; + Common.UI.CellBorder = function (options){ + var me =this; - Common.UI.CellStyler = Common.UI.BaseView.extend({ - options : { - clickOffset : 10, - overwriteStyle : true, - maxBorderSize : 6, - halfBorderSize : false, - defaultBorderSize : 1, - defaultBorderColor : '#ccc' - }, + var virtualBorderSize, + virtualBorderColor, + borderSize, + borderColor, + borderAlfa; - template: _.template([ - '
', - '
', - '
', - '
', - '
' - ].join('')), + me.overwriteStyle = options.overwriteStyle !== undefined ? options.overwriteStyle : true; + me.maxBorderSize = options.maxBorderSize ? options.maxBorderSize : 8; + me.defaultBorderSize = options.defaultBorderSize !== undefined ? options.defaultBorderSize : 1; + me.defaultBorderColor = options.defaultBorderColor ? options.defaultBorderColor : '#ccc'; + me.col = options.col !== undefined ? options.col : -1; + me.row = options.row !== undefined ? options.row : -1; + me.cellPadding = options.cellPadding !== undefined ? options.cellPadding : 10; + me.tablePadding = options.tablePadding !== undefined ? options.tablePadding : 10; + me.X1 = options.x1 !== undefined ? options.x1 : 0; + me.Y1 = options.y1 !== undefined ? options.y1 : 0; + me.X2 = options.x2 !== undefined ? options.x2 : 0; + me.Y2 = options.y2 !== undefined ? options.y2 : 0; + me.numInCell = options.numInCell !== undefined ? options.numInCell : -1; + me.scale = options.scale !== undefined ? options.scale : 2; + me.rows = options.rows !== undefined ? options.rows : 2; + me.columns = options.columns !== undefined ? options.columns : 2; + me.context = options.context; - initialize : function(options) { - Common.UI.BaseView.prototype.initialize.call(this, options); + virtualBorderSize = me.defaultBorderSize; + virtualBorderColor = new Common.Utils.RGBColor(me.defaultBorderColor); + borderSize = virtualBorderSize; + borderColor = virtualBorderColor; + borderAlfa = 1; - var me = this, - divContent = undefined, - virtualBorderSize, - virtualBorderColor, - borderSize = {}, - borderColor = {}, - borderAlfa = {}; + me.setBordersSize = function (size) { + borderSize = (size > this.maxBorderSize) ? this.maxBorderSize : size; + borderAlfa = (size < 1) ? 0.3 : 1; + }; - me.id = me.options.id || Common.UI.getId(); - me.clickOffset = me.options.clickOffset; - me.overwriteStyle = me.options.overwriteStyle; - me.maxBorderSize = me.options.maxBorderSize; - me.halfBorderSize = me.options.halfBorderSize; - me.defaultBorderSize = me.options.defaultBorderSize; - me.defaultBorderColor = me.options.defaultBorderColor; - me.col = me.options.col; - me.row = me.options.row; + me.setBordersColor = function( color) { + var newColor = color; + if(typeof(color) == "string") + newColor = new Common.Utils.RGBColor(color); + borderColor = newColor; + }; - virtualBorderSize = me.defaultBorderSize; - virtualBorderColor = new Common.Utils.RGBColor(me.defaultBorderColor); + me.getBorderSize = function() { + return borderSize; + }; - borderSize = { - top : virtualBorderSize, - right : virtualBorderSize, - bottom : virtualBorderSize, - left : virtualBorderSize - }; + me.getBorderColor = function() { + return borderColor.toHex(); + }; - borderColor = { - top : virtualBorderColor, - right : virtualBorderColor, - bottom : virtualBorderColor, - left : virtualBorderColor - }; + me.setVirtualBorderSize = function(size) { + virtualBorderSize = (size > this.maxBorderSize) ? this.maxBorderSize : size; + }; - borderAlfa = { - top : 1, - right : 1, - bottom : 1, - left : 1 - }; + me.setVirtualBorderColor = function(color){ + virtualBorderColor = color; + }; - me.rendered = false; + me.getVirtualBorderSize = function() { + return virtualBorderSize; + }; - var applyStyle = function(){ - if (!_.isUndefined(divContent)){ - var brd = (borderSize.left>0.1 && borderSize.left<1) ? 1 : borderSize.left; - var drawLeftSize = Math.abs((me.halfBorderSize) ? ((brd % 2) ? brd - 1: brd) * 0.5 : brd); + me.getVirtualBorderColor = function() { + return virtualBorderColor.toHex(); + }; - brd = (borderSize.right>0.1 && borderSize.right<1) ? 1 : borderSize.right; - var drawRightSize = Math.abs((me.halfBorderSize) ? ((brd % 2) ? brd + 1: brd) * 0.5 : brd); + me.scaleBorderSize = function (size){ + return (size*me.scale + 0.5)>>0; + }; - brd = (borderSize.top>0.1 && borderSize.top<1) ? 1 : borderSize.top; - var drawTopSize = Math.abs((me.halfBorderSize) ? ((brd % 2) ? brd - 1: brd) * 0.5 : brd); - - brd = (borderSize.bottom>0.1 && borderSize.bottom<1) ? 1 : borderSize.bottom; - var drawBottomSize = Math.abs((me.halfBorderSize) ? ((brd % 2) ? brd + 1: brd) * 0.5 : brd); - - var value = - 'inset ' + ((drawLeftSize>0.1 && drawLeftSize<1) ? 1 : drawLeftSize) + 'px' + ' 0' + ' 0 ' + borderColor.left.toRGBA(borderAlfa.left) + ', ' + - 'inset ' + -1*((drawRightSize>0.1 && drawRightSize<1) ? 1 : drawRightSize) + 'px' + ' 0' + ' 0 ' + borderColor.right.toRGBA(borderAlfa.right) + ', ' + - 'inset ' + '0 ' + ((drawTopSize>0.1 && drawTopSize<1) ? 1 : drawTopSize) + 'px' + ' 0 ' + borderColor.top.toRGBA(borderAlfa.top) + ', ' + - 'inset ' + '0 ' + -1*((drawBottomSize>0.1 && drawBottomSize<1) ? 1 : drawBottomSize) + 'px' + ' 0 ' + borderColor.bottom.toRGBA(borderAlfa.bottom); - - divContent.css('box-shadow', value); - } - }; - - me.on('render:after', function(cmp) { - if (this.cmpEl){ - divContent = this.cmpEl.find('.cell-content'); - - applyStyle(); - } - - this.cmpEl.on('click', function(event){ - var pos = { - x: event.pageX*Common.Utils.zoom() - me.cmpEl.offset().left, - y: event.pageY*Common.Utils.zoom() - me.cmpEl.offset().top + me.getLine = function (){ + var size = me.scaleBorderSize(borderSize); + if(me.numInCell < 0) { + if (me.Y1 == me.Y2) + return { + X1: me.X1 >> 0, + Y1: ((me.Y1 + size / 2) >> 0) - size / 2, + X2: (me.X2) >> 0, + Y2: ((me.Y2 + size / 2) >> 0) - size / 2 }; - - var ptInPoly = function(npol, xp, yp, x, y) { - var i, j, c = 0; - for (i = 0, j = npol - 1; i < npol; j = i++){ - if ((((yp [i] <= y) && (y < yp [j])) || ((yp [j] <= y) && (y < yp [i]))) && (x < (xp [j] - xp [i]) * (y - yp [i]) / (yp [j] - yp [i]) + xp [i])) - c = !c; - } - return c; + else + return { + X1: ((me.X1 + size / 2) >> 0) - size / 2, + Y1: me.Y1 >> 0, + X2: ((me.X2 + size / 2) >> 0) - size / 2, + Y2: me.Y2 >> 0 }; + } + else { + var lines = [], step, + cellPadding = me.cellPadding * me.scale; + size *= (me.numInCell === 0)? 1 : -1; - var meWidth = me.cmpEl.outerWidth(); - var meHeight = me.cmpEl.outerHeight(); - - if (ptInPoly(4, [0, meWidth, meWidth-me.clickOffset, me.clickOffset], [0, 0, me.clickOffset, me.clickOffset], pos.x, pos.y)){ - if (me.overwriteStyle){ - if (borderSize.top != virtualBorderSize || !borderColor.top.isEqual(virtualBorderColor)){ - borderSize.top = virtualBorderSize; - borderColor.top = virtualBorderColor; - borderAlfa.top = (virtualBorderSize<1) ? 0.3 : 1; - } else { - borderSize.top = 0; - } - } else { - borderSize.top = (borderSize.top > 0) ? 0 : virtualBorderSize; - borderColor.top = virtualBorderColor; - } - - me.fireEvent('borderclick', me, 't', borderSize.top, borderColor.top.toHex()); - - } else if (ptInPoly(4, [meWidth, meWidth, meWidth-me.clickOffset, meWidth-me.clickOffset], [0, meHeight, meHeight-me.clickOffset, me.clickOffset], pos.x, pos.y)){ - if (me.overwriteStyle){ - if (borderSize.right != virtualBorderSize || !borderColor.right.isEqual(virtualBorderColor)){ - borderSize.right = virtualBorderSize; - borderColor.right = virtualBorderColor; - borderAlfa.right = (virtualBorderSize<1) ? 0.3 : 1; - } else { - borderSize.right = 0; - } - } else { - borderSize.right = (borderSize.right > 0) ? 0 : virtualBorderSize; - borderColor.right = virtualBorderColor; - } - - me.fireEvent('borderclick', me, 'r', borderSize.right, borderColor.right.toHex()); - - } else if (ptInPoly(4, [0, me.clickOffset, meWidth-me.clickOffset, meWidth], [meHeight, meHeight-me.clickOffset, meHeight-me.clickOffset, meHeight], pos.x, pos.y)){ - if (me.overwriteStyle){ - if (borderSize.bottom != virtualBorderSize || !borderColor.bottom.isEqual(virtualBorderColor)){ - borderSize.bottom = virtualBorderSize; - borderColor.bottom = virtualBorderColor; - borderAlfa.bottom = (virtualBorderSize<1) ? 0.3 : 1; - } else { - borderSize.bottom = 0; - } - } else { - borderSize.bottom = (borderSize.bottom > 0) ? 0 : virtualBorderSize; - borderColor.bottom = virtualBorderColor; - } - - me.fireEvent('borderclick', me, 'b', borderSize.bottom, borderColor.bottom.toHex()); - - } else if (ptInPoly(4, [0, me.clickOffset, me.clickOffset, 0], [0, me.clickOffset, meHeight-me.clickOffset, meHeight], pos.x, pos.y)){ - if (me.overwriteStyle){ - if (borderSize.left != virtualBorderSize || !borderColor.left.isEqual(virtualBorderColor)){ - borderSize.left = virtualBorderSize; - borderColor.left = virtualBorderColor; - borderAlfa.left = (virtualBorderSize<1) ? 0.3 : 1; - } else { - borderSize.left = 0; - } - } else { - borderSize.left = (borderSize.left > 0) ? 0 : virtualBorderSize; - borderColor.left = virtualBorderColor; - } - - me.fireEvent('borderclick', me, 'l', borderSize.left, borderColor.left.toHex()); + if (me.Y1 == me.Y2){ + step = (me.X2 - me.X1)/me.columns; + for(var col = 0; col < me.columns; col++ ){ + lines.push({ + X1: (me.X1 + col * step + ((col > 0) | 0) * cellPadding/2) >> 0, + Y1: (me.Y1 >> 0) + size / 2, + X2: (me.X1 + (col + 1) * step - ((col < me.columns - 1) | 0) * cellPadding/2) >> 0, + Y2: (me.Y1 >> 0) + size / 2 + }); } - - applyStyle(); - }); - }); - - me.setBordersSize = function(borders, size) { - size = (size > this.maxBorderSize) ? this.maxBorderSize : size; - - if (borders.indexOf('t') > -1) { - borderSize.top = size; - borderAlfa.top = (size<1) ? 0.3 : 1; } - if (borders.indexOf('r') > -1) { - borderSize.right = size; - borderAlfa.right = (size<1) ? 0.3 : 1; + else { + step = (me.Y2 - me.Y1)/me.rows; + for(var row = 0; row < me.rows; row++ ) { + lines.push({ + X1: (me.X1 >> 0) + size / 2, + Y1: (me.Y1 + row * step + ((row >0) | 0) * cellPadding/2) >> 0, + X2: (me.X1 >> 0) + size / 2, + Y2: (me.Y1 + (row + 1) * step - ((row < me.rows - 1) | 0) * cellPadding/2) >> 0 + }); + } } - if (borders.indexOf('b') > -1) { - borderSize.bottom = size; - borderAlfa.bottom = (size<1) ? 0.3 : 1; - } - if (borders.indexOf('l') > -1) { - borderSize.left = size; - borderAlfa.left = (size<1) ? 0.3 : 1; - } - - applyStyle(); - }; - - me.setBordersColor = function(borders, color) { - var newColor = new Common.Utils.RGBColor(color); - - if (borders.indexOf('t') > -1) - borderColor.top = newColor; - if (borders.indexOf('r') > -1) - borderColor.right = newColor; - if (borders.indexOf('b') > -1) - borderColor.bottom = newColor; - if (borders.indexOf('l') > -1) - borderColor.left = newColor; - - applyStyle(); - }; - - me.getBorderSize = function(border) { - switch(border){ - case 't': - return borderSize.top; - case 'r': - return borderSize.right; - case 'b': - return borderSize.bottom; - case 'l': - return borderSize.left; - } - return null; - }; - - me.getBorderColor = function(border) { - switch(border){ - case 't': - return borderColor.top.toHex(); - case 'r': - return borderColor.right.toHex(); - case 'b': - return borderColor.bottom.toHex(); - case 'l': - return borderColor.left.toHex(); - } - return null; - }; - - me.setVirtualBorderSize = function(size) { - virtualBorderSize = (size > this.maxBorderSize) ? this.maxBorderSize : size; - }; - - me.setVirtualBorderColor = function(color){ - var newColor = new Common.Utils.RGBColor(color); - - if (virtualBorderColor.isEqual(newColor)) - return; - - virtualBorderColor = newColor; - }; - - me.getVirtualBorderSize = function() { - return virtualBorderSize; - }; - - me.getVirtualBorderColor = function() { - return virtualBorderColor.toHex(); - }; - - if (me.options.el) { - me.render(); + return lines; } - }, + }; - render : function(parentEl) { - var me = this; + me.inRect = function (MX, MY){ + var h = me.scale * me.tablePadding/2; + var line = me.getLine(); + var mxScale = MX*me.scale, + myScale = MY*me.scale; + if(me.numInCell < 0) { - this.trigger('render:before', this); - - if (!me.rendered) { - this.cmpEl = $(this.template({ - id: this.id - })); - - if (parentEl) { - this.setElement(parentEl, false); - parentEl.html(this.cmpEl); - } else { - this.$el.html(this.cmpEl); + if (line.Y1 == line.Y2) + return ((mxScale > line.X1 && mxScale < line.X2) && (myScale > line.Y1 - h && myScale < line.Y1 + h)); + else + return ((myScale > line.Y1 && myScale < line.Y2) && (mxScale > line.X1 - h && mxScale < line.X1 + h)); + } + else { + if (me.Y1 == me.Y2) { + for(var i = 0; i < line.length; i++) { + if ((mxScale > line[i].X1 && mxScale < line[i].X2) && (myScale > line[i].Y1 - h && myScale < line[i].Y1 + h)) + return true; + } } + else { + for(var i = 0; i < line.length; i++) { + if((myScale > line[i].Y1 && myScale < line[i].Y2) && (mxScale > line[i].X1 - h && mxScale < line[i].X1 + h)) + return true; + } + } + return false; + } + }; + + me.drawBorder = function (){ + if(borderSize == 0) return; + var line = me.getLine(); + me.context.beginPath(); + me.context.globalAlpha = borderAlfa; + me.context.lineWidth = me.scaleBorderSize(borderSize); + me.context.strokeStyle = me.getBorderColor(); + if(me.numInCell < 0) { + me.context.moveTo(line.X1, line.Y1); + me.context.lineTo(line.X2, line.Y2); } else { - this.cmpEl = this.$el; + _.each(line, function (ln){ + me.context.moveTo(ln.X1, ln.Y1); + me.context.lineTo(ln.X2, ln.Y2); + }); } + me.context.stroke(); + me.context.globalAlpha = 1; + }; - me.rendered = true; - - this.trigger('render:after', this); - - return this; - } - }); - - - + me.setBorderParams = function (){ + if(borderSize == virtualBorderSize && virtualBorderColor.isEqual(borderColor) && me.overwriteStyle){ + me.setBordersSize(0); + return; + } + me.setBordersSize(virtualBorderSize); + me.setBordersColor(virtualBorderColor); + }; + } Common.UI.TableStyler = Common.UI.BaseView.extend({ options : { width : 200, height : 200, + sizeCorner : 10, + scale : 2, + row :-1, + col :-1, rows : 2, columns : 2, cellPadding : 10, tablePadding : 10, overwriteStyle : true, - maxBorderSize : 6, + maxBorderSize : 8, spacingMode : false, defaultBorderSize : 1, defaultBorderColor : '#ccc' @@ -370,67 +248,8 @@ define([ template: _.template([ '
', - '
', - '
', - '
', - '', - '', - '', - '', - '', - '', - '', - '
', - '
', - '
', - '
', - - '
', - '
', - '', - '', - '', - '', - '', - '
', - '
', - '
', - '
', - '', - '<% for (var row = 0; row < scope.rows; row++) { %>', - '', - '<% for (var col = 0; col < scope.columns; col++) { %>', - '', - '<% } %>', - '', - '<% } %>', - '
', - '
', - '
', - '
', - '', - '', - '', - '', - '', - '
', - '
', - '
', - - '
', - '
', - '
', - '', - '', - '', - '', - '', - '', - '', - '
', - '
', - '
', - '
', + '', + '', '
' ].join('')), @@ -438,15 +257,13 @@ define([ Common.UI.BaseView.prototype.initialize.call(this, options); var me = this, - topBorder, rightBorder, bottomBorder, leftBorder, - topBorderSelector, rightBorderSelector, bottomBorderSelector, - leftBorderSelector, - virtualBorderSize, virtualBorderColor, - table_content, cells_content; - + virtualBorderSize, + virtualBorderColor; me.id = me.options.id || Common.UI.getId(); - me.width = me.options.width; - me.height = me.options.height; + me.scale = Common.Utils.applicationPixelRatio(); + me.scale = me.scale >= 1 ? me.scale : 1; + me.width = ((me.options.width * me.scale) >> 0) / me.scale; + me.height = ((me.options.height * me.scale) >> 0) / me.scale; me.rows = me.options.rows; me.columns = me.options.columns; me.cellPadding = me.options.cellPadding; @@ -454,8 +271,12 @@ define([ me.overwriteStyle = me.options.overwriteStyle; me.maxBorderSize = me.options.maxBorderSize; me.spacingMode = me.options.spacingMode; + me.twoModes = me.options.twoModes; me.defaultBorderSize = me.options.defaultBorderSize; me.defaultBorderColor = me.options.defaultBorderColor; + me.sizeCorner = me.options.sizeCorner; + me.backgroundColor = 'transparent'; + me.backgroundCellColor = 'transparent'; virtualBorderSize = (me.defaultBorderSize > me.maxBorderSize) ? me.maxBorderSize : me.defaultBorderSize; virtualBorderColor = new Common.Utils.RGBColor(me.defaultBorderColor); @@ -476,111 +297,145 @@ define([ me.rendered = false; - var applyStyles = function(){ - topBorder && topBorder.css('border-bottom', ((borderSize.top > 0.1 && borderSize.top < 1) ? 1 : borderSize.top) + 'px solid ' + borderColor.top.toRGBA((borderSize.top < 1) ? 0.2 : 1)); - rightBorder && rightBorder.css('border-right', ((borderSize.right > 0.1 && borderSize.right < 1) ? 1 : borderSize.right) + 'px solid ' + borderColor.right.toRGBA((borderSize.right < 1) ? 0.2 : 1)); - bottomBorder && bottomBorder.css('border-bottom', ((borderSize.bottom > 0.1 && borderSize.bottom < 1) ? 1 : borderSize.bottom) + 'px solid ' + borderColor.bottom.toRGBA((borderSize.bottom < 1) ? 0.2 : 1)); - leftBorder && leftBorder.css('border-right', ((borderSize.left > 0.1 && borderSize.left < 1) ? 1 : borderSize.left) + 'px solid ' + borderColor.left.toRGBA((borderSize.left < 1) ? 0.2 : 1)); - redraw(topBorderSelector); redraw(rightBorderSelector); - redraw(bottomBorderSelector); redraw(leftBorderSelector); - }; - - var redraw = function(el) { - return el.hide(0, function() { - $(this).show(); - }); - }; - me.on('render:after', function(cmp) { - var meId = me.id; - topBorder = $('#' + meId + '-table-top-border'); - rightBorder = $('#' + meId + '-table-right-border'); - bottomBorder = $('#' + meId + '-table-bottom-border'); - leftBorder = $('#' + meId + '-table-left-border'); - topBorderSelector = $('#' + meId + '-table-top-border-selector'); - rightBorderSelector = $('#' + meId + '-table-right-border-selector'); - bottomBorderSelector = $('#' + meId + '-table-bottom-border-selector'); - leftBorderSelector = $('#' + meId + '-table-left-border-selector'); - table_content = $('#' + meId + '-table-content'); - cells_content = table_content.find('.cell-content'); + me.canv.addEventListener('click', function (e) { + var mouseX, mouseY; - table_content.find('.content-box').css('height', (me.rows>1) ? '50%' : 'auto'); - - topBorderSelector.on('click', function(e){ - if (me.overwriteStyle){ - if (borderSize.top != virtualBorderSize || !borderColor.top.isEqual(virtualBorderColor)){ - borderSize.top = virtualBorderSize; - borderColor.top = virtualBorderColor; - } else { - borderSize.top = 0; - } - } else { - borderSize.top = (borderSize.top > 0) ? 0 : virtualBorderSize; - borderColor.top = virtualBorderColor; + if (e.offsetX !== undefined) { + mouseX = parseInt(e.offsetX * Common.Utils.zoom()); + mouseY = parseInt(e.offsetY * Common.Utils.zoom()); + } else if (e.layerX) { + mouseX = e.layerX; + mouseY = e.layerY; } - topBorder.css('border-bottom', ((borderSize.top > 0.1 && borderSize.top < 1) ? 1 : borderSize.top) + 'px solid ' + borderColor.top.toRGBA((borderSize.top < 1) ? 0.2 : 1)); - redraw(topBorderSelector); + var redraw = false; - me.fireEvent('borderclick', me, 't', borderSize.top, borderColor.top.toHex()); + if (me.inRect('t', mouseX, mouseY)) { + me.setBorderParams('t'); + redraw = true; + me.fireEvent('borderclick', me, 't', borderSize.top, borderColor.top.toHex()); + } + else if (me.inRect('b', mouseX, mouseY)) { + me.setBorderParams('b'); + redraw = true; + me.fireEvent('borderclick', me, 'b', borderSize.bottom, borderColor.bottom.toHex()); + } + else if (me.inRect('l', mouseX, mouseY)) { + me.setBorderParams('l'); + redraw = true; + me.fireEvent('borderclick', me, 'l', borderSize.left, borderColor.left.toHex()); + } + else if (me.inRect('r', mouseX, mouseY)) { + me.setBorderParams('r'); + redraw = true; + me.fireEvent('borderclick', me, 'r', borderSize.right, borderColor.right.toHex()); + } + else { + for (var i = 0; i < me._cellBorders.length; i++) { + if (me._cellBorders[i].inRect(mouseX, mouseY)) { + redraw = true; + me._cellBorders[i].setBorderParams(); + me.fireEvent('borderclick:cellborder', me, me._cellBorders[i], me._cellBorders[i].getBorderSize(), me._cellBorders[i].getBorderColor()); + + if(me.spacingMode) { + var secondBorder = undefined; + if(me._cellBorders[i].col > 0 && me._cellBorders[i].numInCell === 0) + secondBorder = me.getCellBorder(-1, me._cellBorders[i].col - 1, 1); + else if(me._cellBorders[i].row > 0 && me._cellBorders[i].numInCell === 0) + secondBorder = me.getCellBorder(me._cellBorders[i].row - 1, -1, 1); + else if(me._cellBorders[i].col > -1 && me._cellBorders[i].col < me.columns - 1 && me._cellBorders[i].numInCell === 1) + secondBorder = me.getCellBorder(-1, me._cellBorders[i].col + 1, 0); + else if(me._cellBorders[i].row > -1 && me._cellBorders[i].row < me.rows - 1 && me._cellBorders[i].numInCell === 1) + secondBorder = me.getCellBorder(me._cellBorders[i].row + 1, -1, 0); + + (secondBorder) && secondBorder.setBorderParams(); + } + + break; + } + } + } + (redraw) && me.redrawTable(); }); - rightBorderSelector.on('click', function(e){ - if (me.overwriteStyle){ - if (borderSize.right != virtualBorderSize || !borderColor.right.isEqual(virtualBorderColor)){ - borderSize.right = virtualBorderSize; - borderColor.right = virtualBorderColor; - } else { - borderSize.right = 0; - } - } else { - borderSize.right = (borderSize.right > 0) ? 0 : virtualBorderSize; - borderColor.right = virtualBorderColor; - } - rightBorder.css('border-right', ((borderSize.right > 0.1 && borderSize.right < 1) ? 1 : borderSize.right) + 'px solid ' + borderColor.right.toRGBA((borderSize.right < 1) ? 0.2 : 1)); - redraw(rightBorderSelector); - - me.fireEvent('borderclick', me, 'r', borderSize.right, borderColor.right.toHex()); - }); - - bottomBorderSelector.on('click', function(e){ - if (me.overwriteStyle){ - if (borderSize.bottom != virtualBorderSize || !borderColor.bottom.isEqual(virtualBorderColor)){ - borderSize.bottom = virtualBorderSize; - borderColor.bottom = virtualBorderColor; - } else { - borderSize.bottom = 0; - } - } else { - borderSize.bottom = (borderSize.bottom > 0) ? 0 : virtualBorderSize; - borderColor.bottom = virtualBorderColor; - } - - bottomBorder.css('border-bottom', ((borderSize.bottom > 0.1 && borderSize.bottom < 1) ? 1 : borderSize.bottom) + 'px solid ' + borderColor.bottom.toRGBA((borderSize.bottom < 1) ? 0.2 : 1)); - redraw(bottomBorderSelector); - - me.fireEvent('borderclick', me, 'b', borderSize.bottom, borderColor.bottom.toHex()); - }); - - leftBorderSelector.on('click', function(e){ - if (me.overwriteStyle){ - if (borderSize.left != virtualBorderSize || !borderColor.left.isEqual(virtualBorderColor)){ - borderSize.left = virtualBorderSize; - borderColor.left = virtualBorderColor; - } else { - borderSize.left = 0; - } - } else { - borderSize.left = (borderSize.left > 0) ? 0 : virtualBorderSize; - borderColor.left = virtualBorderColor; - } - leftBorder.css('border-right', ((borderSize.left > 0.1 && borderSize.left < 1) ? 1 : borderSize.left) + 'px solid ' + borderColor.left.toRGBA((borderSize.left < 1) ? 0.2 : 1)); - redraw(leftBorderSelector); - - me.fireEvent('borderclick', me, 'l', borderSize.left, borderColor.left.toHex()); - }); + $(window).resize(me.resizeTable); }); + me.resizeTable = function (){ + me.context.clearRect(0,0, me.width*me.scale, me.height*me.scale); + me.scale = Common.Utils.applicationPixelRatio(); + me.scale = me.scale>=1 ? me.scale : 1; + me.width = ((me.options.width * me.scale)>>0) / me.scale; + me.height = ((me.options.height * me.scale) >> 0) / me.scale; + me.cmpEl.css({'width': me.width, 'height': me.height}); + me.cmpEl.parent().css({'width': me.width, 'height': me.height}); + + me._cellBorders.forEach(function(b){ + b.scale = me.scale; + }); + + var i, sizeCorner = me.sizeCorner * me.scale; + var ctxWidth = me.width*me.scale, + ctxHeight = me.height*me.scale, + stepX = (ctxWidth - 2 * sizeCorner)/me.columns, + stepY = (ctxHeight - 2 * sizeCorner)/me.rows; + + if(!me.spacingMode) { + i = 0; + for (var row = 0; row < me.rows - 1; row++) { + me._cellBorders[i].Y1 = (row + 1) * stepY + sizeCorner; + me._cellBorders[i].Y2 = me._cellBorders[i].Y1; + me._cellBorders[i].X1 = sizeCorner; + me._cellBorders[i].X2 = ctxWidth - sizeCorner; + i++ + } + + for (var col = 0; col < me.columns - 1; col++) { + me._cellBorders[i].Y1 = sizeCorner; + me._cellBorders[i].Y2 = ctxHeight - sizeCorner; + me._cellBorders[i].X1 = (col + 1) * stepX + sizeCorner; + me._cellBorders[i].X2 = me._cellBorders[i].X1; + i++ + } + } + else { + var cellPadding = me.cellPadding * me.scale; + sizeCorner += cellPadding; + stepX = (ctxWidth - 2 * sizeCorner) / me.columns; + stepY = (ctxHeight - 2 * sizeCorner) / me.rows; + i = 0; + + for (var col = 0; col < me.columns; col++) { + for(var n = 0; n< 2; n++) { + me._cellBorders[i].Y1 = sizeCorner; + me._cellBorders[i].Y2 = ctxHeight - sizeCorner; + me._cellBorders[i].X1 = (n == 0) ? + (col) * (stepX + cellPadding / 2) + sizeCorner: + me.width * me.scale - sizeCorner - (me.columns - col - 1) * (stepX + cellPadding / 2); + me._cellBorders[i].X2 = me._cellBorders[i].X1; + i++ + } + } + + for (var row = 0; row < me.rows; row++) { + for(var n = 0; n< 2; n++) { + me._cellBorders[i].Y1 = (n == 0) ? + (row) * (stepY + cellPadding / 2) + sizeCorner: + me.height * me.scale - sizeCorner - (me.rows - row - 1) * (stepY + cellPadding / 2); + me._cellBorders[i].Y2 = me._cellBorders[i].Y1; + me._cellBorders[i].X1 = sizeCorner; + me._cellBorders[i].X2 = ctxWidth - sizeCorner; + i++; + } + } + } + + me.canv.width = me.width * me.scale; + me.canv.height = me.height * me.scale; + me.drawTable(); + }; + me.getVirtualBorderSize = function(){ return virtualBorderSize; }; @@ -590,15 +445,10 @@ define([ }; me.setVirtualBorderSize = function(size){ - size = (size > me.maxBorderSize) ? me.maxBorderSize : size; + virtualBorderSize = (size > me.maxBorderSize) ? me.maxBorderSize : size; - virtualBorderSize = size; - - for (var row = 0; row < me.rows; row++){ - for (var col = 0; col < me.columns; col++){ - var cell = me.getCell(col, row); - cell.setVirtualBorderSize(size); - } + for(var i =0; i < me._cellBorders.length; i++){ + me._cellBorders[i].setVirtualBorderSize(size); } }; @@ -610,27 +460,29 @@ define([ virtualBorderColor = newColor; - for (var row = 0; row < me.rows; row++){ - for (var col = 0; col < me.columns; col++){ - var cell = me.getCell(col, row); - cell.setVirtualBorderColor(virtualBorderColor.toHex()); - } + for(var i =0; i < me._cellBorders.length; i++){ + me._cellBorders[i].setVirtualBorderColor(newColor); } }; me.setBordersSize = function(borders, size){ size = (size > me.maxBorderSize) ? me.maxBorderSize : size; - - if (borders.indexOf('t') > -1) + if (borders.indexOf('t') > -1) { borderSize.top = size; - if (borders.indexOf('r') > -1) + } + if (borders.indexOf('r') > -1) { borderSize.right = size; - if (borders.indexOf('b') > -1) + } + if (borders.indexOf('b') > -1) { borderSize.bottom = size; - if (borders.indexOf('l') > -1) + } + if (borders.indexOf('l') > -1) { borderSize.left = size; + } + }; - applyStyles(); + me.scaleBorderSize = function (size){ + return (size*me.scale +0.5)>>0; }; me.setBordersColor = function(borders, color){ @@ -645,7 +497,6 @@ define([ if (borders.indexOf('l') > -1) borderColor.left = newColor; - applyStyles(); }; me.getBorderSize = function(border){ @@ -676,14 +527,75 @@ define([ return null; }; + me.getBorderAlpha = function (border) { + return me.getBorderSize(border)<1 ? 0.2 : 1; + }; + + me.setBorderParams = function(border) { + var color = new Common.Utils.RGBColor(me.getBorderColor(border)); + var size = me.getBorderSize(border); + if(size == virtualBorderSize && virtualBorderColor.isEqual(color) && me.overwriteStyle) { + me.setBordersSize(border,0); + return; + } + me.setBordersSize(border, me.getVirtualBorderSize()); + me.setBordersColor(border,me.getVirtualBorderColor()); + }; + + me.getLine =function (size, border ){ + var sizeCornerScale = me.sizeCorner * me.scale ; + var borderWidth = me.scaleBorderSize(size); + var linePoints={}, + canvWidth = me.width * me.scale, + canvHeight =me.height * me.scale; + switch (border){ + case 't': + linePoints.X1 = sizeCornerScale >>0; + linePoints.Y1 = (sizeCornerScale>>0) + borderWidth / 2; + linePoints.X2 = (canvWidth - sizeCornerScale)>>0; + linePoints.Y2 = linePoints.Y1; + break; + case 'b': + linePoints.X1 = sizeCornerScale>>0; + linePoints.Y1 = ((canvHeight - sizeCornerScale)>>0) - borderWidth / 2; + linePoints.X2 = (canvWidth - sizeCornerScale)>>0; + linePoints.Y2 = linePoints.Y1; + break; + case 'l': + linePoints.X1 = (sizeCornerScale>>0) + borderWidth / 2; + linePoints.Y1 = sizeCornerScale>>0; + linePoints.X2 = linePoints.X1; + linePoints.Y2 = (canvHeight - sizeCornerScale)>>0; + break; + case 'r': + linePoints.X1 = ((canvWidth - sizeCornerScale)>>0) - borderWidth / 2; + linePoints.Y1 = sizeCornerScale>>0; + linePoints.X2 = linePoints.X1; + linePoints.Y2 = (canvHeight - sizeCornerScale)>>0; + break; + } + return linePoints; + }; + + me.inRect= function(border, MX, MY) { + var h = me.tablePadding/2; + var sizeBorder = me.getBorderSize(border); + var line = me.getLine(sizeBorder, border); + + line = {X1: line.X1/me.scale, Y1: line.Y1/me.scale, X2: line.X2/me.scale, Y2: line.Y2/me.scale}; + + if (line.Y1 == line.Y2) + return ((MX > line.X1 && MX < line.X2) && (MY > line.Y1 - h && MY < line.Y1 + h)); + else + return((MY > line.Y1 && MY < line.Y2) && (MX > line.X1 - h && MX < line.X1 + h)); + }; + me.setTableColor = function(color) { - table_content.toggleClass('transparent', color == 'transparent'); - table_content.css('background-color', (color == 'transparent' ) ? color : ('#'+color)); + me.backgroundColor = (color == 'transparent' ) ? color : ('#'+color); }; me.setCellsColor = function(color) { - !me.spacingMode && table_content.toggleClass('transparent', color == 'transparent'); - cells_content.css('background-color', (color == 'transparent' ) ? color : ('#'+color)); + me.backgroundCellColor = (color == 'transparent' ) ? color : ('#'+color); }; if (me.options.el) { @@ -697,145 +609,354 @@ define([ }, render : function(parentEl) { - var me = this, - cfg = arguments[1]; + var cfg = arguments[1]; this.trigger('render:before', this); - if (!me.rendered) { + if (!this.rendered) { this.cmpEl = $(this.template(_.extend({ - scope: me + scope: this }, cfg))); if (parentEl) { this.setElement(parentEl, false); this.setElement(parentEl, false); parentEl.html(this.cmpEl); - } else { - $(this.el).html(this.cmpEl); } - } else { + else + $(this.el).html(this.cmpEl); + + this.cmpEl.parent().css({'width': this.width, 'height': this.height}); + } + else this.cmpEl = $(this.el); + + this.canv = $('#' + this.id + '-table-canvas')[0]; + this.context = this.canv.getContext('2d'); + + var sizeCorner = this.sizeCorner * this.scale + sizeCorner += (this.spacingMode) ? this.cellPadding * this.scale : 0; + if (!this.rendered) { + this._cellBorders = []; + var generalOpt = { + scale : this.scale, + context : this.context, + cellPadding : this.cellPadding, + tablePadding : this.tablePadding, + rows : this.rows, + columns : this.columns + }; + + (!this.spacingMode) && this.createHorizontalBorders(generalOpt, sizeCorner); + this.createVerticaLBorders(generalOpt, sizeCorner); + (this.spacingMode) && this.createHorizontalBorders(generalOpt, sizeCorner); + + this.drawTable(); } - if (!me.rendered) { - var el = this.cmpEl; + this.rendered = true; - this._cells = []; + this.trigger('render:after', this); + return this; + }, - for (var row = 0; row < me.rows; row++) { - for (var col = 0; col < me.columns; col++) { - var cellStyler = new Common.UI.CellStyler({ - el : $('#' + me.id + '-cell-container-' + col + '-' + row), - overwriteStyle : me.overwriteStyle, - halfBorderSize : !me.spacingMode, - defaultBorderSize : me.spacingMode ? cfg.virtualBorderSize : 0, - defaultBorderColor : cfg.virtualBorderColor.toHex(), - id : me.id + '-cell-' + col + '-' + row, - col : col, - row : row - }); + createHorizontalBorders: function (generalOpt, sizeCorner){ + var opt = generalOpt; + var ctxWidth = this.width * this.scale, + stepY = (this.height * this.scale - 2 * sizeCorner) / this.rows, + cellPadding = this.cellPadding*this.scale; + if(!this.spacingMode) { + for (var row = 0; row < this.rows - 1; row++) { + opt.y1 = (row + 1) * stepY + sizeCorner; + opt.y2 = opt.y1; + opt.x1 = sizeCorner; + opt.x2 = ctxWidth - sizeCorner; + opt.row = row; + opt.col = -1; + this._cellBorders.push(new Common.UI.CellBorder(opt)); + } + } else { + for (var row = 0; row < this.rows; row++) { + for (var n = 0; n < 2; n++) { + opt.numInCell = n; + opt.y1 = (n == 0) ? + (row) * (stepY + cellPadding / 2) + sizeCorner : + this.height*this.scale - sizeCorner - (this.rows - row - 1) * (stepY + cellPadding / 2); + opt.y2 = opt.y1; + opt.x1 = sizeCorner; + opt.x2 = ctxWidth - sizeCorner; + opt.row = row; + opt.col = -1; + this._cellBorders.push(new Common.UI.CellBorder(opt)); + } + } + } + }, - this._cells.push(cellStyler); + createVerticaLBorders: function (generalOpt, sizeCorner){ + var opt = generalOpt; + var ctxHeight = this.height * this.scale, + stepX = (this.width * this.scale - 2 * sizeCorner) / this.columns, + cellPadding = this.cellPadding*this.scale; + if(!this.spacingMode) { + for (var col = 0; col < this.columns - 1; col++) { + opt.y1 = sizeCorner; + opt.y2 = ctxHeight - sizeCorner; + opt.x1 = (col + 1) * stepX + sizeCorner; + opt.x2 = opt.x1; + opt.row = -1; + opt.col = col; + this._cellBorders.push(new Common.UI.CellBorder(opt)); + } + } + else { + for (var col = 0; col < this.columns; col++) { + for (var n = 0; n < 2; n++) { + opt.numInCell = n; + opt.y1 = sizeCorner; + opt.y2 = ctxHeight - sizeCorner; + opt.x1 = (n == 0) ? + (col) * (stepX + cellPadding / 2) + sizeCorner : + this.width * this.scale - sizeCorner - (this.columns - col - 1) * (stepX + cellPadding / 2); + opt.x2 = opt.x1; + opt.col = col; + opt.row = -1; + this._cellBorders.push(new Common.UI.CellBorder(opt)); + } + } + } + }, - cellStyler.on('borderclick', function(cell, type, size, color){ - var cellCol, cellRow, curCell; - if (type == 't'){ - if (cell.row > 0){ - for(cellCol = 0; cellCol < me.columns; cellCol++){ - curCell = me.getCell(cellCol, cell.row - 1); - curCell.setBordersSize('b', size); - curCell.setBordersColor('b', color); - } - } + drawCorners: function ( ) { + var connerLineSize = (0.5*this.scale+0.5) >> 0, + sizeCornerScale =this.sizeCorner * this.scale, + canvWidth = this.width * this.scale, + canvHeight = this.height * this.scale, + diff = connerLineSize/2; - for(cellCol = 0; cellCol < me.columns; cellCol++){ - curCell = me.getCell(cellCol, cell.row); + this.context.setLineDash([connerLineSize,connerLineSize]); + this.context.lineWidth = connerLineSize; + this.context.strokeStyle = "grey"; - if (cell.halfBorderSize && cell.row < 1) - curCell.setBordersSize('t', 0); - else - curCell.setBordersSize('t', size); + this.context.beginPath(); - curCell.setBordersColor('t', color); - } - } - else if (type == 'b'){ - if (cell.row < me.rows - 1){ - for(cellCol = 0; cellCol < me.columns; cellCol++){ - curCell = me.getCell(cellCol, cell.row + 1); - curCell.setBordersSize('t', size); - curCell.setBordersColor('t', color); - } - } + //lines for corners: + //top-left + this.context.moveTo ( + (sizeCornerScale >> 0) - diff, + 0 + ); + this.context.lineTo ( + (sizeCornerScale >> 0) - diff, + (sizeCornerScale >> 0) - diff + ); + this.context.moveTo ( + sizeCornerScale >> 0, + (sizeCornerScale >> 0) - diff + ); + this.context.lineTo ( + 0, + (sizeCornerScale >> 0) - diff + ); + //------------------------------------------------------- - for(cellCol = 0; cellCol < me.columns; cellCol++){ - curCell = me.getCell(cellCol, cell.row); + //top-right + this.context.moveTo ( + ((canvWidth - sizeCornerScale)>>0) + diff, + 0 + ); + this.context.lineTo ( + ((canvWidth - sizeCornerScale)>>0) + diff, + sizeCornerScale >> 0 + ); + this.context.moveTo ( + (canvWidth - sizeCornerScale) >> 0, + (sizeCornerScale >> 0) - diff + ); + this.context.lineTo ( + canvWidth >> 0, + (sizeCornerScale >> 0) - diff + ); + //------------------------------------------------------- - if (cell.halfBorderSize && cell.row >= me.rows - 1) - curCell.setBordersSize('b', 0); - else - curCell.setBordersSize('b', size); + // bottom-right + this.context.moveTo ( + ((canvWidth - sizeCornerScale) >> 0) + diff, + canvHeight >> 0 + ); + this.context.lineTo ( - curCell.setBordersColor('b', color); - } - } - else if (type == 'l'){ - if (cell.col > 0){ - for(cellRow = 0; cellRow < me.rows; cellRow++){ - curCell = me.getCell(cell.col - 1, cellRow); - curCell.setBordersSize('r', size); - curCell.setBordersColor('r', color); - } - } + ((canvWidth - sizeCornerScale) >>0 ) + diff, + (canvHeight - sizeCornerScale) >> 0 + ); - for(cellRow = 0; cellRow < me.rows; cellRow++){ - curCell = me.getCell(cell.col, cellRow); + this.context.moveTo ( + (canvWidth - sizeCornerScale) >> 0, + ((canvHeight - sizeCornerScale) >> 0) + diff); - if (cell.halfBorderSize && cell.col < 1) - curCell.setBordersSize('l', 0); - else - curCell.setBordersSize('l', size); + this.context.lineTo ( + canvWidth >> 0, + ((canvHeight - sizeCornerScale) >> 0) + diff + ); + //------------------------------------------------------- - curCell.setBordersColor('l', color); - } - } - else if (type == 'r'){ - if (cell.col < me.columns - 1){ - for(cellRow = 0; cellRow < me.rows; cellRow++){ - curCell = me.getCell(cell.col + 1, cellRow); - curCell.setBordersSize('l', size); - curCell.setBordersColor('l', color); - } - } + //bottom-left + this.context.moveTo( + (sizeCornerScale >> 0) - diff, + canvHeight >> 0 + ); + this.context.lineTo( + (sizeCornerScale >> 0) - diff, + (canvHeight - sizeCornerScale)>>0 + ); - for(cellRow = 0; cellRow < me.rows; cellRow++){ - curCell = me.getCell(cell.col, cellRow); + this.context.moveTo( + sizeCornerScale >> 0, + ((canvHeight - sizeCornerScale) >> 0) + diff + ); - if (cell.halfBorderSize && cell.col >= me.columns - 1) - curCell.setBordersSize('r', 0); - else - curCell.setBordersSize('r', size); + this.context.lineTo( + 0, + ((canvHeight - sizeCornerScale) >> 0) + diff + ); + //------------------------------------------------------- - curCell.setBordersColor('r', color); - } - } - }); + this.context.stroke(); + this.context.setLineDash([]); + }, + + fillCells: function(){ + if(!this.spacingMode || this.backgroundCellColor == 'transparent') return; + var sizeCorner = (this.sizeCorner + this.cellPadding) * this.scale, + cellPadding = this.cellPadding * this.scale, + stepX = (this.width * this.scale - 2 * sizeCorner)/this.columns, + stepY = (this.height * this.scale - 2 * sizeCorner)/this.rows; + + this.context.beginPath(); + this.context.fillStyle = this.backgroundCellColor; + for(var row = 0; row < this.rows; row++ ){ + for (var col = 0; col < this.columns; col++){ + + this.context.fillRect( + (sizeCorner + col * stepX + (col > 0 | 0) * cellPadding/2 )>>0, + (sizeCorner + row * stepY + (row > 0 | 0) * cellPadding/2) >>0, + (stepX - (((col > 0) | 0) + ((col < this.columns-1) |0)) * cellPadding/2)>>0, + (stepY - (((row > 0) | 0) + ((row < this.rows-1) |0)) * cellPadding/2)>>0 + ); + } + } + this.context.stroke(); + }, + + drawBorder: function (border){ + var size = this.getBorderSize(border); + if(!size) return; + var points = this.getLine(size, border); + this.context.imageSmoothingEnabled = false; + this.context.mozImageSmoothingEnabled = false; + this.context.msImageSmoothingEnabled = false; + this.context.webkitImageSmoothingEnabled = false; + this.context.lineWidth = this.scaleBorderSize(size); + this.context.globalAlpha = this.getBorderAlpha(border); + this.context.beginPath(); + this.context.strokeStyle = this.getBorderColor(border); + this.context.moveTo(points.X1, points.Y1); + this.context.lineTo(points.X2, points.Y2); + this.context.stroke(); + this.context.globalAlpha = 1; + }, + + fillWithLines: function (){ + var tdPadding = this.maxBorderSize + 4, + tdWidth, tdHeight, tdX, tdY, xLeft,x1, w, y1, h; + this.context.setLineDash([(2 * this.scale + 0.5) >> 0, (2 * this.scale + 0.5) >> 0]); + this.context.strokeStyle = "#c0c0c0"; + + if(!this.spacingMode) { + tdWidth = (this.width - 2 * this.sizeCorner) / this.columns; + tdHeight = (this.height - 2 * this.sizeCorner) / this.rows; + tdY = this.sizeCorner; + xLeft = this.sizeCorner; + + for (var row = 0; row < this.rows; row++) { + tdX = xLeft; + for (var col = 0; col < this.columns; col++) { + x1 = ((tdX + tdPadding) * this.scale) >> 0; + y1 = (tdY + tdPadding) * this.scale; + w = ((tdWidth - 2 * tdPadding) * this.scale + 0.5) >> 0; + h = (tdHeight - 2 * tdPadding) * this.scale; + this.context.lineWidth = w; + this.context.beginPath(); + this.context.moveTo(x1 + w / 2, y1 >> 0); + this.context.lineTo(x1 + w / 2, (y1 + h) >> 0); + this.context.stroke(); + tdX += tdWidth; + + } + tdY += tdHeight; + } + } + else { + var sizeCorner = (this.sizeCorner + this.cellPadding) * this.scale, + cellPadding = this.cellPadding * this.scale; + tdWidth = (this.width * this.scale - 2 * sizeCorner)/this.columns; + tdHeight = (this.height * this.scale - 2 * sizeCorner)/this.rows; + tdPadding *= this.scale; + + this.context.beginPath(); + this.context.fillStyle = this.backgroundCellColor; + for(var row = 0; row < this.rows; row++ ){ + for (var col = 0; col < this.columns; col++){ + + w = (tdWidth - (((col > 0) | 0) + ((col < this.columns-1) |0)) * cellPadding/2 -2*tdPadding + 0.5)>>0 + h = tdHeight - (((row > 0) | 0) + ((row < this.rows-1) |0)) * cellPadding/2 -2*tdPadding; + x1 = ((sizeCorner + col * tdWidth + (col > 0 | 0) * cellPadding/2 + tdPadding) >> 0); + y1 = sizeCorner + row * tdHeight + (row > 0 | 0) * cellPadding/2 + tdPadding; + this.context.beginPath(); + this.context.lineWidth = w; + this.context.moveTo(x1 + w / 2, y1 >> 0); + this.context.lineTo(x1 + w / 2, (y1 + h) >> 0); + this.context.stroke(); } } } - me.rendered = true; - - this.trigger('render:after', this); - - return this; + this.context.setLineDash([]); }, - getCell: function(col, row){ - return _.findWhere(this._cells, { - id: this.id + '-cell-' + col + '-' + row - }) + drawTable: function (){ + this.drawCorners(); + var sizeCornerScale = this.sizeCorner * this.scale; + var tableWidth = (this.width * this.scale - 2 * sizeCornerScale) >> 0, + tableHeight = (this.height * this.scale - 2 * sizeCornerScale) >> 0; + this.context.fillStyle = this.backgroundColor; + if(this.backgroundColor != 'transparent' ){ + this.context.beginPath(); + this.context.fillRect(sizeCornerScale >> 0, sizeCornerScale >> 0, tableWidth , tableHeight); + this.context.stroke(); + } + this.fillCells(); + this._cellBorders.forEach(function (item){item.drawBorder();}); + + this.drawBorder('l'); + this.drawBorder('r'); + this.drawBorder('t'); + this.drawBorder('b'); + + this.fillWithLines(); + this.context.lineWidth = 0; + }, + + redrawTable: function() { + this.context.clearRect(0,0, this.canv.width, this.canv.height); + this.drawTable(); + }, + + getCellBorder: function(row, col, numInCell){ + row = (row === undefined) ? -1 : row; + col = (col === undefined) ? -1 : col; + numInCell = (numInCell === undefined) ? -1 : numInCell; + return _.findWhere(this._cellBorders, {row: row, col: col, numInCell: numInCell}); } }); }); \ No newline at end of file diff --git a/apps/common/main/lib/component/ThemeColorPalette.js b/apps/common/main/lib/component/ThemeColorPalette.js index 1af6e825b..be48719c0 100644 --- a/apps/common/main/lib/component/ThemeColorPalette.js +++ b/apps/common/main/lib/component/ThemeColorPalette.js @@ -85,14 +85,14 @@ define([ ' ' + '' + '<% } else if (me.isCaption(item)) { %>' + - '
<%=item%>
' + + '
<%=item%>
' + '<% } %>' + '<% }); %>' + '' + '<% if (me.options.dynamiccolors!==undefined) { %>' + '
' + '
' + - '
<%=me.textRecentColors%>
' + + '
<%=me.textRecentColors%>
' + '<% for (var i=0; i' + '' + ' ' + diff --git a/apps/common/main/lib/component/Window.js b/apps/common/main/lib/component/Window.js index 5b2d2f430..ff2f458f4 100644 --- a/apps/common/main/lib/component/Window.js +++ b/apps/common/main/lib/component/Window.js @@ -158,7 +158,8 @@ define([ maxheight: undefined, minwidth: 0, minheight: 0, - enableKeyEvents: true + enableKeyEvents: true, + automove: true }; var template = '
<%= cls?" "+cls:"" %>" id="<%= id %>" style="width:<%= width %>px;">' + @@ -265,8 +266,10 @@ define([ var top = main_geometry.top + Math.floor((parseInt(main_height) - parseInt(win_height)) / 2); var left = Math.floor((parseInt(main_width) - parseInt(win_width)) / 2); - this.$window.css('left',left); - this.$window.css('top',top); + this.$window.css({ + left: left < 0 ? 0 : left, + top: top < 0 ? 0 : top + }); } function _setVisible() { @@ -355,6 +358,23 @@ define([ } } + function _onResizeMove(){ + var main_geometry = _readDocumetGeometry(), + main_width = main_geometry.width, + main_height = main_geometry.height, + win_height = this.getHeight(), + win_width = this.getWidth(), + top = this.getTop(), + left = this.getLeft(); + + top = top + win_height > main_height ? main_height - win_height : top; + left = left + win_width > main_width ? main_width - win_width : left; + + this.$window.css({ + left: left < 0 ? 0 : left, + top: top < 0 ? 0 : top + }); + } /* window resize functions */ function _resizestart(event) { @@ -500,7 +520,7 @@ define([ body.height(parseInt(text_cnt.css('height')) + parseInt(footer.css('height'))); window.setHeight(parseInt(body.css('height')) + parseInt(header.css('height'))); } - if (text.height() < icon_height-10) + if (text.height() < icon_height/2) text.css({'vertical-align': 'baseline', 'line-height': icon_height+'px'}); } @@ -658,7 +678,6 @@ define([ this.$window.find('.header').on('mousedown', this.binding.dragStart); this.$window.find('.tool.close').on('click', _.bind(doclose, this)); this.$window.find('.tool.help').on('click', _.bind(dohelp, this)); - if (!this.initConfig.modal) Common.Gateway.on('processmouse', _.bind(_onProcessMouse, this)); } else { @@ -742,6 +761,10 @@ define([ } $(document).on('keydown.' + this.cid, this.binding.keydown); + if(this.initConfig.automove){ + this.binding.windowresize = _.bind(_onResizeMove, this); + $(window).on('resize', this.binding.windowresize); + } var me = this; @@ -793,6 +816,7 @@ define([ close: function(suppressevent) { $(document).off('keydown.' + this.cid); + this.initConfig.automove && $(window).off('resize', this.binding.windowresize); if ( this.initConfig.header ) { this.$window.find('.header').off('mousedown', this.binding.dragStart); } @@ -838,6 +862,7 @@ define([ hide: function() { $(document).off('keydown.' + this.cid); + this.initConfig.automove && $(window).off('resize', this.binding.windowresize); if (this.$window) { if (this.initConfig.modal) { var mask = _getMask(), diff --git a/apps/common/main/lib/controller/Comments.js b/apps/common/main/lib/controller/Comments.js index 65bcb0e22..ced3f5c69 100644 --- a/apps/common/main/lib/controller/Comments.js +++ b/apps/common/main/lib/controller/Comments.js @@ -74,6 +74,7 @@ define([ subEditStrings : {}, filter : undefined, hintmode : false, + fullInfoHintMode: false, viewmode: false, isSelectedComment : false, uids : [], @@ -144,10 +145,20 @@ define([ } }, this, area); }.bind(this)); + Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); }, onLaunch: function () { var filter = Common.localStorage.getKeysFilter(); this.appPrefix = (filter && filter.length) ? filter.split(',')[0] : ''; + this._state = { + disableEditing: false, // disable editing when disconnect/signed file/mail merge preview/review final or original/forms preview + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + } + }; this.collection = this.getApplication().getCollection('Common.Collections.Comments'); this.setComparator(); @@ -176,7 +187,8 @@ define([ this.currentUserId = data.config.user.id; this.sdkViewName = data['sdkviewname'] || this.sdkViewName; this.hintmode = data['hintmode'] || false; - this.viewmode = data['viewmode'] || false; + this.fullInfoHintMode = data['fullInfoHintMode'] || false; + this.viewmode = data['viewmode'] || false; } }, setApi: function (api) { @@ -396,9 +408,11 @@ define([ reply = null, addReply = null, ascComment = buildCommentData(), // new asc_CCommentData(null), - comment = t.findComment(id); + comment = t.findComment(id), + oldCommentVal = ''; if (comment && ascComment) { + oldCommentVal = comment.get('comment'); ascComment.asc_putText(commentVal); ascComment.asc_putQuoteText(comment.get('quote')); ascComment.asc_putTime(t.utcDateToString(new Date(comment.get('time')))); @@ -442,6 +456,7 @@ define([ } t.api.asc_changeComment(id, ascComment); + t.mode && t.mode.canRequestSendNotify && t.view.pickEMail(ascComment.asc_getGuid(), commentVal, oldCommentVal); return true; } @@ -455,7 +470,8 @@ define([ reply = null, addReply = null, ascComment = buildCommentData(), // new asc_CCommentData(null), - comment = me.findComment(id); + comment = me.findComment(id), + oldReplyVal = ''; if (ascComment && comment) { ascComment.asc_putText(comment.get('comment')); @@ -479,6 +495,7 @@ define([ addReply = buildCommentData(); // new asc_CCommentData(); if (addReply) { if (reply.get('id') === replyId && !_.isUndefined(replyVal)) { + oldReplyVal = reply.get('reply'); addReply.asc_putText(replyVal); addReply.asc_putUserId(me.currentUserId); addReply.asc_putUserName(AscCommon.UserInfoParser.getCurrentName()); @@ -498,7 +515,7 @@ define([ } me.api.asc_changeComment(id, ascComment); - + me.mode && me.mode.canRequestSendNotify && me.view.pickEMail(ascComment.asc_getGuid(), replyVal, oldReplyVal); return true; } } @@ -951,11 +968,11 @@ define([ if (!comment) continue; - if (this.subEditStrings[saveTxtId] && !hint) { + if (this.subEditStrings[saveTxtId] && (comment.get('fullInfoInHint') || !hint)) { comment.set('editTextInPopover', true); text = this.subEditStrings[saveTxtId]; } - else if (this.subEditStrings[saveTxtReplyId] && !hint) { + else if (this.subEditStrings[saveTxtReplyId] && (comment.get('fullInfoInHint') || !hint)) { comment.set('showReplyInPopover', true); text = this.subEditStrings[saveTxtReplyId]; } @@ -963,13 +980,16 @@ define([ comment.set('hint', !_.isUndefined(hint) ? hint : false); if (!hint && this.hintmode) { - if (same_uids && (this.uids.length === 0)) + if (same_uids) animate = false; if (this.oldUids.length && (0 === _.difference(this.oldUids, uids).length) && (0 === _.difference(uids, this.oldUids).length)) { animate = false; this.oldUids = []; } + + if (same_uids && !apihint && !this.isModeChanged) + this.api.asc_selectComment(comment.get('uid')); } if (this.animate) { @@ -991,7 +1011,7 @@ define([ this.popoverComments.reset(comments); if (this.popoverComments.findWhere({hide: false})) { - if (popover.isVisible()) { + if (popover.isVisible() && (!same_uids || this.isModeChanged)) { popover.hide(); } @@ -1340,6 +1360,7 @@ define([ removable : (this.mode.canDeleteComments || (data.asc_getUserId() == this.currentUserId)) && AscCommon.UserInfoParser.canDeleteComment(data.asc_getUserName()), hide : !AscCommon.UserInfoParser.canViewComment(data.asc_getUserName()), hint : !this.mode.canComments, + fullInfoInHint : this.fullInfoHintMode, groupName : (groupname && groupname.length>1) ? groupname[1] : null }); if (comment) { @@ -1645,16 +1666,25 @@ define([ }, setPreviewMode: function(mode) { - if (this.viewmode === mode) return; - this.viewmode = mode; - if (mode) + this._state.disableEditing = mode; + this.updatePreviewMode(); + }, + + updatePreviewMode: function() { + var docProtection = this._state.docProtection; + var viewmode = this._state.disableEditing || docProtection.isReadOnly || docProtection.isFormsOnly; + + if (this.viewmode === viewmode) return; + this.viewmode = viewmode; + + if (viewmode) this.prevcanComments = this.mode.canComments; - this.mode.canComments = (mode) ? false : this.prevcanComments; + this.mode.canComments = (viewmode) ? false : this.prevcanComments; this.closeEditing(); this.setMode(this.mode); this.updateComments(true); if (this.getPopover()) - mode ? this.getPopover().hide() : this.getPopover().update(true); + viewmode ? this.getPopover().hide() : this.getPopover().update(true); }, clearCollections: function() { @@ -1718,6 +1748,27 @@ define([ } } this.updateComments(true); + }, + + onAppReady: function (config) { + var me = this; + (new Promise(function (accept, reject) { + accept(); + })).then(function(){ + me.onChangeProtectDocument(); + Common.NotificationCenter.on('protect:doclock', _.bind(me.onChangeProtectDocument, me)); + }); + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + this.updatePreviewMode(); + } } }, Common.Controllers.Comments || {})); diff --git a/apps/common/main/lib/controller/Desktop.js b/apps/common/main/lib/controller/Desktop.js index 82689e6db..5c0295d90 100644 --- a/apps/common/main/lib/controller/Desktop.js +++ b/apps/common/main/lib/controller/Desktop.js @@ -45,7 +45,9 @@ define([ version: '{{PRODUCT_VERSION}}', eventloading: true, titlebuttons: true, - uithemes: true + uithemes: true, + btnhome: true, + quickprint: true }; var native = window.desktop || window.AscDesktopEditor; @@ -93,8 +95,9 @@ define([ } if ( obj.singlewindow !== undefined ) { - $('#box-document-title .hedset')[obj.singlewindow ? 'hide' : 'show'](); + // $('#box-document-title .hedset')[obj.singlewindow ? 'hide' : 'show'](); native.features.singlewindow = obj.singlewindow; + titlebuttons.home && titlebuttons.home.btn.setVisible(obj.singlewindow); } } else if (/editor:config/.test(cmd)) { @@ -163,7 +166,8 @@ define([ action: action, icon: config.icon || undefined, hint: config.btn.options.hint, - disabled: config.btn.isDisabled() + disabled: config.btn.isDisabled(), + visible: config.visible, }; }; @@ -198,6 +202,7 @@ define([ if ( !!titlebuttons ) { info.hints = {}; !!titlebuttons['print'] && (info.hints['print'] = titlebuttons['print'].btn.btnEl.attr('data-hint-title')); + !!titlebuttons['quickprint'] && (info.hints['quickprint'] = titlebuttons['quickprint'].btn.btnEl.attr('data-hint-title')); !!titlebuttons['undo'] && (info.hints['undo'] = titlebuttons['undo'].btn.btnEl.attr('data-hint-title')); !!titlebuttons['redo'] && (info.hints['redo'] = titlebuttons['redo'].btn.btnEl.attr('data-hint-title')); !!titlebuttons['save'] && (info.hints['save'] = titlebuttons['save'].btn.btnEl.attr('data-hint-title')); @@ -213,6 +218,24 @@ define([ } } + const _onApplySettings = function (menu) { + if ( !!titlebuttons.quickprint ) { + const var_name = window.SSE ? 'sse-settings-quick-print-button' : + window.PE ? 'pe-settings-quick-print-button' : 'de-settings-quick-print-button'; + const is_btn_visible = Common.localStorage.getBool(var_name, false); + + if ( titlebuttons.quickprint.visible != is_btn_visible ) { + titlebuttons.quickprint.visible = is_btn_visible; + const obj = { + visible: { + quickprint: is_btn_visible, + } + }; + native.execCommand('title:button', JSON.stringify(obj)); + } + } + } + return { init: function (opts) { _.extend(config, opts); @@ -230,9 +253,33 @@ define([ Common.NotificationCenter.on('document:ready', function () { if ( config.isEdit ) { - var maincontroller = webapp.getController('Main'); - if (maincontroller.api.asc_isReadOnly && maincontroller.api.asc_isReadOnly()) { - maincontroller.warningDocumentIsLocked(); + function get_locked_message (t) { + switch (t) { + // case Asc.c_oAscLocalRestrictionType.Nosafe: + case Asc.c_oAscLocalRestrictionType.ReadOnly: + return Common.Locale.get("tipFileReadOnly",{name:"Common.Translation", default: "Document is read only. You can make changes and save its local copy later."}); + default: return Common.Locale.get("tipFileLocked",{name:"Common.Translation", default: "Document is locked for editing. You can make changes and save its local copy later."}); + } + } + + const header = webapp.getController('Viewport').getView('Common.Views.Header'); + const api = webapp.getController('Main').api; + const locktype = api.asc_getLocalRestrictions ? api.asc_getLocalRestrictions() : Asc.c_oAscLocalRestrictionType.None; + if ( Asc.c_oAscLocalRestrictionType.None !== locktype ) { + features.readonly = true; + + header.setDocumentReadOnly(true); + api.asc_setLocalRestrictions(Asc.c_oAscLocalRestrictionType.None); + + (new Common.UI.SynchronizeTip({ + extCls: 'no-arrow', + placement: 'bottom', + target: $('.toolbar'), + text: get_locked_message(locktype), + showLink: false, + })).on('closeclick', function () { + this.close(); + }).show(); } } }); @@ -245,6 +292,40 @@ define([ titlebuttons = {}; if ( mode.isEdit ) { var header = webapp.getController('Viewport').getView('Common.Views.Header'); + + { + header.btnHome = (new Common.UI.Button({ + cls: 'btn-header', + iconCls: 'toolbar__icon icon--inverse btn-home', + visible: false, + hint: 'Show Main window', + dataHint:'0', + dataHintDirection: 'right', + dataHintOffset: '10, -18', + dataHintTitle: 'K' + })).render($('#box-document-title #slot-btn-dt-home')); + titlebuttons['home'] = {btn: header.btnHome}; + + header.btnHome.on('click', function (e) { + native.execCommand('title:button', JSON.stringify({click: "home"})); + }); + + $('#id-box-doc-name').on({ + 'dblclick': function (e) { + native.execCommand('title:dblclick', JSON.stringify({x: e.originalEvent.screenX, y: e.originalEvent.screenY})) + }, + 'mousedown': function (e) { + native.execCommand('title:mousedown', JSON.stringify({x: e.originalEvent.screenX, y: e.originalEvent.screenY})) + }, + 'mousemove': function (e) { + native.execCommand('title:mousemove', JSON.stringify({x: e.originalEvent.screenX, y: e.originalEvent.screenY})) + }, + 'mouseup': function (e) { + native.execCommand('title:mouseup', JSON.stringify({x: e.originalEvent.screenX, y: e.originalEvent.screenY})) + } + }); + } + if (!!header.btnSave) { titlebuttons['save'] = {btn: header.btnSave}; @@ -255,6 +336,13 @@ define([ if (!!header.btnPrint) titlebuttons['print'] = {btn: header.btnPrint}; + if (!!header.btnPrintQuick) { + titlebuttons['quickprint'] = { + btn: header.btnPrintQuick, + visible: header.btnPrintQuick.isVisible(), + }; + } + if (!!header.btnUndo) titlebuttons['undo'] = {btn: header.btnUndo}; @@ -278,7 +366,8 @@ define([ } if ( native.features.singlewindow !== undefined ) { - $('#box-document-title .hedset')[native.features.singlewindow ? 'hide' : 'show'](); + // $('#box-document-title .hedset')[native.features.singlewindow ? 'hide' : 'show'](); + !!titlebuttons.home && titlebuttons.home.btn.setVisible(native.features.singlewindow); } }); @@ -309,6 +398,7 @@ define([ menu.hide(); } }, + 'settings:apply': _onApplySettings.bind(this), }, }, {id: 'desktop'}); @@ -366,7 +456,10 @@ define([ } return undefined; - } + }, + getDefaultPrinterName: function () { + return nativevars ? nativevars.defaultPrinterName : ''; + }, }; }; diff --git a/apps/common/main/lib/controller/ExternalDiagramEditor.js b/apps/common/main/lib/controller/ExternalDiagramEditor.js index 16a83128f..610692c47 100644 --- a/apps/common/main/lib/controller/ExternalDiagramEditor.js +++ b/apps/common/main/lib/controller/ExternalDiagramEditor.js @@ -120,7 +120,9 @@ define([ } externalEditor.attachMouseEvents(); } else { - createExternalEditor.apply(this); + require(['api'], function () { + createExternalEditor.apply(this); + }.bind(this)); } this.isExternalEditorVisible = true; this.isHandlerCalled = false; diff --git a/apps/common/main/lib/controller/ExternalMergeEditor.js b/apps/common/main/lib/controller/ExternalMergeEditor.js index a7d61f7c2..312d10daf 100644 --- a/apps/common/main/lib/controller/ExternalMergeEditor.js +++ b/apps/common/main/lib/controller/ExternalMergeEditor.js @@ -118,7 +118,9 @@ define([ } externalEditor.attachMouseEvents(); } else { - createExternalEditor.apply(this); + require(['api'], function () { + createExternalEditor.apply(this); + }.bind(this)) } this.isExternalEditorVisible = true; this.isHandlerCalled = false; diff --git a/apps/common/main/lib/controller/ExternalOleEditor.js b/apps/common/main/lib/controller/ExternalOleEditor.js index c21055b95..197145e3e 100644 --- a/apps/common/main/lib/controller/ExternalOleEditor.js +++ b/apps/common/main/lib/controller/ExternalOleEditor.js @@ -120,7 +120,9 @@ define([ } externalEditor.attachMouseEvents(); } else { - createExternalEditor.apply(this); + require(['api'], function () { + createExternalEditor.apply(this); + }.bind(this)); } this.isExternalEditorVisible = true; this.isHandlerCalled = false; diff --git a/apps/common/main/lib/controller/HintManager.js b/apps/common/main/lib/controller/HintManager.js index 958d65a0a..de1d4703c 100644 --- a/apps/common/main/lib/controller/HintManager.js +++ b/apps/common/main/lib/controller/HintManager.js @@ -121,7 +121,7 @@ Common.UI.HintManager = new(function() { _usedTitles = [], _appPrefix, _staticHints = { // for desktop buttons - "btnhome": 'K' + // "btnhome": 'K' }; var _api; diff --git a/apps/common/main/lib/controller/LayoutManager.js b/apps/common/main/lib/controller/LayoutManager.js index 8a31ae069..6469c0816 100644 --- a/apps/common/main/lib/controller/LayoutManager.js +++ b/apps/common/main/lib/controller/LayoutManager.js @@ -47,14 +47,16 @@ if (Common.UI === undefined) { } Common.UI.LayoutManager = new(function() { - var _config; - var _init = function(config) { + var _config, + _licensed; + var _init = function(config, licensed) { _config = config; + _licensed = licensed; }; var _applyCustomization = function(config, el, prefix) { !config && (config = _config); - if (!config) return; + if (!_licensed || !config) return; for (var name in config) { if(config.hasOwnProperty(name)) { @@ -71,7 +73,7 @@ Common.UI.LayoutManager = new(function() { var _isElementVisible = function(value, config, prefix) { !config && (config = _config); - if (!config) return true; + if (!_licensed || !config) return true; var res = true; for (var name in config) { @@ -89,10 +91,31 @@ Common.UI.LayoutManager = new(function() { return res; }; + var _getInitValue = function(name) { + if (_licensed && _config) { + var arr = name.split('-'), + i = 0, + obj = _config; + for (i=0; i .group', me.$toolbarPanelPlugins); var $slot = $('').appendTo(_group); btn.render($slot); + var docProtection = me.panelPlugins._state.docProtection; + Common.Utils.lockControls(Common.enumLock.docLockView, docProtection.isReadOnly, {array: btn}); + Common.Utils.lockControls(Common.enumLock.docLockForms, docProtection.isFormsOnly, {array: btn}); + Common.Utils.lockControls(Common.enumLock.docLockComments, docProtection.isCommentsOnly, {array: btn}); } }, @@ -233,6 +248,7 @@ define([ me.appOptions.canPlugins = !collection.isEmpty(); if ( me.$toolbarPanelPlugins ) { me.$toolbarPanelPlugins.empty(); + me.toolbar && me.toolbar.clearMoreButton('plugins'); var _group = $('
'), rank = -1, @@ -259,6 +275,11 @@ define([ rank = new_rank; }); _group.appendTo(me.$toolbarPanelPlugins); + me.toolbar && me.toolbar.isTabActive('plugins') && me.toolbar.processPanelVisible(null, true, true); + var docProtection = me.panelPlugins._state.docProtection; + Common.Utils.lockControls(Common.enumLock.docLockView, docProtection.isReadOnly, {array: me.panelPlugins.lockedControls}); + Common.Utils.lockControls(Common.enumLock.docLockForms, docProtection.isFormsOnly, {array: me.panelPlugins.lockedControls}); + Common.Utils.lockControls(Common.enumLock.docLockComments, docProtection.isCommentsOnly, {array: me.panelPlugins.lockedControls}); } else { console.error('toolbar panel isnot created'); } @@ -518,10 +539,13 @@ define([ } var variationsArr = [], - pluginVisible = false; + pluginVisible = false, + isDisplayedInViewer = false; item.variations.forEach(function(itemVar){ var visible = (isEdit || itemVar.isViewer && (itemVar.isDisplayedInViewer!==false)) && _.contains(itemVar.EditorsSupport, editor) && !itemVar.isSystem; if ( visible ) pluginVisible = true; + if (itemVar.isViewer && (itemVar.isDisplayedInViewer!==false)) + isDisplayedInViewer = true; if (item.isUICustomizer ) { visible && arrUI.push({ @@ -571,7 +595,8 @@ define([ groupName: (item.group) ? item.group.name : '', groupRank: (item.group) ? item.group.rank : 0, minVersion: item.minVersion, - original: item + original: item, + isDisplayedInViewer: isDisplayedInViewer })); } }); @@ -720,6 +745,19 @@ define([ }, funcComplete); } else funcComplete(); + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props && this.panelPlugins) { + this.panelPlugins._state.docProtection = props; + Common.Utils.lockControls(Common.enumLock.docLockView, props.isReadOnly, {array: this.panelPlugins.lockedControls}); + Common.Utils.lockControls(Common.enumLock.docLockForms, props.isFormsOnly, {array: this.panelPlugins.lockedControls}); + Common.Utils.lockControls(Common.enumLock.docLockComments, props.isCommentsOnly, {array: this.panelPlugins.lockedControls}); + } } }, Common.Controllers.Plugins || {})); }); diff --git a/apps/common/main/lib/controller/ReviewChanges.js b/apps/common/main/lib/controller/ReviewChanges.js index 6633e092a..c60b8a9f9 100644 --- a/apps/common/main/lib/controller/ReviewChanges.js +++ b/apps/common/main/lib/controller/ReviewChanges.js @@ -83,7 +83,8 @@ define([ 'reviewchange:compare': _.bind(this.onCompareClick, this), 'reviewchange:combine': _.bind(this.onCombineClick, this), 'lang:document': _.bind(this.onDocLanguage, this), - 'collaboration:coauthmode': _.bind(this.onCoAuthMode, this) + 'collaboration:coauthmode': _.bind(this.onCoAuthMode, this), + 'protect:update': _.bind(this.onChangeProtectDocument, this) }, 'Common.Views.ReviewChangesDialog': { 'reviewchange:accept': _.bind(this.onAcceptClick, this), @@ -102,8 +103,18 @@ define([ this.collection = this.getApplication().getCollection('Common.Collections.ReviewChanges'); this.userCollection = this.getApplication().getCollection('Common.Collections.Users'); this.viewmode = false; + var filter = Common.localStorage.getKeysFilter(); + this.appPrefix = (filter && filter.length) ? filter.split(',')[0] : ''; - this._state = {posx: -1000, posy: -1000, popoverVisible: false, previewMode: false, compareSettings: null, wsLock: false, wsProps: []}; + this._state = { posx: -1000, posy: -1000, popoverVisible: false, previewMode: false, compareSettings: null, wsLock: false, wsProps: [], + disableEditing: false, // disable editing when disconnect/signed file/mail merge preview/review final or original/forms preview + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + } + }; Common.NotificationCenter.on('reviewchanges:turn', this.onTurnPreview.bind(this)); Common.NotificationCenter.on('spelling:turn', this.onTurnSpelling.bind(this)); @@ -165,26 +176,35 @@ define([ SetDisabled: function(state, reviewMode, fillFormMode) { if (this.dlgChanges) this.dlgChanges.close(); - if (reviewMode) + if (reviewMode) { this.lockToolbar(Common.enumLock.previewReviewMode, state); - else if (fillFormMode) + this.dlgChanges && Common.Utils.lockControls(Common.enumLock.previewReviewMode, state, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); + } else if (fillFormMode) { this.lockToolbar(Common.enumLock.viewFormMode, state); - else + this.dlgChanges && Common.Utils.lockControls(Common.enumLock.viewFormMode, state, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); + } else { this.lockToolbar(Common.enumLock.viewMode, state); - + } this.setPreviewMode(state); }, lockToolbar: function (causes, lock, opts) { - Common.Utils.lockControls(causes, lock, opts, this.view.getButtons()); + this.view && Common.Utils.lockControls(causes, lock, opts, this.view.getButtons()); }, setPreviewMode: function(mode) { //disable accept/reject in popover - if (this.viewmode === mode) return; - this.viewmode = mode; - if (mode) + this._state.disableEditing = mode; + this.updatePreviewMode(); + }, + + updatePreviewMode: function() { + var viewmode = this._state.disableEditing || this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly || this._state.docProtection.isCommentsOnly; + + if (this.viewmode === viewmode) return; + this.viewmode = viewmode; + if (viewmode) this.prevcanReview = this.appConfig.canReview; - this.appConfig.canReview = (mode) ? false : this.prevcanReview; + this.appConfig.canReview = (viewmode) ? false : this.prevcanReview; var me = this; this.popoverChanges && this.popoverChanges.each(function (model) { model.set('hint', !me.appConfig.canReview); @@ -208,19 +228,16 @@ define([ onApiShowChange: function (sdkchange, isShow) { var btnlock = true, changes; - if (this.appConfig.canReview && !this.appConfig.isReviewOnly) { + if (this.appConfig.canReview && !(this.appConfig.isReviewOnly || this._state.docProtection.isReviewOnly)) { if (sdkchange && sdkchange.length>0) { changes = this.readSDKChange(sdkchange); btnlock = this.isSelectedChangesLocked(changes, isShow); } if (this._state.lock !== btnlock) { Common.Utils.lockControls(Common.enumLock.reviewChangelock, btnlock, {array: [this.view.btnAccept, this.view.btnReject]}); - if (this.dlgChanges) { - this.dlgChanges.btnAccept.setDisabled(btnlock); - this.dlgChanges.btnReject.setDisabled(btnlock); - } + this.dlgChanges && Common.Utils.lockControls(Common.enumLock.reviewChangelock, btnlock, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); this._state.lock = btnlock; - Common.Utils.InternalSettings.set(this.view.appPrefix + "accept-reject-lock", btnlock); + Common.Utils.InternalSettings.set(this.appPrefix + "accept-reject-lock", btnlock); } } @@ -385,7 +402,7 @@ define([ if (value.Get_SmallCaps() !== undefined) proptext += ((value.Get_SmallCaps() ? '' : me.textNot) + me.textSmallCaps + ', '); if (value.Get_VertAlign() !== undefined) - proptext += (((value.Get_VertAlign()==1) ? me.textSuperScript : ((value.Get_VertAlign()==2) ? me.textSubScript : me.textBaseline)) + ', '); + proptext += (((value.Get_VertAlign()===Asc.vertalign_SuperScript) ? me.textSuperScript : ((value.Get_VertAlign()===Asc.vertalign_SubScript) ? me.textSubScript : me.textBaseline)) + ', '); if (value.Get_Color() !== undefined) proptext += (me.textColor + ', '); if (value.Get_Highlight() !== undefined) @@ -486,6 +503,7 @@ define([ } var date = (item.get_DateTime() == '') ? new Date() : new Date(item.get_DateTime()), user = me.userCollection.findOriginalUser(item.get_UserId()), + isProtectedReview = me._state.docProtection.isReviewOnly, change = new Common.Models.ReviewChange({ uid : Common.UI.getId(), userid : item.get_UserId(), @@ -500,8 +518,9 @@ define([ changedata : item, scope : me.view, hint : !me.appConfig.canReview, + docProtection: me._state.docProtection, goto : (item.get_MoveType() == Asc.c_oAscRevisionsMove.MoveTo || item.get_MoveType() == Asc.c_oAscRevisionsMove.MoveFrom), - editable : me.appConfig.isReviewOnly && (item.get_UserId() == me.currentUserId) || !me.appConfig.isReviewOnly && (!me.appConfig.canUseReviewPermissions || AscCommon.UserInfoParser.canEditReview(item.get_UserName())) + editable : (me.appConfig.isReviewOnly || isProtectedReview) && (item.get_UserId() == me.currentUserId) || !(me.appConfig.isReviewOnly || isProtectedReview) && (!me.appConfig.canUseReviewPermissions || AscCommon.UserInfoParser.canEditReview(item.get_UserName())) }); arr.push(change); @@ -590,7 +609,7 @@ define([ }, onTurnPreview: function(state, global, fromApi) { - if ( this.appConfig.isReviewOnly ) { + if ( this.appConfig.isReviewOnly) { this.view.turnChanges(true); } else if ( this.appConfig.canReview ) { @@ -604,13 +623,13 @@ define([ }, onApiTrackRevisionsChange: function(localFlag, globalFlag, userId) { - if ( this.appConfig.isReviewOnly ) { + if ( this.appConfig.isReviewOnly || this._state.docProtection.isReviewOnly) { this.view.turnChanges(true); } else if ( this.appConfig.canReview ) { var global = (localFlag===null), state = global ? globalFlag : localFlag; - Common.Utils.InternalSettings.set(this.view.appPrefix + "track-changes", (state ? 0 : 1) + (global ? 2 : 0)); + Common.Utils.InternalSettings.set(this.appPrefix + "track-changes", (state ? 0 : 1) + (global ? 2 : 0)); this.view.turnChanges(state, global); if (userId && this.userCollection) { var rec = this.userCollection.findOriginalUser(userId); @@ -625,18 +644,20 @@ define([ this.view && this.view.turnSpelling(state); if (Common.UI.FeaturesManager.canChange('spellcheck') && !suspend) { - Common.localStorage.setItem(this.view.appPrefix + "settings-spellcheck", state ? 1 : 0); + Common.localStorage.setItem(this.appPrefix + "settings-spellcheck", state ? 1 : 0); this.api.asc_setSpellCheck(state); - Common.Utils.InternalSettings.set(this.view.appPrefix + "settings-spellcheck", state); + Common.Utils.InternalSettings.set(this.appPrefix + "settings-spellcheck", state); } }, onReviewViewClick: function(menu, item, e) { this.turnDisplayMode(item.value); if (!this.appConfig.isEdit && !this.appConfig.isRestrictedEdit) - Common.localStorage.setItem(this.view.appPrefix + "review-mode", item.value); // for viewer - else if (item.value=='markup' || item.value=='simple') - Common.localStorage.setItem(this.view.appPrefix + "review-mode-editor", item.value); // for editor save only markup modes + Common.localStorage.setItem(this.appPrefix + "review-mode", item.value); // for viewer + else if (item.value=='markup' || item.value=='simple') { + Common.localStorage.setItem(this.appPrefix + "review-mode-editor", item.value); // for editor save only markup modes + Common.Utils.InternalSettings.set(this.appPrefix + "review-mode-editor", item.value); + } Common.NotificationCenter.trigger('edit:complete', this.view); }, @@ -797,14 +818,14 @@ define([ }, onCoAuthMode: function(menu, item, e) { - Common.localStorage.setItem(this.view.appPrefix + "settings-coauthmode", item.value); - Common.Utils.InternalSettings.set(this.view.appPrefix + "settings-coauthmode", item.value); + Common.localStorage.setItem(this.appPrefix + "settings-coauthmode", item.value); + Common.Utils.InternalSettings.set(this.appPrefix + "settings-coauthmode", item.value); if (this.api) { this.api.asc_SetFastCollaborative(item.value==1); if (this.api.SetCollaborativeMarksShowType) { - var value = Common.localStorage.getItem(item.value ? this.view.appPrefix + "settings-showchanges-fast" : this.view.appPrefix + "settings-showchanges-strict"); + var value = Common.localStorage.getItem(item.value ? this.appPrefix + "settings-showchanges-fast" : this.appPrefix + "settings-showchanges-strict"); if (value !== null) this.api.SetCollaborativeMarksShowType(value == 'all' ? Asc.c_oAscCollaborativeMarksShowType.All : value == 'none' ? Asc.c_oAscCollaborativeMarksShowType.None : Asc.c_oAscCollaborativeMarksShowType.LastChanges); @@ -812,13 +833,13 @@ define([ this.api.SetCollaborativeMarksShowType(item.value ? Asc.c_oAscCollaborativeMarksShowType.None : Asc.c_oAscCollaborativeMarksShowType.LastChanges); } - value = Common.localStorage.getItem(this.view.appPrefix + "settings-autosave"); + value = Common.localStorage.getItem(this.appPrefix + "settings-autosave"); if (value===null && this.appConfig.customization && this.appConfig.customization.autosave===false) value = 0; value = (!item.value && value!==null) ? parseInt(value) : 1; - Common.localStorage.setItem(this.view.appPrefix + "settings-autosave", value); - Common.Utils.InternalSettings.set(this.view.appPrefix + "settings-autosave", value); + Common.localStorage.setItem(this.appPrefix + "settings-autosave", value); + Common.Utils.InternalSettings.set(this.appPrefix + "settings-autosave", value); this.api.asc_setAutoSaveGap(value); } Common.NotificationCenter.trigger('edit:complete', this.view); @@ -836,7 +857,7 @@ define([ rightMenu: {clear: disable, disable: true}, statusBar: true, leftMenu: {disable: false, previewMode: true}, - fileMenu: {protect: true}, + fileMenu: {protect: true, info: true}, navigation: {disable: false, previewMode: true}, comments: {disable: false, previewMode: true}, chat: false, @@ -860,14 +881,14 @@ define([ onAppReady: function (config) { var me = this; - if ( config.canReview ) { - (new Promise(function (resolve) { - resolve(); - })).then(function () { + (new Promise(function (resolve) { + resolve(); + })).then(function () { + if ( config.canReview ) { // function _setReviewStatus(state, global) { // me.view.turnChanges(state, global); // !global && me.api.asc_SetLocalTrackRevisions(state); - // Common.Utils.InternalSettings.set(me.view.appPrefix + "track-changes", (state ? 0 : 1) + (global ? 2 : 0)); + // Common.Utils.InternalSettings.set(me.appPrefix + "track-changes", (state ? 0 : 1) + (global ? 2 : 0)); // }; var trackChanges = me.appConfig.customization && me.appConfig.customization.review ? me.appConfig.customization.review.trackChanges : undefined; @@ -879,13 +900,13 @@ define([ me.onApiTrackRevisionsChange(me.api.asc_GetLocalTrackRevisions(), me.api.asc_GetGlobalTrackRevisions()); me.api.asc_HaveRevisionsChanges() && me.view.markChanges(true); - var val = Common.localStorage.getItem(me.view.appPrefix + "review-mode-editor"); + var val = Common.localStorage.getItem(me.appPrefix + "review-mode-editor"); if (val===null) { val = me.appConfig.customization && me.appConfig.customization.review ? me.appConfig.customization.review.reviewDisplay : undefined; !val && (val = me.appConfig.customization ? me.appConfig.customization.reviewDisplay : undefined); val = /^(original|final|markup|simple)$/i.test(val) ? val.toLocaleLowerCase() : 'markup'; } - + Common.Utils.InternalSettings.set(me.appPrefix + "review-mode-editor", val); me.turnDisplayMode(val); // load display mode for all modes (viewer or editor) me.view.turnDisplayMode(val); @@ -893,51 +914,54 @@ define([ (!me.appConfig.customization.review || me.appConfig.customization.review.showReviewChanges===undefined) && me.appConfig.customization.showReviewChanges==true) ) { me.dlgChanges = (new Common.Views.ReviewChangesDialog({ popoverChanges : me.popoverChanges, - mode : me.appConfig + mode : me.appConfig, + docProtection : me._state.docProtection })); var sdk = $('#editor_sdk'), offset = sdk.offset(); me.dlgChanges.show(Math.max(10, offset.left + sdk.width() - 300), Math.max(10, offset.top + sdk.height() - 150)); } - }); - } else if (config.canViewReview) { - config.canViewReview = (config.isEdit || me.api.asc_HaveRevisionsChanges(true)); // check revisions from all users - if (config.canViewReview) { - var val = Common.localStorage.getItem(me.view.appPrefix + (config.isEdit || config.isRestrictedEdit ? "review-mode-editor" : "review-mode")); - if (val===null) { - val = me.appConfig.customization && me.appConfig.customization.review ? me.appConfig.customization.review.reviewDisplay : undefined; - !val && (val = me.appConfig.customization ? me.appConfig.customization.reviewDisplay : undefined); - val = /^(original|final|markup|simple)$/i.test(val) ? val.toLocaleLowerCase() : (config.isEdit || config.isRestrictedEdit ? 'markup' : 'original'); + } else if (config.canViewReview) { + config.canViewReview = (config.isEdit || me.api.asc_HaveRevisionsChanges(true)); // check revisions from all users + if (config.canViewReview) { + var val = Common.localStorage.getItem(me.appPrefix + (config.isEdit || config.isRestrictedEdit ? "review-mode-editor" : "review-mode")); + if (val===null) { + val = me.appConfig.customization && me.appConfig.customization.review ? me.appConfig.customization.review.reviewDisplay : undefined; + !val && (val = me.appConfig.customization ? me.appConfig.customization.reviewDisplay : undefined); + val = /^(original|final|markup|simple)$/i.test(val) ? val.toLocaleLowerCase() : (config.isEdit || config.isRestrictedEdit ? 'markup' : 'original'); + } + me.turnDisplayMode(val); + me.view.turnDisplayMode(val); } - me.turnDisplayMode(val); - me.view.turnDisplayMode(val); } - } - if (me.view && me.view.btnChat) { - me.getApplication().getController('LeftMenu').leftMenu.btnChat.on('toggle', function(btn, state){ - if (state !== me.view.btnChat.pressed) - me.view.turnChat(state); - }); - } - me.onChangeProtectSheet(); - if (me.view) { - me.lockToolbar(Common.enumLock.hideComments, !Common.localStorage.getBool(me.view.appPrefix + "settings-livecomment", true), {array: [me.view.btnCommentRemove, me.view.btnCommentResolve]}); - me.lockToolbar(Common.enumLock['Objects'], !!this._state.wsProps['Objects'], {array: [me.view.btnCommentRemove, me.view.btnCommentResolve]}); - } + if (me.view && me.view.btnChat) { + me.getApplication().getController('LeftMenu').leftMenu.btnChat.on('toggle', function(btn, state){ + if (state !== me.view.btnChat.pressed) + me.view.turnChat(state); + }); + } + me.onChangeProtectSheet(); + if (me.view) { + me.lockToolbar(Common.enumLock.hideComments, !Common.localStorage.getBool(me.appPrefix + "settings-livecomment", true), {array: [me.view.btnCommentRemove, me.view.btnCommentResolve]}); + me.lockToolbar(Common.enumLock['Objects'], !!me._state.wsProps['Objects'], {array: [me.view.btnCommentRemove, me.view.btnCommentResolve]}); + } - var val = Common.localStorage.getItem(me.view.appPrefix + "settings-review-hover-mode"); - if (val === null) { - val = me.appConfig.customization && me.appConfig.customization.review ? !!me.appConfig.customization.review.hoverMode : false; - } else - val = !!parseInt(val); - Common.Utils.InternalSettings.set(me.view.appPrefix + "settings-review-hover-mode", val); - me.appConfig.reviewHoverMode = val; + var val = Common.localStorage.getItem(me.appPrefix + "settings-review-hover-mode"); + if (val === null) { + val = me.appConfig.customization && me.appConfig.customization.review ? !!me.appConfig.customization.review.hoverMode : false; + } else + val = !!parseInt(val); + Common.Utils.InternalSettings.set(me.appPrefix + "settings-review-hover-mode", val); + me.appConfig.reviewHoverMode = val; + + me.view && me.view.onAppReady(config); + }); }, applySettings: function(menu) { - this.view && this.view.turnSpelling( Common.localStorage.getBool(this.view.appPrefix + "settings-spellcheck", true) ); - this.view && this.view.turnCoAuthMode( Common.localStorage.getBool(this.view.appPrefix + "settings-coauthmode", true) ); + this.view && this.view.turnSpelling( Common.localStorage.getBool(this.appPrefix + "settings-spellcheck", true) ); + this.view && this.view.turnCoAuthMode( Common.localStorage.getBool(this.appPrefix + "settings-coauthmode", true) ); if ((this.appConfig.canReview || this.appConfig.canViewReview) && this.appConfig.reviewHoverMode) this.onApiShowChange(); }, @@ -1002,7 +1026,8 @@ define([ }, onCoAuthoringDisconnect: function() { - this.lockToolbar(Common.enumLock.lostConnect, true) + this.lockToolbar(Common.enumLock.lostConnect, true); + this.dlgChanges && Common.Utils.lockControls(Common.enumLock.lostConnect, true, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); }, onUpdateUsers: function() { @@ -1026,7 +1051,7 @@ define([ commentsShowHide: function(mode) { if (!this.view) return; - var value = Common.Utils.InternalSettings.get(this.view.appPrefix + "settings-livecomment"); + var value = Common.Utils.InternalSettings.get(this.appPrefix + "settings-livecomment"); (value!==undefined) && this.lockToolbar(Common.enumLock.hideComments, mode != 'show' && !value, {array: [this.view.btnCommentRemove, this.view.btnCommentResolve]}); }, @@ -1042,6 +1067,37 @@ define([ this.lockToolbar(Common.enumLock['Objects'], !!this._state.wsProps['Objects'], {array: [this.view.btnCommentRemove, this.view.btnCommentResolve]}); }, + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + this.lockToolbar(Common.enumLock.docLockView, props.isReadOnly); + this.lockToolbar(Common.enumLock.docLockForms, props.isFormsOnly); + this.lockToolbar(Common.enumLock.docLockReview, props.isReviewOnly); + this.lockToolbar(Common.enumLock.docLockComments, props.isCommentsOnly); + if (this.dlgChanges) { + Common.Utils.lockControls(Common.enumLock.docLockView, props.isReadOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); + Common.Utils.lockControls(Common.enumLock.docLockForms, props.isFormsOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); + Common.Utils.lockControls(Common.enumLock.docLockReview, props.isReviewOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); + Common.Utils.lockControls(Common.enumLock.docLockComments, props.isCommentsOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]}); + } + if (this.appConfig.canReview) { + if (props.isReviewOnly) { + this.onTurnPreview(true); + this.onApiShowChange(); + } else if (this._state.prevReviewProtected) { + this.onTurnPreview(false); + this.onApiShowChange(); + } + this._state.prevReviewProtected = props.isReviewOnly; + } + this.updatePreviewMode(); + } + }, + textInserted: 'Inserted:', textDeleted: 'Deleted:', textParaInserted: 'Paragraph Inserted ', diff --git a/apps/common/main/lib/core/keymaster.js b/apps/common/main/lib/core/keymaster.js index 9cf5a0ee6..dbf672c20 100644 --- a/apps/common/main/lib/core/keymaster.js +++ b/apps/common/main/lib/core/keymaster.js @@ -30,7 +30,8 @@ '`': 192, '-': 189, '=': 187, ';': 186, '\'': 222, '[': 219, ']': 221, '\\': 220, - 'ff-': 173, 'ff=': 61 + 'ff-': 173, 'ff=': 61, + numplus: 107, numminus: 109 }, code = function(x){ return _MAP[x] || x.toUpperCase().charCodeAt(0); diff --git a/apps/common/main/lib/model/Comment.js b/apps/common/main/lib/model/Comment.js index 9c570db91..5be4e352b 100644 --- a/apps/common/main/lib/model/Comment.js +++ b/apps/common/main/lib/model/Comment.js @@ -82,6 +82,7 @@ define([ hide : false, filtered : false, hint : false, + fullInfoInHint : false, dummy : undefined, editable : true, removable : true diff --git a/apps/common/main/lib/template/AutoCorrectDialog.template b/apps/common/main/lib/template/AutoCorrectDialog.template index 09167ce01..0c0fb6679 100644 --- a/apps/common/main/lib/template/AutoCorrectDialog.template +++ b/apps/common/main/lib/template/AutoCorrectDialog.template @@ -97,13 +97,43 @@
-
-
-
-
-
-
-
-
+
+
+ + + + + + + + + + + + + + + + + + + +
+
+
+
+ +
+
+
+ +
+
+
+
+ + + +
diff --git a/apps/common/main/lib/template/CommentsPopover.template b/apps/common/main/lib/template/CommentsPopover.template index a0d7b0854..8cc1e3389 100644 --- a/apps/common/main/lib/template/CommentsPopover.template +++ b/apps/common/main/lib/template/CommentsPopover.template @@ -7,11 +7,11 @@
<%= scope.getEncodedName(parsedName) %>
<%=date%>
- <% if (!editTextInPopover || hint || scope.viewmode) { %> + <% if (!editTextInPopover || (hint && !fullInfoInHint) || scope.viewmode) { %>
<%=scope.pickLink(comment)%>
<% } else { %>
- + <% if (hideAddReply) { %> <% } else { %> @@ -37,7 +37,7 @@
<%=item.get("date")%>
<% if (!item.get("editTextInPopover")) { %>
<%=scope.pickLink(item.get("reply"))%>
- <% if (!hint && !scope.viewmode) { %> + <% if ((fullInfoInHint || !hint) && !scope.viewmode) { %>
<% if (item.get("editable")) { %>
">
@@ -61,7 +61,7 @@ - <% if (!showReplyInPopover && !hideAddReply && !hint && !scope.viewmode) { %> + <% if (!showReplyInPopover && !hideAddReply && (fullInfoInHint || !hint) && !scope.viewmode) { %> <% if (replys.length && !add_arrow) { %> <% } else { %> @@ -73,7 +73,7 @@ <% if (!editTextInPopover && !lock) { %>
- <% if (!hint && !scope.viewmode) { %> + <% if ((fullInfoInHint || !hint) && !scope.viewmode) { %> <% if (editable) { %>
<% } %> @@ -81,9 +81,9 @@
<% } %> <% } %> - <% if (editable && !hint && !scope.viewmode) { %> + <% if (editable && (fullInfoInHint || !hint) && !scope.viewmode) { %>
- <% } else if (!hint && (!editable || scope.viewmode) && resolved) { %> + <% } else if ((fullInfoInHint || !hint) && (!editable || scope.viewmode) && resolved) { %>
<% } %>
@@ -93,7 +93,7 @@ <% if (showReplyInPopover) { %>
- +
diff --git a/apps/common/main/lib/template/ReviewChangesPopover.template b/apps/common/main/lib/template/ReviewChangesPopover.template index ddfe2c417..409e4c0e5 100644 --- a/apps/common/main/lib/template/ReviewChangesPopover.template +++ b/apps/common/main/lib/template/ReviewChangesPopover.template @@ -9,7 +9,7 @@
<% } %> <% if (!hint) { %> - <% if (scope.appConfig.isReviewOnly) { %> + <% if (scope.appConfig.isReviewOnly || docProtection.isReviewOnly) { %> <% if (editable) { %>
<% } %> diff --git a/apps/common/main/lib/util/define.js b/apps/common/main/lib/util/define.js index 33a96d13a..c5ea21b39 100644 --- a/apps/common/main/lib/util/define.js +++ b/apps/common/main/lib/util/define.js @@ -597,4 +597,475 @@ define(function(){ 'use strict'; textValue: 'Value is' } })(), Common.define.conditionalData || {}); + + Common.define.smartArt = _.extend( new(function() { + return { + textList: 'List', + textProcess: 'Process', + textCycle: 'Cycle', + textHierarchy: 'Hierarchy', + textRelationship: 'Relationship', + textMatrix: 'Matrix', + textPyramid: 'Pyramid', + textPicture: 'Picture', + textBasicBlockList: 'Basic Block List', + textAlternatingHexagons: 'Alternating Hexagons', + textPictureCaptionList: 'Picture Caption List', + textLinedList: 'Lined List', + textVerticalBulletList: 'Vertical Bullet List', + textVerticalBoxList: 'Vertical Box List', + textHorizontalBulletList: 'Horizontal Bullet List', + textSquareAccentList: 'Square Accent List', + textPictureAccentList: 'Picture Accent List', + textBendingPictureAccentList: 'Bending Picture Accent List', + textStackedList: 'Stacked List', + textIncreasingCircleProcess: 'Increasing Circle Process', + textPieProcess: 'Pie Process', + textDetailedProcess: 'Detailed Process', + textGroupedList: 'Grouped List', + textHorizontalPictureList: 'Horizontal Picture List', + textContinuousPictureList: 'Continuous Picture List', + textPictureStrips: 'Picture Strips', + textVerticalPictureList: 'Vertical Picture List', + textAlternatingPictureBlocks: 'Alternating Picture Blocks', + textVerticalPictureAccentList: 'Vertical Picture Accent List', + textTitledPictureAccentList: 'Titled Picture Accent List', + textVerticalBlockList: 'Vertical Block List', + textVerticalChevronList: 'Vertical Chevron List', + textVerticalAccentList: 'Vertical Accent List', + textVerticalArrowList: 'Vertical Arrow List', + textTrapezoidList: 'Trapezoid List', + textDescendingBlockList: 'Descending Block List', + textTableList: 'Table List', + textSegmentedProcess: 'Segmented Process', + textVerticalCurvedList: 'Vertical Curved List', + textPyramidList: 'Pyramid List', + textTargetList: 'Target List', + textHierarchyList: 'Hierarchy List', + textVerticalCircleList: 'Vertical Circle List', + textTableHierarchy: 'Table Hierarchy', + textBasicProcess: 'Basic Process', + textStepUpProcess: 'Step Up Process', + textStepDownProcess: 'Step Down Process', + textAccentProcess: 'Accent Process', + textPictureAccentProcess: 'Picture Accent Process', + textAlternatingFlow: 'Alternating Flow', + textContinuousBlockProcess: 'Continuous Block Process', + textIncreasingArrowProcess: 'Increasing Arrow Process', + textContinuousArrowProcess: 'Continuous Arrow Process', + textProcessArrows: 'Process Arrows', + textCircleAccentTimeline: 'Circle Accent Timeline', + textBasicTimeline: 'Basic Timeline', + textBasicChevronProcess: 'Basic Chevron Process', + textClosedChevronProcess: 'Closed Chevron Process', + textChevronList: 'Chevron List', + textSubStepProcess: 'Sub-Step Process', + textPhasedProcess: 'Phased Process', + textRandomToResultProcess: 'Random to Result Process', + textVerticalProcess: 'Vertical Process', + textStaggeredProcess: 'Staggered Process', + textProcessList: 'Process List', + textCircleArrowProcess: 'Circle Arrow Process', + textBasicBendingProcess: 'Basic Bending Process', + textRepeatingBendingProcess: 'Repeating Bending Process', + textVerticalBendingProcess: 'Vertical Bending Process', + textAscendingPictureAccentProcess: 'Ascending Picture Accent Process', + textUpwardArrow: 'Upward Arrow', + textDescendingProcess: 'Descending Process', + textCircularBendingProcess: 'Circular Bending Process', + textEquation: 'Equation', + textVerticalEquation: 'Vertical Equation', + textFunnel: 'Funnel', + textGear: 'Gear', + textArrowRibbon: 'Arrow Ribbon', + textOpposingArrows: 'Opposing Arrows', + textConvergingArrows: 'Converging Arrows', + textDivergingArrows: 'Diverging Arrows', + textBasicCycle: 'Basic Cycle', + textTextCycle: 'Text Cycle', + textBlockCycle: 'Block Cycle', + textNondirectionalCycle: 'Nondirectional Cycle', + textContinuousCycle: 'Continuous Cycle', + textMultidirectionalCycle: 'Multidirectional Cycle', + textSegmentedCycle: 'Segmented Cycle', + textBasicPie: 'Basic Pie', + textRadialCycle: 'Radial Cycle', + textBasicRadial: 'Basic Radial', + textDivergingRadial: 'Diverging Radial', + textRadialVenn: 'Radial Venn', + textCycleMatrix: 'Cycle Matrix', + textRadialCluster: 'Radial Cluster', + textOrganizationChart: 'Organization Chart', + textNameAndTitleOrganizationChart: 'Name and Title Organization Chart', + textHalfCircleOrganizationChart: 'Half Circle Organization Chart', + textCirclePictureHierarchy: 'Circle Picture Hierarchy', + textLabeledHierarchy: 'Labeled Hierarchy', + textHorizontalOrganizationChart: 'Horizontal Organization Chart', + textHorizontalMultiLevelHierarchy: 'Horizontal Multi-Level Hierarchy', + textHorizontalHierarchy: 'Horizontal Hierarchy', + textHorizontalLabeledHierarchy: 'Horizontal Labeled Hierarchy', + textBalance: 'Balance', + textCircleRelationship: 'Circle Relationship', + textHexagonCluster: 'Hexagon Cluster', + textOpposingIdeas: 'Opposing Ideas', + textPlusAndMinus: 'Plus and Minus', + textReverseList: 'Reverse List', + textCounterbalanceArrows: 'Counterbalance Arrows', + textSegmentedPyramid: 'Segmented Pyramid', + textNestedTarget: 'Nested Target', + textConvergingRadial: 'Converging Radial', + textRadialList: 'Radial List', + textBasicTarget: 'Basic Target', + textBasicVenn: 'Basic Venn', + textLinearVenn: 'Linear Venn', + textStackedVenn: 'Stacked Venn', + textBasicMatrix: 'Basic Matrix', + textTitledMatrix: 'Titled Matrix', + textGridMatrix: 'Grid Matrix', + textBasicPyramid: 'Basic Pyramid', + textInvertedPyramid: 'Inverted Pyramid', + textAccentedPicture: 'Accented Picture', + textCircularPictureCallout: 'Circular Picture Callout', + textSnapshotPictureList: 'Snapshot Picture List', + textSpiralPicture: 'Spiral Picture', + textCaptionedPictures: 'Captioned Pictures', + textBendingPictureCaption: 'Bending Picture Caption', + textBendingPictureSemiTranparentText: 'Bending Picture Semi-Tranparent Text', + textBendingPictureBlocks: 'Bending Picture Blocks', + textBendingPictureCaptionList: 'Bending Picture Caption List', + textTitledPictureBlocks: 'Titled Picture Blocks', + textPictureGrid: 'Picture Grid', + textPictureAccentBlocks: 'Picture Accent Blocks', + textAlternatingPictureCircles: 'Alternating Picture Circles', + textTitlePictureLineup: 'Title Picture Lineup', + textPictureLineup: 'Picture Lineup', + textFramedTextPicture: 'Framed Text Picture', + textBubblePictureList: 'Bubble Picture List', + textOther: 'Other', + textPictureOrganizationChart: 'Picture Organization Chart', + textChevronAccentProcess: 'Chevron Accent Process', + textRadialPictureList: 'Radial Picture List', + textVerticalBracketList: 'Vertical Bracket List', + textInterconnectedBlockProcess: 'Interconnected Block Process', + textTabbedArc: 'Tabbed Arc', + textThemePictureAccent: 'Theme Picture Accent', + textVaryingWidthList: 'Varying Width List', + textConvergingText: 'Converging Text', + textInterconnectedRings: 'Interconnected Rings', + textArchitectureLayout: 'Architecture Layout', + textThemePictureAlternatingAccent: 'Theme Picture Alternating Accent', + textThemePictureGrid: 'Theme Picture Grid', + textCircleProcess: 'Circle Process', + textHexagonRadial: 'Hexagon Radial', + textPictureFrame: 'PictureFrame', + textTabList: 'Tab List', + + getSmartArtData: function() { + return [ + // list + { + id: 'menu-smart-art-group-list', + sectionId: Asc.c_oAscSmartArtSectionNames.List, + caption: this.textList, + icon: 'smart-list', + items: [ + { type: Asc.c_oAscSmartArtTypes.BasicBlockList, tip: this.textBasicBlockList}, + { type: Asc.c_oAscSmartArtTypes.AlternatingHexagonList, tip: this.textAlternatingHexagons}, + { type: Asc.c_oAscSmartArtTypes.PictureCaptionList, tip: this.textPictureCaptionList}, + { type: Asc.c_oAscSmartArtTypes.LinedList, tip: this.textLinedList}, + { type: Asc.c_oAscSmartArtTypes.VerticalBulletList, tip: this.textVerticalBulletList}, + { type: Asc.c_oAscSmartArtTypes.VerticalBoxList, tip: this.textVerticalBoxList}, + { type: Asc.c_oAscSmartArtTypes.VerticalBracketList, tip: this.textVerticalBracketList}, + { type: Asc.c_oAscSmartArtTypes.VaryingWidthList, tip: this.textVaryingWidthList}, + { type: Asc.c_oAscSmartArtTypes.TabList, tip: this.textTabList}, + { type: Asc.c_oAscSmartArtTypes.HorizontalBulletList, tip: this.textHorizontalBulletList}, + { type: Asc.c_oAscSmartArtTypes.SquareAccentList, tip: this.textSquareAccentList}, + { type: Asc.c_oAscSmartArtTypes.PictureAccentList, tip: this.textPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.BendingPictureAccentList, tip: this.textBendingPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.StackedList, tip: this.textStackedList}, + { type: Asc.c_oAscSmartArtTypes.IncreasingCircleProcess, tip: this.textIncreasingCircleProcess}, + { type: Asc.c_oAscSmartArtTypes.PieProcess, tip: this.textPieProcess}, + { type: Asc.c_oAscSmartArtTypes.DetailedProcess, tip: this.textDetailedProcess}, + { type: Asc.c_oAscSmartArtTypes.GroupedList, tip: this.textGroupedList}, + { type: Asc.c_oAscSmartArtTypes.HorizontalPictureList, tip: this.textHorizontalPictureList}, + { type: Asc.c_oAscSmartArtTypes.ContinuousPictureList, tip: this.textContinuousPictureList}, + { type: Asc.c_oAscSmartArtTypes.PictureStrips, tip: this.textPictureStrips}, + { type: Asc.c_oAscSmartArtTypes.VerticalPictureList, tip: this.textVerticalPictureList}, + { type: Asc.c_oAscSmartArtTypes.AlternatingPictureBlocks, tip: this.textAlternatingPictureBlocks}, + { type: Asc.c_oAscSmartArtTypes.VerticalPictureAccentList, tip: this.textVerticalPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.TitledPictureAccentList, tip: this.textTitledPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.VerticalBlockList, tip: this.textVerticalBlockList}, + { type: Asc.c_oAscSmartArtTypes.VerticalChevronList, tip: this.textVerticalChevronList}, + { type: Asc.c_oAscSmartArtTypes.VerticalAccentList, tip: this.textVerticalAccentList}, + { type: Asc.c_oAscSmartArtTypes.VerticalArrowList, tip: this.textVerticalArrowList}, + { type: Asc.c_oAscSmartArtTypes.TrapezoidList, tip: this.textTrapezoidList}, + { type: Asc.c_oAscSmartArtTypes.DescendingBlockList, tip: this.textDescendingBlockList}, + { type: Asc.c_oAscSmartArtTypes.TableList, tip: this.textTableList}, + { type: Asc.c_oAscSmartArtTypes.SegmentedProcess, tip: this.textSegmentedProcess}, + { type: Asc.c_oAscSmartArtTypes.VerticalCurvedList, tip: this.textVerticalCurvedList}, + { type: Asc.c_oAscSmartArtTypes.PyramidList, tip: this.textPyramidList}, + { type: Asc.c_oAscSmartArtTypes.TargetList, tip: this.textTargetList}, + { type: Asc.c_oAscSmartArtTypes.HierarchyList, tip: this.textHierarchyList}, + { type: Asc.c_oAscSmartArtTypes.VerticalCircleList, tip: this.textVerticalCircleList}, + { type: Asc.c_oAscSmartArtTypes.TableHierarchy, tip: this.textTableHierarchy}, + { type: Asc.c_oAscSmartArtTypes.ArchitectureLayout, tip: this.textArchitectureLayout} + ] + }, + // process + { + id: 'menu-smart-art-group-process', + sectionId: Asc.c_oAscSmartArtSectionNames.Process, + caption: this.textProcess, + icon: 'smart-process', + items: [ + { type: Asc.c_oAscSmartArtTypes.BasicProcess, tip: this.textBasicProcess}, + { type: Asc.c_oAscSmartArtTypes.StepUpProcess, tip: this.textStepUpProcess}, + { type: Asc.c_oAscSmartArtTypes.StepDownProcess, tip: this.textStepDownProcess}, + { type: Asc.c_oAscSmartArtTypes.AccentProcess, tip: this.textAccentProcess}, + { type: Asc.c_oAscSmartArtTypes.PictureAccentProcess, tip: this.textPictureAccentProcess}, + { type: Asc.c_oAscSmartArtTypes.AlternatingFlow, tip: this.textAlternatingFlow}, + { type: Asc.c_oAscSmartArtTypes.IncreasingCircleProcess, tip: this.textIncreasingCircleProcess}, + { type: Asc.c_oAscSmartArtTypes.PieProcess, tip: this.textPieProcess}, + { type: Asc.c_oAscSmartArtTypes.ContinuousBlockProcess, tip: this.textContinuousBlockProcess}, + { type: Asc.c_oAscSmartArtTypes.IncreasingArrowsProcess, tip: this.textIncreasingArrowProcess}, + { type: Asc.c_oAscSmartArtTypes.InterconnectedBlockProcess, tip: this.textInterconnectedBlockProcess}, + { type: Asc.c_oAscSmartArtTypes.ContinuousArrowProcess, tip: this.textContinuousArrowProcess}, + { type: Asc.c_oAscSmartArtTypes.ConvergingText, tip: this.textConvergingText}, + { type: Asc.c_oAscSmartArtTypes.ProcessArrows, tip: this.textProcessArrows}, + { type: Asc.c_oAscSmartArtTypes.CircleAccentTimeline, tip: this.textCircleAccentTimeline}, + { type: Asc.c_oAscSmartArtTypes.BasicTimeline, tip: this.textBasicTimeline}, + { type: Asc.c_oAscSmartArtTypes.CircleProcess, tip: this.textCircleProcess}, + { type: Asc.c_oAscSmartArtTypes.BasicChevronProcess, tip: this.textBasicChevronProcess}, + { type: Asc.c_oAscSmartArtTypes.ChevronAccentProcess, tip: this.textChevronAccentProcess}, + { type: Asc.c_oAscSmartArtTypes.ClosedChevronProcess, tip: this.textClosedChevronProcess}, + { type: Asc.c_oAscSmartArtTypes.ChevronList, tip: this.textChevronList}, + { type: Asc.c_oAscSmartArtTypes.VerticalChevronList, tip: this.textVerticalChevronList}, + { type: Asc.c_oAscSmartArtTypes.SubStepProcess, tip: this.textSubStepProcess}, + { type: Asc.c_oAscSmartArtTypes.PhasedProcess, tip: this.textPhasedProcess}, + { type: Asc.c_oAscSmartArtTypes.RandomToResultProcess, tip: this.textRandomToResultProcess}, + { type: Asc.c_oAscSmartArtTypes.VerticalProcess, tip: this.textVerticalProcess}, + { type: Asc.c_oAscSmartArtTypes.StaggeredProcess, tip: this.textStaggeredProcess}, + { type: Asc.c_oAscSmartArtTypes.ProcessList, tip: this.textProcessList}, + { type: Asc.c_oAscSmartArtTypes.SegmentedProcess, tip: this.textSegmentedProcess}, + { type: Asc.c_oAscSmartArtTypes.CircleArrowProcess, tip: this.textCircleArrowProcess}, + { type: Asc.c_oAscSmartArtTypes.BasicBendingProcess, tip: this.textBasicBendingProcess}, + { type: Asc.c_oAscSmartArtTypes.RepeatingBendingProcess, tip: this.textRepeatingBendingProcess}, + { type: Asc.c_oAscSmartArtTypes.VerticalBendingProcess, tip: this.textVerticalBendingProcess}, + { type: Asc.c_oAscSmartArtTypes.ContinuousPictureList, tip: this.textContinuousPictureList}, + { type: Asc.c_oAscSmartArtTypes.DetailedProcess, tip: this.textDetailedProcess}, + { type: Asc.c_oAscSmartArtTypes.VerticalArrowList, tip: this.textVerticalArrowList}, + { type: Asc.c_oAscSmartArtTypes.AscendingPictureAccentProcess, tip: this.textAscendingPictureAccentProcess}, + { type: Asc.c_oAscSmartArtTypes.UpwardArrow, tip: this.textUpwardArrow}, + { type: Asc.c_oAscSmartArtTypes.DescendingProcess, tip: this.textDescendingProcess}, + { type: Asc.c_oAscSmartArtTypes.CircularBendingProcess, tip: this.textCircularBendingProcess}, + { type: Asc.c_oAscSmartArtTypes.Equation, tip: this.textEquation}, + { type: Asc.c_oAscSmartArtTypes.VerticalEquation, tip: this.textVerticalEquation}, + { type: Asc.c_oAscSmartArtTypes.Funnel, tip: this.textFunnel}, + { type: Asc.c_oAscSmartArtTypes.Gear, tip: this.textGear}, + { type: Asc.c_oAscSmartArtTypes.ArrowRibbon, tip: this.textArrowRibbon}, + { type: Asc.c_oAscSmartArtTypes.OpposingArrows, tip: this.textOpposingArrows}, + { type: Asc.c_oAscSmartArtTypes.ConvergingArrows, tip: this.textConvergingArrows}, + { type: Asc.c_oAscSmartArtTypes.DivergingArrows, tip: this.textDivergingArrows} + ] + }, + // cycle + { + id: 'menu-smart-art-group-cycle', + sectionId: Asc.c_oAscSmartArtSectionNames.Cycle, + caption: this.textCycle, + icon: 'smart-cycle', + items: [ + { type: Asc.c_oAscSmartArtTypes.BasicCycle, tip: this.textBasicCycle}, + { type: Asc.c_oAscSmartArtTypes.TextCycle, tip: this.textTextCycle}, + { type: Asc.c_oAscSmartArtTypes.BlockCycle, tip: this.textBlockCycle}, + { type: Asc.c_oAscSmartArtTypes.NonDirectionalCycle, tip: this.textNondirectionalCycle}, + { type: Asc.c_oAscSmartArtTypes.ContinuousCycle, tip: this.textContinuousCycle}, + { type: Asc.c_oAscSmartArtTypes.MultiDirectionalCycle, tip: this.textMultidirectionalCycle}, + { type: Asc.c_oAscSmartArtTypes.SegmentedCycle, tip: this.textSegmentedCycle}, + { type: Asc.c_oAscSmartArtTypes.BasicPie, tip: this.textBasicPie}, + { type: Asc.c_oAscSmartArtTypes.HexagonRadial, tip: this.textHexagonRadial}, + { type: Asc.c_oAscSmartArtTypes.RadialCycle, tip: this.textRadialCycle}, + { type: Asc.c_oAscSmartArtTypes.BasicRadial, tip: this.textBasicRadial}, + { type: Asc.c_oAscSmartArtTypes.DivergingRadial, tip: this.textDivergingRadial}, + { type: Asc.c_oAscSmartArtTypes.RadialVenn, tip: this.textRadialVenn}, + { type: Asc.c_oAscSmartArtTypes.CycleMatrix, tip: this.textCycleMatrix}, + { type: Asc.c_oAscSmartArtTypes.Gear, tip: this.textGear}, + { type: Asc.c_oAscSmartArtTypes.RadialCluster, tip: this.textRadialCluster}, + { type: Asc.c_oAscSmartArtTypes.CircleArrowProcess, tip: this.textCircleArrowProcess} + ] + }, + // hierarchy + { + id: 'menu-smart-art-group-hierarchy', + sectionId: Asc.c_oAscSmartArtSectionNames.Hierarchy, + caption: this.textHierarchy, + icon: 'smart-hierarchy', + items: [ + { type: Asc.c_oAscSmartArtTypes.OrganizationChart, tip: this.textOrganizationChart}, + { type: Asc.c_oAscSmartArtTypes.PictureOrganizationChart, tip: this.textPictureOrganizationChart}, + { type: Asc.c_oAscSmartArtTypes.NameAndTitleOrganizationChart, tip: this.textNameAndTitleOrganizationChart}, + { type: Asc.c_oAscSmartArtTypes.HalfCircleOrganizationChart, tip: this.textHalfCircleOrganizationChart}, + { type: Asc.c_oAscSmartArtTypes.CirclePictureHierarchy, tip: this.textCirclePictureHierarchy}, + { type: Asc.c_oAscSmartArtTypes.Hierarchy, tip: this.textHierarchy}, + { type: Asc.c_oAscSmartArtTypes.LabeledHierarchy, tip: this.textLabeledHierarchy}, + { type: Asc.c_oAscSmartArtTypes.TableHierarchy, tip: this.textTableHierarchy}, + { type: Asc.c_oAscSmartArtTypes.HorizontalOrganizationChart, tip: this.textHorizontalOrganizationChart}, + { type: Asc.c_oAscSmartArtTypes.ArchitectureLayout, tip: this.textArchitectureLayout}, + { type: Asc.c_oAscSmartArtTypes.HorizontalMultiLevelHierarchy, tip: this.textHorizontalMultiLevelHierarchy}, + { type: Asc.c_oAscSmartArtTypes.HorizontalHierarchy, tip: this.textHorizontalHierarchy}, + { type: Asc.c_oAscSmartArtTypes.HorizontalLabeledHierarchy, tip: this.textHorizontalLabeledHierarchy}, + { type: Asc.c_oAscSmartArtTypes.HierarchyList, tip: this.textHierarchyList}, + { type: Asc.c_oAscSmartArtTypes.LinedList, tip: this.textLinedList} + ] + }, + // relationship + { + id: 'menu-smart-art-group-relationship', + sectionId: Asc.c_oAscSmartArtSectionNames.Relationship, + caption: this.textRelationship, + icon: 'smart-relationship', + items: [ + { type: Asc.c_oAscSmartArtTypes.Balance, tip: this.textBalance}, + { type: Asc.c_oAscSmartArtTypes.CircleRelationship, tip: this.textCircleRelationship}, + { type: Asc.c_oAscSmartArtTypes.Funnel, tip: this.textFunnel}, + { type: Asc.c_oAscSmartArtTypes.Gear, tip: this.textGear}, + { type: Asc.c_oAscSmartArtTypes.HexagonCluster, tip: this.textHexagonCluster}, + { type: Asc.c_oAscSmartArtTypes.OpposingIdeas, tip: this.textOpposingIdeas}, + { type: Asc.c_oAscSmartArtTypes.PlusAndMinus, tip: this.textPlusAndMinus}, + { type: Asc.c_oAscSmartArtTypes.ReverseList, tip: this.textReverseList}, + { type: Asc.c_oAscSmartArtTypes.ArrowRibbon, tip: this.textArrowRibbon}, + { type: Asc.c_oAscSmartArtTypes.CounterbalanceArrows, tip: this.textCounterbalanceArrows}, + { type: Asc.c_oAscSmartArtTypes.ConvergingArrows, tip: this.textConvergingArrows}, + { type: Asc.c_oAscSmartArtTypes.DivergingArrows, tip: this.textDivergingArrows}, + { type: Asc.c_oAscSmartArtTypes.OpposingArrows, tip: this.textOpposingArrows}, + { type: Asc.c_oAscSmartArtTypes.SegmentedPyramid, tip: this.textSegmentedPyramid}, + { type: Asc.c_oAscSmartArtTypes.TableHierarchy, tip: this.textTableHierarchy}, + { type: Asc.c_oAscSmartArtTypes.ArchitectureLayout, tip: this.textArchitectureLayout}, + { type: Asc.c_oAscSmartArtTypes.TargetList, tip: this.textTargetList}, + { type: Asc.c_oAscSmartArtTypes.NestedTarget, tip: this.textNestedTarget}, + { type: Asc.c_oAscSmartArtTypes.GroupedList, tip: this.textGroupedList}, + { type: Asc.c_oAscSmartArtTypes.ContinuousPictureList, tip: this.textContinuousPictureList}, + { type: Asc.c_oAscSmartArtTypes.HierarchyList, tip: this.textHierarchyList}, + { type: Asc.c_oAscSmartArtTypes.PictureAccentList, tip: this.textPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.Equation, tip: this.textEquation}, + { type: Asc.c_oAscSmartArtTypes.VerticalEquation, tip: this.textVerticalEquation}, + { type: Asc.c_oAscSmartArtTypes.ConvergingRadial, tip: this.textConvergingRadial}, + { type: Asc.c_oAscSmartArtTypes.RadialCluster, tip: this.textRadialCluster}, + { type: Asc.c_oAscSmartArtTypes.RadialList, tip: this.textRadialList}, + { type: Asc.c_oAscSmartArtTypes.TabbedArc, tip: this.textTabbedArc}, + { type: Asc.c_oAscSmartArtTypes.RadialCycle, tip: this.textRadialCycle}, + { type: Asc.c_oAscSmartArtTypes.BasicRadial, tip: this.textBasicRadial}, + { type: Asc.c_oAscSmartArtTypes.DivergingRadial, tip: this.textDivergingRadial}, + { type: Asc.c_oAscSmartArtTypes.NonDirectionalCycle, tip: this.textNondirectionalCycle}, + { type: Asc.c_oAscSmartArtTypes.BasicTarget, tip: this.textBasicTarget}, + { type: Asc.c_oAscSmartArtTypes.CycleMatrix, tip: this.textCycleMatrix}, + { type: Asc.c_oAscSmartArtTypes.BasicPie, tip: this.textBasicPie}, + { type: Asc.c_oAscSmartArtTypes.BasicVenn, tip: this.textBasicVenn}, + { type: Asc.c_oAscSmartArtTypes.LinearVenn, tip: this.textLinearVenn}, + { type: Asc.c_oAscSmartArtTypes.StackedVenn, tip: this.textStackedVenn}, + { type: Asc.c_oAscSmartArtTypes.RadialVenn, tip: this.textRadialVenn}, + { type: Asc.c_oAscSmartArtTypes.InterconnectedRings, tip: this.textInterconnectedRings}, + ] + }, + // matrix + { + id: 'menu-smart-art-group-matrix', + sectionId: Asc.c_oAscSmartArtSectionNames.Matrix, + caption: this.textMatrix, + icon: 'smart-matrix', + items: [ + { type: Asc.c_oAscSmartArtTypes.BasicMatrix, tip: this.textBasicMatrix}, + { type: Asc.c_oAscSmartArtTypes.TitledMatrix, tip: this.textTitledMatrix}, + { type: Asc.c_oAscSmartArtTypes.GridMatrix, tip: this.textGridMatrix}, + { type: Asc.c_oAscSmartArtTypes.CycleMatrix, tip: this.textCycleMatrix} + ] + }, + // pyramid + { + id: 'menu-smart-art-group-pyramid', + sectionId: Asc.c_oAscSmartArtSectionNames.Pyramid, + caption: this.textPyramid, + icon: 'smart-pyramid', + items: [ + { type: Asc.c_oAscSmartArtTypes.BasicPyramid, tip: this.textBasicPyramid}, + { type: Asc.c_oAscSmartArtTypes.InvertedPyramid, tip: this.textInvertedPyramid}, + { type: Asc.c_oAscSmartArtTypes.PyramidList, tip: this.textPyramidList}, + { type: Asc.c_oAscSmartArtTypes.SegmentedPyramid, tip: this.textSegmentedPyramid} + ] + }, + // picture + { + id: 'menu-smart-art-group-picture', + sectionId: Asc.c_oAscSmartArtSectionNames.Picture, + caption: this.textPicture, + icon: 'btn-menu-image', + items: [ + { type: Asc.c_oAscSmartArtTypes.AccentedPicture, tip: this.textAccentedPicture}, + { type: Asc.c_oAscSmartArtTypes.CircularPictureCallout, tip: this.textCircularPictureCallout}, + { type: Asc.c_oAscSmartArtTypes.PictureCaptionList, tip: this.textPictureCaptionList}, + { type: Asc.c_oAscSmartArtTypes.RadialPictureList, tip: this.textRadialPictureList}, + { type: Asc.c_oAscSmartArtTypes.SnapshotPictureList, tip: this.textSnapshotPictureList}, + { type: Asc.c_oAscSmartArtTypes.SpiralPicture, tip: this.textSpiralPicture}, + { type: Asc.c_oAscSmartArtTypes.CaptionedPictures, tip: this.textCaptionedPictures}, + { type: Asc.c_oAscSmartArtTypes.BendingPictureCaption, tip: this.textBendingPictureCaption}, + { type: Asc.c_oAscSmartArtTypes.PictureFrame, tip: this.textPictureFrame}, + { type: Asc.c_oAscSmartArtTypes.BendingPictureSemiTransparentText, tip: this.textBendingPictureSemiTranparentText}, + { type: Asc.c_oAscSmartArtTypes.BendingPictureBlocks, tip: this.textBendingPictureBlocks}, + { type: Asc.c_oAscSmartArtTypes.BendingPictureCaptionList, tip: this.textBendingPictureCaptionList}, + { type: Asc.c_oAscSmartArtTypes.TitledPictureBlocks, tip: this.textTitledPictureBlocks}, + { type: Asc.c_oAscSmartArtTypes.PictureGrid, tip: this.textPictureGrid}, + { type: Asc.c_oAscSmartArtTypes.PictureAccentBlocks, tip: this.textPictureAccentBlocks}, + { type: Asc.c_oAscSmartArtTypes.PictureStrips, tip: this.textPictureStrips}, + { type: Asc.c_oAscSmartArtTypes.ThemePictureAccent, tip: this.textThemePictureAccent}, + { type: Asc.c_oAscSmartArtTypes.ThemePictureGrid, tip: this.textThemePictureGrid}, + { type: Asc.c_oAscSmartArtTypes.ThemePictureAlternatingAccent, tip: this.textThemePictureAlternatingAccent}, + { type: Asc.c_oAscSmartArtTypes.TitledPictureAccentList, tip: this.textTitledPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.AlternatingPictureBlocks, tip: this.textAlternatingPictureBlocks}, + { type: Asc.c_oAscSmartArtTypes.AscendingPictureAccentProcess, tip: this.textAscendingPictureAccentProcess}, + { type: Asc.c_oAscSmartArtTypes.AlternatingPictureCircles, tip: this.textAlternatingPictureCircles}, + { type: Asc.c_oAscSmartArtTypes.TitlePictureLineup, tip: this.textTitlePictureLineup}, + { type: Asc.c_oAscSmartArtTypes.PictureLineup, tip: this.textPictureLineup}, + { type: Asc.c_oAscSmartArtTypes.FramedTextPicture, tip: this.textFramedTextPicture}, + { type: Asc.c_oAscSmartArtTypes.HexagonCluster, tip: this.textHexagonCluster}, + { type: Asc.c_oAscSmartArtTypes.BubblePictureList, tip: this.textBubblePictureList}, + { type: Asc.c_oAscSmartArtTypes.CirclePictureHierarchy, tip: this.textCirclePictureHierarchy}, + { type: Asc.c_oAscSmartArtTypes.HorizontalPictureList, tip: this.textHorizontalPictureList}, + { type: Asc.c_oAscSmartArtTypes.ContinuousPictureList, tip: this.textContinuousPictureList}, + { type: Asc.c_oAscSmartArtTypes.VerticalPictureList, tip: this.textVerticalPictureList}, + { type: Asc.c_oAscSmartArtTypes.VerticalPictureAccentList, tip: this.textVerticalPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.BendingPictureAccentList, tip: this.textBendingPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.PictureAccentList, tip: this.textPictureAccentList}, + { type: Asc.c_oAscSmartArtTypes.PictureAccentProcess, tip: this.textPictureAccentProcess} + ] + }, + // Other + { + id: 'menu-smart-art-group-other', + sectionId: Asc.c_oAscSmartArtSectionNames.OfficeCom, + caption: this.textOther, + items: [ + { type: Asc.c_oAscSmartArtTypes.PictureOrganizationChart, tip: this.textPictureOrganizationChart}, + { type: Asc.c_oAscSmartArtTypes.ChevronAccentProcess, tip: this.textChevronAccentProcess}, + { type: Asc.c_oAscSmartArtTypes.RadialPictureList, tip: this.textRadialPictureList}, + { type: Asc.c_oAscSmartArtTypes.VerticalBracketList, tip: this.textVerticalBracketList}, + { type: Asc.c_oAscSmartArtTypes.InterconnectedBlockProcess, tip: this.textInterconnectedBlockProcess}, + { type: Asc.c_oAscSmartArtTypes.TabbedArc, tip: this.textTabbedArc}, + { type: Asc.c_oAscSmartArtTypes.ThemePictureAccent, tip: this.textThemePictureAccent}, + { type: Asc.c_oAscSmartArtTypes.VaryingWidthList, tip: this.textVaryingWidthList}, + { type: Asc.c_oAscSmartArtTypes.ConvergingText, tip: this.textConvergingText}, + { type: Asc.c_oAscSmartArtTypes.InterconnectedRings, tip: this.textInterconnectedRings}, + { type: Asc.c_oAscSmartArtTypes.ArchitectureLayout, tip: this.textArchitectureLayout}, + { type: Asc.c_oAscSmartArtTypes.ThemePictureAlternatingAccent, tip: this.textThemePictureAlternatingAccent}, + { type: Asc.c_oAscSmartArtTypes.ThemePictureGrid, tip: this.textThemePictureGrid}, + { type: Asc.c_oAscSmartArtTypes.CircleProcess, tip: this.textCircleProcess}, + { type: Asc.c_oAscSmartArtTypes.HexagonRadial, tip: this.textHexagonRadial}, + { type: Asc.c_oAscSmartArtTypes.PictureFrame, tip: this.textPictureFrame}, + { type: Asc.c_oAscSmartArtTypes.TabList, tip: this.textTabList} + ] + } + ]; + }, + } + })(), Common.define.smartArt || {}); + }); \ No newline at end of file diff --git a/apps/common/main/lib/util/htmlutils.js b/apps/common/main/lib/util/htmlutils.js index d75a54d0a..aa0312061 100644 --- a/apps/common/main/lib/util/htmlutils.js +++ b/apps/common/main/lib/util/htmlutils.js @@ -68,6 +68,7 @@ if ( window.desktop ) { delete params.uitheme; } else { localStorage.setItem("ui-theme-id", theme.id); + localStorage.removeItem("ui-theme-use-system"); } localStorage.removeItem("ui-theme"); diff --git a/apps/common/main/lib/util/utils.js b/apps/common/main/lib/util/utils.js index b1d58e132..e75a4b527 100644 --- a/apps/common/main/lib/util/utils.js +++ b/apps/common/main/lib/util/utils.js @@ -979,7 +979,7 @@ Common.Utils.warningDocumentIsLocked = function (opts) { callback: function(btn){ if (btn == 'edit') { if ( opts.disablefunc ) opts.disablefunc(false); - app.getController('Main').api.asc_setIsReadOnly(false); + app.getController('Main').api.asc_setLocalRestrictions(Asc.c_oAscLocalRestrictionType.None); } } }); @@ -1095,4 +1095,4 @@ Common.Utils.getKeyByValue = function(obj, value) { return prop; } } -}; \ No newline at end of file +}; diff --git a/apps/common/main/lib/view/AutoCorrectDialog.js b/apps/common/main/lib/view/AutoCorrectDialog.js index 0cea0bf82..abb089090 100644 --- a/apps/common/main/lib/view/AutoCorrectDialog.js +++ b/apps/common/main/lib/view/AutoCorrectDialog.js @@ -47,6 +47,8 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', ], function (contentTemplate) { 'use strict'; var _mathStore = new Common.UI.DataViewStore(); var _functionsStore = new Common.UI.DataViewStore(); + var _exciptionsStore = new Common.UI.DataViewStore(); + var _exciptionsLangs = [0x0409, 0x0419]; Common.Views.AutoCorrectDialog = Common.Views.AdvancedSettingsWindow.extend(_.extend({ options: { @@ -57,7 +59,8 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', }, initialize : function(options) { - var filter = Common.localStorage.getKeysFilter(); + var filter = Common.localStorage.getKeysFilter(), + me = this; this.appPrefix = (filter && filter.length) ? filter.split(',')[0] : ''; var items = [ @@ -66,7 +69,7 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', ]; if (this.appPrefix=='de-' || this.appPrefix=='pe-') { items.push({panelId: 'id-autocorrect-dialog-settings-de-autoformat', panelCaption: this.textAutoFormat}); - items.push({panelId: 'id-autocorrect-dialog-settings-autocorrect', panelCaption: this.textAutoCorrect}); + items.push({panelId: 'id-autocorrect-dialog-settings-exceptions', panelCaption: this.textAutoCorrect}); } else if (this.appPrefix=='sse-') items.push({panelId: 'id-autocorrect-dialog-settings-sse-autoformat', panelCaption: this.textAutoFormat}); @@ -105,6 +108,19 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', this.arrAddRec = value ? JSON.parse(value) : []; value = Common.Utils.InternalSettings.get(path + "-rem"); this.arrRemRec = value ? JSON.parse(value) : []; + + this.arrAddExceptions = {}; + this.arrRemExceptions = {}; + _exciptionsLangs.forEach(function(lang) { + path = me.appPrefix + "settings-letter-exception"; + + value = Common.Utils.InternalSettings.get(path + "-add-" + lang); + me.arrAddExceptions[lang] = value ? JSON.parse(value) : []; + + value = Common.Utils.InternalSettings.get(path + "-rem-" + lang); + me.arrRemExceptions[lang] = value ? JSON.parse(value) : []; + }); + Common.Views.AdvancedSettingsWindow.prototype.initialize.call(this, this.options); }, @@ -335,27 +351,121 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', Common.Utils.InternalSettings.set(me.appPrefix + "settings-autoformat-double-space", checked); me.api.asc_SetAutoCorrectDoubleSpaceWithPeriod(checked); }); + + // AutoCorrect - this.chFLSentence = new Common.UI.CheckBox({ - el: $window.find('#id-autocorrect-dialog-chk-fl-sentence'), + var exciptionsActiveLang = Common.Utils.InternalSettings.get('settings-letter-exception-lang'); + this.exceptionsLangCmb = new Common.UI.ComboBox({ + el : $window.find('#auto-correct-exceptions-lang'), + style : 'width: 145px;', + menuStyle : 'min-width:100%;', + editable : false, + takeFocusOnClose : true, + menuCls : 'menu-aligned', + cls : 'input-group-nr', + dataHintDirection: 'bottom', + data : _exciptionsLangs.map(function(lang){ + var langName = Common.util.LanguageInfo.getLocalLanguageName(lang); + return { + displayValue: langName[1], + shortName: langName[0], + value: lang + }; + }) + }).on('selected', function(combo, record) { + if(exciptionsActiveLang != record.value) { + exciptionsActiveLang = record.value; + Common.Utils.InternalSettings.set('settings-letter-exception-lang', exciptionsActiveLang); + me.onInitExceptionsList(true); + me.onChangeInputException(me.exceptionsFindInput, me.exceptionsFindInput.getValue()); + } + }); + + if(!exciptionsActiveLang) { + var curLangObj = this.exceptionsLangCmb.store.findWhere({value: this.api.asc_getDefaultLanguage()}); + if (!curLangObj) { + var nameLang = Common.util.LanguageInfo.getLocalLanguageName(this.api.asc_getDefaultLanguage())[0].split(/[\-\_]/)[0]; + curLangObj = this.exceptionsLangCmb.store.find(function(lang){ + return lang.get('shortName').indexOf(nameLang)==0; + }); + } + if(curLangObj) exciptionsActiveLang = curLangObj.get('value'); + } + this.exceptionsLangCmb.setValue(exciptionsActiveLang ? exciptionsActiveLang : _exciptionsLangs[0]); + + this.onInitExceptionsList(true); + this.exceptionsList = new Common.UI.ListView({ + el: $window.find('#auto-correct-exceptions-list'), + store: new Common.UI.DataViewStore(_exciptionsStore.slice(0, 6)), + simpleAddMode: false, + template: _.template(['
'].join('')), + itemTemplate: _.template([ + '
<%= value + "."%>
' + ].join('')), + scrollAlwaysVisible: true, + tabindex: 1 + }); + this.exceptionsList.on('item:select', _.bind(this.onSelectExceptionItem, this)); + + + this.exceptionsFindInput = new Common.UI.InputField({ + el : $window.find('#auto-correct-exceptions-find'), + allowBlank : true, + validateOnChange : true, + maxLength : 255, + validation : function () { return true; } + }).on ('changing', _.bind(this.onChangeInputException, this)); + + this.exceptionsFindInput.cmpEl.find('input').on('keydown', function(event){ + if (event.key == 'ArrowDown') { + var _selectedItem = me.exceptionsList.getSelectedRec() || me.exceptionsList.store.at(0); + if (_selectedItem) { + me.exceptionsList.selectRecord(_selectedItem); + me.exceptionsList.scrollToRecord(_selectedItem); + } + _.delay(function(){ + me.exceptionsList.focus(); + },10); + + } + }); + + this.btnResetExceptions = new Common.UI.Button({ + el: $window.find('#auto-correct-btn-exceptions-reset') + }); + this.btnResetExceptions.on('click', _.bind(this.onResetExceptionsToDefault, this)); + + this.btnAddExceptions = new Common.UI.Button({ + el: $window.find('#auto-correct-btn-exceptions-edit') + }); + this.btnAddExceptions.on('click', _.bind(this.onAddException, this, false)); + + this.btnDeleteExceptions = new Common.UI.Button({ + el: $window.find('#auto-correct-btn-exceptions-delete') + }); + this.btnDeleteExceptions.on('click', _.bind(this.onDeleteException, this, false)); + + + this.chkSentenceExceptions = new Common.UI.CheckBox({ + el: $window.find('#auto-correct-exceptions-chk-sentence'), labelText: this.textFLSentence, - value: Common.Utils.InternalSettings.get(this.appPrefix + "settings-autoformat-fl-sentence") + value: Common.Utils.InternalSettings.get(this.appPrefix + "settings-letter-exception-sentence") }).on('change', function(field, newValue, oldValue, eOpts){ var checked = (field.getValue()==='checked'); - Common.localStorage.setBool(me.appPrefix + "settings-autoformat-fl-sentence", checked); - Common.Utils.InternalSettings.set(me.appPrefix + "settings-autoformat-fl-sentence", checked); + Common.localStorage.setBool(me.appPrefix + "settings-letter-exception-sentence", checked); + Common.Utils.InternalSettings.set(me.appPrefix + "settings-letter-exception-sentence", checked); me.api.asc_SetAutoCorrectFirstLetterOfSentences && me.api.asc_SetAutoCorrectFirstLetterOfSentences(checked); }); - this.chFLCells = new Common.UI.CheckBox({ - el: $window.find('#id-autocorrect-dialog-chk-fl-cells'), + this.chkSentenceCells = new Common.UI.CheckBox({ + el: $window.find('#auto-correct-exceptions-chk-cells'), labelText: this.textFLCells, - value: Common.Utils.InternalSettings.get(this.appPrefix + "settings-autoformat-fl-cells") + value: Common.Utils.InternalSettings.get(this.appPrefix + "settings-letter-exception-cells") }).on('change', function(field, newValue, oldValue, eOpts){ var checked = (field.getValue()==='checked'); - Common.localStorage.setBool(me.appPrefix + "settings-autoformat-fl-cells", checked); - Common.Utils.InternalSettings.set(me.appPrefix + "settings-autoformat-fl-cells", checked); - me.api.asc_SetAutoCorrectFirstLetterOfCells && me.api.asc_SetAutoCorrectFirstLetterOfCells(checked); + Common.localStorage.setBool(me.appPrefix + "settings-letter-exception-cells", checked); + Common.Utils.InternalSettings.set(me.appPrefix + "settings-letter-exception-cells", checked); + me.api.asc_SetAutoCorrectFirstLetterOfSentences && me.api.asc_SetAutoCorrectFirstLetterOfSentences(checked); }); this.btnsCategory[3].on('click', _.bind(this.onAutocorrectCategoryClick, this, false)); @@ -392,6 +502,7 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', afterRender: function() { this.updateControls(); this.updateRecControls(); + this.updateExceptionsControls(); if (this.storageName) { var value = Common.localStorage.getItem(this.storageName); this.setActiveCategory((value!==null) ? parseInt(value) : 0); @@ -402,10 +513,9 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', var arr = [ this.chReplaceType, this.inputReplace, this.inputBy, this.mathList, this.btnReset, this.btnEdit, this.btnDelete, // 0 tab this.inputRecFind, this.mathRecList, this.btnResetRec, this.btnAddRec, this.btnDeleteRec, // 1 tab - this.chHyperlink // 2 tab ]; - arr = arr.concat(this.chNewRows ? [this.chNewRows] : [this.chQuotes, this.chHyphens, this.chBulleted, this.chNumbered]); - arr = arr.concat(this.chFLSentence ? [this.chFLSentence, this.chFLCells] : []); + arr = arr.concat(this.chNewRows ? [this.chHyperlink, this.chNewRows] : [this.chQuotes, this.chHyphens, this.chHyperlink, this.chDoubleSpaces, this.chBulleted, this.chNumbered]); + arr = arr.concat(this.chkSentenceExceptions ? [this.chkSentenceExceptions, this.chkSentenceCells, this.exceptionsLangCmb, this.exceptionsFindInput, this.exceptionsList, this.btnResetExceptions, this.btnAddExceptions, this.btnDeleteExceptions] : []); return arr; }, @@ -481,30 +591,45 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', onAutocorrectCategoryClick: function(delay) { var me = this; _.delay(function(){ - me.chFLSentence.focus(); + $('input', me.exceptionsFindInput.cmpEl).select().focus(); },delay ? 50 : 0); + + if (me.exceptionsList.store.length < _exciptionsStore.length) { + _.delay(function(){ + me.exceptionsList.setStore(_exciptionsStore); + me.exceptionsList.onResetItems(); + },delay ? 100 : 10); + } }, onDelete: function() { var rec = this.mathList.getSelectedRec(); + var path = ''; + var val; if (rec) { if (rec.get('defaultValue')) { - var path = this.appPrefix + "settings-math-correct-rem"; + path = this.appPrefix + "settings-math-correct-rem"; var disabled = !rec.get('defaultDisabled'); rec.set('defaultDisabled', disabled); if (disabled) this.arrRem.push(rec.get('replaced')); else this.arrRem.splice(this.arrRem.indexOf(rec.get('replaced')), 1); - var val = JSON.stringify(this.arrRem); + val = JSON.stringify(this.arrRem); Common.Utils.InternalSettings.set(path, val); Common.localStorage.setItem(path, val); this.btnDelete.setCaption(disabled ? this.textRestore : this.textDelete); disabled ? this.api.asc_deleteFromAutoCorrectMathSymbols(rec.get('replaced')) : this.api.asc_AddOrEditFromAutoCorrectMathSymbols(rec.get('replaced'), rec.get('defaultValue')); } else { _mathStore.remove(rec); + + this.arrAdd.splice(this.arrAdd.indexOf(rec.get('replaced')), 1); + path = this.appPrefix + "settings-math-correct-add"; + val = JSON.stringify(this.arrAdd); + Common.Utils.InternalSettings.set(path, val); + Common.localStorage.setItem(path, val); this.mathList.scroller && this.mathList.scroller.update({}); - this.api.asc_deleteFromAutoCorrectMathSymbols(rec.get('replaced')); + this.api.asc_deleteFromAutoCorrectMathSymbols(rec.get('replaced')); } this.updateControls(); } @@ -746,22 +871,30 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', onDeleteRec: function() { var rec = this.mathRecList.getSelectedRec(); + var path; + var val; if (rec) { if (rec.get('defaultValue')) { - var path = this.appPrefix + "settings-rec-functions-rem"; + path = this.appPrefix + "settings-rec-functions-rem"; var disabled = !rec.get('defaultDisabled'); rec.set('defaultDisabled', disabled); if (disabled) this.arrRemRec.push(rec.get('value')); else this.arrRemRec.splice(this.arrRemRec.indexOf(rec.get('value')), 1); - var val = JSON.stringify(this.arrRemRec); + val = JSON.stringify(this.arrRemRec); Common.Utils.InternalSettings.set(path, val); Common.localStorage.setItem(path, val); this.btnDeleteRec.setCaption(disabled ? this.textRestore : this.textDelete); disabled ? this.api.asc_deleteFromAutoCorrectMathFunctions(rec.get('value')) : this.api.asc_AddFromAutoCorrectMathFunctions(rec.get('value')); } else { _functionsStore.remove(rec); + + this.arrAddRec.splice(this.arrAddRec.indexOf(rec.get('value')), 1); + path = this.appPrefix + "settings-rec-functions-add"; + val = JSON.stringify(this.arrAddRec); + Common.Utils.InternalSettings.set(path, val); + Common.localStorage.setItem(path, val); this.mathRecList.scroller && this.mathRecList.scroller.update({}); this.api.asc_deleteFromAutoCorrectMathFunctions(rec.get('value')); } @@ -822,6 +955,204 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', this.btnAddRec.setDisabled(!!rec || !value); }, + onInitExceptionsList: function(overrideNotEmptyStore) { + if (_exciptionsStore.length>0 && !overrideNotEmptyStore) return; + + _exciptionsStore.comparator = function(item1, item2) { + var n1 = item1.get('value').toLowerCase(), + n2 = item2.get('value').toLowerCase(); + if (n1==n2) return 0; + return (n1-1 + }); + }); + + var dataAdd = []; + _.each(arrAdd, function(item, index){ + if (_.findIndex(data, {value: item})<0) { + dataAdd.push({ + value: item, + defaultValue: false, + defaultDisabled: false + }); + } + }); + _exciptionsStore.reset(data.concat(dataAdd)); + this.updateExceptionsControls(); + }, + + onResetExceptionsToDefault: function() { + var apiFlManager = this.api.asc_GetAutoCorrectSettings().get_FirstLetterExceptionManager(); + var activeLang = this.exceptionsLangCmb.getValue(); + + Common.UI.warning({ + maxwidth: 500, + msg: this.textWarnResetFL, + buttons: ['yes', 'no'], + primary: 'yes', + callback: _.bind(function(btn, dontshow){ + if (btn == 'yes') { + apiFlManager.put_Exceptions(apiFlManager.get_DefaultExceptions(activeLang), activeLang); + this.onResetExceptionsList(); + } + }, this) + }); + }, + + onResetExceptionsList: function() { + var path = this.appPrefix + "settings-letter-exception"; + var activeLang = this.exceptionsLangCmb.getValue(); + var val = JSON.stringify([]); + Common.Utils.InternalSettings.set(path + "-add-" + activeLang, val); + Common.localStorage.setItem(path + "-add-" + activeLang, val); + Common.Utils.InternalSettings.set(path + "-rem-" + activeLang, val); + Common.localStorage.setItem(path + "-rem-" + activeLang, val); + + this.arrAddExceptions[activeLang] = []; + this.arrRemExceptions[activeLang] = []; + + _exciptionsStore.remove(_exciptionsStore.where({defaultValue: false})); + _exciptionsStore.each(function(item, index){ + item.set('defaultDisabled', false); + }); + this.exceptionsList.deselectAll(); + if (this.exceptionsList.scroller) { + this.exceptionsList.scroller.update(); + this.exceptionsList.scroller.scrollTop(0); + } + this.updateExceptionsControls(); + }, + + onDeleteException: function() { + var rec = this.exceptionsList.getSelectedRec(); + var apiFlManager = this.api.asc_GetAutoCorrectSettings().get_FirstLetterExceptionManager(); + var activeLang = this.exceptionsLangCmb.getValue(); + if (rec) { + var val; + var path = ''; + if (rec.get('defaultValue')) { + var disabled = !rec.get('defaultDisabled'); + path = this.appPrefix + "settings-letter-exception-rem-" + activeLang; + rec.set('defaultDisabled', disabled); + if (disabled) + this.arrRemExceptions[activeLang].push(rec.get('value')); + else + this.arrRemExceptions[activeLang].splice(this.arrRemExceptions[activeLang].indexOf(rec.get('value')), 1); + + val = JSON.stringify(this.arrRemExceptions[activeLang]); + Common.Utils.InternalSettings.set(path, val); + Common.localStorage.setItem(path, val); + this.btnDeleteExceptions.setCaption(disabled ? this.textRestore : this.textDelete); + disabled ? apiFlManager.remove_Exception(rec.get('value'), activeLang) : apiFlManager.add_Exception(rec.get('value'), activeLang); + } else { + _exciptionsStore.remove(rec); + + this.arrAddExceptions[activeLang].splice(this.arrAddExceptions[activeLang].indexOf(rec.get('value')), 1); + path = this.appPrefix + "settings-letter-exception-add-" + activeLang; + val = JSON.stringify(this.arrAddExceptions[activeLang]); + Common.Utils.InternalSettings.set(path, val); + Common.localStorage.setItem(path, val); + this.exceptionsList.scroller && this.exceptionsList.scroller.update({}); + apiFlManager.remove_Exception(rec.get('value'), activeLang); + } + this.updateExceptionsControls(); + } + }, + + onAddException: function() { + var rec = this.exceptionsList.getSelectedRec(), + activeLang = this.exceptionsLangCmb.getValue(), + me = this, + value = this.exceptionsFindInput.getValue().trim(), + applySettings = function(record) { + var path = me.appPrefix + "settings-letter-exception-add-" + activeLang; + var val = JSON.stringify(me.arrAddExceptions[activeLang]); + Common.Utils.InternalSettings.set(path, val); + Common.localStorage.setItem(path, val); + me.api.asc_GetAutoCorrectSettings().get_FirstLetterExceptionManager().add_Exception(record.get('value') ,activeLang); + me.exceptionsList.selectRecord(record); + me.exceptionsList.scrollToRecord(record); + }; + if (!rec) { + rec = _exciptionsStore.findWhere({value: value}) + } + if (!rec) { + if(value[value.length-1] === '.') + value = value.slice(0, -1); + if (/^[^\%/\\&\?\,\.\s\d\'\;:!-+!@#\$\^*)(]{1,20}$/.test(value)) { + rec = _exciptionsStore.add({ + value: value, + defaultValue: false, + defaultDisabled: false + }); + this.arrAddExceptions[activeLang].push(rec.get('value')); + applySettings(rec); + } else + Common.UI.warning({ + maxwidth: 500, + msg: this.textWarnAddFL + }); + } else { + me.exceptionsList.selectRecord(rec); + me.exceptionsList.scrollToRecord(rec); + } + }, + + onSelectExceptionItem: function(lisvView, itemView, record) { + if (record) { + this.exceptionsFindInput.setValue(record.get('value')); + } + this.updateExceptionsControls(record); + }, + + onChangeInputException: function (input, value) { + var _selectedItem; + value = value.trim(); + if (value.length) { + if(value[value.length-1] === '.') + value = value.slice(0, -1); + + var store = this.exceptionsList.store; + _selectedItem = store.find(function(item) { + if ( item.get('value').indexOf(value) == 0) { + return true; + } + }); + if (_selectedItem) { + this.exceptionsList.scrollToRecord(_selectedItem, true); + if (_selectedItem.get('value') == value) + this.exceptionsList.selectRecord(_selectedItem, true); + else + _selectedItem = null; + } + } + (!_selectedItem) && this.exceptionsList.deselectAll(); + this.updateExceptionsControls(_selectedItem); + }, + + updateExceptionsControls: function(rec) { + if (!this.exceptionsList) return; + + rec = rec || this.exceptionsList.getSelectedRec(); + var value = this.exceptionsFindInput.getValue(); + + this.btnDeleteExceptions.setCaption(rec && rec.get('defaultDisabled') ? this.textRestore : this.textDelete); + this.btnDeleteExceptions.setDisabled(!rec); + this.btnAddExceptions.setDisabled(!!rec || !value); + }, + textTitle: 'AutoCorrect', textMathCorrect: 'Math AutoCorrect', textReplace: 'Replace', @@ -850,8 +1181,12 @@ define([ 'text!common/main/lib/template/AutoCorrectDialog.template', textNewRowCol: 'Include new rows and columns in table', textAutoCorrect: 'AutoCorrect', textFLSentence: 'Capitalize first letter of sentences', + textWarnResetFL: 'Any exceptions you added will be removed and the removed ones will be restored. Do you want to continue?', + textWarnAddFL: 'Exceptions must contain only the letters, uppercase or lowercase.', + textForLangFL: 'Exceptions for the language:', textHyperlink: 'Internet and network paths with hyperlinks', textFLCells: 'Capitalize first letter of table cells', + textFLDont: 'Don`t capitalize after', textDoubleSpaces: 'Add period with double-space' }, Common.Views.AutoCorrectDialog || {})) diff --git a/apps/common/main/lib/view/Chat.js b/apps/common/main/lib/view/Chat.js index 583c90461..4a9f78722 100644 --- a/apps/common/main/lib/view/Chat.js +++ b/apps/common/main/lib/view/Chat.js @@ -336,9 +336,24 @@ define([ // text box setup autosize input text this.setupAutoSizingTextBox(); - this.txtMessage.bind('input propertychange', _.bind(this.updateHeightTextBox, this)); + this.disableTextBoxButton($(this.txtMessage)); + this.txtMessage.bind('input propertychange', _.bind(this.onTextareaInput, this)); }, + onTextareaInput: function(event) { + this.updateHeightTextBox(event); + this.disableTextBoxButton($(event.target)); + }, + disableTextBoxButton: function(textboxEl) { + var button = $(textboxEl.siblings('#chat-msg-btn-add')[0]); + if(textboxEl.val().trim().length > 0) { + button.removeAttr('disabled'); + button.removeClass('disabled'); + } else { + button.attr('disabled', true); + button.addClass('disabled'); + } + }, updateLayout: function (applyUsersAutoSizig) { var me = this; var height = this.panelBox.height(); diff --git a/apps/common/main/lib/view/Comments.js b/apps/common/main/lib/view/Comments.js index 21732dd11..2cee62927 100644 --- a/apps/common/main/lib/view/Comments.js +++ b/apps/common/main/lib/view/Comments.js @@ -98,6 +98,17 @@ define([ var text = $(this.el).find('textarea'); return (text && text.length) ? text.val().trim() : ''; }, + disableTextBoxButton: function(textboxEl) { + var button = $(textboxEl.siblings('#id-comments-change')[0]); + + if(textboxEl.val().trim().length > 0) { + button.removeAttr('disabled'); + button.removeClass('disabled'); + } else { + button.attr('disabled', true); + button.addClass('disabled'); + } + }, autoHeightTextBox: function () { var view = this, textBox = $(this.el).find('textarea'), @@ -127,13 +138,19 @@ define([ view.autoScrollToEditButtons(); } + function onTextareaInput(event) { + updateTextBoxHeight(); + view.disableTextBoxButton($(event.target)); + } + if (textBox && textBox.length) { domTextBox = textBox.get(0); + view.disableTextBoxButton(textBox); if (domTextBox) { lineHeight = parseInt(textBox.css('lineHeight'), 10) * 0.25; updateTextBoxHeight(); - textBox.bind('input propertychange', updateTextBoxHeight) + textBox.bind('input propertychange', onTextareaInput) } } @@ -171,7 +188,7 @@ define([ addCommentHeight: 45, newCommentHeight: 110, - textBoxAutoSizeLocked: undefined, // disable autosize textbox + textBoxAutoSizeLocked: undefined, // disable autoHeightTextBoxsize textbox viewmode: false, _commentsViewOnItemClick: function (picker, item, record, e) { @@ -694,7 +711,17 @@ define([ this.layout.setResizeValue(0, container.height() - this.addCommentHeight); } }, + disableTextBoxButton: function(textboxEl) { + var button = $(textboxEl.parent().siblings('.add')[0]); + if(textboxEl.val().trim().length > 0) { + button.removeAttr('disabled'); + button.removeClass('disabled'); + } else { + button.attr('disabled', true); + button.addClass('disabled'); + } + }, autoHeightTextBox: function () { var me = this, domTextBox = null, lineHeight = 0, minHeight = 44; var textBox = $('#comment-msg-new', this.el); @@ -736,9 +763,15 @@ define([ Math.min(height - contentHeight - textBoxMinHeightIndent, height - me.newCommentHeight))); } + function onTextareaInput(event) { + updateTextBoxHeight(); + me.disableTextBoxButton($(event.target)); + } + + me.disableTextBoxButton(textBox); lineHeight = parseInt(textBox.css('lineHeight'), 10) * 0.25; updateTextBoxHeight(); - textBox.bind('input propertychange', updateTextBoxHeight); + textBox.bind('input propertychange', onTextareaInput); this.textBox = textBox; }, @@ -806,11 +839,19 @@ define([ return str_res; }, - pickEMail: function (commentId, message) { + pickEMail: function (commentId, message, oldMessage) { + var old_arr = []; + if (oldMessage) { + old_arr = Common.Utils.String.htmlEncode(oldMessage).match(/\B[@+][A-Z0-9._%+-]+@[A-Z0-9._-]+\.[A-Z]+\b/gi); + old_arr = _.map(old_arr, function(str){ + return str.slice(1, str.length); + }); + } var arr = Common.Utils.String.htmlEncode(message).match(/\B[@+][A-Z0-9._%+-]+@[A-Z0-9._-]+\.[A-Z]+\b/gi); arr = _.map(arr, function(str){ return str.slice(1, str.length); }); + arr = _.difference(arr, old_arr); (arr.length>0) && Common.Gateway.requestSendNotify({ emails: arr, actionId: commentId, // comment id diff --git a/apps/common/main/lib/view/ExternalDiagramEditor.js b/apps/common/main/lib/view/ExternalDiagramEditor.js index e977ec4d0..7fcc78670 100644 --- a/apps/common/main/lib/view/ExternalDiagramEditor.js +++ b/apps/common/main/lib/view/ExternalDiagramEditor.js @@ -46,6 +46,7 @@ define([ initialize : function(options) { var _options = {}; _.extend(_options, { + id: 'id-external-diagram-editor', title: this.textTitle, storageName: 'diagram-editor', sdkplaceholder: 'id-diagram-editor-placeholder', diff --git a/apps/common/main/lib/view/ExternalMergeEditor.js b/apps/common/main/lib/view/ExternalMergeEditor.js index 0b91a6e3a..f8f696f10 100644 --- a/apps/common/main/lib/view/ExternalMergeEditor.js +++ b/apps/common/main/lib/view/ExternalMergeEditor.js @@ -46,6 +46,7 @@ define([ initialize : function(options) { var _options = {}; _.extend(_options, { + id: 'id-external-merge-editor', title: this.textTitle, storageName: 'merge-editor', sdkplaceholder: 'id-merge-editor-placeholder', diff --git a/apps/common/main/lib/view/ExternalOleEditor.js b/apps/common/main/lib/view/ExternalOleEditor.js index 415705b13..f3338b492 100644 --- a/apps/common/main/lib/view/ExternalOleEditor.js +++ b/apps/common/main/lib/view/ExternalOleEditor.js @@ -46,6 +46,7 @@ define([ initialize : function(options) { var _options = {}; _.extend(_options, { + id: 'id-external-ole-editor', title: this.textTitle, storageName: 'ole-editor', sdkplaceholder: 'id-ole-editor-placeholder', diff --git a/apps/common/main/lib/view/Header.js b/apps/common/main/lib/view/Header.js index f433be058..31ff1e2ac 100644 --- a/apps/common/main/lib/view/Header.js +++ b/apps/common/main/lib/view/Header.js @@ -81,6 +81,7 @@ define([ '
' + '
' + '
' + + '
' + '
' + '
' + '
' + @@ -123,11 +124,13 @@ define([ '' + ''; - var templateTitleBox = '
' + + var templateTitleBox = '
' + '
' + '
' + + '
' + '
' + '
' + + '
' + '
' + '
' + '
' + @@ -149,7 +152,7 @@ define([ function onResetUsers(collection, opts) { var usercount = collection.getVisibleEditingCount(); if ( $userList ) { - if (usercount > 1 && appConfig && (appConfig.isEdit || appConfig.isRestrictedEdit)) { + if (appConfig && (usercount > 1 && (appConfig.isEdit || appConfig.isRestrictedEdit) || usercount >0 && appConfig.canLiveView)) { $userList.html(templateUserList({ users: collection.chain().filter(function(item){return item.get('online') && !item.get('view') && !item.get('hidden')}).groupBy(function(item) {return item.get('idOriginal');}).value(), usertpl: _.template(templateUserItem), @@ -179,8 +182,7 @@ define([ function applyUsers(count, originalCount) { if (!$btnUsers) return; - - var has_edit_users = count > 1 && appConfig && (appConfig.isEdit || appConfig.isRestrictedEdit); // has other user(s) who edit document + var has_edit_users = appConfig && (count > 1 && (appConfig.isEdit || appConfig.isRestrictedEdit) || count > 0 && appConfig.canLiveView); // has other user(s) who edit document if ( has_edit_users ) { $panelUsers['show'](); $btnUsers.find('.caption').html(originalCount); @@ -313,7 +315,7 @@ define([ html: true }); $btnUsers.on('click', onUsersClick.bind(me)); - $panelUsers[(editingUsers > 1 && appConfig && (appConfig.isEdit || appConfig.isRestrictedEdit)) ? 'show' : 'hide'](); + $panelUsers[(appConfig && (editingUsers > 1 && (appConfig.isEdit || appConfig.isRestrictedEdit) || editingUsers > 0 && appConfig.canLiveView)) ? 'show' : 'hide'](); updateDocNamePosition(appConfig); } @@ -332,6 +334,13 @@ define([ }); } + if ( me.btnPrintQuick ) { + me.btnPrintQuick.updateHint(me.tipPrintQuick); + me.btnPrintQuick.on('click', function (e) { + me.fireEvent('print-quick', me); + }); + } + if ( me.btnSave ) { me.btnSave.updateHint(me.tipSave + Common.Utils.String.platformKey('Ctrl+S')); me.btnSave.on('click', function (e) { @@ -572,6 +581,9 @@ define([ if ( config.canPrint ) this.btnPrint = createTitleButton('toolbar__icon icon--inverse btn-print', $html.findById('#slot-hbtn-print'), undefined, 'bottom', 'big', 'P'); + if ( config.canQuickPrint ) + this.btnPrintQuick = createTitleButton('toolbar__icon icon--inverse btn-quick-print', $html.findById('#slot-hbtn-print-quick'), undefined, 'bottom', 'big', 'Q'); + if ( config.canEdit && config.canRequestEditRights ) this.btnEdit = createTitleButton('toolbar__icon icon--inverse btn-edit', $html.findById('#slot-hbtn-edit'), undefined, 'bottom', 'big'); } @@ -646,6 +658,8 @@ define([ if ( config.canPrint && config.isEdit ) { me.btnPrint = createTitleButton('toolbar__icon icon--inverse btn-print', $html.findById('#slot-btn-dt-print'), true, undefined, undefined, 'P'); } + if ( config.canQuickPrint && config.isEdit ) + me.btnPrintQuick = createTitleButton('toolbar__icon icon--inverse btn-quick-print', $html.findById('#slot-btn-dt-print-quick'), true, undefined, undefined, 'Q'); me.btnSave = createTitleButton('toolbar__icon icon--inverse btn-save', $html.findById('#slot-btn-dt-save'), true, undefined, undefined, 'S'); me.btnUndo = createTitleButton('toolbar__icon icon--inverse btn-undo', $html.findById('#slot-btn-dt-undo'), true, undefined, undefined, 'Z'); @@ -695,6 +709,7 @@ define([ if (idx>0) this.fileExtention = this.documentCaption.substring(idx); this.isModified && (value += '*'); + this.readOnly && (value += ' (' + this.textReadOnly + ')'); if ( $labelDocName ) { this.setDocTitle( value ); } @@ -887,6 +902,11 @@ define([ return initials; }, + setDocumentReadOnly: function (readonly) { + this.readOnly = readonly; + this.setDocumentCaption(this.documentCaption); + }, + textBack: 'Go to Documents', txtRename: 'Rename', txtAccessRights: 'Change access rights', @@ -910,7 +930,9 @@ define([ textAddFavorite: 'Mark as favorite', textHideNotes: 'Hide Notes', tipSearch: 'Search', - textShare: 'Share' + textShare: 'Share', + tipPrintQuick: 'Quick print', + textReadOnly: 'Read only' } }(), Common.Views.Header || {})) }); diff --git a/apps/common/main/lib/view/OpenDialog.js b/apps/common/main/lib/view/OpenDialog.js index ad039555a..1e2f7fa3f 100644 --- a/apps/common/main/lib/view/OpenDialog.js +++ b/apps/common/main/lib/view/OpenDialog.js @@ -207,6 +207,7 @@ define([ type: 'password', showCls: (this.options.iconType==='svg' ? 'svg-icon' : 'toolbar__icon') + ' btn-sheet-view', hideCls: (this.options.iconType==='svg' ? 'svg-icon' : 'toolbar__icon') + ' hide-password', + maxLength: this.options.maxPasswordLength, validateOnBlur: false, showPwdOnClick: true, validation : function(value) { diff --git a/apps/common/main/lib/view/OptionsDialog.js b/apps/common/main/lib/view/OptionsDialog.js index 4eb89ba3f..ea67e32e9 100644 --- a/apps/common/main/lib/view/OptionsDialog.js +++ b/apps/common/main/lib/view/OptionsDialog.js @@ -101,7 +101,10 @@ define([ this.checkedIndex = i; } } - (this.checkedIndex>=0) && this.radio[this.checkedIndex].setValue(true); + if (this.checkedIndex>=0) { + this.radio[this.checkedIndex].setValue(true); + this.currentCell = this.radio[this.checkedIndex].options.value; + } } $window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this)); }, diff --git a/apps/common/main/lib/view/PluginDlg.js b/apps/common/main/lib/view/PluginDlg.js index 3fc614de0..0c17537c9 100644 --- a/apps/common/main/lib/view/PluginDlg.js +++ b/apps/common/main/lib/view/PluginDlg.js @@ -54,7 +54,8 @@ define([ var _options = {}; _.extend(_options, { header: true, - enableKeyEvents: false + enableKeyEvents: false, + automove: false }, options); var header_footer = (_options.buttons && _.size(_options.buttons)>0) ? 85 : 34; @@ -154,6 +155,8 @@ define([ this.$window.css('left',(maxWidth - width - borders_width) / 2); this.$window.css('top',(maxHeight - height - this._headerFooterHeight) / 2); + + this._restoreHeight = this._restoreWidth = undefined; }, onWindowResize: function() { @@ -162,26 +165,38 @@ define([ win_width = this.getWidth(), win_height = this.getHeight(), bordersOffset = (this.resizable) ? 0 : this.bordersOffset; - if (win_height0 && win_height < this._restoreHeight) { + var height = Math.max(Math.min(this._restoreHeight, main_height-bordersOffset*2), this.initConfig.minheight); + this.setHeight(height); + this.boxEl.css('height', height - this._headerFooterHeight); + } + var top = this.getTop(); if (topmain_height-bordersOffset) this.$window.css('top', main_height-bordersOffset - win_height); + } else { + if (this._restoreHeight===undefined) { + this._restoreHeight = win_height; + } + this.setHeight(Math.max(main_height-bordersOffset*2, this.initConfig.minheight)); + this.boxEl.css('height', Math.max(main_height-bordersOffset*2, this.initConfig.minheight) - this._headerFooterHeight); + this.$window.css('top', bordersOffset); + } + if (win_width0 && win_width < this._restoreWidth) { + this.setWidth(Math.max(Math.min(this._restoreWidth, main_width-bordersOffset*2), this.initConfig.minwidth)); + } + var left = this.getLeft(); if (leftmain_width-bordersOffset) this.$window.css('left', main_width-bordersOffset-win_width); } else { - if (win_height>main_height-bordersOffset*2) { - this.setHeight(Math.max(main_height-bordersOffset*2, this.initConfig.minheight)); - this.boxEl.css('height', Math.max(main_height-bordersOffset*2, this.initConfig.minheight) - this._headerFooterHeight); - this.$window.css('top', bordersOffset); - } - if (win_width>main_width-bordersOffset*2) { - this.setWidth(Math.max(main_width-bordersOffset*2, this.initConfig.minwidth)); - this.$window.css('left', bordersOffset); + if (this._restoreWidth===undefined) { + this._restoreWidth = win_width; } + this.setWidth(Math.max(main_width-bordersOffset*2, this.initConfig.minwidth)); + this.$window.css('left', bordersOffset); } }, diff --git a/apps/common/main/lib/view/Plugins.js b/apps/common/main/lib/view/Plugins.js index 37c97cc1d..fdc530457 100644 --- a/apps/common/main/lib/view/Plugins.js +++ b/apps/common/main/lib/view/Plugins.js @@ -74,14 +74,16 @@ define([ _.extend(this, options); this._locked = false; this._state = { - DisabledControls: false + DisabledControls: false, + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + } }; this.lockedControls = []; Common.UI.BaseView.prototype.initialize.call(this, arguments); - - Common.NotificationCenter.on('app:ready', function (mode) { - Common.Utils.asyncCall(this._onAppReady, this, mode); - }.bind(this)); }, render: function(el) { @@ -153,6 +155,7 @@ define([ if ( !this.storePlugins.isEmpty() ) { var me = this; var _group = $('
'); + var _set = Common.enumLock; this.storePlugins.each(function (model) { if (model.get('visible')) { var modes = model.get('variations'), @@ -167,6 +170,7 @@ define([ split: modes && modes.length > 1, value: guid, hint: model.get('name'), + lock: model.get('isDisplayedInViewer') ? [_set.viewMode, _set.previewReviewMode, _set.viewFormMode, _set.selRangeEdit, _set.editFormula] : [_set.viewMode, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.selRangeEdit, _set.editFormula], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' @@ -179,6 +183,10 @@ define([ me.lockedControls.push(btn); } }); + var docProtection = me._state.docProtection + Common.Utils.lockControls(Common.enumLock.docLockView, docProtection.isReadOnly, {array: me.lockedControls}); + Common.Utils.lockControls(Common.enumLock.docLockForms, docProtection.isFormsOnly, {array: me.lockedControls}); + Common.Utils.lockControls(Common.enumLock.docLockComments, docProtection.isCommentsOnly, {array: me.lockedControls}); parent.html(_group); $('
').prependTo(parent); @@ -204,6 +212,16 @@ define([ } }, + SetDisabled: function(disable, reviewMode, fillFormMode) { + if (reviewMode) { + Common.Utils.lockControls(Common.enumLock.previewReviewMode, disable, {array: this.lockedControls}); + } else if (fillFormMode) { + Common.Utils.lockControls(Common.enumLock.viewFormMode, disable, {array: this.lockedControls}); + } else { + Common.Utils.lockControls(Common.enumLock.viewMode, disable, {array: this.lockedControls}); + } + }, + openInsideMode: function(name, url, frameId) { if (!this.pluginsPanel) return false; @@ -289,9 +307,6 @@ define([ this.loadMask.hide(); }, - _onAppReady: function (mode) { - }, - parseIcons: function(icons) { if (icons.length && typeof icons[0] !== 'string') { var theme = Common.UI.Themes.currentThemeId().toLowerCase(), @@ -389,6 +404,7 @@ define([ }); }); + var _set = Common.enumLock; var btn = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconImg: icon_url, @@ -397,6 +413,7 @@ define([ split: _menu_items.length > 1, value: guid, hint: model.get('name'), + lock: model.get('isDisplayedInViewer') ? [_set.viewMode, _set.previewReviewMode, _set.viewFormMode, _set.selRangeEdit, _set.editFormula] : [_set.viewMode, _set.previewReviewMode, _set.viewFormMode, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.selRangeEdit, _set.editFormula ], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' diff --git a/apps/common/main/lib/view/Protection.js b/apps/common/main/lib/view/Protection.js index 3e160a629..e5e2a0074 100644 --- a/apps/common/main/lib/view/Protection.js +++ b/apps/common/main/lib/view/Protection.js @@ -239,8 +239,7 @@ define([ var me = this; if ( type == 'signature' ) { var button = new Common.UI.Button({ - cls: 'btn-text-default', - style: 'width: 100%;', + cls: 'btn-text-default auto', caption: this.txtInvisibleSignature, disabled: this._state.invisibleSignDisabled, dataHint: '2', @@ -256,8 +255,7 @@ define([ return button; } else if ( type == 'add-password' ) { var button = new Common.UI.Button({ - cls: 'btn-text-default', - style: 'width: 100%;', + cls: 'btn-text-default auto', caption: this.txtAddPwd, disabled: this._state.disabled || this._state.disabledPassword, visible: !this._state.hasPassword, @@ -274,8 +272,7 @@ define([ return button; } else if ( type == 'del-password' ) { var button = new Common.UI.Button({ - cls: 'btn-text-default', - style: 'width: 100%;', + cls: 'btn-text-default auto', caption: this.txtDeletePwd, disabled: this._state.disabled || this._state.disabledPassword, visible: this._state.hasPassword, @@ -292,8 +289,7 @@ define([ return button; } else if ( type == 'change-password' ) { var button = new Common.UI.Button({ - cls: 'btn-text-default', - style: 'width: 100%;', + cls: 'btn-text-default auto', caption: this.txtChangePwd, disabled: this._state.disabled || this._state.disabledPassword, visible: this._state.hasPassword, diff --git a/apps/common/main/lib/view/ReviewChanges.js b/apps/common/main/lib/view/ReviewChanges.js index b1b6eba75..ab8445a84 100644 --- a/apps/common/main/lib/view/ReviewChanges.js +++ b/apps/common/main/lib/view/ReviewChanges.js @@ -248,6 +248,10 @@ define([ me.fireEvent('comment:resolveComments', [item.value]); }); } + Common.NotificationCenter.on('protect:doclock', function (e) { + me.fireEvent('protect:update'); + }); + me.fireEvent('protect:update'); } return { @@ -269,7 +273,7 @@ define([ caption: this.txtAccept, split: !this.appConfig.canUseReviewPermissions, iconCls: 'toolbar__icon btn-review-save', - lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect], + lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' @@ -281,7 +285,7 @@ define([ caption: this.txtReject, split: !this.appConfig.canUseReviewPermissions, iconCls: 'toolbar__icon btn-review-deny', - lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect], + lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' @@ -294,7 +298,7 @@ define([ caption: this.txtCompare, split: true, iconCls: 'toolbar__icon btn-compare', - lock: [_set.hasCoeditingUsers, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect], + lock: [_set.hasCoeditingUsers, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' @@ -316,7 +320,7 @@ define([ this.btnTurnOn = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-ic-review', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview], caption: this.txtTurnon, split: !this.appConfig.isReviewOnly, enableToggle: true, @@ -331,7 +335,7 @@ define([ this.btnPrev = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-review-prev', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.txtPrev, dataHint: '1', dataHintDirection: 'bottom', @@ -342,7 +346,7 @@ define([ this.btnNext = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-review-next', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.txtNext, dataHint: '1', dataHintDirection: 'bottom', @@ -358,7 +362,7 @@ define([ this.btnReviewView = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-ic-reviewview', - lock: [_set.viewFormMode, _set.lostConnect], + lock: [_set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.txtView, menu: new Common.UI.Menu({ cls: 'ppm-toolbar', @@ -426,7 +430,7 @@ define([ this.btnCoAuthMode = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-ic-coedit', - lock: [_set.viewFormMode, _set.lostConnect], + lock: [_set.viewFormMode, _set.lostConnect, _set.docLockView], caption: this.txtCoAuthMode, menu: true, dataHint: '1', @@ -467,12 +471,13 @@ define([ } if ( this.appConfig.canCoAuthoring && this.appConfig.canComments ) { + this.canComments = true; // fix for loading protected document this.btnCommentRemove = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', caption: this.txtCommentRemove, split: true, iconCls: 'toolbar__icon btn-rem-comment', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect, _set.docLockView, _set.docLockForms], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' @@ -483,15 +488,13 @@ define([ caption: this.txtCommentResolve, split: true, iconCls: 'toolbar__icon btn-resolve-all', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect, _set.docLockView, _set.docLockForms], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' }); this.lockedControls.push(this.btnCommentResolve); } - - Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); }, render: function (el) { @@ -689,7 +692,7 @@ define([ } var separator_sharing = !(me.btnSharing || me.btnCoAuthMode) ? me.$el.find('.separator.sharing') : '.separator.sharing', - separator_comments = !(config.canComments && config.canCoAuthoring) ? me.$el.find('.separator.comments') : '.separator.comments', + separator_comments = !(me.btnCommentRemove || me.btnCommentResolve) ? me.$el.find('.separator.comments') : '.separator.comments', separator_review = !(config.canReview || config.canViewReview) ? me.$el.find('.separator.review') : '.separator.review', separator_compare = !(config.canReview && config.canFeatureComparison) ? me.$el.find('.separator.compare') : '.separator.compare', separator_chat = !me.btnChat ? me.$el.find('.separator.chat') : '.separator.chat', @@ -723,8 +726,7 @@ define([ if (!me.btnHistory && separator_last) me.$el.find(separator_last).hide(); - Common.NotificationCenter.trigger('tab:visible', 'review', (config.isEdit || config.canViewReview || config.canCoAuthoring && config.canComments) && Common.UI.LayoutManager.isElementVisible('toolbar-collaboration')); - + Common.NotificationCenter.trigger('tab:visible', 'review', (config.isEdit || config.canViewReview || me.canComments) && Common.UI.LayoutManager.isElementVisible('toolbar-collaboration')); setEvents.call(me); }); }, @@ -763,7 +765,7 @@ define([ var button = new Common.UI.Button({ cls : 'btn-toolbar', iconCls : 'toolbar__icon btn-ic-review', - lock: [Common.enumLock.viewMode, Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.lostConnect], + lock: [Common.enumLock.viewMode, Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.lostConnect, Common.enumLock.docLockView, Common.enumLock.docLockForms, Common.enumLock.docLockComments, Common.enumLock.docLockReview], hintAnchor : 'top', hint : this.tipReview, split : !this.appConfig.isReviewOnly, @@ -810,7 +812,7 @@ define([ button = new Common.UI.Button({ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-ic-docspell', - lock: [Common.enumLock.viewMode, Common.enumLock.viewFormMode, Common.enumLock.previewReviewMode], + lock: [Common.enumLock.viewMode, Common.enumLock.viewFormMode, Common.enumLock.previewReviewMode, Common.enumLock.docLockView, Common.enumLock.docLockForms, Common.enumLock.docLockComments], hintAnchor : 'top', hint: this.tipSetSpelling, enableToggle: true, @@ -826,7 +828,7 @@ define([ button = new Common.UI.Button({ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-ic-doclang', - lock: [Common.enumLock.viewMode, Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.noSpellcheckLangs, Common.enumLock.lostConnect], + lock: [Common.enumLock.viewMode, Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.noSpellcheckLangs, Common.enumLock.lostConnect, Common.enumLock.docLockView, Common.enumLock.docLockForms, Common.enumLock.docLockComments], hintAnchor : 'top', hint: this.tipSetDocLang, dataHint: '0', @@ -1007,6 +1009,7 @@ define([ this.options.tpl = _.template(this.template)(this.options); this.popoverChanges = this.options.popoverChanges; this.mode = this.options.mode; + this.docProtection = this.options.docProtection; var filter = Common.localStorage.getKeysFilter(); this.appPrefix = (filter && filter.length) ? filter.split(',')[0] : ''; @@ -1017,6 +1020,7 @@ define([ render: function() { Common.UI.Window.prototype.render.call(this); + var _set = Common.enumLock; this.btnPrev = new Common.UI.Button({ cls: 'dlg-btn iconic', iconCls: 'img-commonctrl prev', @@ -1037,7 +1041,8 @@ define([ cls : 'btn-toolbar', caption : this.txtAccept, split : true, - disabled : this.mode.isReviewOnly || !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"), + disabled : this.mode.isReviewOnly || this.docProtection.isReviewOnly || !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"), + lock : [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview], menu : this.mode.canUseReviewPermissions ? false : new Common.UI.Menu({ items: [ this.mnuAcceptCurrent = new Common.UI.MenuItem({ @@ -1057,7 +1062,7 @@ define([ cls : 'btn-toolbar', caption : this.txtReject, split : true, - disabled : this.mode.isReviewOnly || !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"), + lock : [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview], menu : this.mode.canUseReviewPermissions ? false : new Common.UI.Menu({ items: [ this.mnuRejectCurrent = new Common.UI.MenuItem({ @@ -1072,6 +1077,13 @@ define([ }) }); this.btnReject.render(this.$window.find('#id-review-button-reject')); + var arr = [this.btnAccept, this.btnReject]; + Common.Utils.lockControls(Common.enumLock.isReviewOnly, this.mode.isReviewOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockView, this.docProtection.isReadOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockForms, this.docProtection.isFormsOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockReview, this.docProtection.isReviewOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockComments, this.docProtection.isCommentsOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.reviewChangelock, !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"), {array: arr}); var me = this; this.btnPrev.on('click', function (e) { diff --git a/apps/common/main/lib/view/ReviewPopover.js b/apps/common/main/lib/view/ReviewPopover.js index 0c8c31b42..3b25e6d8f 100644 --- a/apps/common/main/lib/view/ReviewPopover.js +++ b/apps/common/main/lib/view/ReviewPopover.js @@ -85,6 +85,7 @@ define([ height: 120, header: false, modal: false, + automove: false, alias: 'Common.Views.ReviewPopover' }, options); @@ -173,6 +174,17 @@ define([ var text = $(this.el).find('textarea'); return (text && text.length) ? text.val().trim() : ''; }, + disableTextBoxButton: function(textboxEl) { + var button = $(textboxEl.siblings('#id-comments-change-popover')[0]); + + if(textboxEl.val().trim().length > 0) { + button.removeAttr('disabled'); + button.removeClass('disabled'); + } else { + button.attr('disabled', true); + button.addClass('disabled'); + } + }, autoHeightTextBox: function () { var view = this, textBox = this.$el.find('textarea'), @@ -183,6 +195,7 @@ define([ oldHeight = 0, newHeight = 0; + function updateTextBoxHeight() { scrollPos = parentView.scroller.getScrollTop(); if (domTextBox.scrollHeight > domTextBox.clientHeight) { @@ -211,13 +224,20 @@ define([ parentView.autoScrollToEditButtons(); } + function onTextareaInput(event) { + updateTextBoxHeight(); + view.disableTextBoxButton($(event.target)); + } + + if (textBox && textBox.length && parentView.scroller) { domTextBox = textBox.get(0); + view.disableTextBoxButton(textBox); if (domTextBox) { lineHeight = parseInt(textBox.css('lineHeight'), 10) * 0.25; updateTextBoxHeight(); - textBox.bind('input propertychange', updateTextBoxHeight) + textBox.bind('input propertychange', onTextareaInput) } } @@ -240,13 +260,14 @@ define([ el: $('#id-comments-popover'), itemTemplate: _.template(replaceWords(commentsTemplate, { textAddReply: me.textAddReply, + textMentionReply: me.canRequestSendNotify ? (me.mentionShare ? me.textMention : me.textMentionNotify) : me.textAddReply, textAdd: me.textAdd, textCancel: me.textCancel, textEdit: me.textEdit, textReply: me.textReply, textClose: me.textClose, maxCommLength: Asc.c_oAscMaxCellOrCommentLength, - textMention: me.canRequestSendNotify ? (me.mentionShare ? me.textMention : me.textMentionNotify) : '' + textMentionComment: me.canRequestSendNotify ? (me.mentionShare ? me.textMention : me.textMentionNotify) : me.textEnterComment }) ) }); @@ -321,7 +342,9 @@ define([ if (record.get('hint')) { me.fireEvent('comment:disableHint', [record]); - return; + + if(!record.get('fullInfoInHint')) + return; } if (btn.hasClass('btn-edit')) { @@ -490,6 +513,7 @@ define([ this.emailMenu = new Common.UI.Menu({ maxHeight: 200, cyclic: false, + cls: 'font-size-medium', items: [] }).on('render:after', function(mnu) { this.scroller = new Common.UI.Scroller({ @@ -516,8 +540,10 @@ define([ }, 'animate:before': function () { var text = me.$window.find('textarea'); - if (text && text.length) + if (text && text.length){ text.focus(); + me.commentsView.disableTextBoxButton(text); + } } }); } @@ -1229,7 +1255,7 @@ define([ return (item.email && 0 === item.email.toLowerCase().indexOf(str) || item.name && 0 === item.name.toLowerCase().indexOf(str)) }); } - var tpl = _.template('' + + var tpl = _.template('' + '
<%= Common.Utils.String.htmlEncode(caption) %>
' + '
<%= Common.Utils.String.htmlEncode(options.value) %>
' + '
'), @@ -1292,6 +1318,7 @@ define([ textFollowMove : 'Follow Move', textMention : '+mention will provide access to the document and send an email', textMentionNotify : '+mention will notify the user via email', + textEnterComment : 'Enter your comment here', textViewResolved : 'You have not permission for reopen comment', txtAccept: 'Accept', txtReject: 'Reject', diff --git a/apps/common/main/lib/view/SearchBar.js b/apps/common/main/lib/view/SearchBar.js index 9437be55d..5f5346bd4 100644 --- a/apps/common/main/lib/view/SearchBar.js +++ b/apps/common/main/lib/view/SearchBar.js @@ -53,7 +53,8 @@ define([ cls: 'search-bar', alias: 'SearchBar', showOpenPanel: true, - toolclose: 'hide' + toolclose: 'hide', + automove: false }, initialize : function(options) { diff --git a/apps/common/main/resources/img/controls/flags.png b/apps/common/main/resources/img/controls/flags.png index 21e559123..a37d0e845 100644 Binary files a/apps/common/main/resources/img/controls/flags.png and b/apps/common/main/resources/img/controls/flags.png differ diff --git a/apps/common/main/resources/img/controls/flags@1.5x.png b/apps/common/main/resources/img/controls/flags@1.5x.png index da34fd60d..43af3f9d1 100644 Binary files a/apps/common/main/resources/img/controls/flags@1.5x.png and b/apps/common/main/resources/img/controls/flags@1.5x.png differ diff --git a/apps/common/main/resources/img/controls/flags@2x.png b/apps/common/main/resources/img/controls/flags@2x.png index 07b0ea13a..da4b1c9cb 100644 Binary files a/apps/common/main/resources/img/controls/flags@2x.png and b/apps/common/main/resources/img/controls/flags@2x.png differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-highlighted.png b/apps/common/main/resources/img/dimension-picker/dimension-highlighted.png deleted file mode 100644 index 839476271..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-highlighted.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.25x.png b/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.25x.png deleted file mode 100644 index a6663aebd..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.25x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.5x.png b/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.5x.png deleted file mode 100644 index a1b0b2033..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.5x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.75x.png b/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.75x.png deleted file mode 100644 index af157e30e..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@1.75x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@2x.png b/apps/common/main/resources/img/dimension-picker/dimension-highlighted@2x.png deleted file mode 100644 index af0dc0add..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-highlighted@2x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted.png b/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted.png deleted file mode 100644 index 4393a25a0..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.25x.png b/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.25x.png deleted file mode 100644 index 571fff827..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.25x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.5x.png b/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.5x.png deleted file mode 100644 index 646da3002..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.5x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.75x.png b/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.75x.png deleted file mode 100644 index 19d365f70..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@1.75x.png and /dev/null differ diff --git a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@2x.png b/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@2x.png deleted file mode 100644 index 20fbdf36e..000000000 Binary files a/apps/common/main/resources/img/dimension-picker/dimension-unhighlighted@2x.png and /dev/null differ diff --git a/apps/common/main/resources/img/doc-formats/csv.svg b/apps/common/main/resources/img/doc-formats/csv.svg index 3a42ac3ad..713afe5d6 100644 --- a/apps/common/main/resources/img/doc-formats/csv.svg +++ b/apps/common/main/resources/img/doc-formats/csv.svg @@ -1,32 +1,13 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/djvu.svg b/apps/common/main/resources/img/doc-formats/djvu.svg index a318cff21..7a0925dac 100644 --- a/apps/common/main/resources/img/doc-formats/djvu.svg +++ b/apps/common/main/resources/img/doc-formats/djvu.svg @@ -1,18 +1,13 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/docm.svg b/apps/common/main/resources/img/doc-formats/docm.svg index 86e7c54dd..b2ec81233 100644 --- a/apps/common/main/resources/img/doc-formats/docm.svg +++ b/apps/common/main/resources/img/doc-formats/docm.svg @@ -1,10 +1,14 @@ - - - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/docx.svg b/apps/common/main/resources/img/doc-formats/docx.svg index 9be827736..a0025f892 100644 --- a/apps/common/main/resources/img/doc-formats/docx.svg +++ b/apps/common/main/resources/img/doc-formats/docx.svg @@ -1,6 +1,13 @@ - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/docxf.svg b/apps/common/main/resources/img/doc-formats/docxf.svg index f0d0421b4..846bc4c5b 100644 --- a/apps/common/main/resources/img/doc-formats/docxf.svg +++ b/apps/common/main/resources/img/doc-formats/docxf.svg @@ -1,14 +1,14 @@ - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/dotx.svg b/apps/common/main/resources/img/doc-formats/dotx.svg index ea27f0523..f006c5b5f 100644 --- a/apps/common/main/resources/img/doc-formats/dotx.svg +++ b/apps/common/main/resources/img/doc-formats/dotx.svg @@ -1,8 +1,14 @@ - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/epub.svg b/apps/common/main/resources/img/doc-formats/epub.svg index df41f52e5..8f246520f 100644 --- a/apps/common/main/resources/img/doc-formats/epub.svg +++ b/apps/common/main/resources/img/doc-formats/epub.svg @@ -1,8 +1,13 @@ - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/fb2.svg b/apps/common/main/resources/img/doc-formats/fb2.svg index 4239a775a..ab2923087 100644 --- a/apps/common/main/resources/img/doc-formats/fb2.svg +++ b/apps/common/main/resources/img/doc-formats/fb2.svg @@ -1,8 +1,13 @@ - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/html.svg b/apps/common/main/resources/img/doc-formats/html.svg index edc138f37..503d611aa 100644 --- a/apps/common/main/resources/img/doc-formats/html.svg +++ b/apps/common/main/resources/img/doc-formats/html.svg @@ -1,8 +1,15 @@ - - - - - - - + + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/jpg.svg b/apps/common/main/resources/img/doc-formats/jpg.svg index cf0c2207a..99f2bb725 100644 --- a/apps/common/main/resources/img/doc-formats/jpg.svg +++ b/apps/common/main/resources/img/doc-formats/jpg.svg @@ -1,12 +1,17 @@ - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/odp.svg b/apps/common/main/resources/img/doc-formats/odp.svg index 3d48f79ca..6ddc0761f 100644 --- a/apps/common/main/resources/img/doc-formats/odp.svg +++ b/apps/common/main/resources/img/doc-formats/odp.svg @@ -1,7 +1,13 @@ - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/ods.svg b/apps/common/main/resources/img/doc-formats/ods.svg index b69df0429..31dcfb2ab 100644 --- a/apps/common/main/resources/img/doc-formats/ods.svg +++ b/apps/common/main/resources/img/doc-formats/ods.svg @@ -1,7 +1,13 @@ - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/odt.svg b/apps/common/main/resources/img/doc-formats/odt.svg index a73086c13..0d3d00bc0 100644 --- a/apps/common/main/resources/img/doc-formats/odt.svg +++ b/apps/common/main/resources/img/doc-formats/odt.svg @@ -1,7 +1,13 @@ - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/oform.svg b/apps/common/main/resources/img/doc-formats/oform.svg index 1b5a0706f..c518ac141 100644 --- a/apps/common/main/resources/img/doc-formats/oform.svg +++ b/apps/common/main/resources/img/doc-formats/oform.svg @@ -1,16 +1,18 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/otp.svg b/apps/common/main/resources/img/doc-formats/otp.svg index d2af2e7ab..26d8bc60d 100644 --- a/apps/common/main/resources/img/doc-formats/otp.svg +++ b/apps/common/main/resources/img/doc-formats/otp.svg @@ -1,9 +1,14 @@ - - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/ots.svg b/apps/common/main/resources/img/doc-formats/ots.svg index ed7b7aea3..ca9cac28d 100644 --- a/apps/common/main/resources/img/doc-formats/ots.svg +++ b/apps/common/main/resources/img/doc-formats/ots.svg @@ -1,9 +1,14 @@ - - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/ott.svg b/apps/common/main/resources/img/doc-formats/ott.svg index d37c3487b..cb2629743 100644 --- a/apps/common/main/resources/img/doc-formats/ott.svg +++ b/apps/common/main/resources/img/doc-formats/ott.svg @@ -1,9 +1,14 @@ - - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/oxps.svg b/apps/common/main/resources/img/doc-formats/oxps.svg index 58d22cca5..931e60193 100644 --- a/apps/common/main/resources/img/doc-formats/oxps.svg +++ b/apps/common/main/resources/img/doc-formats/oxps.svg @@ -1,11 +1,13 @@ - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/pdf.svg b/apps/common/main/resources/img/doc-formats/pdf.svg index 581669209..0201e87ed 100644 --- a/apps/common/main/resources/img/doc-formats/pdf.svg +++ b/apps/common/main/resources/img/doc-formats/pdf.svg @@ -1,6 +1,13 @@ - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/pdfa.svg b/apps/common/main/resources/img/doc-formats/pdfa.svg index 26608740e..d07833854 100644 --- a/apps/common/main/resources/img/doc-formats/pdfa.svg +++ b/apps/common/main/resources/img/doc-formats/pdfa.svg @@ -1,8 +1,14 @@ - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/png.svg b/apps/common/main/resources/img/doc-formats/png.svg index d680b74a9..c2db2a3b0 100644 --- a/apps/common/main/resources/img/doc-formats/png.svg +++ b/apps/common/main/resources/img/doc-formats/png.svg @@ -1,12 +1,17 @@ - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/potx.svg b/apps/common/main/resources/img/doc-formats/potx.svg index 17b0daaf6..7f5548bdd 100644 --- a/apps/common/main/resources/img/doc-formats/potx.svg +++ b/apps/common/main/resources/img/doc-formats/potx.svg @@ -1,12 +1,14 @@ - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/ppsx.svg b/apps/common/main/resources/img/doc-formats/ppsx.svg index 87f1c2264..24a89babe 100644 --- a/apps/common/main/resources/img/doc-formats/ppsx.svg +++ b/apps/common/main/resources/img/doc-formats/ppsx.svg @@ -1,17 +1,13 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/pptm.svg b/apps/common/main/resources/img/doc-formats/pptm.svg index e30a2d954..62029d6fd 100644 --- a/apps/common/main/resources/img/doc-formats/pptm.svg +++ b/apps/common/main/resources/img/doc-formats/pptm.svg @@ -1,12 +1,14 @@ - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/pptx.svg b/apps/common/main/resources/img/doc-formats/pptx.svg index b8a4470fc..0d193b13c 100644 --- a/apps/common/main/resources/img/doc-formats/pptx.svg +++ b/apps/common/main/resources/img/doc-formats/pptx.svg @@ -1,10 +1,13 @@ - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/rtf.svg b/apps/common/main/resources/img/doc-formats/rtf.svg index 69b16f641..686a0498f 100644 --- a/apps/common/main/resources/img/doc-formats/rtf.svg +++ b/apps/common/main/resources/img/doc-formats/rtf.svg @@ -1,15 +1,13 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/svg.svg b/apps/common/main/resources/img/doc-formats/svg.svg index 3f2562f15..ced8b0279 100644 --- a/apps/common/main/resources/img/doc-formats/svg.svg +++ b/apps/common/main/resources/img/doc-formats/svg.svg @@ -1,14 +1,13 @@ - - - - - - - - + + + + + + - - - - + + + + + diff --git a/apps/common/main/resources/img/doc-formats/txt.svg b/apps/common/main/resources/img/doc-formats/txt.svg index 8d78ae585..961c4e168 100644 --- a/apps/common/main/resources/img/doc-formats/txt.svg +++ b/apps/common/main/resources/img/doc-formats/txt.svg @@ -1,14 +1,13 @@ - - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/xlsm.svg b/apps/common/main/resources/img/doc-formats/xlsm.svg index b0d860961..087dad7d2 100644 --- a/apps/common/main/resources/img/doc-formats/xlsm.svg +++ b/apps/common/main/resources/img/doc-formats/xlsm.svg @@ -1,8 +1,14 @@ - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/xlsx.svg b/apps/common/main/resources/img/doc-formats/xlsx.svg index 9fd0ac99b..b2ac9a15c 100644 --- a/apps/common/main/resources/img/doc-formats/xlsx.svg +++ b/apps/common/main/resources/img/doc-formats/xlsx.svg @@ -1,6 +1,13 @@ - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/xltx.svg b/apps/common/main/resources/img/doc-formats/xltx.svg index 92bb7a1d6..e550a1747 100644 --- a/apps/common/main/resources/img/doc-formats/xltx.svg +++ b/apps/common/main/resources/img/doc-formats/xltx.svg @@ -1,8 +1,14 @@ - - - - - - - + + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/doc-formats/xps.svg b/apps/common/main/resources/img/doc-formats/xps.svg index 97a062128..bddb3606c 100644 --- a/apps/common/main/resources/img/doc-formats/xps.svg +++ b/apps/common/main/resources/img/doc-formats/xps.svg @@ -1,11 +1,13 @@ - - - - - - - - - - + + + + + + + + + + + + diff --git a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker.png b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker.png index e178f5d2f..135ecee35 100644 Binary files a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker.png and b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker.png differ diff --git a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.25x.png b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.25x.png index 1e51931d6..dd78e4720 100644 Binary files a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.25x.png and b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.25x.png differ diff --git a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.5x.png b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.5x.png index f0abef52e..cf1323198 100644 Binary files a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.5x.png and b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.5x.png differ diff --git a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.75x.png b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.75x.png index 5a5d5d3d2..63bda4ad5 100644 Binary files a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.75x.png and b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@1.75x.png differ diff --git a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@2x.png b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@2x.png index 9a7a3a2c1..6c1690a3c 100644 Binary files a/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@2x.png and b/apps/common/main/resources/img/hsbcolorpicker/hsb-colorpicker@2x.png differ diff --git a/apps/common/main/resources/img/right-panels/arrows.svg b/apps/common/main/resources/img/right-panels/arrows.svg new file mode 100644 index 000000000..416e24250 --- /dev/null +++ b/apps/common/main/resources/img/right-panels/arrows.svg @@ -0,0 +1,147 @@ + + + + + + + + diff --git a/apps/common/main/resources/img/toolbar/1.25x/big/smart-art.png b/apps/common/main/resources/img/toolbar/1.25x/big/smart-art.png new file mode 100644 index 000000000..7d02e1a19 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/big/smart-art.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/btn-home.png b/apps/common/main/resources/img/toolbar/1.25x/btn-home.png new file mode 100644 index 000000000..f7e24f025 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/btn-home.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/btn-merge-cells.png b/apps/common/main/resources/img/toolbar/1.25x/btn-merge-cells.png index ac6fa48f9..16327491b 100644 Binary files a/apps/common/main/resources/img/toolbar/1.25x/btn-merge-cells.png and b/apps/common/main/resources/img/toolbar/1.25x/btn-merge-cells.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/btn-print-preview.png b/apps/common/main/resources/img/toolbar/1.25x/btn-print-preview.png new file mode 100644 index 000000000..f5bf7d1e3 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/btn-print-preview.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/btn-print.png b/apps/common/main/resources/img/toolbar/1.25x/btn-print.png index 0dcdf890e..ac9fc12f5 100644 Binary files a/apps/common/main/resources/img/toolbar/1.25x/btn-print.png and b/apps/common/main/resources/img/toolbar/1.25x/btn-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/btn-quick-print.png b/apps/common/main/resources/img/toolbar/1.25x/btn-quick-print.png new file mode 100644 index 000000000..fba845c84 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/btn-quick-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/btn-save.png b/apps/common/main/resources/img/toolbar/1.25x/btn-save.png index 9d7fe5b5f..28f0e9caa 100644 Binary files a/apps/common/main/resources/img/toolbar/1.25x/btn-save.png and b/apps/common/main/resources/img/toolbar/1.25x/btn-save.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-cycle.png b/apps/common/main/resources/img/toolbar/1.25x/smart-cycle.png new file mode 100644 index 000000000..0915f8450 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-cycle.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-hierarchy.png b/apps/common/main/resources/img/toolbar/1.25x/smart-hierarchy.png new file mode 100644 index 000000000..2d64e5f08 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-hierarchy.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-list.png b/apps/common/main/resources/img/toolbar/1.25x/smart-list.png new file mode 100644 index 000000000..d3f7fb50e Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-list.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-matrix.png b/apps/common/main/resources/img/toolbar/1.25x/smart-matrix.png new file mode 100644 index 000000000..a807a3933 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-matrix.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-process.png b/apps/common/main/resources/img/toolbar/1.25x/smart-process.png new file mode 100644 index 000000000..c46ab3474 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-process.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-pyramid.png b/apps/common/main/resources/img/toolbar/1.25x/smart-pyramid.png new file mode 100644 index 000000000..bb6010d0d Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-pyramid.png differ diff --git a/apps/common/main/resources/img/toolbar/1.25x/smart-relationship.png b/apps/common/main/resources/img/toolbar/1.25x/smart-relationship.png new file mode 100644 index 000000000..dc8c6a8fc Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.25x/smart-relationship.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/big/smart-art.png b/apps/common/main/resources/img/toolbar/1.5x/big/smart-art.png new file mode 100644 index 000000000..2c37a9391 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/big/smart-art.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/btn-home.png b/apps/common/main/resources/img/toolbar/1.5x/btn-home.png new file mode 100644 index 000000000..1650fd23f Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/btn-home.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/btn-merge-cells.png b/apps/common/main/resources/img/toolbar/1.5x/btn-merge-cells.png index f4b36345d..3f43b1af6 100644 Binary files a/apps/common/main/resources/img/toolbar/1.5x/btn-merge-cells.png and b/apps/common/main/resources/img/toolbar/1.5x/btn-merge-cells.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/btn-print-preview.png b/apps/common/main/resources/img/toolbar/1.5x/btn-print-preview.png new file mode 100644 index 000000000..6c2b2e3e2 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/btn-print-preview.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/btn-print.png b/apps/common/main/resources/img/toolbar/1.5x/btn-print.png index da832c324..27245d77a 100644 Binary files a/apps/common/main/resources/img/toolbar/1.5x/btn-print.png and b/apps/common/main/resources/img/toolbar/1.5x/btn-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/btn-quick-print.png b/apps/common/main/resources/img/toolbar/1.5x/btn-quick-print.png new file mode 100644 index 000000000..93752a11a Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/btn-quick-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/btn-save.png b/apps/common/main/resources/img/toolbar/1.5x/btn-save.png index 399f2a2da..3866526f0 100644 Binary files a/apps/common/main/resources/img/toolbar/1.5x/btn-save.png and b/apps/common/main/resources/img/toolbar/1.5x/btn-save.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-cycle.png b/apps/common/main/resources/img/toolbar/1.5x/smart-cycle.png new file mode 100644 index 000000000..8b2c46408 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-cycle.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-hierarchy.png b/apps/common/main/resources/img/toolbar/1.5x/smart-hierarchy.png new file mode 100644 index 000000000..3e1b76c58 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-hierarchy.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-list.png b/apps/common/main/resources/img/toolbar/1.5x/smart-list.png new file mode 100644 index 000000000..db094335f Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-list.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-matrix.png b/apps/common/main/resources/img/toolbar/1.5x/smart-matrix.png new file mode 100644 index 000000000..7edb556b4 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-matrix.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-process.png b/apps/common/main/resources/img/toolbar/1.5x/smart-process.png new file mode 100644 index 000000000..ad525bfcc Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-process.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-pyramid.png b/apps/common/main/resources/img/toolbar/1.5x/smart-pyramid.png new file mode 100644 index 000000000..da1046fef Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-pyramid.png differ diff --git a/apps/common/main/resources/img/toolbar/1.5x/smart-relationship.png b/apps/common/main/resources/img/toolbar/1.5x/smart-relationship.png new file mode 100644 index 000000000..37ead4f26 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.5x/smart-relationship.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/big/smart-art.png b/apps/common/main/resources/img/toolbar/1.75x/big/smart-art.png new file mode 100644 index 000000000..23dcfb9df Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/big/smart-art.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/btn-home.png b/apps/common/main/resources/img/toolbar/1.75x/btn-home.png new file mode 100644 index 000000000..39447cec0 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/btn-home.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/btn-merge-cells.png b/apps/common/main/resources/img/toolbar/1.75x/btn-merge-cells.png index 6a9bb9adc..dc298f6a4 100644 Binary files a/apps/common/main/resources/img/toolbar/1.75x/btn-merge-cells.png and b/apps/common/main/resources/img/toolbar/1.75x/btn-merge-cells.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/btn-print-preview.png b/apps/common/main/resources/img/toolbar/1.75x/btn-print-preview.png new file mode 100644 index 000000000..149f53961 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/btn-print-preview.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/btn-print.png b/apps/common/main/resources/img/toolbar/1.75x/btn-print.png index f427948fb..1ae4e22da 100644 Binary files a/apps/common/main/resources/img/toolbar/1.75x/btn-print.png and b/apps/common/main/resources/img/toolbar/1.75x/btn-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/btn-quick-print.png b/apps/common/main/resources/img/toolbar/1.75x/btn-quick-print.png new file mode 100644 index 000000000..73e9b3c4c Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/btn-quick-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/btn-save.png b/apps/common/main/resources/img/toolbar/1.75x/btn-save.png index 4c5325307..060ab5e7f 100644 Binary files a/apps/common/main/resources/img/toolbar/1.75x/btn-save.png and b/apps/common/main/resources/img/toolbar/1.75x/btn-save.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-cycle.png b/apps/common/main/resources/img/toolbar/1.75x/smart-cycle.png new file mode 100644 index 000000000..5612b313d Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-cycle.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-hierarchy.png b/apps/common/main/resources/img/toolbar/1.75x/smart-hierarchy.png new file mode 100644 index 000000000..21347fa56 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-hierarchy.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-list.png b/apps/common/main/resources/img/toolbar/1.75x/smart-list.png new file mode 100644 index 000000000..bad73d083 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-list.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-matrix.png b/apps/common/main/resources/img/toolbar/1.75x/smart-matrix.png new file mode 100644 index 000000000..a0ddf2f41 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-matrix.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-process.png b/apps/common/main/resources/img/toolbar/1.75x/smart-process.png new file mode 100644 index 000000000..ccc4b2105 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-process.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-pyramid.png b/apps/common/main/resources/img/toolbar/1.75x/smart-pyramid.png new file mode 100644 index 000000000..098559a54 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-pyramid.png differ diff --git a/apps/common/main/resources/img/toolbar/1.75x/smart-relationship.png b/apps/common/main/resources/img/toolbar/1.75x/smart-relationship.png new file mode 100644 index 000000000..5d55ff559 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1.75x/smart-relationship.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/big/smart-art.png b/apps/common/main/resources/img/toolbar/1x/big/smart-art.png new file mode 100644 index 000000000..fc5d5ceb4 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/big/smart-art.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/btn-home.png b/apps/common/main/resources/img/toolbar/1x/btn-home.png new file mode 100644 index 000000000..221b057a3 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/btn-home.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/btn-merge-cells.png b/apps/common/main/resources/img/toolbar/1x/btn-merge-cells.png index 67872ed2c..c2fed157c 100644 Binary files a/apps/common/main/resources/img/toolbar/1x/btn-merge-cells.png and b/apps/common/main/resources/img/toolbar/1x/btn-merge-cells.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/btn-print-preview.png b/apps/common/main/resources/img/toolbar/1x/btn-print-preview.png new file mode 100644 index 000000000..4231e64a9 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/btn-print-preview.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/btn-print.png b/apps/common/main/resources/img/toolbar/1x/btn-print.png index 89e8aa53b..626a4f244 100644 Binary files a/apps/common/main/resources/img/toolbar/1x/btn-print.png and b/apps/common/main/resources/img/toolbar/1x/btn-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/btn-quick-print.png b/apps/common/main/resources/img/toolbar/1x/btn-quick-print.png new file mode 100644 index 000000000..63d65c625 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/btn-quick-print.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/btn-save.png b/apps/common/main/resources/img/toolbar/1x/btn-save.png index 7f9b5fbba..b7c188efb 100644 Binary files a/apps/common/main/resources/img/toolbar/1x/btn-save.png and b/apps/common/main/resources/img/toolbar/1x/btn-save.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-cycle.png b/apps/common/main/resources/img/toolbar/1x/smart-cycle.png new file mode 100644 index 000000000..b06b0ade6 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-cycle.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-hierarchy.png b/apps/common/main/resources/img/toolbar/1x/smart-hierarchy.png new file mode 100644 index 000000000..56a16be59 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-hierarchy.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-list.png b/apps/common/main/resources/img/toolbar/1x/smart-list.png new file mode 100644 index 000000000..08abecc03 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-list.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-matrix.png b/apps/common/main/resources/img/toolbar/1x/smart-matrix.png new file mode 100644 index 000000000..0e9a87c39 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-matrix.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-process.png b/apps/common/main/resources/img/toolbar/1x/smart-process.png new file mode 100644 index 000000000..d8d712cb7 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-process.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-pyramid.png b/apps/common/main/resources/img/toolbar/1x/smart-pyramid.png new file mode 100644 index 000000000..c438ae0f5 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-pyramid.png differ diff --git a/apps/common/main/resources/img/toolbar/1x/smart-relationship.png b/apps/common/main/resources/img/toolbar/1x/smart-relationship.png new file mode 100644 index 000000000..44b354b02 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/1x/smart-relationship.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/big/smart-art.png b/apps/common/main/resources/img/toolbar/2x/big/smart-art.png new file mode 100644 index 000000000..40493c4f1 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/big/smart-art.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/btn-home.png b/apps/common/main/resources/img/toolbar/2x/btn-home.png new file mode 100644 index 000000000..9e320a42e Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/btn-home.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/btn-merge-cells.png b/apps/common/main/resources/img/toolbar/2x/btn-merge-cells.png index 454135117..4a560c10a 100644 Binary files a/apps/common/main/resources/img/toolbar/2x/btn-merge-cells.png and b/apps/common/main/resources/img/toolbar/2x/btn-merge-cells.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/btn-print-preview.png b/apps/common/main/resources/img/toolbar/2x/btn-print-preview.png new file mode 100644 index 000000000..0c2c4fe2f Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/btn-print-preview.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/btn-print.png b/apps/common/main/resources/img/toolbar/2x/btn-print.png index cfae9c141..7ecdef8d7 100644 Binary files a/apps/common/main/resources/img/toolbar/2x/btn-print.png and b/apps/common/main/resources/img/toolbar/2x/btn-print.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/btn-quick-print.png b/apps/common/main/resources/img/toolbar/2x/btn-quick-print.png new file mode 100644 index 000000000..69cadb0e5 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/btn-quick-print.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/btn-save.png b/apps/common/main/resources/img/toolbar/2x/btn-save.png index 39ad87756..cba2c59f8 100644 Binary files a/apps/common/main/resources/img/toolbar/2x/btn-save.png and b/apps/common/main/resources/img/toolbar/2x/btn-save.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-cycle.png b/apps/common/main/resources/img/toolbar/2x/smart-cycle.png new file mode 100644 index 000000000..f45e0c29c Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-cycle.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-hierarchy.png b/apps/common/main/resources/img/toolbar/2x/smart-hierarchy.png new file mode 100644 index 000000000..184559427 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-hierarchy.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-list.png b/apps/common/main/resources/img/toolbar/2x/smart-list.png new file mode 100644 index 000000000..4f1fc5ee3 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-list.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-matrix.png b/apps/common/main/resources/img/toolbar/2x/smart-matrix.png new file mode 100644 index 000000000..98c0301c4 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-matrix.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-process.png b/apps/common/main/resources/img/toolbar/2x/smart-process.png new file mode 100644 index 000000000..13109ae01 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-process.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-pyramid.png b/apps/common/main/resources/img/toolbar/2x/smart-pyramid.png new file mode 100644 index 000000000..54f4c665b Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-pyramid.png differ diff --git a/apps/common/main/resources/img/toolbar/2x/smart-relationship.png b/apps/common/main/resources/img/toolbar/2x/smart-relationship.png new file mode 100644 index 000000000..75783f6d0 Binary files /dev/null and b/apps/common/main/resources/img/toolbar/2x/smart-relationship.png differ diff --git a/apps/common/main/resources/img/toolbar/equationicons.svg b/apps/common/main/resources/img/toolbar/equationicons.svg new file mode 100644 index 000000000..90479d415 --- /dev/null +++ b/apps/common/main/resources/img/toolbar/equationicons.svg @@ -0,0 +1,41 @@ + \ No newline at end of file diff --git a/apps/common/main/resources/less/about.less b/apps/common/main/resources/less/about.less index 2984110ca..0a7f4349f 100644 --- a/apps/common/main/resources/less/about.less +++ b/apps/common/main/resources/less/about.less @@ -19,6 +19,7 @@ .asc-about-header { margin: 0 30px; font: 12px Tahoma; + .font-size-medium(); letter-spacing: 1px; color: @text-normal-ie; color: @text-normal; @@ -44,6 +45,7 @@ &.asc-about-desc-name, &.asc-about-lic { font: 12px Tahoma; + .font-size-medium(); color: @text-normal-ie; color: @text-normal; } @@ -62,6 +64,7 @@ a { font: 12px Tahoma; + .font-size-medium(); color: @text-normal-ie; color: @text-normal; } diff --git a/apps/common/main/resources/less/advanced-settings-window.less b/apps/common/main/resources/less/advanced-settings-window.less index 2cfd6bbf6..98c132b44 100644 --- a/apps/common/main/resources/less/advanced-settings-window.less +++ b/apps/common/main/resources/less/advanced-settings-window.less @@ -58,20 +58,31 @@ .form-control { cursor: pointer; - .image { + .img-arrows { width: 100%; - height: 100%; + height: 18px; display: block; background-color: transparent; - margin: 0 0 0 -3px; + margin: auto; + text-align: center; + overflow: hidden; + padding-right: 4px; + .svg-mirror{ + margin-right: 1px; + } } } } -.img-arrows { - .background-ximage-v2('right-panels/Begin-EndStyle.png', 480px); - -webkit-filter: @img-border-type-filter; - filter: @img-border-type-filter; +.img-arrows svg{ + width: 44px; + height: 20px; + fill: @icon-normal-ie; + fill: @icon-normal; + + &.svg-mirror{ + transform: scale(-1,1); + } } .item-arrow { diff --git a/apps/common/main/resources/less/buttons.less b/apps/common/main/resources/less/buttons.less index 8825c37be..310f80c68 100644 --- a/apps/common/main/resources/less/buttons.less +++ b/apps/common/main/resources/less/buttons.less @@ -94,6 +94,10 @@ } } + .caption { + .font-size-normal(); + } + &.icon-top { display: inline-flex; flex-direction: column; @@ -483,6 +487,7 @@ display: block; position: relative; .border-radius(0); + .font-size-normal(); .font-weight-bold(); background-color: transparent; @@ -804,6 +809,7 @@ border: @scaled-one-px-value-ie solid @border-regular-control-ie; border: @scaled-one-px-value solid @border-regular-control; .border-radius(@border-radius-small); + .font-size-normal(); &.auto { width: auto; @@ -1016,6 +1022,7 @@ width: 52px; padding: 5px; + fill: @icon-normal-ie; fill: @icon-normal; .btn& { @@ -1069,6 +1076,7 @@ // ------------------------ .dlg-btn { + .font-size-normal(); .font-weight-bold(); width: 86px; color: @text-normal-ie; diff --git a/apps/common/main/resources/less/calendar.less b/apps/common/main/resources/less/calendar.less index 6926539d7..7240c6053 100644 --- a/apps/common/main/resources/less/calendar.less +++ b/apps/common/main/resources/less/calendar.less @@ -83,7 +83,7 @@ width: 100%; margin: 4px 6px 3px 6px; text-align: center; - font-size: 11px; + .font-size-normal(); label { padding: 2px 10px 0; @@ -125,7 +125,7 @@ display: flex; justify-content: center; align-items: center; - font-size: 13px; + .font-size-large(); } .number-day { diff --git a/apps/common/main/resources/less/chat.less b/apps/common/main/resources/less/chat.less index 566e58cab..caac2aa52 100644 --- a/apps/common/main/resources/less/chat.less +++ b/apps/common/main/resources/less/chat.less @@ -25,7 +25,7 @@ #chat-title { label { padding: 18px 20px; - font-size: @font-size-large; + .font-size-large(); } } @@ -63,7 +63,7 @@ } .name { - font-size: 12px; + .font-size-medium(); .font-weight-bold(); display: block; padding: 0 10px 0 0; @@ -80,7 +80,7 @@ top: 70px; right: 0; bottom: 110px; - font-size: 12px; + .font-size-medium(); ul { margin: 0; @@ -105,7 +105,7 @@ .user-name { color: @text-normal-ie; color: @text-normal; - font-size: 12px; + .font-size-medium(); .font-weight-bold(); overflow: hidden; text-overflow: ellipsis; @@ -151,7 +151,7 @@ margin-bottom: 5px; border: 1px solid @border-regular-control-ie; border: 1px solid @border-regular-control; - font-size: 12px; + .font-size-medium(); &:focus { border-color: @border-control-focus-ie; diff --git a/apps/common/main/resources/less/combo-border-size.less b/apps/common/main/resources/less/combo-border-size.less index 669b67f60..7bb139b2f 100644 --- a/apps/common/main/resources/less/combo-border-size.less +++ b/apps/common/main/resources/less/combo-border-size.less @@ -19,7 +19,7 @@ span { display: inline-block; margin-top: 3px; - font-size: 11px; + .font-size-normal(); height: 17px; } diff --git a/apps/common/main/resources/less/combo-dataview.less b/apps/common/main/resources/less/combo-dataview.less index 2aae9883a..dbd9da995 100644 --- a/apps/common/main/resources/less/combo-dataview.less +++ b/apps/common/main/resources/less/combo-dataview.less @@ -78,6 +78,12 @@ } } } + + .masked & { + &.disabled { + opacity: 1; + } + } } @@ -477,7 +483,6 @@ .caption{ line-height: 12px; - font-size: 11px; text-overflow: ellipsis; overflow: hidden; width: 100%; diff --git a/apps/common/main/resources/less/combobox.less b/apps/common/main/resources/less/combobox.less index 60a69f1fa..d2c284c20 100644 --- a/apps/common/main/resources/less/combobox.less +++ b/apps/common/main/resources/less/combobox.less @@ -8,7 +8,6 @@ &.input-group-nr > .btn { height: @input-height-base; padding: @padding-base-vertical @padding-base-horizontal; - font-size: @font-size-base; line-height: @line-height-base; -o-transition: none; @@ -22,6 +21,7 @@ &.input-group-nr > .form-control { padding-right: 7px + 2 * @padding-base-horizontal; + .font-size-normal(); } .form-control { @@ -29,6 +29,7 @@ position: static; z-index: auto; float: none; + .font-size-normal(); .image { -webkit-filter: @img-border-type-filter; diff --git a/apps/common/main/resources/less/comments.less b/apps/common/main/resources/less/comments.less index c911a59e1..249fa44f7 100644 --- a/apps/common/main/resources/less/comments.less +++ b/apps/common/main/resources/less/comments.less @@ -19,7 +19,7 @@ border-bottom: @scaled-one-px-value solid @border-toolbar; label { - font-size: 12px; + .font-size-medium(); .font-weight-bold(); margin-top: 2px; } @@ -70,7 +70,7 @@ label { color: @text-normal-ie; color: @text-normal; - font: 12px arial; + .font-size-medium(); line-height: normal; border-bottom: @scaled-one-px-value-ie dotted @text-normal-ie; border-bottom: @scaled-one-px-value dotted @text-normal; @@ -93,7 +93,7 @@ } textarea { - font-size: 12px; + .font-size-medium(); width: 100%; resize: none; margin-bottom: 5px; @@ -120,7 +120,7 @@ .dataview-ct { width: 100%; height: 100%; - font: 12px arial; + .font-size-medium(); line-height: normal; position: relative; overflow: hidden; @@ -167,7 +167,7 @@ .user-name { color: @text-normal-ie; color: @text-normal; - font-size: 12px; + .font-size-medium(); .font-weight-bold(); overflow: hidden; text-overflow: ellipsis; @@ -197,7 +197,8 @@ background-color: #ee3525; padding: 3px 10px; color: #ffffff; - font: 11px arial; + //font: 11px arial; + .font-size-normal(); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; @@ -205,10 +206,10 @@ } .user-date { - font-size: 11px; + .font-size-normal(); white-space: nowrap; padding: 0; - height: 12px; + //height: 12px; overflow: hidden; text-overflow: ellipsis; cursor: default; @@ -463,7 +464,7 @@ min-width: 100px; text-align: center; cursor: pointer; - font-size: 11px; + .font-size-normal(); font-family: @font-family-base; } diff --git a/apps/common/main/resources/less/common.less b/apps/common/main/resources/less/common.less index cbb386fd0..b7c6f6918 100644 --- a/apps/common/main/resources/less/common.less +++ b/apps/common/main/resources/less/common.less @@ -236,6 +236,10 @@ textarea { background-color: @background-normal; color: @text-normal-ie; color: @text-normal; + &:-ms-input-placeholder { + color: @text-tertiary-ie; + } + .placeholder(); } .btn-edit-table, @@ -294,4 +298,7 @@ body { &.pixel-ratio__1_75 { image-rendering: crisp-edges; // FF only } + + font-family: @font-family-sans-serif; + font-family: @font-family-base; } \ No newline at end of file diff --git a/apps/common/main/resources/less/dataview.less b/apps/common/main/resources/less/dataview.less index 2c5e026cd..c0e45566a 100644 --- a/apps/common/main/resources/less/dataview.less +++ b/apps/common/main/resources/less/dataview.less @@ -1,4 +1,5 @@ .dataview { + font-size: 11px; // must be const value &.inner { width: 100%; height: 100%; @@ -48,6 +49,10 @@ } } + .group-description { + .font-size-normal(); + } + .group-items-container { overflow: hidden; margin-bottom: 5px; diff --git a/apps/common/main/resources/less/dimension-picker.less b/apps/common/main/resources/less/dimension-picker.less index f6f736c53..c16bde18c 100644 --- a/apps/common/main/resources/less/dimension-picker.less +++ b/apps/common/main/resources/less/dimension-picker.less @@ -12,32 +12,54 @@ position: absolute !important; } +.background-cells-all(@border-color, @fill-Color, @first-coord, @last-coord, @background-color: @background-normal){ + + background: linear-gradient( 90deg, @background-color, @background-color @first-coord, transparent @first-coord, transparent @last-coord, @background-color @last-coord, @background-color), + linear-gradient( @background-color, @background-color @first-coord, transparent @first-coord, transparent @last-coord, @background-color @last-coord, @background-color), + linear-gradient( 90deg, transparent, transparent @first-coord, @border-color @first-coord, @border-color 2px, transparent 2px, transparent 18px, @border-color 18px, @border-color @last-coord, transparent @last-coord, transparent), + linear-gradient( transparent, transparent @first-coord, @border-color @first-coord, @border-color 2px, @fill-Color 2px, @fill-Color 18px, @border-color 18px, @border-color @last-coord, transparent @last-coord, transparent ); + background-size: 1em 1em; +} + +.background-cells(@border-color, @fill-Color, @size-one-pixel: @scaled-one-px-value){ + @first-coord: calc(2px - @size-one-pixel); + @last-coord: calc(18px + @size-one-pixel); + .background-cells-all(@border-color, @fill-Color, @first-coord, @last-coord); +} + +.background-cells-ie(@border-color, @fill-Color){ + .background-cells-all(@border-color, @fill-Color, @scaled-one-px-value-ie, 19px, @background-normal-ie); +} + + .dimension-picker div.dimension-picker-highlighted { left: 0; top: 0; overflow: hidden; position: absolute; - //background: transparent repeat scroll 0 0; - .background-ximage-all('dimension-picker/dimension-highlighted.png', 20px); - background-repeat: repeat; - - .pixel-ratio__1_25 &, .pixel-ratio__1_75 & { - image-rendering: pixelated; + .background-cells-ie(@border-control-focus-ie, @highlight-button-pressed-ie); + &:not(.pixel-ratio__2){ + .background-cells(@border-control-focus, @highlight-button-pressed); + } + .pixel-ratio__2 &{ + .background-cells(@border-control-focus, @highlight-button-pressed, 0.5px); } } .dimension-picker-unhighlighted { - //background: transparent repeat scroll 0 0; - .background-ximage-all('dimension-picker/dimension-unhighlighted.png', 20px); - background-repeat: repeat; - .pixel-ratio__1_25 &, .pixel-ratio__1_75 & { - image-rendering: pixelated; + .background-cells-ie(@border-regular-control-ie, @background-normal-ie); + + &:not(.pixel-ratio__2){ + .background-cells(@border-regular-control, @background-normal); + } + .pixel-ratio__2 &{ + .background-cells(@border-regular-control, @background-normal, 0.5px); } } .dimension-picker-status { - font-size: 12px; + .font-size-medium(); text-align: center; } \ No newline at end of file diff --git a/apps/common/main/resources/less/dropdown-menu.less b/apps/common/main/resources/less/dropdown-menu.less index ae214c7ae..f6bf2ae7d 100644 --- a/apps/common/main/resources/less/dropdown-menu.less +++ b/apps/common/main/resources/less/dropdown-menu.less @@ -37,6 +37,7 @@ cursor: pointer; color: @text-normal-ie; color: @text-normal; + .font-size-normal(); &:focus, &.focus { outline: 0; diff --git a/apps/common/main/resources/less/extended-color-picker.less b/apps/common/main/resources/less/extended-color-picker.less index 92b809b6e..bff022489 100644 --- a/apps/common/main/resources/less/extended-color-picker.less +++ b/apps/common/main/resources/less/extended-color-picker.less @@ -14,7 +14,7 @@ label { font-weight: normal; - font-size: 12px; + .font-size-medium(); margin-bottom: 0; vertical-align: middle; @@ -30,7 +30,7 @@ input { font-weight: normal; - font-size: 12px; + .font-size-medium(); background-color: @background-normal; } diff --git a/apps/common/main/resources/less/header.less b/apps/common/main/resources/less/header.less index 999193ce3..add1377a0 100644 --- a/apps/common/main/resources/less/header.less +++ b/apps/common/main/resources/less/header.less @@ -285,7 +285,7 @@ .caption { cursor: pointer; - font-size: 9px; + .font-size-tiny(); margin-left: -18px; width: 16px; text-align: center; @@ -395,7 +395,7 @@ padding: 14px; width: 285px; - font-size: 12px; + .font-size-medium(); z-index: 1042; @@ -445,7 +445,7 @@ .user-name { color: @text-normal-ie; color: @text-normal; - font-size: 12px; + .font-size-medium(); .font-weight-bold(); white-space: nowrap; cursor: default; @@ -511,7 +511,7 @@ text-overflow: ellipsis; overflow: hidden; text-align: center; - font-size: 12px; + .font-size-medium(); line-height: 24px; padding: 1px 5px; background-color: transparent; diff --git a/apps/common/main/resources/less/hint-manager.less b/apps/common/main/resources/less/hint-manager.less index ef0541000..6ada91183 100644 --- a/apps/common/main/resources/less/hint-manager.less +++ b/apps/common/main/resources/less/hint-manager.less @@ -9,7 +9,7 @@ background-color: @background-alt-key-hint-ie; background-color: @background-alt-key-hint; color: @text-alt-key-hint; - font-size: 12px; + .font-size-medium(); line-height: 18px; padding: 0 4px; box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5); diff --git a/apps/common/main/resources/less/history.less b/apps/common/main/resources/less/history.less index 87bbf144a..3b3bcd74f 100644 --- a/apps/common/main/resources/less/history.less +++ b/apps/common/main/resources/less/history.less @@ -19,7 +19,7 @@ margin-top: 15px; padding-top: 4px; padding-left: 20px; - font-size: 13px; + .font-size-large(); cursor: pointer; &:hover { @@ -44,7 +44,7 @@ margin-top: 8px; padding-top: 4px; padding-left: 20px; - font-size: 13px; + .font-size-large(); cursor: pointer; &:hover { @@ -65,7 +65,7 @@ width: 100%; .box-shadow(none); margin: 0; - font-size: 12px; + .font-size-medium(); &:hover:not(.selected), &.over { @@ -98,7 +98,7 @@ .user-date { display: inline-block; - font-size: 12px; + .font-size-medium(); .font-weight-bold(); margin-right: 12px; white-space: nowrap; @@ -127,7 +127,7 @@ width: 100%; white-space: nowrap; overflow: hidden; - font-size: 12px; + .font-size-medium(); .font-weight-bold(); cursor: pointer; text-overflow: ellipsis; diff --git a/apps/common/main/resources/less/hsb-colorpicker.less b/apps/common/main/resources/less/hsb-colorpicker.less index 526418eec..2716d14bf 100644 --- a/apps/common/main/resources/less/hsb-colorpicker.less +++ b/apps/common/main/resources/less/hsb-colorpicker.less @@ -42,7 +42,7 @@ display: inline-block; width: 10px; height: 196px; - margin: 0 8px; + margin: 0 8px 0 10px; } .cnt-sat { @@ -51,7 +51,7 @@ position: relative; border: @scaled-one-px-value-ie solid @border-regular-control-ie; border: @scaled-one-px-value solid @border-regular-control; - background-position: -195px 0; + background-position: -196px 0; } .cnt-hb-arrow { @@ -78,10 +78,10 @@ width: 20px; height: 12px; margin-top: -6px; - margin-left: -4px; - margin-left: calc(-3px - @scaled-one-px-value); + margin-left: -5px; + margin-left: calc(-4px - @scaled-one-px-value); position: absolute; - background-position: -12px -196px; + background-position: -168px -200px; } .empty-color { diff --git a/apps/common/main/resources/less/input.less b/apps/common/main/resources/less/input.less index 9a2c93a5a..8412036eb 100644 --- a/apps/common/main/resources/less/input.less +++ b/apps/common/main/resources/less/input.less @@ -4,12 +4,15 @@ color: @text-normal-ie; color: @text-normal; .user-select(text); + .font-size-normal(); border: @scaled-one-px-value-ie solid @border-regular-control-ie; border: @scaled-one-px-value solid @border-regular-control; background-color: @background-normal-ie; background-color: @background-normal; - + &:-ms-input-placeholder { + color: @text-tertiary-ie; + } &:focus { border-color: @border-control-focus-ie; border-color: @border-control-focus; diff --git a/apps/common/main/resources/less/language-dialog.less b/apps/common/main/resources/less/language-dialog.less index 900d4d73e..04731f1e7 100644 --- a/apps/common/main/resources/less/language-dialog.less +++ b/apps/common/main/resources/less/language-dialog.less @@ -105,4 +105,5 @@ li { &.zh, &.zh-CN {background-position: -32px -180px;} &.ja, &.ja-JP {background-position: 0 -192px;} &.es-MX {background-position: -16px -192px;} + &.zh-TW {background-position: -32px -192px;} } diff --git a/apps/common/main/resources/less/loadmask.less b/apps/common/main/resources/less/loadmask.less index 19d53f109..e94d07397 100644 --- a/apps/common/main/resources/less/loadmask.less +++ b/apps/common/main/resources/less/loadmask.less @@ -47,7 +47,8 @@ } .asc-loadmask-title { - .fontsize(@font-size-large); + //.fontsize(@font-size-large); + .font-size-large(); margin: 0 8px 0 12px; white-space: pre-wrap; } @@ -99,7 +100,7 @@ } .text { - font-size: 14px; + .font-size-huge(); } } } diff --git a/apps/common/main/resources/less/plugins.less b/apps/common/main/resources/less/plugins.less index 607d738d8..19d5d8d78 100644 --- a/apps/common/main/resources/less/plugins.less +++ b/apps/common/main/resources/less/plugins.less @@ -93,7 +93,7 @@ width: 100%; margin-top: 2px; padding-right: 20px; - font-size: 12px; + .font-size-medium(); .font-weight-bold(); overflow: hidden; text-overflow: ellipsis; diff --git a/apps/common/main/resources/less/review-changes.less b/apps/common/main/resources/less/review-changes.less index 9361d71b8..f5d1b8404 100644 --- a/apps/common/main/resources/less/review-changes.less +++ b/apps/common/main/resources/less/review-changes.less @@ -12,7 +12,7 @@ #id-review-button-reject { span.caption { vertical-align: middle; - font-size: 12px; + .font-size-medium(); margin: 0 6px; } } diff --git a/apps/common/main/resources/less/searchdialog.less b/apps/common/main/resources/less/searchdialog.less index e96e720ef..a5203e496 100644 --- a/apps/common/main/resources/less/searchdialog.less +++ b/apps/common/main/resources/less/searchdialog.less @@ -125,7 +125,7 @@ border-bottom: @scaled-one-px-value solid @border-toolbar; label { - font-size: 12px; + .font-size-medium(); .font-weight-bold(); margin-top: 2px; } diff --git a/apps/common/main/resources/less/spinner.less b/apps/common/main/resources/less/spinner.less index 981dbffcd..9776d05d8 100644 --- a/apps/common/main/resources/less/spinner.less +++ b/apps/common/main/resources/less/spinner.less @@ -45,7 +45,7 @@ border-top: @scaled-one-px-value solid transparent; border-bottom: @scaled-one-px-value-ie solid transparent; border-bottom: @scaled-one-px-value solid transparent; - + font-size: 11px; // must be const value i { display: inline-block; width: 4px; diff --git a/apps/common/main/resources/less/synchronize-tip.less b/apps/common/main/resources/less/synchronize-tip.less index 2e3297484..1787fa02e 100644 --- a/apps/common/main/resources/less/synchronize-tip.less +++ b/apps/common/main/resources/less/synchronize-tip.less @@ -449,7 +449,7 @@ } .box-shadow(0 4px 15px -2px rgba(0, 0, 0, 0.5)); - font-size: 11px; + .font-size-normal(); } .asc-synchronizetip .tip-arrow:before { diff --git a/apps/common/main/resources/less/theme-colorpalette.less b/apps/common/main/resources/less/theme-colorpalette.less index 3c71fba63..f49260b6d 100644 --- a/apps/common/main/resources/less/theme-colorpalette.less +++ b/apps/common/main/resources/less/theme-colorpalette.less @@ -65,5 +65,11 @@ border:solid @scaled-one-px-value @border-color-shading; } } + + .palette-color-caption { + width:100%; + float:left; + .font-size-normal(); + } } diff --git a/apps/common/main/resources/less/toolbar.less b/apps/common/main/resources/less/toolbar.less index 7166cb578..359cea31b 100644 --- a/apps/common/main/resources/less/toolbar.less +++ b/apps/common/main/resources/less/toolbar.less @@ -32,7 +32,7 @@ .box-tabs { height: @height-tabs; - font-size: 12px; + .font-size-medium(); display: flex; align-items: stretch; @@ -100,7 +100,7 @@ padding: 0 12px; text-decoration: none; cursor: default; - font-size: 12px; + .font-size-medium(); text-align: center; color: @text-toolbar-header-ie; color: @text-toolbar-header; @@ -641,10 +641,13 @@ } .btn-toolbar { - &:active { - svg.icon { - fill: @icon-toolbar-header-ie; - fill: @icon-toolbar-header; + &:active, + &.active { + &:not(.disabled) { + svg.icon { + fill: @icon-normal-pressed-ie; + fill: @icon-normal-pressed; + } } } diff --git a/apps/common/main/resources/less/tooltip.less b/apps/common/main/resources/less/tooltip.less index 45d4ae489..73c0418ec 100644 --- a/apps/common/main/resources/less/tooltip.less +++ b/apps/common/main/resources/less/tooltip.less @@ -39,7 +39,7 @@ } .tooltip-inner { - font-size: 11px; + .font-size-normal(); background-color: @background-normal-ie; background-color: @background-normal; color: @text-normal-ie; @@ -58,6 +58,10 @@ .link-tooltip .tooltip-inner { max-width: 500px; + .review-date { + .font-size-small(); + opacity: 0.7; + } } .auto-tooltip .tooltip-inner { diff --git a/apps/common/main/resources/less/variables.less b/apps/common/main/resources/less/variables.less index 5ebe3b98a..bc7d1e824 100644 --- a/apps/common/main/resources/less/variables.less +++ b/apps/common/main/resources/less/variables.less @@ -60,11 +60,16 @@ @font-family-serif: Georgia, "Times New Roman", Times, serif; @font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace; @font-family-tahoma: tahoma, arial, verdana, sans-serif; -@font-family-base: @font-family-sans-serif; +@font-family-base: var(--font-family-base-custom, @font-family-sans-serif), @font-family-sans-serif; + +@font-size-base-app: 11px; +@font-size-base-app: var(--font-size-base-app-custom, 11px); -@font-size-base: 11px; -@font-size-large: 13px; @font-size-small: 9px; +@font-size-base: 11px; +@font-size-medium: 12px; +@font-size-large: 13px; +@font-size-huge: 14px; @font-size-h1: floor(@font-size-base * 2.6); @font-size-h2: floor(@font-size-base * 2.15); @@ -194,7 +199,7 @@ //** Small `.form-control` border radius @input-border-radius-small: @border-radius-small; -@input-color-placeholder: #cfcfcf; // @gray; +@input-color-placeholder: @text-tertiary; //#cfcfcf; // @gray; @input-height-base: (floor(@font-size-base * @line-height-base) + (@padding-base-vertical * 2) + 5); @input-height-large: (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2); diff --git a/apps/common/main/resources/less/window.less b/apps/common/main/resources/less/window.less index 5ba0d02e7..77a2b5099 100644 --- a/apps/common/main/resources/less/window.less +++ b/apps/common/main/resources/less/window.less @@ -99,7 +99,7 @@ color: @text-normal-ie; color: @text-normal; text-align: center; - font-size: 12px; + .font-size-medium(); font-weight: 700; letter-spacing: 0.01em; vertical-align: bottom; @@ -219,7 +219,7 @@ padding-left: 60px; span { - font-size: 12px; + .font-size-medium(); white-space: nowrap; a { @@ -335,6 +335,9 @@ display: inline-block; } } + label { + .font-size-normal(); + } } .footer { diff --git a/apps/common/mobile/lib/controller/SharingSettings.jsx b/apps/common/mobile/lib/controller/SharingSettings.jsx new file mode 100644 index 000000000..ce3ae4844 --- /dev/null +++ b/apps/common/mobile/lib/controller/SharingSettings.jsx @@ -0,0 +1,73 @@ +import React, {useEffect} from 'react'; +import ViewSharingSettings from "../view/SharingSettings"; +import {observer, inject} from "mobx-react"; +import { f7 } from 'framework7-react'; + +const SharingSettingsController = props => { + const appOptions = props.storeAppOptions; + const canRequestSharingSettings = appOptions.canRequestSharingSettings; + const sharingSettingsUrl = appOptions.sharingSettingsUrl; + + const changeAccessRights = () => { + if (canRequestSharingSettings) { + Common.Gateway.requestSharingSettings(); + } + }; + + const setSharingSettings = data => { + if (data) { + Common.Notifications.trigger('collaboration:sharingupdate', data.sharingSettings); + } + } + + const onMessage = msg => { + if(msg) { + const msgData = JSON.parse(msg.data); + + if (msgData && msgData?.Referer == "onlyoffice") { + if (msgData?.needUpdate) { + setSharingSettings(msgData.sharingSettings); + } + f7.views.current.router.back(); + } + } + }; + + const bindWindowEvents = () => { + if (window.addEventListener) { + window.addEventListener("message", onMessage, false); + } else if (window.attachEvent) { + window.attachEvent("onmessage", onMessage); + } + }; + + const unbindWindowEvents = () => { + if (window.removeEventListener) { + window.removeEventListener("message", onMessage); + } else if (window.detachEvent) { + window.detachEvent("onmessage", onMessage); + } + }; + + useEffect(() => { + bindWindowEvents(); + Common.Notifications.on('collaboration:sharing', changeAccessRights); + + if (!!sharingSettingsUrl && sharingSettingsUrl.length || canRequestSharingSettings) { + Common.Gateway.on('showsharingsettings', changeAccessRights); + Common.Gateway.on('setsharingsettings', setSharingSettings); + } + + return () => { + unbindWindowEvents(); + } + }, []); + + return ( + + ); +}; + +export default inject('storeAppOptions')(observer(SharingSettingsController)); \ No newline at end of file diff --git a/apps/common/mobile/lib/controller/Themes.js b/apps/common/mobile/lib/controller/Themes.js index 2c076a15f..f71656086 100644 --- a/apps/common/mobile/lib/controller/Themes.js +++ b/apps/common/mobile/lib/controller/Themes.js @@ -1,5 +1,5 @@ import { Dom7 } from 'framework7' -import { LocalStorage } from "../../utils/LocalStorage"; +import { LocalStorage } from "../../utils/LocalStorage.mjs"; class ThemesController { constructor() { diff --git a/apps/common/mobile/lib/controller/collaboration/Collaboration.jsx b/apps/common/mobile/lib/controller/collaboration/Collaboration.jsx index 31e8b7b5f..f7eee5b16 100644 --- a/apps/common/mobile/lib/controller/collaboration/Collaboration.jsx +++ b/apps/common/mobile/lib/controller/collaboration/Collaboration.jsx @@ -1,7 +1,7 @@ import React, { Component } from 'react' import { f7 } from 'framework7-react'; import {observer, inject} from "mobx-react" -import { LocalStorage } from '../../../utils/LocalStorage'; +import { LocalStorage } from '../../../utils/LocalStorage.mjs'; import { withTranslation } from 'react-i18next'; class CollaborationController extends Component { diff --git a/apps/common/mobile/lib/controller/collaboration/Comments.jsx b/apps/common/mobile/lib/controller/collaboration/Comments.jsx index 47a72a6b6..55eae7387 100644 --- a/apps/common/mobile/lib/controller/collaboration/Comments.jsx +++ b/apps/common/mobile/lib/controller/collaboration/Comments.jsx @@ -3,7 +3,7 @@ import { inject, observer } from "mobx-react"; import { f7 } from 'framework7-react'; import {Device} from '../../../../../common/mobile/utils/device'; import { withTranslation} from 'react-i18next'; -import { LocalStorage } from '../../../utils/LocalStorage'; +import { LocalStorage } from '../../../utils/LocalStorage.mjs'; import {AddComment, EditComment, AddReply, EditReply, ViewComments, ViewCurrentComments} from '../../view/collaboration/Comments'; diff --git a/apps/common/mobile/lib/controller/collaboration/Review.jsx b/apps/common/mobile/lib/controller/collaboration/Review.jsx index 3fe87e560..820bfa2ea 100644 --- a/apps/common/mobile/lib/controller/collaboration/Review.jsx +++ b/apps/common/mobile/lib/controller/collaboration/Review.jsx @@ -4,7 +4,7 @@ import {observer, inject} from "mobx-react" import { withTranslation } from 'react-i18next'; import {PageReview, PageReviewChange} from "../../view/collaboration/Review"; -import {LocalStorage} from "../../../utils/LocalStorage"; +import {LocalStorage} from "../../../utils/LocalStorage.mjs"; class InitReview extends Component { constructor(props){ @@ -277,7 +277,7 @@ class ReviewChange extends Component { } if (value.Get_VertAlign() !== undefined) { proptext.length > 0 && proptext.push(); - proptext.push(); + proptext.push(); } if (value.Get_Color() !== undefined) { proptext.length > 0 && proptext.push(); diff --git a/apps/common/mobile/lib/view/Search.jsx b/apps/common/mobile/lib/view/Search.jsx index a5a66cfb2..7123cd6ed 100644 --- a/apps/common/mobile/lib/view/Search.jsx +++ b/apps/common/mobile/lib/view/Search.jsx @@ -1,9 +1,6 @@ import React, { Component } from 'react'; -import { Searchbar, Popover, Popup, View, Page, List, ListItem, Navbar, NavRight, Link } from 'framework7-react'; -import { Toggle } from 'framework7-react'; -import { f7 } from 'framework7-react'; -import { Dom7 } from 'framework7'; +import { Popover, Popup, View, f7 } from 'framework7-react'; import { Device } from '../../../../common/mobile/utils/device'; import { observable, runInAction } from "mobx"; import { observer } from "mobx-react"; @@ -105,11 +102,7 @@ class SearchView extends Component { $editor.on('pointerdown', this.onEditorTouchStart); $editor.on('pointerup', this.onEditorTouchEnd); - if( !this.searchbar ) { - this.searchbar = f7.searchbar.get('.searchbar'); - } - - if( !this.searchbar ) { + if(!this.searchbar) { this.searchbar = f7.searchbar.create({ el: '.searchbar', customSearch: true, diff --git a/apps/common/mobile/lib/view/SharingSettings.jsx b/apps/common/mobile/lib/view/SharingSettings.jsx index 22f60e4b8..6240961f5 100644 --- a/apps/common/mobile/lib/view/SharingSettings.jsx +++ b/apps/common/mobile/lib/view/SharingSettings.jsx @@ -1,22 +1,29 @@ -import React, { Component, useEffect } from 'react'; -import { observer, inject } from "mobx-react"; -import { f7, Popover, List, ListItem, Navbar, NavRight, Sheet, BlockTitle, Page, View, Icon, Link } from 'framework7-react'; +import React, { useEffect } from 'react'; +import { Navbar, Page } from 'framework7-react'; import { useTranslation } from 'react-i18next'; -import { Device } from "../../utils/device"; -const SharingSettings = props => { +const ViewSharingSettings = props => { const { t } = useTranslation(); + const sharingSettingsUrl = props.sharingSettingsUrl; const _t = t('Common.Collaboration', {returnObjects: true}); - const url = 'https://nct.onlyoffice.com/Products/Files/Share.aspx?fileid=142278'; + + function resizeHeightIframe(selector) { + const iFrame = document.querySelector(selector); + iFrame.height = iFrame.contentWindow.document.body.scrollHeight; + }; + + useEffect(() => { + resizeHeightIframe('#sharing-placeholder iframe'); + }, []); return (
- +
) -} +}; -export default SharingSettings; \ No newline at end of file +export default ViewSharingSettings; \ No newline at end of file diff --git a/apps/common/mobile/lib/view/collaboration/Collaboration.jsx b/apps/common/mobile/lib/view/collaboration/Collaboration.jsx index d029838b9..5eed9bd99 100644 --- a/apps/common/mobile/lib/view/collaboration/Collaboration.jsx +++ b/apps/common/mobile/lib/view/collaboration/Collaboration.jsx @@ -1,19 +1,19 @@ import React, { Component, useEffect } from 'react'; import { observer, inject } from "mobx-react"; -import { Popover, List, ListItem, Navbar, NavRight, Sheet, BlockTitle, Page, View, Icon, Link } from 'framework7-react'; -import { f7 } from 'framework7-react'; +import { Popover, List, ListItem, Navbar, NavRight, Sheet, BlockTitle, Page, View, Icon, Link, f7 } from 'framework7-react'; import { useTranslation } from 'react-i18next'; import {Device} from "../../../utils/device"; - import {ReviewController, ReviewChangeController} from "../../controller/collaboration/Review"; import {PageDisplayMode} from "./Review"; - import {ViewCommentsController, ViewCommentsSheetsController} from "../../controller/collaboration/Comments"; +// import SharingSettings from "../SharingSettings"; +import SharingSettingsController from "../../controller/SharingSettings"; const PageUsers = inject("users")(observer(props => { const { t } = useTranslation(); const _t = t('Common.Collaboration', {returnObjects: true}); const storeUsers = props.users; + return ( @@ -81,6 +81,10 @@ const routes = [ allComments: true } } + }, + { + path: '/sharing-settings/', + component: SharingSettingsController } ]; @@ -88,6 +92,7 @@ const PageCollaboration = inject('storeAppOptions', 'users')(observer(props => { const { t } = useTranslation(); const _t = t('Common.Collaboration', {returnObjects: true}); const appOptions = props.storeAppOptions; + const sharingSettingsUrl = appOptions.sharingSettingsUrl; const isViewer = appOptions.isViewer; return ( @@ -103,6 +108,11 @@ const PageCollaboration = inject('storeAppOptions', 'users')(observer(props => { } + {sharingSettingsUrl && + + + + } {props.users.editUsers.length > 0 && @@ -122,8 +132,8 @@ const PageCollaboration = inject('storeAppOptions', 'users')(observer(props => { ) - })); + class CollaborationView extends Component { constructor(props) { super(props); diff --git a/apps/common/mobile/lib/view/collaboration/Comments.jsx b/apps/common/mobile/lib/view/collaboration/Comments.jsx index 7fc345026..55d9a621f 100644 --- a/apps/common/mobile/lib/view/collaboration/Comments.jsx +++ b/apps/common/mobile/lib/view/collaboration/Comments.jsx @@ -637,6 +637,7 @@ const ViewComments = inject("storeComments", "storeAppOptions", "storeReview")(o const isAndroid = Device.android; const displayMode = storeReview.displayMode; const isViewer = storeAppOptions.isViewer; + const canEditComments = storeAppOptions.canEditComments; const viewMode = !storeAppOptions.canComments; const comments = storeComments.groupCollectionFilter || storeComments.collectionComments; const isEdit = storeAppOptions.isEdit || storeAppOptions.isRestrictedEdit; @@ -677,8 +678,8 @@ const ViewComments = inject("storeComments", "storeAppOptions", "storeReview")(o
{isEdit && !viewMode &&
- {(comment.editable && displayMode === 'markup' && !wsProps?.Objects && !isViewer) &&
{onResolveComment(comment);}}>
} - {(displayMode === 'markup' && !wsProps?.Objects && !isViewer) && + {(comment.editable && displayMode === 'markup' && !wsProps?.Objects && (!isViewer || canEditComments)) &&
{onResolveComment(comment);}}>
} + {(displayMode === 'markup' && !wsProps?.Objects && (!isViewer || canEditComments)) &&
{setComment(comment); openActionComment(true);}}> @@ -708,7 +709,7 @@ const ViewComments = inject("storeComments", "storeAppOptions", "storeReview")(o
{reply.date}
- {isEdit && !viewMode && reply.editable && !isViewer && + {isEdit && !viewMode && reply.editable && (!isViewer || canEditComments) &&
{setComment(comment); setReply(reply); openActionReply(true);}} @@ -748,6 +749,7 @@ const CommentList = inject("storeComments", "storeAppOptions", "storeReview")(ob const isAndroid = Device.android; const displayMode = storeReview.displayMode; const isViewer = storeAppOptions.isViewer; + const canEditComments = storeAppOptions.canEditComments; const viewMode = !storeAppOptions.canComments; const isEdit = storeAppOptions.isEdit || storeAppOptions.isRestrictedEdit; const comments = storeComments.showComments; @@ -787,7 +789,7 @@ const CommentList = inject("storeComments", "storeAppOptions", "storeReview")(ob {isEdit && !viewMode && - {onCommentMenuClick('addReply', comment);}}>{_t.textAddReply} + {onCommentMenuClick('addReply', comment);}}>{_t.textAddReply} }
@@ -808,8 +810,8 @@ const CommentList = inject("storeComments", "storeAppOptions", "storeReview")(ob
{isEdit && !viewMode &&
- {(comment.editable && displayMode === 'markup' && !wsProps?.Objects && !isViewer) &&
{onResolveComment(comment);}}>
} - {(displayMode === 'markup' && !wsProps?.Objects && !isViewer) && + {(comment.editable && displayMode === 'markup' && !wsProps?.Objects && (!isViewer || canEditComments)) &&
{onResolveComment(comment);}}>
} + {(displayMode === 'markup' && !wsProps?.Objects && (!isViewer || canEditComments)) &&
{openActionComment(true);}}> @@ -839,7 +841,7 @@ const CommentList = inject("storeComments", "storeAppOptions", "storeReview")(ob
{reply.date}
- {isEdit && !viewMode && reply.editable && !isViewer && + {isEdit && !viewMode && reply.editable && (!isViewer || canEditComments) &&
{setReply(reply); openActionReply(true);}} diff --git a/apps/common/mobile/resources/css/skeleton.css b/apps/common/mobile/resources/css/skeleton.css index 0ac99096e..85c8c2031 100644 --- a/apps/common/mobile/resources/css/skeleton.css +++ b/apps/common/mobile/resources/css/skeleton.css @@ -116,3 +116,31 @@ body.theme-type-dark { 50% { opacity:1; } 100% { opacity:0.1; } } + +.md .navbar.navbar-with-logo { + height: 34px; +} + +.ios .navbar.navbar-with-logo { + height: 26px; +} + +:root .theme-type-dark { + --f7-navbar-bg-color: #232323; + --f7-subnavbar-bg-color: #232323; +} + +.md .word-editor { + --f7-navbar-bg-color: var(--background-navbar-word, #446995); + --f7-subnavbar-bg-color: var(--background-navbar-word, #446995); +} + +.md .cell-editor { + --f7-navbar-bg-color: var(--background-navbar-word, #40865c); + --f7-subnavbar-bg-color: var(--background-navbar-word, #40865c); +} + +.md .slide-editor { + --f7-navbar-bg-color: var(--background-navbar-word, #aa5252); + --f7-subnavbar-bg-color: var(--background-navbar-word, #aa5252); +} \ No newline at end of file diff --git a/apps/common/mobile/resources/less/common.less b/apps/common/mobile/resources/less/common.less index 39292d4b3..0b4931c60 100644 --- a/apps/common/mobile/resources/less/common.less +++ b/apps/common/mobile/resources/less/common.less @@ -25,12 +25,12 @@ } } -.navbar { - .title { - text-overflow: initial; - white-space: normal; - } -} +//.navbar { +// .title { +// text-overflow: initial; +// white-space: normal; +// } +//} .navbar-hidden { transform: translate3d(0, calc(-1 * (var(--f7-navbar-height) + var(--f7-subnavbar-height))), 0); @@ -48,9 +48,12 @@ .subnavbar-inner { padding: 0; .title { - white-space: nowrap; + //white-space: nowrap; overflow: hidden; - text-overflow: ellipsis; + text-overflow: initial; + margin: 0; + padding: 0; + flex-shrink: initial; } } .icon-back { @@ -1098,6 +1101,19 @@ input[type="number"]::-webkit-inner-spin-button { padding-bottom: 60px; } +// Picker +.picker-columns { + justify-content: space-around; +} + +.row-picker { + .col-50 { + color: @text-secondary; + text-align: center; + } +} + + diff --git a/apps/common/mobile/resources/less/icons.less b/apps/common/mobile/resources/less/icons.less index 6efda00eb..b55a32e48 100644 --- a/apps/common/mobile/resources/less/icons.less +++ b/apps/common/mobile/resources/less/icons.less @@ -23,7 +23,7 @@ i.icon { &.icon-collaboration { width: 24px; height: 24px; - .encoded-svg-mask(''); + .encoded-svg-mask(''); } &.icon-cancellation { width: 24px; @@ -87,6 +87,6 @@ i.icon { &.icon-sharing-settings { width: 24px; height: 24px; - .encoded-svg-mask('') + .encoded-svg-mask('') } } diff --git a/apps/common/mobile/resources/less/material/icons.less b/apps/common/mobile/resources/less/material/icons.less index df8e84146..914e15bc3 100644 --- a/apps/common/mobile/resources/less/material/icons.less +++ b/apps/common/mobile/resources/less/material/icons.less @@ -32,7 +32,7 @@ &.icon-collaboration { width: 24px; height: 24px; - .encoded-svg-mask('', @toolbar-icons); + .encoded-svg-mask('', @toolbar-icons); } &.icon-edit { width: 22px; diff --git a/apps/common/mobile/utils/LocalStorage.js b/apps/common/mobile/utils/LocalStorage.mjs similarity index 89% rename from apps/common/mobile/utils/LocalStorage.js rename to apps/common/mobile/utils/LocalStorage.mjs index fd0c7fe90..bc058cff8 100644 --- a/apps/common/mobile/utils/LocalStorage.js +++ b/apps/common/mobile/utils/LocalStorage.mjs @@ -9,6 +9,7 @@ class LocalStorage { this._store = {}; this._prefix = 'mobile-'; + this._common_keys = ['guest-id', 'guest-username']; try { this._isAllowed = !!window.localStorage; @@ -52,7 +53,9 @@ class LocalStorage { } setItem(name, value, just) { - name = this._prefix + name; + if ( !this._common_keys.includes(value) ) + name = this._prefix + name; + if ( this._isAllowed ) { try { localStorage.setItem(name, value); @@ -67,7 +70,9 @@ class LocalStorage { } getItem(name) { - name = this._prefix + name; + if ( !this._common_keys.includes(name) ) + name = this._prefix + name; + if ( this._isAllowed ) return localStorage.getItem(name); else return this._store[name]===undefined ? null : this._store[name]; diff --git a/apps/common/mobile/utils/htmlutils.js b/apps/common/mobile/utils/htmlutils.js index 6f04e0041..7c1cbc0b5 100644 --- a/apps/common/mobile/utils/htmlutils.js +++ b/apps/common/mobile/utils/htmlutils.js @@ -15,11 +15,11 @@ if ( localStorage && localStorage.getItem('mobile-mode-direction') === 'rtl' ) { load_stylesheet('./css/framework7.css') } -let obj = !localStorage ? {id: 'theme-light', type: 'light'} : JSON.parse(localStorage.getItem("ui-theme")); +let obj = !localStorage ? {id: 'theme-light', type: 'light'} : JSON.parse(localStorage.getItem("mobile-ui-theme")); if ( !obj ) { obj = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? {id: 'theme-dark', type: 'dark'} : {id: 'theme-light', type: 'light'}; - localStorage && localStorage.setItem("ui-theme", JSON.stringify(obj)); + localStorage && localStorage.setItem("mobile-ui-theme", JSON.stringify(obj)); } -document.body.classList.add(`theme-type-${obj.type}`); +document.body.classList.add(`theme-type-${obj.type}`, `${window.asceditor}-editor`); diff --git a/apps/documenteditor/embed/index.html b/apps/documenteditor/embed/index.html index da514210f..c28c66285 100644 --- a/apps/documenteditor/embed/index.html +++ b/apps/documenteditor/embed/index.html @@ -229,7 +229,7 @@ - + diff --git a/apps/documenteditor/embed/index.html.deploy b/apps/documenteditor/embed/index.html.deploy index 0bc36adf3..f2ec69cef 100644 --- a/apps/documenteditor/embed/index.html.deploy +++ b/apps/documenteditor/embed/index.html.deploy @@ -220,7 +220,7 @@ - + - + diff --git a/apps/documenteditor/embed/index_loader.html.deploy b/apps/documenteditor/embed/index_loader.html.deploy index a944efbb8..f7ffdb523 100644 --- a/apps/documenteditor/embed/index_loader.html.deploy +++ b/apps/documenteditor/embed/index_loader.html.deploy @@ -320,7 +320,7 @@ - + diff --git a/apps/documenteditor/embed/js/ApplicationController.js b/apps/documenteditor/embed/js/ApplicationController.js index ae1d89786..9bd89517b 100644 --- a/apps/documenteditor/embed/js/ApplicationController.js +++ b/apps/documenteditor/embed/js/ApplicationController.js @@ -753,6 +753,19 @@ DE.ApplicationController = new(function(){ message = me.errorTokenExpire; break; + case Asc.c_oAscError.ID.ConvertationOpenFormat: + if (errData === 'pdf') + message = me.errorInconsistentExtPdf.replace('%1', docConfig.fileType || ''); + else if (errData === 'docx') + message = me.errorInconsistentExtDocx.replace('%1', docConfig.fileType || ''); + else if (errData === 'xlsx') + message = me.errorInconsistentExtXlsx.replace('%1', docConfig.fileType || ''); + else if (errData === 'pptx') + message = me.errorInconsistentExtPptx.replace('%1', docConfig.fileType || ''); + else + message = me.errorInconsistentExt; + break; + default: message = me.errorDefaultMessage.replace('%1', id); break; @@ -962,6 +975,11 @@ DE.ApplicationController = new(function(){ errorLoadingFont: 'Fonts are not loaded.
Please contact your Document Server administrator.', errorTokenExpire: 'The document security token has expired.
Please contact your Document Server administrator.', openErrorText: 'An error has occurred while opening the file', - textCtrl: 'Ctrl' + textCtrl: 'Ctrl', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
The file content does not match the file extension.' } })(); \ No newline at end of file diff --git a/apps/documenteditor/embed/locale/ca.json b/apps/documenteditor/embed/locale/ca.json index b7de2c578..f108ccd70 100644 --- a/apps/documenteditor/embed/locale/ca.json +++ b/apps/documenteditor/embed/locale/ca.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "El fitxer està protegit amb contrasenya i no es pot obrir.", "DE.ApplicationController.errorFileSizeExceed": "La mida del fitxer supera el límit establert per al servidor.
Contacteu amb l'administrador del servidor de documents per a obtenir més informació.", "DE.ApplicationController.errorForceSave": "S'ha produït un error en desar el fitxer. Utilitzeu l'opció «Anomena i baixa» per desar el fitxer al disc dur de l’ordinador o torneu-ho a provar més endavant.", + "DE.ApplicationController.errorInconsistentExt": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer no es correspon amb la seva extensió.", + "DE.ApplicationController.errorInconsistentExtDocx": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a documents de text (per exemple, docx), però el fitxer té l'extensió incoherent: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a un dels formats següents: pdf/djvu/xps/oxps, però el fitxer té l'extensió incoherent: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a presentacions (per exemple, pptx), però el fitxer té l'extensió incongruent: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a full de càlcul (per exemple, xlsx), però el fitxer té l'extensió incoherent: %1.", "DE.ApplicationController.errorLoadingFont": "No s'han carregat les lletres tipogràfiques.
Contacteu amb l'administrador del Servidor de Documents.", "DE.ApplicationController.errorSubmit": "No s'ha pogut enviar.", "DE.ApplicationController.errorTokenExpire": "El testimoni de seguretat del document ha caducat.
Contacteu amb l'administrador del servidor de documents.", diff --git a/apps/documenteditor/embed/locale/de.json b/apps/documenteditor/embed/locale/de.json index 84108feb6..778900559 100644 --- a/apps/documenteditor/embed/locale/de.json +++ b/apps/documenteditor/embed/locale/de.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Das Dokument ist kennwortgeschützt und kann nicht geöffnet werden.", "DE.ApplicationController.errorFileSizeExceed": "Die Dateigröße überschreitet die für Ihren Server festgelegte Einschränkung.
Weitere Informationen können Sie von Ihrem Document Server-Administrator erhalten.", "DE.ApplicationController.errorForceSave": "Beim Speichern der Datei ist ein Fehler aufgetreten. Verwenden Sie die Option \"Herunterladen als\", um die Datei auf Ihrer Computerfestplatte zu speichern oder versuchen Sie es später erneut.", + "DE.ApplicationController.errorInconsistentExt": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei stimmt nicht mit der Dateierweiterung überein.", + "DE.ApplicationController.errorInconsistentExtDocx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht Textdokumenten (z.B. docx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht einem der folgenden Formate: pdf/djvu/xps/oxps, aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht Präsentationen (z.B. pptx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht Tabellenkalkulationen (z.B. xlsx), aber die Datei hat die inkonsistente Erweiterung: %1.", "DE.ApplicationController.errorLoadingFont": "Schriftarten nicht hochgeladen.
Bitte wenden Sie sich an Administratoren von Ihrem Document Server.", "DE.ApplicationController.errorSubmit": "Fehler beim Senden.", "DE.ApplicationController.errorTokenExpire": "Sicherheitstoken des Dokuments ist abgelaufen.
Wenden Sie sich an Ihren Serveradministrator.", diff --git a/apps/documenteditor/embed/locale/el.json b/apps/documenteditor/embed/locale/el.json index ce18851e5..22eb27a84 100644 --- a/apps/documenteditor/embed/locale/el.json +++ b/apps/documenteditor/embed/locale/el.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Το αρχείο προστατεύεται με συνθηματικό και δεν μπορεί να ανοίξει.", "DE.ApplicationController.errorFileSizeExceed": "Το μέγεθος του αρχείου υπερβαίνει το όριο που έχει οριστεί για τον διακομιστή σας.
Παρακαλούμε επικοινωνήστε με τον διαχειριστή του διακομιστή εγγράφων για λεπτομέρειες.", "DE.ApplicationController.errorForceSave": "Παρουσιάστηκε σφάλμα κατά την αποθήκευση του αρχείου. Χρησιμοποιήστε την επιλογή «Λήψη ως» για να αποθηκεύσετε το αρχείο στον σκληρό δίσκο του υπολογιστή σας ή δοκιμάστε ξανά αργότερα.", + "DE.ApplicationController.errorInconsistentExt": "Συνέβη ένα σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου δεν αντιστοιχούν στην κατάληξή του ονόματός του.", + "DE.ApplicationController.errorInconsistentExtDocx": "Συνέβη ένα σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε αρχεία κειμένου (π.χ. docx), αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Συνέβη ένα σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε μια από τις ακόλουθες μορφές: pdf/djvu/xps/oxps, αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Συνέβη ένα σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε παρουσιάσεις (π.χ. pptx), αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Συνέβη ένα σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε παρουσιάσεις (π.χ. xlsx), αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", "DE.ApplicationController.errorLoadingFont": "Οι γραμματοσειρές δεν έχουν φορτωθεί.
Παρακαλούμε επικοινωνήστε με τον διαχειριστή του Εξυπηρετητή Εγγράφων σας.", "DE.ApplicationController.errorSubmit": "Η υποβολή απέτυχε.", "DE.ApplicationController.errorTokenExpire": "Το κλειδί ασφαλείας του εγγράφου έληξε.
Παρακαλούμε επικοινωνήστε με τον διαχειριστή του Εξυπηρετητή Εγγράφων.", @@ -26,6 +31,7 @@ "DE.ApplicationController.scriptLoadError": "Η σύνδεση είναι πολύ αργή, δεν ήταν δυνατή η φόρτωση ορισμένων στοιχείων. Φορτώστε ξανά τη σελίδα.", "DE.ApplicationController.textAnonymous": "Ανώνυμος", "DE.ApplicationController.textClear": "Εκκαθάριση Όλων των Πεδίων", + "DE.ApplicationController.textCtrl": "Ctrl", "DE.ApplicationController.textGotIt": "Ελήφθη", "DE.ApplicationController.textGuest": "Επισκέπτης", "DE.ApplicationController.textLoadingDocument": "Φόρτωση εγγράφου", diff --git a/apps/documenteditor/embed/locale/en.json b/apps/documenteditor/embed/locale/en.json index 19ebd329f..7e4bf26f8 100644 --- a/apps/documenteditor/embed/locale/en.json +++ b/apps/documenteditor/embed/locale/en.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "The file is password protected and cannot be opened.", "DE.ApplicationController.errorFileSizeExceed": "The file size exceeds the limitation set for your server.
Please contact your Document Server administrator for details.", "DE.ApplicationController.errorForceSave": "An error occurred while saving the file. Please use the 'Download as' option to save the file to your computer hard drive or try again later.", + "DE.ApplicationController.errorInconsistentExt": "An error has occurred while opening the file.
The file content does not match the file extension.", + "DE.ApplicationController.errorInconsistentExtDocx": "An error has occurred while opening the file.
The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "An error has occurred while opening the file.
The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "An error has occurred while opening the file.
The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "An error has occurred while opening the file.
The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "DE.ApplicationController.errorLoadingFont": "Fonts are not loaded.
Please contact your Document Server administrator.", "DE.ApplicationController.errorSubmit": "Submit failed.", "DE.ApplicationController.errorTokenExpire": "The document security token has expired.
Please contact your Document Server administrator.", diff --git a/apps/documenteditor/embed/locale/es.json b/apps/documenteditor/embed/locale/es.json index f9cdaf4c1..258214100 100644 --- a/apps/documenteditor/embed/locale/es.json +++ b/apps/documenteditor/embed/locale/es.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "El archivo está protegido por una contraseña y no se puede abrir.", "DE.ApplicationController.errorFileSizeExceed": "El tamaño del archivo supera el límiete establecido por su servidor.
Contacte con el administrador del servidor de documentos para obtener más detalles.", "DE.ApplicationController.errorForceSave": "Se ha producido un error al guardar el archivo. Utilice la opción \"Descargar como\" para guardar el archivo en el disco duro de su ordenador o inténtelo más tarde.", + "DE.ApplicationController.errorInconsistentExt": "Se ha producido un error al abrir el archivo.
El contenido del archivo no coincide con la extensión del mismo.", + "DE.ApplicationController.errorInconsistentExtDocx": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a documentos de texto (por ejemplo, docx), pero el archivo tiene extensión inconsistente: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a uno de los siguientes formatos: pdf/djvu/xps/oxps, pero el archivo tiene extensión inconsistente: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a presentaciones (por ejemplo, pptx), pero el archivo tiene extensión inconsistente: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a hojas de cálculo (por ejemplo, xlsx), pero el archivo tiene extensión inconsistente: %1.", "DE.ApplicationController.errorLoadingFont": "Los tipos de letra no están cargados.
Contacte con el administrador del servidor de documentos.", "DE.ApplicationController.errorSubmit": "Error al enviar.", "DE.ApplicationController.errorTokenExpire": "El token de seguridad del documento ha expirado.
Contacte con el administrador del servidor de documentos", diff --git a/apps/documenteditor/embed/locale/eu.json b/apps/documenteditor/embed/locale/eu.json index b98020ed1..c98beccac 100644 --- a/apps/documenteditor/embed/locale/eu.json +++ b/apps/documenteditor/embed/locale/eu.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Fitxategia pasahitzez babestua dago eta ezin da ireki.", "DE.ApplicationController.errorFileSizeExceed": "Fitxategiaren tamainak zure zerbitzarirako ezarritako muga gainditzen du.
Jarri harremanetan dokumentu-zerbitzariaren administratzailearekin informazio gehiago lortzeko.", "DE.ApplicationController.errorForceSave": "Errore bat gertatu da dokumentua gordetzean.
Erabili 'Deskargatu honela' aukera fitxategia zure ordenagailuko disko gogorrean gordetzeko edo saiatu berriro geroago.", + "DE.ApplicationController.errorInconsistentExt": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia eta luzapena ez datoz bat.", + "DE.ApplicationController.errorInconsistentExtDocx": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia testu-dokumentu bati dagokio (adibidez, docx), baina fitxategiaren luzapena ez dator bat: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia ondorengo formatuetako bati dagokio: pdf/djvu/xps/oxps, baina fitxategiaren luzapena ez dator bat: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia aurkezpen bati dagokio (adibidez, pptx), baina fitxategiaren luzapena ez dator bat: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia kalkulu-orri bati dagokio (adibidez, xlsx), baina fitxategiaren luzapena ez dator bat: %1.", "DE.ApplicationController.errorLoadingFont": "Letra-tipoak ez dira kargatu.
Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "DE.ApplicationController.errorSubmit": "Huts egin du bidaltzean.", "DE.ApplicationController.errorTokenExpire": "Dokumentuaren segurtasun-tokena iraungi da.
Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", diff --git a/apps/documenteditor/embed/locale/fr.json b/apps/documenteditor/embed/locale/fr.json index 0b47feac9..e53864f10 100644 --- a/apps/documenteditor/embed/locale/fr.json +++ b/apps/documenteditor/embed/locale/fr.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Le fichier est protégé par le mot de passe et ne peut pas être ouvert.", "DE.ApplicationController.errorFileSizeExceed": "La taille du fichier dépasse les limites établies sur votre serveur.
Veuillez contacter votre administrateur de Document Server pour obtenir plus d'informations. ", "DE.ApplicationController.errorForceSave": "Une erreur est survenue lors de l'enregistrement du fichier. Veuillez utiliser l'option «Télécharger en tant que» pour enregistrer le fichier sur le disque dur de votre ordinateur ou réessayer plus tard.", + "DE.ApplicationController.errorInconsistentExt": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier ne correspond pas à l'extension du fichier.", + "DE.ApplicationController.errorInconsistentExtDocx": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à des documents texte (par exemple docx), mais le fichier a une extension incohérente : %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à l'un des formats suivants : pdf/djvu/xps/oxps, mais le fichier a l'extension incohérente : %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à des présentations (par exemple pptx), mais le fichier a une extension incohérente : %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à des feuilles de calcul (par exemple xlsx), mais le fichier a une extension incohérente : %1.", "DE.ApplicationController.errorLoadingFont": "Les polices ne sont pas téléchargées.
Veuillez contacter l'administrateur de Document Server.", "DE.ApplicationController.errorSubmit": "Échec de soumission", "DE.ApplicationController.errorTokenExpire": "Le jeton de sécurité du document a expiré.
Veuillez contactez l'administrateur de Document Server.", diff --git a/apps/documenteditor/embed/locale/hy.json b/apps/documenteditor/embed/locale/hy.json index 1a0ce5fa9..f1cf6245e 100644 --- a/apps/documenteditor/embed/locale/hy.json +++ b/apps/documenteditor/embed/locale/hy.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Ֆայլն ունի գաղտնաբառ և չի կարող բացվել։", "DE.ApplicationController.errorFileSizeExceed": "Ֆայլի չափը գերազանցում է ձեր սերվերի համար սահմանված սահմանափակումը:
Մանրամասների համար խնդրում ենք կապվել Ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "DE.ApplicationController.errorForceSave": "Սխալ է տեղի ունեցել ֆայլը պահելիս:Խնդրում ենք օգտագործել «Ներբեռնել որպես» տարբերակը՝ ֆայլը ձեր համակարգչի կոշտ սկավառակում պահելու համար կամ ավելի ուշ նորից փորձեք:", + "DE.ApplicationController.errorInconsistentExt": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը չի համապատասխանում ֆայլի ընդլայնմանը:", + "DE.ApplicationController.errorInconsistentExtDocx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը համապատասխանում է տեքստային փաստաթղթերին (օրինակ՝ docx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում՝ %1:", + "DE.ApplicationController.errorInconsistentExtPdf": "Ֆայլը բացելիս սխալ է տեղի ունեցել:Ֆայլի բովանդակությունը համապատասխանում է հետևյալ ձևաչափերից մեկին՝pdf/djvu/xps/oxps,բայց ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "DE.ApplicationController.errorInconsistentExtPptx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը համապատասխանում է ներկայացումներին (օրինակ՝ pptx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "DE.ApplicationController.errorInconsistentExtXlsx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը համապատասխանում է աղյուսակներին (օր. xlsx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", "DE.ApplicationController.errorLoadingFont": "Տառատեսակները բեռնված չեն:
Խնդրում ենք կապվել ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "DE.ApplicationController.errorSubmit": "Չհաջողվեց հաստատել", "DE.ApplicationController.errorTokenExpire": "Փաստաթղթի անվտանգության կտրոնի ժամկետն անցել է։
Դիմեք փաստաթղթերի սպասարկիչի ձեր վարիչին։", diff --git a/apps/documenteditor/embed/locale/id.json b/apps/documenteditor/embed/locale/id.json index c1ceeb819..bb71930c3 100644 --- a/apps/documenteditor/embed/locale/id.json +++ b/apps/documenteditor/embed/locale/id.json @@ -16,23 +16,28 @@ "DE.ApplicationController.errorFilePassProtect": "Dokumen dilindungi dengan kata sandi dan tidak dapat dibuka.", "DE.ApplicationController.errorFileSizeExceed": "Ukuran file melewati batas server Anda.
Silakan hubungi admin Server Dokumen Anda untuk detail.", "DE.ApplicationController.errorForceSave": "Ada kesalahan saat menyimpan file. Silakan gunakan opsi 'Download sebagai' untuk menyimpan file ke komputer Anda dan coba lagi.", + "DE.ApplicationController.errorInconsistentExt": "Terjadi kesalahan saat membuka file.
Isi file tidak cocok dengan ekstensi file.", + "DE.ApplicationController.errorInconsistentExtDocx": "Terjadi kesalahan saat membuka file.
Isi file berhubungan dengan dokumen teks (mis. docx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Sebuah kesalahan terjadi ketika membuka file.
Isi file berhubungan dengan satu dari format berikut: pdf/djvu/xps/oxps, tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Terjadi kesalahan saat membuka file.
Isi file berhubungan dengan presentasi (mis. pptx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Terjadi kesalahan saat membuka file.
Isi file berhubungan dengan spreadsheet (mis. xlsx), tapi file memiliki ekstensi yang tidak konsisten: %1.", "DE.ApplicationController.errorLoadingFont": "Font tidak bisa dimuat.
Silakan kontak admin Server Dokumen Anda.", "DE.ApplicationController.errorSubmit": "Submit gagal.", "DE.ApplicationController.errorTokenExpire": "Token keamanan dokumen sudah kadaluwarsa.
Silakan hubungi admin Server Dokumen Anda.", "DE.ApplicationController.errorUpdateVersionOnDisconnect": "Koneksi internet sudah kembali dan versi file sudah diganti.
Sebelum Anda bisa melanjutkan kerja, Anda perlu mengunduh file atau salin konten untuk memastikan tidak ada yang hilang, lalu muat ulang halaman ini.", "DE.ApplicationController.errorUserDrop": "File tidak dapat di akses", "DE.ApplicationController.notcriticalErrorTitle": "Peringatan", - "DE.ApplicationController.openErrorText": "Eror ketika membuka file.", + "DE.ApplicationController.openErrorText": "Kesalahan terjadi ketika membuka file.", "DE.ApplicationController.scriptLoadError": "Koneksi terlalu lambat dan beberapa komponen tidak bisa dibuka. Silakan muat ulang halaman.", "DE.ApplicationController.textAnonymous": "Anonim", - "DE.ApplicationController.textClear": "Bersihkan Semua Area", + "DE.ApplicationController.textClear": "Bersihkan Semua Ruas", "DE.ApplicationController.textCtrl": "Ctrl", "DE.ApplicationController.textGotIt": "Mengerti", "DE.ApplicationController.textGuest": "Tamu", "DE.ApplicationController.textLoadingDocument": "Memuat dokumen", - "DE.ApplicationController.textNext": "Area Berikutnya", + "DE.ApplicationController.textNext": "Ruas Berikutnya", "DE.ApplicationController.textOf": "dari", - "DE.ApplicationController.textRequired": "Isi semua area yang dibutuhkan untuk mengirim form.", + "DE.ApplicationController.textRequired": "Isi semua ruas yang dibutuhkan untuk mengirim formulir.", "DE.ApplicationController.textSubmit": "Submit", "DE.ApplicationController.textSubmited": "Form berhasil disubmit
Klik untuk menutup tips", "DE.ApplicationController.txtClose": "Tutup", diff --git a/apps/documenteditor/embed/locale/ja.json b/apps/documenteditor/embed/locale/ja.json index 92ab5dbe2..5d5a7e3ad 100644 --- a/apps/documenteditor/embed/locale/ja.json +++ b/apps/documenteditor/embed/locale/ja.json @@ -16,9 +16,14 @@ "DE.ApplicationController.errorFilePassProtect": "ドキュメントがパスワードで保護されているため開くことができません", "DE.ApplicationController.errorFileSizeExceed": "ファイルサイズがサーバーで設定された制限を超過しています。
Documentサーバー管理者に詳細をお問い合わせください。", "DE.ApplicationController.errorForceSave": "文書の保存中にエラーが発生しました。コンピューターにファイルを保存するために、「...としてダウンロード」を使用し、または後で再お試しください。", + "DE.ApplicationController.errorInconsistentExt": "ファイルを開くときにエラーが発生しました。
ファイルの内容がファイルの拡張子と一致しません。", + "DE.ApplicationController.errorInconsistentExtDocx": "ファイルを開くときにエラーが発生しました。
ファイルの内容はドキュメント (docx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "DE.ApplicationController.errorInconsistentExtPdf": "ファイルを開くときにエラーが発生しました。
ファイルの内容は次のいずれかの形式に対応しています: pdf/djvu/xps/oxps が、ファイルの拡張子が一致していません: %1", + "DE.ApplicationController.errorInconsistentExtPptx": "ファイルを開くときにエラーが発生しました。
ファイルの内容はプレゼンテーション (pptx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "DE.ApplicationController.errorInconsistentExtXlsx": "ファイルを開くときにエラーが発生しました。
ファイルの内容はスプレッドシート (xlsx など) に対応していますが、ファイルの拡張子が一致していません: %1", "DE.ApplicationController.errorLoadingFont": "フォントがダウンロードされませんでした。
文書サーバのアドミニストレータを連絡してください。", "DE.ApplicationController.errorSubmit": "送信に失敗しました。", - "DE.ApplicationController.errorTokenExpire": "ドキュメント・セキュリティ・トークンの有効期限が切れています。
ドキュメントサーバーの管理者に連絡してください。", + "DE.ApplicationController.errorTokenExpire": "ドキュメントセキュリティトークンの有効期限が切れています。
ドキュメントサーバーの管理者に連絡してください。", "DE.ApplicationController.errorUpdateVersionOnDisconnect": "インターネット接続が復旧し、ファイルのバージョンが更新されました。
作業を継続する前に、ファイルをダウンロードするか、内容をコピーして、変更が消えてしまわないように確認してから、ページを再びお読み込みください。", "DE.ApplicationController.errorUserDrop": "今、ファイルにアクセスすることはできません。", "DE.ApplicationController.notcriticalErrorTitle": "警告", diff --git a/apps/documenteditor/embed/locale/nl.json b/apps/documenteditor/embed/locale/nl.json index 2300047bc..0f1281312 100644 --- a/apps/documenteditor/embed/locale/nl.json +++ b/apps/documenteditor/embed/locale/nl.json @@ -26,6 +26,7 @@ "DE.ApplicationController.scriptLoadError": "De verbinding is te langzaam, sommige componenten konden niet geladen worden. Laad de pagina opnieuw.", "DE.ApplicationController.textAnonymous": "Anoniem", "DE.ApplicationController.textClear": "Wis Alle Velden", + "DE.ApplicationController.textCtrl": "Ctrl", "DE.ApplicationController.textGotIt": "OK", "DE.ApplicationController.textGuest": "Gast", "DE.ApplicationController.textLoadingDocument": "Document wordt geladen", @@ -47,5 +48,6 @@ "DE.ApplicationView.txtFileLocation": "Open bestandslocatie", "DE.ApplicationView.txtFullScreen": "Volledig scherm", "DE.ApplicationView.txtPrint": "Afdrukken", + "DE.ApplicationView.txtSearch": "Zoeken", "DE.ApplicationView.txtShare": "Delen" } \ No newline at end of file diff --git a/apps/documenteditor/embed/locale/pt-pt.json b/apps/documenteditor/embed/locale/pt-pt.json index 3e9369efc..f52ca3163 100644 --- a/apps/documenteditor/embed/locale/pt-pt.json +++ b/apps/documenteditor/embed/locale/pt-pt.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "O documento está protegido por palavra-passe e não pode ser aberto.", "DE.ApplicationController.errorFileSizeExceed": "O tamanho do documento excede o limite permitido pelo servidor.
Contacte o administrador do servidor de documentos para mais informações.", "DE.ApplicationController.errorForceSave": "Ocorreu um erro ao guardar o ficheiro. Utilize a opção 'Descarregar como' para guardar o ficheiro no computador ou tente mais tarde.", + "DE.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro não coincide com a sua extensão.", + "DE.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a um documento de texto (doc, docx...), mas a extensão de ficheiro não é consistente: %1", + "DE.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas a extensão de ficheiro não é consistente: %1", + "DE.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a uma apresentação (ppt, pptx...), mas a extensão de ficheiro não é consistente: %1", + "DE.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a uma folha de cálculo (xls, xlsx...), mas a extensão de ficheiro não é consistente: %1", "DE.ApplicationController.errorLoadingFont": "Tipos de letra não carregados.
Por favor contacte o administrador do servidor de documentos.", "DE.ApplicationController.errorSubmit": "Falha ao submeter.", "DE.ApplicationController.errorTokenExpire": "O 'token' de segurança do documento expirou.
Entre em contacto com o administrador do servidor de documentos.", diff --git a/apps/documenteditor/embed/locale/pt.json b/apps/documenteditor/embed/locale/pt.json index aa2e46dc1..9e3654878 100644 --- a/apps/documenteditor/embed/locale/pt.json +++ b/apps/documenteditor/embed/locale/pt.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "O documento é protegido por senha e não pode ser aberto.", "DE.ApplicationController.errorFileSizeExceed": "O tamanho do arquivo excede o limite de seu servidor.
Por favor, contate seu administrador de Servidor de Documentos para detalhes.", "DE.ApplicationController.errorForceSave": "Ocorreu um erro na gravação. Favor utilizar a opção 'Baixar como' para gravar o arquivo em seu computador ou tente novamente mais tarde.", + "DE.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo não corresponde à extensão do arquivo.", + "DE.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a documentos de texto (por exemplo, docx), mas o arquivo tem a extensão inconsistente: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas o arquivo tem a extensão inconsistente: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a apresentações (por exemplo, pptx), mas o arquivo tem a extensão inconsistente: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a planilhas (por exemplo, xlsx), mas o arquivo tem a extensão inconsistente: %1.", "DE.ApplicationController.errorLoadingFont": "As fontes não foram carregadas.
Entre em contato com o administrador do Document Server.", "DE.ApplicationController.errorSubmit": "Falha no envio.", "DE.ApplicationController.errorTokenExpire": "O token de segurança do documento expirou.
Entre em contato com o administrador do Document Server.", diff --git a/apps/documenteditor/embed/locale/ro.json b/apps/documenteditor/embed/locale/ro.json index 9ff321771..dd4873618 100644 --- a/apps/documenteditor/embed/locale/ro.json +++ b/apps/documenteditor/embed/locale/ro.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Fișierul este protejat cu parolă și deaceea nu poate fi deschis.", "DE.ApplicationController.errorFileSizeExceed": "Dimensiunea fișierului depășește limita permisă de serverul Dvs.
Pentru detalii, contactați administratorul dumneavoastră de Server Documente.", "DE.ApplicationController.errorForceSave": "S-a produs o eroare în timpul salvării fișierului. Pentru copierea de rezervă pe PC utilizați opțiunea Descărcare ca... sau încercați din nou mai târziu.", + "DE.ApplicationController.errorInconsistentExt": "Eroare la deschiderea fișierului.
Conținutul fișierului nu corespunde cu extensia numelui de fișier.", + "DE.ApplicationController.errorInconsistentExtDocx": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unui format de document text (ex. docx), dar extensia numelui de fișier nu se potrivește: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unuia dintre următoarele formate: pdf/djvu/xps/oxps, dar extensia numelui de fișier nu se potrivește: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unui format de prezentare (ex. pptx), dar extensia numelui de fișier nu se potrivește: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unui format de foaie de calcul (ex. xlsx), dar extensia numelui de fișier nu se potrivește: %1.", "DE.ApplicationController.errorLoadingFont": "Fonturile nu sunt încărcate.
Contactați administratorul dvs de Server Documente.", "DE.ApplicationController.errorSubmit": "Remiterea eșuată.", "DE.ApplicationController.errorTokenExpire": "Token de securitate din document a expirat.
Contactați administratorul dvs. de Server Documente.", diff --git a/apps/documenteditor/embed/locale/ru.json b/apps/documenteditor/embed/locale/ru.json index 64800605c..aa7c76edd 100644 --- a/apps/documenteditor/embed/locale/ru.json +++ b/apps/documenteditor/embed/locale/ru.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Файл защищен паролем и не может быть открыт.", "DE.ApplicationController.errorFileSizeExceed": "Размер файла превышает ограничение, установленное для вашего сервера.
Обратитесь к администратору Сервера документов для получения дополнительной информации.", "DE.ApplicationController.errorForceSave": "При сохранении файла произошла ошибка. Используйте опцию 'Скачать как', чтобы сохранить файл на жестком диске компьютера или повторите попытку позже.", + "DE.ApplicationController.errorInconsistentExt": "При открытии файла произошла ошибка.
Содержимое файла не соответствует расширению файла.", + "DE.ApplicationController.errorInconsistentExtDocx": "При открытии файла произошла ошибка.
Содержимое файла соответствует документам (например, docx), но файл имеет несоответствующее расширение: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "При открытии файла произошла ошибка.
Содержимое файла соответствует одному из следующих форматов: pdf/djvu/xps/oxps, но файл имеет несоответствующее расширение: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "При открытии файла произошла ошибка.
Содержимое файла соответствует презентациям (например, pptx), но файл имеет несоответствующее расширение: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "При открытии файла произошла ошибка.
Содержимое файла соответствует электронным таблицам (например, xlsx), но файл имеет несоответствующее расширение: %1.", "DE.ApplicationController.errorLoadingFont": "Шрифты не загружены.
Пожалуйста, обратитесь к администратору Сервера документов.", "DE.ApplicationController.errorSubmit": "Не удалось отправить.", "DE.ApplicationController.errorTokenExpire": "Истек срок действия токена безопасности документа.
Пожалуйста, обратитесь к администратору Сервера документов.", diff --git a/apps/documenteditor/embed/locale/tr.json b/apps/documenteditor/embed/locale/tr.json index 2b1ad6983..7d6390b56 100644 --- a/apps/documenteditor/embed/locale/tr.json +++ b/apps/documenteditor/embed/locale/tr.json @@ -16,6 +16,11 @@ "DE.ApplicationController.errorFilePassProtect": "Döküman şifre korumalı ve açılamadı", "DE.ApplicationController.errorFileSizeExceed": "Dosya boyutu, sunucunuz için belirlenen limiti aşıyor.
Ayrıntılar için lütfen Doküman Sunucusu yöneticinizle iletişime geçin.", "DE.ApplicationController.errorForceSave": "Dosya kaydedilirken bir hata oluştu. Dosyayı bilgisayarınıza kaydetmek için lütfen 'Farklı İndir' seçeneğini kullanın veya daha sonra tekrar deneyin.", + "DE.ApplicationController.errorInconsistentExt": "Dosya açılırken bir hata oluştu.
Dosya içeriği, dosya uzantısıyla eşleşmiyor.", + "DE.ApplicationController.errorInconsistentExtDocx": "Dosya açılırken bir hata oluştu.
Dosya içeriği metin belgelerine (örn. docx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", + "DE.ApplicationController.errorInconsistentExtPdf": "Dosya açılırken bir hata oluştu.
Dosya içeriği şu biçimlerden birine karşılık geliyor: pdf/djvu/xps/oxps, ancak dosyanın uzantısı tutarsız: %1.", + "DE.ApplicationController.errorInconsistentExtPptx": "Dosya açılırken bir hata oluştu.
Dosya içeriği sunumlara karşılık geliyor (ör. pptx), ancak dosyanın uzantısı tutarsız: %1.", + "DE.ApplicationController.errorInconsistentExtXlsx": "Dosya açılırken bir hata oluştu.
Dosya içeriği e-tablolara (örn. xlsx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", "DE.ApplicationController.errorLoadingFont": "Yazı tipleri yüklenmedi.
Lütfen Doküman Sunucusu yöneticinize başvurun.", "DE.ApplicationController.errorSubmit": "Kaydetme başarısız oldu.", "DE.ApplicationController.errorTokenExpire": "Belge güvenlik belirtecinin süresi doldu.
Lütfen Belge Sunucusu yöneticinize başvurun.", @@ -26,6 +31,7 @@ "DE.ApplicationController.scriptLoadError": "Bağlantı çok yavaş, bileşenlerin bazıları yüklenemedi. Lütfen sayfayı yenileyin.", "DE.ApplicationController.textAnonymous": "Anonim", "DE.ApplicationController.textClear": "Tüm alanları temizle", + "DE.ApplicationController.textCtrl": "Kontrol", "DE.ApplicationController.textGotIt": "Anladım", "DE.ApplicationController.textGuest": "Misafir", "DE.ApplicationController.textLoadingDocument": "Döküman yükleniyor", diff --git a/apps/documenteditor/forms/app.js b/apps/documenteditor/forms/app.js index 99b5479f7..2a10cb3f4 100644 --- a/apps/documenteditor/forms/app.js +++ b/apps/documenteditor/forms/app.js @@ -46,7 +46,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', allfonts : '../../sdkjs/common/AllFonts', sdk : '../../sdkjs/word/sdk-all-min', api : 'api/documents/api', @@ -100,7 +100,7 @@ require.config({ 'underscore', 'allfonts', 'xregexp', - 'sockjs' + 'socketio' ] }, gateway: { diff --git a/apps/documenteditor/forms/app/controller/ApplicationController.js b/apps/documenteditor/forms/app/controller/ApplicationController.js index 26ffb38f4..3938469ce 100644 --- a/apps/documenteditor/forms/app/controller/ApplicationController.js +++ b/apps/documenteditor/forms/app/controller/ApplicationController.js @@ -301,6 +301,20 @@ define([ config.msg = this.errorTextFormWrongFormat; break; + case Asc.c_oAscError.ID.ConvertationOpenFormat: + config.maxwidth = 600; + if (errData === 'pdf') + config.msg = this.errorInconsistentExtPdf.replace('%1', this.document.fileType || ''); + else if (errData === 'docx') + config.msg = this.errorInconsistentExtDocx.replace('%1', this.document.fileType || ''); + else if (errData === 'xlsx') + config.msg = this.errorInconsistentExtXlsx.replace('%1', this.document.fileType || ''); + else if (errData === 'pptx') + config.msg = this.errorInconsistentExtPptx.replace('%1', this.document.fileType || ''); + else + config.msg = this.errorInconsistentExt; + break; + default: config.msg = (typeof id == 'string') ? id : this.errorDefaultMessage.replace('%1', id); break; @@ -364,8 +378,10 @@ define([ }, onCountPages: function(count) { - maxPages = count; - $('#pages').text(this.textOf + " " + count); + if (maxPages !== count) { + maxPages = count; + $('#pages').text(this.textOf + " " + count); + } }, onCurrentPage: function(number) { @@ -1907,7 +1923,12 @@ define([ textSaveAsDesktop: 'Save as...', warnLicenseExp: 'Your license has expired.
Please update your license and refresh the page.', titleLicenseExp: 'License expired', - errorTextFormWrongFormat: 'The value entered does not match the format of the field.' + errorTextFormWrongFormat: 'The value entered does not match the format of the field.', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
The file content does not match the file extension.' }, DE.Controllers.ApplicationController)); diff --git a/apps/documenteditor/forms/app_dev.js b/apps/documenteditor/forms/app_dev.js index 5511ef754..d85f0b468 100644 --- a/apps/documenteditor/forms/app_dev.js +++ b/apps/documenteditor/forms/app_dev.js @@ -46,7 +46,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', api : 'api/documents/api', core : 'common/main/lib/core/application', notification : 'common/main/lib/core/NotificationCenter', @@ -113,7 +113,7 @@ require([ 'analytics', 'gateway', 'locale', - 'sockjs', + 'socketio', 'underscore' ], function (Backbone, Bootstrap, Core) { if (Backbone.History && Backbone.History.started) diff --git a/apps/documenteditor/forms/locale/ca.json b/apps/documenteditor/forms/locale/ca.json index d87380af1..0b0a1e0b4 100644 --- a/apps/documenteditor/forms/locale/ca.json +++ b/apps/documenteditor/forms/locale/ca.json @@ -53,7 +53,7 @@ "Common.UI.Window.yesButtonText": "Sí", "Common.Views.CopyWarningDialog.textDontShow": "No tornis a mostrar aquest missatge", "Common.Views.CopyWarningDialog.textMsg": "Les accions de copia, retalla i enganxa utilitzant el menú contextual només es realitzaran dins d'aquesta pestanya de l'editor.

Per copiar o enganxar a o des d'aplicacions fora de la pestanya de l'editor utilitza les següents combinacions de teclat:", - "Common.Views.CopyWarningDialog.textTitle": "Accions de copia, talla i enganxa ", + "Common.Views.CopyWarningDialog.textTitle": "Accions de Copiar, Tallar i Enganxar ", "Common.Views.CopyWarningDialog.textToCopy": "Per copiar", "Common.Views.CopyWarningDialog.textToCut": "Per tallar", "Common.Views.CopyWarningDialog.textToPaste": "Per enganxar", @@ -65,7 +65,7 @@ "Common.Views.ImageFromUrlDialog.textUrl": "Enganxa un URL d'imatge:", "Common.Views.ImageFromUrlDialog.txtEmpty": "Aquest camp és obligatori", "Common.Views.ImageFromUrlDialog.txtNotUrl": "Aquest camp hauria de ser un URL amb el format \"http://www.example.com\"", - "Common.Views.OpenDialog.closeButtonText": "Tanca el fitxer", + "Common.Views.OpenDialog.closeButtonText": "Tancar fitxer", "Common.Views.OpenDialog.txtEncoding": "Codificació", "Common.Views.OpenDialog.txtIncorrectPwd": "La contrasenya no és correcta.", "Common.Views.OpenDialog.txtOpenFile": "Introduïu una contrasenya per obrir el fitxer", @@ -73,11 +73,11 @@ "Common.Views.OpenDialog.txtPreview": "Visualització prèvia", "Common.Views.OpenDialog.txtProtected": "Un cop introduïu la contrasenya i obriu el fitxer, es restablirà la contrasenya actual del fitxer.", "Common.Views.OpenDialog.txtTitle": "Tria les opcions %1", - "Common.Views.OpenDialog.txtTitleProtected": "El fitxer està protegit", + "Common.Views.OpenDialog.txtTitleProtected": "Arxiu Protegit", "Common.Views.SaveAsDlg.textLoading": "S'està carregant", "Common.Views.SaveAsDlg.textTitle": "Carpeta per desar", "Common.Views.SelectFileDlg.textLoading": "S'està carregant", - "Common.Views.SelectFileDlg.textTitle": "Seleccioneu l'origen de les dades", + "Common.Views.SelectFileDlg.textTitle": "Selecciona l'origen de les dades", "Common.Views.ShareDialog.textTitle": "Comparteix l'enllaç", "Common.Views.ShareDialog.txtCopy": "Copia al porta-retalls", "Common.Views.ShareDialog.warnCopy": "Error del navegador! Utilitzeu la drecera de teclat [Ctrl] + [C]", @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "El fitxer està protegit amb contrasenya i no es pot obrir.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "La mida del fitxer supera el límit establert pel servidor. Contacteu amb l'administrador del servidor de documents per obtenir més informació.", "DE.Controllers.ApplicationController.errorForceSave": "S'ha produït un error en desar el fitxer. Utilitzeu l'opció \"Baixa-ho com a\" per desar el fitxer al disc dur de l’ordinador o torneu-ho a provar més endavant.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer no es correspon amb la seva extensió.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a documents de text (per exemple, docx), però el fitxer té l'extensió incoherent: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a un dels formats següents: pdf/djvu/xps/oxps, però el fitxer té l'extensió incoherent: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a presentacions (per exemple, pptx), però el fitxer té l'extensió incongruent: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "S'ha produït un error en obrir el fitxer.
El contingut del fitxer correspon a full de càlcul (per exemple, xlsx), però el fitxer té l'extensió incoherent: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "No s'han carregat les lletres tipogràfiques.
Contacteu amb l'administrador del Servidor de Documents.", "DE.Controllers.ApplicationController.errorServerVersion": "S'ha actualitzat la versió de l'editor. Es tornarà a carregar la pàgina per aplicar els canvis.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "La sessió d’edició del document ha caducat. Torneu a carregar la pàgina.", diff --git a/apps/documenteditor/forms/locale/de.json b/apps/documenteditor/forms/locale/de.json index 572e434de..b10b424a5 100644 --- a/apps/documenteditor/forms/locale/de.json +++ b/apps/documenteditor/forms/locale/de.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Das Dokument ist kennwortgeschützt und kann nicht geöffnet werden.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Die Dateigröße überschreitet die für Ihren Server festgelegte Einschränkung.
Weitere Informationen können Sie von Ihrem Document Server-Administrator erhalten.", "DE.Controllers.ApplicationController.errorForceSave": "Beim Speichern der Datei ist ein Fehler aufgetreten. Verwenden Sie die Option \"Herunterladen als\", um die Datei auf Ihrer Computerfestplatte zu speichern oder versuchen Sie es später erneut.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei stimmt nicht mit der Dateierweiterung überein.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht Textdokumenten (z.B. docx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht einem der folgenden Formate: pdf/djvu/xps/oxps, aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht Präsentationen (z.B. pptx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
Der Inhalt der Datei entspricht Tabellenkalkulationen (z.B. xlsx), aber die Datei hat die inkonsistente Erweiterung: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Schriftarten nicht hochgeladen.
Bitte wenden Sie sich an Administratoren von Ihrem Document Server.", "DE.Controllers.ApplicationController.errorServerVersion": "Version des Editors wurde aktualisiert. Die Seite wird neu geladen, um die Änderungen zu übernehmen.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Die Bearbeitungssitzung des Dokumentes ist abgelaufen. Laden Sie die Seite neu.", diff --git a/apps/documenteditor/forms/locale/el.json b/apps/documenteditor/forms/locale/el.json index 2d89e8f08..7b7efc5c0 100644 --- a/apps/documenteditor/forms/locale/el.json +++ b/apps/documenteditor/forms/locale/el.json @@ -65,7 +65,7 @@ "Common.Views.ImageFromUrlDialog.textUrl": "Επικόλληση URL εικόνας:", "Common.Views.ImageFromUrlDialog.txtEmpty": "Αυτό το πεδίο είναι υποχρεωτικό", "Common.Views.ImageFromUrlDialog.txtNotUrl": "Αυτό το πεδίο πρέπει να είναι διεύθυνση URL με τη μορφή «http://www.example.com»", - "Common.Views.OpenDialog.closeButtonText": "Κλείσιμο Αρχείου", + "Common.Views.OpenDialog.closeButtonText": "Κλείσιμο αρχείου", "Common.Views.OpenDialog.txtEncoding": "Κωδικοποίηση", "Common.Views.OpenDialog.txtIncorrectPwd": "Το συνθηματικό είναι εσφαλμένο.", "Common.Views.OpenDialog.txtOpenFile": "Εισάγετε συνθηματικό για να ανοίξετε το αρχείο", @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Το αρχείο προστατεύεται με συνθηματικό και δεν μπορεί να ανοίξει.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Το μέγεθος του αρχείου υπερβαίνει το όριο που έχει οριστεί για τον διακομιστή σας.
Παρακαλούμε επικοινωνήστε με τον διαχειριστή του διακομιστή εγγράφων για λεπτομέρειες.", "DE.Controllers.ApplicationController.errorForceSave": "Παρουσιάστηκε σφάλμα κατά την αποθήκευση του αρχείου. Χρησιμοποιήστε την επιλογή «Λήψη ως» για να αποθηκεύσετε το αρχείο στον σκληρό δίσκο του υπολογιστή σας ή δοκιμάστε ξανά αργότερα.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Προέκυψε σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου δεν αντιστοιχούν στην κατάληξή του ονόματός του.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Προέκυψε σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε αρχεία κειμένου (π.χ. docx), αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Προέκυψε σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε μια από τις ακόλουθες μορφές: pdf/djvu/xps/oxps, αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Προέκυψε σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε παρουσιάσεις (π.χ. pptx), αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Προέκυψε σφάλμα κατά το άνοιγμα του αρχείου.
Τα περιεχόμενα του αρχείου αντιστοιχούν σε υπολογιστικά φύλλα (π.χ. xlsx), αλλά το αρχείο έχει ασύμφωνη κατάληξη: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Οι γραμματοσειρές δεν έχουν φορτωθεί.
Παρακαλούμε επικοινωνήστε με τον διαχειριστή του Εξυπηρετητή Εγγράφων σας.", "DE.Controllers.ApplicationController.errorServerVersion": "Αναβαθμίστηκε η έκδοση του συντάκτη. Η σελίδα θα φορτωθεί ξανά για να εφαρμοστούν οι αλλαγές.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Η σύνοδος επεξεργασίας του εγγράφου έληξε. Παρακαλούμε φορτώστε ξανά τη σελίδα.", diff --git a/apps/documenteditor/forms/locale/en.json b/apps/documenteditor/forms/locale/en.json index 35aae0701..b0e29eb68 100644 --- a/apps/documenteditor/forms/locale/en.json +++ b/apps/documenteditor/forms/locale/en.json @@ -53,7 +53,7 @@ "Common.UI.Window.yesButtonText": "Yes", "Common.Views.CopyWarningDialog.textDontShow": "Don't show this message again", "Common.Views.CopyWarningDialog.textMsg": "Copy, cut and paste actions using context menu actions will be performed within this editor tab only.

To copy or paste to or from applications outside the editor tab use the following keyboard combinations:", - "Common.Views.CopyWarningDialog.textTitle": "Copy, Cut and Paste Actions", + "Common.Views.CopyWarningDialog.textTitle": "Copy, Cut and Paste actions", "Common.Views.CopyWarningDialog.textToCopy": "for Copy", "Common.Views.CopyWarningDialog.textToCut": "for Cut", "Common.Views.CopyWarningDialog.textToPaste": "for Paste", @@ -65,7 +65,7 @@ "Common.Views.ImageFromUrlDialog.textUrl": "Paste an image URL:", "Common.Views.ImageFromUrlDialog.txtEmpty": "This field is required", "Common.Views.ImageFromUrlDialog.txtNotUrl": "This field should be a URL in the \"http://www.example.com\" format", - "Common.Views.OpenDialog.closeButtonText": "Close File", + "Common.Views.OpenDialog.closeButtonText": "Close file", "Common.Views.OpenDialog.txtEncoding": "Encoding ", "Common.Views.OpenDialog.txtIncorrectPwd": "Password is incorrect.", "Common.Views.OpenDialog.txtOpenFile": "Enter a password to open the file", @@ -73,12 +73,12 @@ "Common.Views.OpenDialog.txtPreview": "Preview", "Common.Views.OpenDialog.txtProtected": "Once you enter the password and open the file, the current password to the file will be reset.", "Common.Views.OpenDialog.txtTitle": "Choose %1 options", - "Common.Views.OpenDialog.txtTitleProtected": "Protected File", + "Common.Views.OpenDialog.txtTitleProtected": "Protected file", "Common.Views.SaveAsDlg.textLoading": "Loading", "Common.Views.SaveAsDlg.textTitle": "Folder for save", "Common.Views.SelectFileDlg.textLoading": "Loading", - "Common.Views.SelectFileDlg.textTitle": "Select Data Source", - "Common.Views.ShareDialog.textTitle": "Share Link", + "Common.Views.SelectFileDlg.textTitle": "Select data source", + "Common.Views.ShareDialog.textTitle": "Share link", "Common.Views.ShareDialog.txtCopy": "Copy to clipboard", "Common.Views.ShareDialog.warnCopy": "Browser's error! Use keyboard shortcut [Ctrl] + [C]", "DE.Controllers.ApplicationController.convertationErrorText": "Conversion failed.", @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "The file is password protected and cannot be opened.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "The file size exceeds the limitation set for your server.
Please contact your Document Server administrator for details.", "DE.Controllers.ApplicationController.errorForceSave": "An error occurred while saving the file. Please use the 'Download as' option to save the file to your computer hard drive or try again later.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "An error has occurred while opening the file.
The file content does not match the file extension.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "An error has occurred while opening the file.
The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "An error has occurred while opening the file.
The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "An error has occurred while opening the file.
The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "An error has occurred while opening the file.
The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Fonts are not loaded.
Please contact your Document Server administrator.", "DE.Controllers.ApplicationController.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "The document editing session has expired. Please reload the page.", diff --git a/apps/documenteditor/forms/locale/es.json b/apps/documenteditor/forms/locale/es.json index b0d394af1..67aa5c0fb 100644 --- a/apps/documenteditor/forms/locale/es.json +++ b/apps/documenteditor/forms/locale/es.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "El archivo está protegido por una contraseña y no puede ser abierto.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "El tamaño del archivo excede el límite establecido para su servidor. Por favor póngase en contacto con el administrador del Servidor de Documentos para obtener más información.", "DE.Controllers.ApplicationController.errorForceSave": "Ha ocurrido un error al guardar el archivo. Por favor, use la opción \"Descargar como\" para guardar el archivo en el disco duro de su ordenador o inténtelo de nuevo más tarde.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Se ha producido un error al abrir el archivo.
El contenido del archivo no coincide con la extensión del mismo.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a documentos de texto (por ejemplo, docx), pero el archivo tiene extensión inconsistente: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a uno de los siguientes formatos: pdf/djvu/xps/oxps, pero el archivo tiene extensión inconsistente: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a presentaciones (por ejemplo, pptx), pero el archivo tiene extensión inconsistente: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Se ha producido un error al abrir el archivo.
El contenido del archivo corresponde a hojas de cálculo (por ejemplo, xlsx), pero el archivo tiene extensión inconsistente: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Las fuentes no están cargadas.
Por favor, póngase en contacto con el administrador del Document Server.", "DE.Controllers.ApplicationController.errorServerVersion": "La versión del editor ha sido actualizada. La página será recargada para aplicar los cambios.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "La sesión de editar el documento ha expirado. Por favor, recargue la página.", diff --git a/apps/documenteditor/forms/locale/eu.json b/apps/documenteditor/forms/locale/eu.json index 5e6d08263..b2418c8b6 100644 --- a/apps/documenteditor/forms/locale/eu.json +++ b/apps/documenteditor/forms/locale/eu.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Fitxategia pasahitzez babestua dago eta ezin da ireki.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Fitxategiaren tamainak zure zerbitzarirako ezarritako muga gainditzen du.
Jarri harremanetan dokumentu-zerbitzariaren administratzailearekin informazio gehiago lortzeko.", "DE.Controllers.ApplicationController.errorForceSave": "Errore bat gertatu da dokumentua gordetzean.
Erabili 'Deskargatu honela' aukera fitxategia zure ordenagailuko disko gogorrera gordetzeko edo saiatu berriro geroago.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia eta luzapena ez datoz bat.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia testu-dokumentu bati dagokio (adibidez, docx), baina fitxategiaren luzapena ez dator bat: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia ondorengo formatuetako bati dagokio: pdf/djvu/xps/oxps, baina fitxategiaren luzapena ez dator bat: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia aurkezpen bati dagokio (adibidez, pptx), baina fitxategiaren luzapena ez dator bat: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Errore bat gertatu da fitxategia irekitzean.
Fitxategiaren edukia kalkulu-orri bati dagokio (adibidez, xlsx), baina fitxategiaren luzapena ez dator bat: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Letra-tipoak ez dira kargatu.
Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "DE.Controllers.ApplicationController.errorServerVersion": "Editorearen bertsioa eguneratu da. Orria berriz kargatuko da aldaketak aplikatzeko.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Dokumentua editatzeko saioa iraungi da. Kargatu berriro orria.", diff --git a/apps/documenteditor/forms/locale/fr.json b/apps/documenteditor/forms/locale/fr.json index ac69e85f0..94d258b93 100644 --- a/apps/documenteditor/forms/locale/fr.json +++ b/apps/documenteditor/forms/locale/fr.json @@ -53,7 +53,7 @@ "Common.UI.Window.yesButtonText": "Oui", "Common.Views.CopyWarningDialog.textDontShow": "Ne plus afficher ce message", "Common.Views.CopyWarningDialog.textMsg": "Les fonctions de copier, couper et coller avec des commandes de menu contextuel ne peuvent être effectuées que dans cet onglet de l'éditeur.

Pour copier ou coller vers ou depuis des applications en dehors de l'onglet d'éditeur, utilisez les raccourcis clavier suivants :", - "Common.Views.CopyWarningDialog.textTitle": "Fonctions de Copier, Couper et Coller", + "Common.Views.CopyWarningDialog.textTitle": "Actions copier, couper et coller", "Common.Views.CopyWarningDialog.textToCopy": "pour Copier", "Common.Views.CopyWarningDialog.textToCut": "pour Couper", "Common.Views.CopyWarningDialog.textToPaste": "pour Coller", @@ -65,7 +65,7 @@ "Common.Views.ImageFromUrlDialog.textUrl": "Collez l'URL de l'image :", "Common.Views.ImageFromUrlDialog.txtEmpty": "Ce champ est obligatoire", "Common.Views.ImageFromUrlDialog.txtNotUrl": "Ce champ doit être une URL au format \"http://www.example.com\"", - "Common.Views.OpenDialog.closeButtonText": "Fermer le fichier", + "Common.Views.OpenDialog.closeButtonText": "Fermer fichier", "Common.Views.OpenDialog.txtEncoding": "Codage", "Common.Views.OpenDialog.txtIncorrectPwd": "Le mot de passe est incorrect.", "Common.Views.OpenDialog.txtOpenFile": "Entrez le mot de passe pour ouvrir le fichier", @@ -78,7 +78,7 @@ "Common.Views.SaveAsDlg.textTitle": "Dossier pour enregistrement", "Common.Views.SelectFileDlg.textLoading": "Chargement", "Common.Views.SelectFileDlg.textTitle": "Sélectionner la source de données", - "Common.Views.ShareDialog.textTitle": "Partager un lien", + "Common.Views.ShareDialog.textTitle": "Partager le lien", "Common.Views.ShareDialog.txtCopy": "Copier dans le presse-papiers", "Common.Views.ShareDialog.warnCopy": "Erreur du navigateur ! Utilisez le raccourci clavier [Ctrl] + [C]", "DE.Controllers.ApplicationController.convertationErrorText": "Échec de la conversion.", @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Le fichier est protégé par le mot de passe et ne peut pas être ouvert.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "La taille du fichier dépasse les limites établies sur votre serveur.
Veuillez contacter votre administrateur de Document Server pour obtenir plus d'informations. ", "DE.Controllers.ApplicationController.errorForceSave": "Une erreur est survenue lors de l'enregistrement du fichier. Veuillez utiliser l'option «Télécharger en tant que» pour enregistrer le fichier sur le disque dur de votre ordinateur ou réessayer plus tard.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier ne correspond pas à l'extension du fichier.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à des documents texte (par exemple docx), mais le fichier a une extension incohérente : %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à l'un des formats suivants : pdf/djvu/xps/oxps, mais le fichier a l'extension incohérente : %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à des présentations (par exemple pptx), mais le fichier a une extension incohérente : %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Une erreur s'est produite lors de l'ouverture du fichier.
Le contenu du fichier correspond à des feuilles de calcul (par exemple xlsx), mais le fichier a une extension incohérente : %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Les polices ne sont pas téléchargées.
Veuillez contacter l'administrateur de Document Server.", "DE.Controllers.ApplicationController.errorServerVersion": "La version de l'éditeur a été mise à jour. La page sera rechargée pour appliquer les modifications.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "La session d'édition du document a expiré. Veuillez recharger la page.", diff --git a/apps/documenteditor/forms/locale/hy.json b/apps/documenteditor/forms/locale/hy.json index f62b524a0..3fbb724ec 100644 --- a/apps/documenteditor/forms/locale/hy.json +++ b/apps/documenteditor/forms/locale/hy.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Ֆայլն ունի գաղտնաբառ և չի կարող բացվել։", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Ֆայլի չափը գերազանցում է ձեր սերվերի համար սահմանված սահմանափակումը:
Մանրամասների համար խնդրում ենք կապվել Ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "DE.Controllers.ApplicationController.errorForceSave": "Սխալ է տեղի ունեցել ֆայլը պահելիս:Խնդրում ենք օգտագործել «Ներբեռնել որպես» տարբերակը՝ ֆայլը ձեր համակարգչի կոշտ սկավառակում պահելու համար կամ ավելի ուշ նորից փորձեք:", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը չի համապատասխանում ֆայլի ընդլայնմանը:", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը համապատասխանում է տեքստային փաստաթղթերին (օրինակ՝ docx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում՝ %1:", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Ֆայլը բացելիս սխալ է տեղի ունեցել:Ֆայլի բովանդակությունը համապատասխանում է հետևյալ ձևաչափերից մեկին՝pdf/djvu/xps/oxps,բայց ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը համապատասխանում է ներկայացումներին (օրինակ՝ pptx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
Ֆայլի բովանդակությունը համապատասխանում է աղյուսակներին (օր. xlsx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", "DE.Controllers.ApplicationController.errorLoadingFont": "Տառատեսակները բեռնված չեն:
Խնդրում ենք կապվել ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "DE.Controllers.ApplicationController.errorServerVersion": "Խմբագրիչի տարբերակը արդիացվել է։ Որպեսզի փոփոխումները տեղի ունենան, էջը նորից կբեռնվի։", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Փաստաթղթի խմբագրման գործաժամը սպառվել է։ Նորի՛ց բեռնեք էջը։", diff --git a/apps/documenteditor/forms/locale/id.json b/apps/documenteditor/forms/locale/id.json index 43700c0d1..15e9db121 100644 --- a/apps/documenteditor/forms/locale/id.json +++ b/apps/documenteditor/forms/locale/id.json @@ -53,7 +53,7 @@ "Common.UI.Window.yesButtonText": "Ya", "Common.Views.CopyWarningDialog.textDontShow": "Jangan tampilkan pesan ini lagi", "Common.Views.CopyWarningDialog.textMsg": "Copy, cut, dan paste hanya akan dilakukan di tab editor ini.

Untuk copy atau paste dari dan ke aplikasi luar tab editor, gunakan kombinasi keyboard ini:", - "Common.Views.CopyWarningDialog.textTitle": "Salin, Potong dan Tempel", + "Common.Views.CopyWarningDialog.textTitle": "Aksi Salin, Potong, dan Tempel", "Common.Views.CopyWarningDialog.textToCopy": "untuk Salin", "Common.Views.CopyWarningDialog.textToCut": "untuk Potong", "Common.Views.CopyWarningDialog.textToPaste": "untuk Tempel", @@ -63,9 +63,9 @@ "Common.Views.EmbedDialog.txtCopy": "Disalin ke papan klip", "Common.Views.EmbedDialog.warnCopy": "Browser eror! Gunakan shortcut keyboard [Ctrl] + [C]", "Common.Views.ImageFromUrlDialog.textUrl": "Tempel URL gambar:", - "Common.Views.ImageFromUrlDialog.txtEmpty": "Kolom ini harus diisi", - "Common.Views.ImageFromUrlDialog.txtNotUrl": "Bagian ini harus berupa URL dengn format \"http://www.contoh.com\"", - "Common.Views.OpenDialog.closeButtonText": "Tutup File", + "Common.Views.ImageFromUrlDialog.txtEmpty": "Ruas ini diperlukan", + "Common.Views.ImageFromUrlDialog.txtNotUrl": "Ruas ini harus berupa URL dengan format \"http://www.contoh.com\"", + "Common.Views.OpenDialog.closeButtonText": "Tutup file", "Common.Views.OpenDialog.txtEncoding": "Enkoding", "Common.Views.OpenDialog.txtIncorrectPwd": "Password salah.", "Common.Views.OpenDialog.txtOpenFile": "Masukkan kata sandi untuk buka file", @@ -73,7 +73,7 @@ "Common.Views.OpenDialog.txtPreview": "Pratinjau", "Common.Views.OpenDialog.txtProtected": "Jika Anda memasukkan password dan membuka file, password file saat ini akan di reset.", "Common.Views.OpenDialog.txtTitle": "Pilih %1 opsi", - "Common.Views.OpenDialog.txtTitleProtected": "File yang Diproteksi", + "Common.Views.OpenDialog.txtTitleProtected": "File terproteksi", "Common.Views.SaveAsDlg.textLoading": "Memuat", "Common.Views.SaveAsDlg.textTitle": "Folder untuk simpan", "Common.Views.SelectFileDlg.textLoading": "Memuat", @@ -96,13 +96,18 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Dokumen dilindungi dengan kata sandi dan tidak dapat dibuka.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Ukuran file melewati batas server Anda.
Silakan hubungi admin Server Dokumen Anda untuk detail.", "DE.Controllers.ApplicationController.errorForceSave": "Ada kesalahan saat menyimpan file. Silakan gunakan opsi 'Download sebagai' untuk menyimpan file ke komputer Anda dan coba lagi.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Terjadi kesalahan saat membuka file.
Isi file tidak cocok dengan ekstensi file.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Terjadi kesalahan saat membuka file.
Isi file berhubungan dengan dokumen teks (mis. docx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Sebuah kesalahan terjadi ketika membuka file.
Isi file berhubungan dengan satu dari format berikut: pdf/djvu/xps/oxps, tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Terjadi kesalahan saat membuka file.
Isi file berhubungan dengan presentasi (mis. pptx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Terjadi kesalahan saat membuka file.
Isi file berhubungan dengan spreadsheet (mis. xlsx), tapi file memiliki ekstensi yang tidak konsisten: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Font tidak bisa dimuat.
Silakan kontak admin Server Dokumen Anda.", "DE.Controllers.ApplicationController.errorServerVersion": "Versi editor sudah di update. Halaman akan dimuat ulang untuk menerapkan perubahan.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Waktu edit dokumen sudah selesai. Silakan muat ulang halaman.", "DE.Controllers.ApplicationController.errorSessionIdle": "Dokumen sudah lama tidak diedit. Silakan muat ulang halaman.", "DE.Controllers.ApplicationController.errorSessionToken": "Koneksi ke server terganggu. Silakan muat ulang halaman.", "DE.Controllers.ApplicationController.errorSubmit": "Submit gagal.", - "DE.Controllers.ApplicationController.errorTextFormWrongFormat": "Nilai yang dimasukkan tidak cocok dengan format bidang.", + "DE.Controllers.ApplicationController.errorTextFormWrongFormat": "Nilai yang dimasukkan tidak cocok dengan format ruas.", "DE.Controllers.ApplicationController.errorToken": "Token keamanan dokumen tidak dibentuk dengan tepat.
Silakan hubungi admin Server Dokumen Anda.", "DE.Controllers.ApplicationController.errorTokenExpire": "Token keamanan dokumen sudah kadaluwarsa.
Silakan hubungi admin Server Dokumen Anda.", "DE.Controllers.ApplicationController.errorUpdateVersion": "Versi file telah diubah. Halaman tidak akan dimuat ulang.", @@ -113,11 +118,11 @@ "DE.Controllers.ApplicationController.mniImageFromStorage": "Gambar dari Penyimpanan", "DE.Controllers.ApplicationController.mniImageFromUrl": "Gambar dari URL", "DE.Controllers.ApplicationController.notcriticalErrorTitle": "Peringatan", - "DE.Controllers.ApplicationController.openErrorText": "Eror ketika membuka file.", - "DE.Controllers.ApplicationController.saveErrorText": "Eror ketika menyimpan file.", + "DE.Controllers.ApplicationController.openErrorText": "Kesalahan terjadi ketika membuka file.", + "DE.Controllers.ApplicationController.saveErrorText": "Terjadi kesalahan ketika menyimpan file.", "DE.Controllers.ApplicationController.saveErrorTextDesktop": "File tidak bisa disimpan atau dibuat.
Alasan yang mungkin adalah:
1. File hanya bisa dibaca.
2. File sedang diedit user lain.
3. Memori penuh atau terkorupsi.", "DE.Controllers.ApplicationController.scriptLoadError": "Koneksi terlalu lambat dan beberapa komponen tidak bisa dibuka. Silakan muat ulang halaman.", - "DE.Controllers.ApplicationController.textAnonymous": "Tamu", + "DE.Controllers.ApplicationController.textAnonymous": "Anonim", "DE.Controllers.ApplicationController.textBuyNow": "Kunjungi website", "DE.Controllers.ApplicationController.textCloseTip": "Klik untuk menutup tip.", "DE.Controllers.ApplicationController.textContactUs": "Hubungi sales", @@ -126,10 +131,10 @@ "DE.Controllers.ApplicationController.textLoadingDocument": "Memuat dokumen", "DE.Controllers.ApplicationController.textNoLicenseTitle": "Batas lisensi sudah tercapai", "DE.Controllers.ApplicationController.textOf": "dari", - "DE.Controllers.ApplicationController.textRequired": "Isi semua area yang dibutuhkan untuk mengirim form.", + "DE.Controllers.ApplicationController.textRequired": "Isi semua ruas yang dibutuhkan untuk mengirim formulir.", "DE.Controllers.ApplicationController.textSaveAs": "Simpan sebagai PDF", "DE.Controllers.ApplicationController.textSaveAsDesktop": "Simpan sebagai", - "DE.Controllers.ApplicationController.textSubmited": "Form berhasil disubmit
Klik untuk menutup tips", + "DE.Controllers.ApplicationController.textSubmited": "Formulir berhasil dikirim
Klik untuk menutup tips", "DE.Controllers.ApplicationController.titleLicenseExp": "Lisensi kadaluwarsa", "DE.Controllers.ApplicationController.titleServerVersion": "Editor mengupdate", "DE.Controllers.ApplicationController.titleUpdateVersion": "Versi telah diubah", @@ -153,12 +158,12 @@ "DE.Controllers.ApplicationController.warnLicenseUsersExceeded": "Anda sudah mencapai batas user untuk %1 editor. Hubungi admin Anda untuk mempelajari lebih lanjut.", "DE.Controllers.ApplicationController.warnNoLicense": "Anda sudah mencapai batas untuk koneksi bersamaan ke %1 editor. Dokumen ini akan dibuka untuk dilihat saja.
Hubungi %1 tim sales untuk syarat personal upgrade.", "DE.Controllers.ApplicationController.warnNoLicenseUsers": "Anda sudah mencapai batas user untuk %1 editor. Hubungi %1 tim sales untuk syarat personal upgrade.", - "DE.Views.ApplicationView.textClear": "Bersihkan Semua Area", + "DE.Views.ApplicationView.textClear": "Bersihkan Semua Ruas", "DE.Views.ApplicationView.textCopy": "Salin", "DE.Views.ApplicationView.textCut": "Potong", "DE.Views.ApplicationView.textFitToPage": "Sesuaikan Halaman", "DE.Views.ApplicationView.textFitToWidth": "Sesuaikan Lebar", - "DE.Views.ApplicationView.textNext": "Area Berikutnya", + "DE.Views.ApplicationView.textNext": "Ruas Berikutnya", "DE.Views.ApplicationView.textPaste": "Tempel", "DE.Views.ApplicationView.textPrintSel": "Print Pilihan", "DE.Views.ApplicationView.textRedo": "Ulangi", diff --git a/apps/documenteditor/forms/locale/ja.json b/apps/documenteditor/forms/locale/ja.json index f30908fb7..9eeb607cb 100644 --- a/apps/documenteditor/forms/locale/ja.json +++ b/apps/documenteditor/forms/locale/ja.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "ドキュメントがパスワードで保護されているため開くことができません", "DE.Controllers.ApplicationController.errorFileSizeExceed": "ファイルサイズがサーバーで設定された制限を超過しています。
Documentサーバー管理者に詳細をお問い合わせください。", "DE.Controllers.ApplicationController.errorForceSave": "文書の保存中にエラーが発生しました。コンピューターにファイルを保存するために、「...としてダウンロード」を使用し、または後で再お試しください。", + "DE.Controllers.ApplicationController.errorInconsistentExt": "ファイルを開くときにエラーが発生しました。
ファイルの内容がファイルの拡張子と一致しません。", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "ファイルを開くときにエラーが発生しました。
ファイルの内容はドキュメント (docx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "ファイルを開くときにエラーが発生しました。
ファイルの内容は次のいずれかの形式に対応しています: pdf/djvu/xps/oxps が、ファイルの拡張子が一致していません: %1", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "ファイルを開くときにエラーが発生しました。
ファイルの内容はプレゼンテーション (pptx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "ファイルを開くときにエラーが発生しました。
ファイルの内容はスプレッドシート (xlsx など) に対応していますが、ファイルの拡張子が一致していません: %1", "DE.Controllers.ApplicationController.errorLoadingFont": "フォントがダウンロードされませんでした。
文書サーバのアドミニストレータを連絡してください。", "DE.Controllers.ApplicationController.errorServerVersion": "エディターのバージョンが更新されました。 変更を適用するために、ページが再読み込みされます。", "DE.Controllers.ApplicationController.errorSessionAbsolute": "ドキュメント編集セッションが終了しました。 ページをリロードしてください。", @@ -103,8 +108,8 @@ "DE.Controllers.ApplicationController.errorSessionToken": "サーバーとの接続が中断されました。このページをリロードしてください。", "DE.Controllers.ApplicationController.errorSubmit": "送信に失敗しました。", "DE.Controllers.ApplicationController.errorTextFormWrongFormat": "入力された値がフィールドのフォーマットと一致しません。", - "DE.Controllers.ApplicationController.errorToken": "ドキュメント・セキュリティ・トークンが正しく形成されていません。
ドキュメントサーバーの管理者にご連絡ください。", - "DE.Controllers.ApplicationController.errorTokenExpire": "ドキュメント・セキュリティ・トークンの有効期限が切れています。
ドキュメントサーバーの管理者に連絡してください。", + "DE.Controllers.ApplicationController.errorToken": "ドキュメントセキュリティトークンが正しく形成されていません。
ドキュメントサーバーの管理者にご連絡ください。", + "DE.Controllers.ApplicationController.errorTokenExpire": "ドキュメントセキュリティトークンの有効期限が切れています。
ドキュメントサーバーの管理者に連絡してください。", "DE.Controllers.ApplicationController.errorUpdateVersion": "ファイルが変更されました。ページがリロードされます。", "DE.Controllers.ApplicationController.errorUpdateVersionOnDisconnect": "インターネット接続が復旧し、ファイルのバージョンが更新されています。
作業を継続する前に、ファイルをダウンロードするか内容をコピーして変更が失われていないことを確認してから、このページを再読み込みしてください。", "DE.Controllers.ApplicationController.errorUserDrop": "今、ファイルにアクセスすることはできません。", @@ -139,7 +144,7 @@ "DE.Controllers.ApplicationController.txtClose": "閉じる", "DE.Controllers.ApplicationController.txtEmpty": "(空)", "DE.Controllers.ApplicationController.txtEnterDate": "日付を入力します", - "DE.Controllers.ApplicationController.txtPressLink": "リンクをクリックしてCTRLを押してください", + "DE.Controllers.ApplicationController.txtPressLink": "Ctrlを押しながらリンクをクリック", "DE.Controllers.ApplicationController.txtUntitled": "無題", "DE.Controllers.ApplicationController.unknownErrorText": "不明なエラー", "DE.Controllers.ApplicationController.unsupportedBrowserErrorText": "お使いのブラウザはサポートされていません。", diff --git a/apps/documenteditor/forms/locale/pt-pt.json b/apps/documenteditor/forms/locale/pt-pt.json index ceaa7ec48..c7b620728 100644 --- a/apps/documenteditor/forms/locale/pt-pt.json +++ b/apps/documenteditor/forms/locale/pt-pt.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "O ficheiro está protegido por palavra-passe e não pode ser aberto.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "O tamanho do documento excede o limite permitido pelo servidor.
Contacte o administrador do servidor de documentos para mais informações.", "DE.Controllers.ApplicationController.errorForceSave": "Ocorreu um erro ao guardar o ficheiro. Utilize a opção 'Descarregar como' para guardar o ficheiro no computador ou tente mais tarde.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro não coincide com a sua extensão.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a um documento de texto (doc, docx...), mas a extensão de ficheiro não é consistente: %1", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas a extensão de ficheiro não é consistente: %1", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a uma apresentação (ppt, pptx...), mas a extensão de ficheiro não é consistente: %1", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o ficheiro.
O conteúdo do ficheiro corresponde a uma folha de cálculo (xls, xlsx...), mas a extensão de ficheiro não é consistente: %1", "DE.Controllers.ApplicationController.errorLoadingFont": "Os tipos de letra não foram carregados.
Contacte o administrador do servidor de documentos.", "DE.Controllers.ApplicationController.errorServerVersion": "A versão do editor foi atualizada. A página será recarregada para aplicar as alterações.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "A sessão de edição expirou. Tente recarregar a página.", diff --git a/apps/documenteditor/forms/locale/pt.json b/apps/documenteditor/forms/locale/pt.json index 154a25d24..8ac11aff8 100644 --- a/apps/documenteditor/forms/locale/pt.json +++ b/apps/documenteditor/forms/locale/pt.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "O documento é protegido por senha e não pode ser aberto.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "O tamanho do arquivo excede o limite de seu servidor.
Por favor, contate seu administrador de Servidor de Documentos para detalhes.", "DE.Controllers.ApplicationController.errorForceSave": "Ocorreu um erro na gravação. Favor utilizar a opção 'Transferir como' para gravar o arquivo em seu computador ou tente novamente mais tarde.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo não corresponde à extensão do arquivo.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a documentos de texto (por exemplo, docx), mas o arquivo tem a extensão inconsistente: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas o arquivo tem a extensão inconsistente: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a apresentações (por exemplo, pptx), mas o arquivo tem a extensão inconsistente: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o arquivo.
O conteúdo do arquivo corresponde a planilhas (por exemplo, xlsx), mas o arquivo tem a extensão inconsistente: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "As fontes não foram carregadas.
Entre em contato com o administrador do Document Server.", "DE.Controllers.ApplicationController.errorServerVersion": "A versão do editor foi atualizada. A página será recarregada para aplicar as alterações.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "A sessão de edição de documentos expirou. Por Favor atualize a página.", diff --git a/apps/documenteditor/forms/locale/ro.json b/apps/documenteditor/forms/locale/ro.json index ba086360e..6ded9ac38 100644 --- a/apps/documenteditor/forms/locale/ro.json +++ b/apps/documenteditor/forms/locale/ro.json @@ -96,12 +96,18 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Fișierul este protejat cu parolă și deaceea nu poate fi deschis.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Dimensiunea fișierului depășește limita permisă de serverul Dvs.
Pentru detalii, contactați administratorul dumneavoastră de Server Documente.", "DE.Controllers.ApplicationController.errorForceSave": "S-a produs o eroare în timpul salvării fișierului. Pentru copierea de rezervă pe PC utilizați opțiunea Descărcare ca... sau încercați din nou mai târziu.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "Eroare la deschiderea fișierului.
Conținutul fișierului nu corespunde cu extensia numelui de fișier.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unui format de document text (ex. docx), dar extensia numelui de fișier nu se potrivește: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unuia dintre următoarele formate: pdf/djvu/xps/oxps, dar extensia numelui de fișier nu se potrivește: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unui format de prezentare (ex. pptx), dar extensia numelui de fișier nu se potrivește: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "Eroare la deschiderea fișierului.
Conținutul fișierului corespunde unui format de foaie de calcul (ex. xlsx), dar extensia numelui de fișier nu se potrivește: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Fonturile nu sunt încărcate.
Contactați administratorul dvs de Server Documente.", "DE.Controllers.ApplicationController.errorServerVersion": "Editorul a fost actualizat. Pagina va fi reîmprospătată pentru a aplica această actualizare.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Sesiunea de editare a expirat. Încercați să reîmprospătați pagina.", "DE.Controllers.ApplicationController.errorSessionIdle": "Acțiunile de editare a documentului nu s-au efectuat de ceva timp. Încercați să reîmprospătați pagina.", "DE.Controllers.ApplicationController.errorSessionToken": "Conexeunea la server s-a întrerupt. Încercați să reîmprospătati pagina.", "DE.Controllers.ApplicationController.errorSubmit": "Remiterea eșuată.", + "DE.Controllers.ApplicationController.errorTextFormWrongFormat": "Ați introdus o valoare care nu corespunde cu formatul câmpului.", "DE.Controllers.ApplicationController.errorToken": "Token de securitate din document este format în mod incorect.
Contactați administratorul dvs. de Server Documente.", "DE.Controllers.ApplicationController.errorTokenExpire": "Token de securitate din document a expirat.
Contactați administratorul dvs. de Server Documente.", "DE.Controllers.ApplicationController.errorUpdateVersion": "Versiunea fișierului s-a modificat. Pagina va fi reîmprospătată.", @@ -162,7 +168,7 @@ "DE.Views.ApplicationView.textPrintSel": "Imprimare selecție", "DE.Views.ApplicationView.textRedo": "Refacere", "DE.Views.ApplicationView.textSubmit": "Remitere", - "DE.Views.ApplicationView.textUndo": "Anulează", + "DE.Views.ApplicationView.textUndo": "Anulare", "DE.Views.ApplicationView.textZoom": "Zoom", "DE.Views.ApplicationView.txtDarkMode": "Modul Întunecat", "DE.Views.ApplicationView.txtDownload": "Descărcare", diff --git a/apps/documenteditor/forms/locale/ru.json b/apps/documenteditor/forms/locale/ru.json index 5f1b7b09d..989280ef5 100644 --- a/apps/documenteditor/forms/locale/ru.json +++ b/apps/documenteditor/forms/locale/ru.json @@ -96,6 +96,11 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Файл защищен паролем и не может быть открыт.", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Размер файла превышает ограничение, установленное для вашего сервера.
Обратитесь к администратору Сервера документов для получения дополнительной информации.", "DE.Controllers.ApplicationController.errorForceSave": "При сохранении файла произошла ошибка. Используйте опцию 'Скачать как', чтобы сохранить файл на жестком диске компьютера или повторите попытку позже.", + "DE.Controllers.ApplicationController.errorInconsistentExt": "При открытии файла произошла ошибка.
Содержимое файла не соответствует расширению файла.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "При открытии файла произошла ошибка.
Содержимое файла соответствует документам (например, docx), но файл имеет несоответствующее расширение: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPdf": "При открытии файла произошла ошибка.
Содержимое файла соответствует одному из следующих форматов: pdf/djvu/xps/oxps, но файл имеет несоответствующее расширение: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtPptx": "При открытии файла произошла ошибка.
Содержимое файла соответствует презентациям (например, pptx), но файл имеет несоответствующее расширение: %1.", + "DE.Controllers.ApplicationController.errorInconsistentExtXlsx": "При открытии файла произошла ошибка.
Содержимое файла соответствует электронным таблицам (например, xlsx), но файл имеет несоответствующее расширение: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Шрифты не загружены.
Пожалуйста, обратитесь к администратору Сервера документов.", "DE.Controllers.ApplicationController.errorServerVersion": "Версия редактора была обновлена. Страница будет перезагружена, чтобы применить изменения.", "DE.Controllers.ApplicationController.errorSessionAbsolute": "Время сеанса редактирования документа истекло. Пожалуйста, обновите страницу.", diff --git a/apps/documenteditor/forms/locale/tr.json b/apps/documenteditor/forms/locale/tr.json index 3f4aabfcf..ab4e83707 100644 --- a/apps/documenteditor/forms/locale/tr.json +++ b/apps/documenteditor/forms/locale/tr.json @@ -88,6 +88,7 @@ "DE.Controllers.ApplicationController.errorFilePassProtect": "Döküman şifre korumalı ve açılamadı", "DE.Controllers.ApplicationController.errorFileSizeExceed": "Dosya boyutu, sunucunuz için belirlenen limiti aşıyor.
Ayrıntılar için lütfen Doküman Sunucusu yöneticinizle iletişime geçin.", "DE.Controllers.ApplicationController.errorForceSave": "Dosya indirilirken bir hata oluştu. Dosyayı bilgisayarınıza kaydetmek için lütfen 'Farklı Kaydet' seçeneğini kullanın veya daha sonra tekrar deneyin.", + "DE.Controllers.ApplicationController.errorInconsistentExtDocx": "Dosya açılırken bir hata oluştu.
Dosya içeriği metin belgelerine (örn. docx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", "DE.Controllers.ApplicationController.errorLoadingFont": "Yazı tipleri yüklenmedi.
Lütfen Doküman Sunucusu yöneticinize başvurun.", "DE.Controllers.ApplicationController.errorServerVersion": "Editör versiyonu güncellendi. Değişikliklerin uygulanabilmesi için sayfa yenilenecek.", "DE.Controllers.ApplicationController.errorSessionToken": "Sunucu bağlantısı yarıda kesildi. Lütfen sayfayı yeniden yükleyin.", @@ -150,9 +151,10 @@ "DE.Views.ApplicationView.textRedo": "Yinele", "DE.Views.ApplicationView.textSubmit": "Kaydet", "DE.Views.ApplicationView.textUndo": "Geri Al", + "DE.Views.ApplicationView.textZoom": "Yakınlaştırma", "DE.Views.ApplicationView.txtDarkMode": "Karanlık mod", "DE.Views.ApplicationView.txtDownload": "İndir", - "DE.Views.ApplicationView.txtDownloadDocx": "docx olarak indir", + "DE.Views.ApplicationView.txtDownloadDocx": ".docx olarak indir", "DE.Views.ApplicationView.txtDownloadPdf": "Pdf olarak indir", "DE.Views.ApplicationView.txtEmbed": "Gömülü", "DE.Views.ApplicationView.txtFileLocation": "Dosya konumunu aç", diff --git a/apps/documenteditor/main/app.js b/apps/documenteditor/main/app.js index 190281919..9c0e5c263 100644 --- a/apps/documenteditor/main/app.js +++ b/apps/documenteditor/main/app.js @@ -53,7 +53,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', allfonts : '../../sdkjs/common/AllFonts', sdk : '../../sdkjs/word/sdk-all-min', api : 'api/documents/api', @@ -107,7 +107,7 @@ require.config({ 'underscore', 'allfonts', 'xregexp', - 'sockjs' + 'socketio' ] }, gateway: { @@ -127,12 +127,10 @@ require([ 'backbone', 'bootstrap', 'core', - 'sdk', - 'api', 'analytics', 'gateway', 'locale' -], function (Backbone, Bootstrap, Core) { +], function (Sdk, Backbone, Bootstrap, Core) { if (Backbone.History && Backbone.History.started) return; Backbone.history.start(); @@ -157,6 +155,8 @@ require([ 'Main', 'ViewTab', 'Search', + 'DocProtection', + 'Print', 'Common.Controllers.Fonts', 'Common.Controllers.History' /** coauthoring begin **/ @@ -191,6 +191,8 @@ require([ 'documenteditor/main/app/controller/Main', 'documenteditor/main/app/controller/ViewTab', 'documenteditor/main/app/controller/Search', + 'documenteditor/main/app/controller/DocProtection', + 'documenteditor/main/app/controller/Print', 'documenteditor/main/app/view/FileMenuPanels', 'documenteditor/main/app/view/ParagraphSettings', 'documenteditor/main/app/view/HeaderFooterSettings', @@ -224,4 +226,4 @@ require([ window.alert(reqerr); window.location.reload(); } -}); \ No newline at end of file +}); diff --git a/apps/documenteditor/main/app/controller/DocProtection.js b/apps/documenteditor/main/app/controller/DocProtection.js new file mode 100644 index 000000000..58a482d5a --- /dev/null +++ b/apps/documenteditor/main/app/controller/DocProtection.js @@ -0,0 +1,252 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2022 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * + */ + +/** + * DocProtection.js + * + * Created by Julia Radzhabova on 21.09.2022 + * Copyright (c) 2022 Ascensio System SIA. All rights reserved. + * + */ +define([ + 'core', + 'common/main/lib/view/Protection', + 'documenteditor/main/app/view/DocProtection', + 'documenteditor/main/app/view/ProtectDialog' +], function () { + 'use strict'; + + if (!Common.enumLock) + Common.enumLock = {}; + + var enumLock = { + docLockView: 'lock-mode-view', + docLockForms: 'lock-mode-forms', + docLockReview: 'lock-mode-review', + docLockComments: 'lock-mode-comments', + protectLock: 'protect-lock' + }; + for (var key in enumLock) { + if (enumLock.hasOwnProperty(key)) { + Common.enumLock[key] = enumLock[key]; + } + } + + DE.Controllers.DocProtection = Backbone.Controller.extend(_.extend({ + models : [], + collections : [ + ], + views : [ + 'DocProtection' + ], + + initialize: function () { + + this.addListeners({ + 'DocProtection': { + 'protect:document': _.bind(this.onProtectDocClick, this) + } + }); + }, + onLaunch: function () { + this._state = {}; + Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); + }, + setConfig: function (data, api) { + this.setApi(api); + }, + setApi: function (api) { + if (api) { + this.api = api; + this.api.asc_registerCallback('asc_onChangeDocumentProtection',_.bind(this.onChangeProtectDocument, this)); + this.api.asc_registerCallback('asc_onLockDocumentProtection',_.bind(this.onLockDocumentProtection, this)); + } + }, + + setMode: function(mode) { + this.appConfig = mode; + + this.appConfig.isEdit && (this.view = this.createView('DocProtection', { + mode: mode + })); + + return this; + }, + + createToolbarPanel: function() { + if (this.view) + return this.view.getPanel(); + }, + + getView: function(name) { + return !name && this.view ? + this.view : Backbone.Controller.prototype.getView.call(this, name); + }, + + onProtectDocClick: function(state) { + this.view.btnProtectDoc.toggle(!state, true); + if (state) { + var me = this; + me._docProtectDlg = new DE.Views.ProtectDialog({ + props: me.appConfig, + handler: function(result, value, props) { + if (result == 'ok') { + var protection = me.api.asc_getDocumentProtection() || new AscCommonWord.CDocProtect(); + protection.asc_setEditType(props); + protection.asc_setPassword(value); + me.api.asc_setDocumentProtection(protection); + } + Common.NotificationCenter.trigger('edit:complete'); + } + }).on('close', function() { + me._docProtectDlg = undefined; + }); + + me._docProtectDlg.show(); + } else { + var me = this, + props = me.api.asc_getDocumentProtection(); + if (props && props.asc_getIsPassword()) { + var win = new Common.Views.OpenDialog({ + title: me.view.txtWBUnlockTitle, + closable: true, + type: Common.Utils.importTextType.DRM, + txtOpenFile: me.view.txtWBUnlockDescription, + validatePwd: false, + maxPasswordLength: 15, + handler: function (result, value) { + if (result == 'ok') { + if (me.api) { + props.asc_setEditType(Asc.c_oAscEDocProtect.None); + value && value.drmOptions && props.asc_setPassword(value.drmOptions.asc_getPassword()); + me.api.asc_setDocumentProtection(props); + } + Common.NotificationCenter.trigger('edit:complete'); + } + } + }).on('close', function() { + }); + + win.show(); + } else { + if (!props) + props = new AscCommonWord.CDocProtect(); + props.asc_setEditType(Asc.c_oAscEDocProtect.None); + me.api.asc_setDocumentProtection(props); + } + } + }, + + onAppReady: function (config) { + if (!this.view) return; + + var me = this; + (new Promise(function (resolve) { + resolve(); + })).then(function () { + var props = me.api.asc_getDocumentProtection(), + type = props ? props.asc_getEditType() : Asc.c_oAscEDocProtect.None, + isProtected = (type === Asc.c_oAscEDocProtect.ReadOnly || type === Asc.c_oAscEDocProtect.Comments || + type === Asc.c_oAscEDocProtect.TrackedChanges || type === Asc.c_oAscEDocProtect.Forms); + me.view.btnProtectDoc.toggle(!!isProtected, true); + props && me.applyRestrictions(type); + }); + }, + + onChangeProtectDocument: function() { + var props = this.getDocProps(true), + isProtected = props && (props.isReadOnly || props.isCommentsOnly || props.isFormsOnly || props.isReviewOnly); + this.view && this.view.btnProtectDoc.toggle(isProtected, true); + + // off preview forms + var forms = this.getApplication().getController('FormsTab'); + forms && forms.changeViewFormMode(false); + + // off preview review changes + var review = this.getApplication().getController('Common.Controllers.ReviewChanges'); + if (review && review.isPreviewChangesMode()) { + var value = Common.Utils.InternalSettings.get("de-review-mode-editor") || 'markup'; + review.turnDisplayMode(value); + review.view && review.view.turnDisplayMode(value); + } + + props && this.applyRestrictions(props.type); + if (this._docProtectDlg && this._docProtectDlg.isVisible()) + this._docProtectDlg.SetDisabled(!!this._state.lockDocProtect || isProtected); + Common.NotificationCenter.trigger('protect:doclock', props); + }, + + getDocProps: function(update) { + if (!this.appConfig || !this.appConfig.isEdit && !this.appConfig.isRestrictedEdit) return; + + if (update || !this._state.docProtection) { + var props = this.api.asc_getDocumentProtection(), + type = props ? props.asc_getEditType() : Asc.c_oAscEDocProtect.None; + this._state.docProtection = { + type: type, + isReadOnly: type===Asc.c_oAscEDocProtect.ReadOnly, + isCommentsOnly: type===Asc.c_oAscEDocProtect.Comments, + isReviewOnly: type===Asc.c_oAscEDocProtect.TrackedChanges, + isFormsOnly: type===Asc.c_oAscEDocProtect.Forms + }; + } + return this._state.docProtection; + }, + + applyRestrictions: function(type) { + if (type === Asc.c_oAscEDocProtect.ReadOnly) { + this.api.asc_setRestriction(Asc.c_oAscRestrictionType.View); + } else if (type === Asc.c_oAscEDocProtect.Comments) { + this.api.asc_setRestriction(this.appConfig.canComments ? Asc.c_oAscRestrictionType.OnlyComments : Asc.c_oAscRestrictionType.View); + } else if (type === Asc.c_oAscEDocProtect.Forms) { + this.api.asc_setRestriction(this.appConfig.canFillForms ? Asc.c_oAscRestrictionType.OnlyForms : Asc.c_oAscRestrictionType.View); + } else { // none or tracked changes + if (this.appConfig.isRestrictedEdit) { + this.appConfig.canComments && this.api.asc_setRestriction(Asc.c_oAscRestrictionType.OnlyComments); + this.appConfig.canFillForms && this.api.asc_setRestriction(Asc.c_oAscRestrictionType.OnlyForms); + } else + this.api.asc_setRestriction(Asc.c_oAscRestrictionType.None); + } + this.view && this.view.updateProtectionTips(type); + }, + + onLockDocumentProtection: function(state) { + this._state.lockDocProtect = state; + this.view && Common.Utils.lockControls(Common.enumLock.protectLock, state, {array: [this.view.btnProtectDoc]}); + if (this._docProtectDlg && this._docProtectDlg.isVisible()) + this._docProtectDlg.SetDisabled(state || this._state.docProtection && (this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly || + this._state.docProtection.isCommentsOnly || this._state.docProtection.isReviewOnly)); + } + + }, DE.Controllers.DocProtection || {})); +}); \ No newline at end of file diff --git a/apps/documenteditor/main/app/controller/DocumentHolder.js b/apps/documenteditor/main/app/controller/DocumentHolder.js index c42c99a88..37f6d860d 100644 --- a/apps/documenteditor/main/app/controller/DocumentHolder.js +++ b/apps/documenteditor/main/app/controller/DocumentHolder.js @@ -187,6 +187,7 @@ define([ me.onDocumentHolderResize(); } }); + Common.NotificationCenter.on('protect:doclock', _.bind(me.onChangeProtectDocument, me)); }, setApi: function(o) { @@ -211,6 +212,8 @@ define([ this.api.asc_registerCallback('asc_ChangeCropState', _.bind(this.onChangeCropState, this)); this.api.asc_registerCallback('asc_onLockDocumentProps', _.bind(this.onApiLockDocumentProps, this)); this.api.asc_registerCallback('asc_onUnLockDocumentProps', _.bind(this.onApiUnLockDocumentProps, this)); + this.api.asc_registerCallback('asc_onShowMathTrack', _.bind(this.onShowMathTrack, this)); + this.api.asc_registerCallback('asc_onHideMathTrack', _.bind(this.onHideMathTrack, this)); } this.api.asc_registerCallback('asc_onCoAuthoringDisconnect', _.bind(this.onCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onCoAuthoringDisconnect, this)); @@ -226,7 +229,6 @@ define([ this.api.asc_registerCallback('asc_onShowContentControlsActions',_.bind(this.onShowContentControlsActions, this)); this.api.asc_registerCallback('asc_onHideContentControlsActions',_.bind(this.onHideContentControlsActions, this)); } - this.documentHolder.setApi(this.api); } @@ -425,6 +427,9 @@ define([ view.menuParaTOCSettings.on('click', _.bind(me.onParaTOCSettings, me)); view.menuTableEquation.menu.on('item:click', _.bind(me.convertEquation, me)); view.menuParagraphEquation.menu.on('item:click', _.bind(me.convertEquation, me)); + view.menuSaveAsPicture.on('click', _.bind(me.saveAsPicture, me)); + + me.onChangeProtectDocument(); }, getView: function (name) { @@ -585,7 +590,9 @@ define([ showObjectMenu: function(event, docElement, eOpts){ var me = this; if (me.api){ - var obj = (me.mode.isEdit && !me._isDisabled) ? me.fillMenuProps(me.api.getSelectedElements()) : me.fillViewMenuProps(me.api.getSelectedElements()); + var docProtection = me.documentHolder._docProtection; + var obj = (me.mode.isEdit && !(me._isDisabled || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly)) ? + me.fillMenuProps(me.api.getSelectedElements()) : me.fillViewMenuProps(me.api.getSelectedElements()); if (obj) me.showPopupMenu(obj.menu_to_show, obj.menu_props, event, docElement, eOpts); } }, @@ -612,7 +619,9 @@ define([ var me = this, currentMenu = me.documentHolder.currentMenu; if (currentMenu && currentMenu.isVisible() && currentMenu !== me.documentHolder.hdrMenu){ - var obj = (me.mode.isEdit && !me._isDisabled) ? me.fillMenuProps(selectedElements) : me.fillViewMenuProps(selectedElements); + var docProtection = me.documentHolder._docProtection; + var obj = (me.mode.isEdit && !(me._isDisabled || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly)) ? + me.fillMenuProps(selectedElements) : me.fillViewMenuProps(selectedElements); if (obj) { if (obj.menu_to_show===currentMenu) { currentMenu.options.initMenu(obj.menu_props); @@ -620,6 +629,25 @@ define([ } } } + + if (this.mode && this.mode.isEdit) { + var i = -1, + in_equation = false, + locked = false; + while (++i < selectedElements.length) { + var type = selectedElements[i].get_ObjectType(); + if (type === Asc.c_oAscTypeSelectElement.Math) { + in_equation = true; + } else if (type === Asc.c_oAscTypeSelectElement.Paragraph || type === Asc.c_oAscTypeSelectElement.Table || type === Asc.c_oAscTypeSelectElement.Header) { + var value = selectedElements[i].get_ObjectValue(); + value && (locked = locked || value.get_Locked()); + } + } + if (in_equation) { + this._state.equationLocked = locked; + this.disableEquationBar(); + } + } }, handleDocumentWheel: function(event) { @@ -691,6 +719,7 @@ define([ me.documentHolder.cmpEl.offset().top - $(window).scrollTop() ]; me._Height = me.documentHolder.cmpEl.height(); + me._Width = me.documentHolder.cmpEl.width(); me._BodyWidth = $('body').width(); }, @@ -824,7 +853,8 @@ define([ onDialogAddHyperlink: function() { var me = this; var win, props, text; - if (me.api && me.mode.isEdit && !me._isDisabled && !me.getApplication().getController('LeftMenu').leftMenu.menuFile.isVisible()){ + var docProtection = me.documentHolder._docProtection; + if (me.api && me.mode.isEdit && !(me._isDisabled || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly) && !me.getApplication().getController('LeftMenu').leftMenu.menuFile.isVisible()){ var handlerDlg = function(dlg, result) { if (result == 'ok') { props = dlg.getSettings(); @@ -953,6 +983,7 @@ define([ cmpEl.offset().top - $(window).scrollTop() ]; me._Height = cmpEl.height(); + me._Width = cmpEl.width(); me._BodyWidth = $('body').width(); } @@ -987,7 +1018,7 @@ define([ changes = changes[0]; if (changes) { ToolTip = ''+ Common.Utils.String.htmlEncode(AscCommon.UserInfoParser.getParsedName(changes.get('username'))) +' '; - ToolTip += ''+ changes.get('date') +'
'; + ToolTip += ''+ changes.get('date') +'
'; ToolTip += changes.get('changetext'); if (ToolTip.length>1000) ToolTip = ToolTip.substr(0, 1000) + '...'; @@ -1180,7 +1211,8 @@ define([ }, onDoubleClickOnChart: function(chart) { - if (this.mode.isEdit && !this._isDisabled) { + var docProtection = this.documentHolder._docProtection; + if (this.mode.isEdit && !(this._isDisabled || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly)) { var diagramEditor = this.getApplication().getController('Common.Controllers.ExternalDiagramEditor').getView('Common.Views.ExternalDiagramEditor'); if (diagramEditor && chart) { diagramEditor.setEditMode(true); @@ -1191,7 +1223,8 @@ define([ }, onDoubleClickOnTableOleObject: function(chart) { - if (this.mode.isEdit && !this._isDisabled) { + var docProtection = this.documentHolder._docProtection; + if (this.mode.isEdit && !(this._isDisabled || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly)) { var oleEditor = this.getApplication().getController('Common.Controllers.ExternalOleEditor').getView('Common.Views.ExternalOleEditor'); if (oleEditor && chart) { oleEditor.setEditMode(true); @@ -1229,7 +1262,7 @@ define([ }, onChangeCropState: function(state) { - this.documentHolder.menuImgCrop.menu.items[0].setChecked(state, true); + this.documentHolder.menuImgCrop && this.documentHolder.menuImgCrop.menu.items[0].setChecked(state, true); }, onRulerDblClick: function(type) { @@ -1251,15 +1284,11 @@ define([ handler: function(dlg, result) { if (result == 'ok') { var props = dlg.getSettings(); - var mnu = DE.getController('Toolbar').toolbar.btnPageMargins.menu.items[0]; - mnu.setVisible(true); - mnu.setChecked(true); - mnu.options.value = mnu.value = [props.get_TopMargin(), props.get_LeftMargin(), props.get_BottomMargin(), props.get_RightMargin()]; - $(mnu.el).html(mnu.template({id: Common.UI.getId(), caption : mnu.caption, options : mnu.options})); Common.localStorage.setItem("de-pgmargins-top", props.get_TopMargin()); Common.localStorage.setItem("de-pgmargins-left", props.get_LeftMargin()); Common.localStorage.setItem("de-pgmargins-bottom", props.get_BottomMargin()); Common.localStorage.setItem("de-pgmargins-right", props.get_RightMargin()); + Common.NotificationCenter.trigger('margins:update', props); me.api.asc_SetSectionProps(props); me.editComplete(); @@ -1489,6 +1518,7 @@ define([ SetDisabled: function(state, canProtect, fillFormMode) { this._isDisabled = state; this.documentHolder.SetDisabled(state, canProtect, fillFormMode); + this.disableEquationBar(); }, onTextLanguage: function(langid) { @@ -1579,6 +1609,7 @@ define([ cmpEl.offset().top - $(window).scrollTop() ]; me._Height = cmpEl.height(); + me._Width = cmpEl.width(); me._BodyWidth = $('body').width(); me.onMouseMoveStart(); }, @@ -1895,7 +1926,8 @@ define([ this.api.asc_ViewCertificate(datavalue); //certificate id break; case 2: - Common.NotificationCenter.trigger('protect:signature', 'visible', this._isDisabled, datavalue);//guid, can edit settings for requested signature + var docProtection = this.documentHolder._docProtection; + Common.NotificationCenter.trigger('protect:signature', 'visible', this._isDisabled || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly, datavalue);//guid, can edit settings for requested signature break; case 3: var me = this; @@ -2232,7 +2264,7 @@ define([ }, onRefreshField: function(item, e){ - this.api && this.api.asc_UpdateComplexField(item.options.fieldProps); + this.api && this.api.asc_UpdateFields(true); this.editComplete(); }, @@ -2297,6 +2329,151 @@ define([ return false; }, + onShowMathTrack: function(bounds) { + if (bounds[3] < 0) { + this.onHideMathTrack(); + return; + } + var me = this, + documentHolder = me.documentHolder, + eqContainer = documentHolder.cmpEl.find('#equation-container'); + + // Prepare menu container + if (eqContainer.length < 1) { + var equationsStore = me.getApplication().getCollection('EquationGroups'), + eqStr = '
'; + + me.getApplication().getController('Toolbar').onMathTypes(); + + me.equationBtns = []; + for (var i = 0; i < equationsStore.length; ++i) { + var style = 'margin-right: 8px;' + (i==0 ? 'margin-left: 5px;' : ''); + eqStr += ''; + } + eqStr += '
'; + eqStr += ''; + eqStr += '
'; + eqContainer = $(eqStr); + documentHolder.cmpEl.find('#id_main_view').append(eqContainer); + var onShowBefore = function (menu) { + var index = menu.options.value, + group = equationsStore.at(index); + var equationPicker = new Common.UI.DataViewSimple({ + el: $('#id-document-holder-btn-equation-menu-' + index, menu.cmpEl), + parentMenu: menu, + store: group.get('groupStore'), + scrollAlwaysVisible: true, + showLast: false, + restoreHeight: 450, + itemTemplate: _.template( + '
' + + '
' + + '
') + }); + equationPicker.on('item:click', function(picker, item, record, e) { + if (me.api) { + if (record) + me.api.asc_AddMath(record.get('data').equationType); + } + }); + menu.off('show:before', onShowBefore); + }; + var bringForward = function (menu) { + eqContainer.addClass('has-open-menu'); + }; + var sendBackward = function (menu) { + eqContainer.removeClass('has-open-menu'); + }; + for (var i = 0; i < equationsStore.length; ++i) { + var equationGroup = equationsStore.at(i); + var btn = new Common.UI.Button({ + parentEl: $('#id-document-holder-btn-equation-' + i, documentHolder.cmpEl), + cls : 'btn-toolbar no-caret', + iconCls : 'svgicon ' + equationGroup.get('groupIcon'), + hint : equationGroup.get('groupName'), + menu : new Common.UI.Menu({ + cls: 'menu-shapes', + value: i, + items: [ + { template: _.template('') } + ] + }) + }); + btn.menu.on('show:before', onShowBefore); + btn.menu.on('show:before', bringForward); + btn.menu.on('hide:after', sendBackward); + me.equationBtns.push(btn); + } + + me.equationSettingsBtn = new Common.UI.Button({ + parentEl: $('#id-document-holder-btn-equation-settings', documentHolder.cmpEl), + cls : 'btn-toolbar no-caret', + iconCls : 'toolbar__icon more-vertical', + hint : me.documentHolder.advancedEquationText, + menu : me.documentHolder.createEquationMenu('popuptbeqinput', 'tl-bl') + }); + me.equationSettingsBtn.menu.options.initMenu = function() { + var eq = me.api.asc_GetMathInputType(); + var menu = me.equationSettingsBtn.menu; + menu.items[0].setChecked(eq===Asc.c_oAscMathInputType.Unicode); + menu.items[1].setChecked(eq===Asc.c_oAscMathInputType.LaTeX); + menu.items[8].setChecked(me.api.asc_IsInlineMath()); + }; + me.equationSettingsBtn.menu.on('item:click', _.bind(me.convertEquation, me)); + me.equationSettingsBtn.menu.on('show:before', function(menu) { + menu.options.initMenu(); + }); + } + + var showPoint = [(bounds[0] + bounds[2])/2 - eqContainer.outerWidth()/2, bounds[1] - eqContainer.outerHeight() - 10]; + if (!Common.Utils.InternalSettings.get("de-hidden-rulers")) { + showPoint = [showPoint[0] - 19, showPoint[1] - 26]; + } + if (showPoint[1]<0) { + showPoint[1] = bounds[3] + 10; + !Common.Utils.InternalSettings.get("de-hidden-rulers") && (showPoint[1] -= 26); + } + showPoint[1] = Math.min(me._Height - eqContainer.outerHeight(), Math.max(0, showPoint[1])); + eqContainer.css({left: showPoint[0], top : showPoint[1]}); + + var menuAlign = (me._Height - showPoint[1] - eqContainer.outerHeight() < 220) ? 'bl-tl' : 'tl-bl'; + me.equationBtns.forEach(function(item){ + item && (item.menu.menuAlign = menuAlign); + }); + me.equationSettingsBtn.menu.menuAlign = menuAlign; + if (eqContainer.is(':visible')) { + if (me.equationSettingsBtn.menu.isVisible()) { + me.equationSettingsBtn.menu.options.initMenu(); + me.equationSettingsBtn.menu.alignPosition(); + } + } else { + eqContainer.show(); + } + me.disableEquationBar(); + }, + + onHideMathTrack: function() { + var eqContainer = this.documentHolder.cmpEl.find('#equation-container'); + if (eqContainer.is(':visible')) { + eqContainer.hide(); + } + }, + + disableEquationBar: function() { + var eqContainer = this.documentHolder.cmpEl.find('#equation-container'), + docProtection = this.documentHolder._docProtection, + disabled = this._isDisabled || this._state.equationLocked || docProtection.isReadOnly || docProtection.isFormsOnly || docProtection.isCommentsOnly; + + if (eqContainer.length>0 && eqContainer.is(':visible')) { + this.equationBtns.forEach(function(item){ + item && item.setDisabled(!!disabled); + }); + this.equationSettingsBtn.setDisabled(!!disabled); + } + }, + convertEquation: function(menu, item, e) { if (this.api) { if (item.options.type=='input') @@ -2308,6 +2485,23 @@ define([ } }, + saveAsPicture: function() { + if(this.api) { + this.api.asc_SaveDrawingAsPicture(); + } + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props && this.documentHolder) { + this.documentHolder._docProtection = props; + this.disableEquationBar(); + } + }, + editComplete: function() { this.documentHolder && this.documentHolder.fireEvent('editcomplete', this.documentHolder); } diff --git a/apps/documenteditor/main/app/controller/FormsTab.js b/apps/documenteditor/main/app/controller/FormsTab.js index 456c25627..0a6809912 100644 --- a/apps/documenteditor/main/app/controller/FormsTab.js +++ b/apps/documenteditor/main/app/controller/FormsTab.js @@ -76,6 +76,7 @@ define([ // this.api.asc_registerCallback('asc_onShowContentControlsActions',_.bind(this.onShowContentControlsActions, this)); // this.api.asc_registerCallback('asc_onHideContentControlsActions',_.bind(this.onHideContentControlsActions, this)); } + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); return this; }, @@ -216,6 +217,13 @@ define([ Common.NotificationCenter.trigger('edit:complete', this.toolbar); }, + changeViewFormMode: function(state) { + if (this.view && (state !== this.view.btnViewForm.isActive())) { + this.view.btnViewForm.toggle(state, true); + this.onModeClick(state); + } + }, + onClearClick: function() { if (this.api) { this.api.asc_ClearAllSpecialForms(); @@ -316,7 +324,7 @@ define([ rightMenu: {clear: disable, disable: true}, statusBar: true, leftMenu: {disable: false, previewMode: true}, - fileMenu: false, + fileMenu: {info: true}, navigation: {disable: false, previewMode: true}, comments: {disable: false, previewMode: true}, chat: false, @@ -377,6 +385,7 @@ define([ me.view.btnHighlight.currentColor = clr; } config.isEdit && config.canFeatureContentControl && config.isFormCreator && me.showCreateFormTip(); // show tip only when create form in docxf + me.onChangeProtectDocument(); }); }, @@ -430,6 +439,23 @@ define([ if (tab !== 'forms') { this.tipSaveForm && this.tipSaveForm.close(); } + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + if (this.view) { + var arr = this.view.getButtons(); + Common.Utils.lockControls(Common.enumLock.docLockView, props.isReadOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockForms, props.isFormsOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockReview, props.isReviewOnly, {array: arr}); + Common.Utils.lockControls(Common.enumLock.docLockComments, props.isCommentsOnly, {array: arr}); + } + } } }, DE.Controllers.FormsTab || {})); diff --git a/apps/documenteditor/main/app/controller/LeftMenu.js b/apps/documenteditor/main/app/controller/LeftMenu.js index f16c7f811..f454f1769 100644 --- a/apps/documenteditor/main/app/controller/LeftMenu.js +++ b/apps/documenteditor/main/app/controller/LeftMenu.js @@ -100,7 +100,8 @@ define([ 'collaboration:chat': _.bind(this.onShowHideChat, this) }, 'ViewTab': { - 'viewtab:navigation': _.bind(this.onShowHideNavigation, this) + 'viewtab:navigation': _.bind(this.onShowHideNavigation, this), + 'leftmenu:hide': _.bind(this.onLeftMenuHide, this) }, 'SearchBar': { 'search:show': _.bind(this.onShowHideSearch, this) @@ -113,12 +114,22 @@ define([ if ( !this.leftMenu.panelHistory.isVisible() ) this.clickMenuFileItem(null, 'history'); }, this)); + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); + Common.NotificationCenter.on('file:print', _.bind(this.clickToolbarPrint, this)); }, onLaunch: function() { this.leftMenu = this.createView('LeftMenu').render(); this.leftMenu.btnSearchBar.on('toggle', _.bind(this.onMenuSearchBar, this)); - + this._state = { + disableEditing: false, + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + } + }; Common.util.Shortcuts.delegateShortcuts({ shortcuts: { 'command+shift+s,ctrl+shift+s': _.bind(this.onShortcut, this, 'save'), @@ -208,14 +219,13 @@ define([ this.leftMenu.setOptionsPanel('navigation', this.getApplication().getController('Navigation').getView('Navigation')); if (this.mode.canUseThumbnails) { - this.leftMenu.btnThumbnails.show(); this.leftMenu.setOptionsPanel('thumbnails', this.getApplication().getController('PageThumbnails').getView('PageThumbnails')); } else { this.leftMenu.btnThumbnails.hide(); } (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); - + this.onChangeProtectDocument(); Common.util.Shortcuts.resumeEvents(); return this; }, @@ -435,10 +445,6 @@ define([ applySettings: function(menu) { var value; - value = Common.localStorage.getBool("de-settings-inputmode"); - Common.Utils.InternalSettings.set("de-settings-inputmode", value); - this.api.SetTextBoxInputMode(value); - var fast_coauth = Common.Utils.InternalSettings.get("de-settings-coauthmode"); /** coauthoring begin **/ if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring ) { @@ -553,6 +559,13 @@ define([ this.leftMenu.menuFile.hide(); }, + clickToolbarPrint: function () { + if (this.mode.canPreviewPrint) + this.leftMenu.showMenu('file:printpreview'); + else if (this.mode.canPrint) + this.clickMenuFileItem(null, 'print'); + }, + changeToolbarSaveState: function (state) { var btnSave = this.leftMenu.menuFile.getButton('save'); btnSave && btnSave.setDisabled(state); @@ -584,8 +597,14 @@ define([ }, setPreviewMode: function(mode) { - if (this.viewmode === mode) return; - this.viewmode = mode; + this._state.disableEditing = mode; + this.updatePreviewMode(); + }, + + updatePreviewMode: function() { + var viewmode = this._state.disableEditing || this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly; + if (this.viewmode === viewmode) return; + this.viewmode = viewmode; this.leftMenu.panelSearch && this.leftMenu.panelSearch.setSearchMode(this.viewmode ? 'no-replace' : 'search'); }, @@ -820,6 +839,7 @@ define([ onPluginOpen: function(panel, type, action) { if ( type == 'onboard' ) { if ( action == 'open' ) { + this.tryToShowLeftMenu(); this.leftMenu.close(); this.leftMenu.panelPlugins.show(); this.leftMenu.onBtnMenuClick({pressed:true, options: {action: 'plugins'}}); @@ -846,6 +866,7 @@ define([ if (this.mode.canCoAuthoring && this.mode.canChat && !this.mode.isLightVersion) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('chat'); } else { this.leftMenu.btnChat.toggle(false, true); @@ -857,6 +878,7 @@ define([ onShowHideNavigation: function(state) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('navigation'); } else { this.leftMenu.btnNavigation.toggle(false, true); @@ -867,6 +889,7 @@ define([ onShowHideSearch: function (state, findText) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('advancedsearch', undefined, true); this.leftMenu.fireEvent('search:aftershow', this.leftMenu, findText); } else { @@ -890,6 +913,35 @@ define([ return this.leftMenu && this.leftMenu.panelComments && this.leftMenu.panelComments.isVisible(); }, + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + this.updatePreviewMode(); + } + }, + + onLeftMenuHide: function (view, status) { + if (this.leftMenu) { + !status && this.leftMenu.close(); + status ? this.leftMenu.show() : this.leftMenu.hide(); + Common.localStorage.setBool('de-hidden-leftmenu', !status); + + !view && this.leftMenu.fireEvent('view:hide', [this, !status]); + } + + Common.NotificationCenter.trigger('layout:changed', 'main'); + Common.NotificationCenter.trigger('edit:complete', this.leftMenu); + }, + + tryToShowLeftMenu: function() { + if ((!this.mode.canBrandingExt || !this.mode.customization || this.mode.customization.leftMenu !== false) && Common.UI.LayoutManager.isElementVisible('leftMenu')) + this.onLeftMenuHide(null, true); + }, + textNoTextFound : 'Text not found', newDocumentTitle : 'Unnamed document', requestEditRightsText : 'Requesting editing rights...', diff --git a/apps/documenteditor/main/app/controller/Links.js b/apps/documenteditor/main/app/controller/Links.js index cd3577712..fb16e6a22 100644 --- a/apps/documenteditor/main/app/controller/Links.js +++ b/apps/documenteditor/main/app/controller/Links.js @@ -94,6 +94,7 @@ define([ Common.Gateway.on('setactionlink', function (url) { console.log('url with actions: ' + url); }.bind(this)); + Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); }, setApi: function (api) { @@ -108,6 +109,7 @@ define([ this.api.asc_registerCallback('asc_onAscReplaceCurrentTOF',_.bind(this.onAscReplaceCurrentTOF, this)); this.api.asc_registerCallback('asc_onAscTOFUpdate',_.bind(this.onAscTOFUpdate, this)); } + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); return this; }, @@ -203,7 +205,7 @@ define([ }, lockToolbar: function (causes, lock, opts) { - Common.Utils.lockControls(causes, lock, opts, this.view.getButtons()); + this.view && Common.Utils.lockControls(causes, lock, opts, this.view.getButtons()); }, onApiCanAddHyperlink: function(value) { @@ -570,6 +572,32 @@ define([ Common.NotificationCenter.trigger('edit:complete', me.toolbar); } })).show(); + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + this.lockToolbar(Common.enumLock.docLockView, props.isReadOnly); + this.lockToolbar(Common.enumLock.docLockForms, props.isFormsOnly); + this.lockToolbar(Common.enumLock.docLockReview, props.isReviewOnly); + this.lockToolbar(Common.enumLock.docLockComments, props.isCommentsOnly); + } + }, + + onAppReady: function (config) { + var me = this; + (new Promise(function (accept, reject) { + accept(); + })).then(function(){ + if (me.view) { + me.view.onAppReady(config); + me.onChangeProtectDocument(); + } + }); } }, DE.Controllers.Links || {})); diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js index 531895fce..14009fa7d 100644 --- a/apps/documenteditor/main/app/controller/Main.js +++ b/apps/documenteditor/main/app/controller/Main.js @@ -380,6 +380,24 @@ define([ Common.Utils.InternalSettings.set("guest-username", value); Common.Utils.InternalSettings.set("save-guest-username", !!value); } + if (this.appOptions.customization.font) { + if (this.appOptions.customization.font.name && typeof this.appOptions.customization.font.name === 'string') { + var arr = this.appOptions.customization.font.name.split(','); + for (var i=0; i86)); // if isChrome or isOpera == true use asc_onPrintUrl event + Common.NotificationCenter.trigger('file:print'); Common.component.Analytics.trackEvent('Print'); }, @@ -2652,6 +2703,39 @@ define([ if (url) this.iframePrint.src = url; }, + onPrintQuick: function() { + if (!this.appOptions.canQuickPrint) return; + + var value = Common.localStorage.getBool("de-hide-quick-print-warning"), + me = this, + handler = function () { + var printopt = new Asc.asc_CAdjustPrint(); + printopt.asc_setNativeOptions({quickPrint: true}); + var opts = new Asc.asc_CDownloadOptions(); + opts.asc_setAdvancedOptions(printopt); + me.api.asc_Print(opts); + Common.component.Analytics.trackEvent('Print'); + }; + + if (value) { + handler.call(this); + } else { + Common.UI.warning({ + msg: this.textTryQuickPrint, + buttons: ['yes', 'no'], + primary: 'yes', + dontshow: true, + maxwidth: 500, + callback: function(btn, dontshow){ + dontshow && Common.localStorage.setBool("de-hide-quick-print-warning", true); + if (btn === 'yes') { + setTimeout(handler, 1); + } + } + }); + } + }, + onClearDummyComment: function() { this.dontCloseDummyComment = false; }, @@ -2811,19 +2895,38 @@ define([ value = Common.localStorage.getBool("de-settings-autoformat-hyphens", true); Common.Utils.InternalSettings.set("de-settings-autoformat-hyphens", value); me.api.asc_SetAutoCorrectHyphensWithDash(value); - - value = Common.localStorage.getBool("de-settings-autoformat-fl-sentence", true); - Common.Utils.InternalSettings.set("de-settings-autoformat-fl-sentence", value); + + value = Common.localStorage.getItem("de-settings-letter-exception-sentence"); + value = value !== null ? parseInt(value) != 0 : Common.localStorage.getBool("de-settings-autoformat-fl-sentence", true); + Common.Utils.InternalSettings.set("de-settings-letter-exception-sentence", value); me.api.asc_SetAutoCorrectFirstLetterOfSentences(value); + value = Common.localStorage.getItem("de-settings-letter-exception-cells"); + value = value !== null ? parseInt(value) != 0 : Common.localStorage.getBool("de-settings-autoformat-fl-cells", true); + Common.Utils.InternalSettings.set("de-settings-letter-exception-cells", value); + me.api.asc_SetAutoCorrectFirstLetterOfCells(value); + + [0x0409, 0x0419].forEach(function(lang) { + var apiFlManager = me.api.asc_GetAutoCorrectSettings().get_FirstLetterExceptionManager(); + + value = Common.localStorage.getItem("de-settings-letter-exception-add-" + lang); + Common.Utils.InternalSettings.set("de-settings-letter-exception-add-" + lang, value); + arrAdd = value ? JSON.parse(value) : []; + + value = Common.localStorage.getItem("de-settings-letter-exception-rem-" + lang); + Common.Utils.InternalSettings.set("de-settings-letter-exception-rem-" + lang, value); + arrRem = value ? JSON.parse(value) : []; + + var arrRes = _.union(apiFlManager.get_Exceptions(lang), arrAdd); + arrRes = _.difference(arrRes, arrRem); + arrRes.sort(); + apiFlManager.put_Exceptions(arrRes, lang); + }); + value = Common.localStorage.getBool("de-settings-autoformat-hyperlink", true); Common.Utils.InternalSettings.set("de-settings-autoformat-hyperlink", value); me.api.asc_SetAutoCorrectHyperlinks(value); - - value = Common.localStorage.getBool("de-settings-autoformat-fl-cells", true); - Common.Utils.InternalSettings.set("de-settings-autoformat-fl-cells", value); - me.api.asc_SetAutoCorrectFirstLetterOfCells(value); - + value = Common.localStorage.getBool("de-settings-autoformat-double-space", Common.Utils.isMac); // add period with double-space in MacOs by default Common.Utils.InternalSettings.set("de-settings-autoformat-double-space", value); me.api.asc_SetAutoCorrectDoubleSpaceWithPeriod(value); @@ -2879,6 +2982,24 @@ define([ return true; }, + onConfirmAction: function(id, apiCallback, data) { + var me = this; + if (id == Asc.c_oAscConfirm.ConfirmMaxChangesSize) { + Common.UI.warning({ + title: this.notcriticalErrorTitle, + msg: this.confirmMaxChangesSize, + buttons: [{value: 'ok', caption: this.textUndo, primary: true}, {value: 'cancel', caption: this.textContinue}], + maxwidth: 600, + callback: _.bind(function(btn) { + if (apiCallback) { + apiCallback(btn === 'ok'); + } + me.onEditComplete(); + }, this) + }); + } + }, + 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.', criticalErrorTitle: 'Error', notcriticalErrorTitle: 'Warning', @@ -3257,7 +3378,18 @@ define([ errorNoTOC: 'There\'s no table of contents to update. You can insert one from the References tab.', textRequestMacros: 'A macro makes a request to URL. Do you want to allow the request to the %1?', textRememberMacros: 'Remember my choice for all macros', - errorTextFormWrongFormat: 'The value entered does not match the format of the field.' + errorTextFormWrongFormat: 'The value entered does not match the format of the field.', + errorPasswordIsNotCorrect: 'The password you supplied is not correct.
Verify that the CAPS LOCK key is off and be sure to use the correct capitalization.', + confirmMaxChangesSize: 'The size of actions exceeds the limitation set for your server.
Press "Undo" to cancel your last action or press "Continue" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).', + textUndo: 'Undo', + textContinue: 'Continue', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
The file content does not match the file extension.', + errorCannotPasteImg: 'We can\'t paste this image from the Clipboard, but you can save it to your device and \ninsert it from there, or you can copy the image without text and paste it into the document.', + textTryQuickPrint: 'You have selected Quick print: the entire document will be printed on the last selected or default printer.
Do you want to continue?' } })(), DE.Controllers.Main || {})) }); \ No newline at end of file diff --git a/apps/documenteditor/main/app/controller/PageLayout.js b/apps/documenteditor/main/app/controller/PageLayout.js index efac3b1f7..46dd5b769 100644 --- a/apps/documenteditor/main/app/controller/PageLayout.js +++ b/apps/documenteditor/main/app/controller/PageLayout.js @@ -57,7 +57,7 @@ define([ onLaunch: function (view) { this.toolbar = view; this.editMode = true; - + this._state = {}; return this; }, @@ -98,7 +98,6 @@ define([ this.api.asc_registerCallback('asc_onImgWrapStyleChanged', this.onApiWrappingStyleChanged.bind(this)); this.api.asc_registerCallback('asc_onCoAuthoringDisconnect', this.onApiCoAuthoringDisconnect.bind(this)); this.api.asc_registerCallback('asc_onFocusObject', this.onApiFocusObject.bind(this)); - return this; }, diff --git a/apps/documenteditor/main/app/controller/Print.js b/apps/documenteditor/main/app/controller/Print.js new file mode 100644 index 000000000..556b303f8 --- /dev/null +++ b/apps/documenteditor/main/app/controller/Print.js @@ -0,0 +1,574 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2022 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ +define([ + 'core', + 'documenteditor/main/app/view/FileMenuPanels' +], function () { + 'use strict'; + + DE.Controllers.Print = Backbone.Controller.extend(_.extend({ + views: [ + 'PrintWithPreview' + ], + + initialize: function() { + this.adjPrintParams = new Asc.asc_CAdjustPrint(); + this._state = { + lock_doc: false, + firstPrintPage: 0 + }; + + this._navigationPreview = { + pageCount: false, + currentPage: 0, + currentPreviewPage: 0 + }; + + this._isPreviewVisible = false; + + this.addListeners({ + 'PrintWithPreview': { + 'show': _.bind(this.onShowMainSettingsPrint, this), + 'render:after': _.bind(this.onAfterRender, this) + } + }); + }, + + onLaunch: function() { + this.printSettings = this.createView('PrintWithPreview'); + }, + + onAfterRender: function(view) { + var me = this; + this.printSettings.menu.on('menu:hide', _.bind(this.onHidePrintMenu, this)); + this.printSettings.btnPrint.on('click', _.bind(this.onBtnPrint, this, true)); + this.printSettings.btnPrintPdf.on('click', _.bind(this.onBtnPrint, this, false)); + this.printSettings.btnPrevPage.on('click', _.bind(this.onChangePreviewPage, this, false)); + this.printSettings.btnNextPage.on('click', _.bind(this.onChangePreviewPage, this, true)); + this.printSettings.txtNumberPage.on({ + 'keypress:after': _.bind(this.onKeypressPageNumber, this), + 'keyup:after': _.bind(this.onKeyupPageNumber, this) + }); + this.printSettings.txtNumberPage.cmpEl.find('input').on('blur', _.bind(this.onBlurPageNumber, this)); + this.printSettings.cmbPaperSize.on('selected', _.bind(this.onPaperSizeSelect, this)); + this.printSettings.cmbPaperOrientation.on('selected', _.bind(this.onPaperOrientSelect, this)); + this.printSettings.cmbPaperMargins.on('selected', _.bind(this.onPaperMarginsSelect, this)); + this.printSettings.cmbRange.on('selected', _.bind(this.comboRangeChange, this)); + this.printSettings.inputPages.on('changing', _.bind(this.inputPagesChanging, this)); + this.printSettings.inputPages.validation = function(value) { + if (!_.isEmpty(value) && /[0-9,\-]/.test(value)) { + var res = [], + arr = value.split(','); + if (me._isPrint && arr.length>1) + return me.txtPrintRangeSingleRange; + + for (var i=0; i1) // more than 1 symbol '-' + return me.txtPrintRangeInvalid; + if (!str) {// one number + var num = parseInt(item)-1; + (num>=0) && res.push(num); + } else { // range + var pages = item.split('-'), + start = (pages[0] ? parseInt(pages[0])-1 : 0), + end = (pages[1] ? parseInt(pages[1])-1 : me._navigationPreview.pageCount-1); + if (start>end) { + var num = start; + start = end; + end = num; + } + for (var j=start; j<=end; j++) { + (j>=0) && res.push(j); + } + } + } + if (res.length>0) { + me._state.firstPrintPage = res[0]; + return true; + } + } + + return me.txtPrintRangeInvalid; + }; + + Common.NotificationCenter.on('window:resize', _.bind(function () { + if (this._isPreviewVisible) { + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage); + } + }, this)); + Common.NotificationCenter.on('margins:update', _.bind(this.onUpdateLastCustomMargins, this)); + + var eventname = (/Firefox/i.test(navigator.userAgent))? 'DOMMouseScroll' : 'mousewheel'; + this.printSettings.$previewBox.on(eventname, _.bind(this.onPreviewWheel, this)); + }, + + setMode: function (mode) { + this.mode = mode; + this.printSettings && this.printSettings.setMode(mode); + }, + + setApi: function(o) { + this.api = o; + this.api.asc_registerCallback('asc_onDocSize', _.bind(this.onApiPageSize, this)); + this.api.asc_registerCallback('asc_onPageOrient', _.bind(this.onApiPageOrient, this)); + this.api.asc_registerCallback('asc_onSectionProps', _.bind(this.onSectionProps, this)); + this.api.asc_registerCallback('asc_onCountPages', _.bind(this.onCountPages, this)); + this.api.asc_registerCallback('asc_onCurrentPage', _.bind(this.onCurrentPage, this)); + this.api.asc_registerCallback('asc_onLockDocumentProps', _.bind(this.onApiLockDocumentProps, this)); + this.api.asc_registerCallback('asc_onUnLockDocumentProps', _.bind(this.onApiUnLockDocumentProps, this)); + + return this; + }, + + findPagePreset: function(w, h) { + var width = (w count - 1) { + this._navigationPreview.currentPreviewPage = Math.max(0, count - 1); + if (this.printSettings.isVisible()) { + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage); + this.updateNavigationButtons(this._navigationPreview.currentPreviewPage, count); + } + } + }, + + onCurrentPage: function(number) { + this._navigationPreview.currentPreviewPage = number; + if (this.printSettings.isVisible()) { + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage); + this.updateNavigationButtons(this._navigationPreview.currentPreviewPage, this._navigationPreview.pageCount); + } + }, + + onShowMainSettingsPrint: function() { + var me = this; + this.printSettings.$previewBox.removeClass('hidden'); + + this.onUpdateLastCustomMargins(this._state.lastmargins); + this._state.pgsize && this.onApiPageSize(this._state.pgsize[0], this._state.pgsize[1]); + this.onApiPageOrient(this._state.pgorient); + this._state.sectionprops && this.onSectionProps(this._state.sectionprops); + + var opts = new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_initPrintPreview('print-preview', opts); + + this._navigationPreview.currentPreviewPage = this._navigationPreview.currentPage = this.api.getCurrentPage(); + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage); + this.updateNavigationButtons(this._navigationPreview.currentPreviewPage, this._navigationPreview.pageCount); + this.SetDisabled(); + this._isPreviewVisible = true; + }, + + onPaperSizeSelect: function(combo, record) { + this._state.pgsize = [0, 0]; + if (record.value !== -1) { + if (this.checkPageSize(record.size[0], record.size[1])) { + var section = this.api.asc_GetSectionProps(); + this.onApiPageSize(section.get_W(), section.get_H()); + return; + } else + this.api.change_DocSize(record.size[0], record.size[1]); + } else { + var win, props, + me = this; + win = new DE.Views.PageSizeDialog({ + checkPageSize: _.bind(this.checkPageSize, this), + handler: function(dlg, result) { + if (result == 'ok') { + props = dlg.getSettings(); + me.api.change_DocSize(props[0], props[1]); + Common.NotificationCenter.trigger('edit:complete'); + } + } + }); + win.show(); + win.setSettings(me.api.asc_GetSectionProps()); + } + + Common.NotificationCenter.trigger('edit:complete'); + }, + + onPaperMarginsSelect: function(combo, record) { + this._state.pgmargins = undefined; + if (record.value !== -1) { + if (this.checkPageSize(undefined, undefined, record.size[1], record.size[3], record.size[0], record.size[2])) { + this.onSectionProps(this.api.asc_GetSectionProps()); + return; + } else { + var props = new Asc.CDocumentSectionProps(); + props.put_TopMargin(record.size[0]); + props.put_LeftMargin(record.size[1]); + props.put_BottomMargin(record.size[2]); + props.put_RightMargin(record.size[3]); + this.api.asc_SetSectionProps(props); + } + } else { + var win, props, + me = this; + win = new DE.Views.PageMarginsDialog({ + api: me.api, + handler: function(dlg, result) { + if (result == 'ok') { + props = dlg.getSettings(); + Common.localStorage.setItem("de-pgmargins-top", props.get_TopMargin()); + Common.localStorage.setItem("de-pgmargins-left", props.get_LeftMargin()); + Common.localStorage.setItem("de-pgmargins-bottom", props.get_BottomMargin()); + Common.localStorage.setItem("de-pgmargins-right", props.get_RightMargin()); + Common.NotificationCenter.trigger('margins:update', props); + + me.api.asc_SetSectionProps(props); + Common.NotificationCenter.trigger('edit:complete'); + } + } + }); + win.show(); + win.setSettings(me.api.asc_GetSectionProps()); + } + + Common.NotificationCenter.trigger('edit:complete'); + }, + + onUpdateLastCustomMargins: function(props) { + this._state.lastmargins = props; + if (this.printSettings.isVisible()) { + var top = props ? props.get_TopMargin() : Common.localStorage.getItem("de-pgmargins-top"), + left = props ? props.get_LeftMargin() : Common.localStorage.getItem("de-pgmargins-left"), + bottom = props ? props.get_BottomMargin() : Common.localStorage.getItem("de-pgmargins-bottom"), + right = props ? props.get_RightMargin() : Common.localStorage.getItem("de-pgmargins-right"); + if ( top!==null && left!==null && bottom!==null && right!==null ) { + var rec = this.printSettings.cmbPaperMargins.store.at(0); + if (rec.get('value')===-2) + rec.set('size', [parseFloat(top), parseFloat(left), parseFloat(bottom), parseFloat(right)]); + else + this.printSettings.cmbPaperMargins.store.unshift({ value: -2, displayValue: this.textMarginsLast, size: [parseFloat(top), parseFloat(left), parseFloat(bottom), parseFloat(right)]}); + this.printSettings.cmbPaperMargins.onResetItems(); + } + } + }, + + onPaperOrientSelect: function(combo, record) { + this._state.pgorient = undefined; + if (this.api) { + this.api.change_PageOrient(record.value === Asc.c_oAscPageOrientation.PagePortrait); + } + + Common.NotificationCenter.trigger('edit:complete'); + }, + + checkPageSize: function(width, height, left, right, top, bottom) { + var section = this.api.asc_GetSectionProps(); + (width===undefined) && (width = parseFloat(section.get_W().toFixed(4))); + (height===undefined) && (height = parseFloat(section.get_H().toFixed(4))); + (left===undefined) && (left = parseFloat(section.get_LeftMargin().toFixed(4))); + (right===undefined) && (right = parseFloat(section.get_RightMargin().toFixed(4))); + (top===undefined) && (top = parseFloat(section.get_TopMargin().toFixed(4))); + (bottom===undefined) && (bottom = parseFloat(section.get_BottomMargin().toFixed(4))); + var gutterLeft = section.get_GutterAtTop() ? 0 : parseFloat(section.get_Gutter().toFixed(4)), + gutterTop = section.get_GutterAtTop() ? parseFloat(section.get_Gutter().toFixed(4)) : 0; + + var errmsg = null; + if (left + right + gutterLeft > width-12.7 ) + errmsg = this.txtMarginsW; + else if (top + bottom + gutterTop > height-2.6 ) + errmsg = this.txtMarginsH; + if (errmsg) { + Common.UI.warning({ + title: this.notcriticalErrorTitle, + msg : errmsg, + callback: function() { + Common.NotificationCenter.trigger('edit:complete'); + } + }); + return true; + } + }, + + getPrintParams: function() { + return this.adjPrintParams; + }, + + onHidePrintMenu: function () { + if (this._isPreviewVisible) { + this.api.asc_closePrintPreview && this.api.asc_closePrintPreview(); + this._isPreviewVisible = false; + } + }, + + onChangePreviewPage: function (next) { + var index = this._navigationPreview.currentPreviewPage; + if (next) { + index++; + index = Math.min(index, this._navigationPreview.pageCount - 1); + } else { + index--; + index = Math.max(index, 0); + } + this.api.goToPage(index); + }, + + onKeypressPageNumber: function (input, e) { + if (e.keyCode === Common.UI.Keys.RETURN) { + var box = this.printSettings.$el.find('#print-number-page'), + edit = box.find('input[type=text]'), page = parseInt(edit.val()); + if (!page || page > this._navigationPreview.pageCount || page < 0) { + edit.select(); + this.printSettings.txtNumberPage.setValue(this._navigationPreview.currentPreviewPage + 1); + this.printSettings.txtNumberPage.checkValidate(); + return false; + } + + box.focus(); // for IE + + this.api.goToPage(page-1); + this.api.asc_enableKeyEvents(true); + return false; + } + }, + + onKeyupPageNumber: function (input, e) { + if (e.keyCode === Common.UI.Keys.ESC) { + var box = this.printSettings.$el.find('#print-number-page'); + box.focus(); // for IE + this.api.asc_enableKeyEvents(true); + return false; + } + }, + + onBlurPageNumber: function () { + if (this.printSettings.txtNumberPage.getValue() != this._navigationPreview.currentPreviewPage + 1) { + this.printSettings.txtNumberPage.setValue(this._navigationPreview.currentPreviewPage + 1); + this.printSettings.txtNumberPage.checkValidate(); + } + }, + + onPreviewWheel: function (e) { + if (e.ctrlKey) { + e.preventDefault(); + e.stopImmediatePropagation(); + } + var forward = (e.deltaY || (e.detail && -e.detail) || e.wheelDelta) < 0; + this.onChangePreviewPage(forward); + }, + + updateNavigationButtons: function (page, count) { + this._navigationPreview.currentPage = page; + this.printSettings.updateCurrentPage(page); + this._navigationPreview.pageCount = count; + this.printSettings.updateCountOfPages(count); + this.disableNavButtons(); + }, + + disableNavButtons: function (force) { + if (force) { + this.printSettings.btnPrevPage.setDisabled(true); + this.printSettings.btnNextPage.setDisabled(true); + return; + } + var curPage = this._navigationPreview.currentPage, + pageCount = this._navigationPreview.pageCount; + this.printSettings.btnPrevPage.setDisabled(curPage < 1); + this.printSettings.btnNextPage.setDisabled(curPage > pageCount - 2); + }, + + onBtnPrint: function(print) { + this._isPrint = print; + if (this.printSettings.cmbRange.getValue()===-1 && this.printSettings.inputPages.checkValidate() !== true) { + this.printSettings.inputPages.focus(); + this.isInputFirstChange = true; + return; + } + if (this.printSettings.cmbRange.getValue()==='all') + this._state.firstPrintPage = 0; + else if (this.printSettings.cmbRange.getValue()==='current') + this._state.firstPrintPage = this._navigationPreview.currentPage; + + var size = this.api.asc_getPageSize(this._state.firstPrintPage); + this.adjPrintParams.asc_setNativeOptions({ + pages: this.printSettings.cmbRange.getValue()===-1 ? this.printSettings.inputPages.getValue() : this.printSettings.cmbRange.getValue(), + paperSize: { + w: size ? size['W'] : undefined, + h: size ? size['H'] : undefined, + preset: size ? this.findPagePreset(size['W'], size['H']) : undefined + }, + paperOrientation: size ? (size['H'] > size['W'] ? 'portrait' : 'landscape') : null + }); + + if ( print ) { + var opts = new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_Print(opts); + } else { + var opts = new Asc.asc_CDownloadOptions(Asc.c_oAscFileType.PDF); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_DownloadAs(opts); + } + this.printSettings.menu.hide(); + }, + + inputPagesChanging: function (input, value) { + this.isInputFirstChange && this.printSettings.inputPages.showError(); + this.isInputFirstChange = false; + + if (value.length<1) + this.printSettings.cmbRange.setValue('all'); + else if (this.printSettings.cmbRange.getValue()!==-1) + this.printSettings.cmbRange.setValue(-1); + }, + + onApiLockDocumentProps: function() { + this._state.lock_doc = true; + this.SetDisabled(); + }, + + onApiUnLockDocumentProps: function() { + this._state.lock_doc = false; + this.SetDisabled(); + }, + + SetDisabled: function() { + if (this.printSettings.isVisible()) { + var disable = !this.mode.isEdit || this._state.lock_doc; + this.printSettings.cmbPaperSize.setDisabled(disable); + this.printSettings.cmbPaperMargins.setDisabled(disable); + this.printSettings.cmbPaperOrientation.setDisabled(disable); + } + }, + + txtCustom: 'Custom', + txtPrintRangeInvalid: 'Invalid print range', + textMarginsLast: 'Last Custom', + txtPrintRangeSingleRange: 'Enter either a single page number or a single page range (for example, 5-12). Or you can Print to PDF.' + }, DE.Controllers.Print || {})); +}); \ No newline at end of file diff --git a/apps/documenteditor/main/app/controller/RightMenu.js b/apps/documenteditor/main/app/controller/RightMenu.js index c4cea9f25..1261c0156 100644 --- a/apps/documenteditor/main/app/controller/RightMenu.js +++ b/apps/documenteditor/main/app/controller/RightMenu.js @@ -54,10 +54,20 @@ define([ initialize: function() { this.editMode = true; this._initSettings = true; - + this._state = { + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + } + }; this.addListeners({ 'RightMenu': { 'rightmenuclick': this.onRightMenuClick + }, + 'ViewTab': { + 'rightmenu:hide': _.bind(this.onRightMenuHide, this) } }); @@ -89,6 +99,7 @@ define([ setApi: function(api) { this.api = api; this.api.asc_registerCallback('asc_onUpdateSignatures', _.bind(this.onApiUpdateSignatures, this)); + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onCoAuthoringDisconnect, this)); }, @@ -156,7 +167,9 @@ define([ this._settings[Common.Utils.documentSettingsType.Signature].locked = false; var isChart = false, - isSmartArtInternal = false; + isSmartArtInternal = false, + isProtected = this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly || this._state.docProtection.isCommentsOnly; + var control_props = this.api.asc_IsContentControl() ? this.api.asc_GetContentControlProperties() : null, control_lock = false; for (i=0; i 0) + this.onFocusObject(selectedElements); + } + } + }, + + onRightMenuHide: function (view, status) { + if (this.rightmenu) { + !status && this.rightmenu.clearSelection(); + status ? this.rightmenu.show() : this.rightmenu.hide(); + Common.localStorage.setBool('de-hidden-rightmenu', !status); + } + + Common.NotificationCenter.trigger('layout:changed', 'main'); + Common.NotificationCenter.trigger('edit:complete', this.rightmenu); } }); }); \ No newline at end of file diff --git a/apps/documenteditor/main/app/controller/Search.js b/apps/documenteditor/main/app/controller/Search.js index aa35b2b1b..47c16acd6 100644 --- a/apps/documenteditor/main/app/controller/Search.js +++ b/apps/documenteditor/main/app/controller/Search.js @@ -124,7 +124,7 @@ define([ for (var l = 0; l < text.length; l++) { var charCode = text.charCodeAt(l), char = text.charAt(l); - if (AscCommon.g_aPunctuation[charCode] !== undefined || char.trim() === '') { + if (AscCommon.IsPunctuation(charCode) !== undefined || char.trim() === '') { isPunctuation = true; break; } diff --git a/apps/documenteditor/main/app/controller/Statusbar.js b/apps/documenteditor/main/app/controller/Statusbar.js index d751f39db..8f6629628 100644 --- a/apps/documenteditor/main/app/controller/Statusbar.js +++ b/apps/documenteditor/main/app/controller/Statusbar.js @@ -122,7 +122,6 @@ define([ me.statusbar.$el.find('.hide-select-tools').removeClass('hide-select-tools'); } }); - Common.NotificationCenter.on('app:ready', me.onAppReady.bind(me)); }, diff --git a/apps/documenteditor/main/app/controller/Toolbar.js b/apps/documenteditor/main/app/controller/Toolbar.js index 429455e52..f6af81f09 100644 --- a/apps/documenteditor/main/app/controller/Toolbar.js +++ b/apps/documenteditor/main/app/controller/Toolbar.js @@ -118,7 +118,9 @@ define([ 'change:compact' : this.onClickChangeCompact, 'home:open' : this.onHomeOpen, 'add:chart' : this.onSelectChart, - 'insert:textart' : this.onInsertTextart + 'insert:textart' : this.onInsertTextart, + 'generate:smartart' : this.generateSmartArt, + 'insert:smartart' : this.onInsertSmartArt }, 'FileMenu': { 'menu:hide': this.onFileMenu.bind(this, 'hide'), @@ -129,6 +131,10 @@ define([ var _main = this.getApplication().getController('Main'); _main.onPrint(); }, + 'print-quick': function (opts) { + var _main = this.getApplication().getController('Main'); + _main.onPrintQuick(); + }, 'save': function (opts) { this.api.asc_Save(); }, @@ -428,11 +434,15 @@ define([ Common.NotificationCenter.on('storage:image-load', _.bind(this.openImageFromStorage, this)); Common.NotificationCenter.on('storage:image-insert', _.bind(this.insertImageFromStorage, this)); Common.NotificationCenter.on('dropcap:settings', _.bind(this.onDropCapAdvancedClick, this)); + this.api.asc_registerCallback('asc_onBeginSmartArtPreview', _.bind(this.onApiBeginSmartArtPreview, this)); + this.api.asc_registerCallback('asc_onAddSmartArtPreview', _.bind(this.onApiAddSmartArtPreview, this)); + this.api.asc_registerCallback('asc_onEndSmartArtPreview', _.bind(this.onApiEndSmartArtPreview, this)); } else if (this.mode.isRestrictedEdit) { this.api.asc_registerCallback('asc_onFocusObject', _.bind(this.onApiFocusObjectRestrictedEdit, this)); this.api.asc_registerCallback('asc_onCoAuthoringDisconnect', _.bind(this.onApiCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onApiCoAuthoringDisconnect, this)); } + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); }, onChangeCompactView: function(view, compact) { @@ -836,7 +846,7 @@ define([ this.toolbar.lockToolbar(Common.enumLock.inSmartart, in_smart_art, {array: toolbar.textOnlyControls.concat([toolbar.btnClearStyle])}); this.toolbar.lockToolbar(Common.enumLock.inSmartartInternal, in_smart_art_internal, {array: toolbar.textOnlyControls.concat([toolbar.btnClearStyle, toolbar.btnDecLeftOffset, toolbar.btnIncLeftOffset])}); this.toolbar.lockToolbar(Common.enumLock.inEquation, in_equation, {array: toolbar.btnsPageBreak.concat([toolbar.btnDropCap, toolbar.btnInsertTable, toolbar.btnBlankPage, toolbar.btnInsertShape, - toolbar.btnInsertText, toolbar.btnInsertTextArt, toolbar.btnInsertImage, toolbar.btnSuperscript, toolbar.btnSubscript, toolbar.btnEditHeader])}); + toolbar.btnInsertText, toolbar.btnInsertTextArt, toolbar.btnInsertImage, toolbar.btnInsertSmartArt, toolbar.btnSuperscript, toolbar.btnSubscript, toolbar.btnEditHeader])}); in_control = this.api.asc_IsContentControl(); var control_props = in_control ? this.api.asc_GetContentControlProperties() : null, @@ -855,7 +865,7 @@ define([ } this.toolbar.lockToolbar(Common.enumLock.controlPlain, control_plain, {array: [toolbar.btnInsertTable, toolbar.btnInsertImage, toolbar.btnInsertChart, toolbar.btnInsertText, toolbar.btnInsertTextArt, - toolbar.btnInsertShape, toolbar.btnInsertEquation, toolbar.btnDropCap, toolbar.btnColumns, toolbar.mnuInsertPageNum ]}); + toolbar.btnInsertShape, toolbar.btnInsertSmartArt, toolbar.btnInsertEquation, toolbar.btnDropCap, toolbar.btnColumns, toolbar.mnuInsertPageNum ]}); if (enable_dropcap && frame_pr) { var value = frame_pr.get_FramePr(), drop_value = Asc.c_oAscDropCap.None; @@ -880,8 +890,8 @@ define([ this.toolbar.lockToolbar(Common.enumLock.inHeader, in_header, {array: toolbar.btnsPageBreak.concat([toolbar.btnBlankPage])}); this.toolbar.lockToolbar(Common.enumLock.inControl, in_control, {array: toolbar.btnsPageBreak.concat([toolbar.btnBlankPage])}); this.toolbar.lockToolbar(Common.enumLock.cantPageBreak, in_image && !btn_eq_state, {array: toolbar.btnsPageBreak.concat([toolbar.btnBlankPage])}); - this.toolbar.lockToolbar(Common.enumLock.contentLock, content_locked, {array: [toolbar.btnInsertShape, toolbar.btnInsertText, toolbar.btnInsertImage, toolbar.btnInsertTextArt, toolbar.btnInsertChart ]}); - this.toolbar.lockToolbar(Common.enumLock.inFootnote, in_footnote, {array: toolbar.btnsPageBreak.concat([toolbar.btnBlankPage, toolbar.btnInsertShape, toolbar.btnInsertText, toolbar.btnInsertTextArt ])}); + this.toolbar.lockToolbar(Common.enumLock.contentLock, content_locked, {array: [toolbar.btnInsertShape, toolbar.btnInsertText, toolbar.btnInsertImage, toolbar.btnInsertTextArt, toolbar.btnInsertChart, toolbar.btnInsertSmartArt ]}); + this.toolbar.lockToolbar(Common.enumLock.inFootnote, in_footnote, {array: toolbar.btnsPageBreak.concat([toolbar.btnBlankPage, toolbar.btnInsertShape, toolbar.btnInsertText, toolbar.btnInsertTextArt, toolbar.btnInsertSmartArt ])}); this.toolbar.lockToolbar(Common.enumLock.cantAddImagePara, in_para && !can_add_image, {array: [toolbar.btnInsertImage, toolbar.btnInsertTextArt]}); if (in_chart !== this._state.in_chart) { @@ -1060,9 +1070,7 @@ define([ }, onPrint: function(e) { - if (this.api) - this.api.asc_Print(new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86)); // if isChrome or isOpera == true use asc_onPrintUrl event - + Common.NotificationCenter.trigger('file:print', this.toolbar); Common.NotificationCenter.trigger('edit:complete', this.toolbar); Common.component.Analytics.trackEvent('Print'); @@ -1778,15 +1786,11 @@ define([ handler: function(dlg, result) { if (result == 'ok') { props = dlg.getSettings(); - var mnu = me.toolbar.btnPageMargins.menu.items[0]; - mnu.setVisible(true); - mnu.setChecked(true); - mnu.options.value = mnu.value = [props.get_TopMargin(), props.get_LeftMargin(), props.get_BottomMargin(), props.get_RightMargin()]; - $(mnu.el).html(mnu.template({id: Common.UI.getId(), caption : mnu.caption, options : mnu.options})); Common.localStorage.setItem("de-pgmargins-top", props.get_TopMargin()); Common.localStorage.setItem("de-pgmargins-left", props.get_LeftMargin()); Common.localStorage.setItem("de-pgmargins-bottom", props.get_BottomMargin()); Common.localStorage.setItem("de-pgmargins-right", props.get_RightMargin()); + Common.NotificationCenter.trigger('margins:update', props); me.api.asc_SetSectionProps(props); Common.NotificationCenter.trigger('edit:complete', me.toolbar); @@ -2770,7 +2774,7 @@ define([ items: [ { template: _.template('') } + equationGroup.get('groupHeightStr') + 'margin-left:5px;">
') } ] }) }); @@ -2821,16 +2825,21 @@ define([ var me = this; var onShowBefore = function(menu) { me.onMathTypes(me._equationTemp); + if (me._equationTemp && me._equationTemp.get_Data().length>0) + me.fillEquations(); me.toolbar.btnInsertEquation.menu.off('show:before', onShowBefore); }; me.toolbar.btnInsertEquation.menu.on('show:before', onShowBefore); }, onMathTypes: function(equation) { + equation = equation || this._equationTemp; + var equationgrouparray = [], equationsStore = this.getCollection('EquationGroups'); - equationsStore.reset(); + if (equationsStore.length>0) + return; // equations groups @@ -2838,18 +2847,18 @@ define([ // [translate, count cells, scroll] - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Symbol ] = [this.textSymbols, 11]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Fraction ] = [this.textFraction, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Script ] = [this.textScript, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Radical ] = [this.textRadical, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Integral ] = [this.textIntegral, 3, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LargeOperator] = [this.textLargeOperator, 5, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Bracket ] = [this.textBracket, 4, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Function ] = [this.textFunction, 3, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Accent ] = [this.textAccent, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LimitLog ] = [this.textLimitAndLog, 3]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Operator ] = [this.textOperator, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Matrix ] = [this.textMatrix, 4, true]; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Symbol ] = [this.textSymbols, 11, false, 'svg-icon-symbols']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Fraction ] = [this.textFraction, 4, false, 'svg-icon-fraction']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Script ] = [this.textScript, 4, false, 'svg-icon-script']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Radical ] = [this.textRadical, 4, false, 'svg-icon-radical']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Integral ] = [this.textIntegral, 3, true, 'svg-icon-integral']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LargeOperator] = [this.textLargeOperator, 5, true, 'svg-icon-largeOperator']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Bracket ] = [this.textBracket, 4, true, 'svg-icon-bracket']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Function ] = [this.textFunction, 3, true, 'svg-icon-function']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Accent ] = [this.textAccent, 4, false, 'svg-icon-accent']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LimitLog ] = [this.textLimitAndLog, 3, false, 'svg-icon-limAndLog']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Operator ] = [this.textOperator, 4, false, 'svg-icon-operator']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Matrix ] = [this.textMatrix, 4, true, 'svg-icon-matrix']; // equations sub groups @@ -2919,12 +2928,14 @@ define([ groupName : c_oAscMathMainTypeStrings[id][0], groupStore : store, groupWidth : width, - groupHeight : c_oAscMathMainTypeStrings[id][2] ? ' height:'+ normHeight +'px!important; ' : '' + groupHeight : normHeight, + groupHeightStr : c_oAscMathMainTypeStrings[id][2] ? ' height:'+ normHeight +'px!important; ' : '', + groupIcon: c_oAscMathMainTypeStrings[id][3] }); } } equationsStore.add(equationgrouparray); - this.fillEquations(); + // this.fillEquations(); } } }, @@ -3191,6 +3202,7 @@ define([ createDelayedElements: function() { this.toolbar.createDelayedElements(); this.attachUIEvents(this.toolbar); + this.onChangeProtectDocument(); }, onAppShowed: function (config) { @@ -3233,13 +3245,24 @@ define([ me.toolbar.processPanelVisible(null, true, true); } - if ( config.isDesktopApp ) { - if ( config.canProtect ) { - tab = {action: 'protect', caption: me.toolbar.textTabProtect, dataHintTitle: 'T', layoutname: 'toolbar-protect'}; - $panel = me.getApplication().getController('Common.Controllers.Protection').createToolbarPanel(); + // if ( config.isDesktopApp ) { + // if ( config.canProtect ) { + // tab = {action: 'protect', caption: me.toolbar.textTabProtect, dataHintTitle: 'T', layoutname: 'toolbar-protect'}; + // $panel = me.getApplication().getController('Common.Controllers.Protection').createToolbarPanel(); + // + // if ($panel) me.toolbar.addTab(tab, $panel, 6); + // } + // } - if ($panel) me.toolbar.addTab(tab, $panel, 6); - } + tab = {action: 'protect', caption: me.toolbar.textTabProtect, layoutname: 'toolbar-protect', dataHintTitle: 'T'}; + $panel = me.getApplication().getController('Common.Controllers.Protection').createToolbarPanel(); + if ($panel) { + config.canProtect && $panel.append($('
')); + var doctab = me.getApplication().getController('DocProtection'); + $panel.append(doctab.createToolbarPanel()); + me.toolbar.addTab(tab, $panel, 6); + me.toolbar.setVisible('protect', Common.UI.LayoutManager.isElementVisible('toolbar-protect')); + Array.prototype.push.apply(me.toolbar.lockControls, doctab.getView('DocProtection').getButtons()); } var links = me.getApplication().getController('Links'); @@ -3282,7 +3305,7 @@ define([ this.btnsComment = Common.Utils.injectButtons(this.toolbar.$el.find('.slot-comment'), 'tlbtn-addcomment-', 'toolbar__icon btn-menu-comments', this.toolbar.capBtnComment, [ Common.enumLock.paragraphLock, Common.enumLock.headerLock, Common.enumLock.richEditLock, Common.enumLock.plainEditLock, Common.enumLock.richDelLock, Common.enumLock.plainDelLock, Common.enumLock.cantAddQuotedComment, Common.enumLock.imageLock, Common.enumLock.inSpecificForm, Common.enumLock.inImage, Common.enumLock.lostConnect, Common.enumLock.disableOnStart, - Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode ], + Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.docLockView, Common.enumLock.docLockForms ], undefined, undefined, undefined, '1', 'bottom'); if ( this.btnsComment.length ) { var _comments = DE.getController('Common.Controllers.Comments').getView(); @@ -3350,6 +3373,65 @@ define([ })).show(); }, + generateSmartArt: function (groupName) { + this.api.asc_generateSmartArtPreviews(groupName); + }, + + onApiBeginSmartArtPreview: function () { + this.smartArtGroups = this.toolbar.btnInsertSmartArt.menu.items; + this.smartArtData = Common.define.smartArt.getSmartArtData(); + }, + + onApiAddSmartArtPreview: function (previews) { + previews.forEach(_.bind(function (preview) { + var image = preview.asc_getImage(), + sectionId = preview.asc_getSectionId(), + section = _.findWhere(this.smartArtData, {sectionId: sectionId}), + item = _.findWhere(section.items, {type: image.asc_getName()}), + menu = _.findWhere(this.smartArtGroups, {value: sectionId}), + menuPicker = menu.menuPicker; + if (item) { + var arr = [{ + tip: item.tip, + value: item.type, + imageUrl: image.asc_getImage() + }]; + if (menuPicker.store.length < 1) { + menuPicker.store.reset(arr); + } else { + menuPicker.store.add(arr); + } + } + this.currentSmartArtMenu = menu; + }, this)); + }, + + onApiEndSmartArtPreview: function () { + if (this.currentSmartArtMenu) { + this.currentSmartArtMenu.menu.alignPosition(); + } + }, + + onInsertSmartArt: function (value) { + if (this.api) { + this.api.asc_createSmartArt(value); + } + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = this.getApplication().getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + this.toolbar.lockToolbar(Common.enumLock.docLockView, props.isReadOnly); + this.toolbar.lockToolbar(Common.enumLock.docLockForms, props.isFormsOnly); + this.toolbar.lockToolbar(Common.enumLock.docLockReview, props.isReviewOnly); + this.toolbar.lockToolbar(Common.enumLock.docLockComments, props.isCommentsOnly); + } + }, + textEmptyImgUrl : 'You need to specify image URL.', textWarning : 'Warning', textFontSizeErr : 'The entered value is incorrect.
Please enter a numeric value between 1 and 300', diff --git a/apps/documenteditor/main/app/controller/ViewTab.js b/apps/documenteditor/main/app/controller/ViewTab.js index 2c83c6d2e..2b9958fc2 100644 --- a/apps/documenteditor/main/app/controller/ViewTab.js +++ b/apps/documenteditor/main/app/controller/ViewTab.js @@ -98,6 +98,11 @@ define([ 'view:hide': _.bind(function (statusbar, state) { this.view.chStatusbar.setValue(!state, true); }, this) + }, + 'LeftMenu': { + 'view:hide': _.bind(function (leftmenu, state) { + this.view.chLeftMenu.setValue(!state, true); + }, this) } }); }, @@ -131,18 +136,35 @@ define([ me.view.btnInterfaceTheme.$el.closest('.group').remove(); me.view.$el.find('.separator-theme').remove(); } + var emptyGroup = []; if (config.canBrandingExt && config.customization && config.customization.statusBar === false || !Common.UI.LayoutManager.isElementVisible('statusBar')) { + emptyGroup.push(me.view.chStatusbar.$el.closest('.elset')); me.view.chStatusbar.$el.remove(); - var slotChkRulers = me.view.chRulers.$el, - groupRulers = slotChkRulers.closest('.group'), - groupToolbar = me.view.chToolbar.$el.closest('.group'); - groupToolbar.find('.elset')[1].append(slotChkRulers[0]); - groupRulers.remove(); - me.view.$el.find('.separator-rulers').remove(); } - if (!config.isEdit) { // if view tab will be visible in view/restricted-editing mode - me.view.chRulers.hide(); + if (config.canBrandingExt && config.customization && config.customization.leftMenu === false || !Common.UI.LayoutManager.isElementVisible('leftMenu')) { + emptyGroup.push(me.view.chLeftMenu.$el.closest('.elset')); + me.view.chLeftMenu.$el.remove(); + } else if (emptyGroup.length>0) { + emptyGroup.push(me.view.chLeftMenu.$el.closest('.elset')); + emptyGroup.shift().append(me.view.chLeftMenu.$el[0]); + } + + if (!config.isEdit || config.canBrandingExt && config.customization && config.customization.rightMenu === false || !Common.UI.LayoutManager.isElementVisible('rightMenu')) { + emptyGroup.push(me.view.chRightMenu.$el.closest('.elset')); + me.view.chRightMenu.$el.remove(); + } else if (emptyGroup.length>0) { + emptyGroup.push(me.view.chRightMenu.$el.closest('.elset')); + emptyGroup.shift().append(me.view.chRightMenu.$el[0]); + } + + if (emptyGroup.length>1) { // remove empty group + emptyGroup[emptyGroup.length-1].closest('.group').remove(); + } + + if (!config.isEdit) { + me.view.chRulers.$el.closest('.group').remove(); + me.view.chRulers.$el.remove(); me.view.$el.find('.separator-rulers').remove(); } diff --git a/apps/documenteditor/main/app/controller/Viewport.js b/apps/documenteditor/main/app/controller/Viewport.js index 713133cde..898460665 100644 --- a/apps/documenteditor/main/app/controller/Viewport.js +++ b/apps/documenteditor/main/app/controller/Viewport.js @@ -71,7 +71,8 @@ define([ this.addListeners({ 'FileMenu': { 'menu:hide': me.onFileMenu.bind(me, 'hide'), - 'menu:show': me.onFileMenu.bind(me, 'show') + 'menu:show': me.onFileMenu.bind(me, 'show'), + 'settings:apply': me.applySettings.bind(me) }, 'Toolbar': { 'render:before' : function (toolbar) { @@ -79,6 +80,11 @@ define([ toolbar.setExtra('right', me.header.getPanel('right', config)); if (!config.isEdit || config.customization && !!config.customization.compactHeader) toolbar.setExtra('left', me.header.getPanel('left', config)); + + var value = Common.localStorage.getBool("de-settings-quick-print-button", true); + Common.Utils.InternalSettings.set("de-settings-quick-print-button", value); + if (me.header && me.header.btnPrintQuick) + me.header.btnPrintQuick[value ? 'show' : 'hide'](); }, 'view:compact' : function (toolbar, state) { me.viewport.vlayout.getItem('toolbar').height = state ? @@ -100,6 +106,8 @@ define([ 'print:disabled' : function (state) { if ( me.header.btnPrint ) me.header.btnPrint.setDisabled(state); + if ( me.header.btnPrintQuick ) + me.header.btnPrintQuick.setDisabled(state); }, 'save:disabled' : function (state) { if ( me.header.btnSave ) @@ -255,12 +263,21 @@ define([ me.header.lockHeaderBtns( 'users', _need_disable ); }, + applySettings: function () { + var value = Common.localStorage.getBool("de-settings-quick-print-button", true); + Common.Utils.InternalSettings.set("de-settings-quick-print-button", value); + if (this.header && this.header.btnPrintQuick) + this.header.btnPrintQuick[value ? 'show' : 'hide'](); + }, + onApiCoAuthoringDisconnect: function(enableDownload) { if (this.header) { if (this.header.btnDownload && !enableDownload) this.header.btnDownload.hide(); if (this.header.btnPrint && !enableDownload) this.header.btnPrint.hide(); + if (this.header.btnPrintQuick && !enableDownload) + this.header.btnPrintQuick.hide(); if (this.header.btnEdit) this.header.btnEdit.hide(); this.header.lockHeaderBtns( 'rename-user', true); @@ -283,8 +300,9 @@ define([ return; } if (!this.searchBar) { - var isVisible = leftMenu && leftMenu.leftMenu && leftMenu.leftMenu.isVisible(); - this.searchBar = new Common.UI.SearchBar( !isVisible ? { + var hideLeftPanel = this.appConfig.canBrandingExt && + (!Common.UI.LayoutManager.isElementVisible('leftMenu') || this.appConfig.customization && this.appConfig.customization.leftMenu === false); + this.searchBar = new Common.UI.SearchBar( hideLeftPanel ? { showOpenPanel: false, width: 303 } : {}); diff --git a/apps/documenteditor/main/app/template/FileMenu.template b/apps/documenteditor/main/app/template/FileMenu.template index 3ad620221..ba1e7d69d 100644 --- a/apps/documenteditor/main/app/template/FileMenu.template +++ b/apps/documenteditor/main/app/template/FileMenu.template @@ -8,6 +8,7 @@
  • +
  • @@ -34,4 +35,5 @@
    +
    \ No newline at end of file diff --git a/apps/documenteditor/main/app/template/Toolbar.template b/apps/documenteditor/main/app/template/Toolbar.template index 0b40609cf..b67d89805 100644 --- a/apps/documenteditor/main/app/template/Toolbar.template +++ b/apps/documenteditor/main/app/template/Toolbar.template @@ -103,6 +103,7 @@ +
    diff --git a/apps/documenteditor/main/app/view/ControlSettingsDialog.js b/apps/documenteditor/main/app/view/ControlSettingsDialog.js index c0a71b0b6..40a6f2619 100644 --- a/apps/documenteditor/main/app/view/ControlSettingsDialog.js +++ b/apps/documenteditor/main/app/view/ControlSettingsDialog.js @@ -205,7 +205,7 @@ define([ 'text!documenteditor/main/app/template/ControlSettingsDialog.template', // date picker var data = [{ value: 0x042C }, { value: 0x0402 }, { value: 0x0405 }, { value: 0x0C07 }, { value: 0x0407 }, {value: 0x0807}, { value: 0x0408 }, { value: 0x0C09 }, { value: 0x0809 }, { value: 0x0409 }, { value: 0x0C0A }, { value: 0x080A }, { value: 0x040B }, { value: 0x040C }, { value: 0x100C }, { value: 0x0410 }, { value: 0x0810 }, { value: 0x0411 }, { value: 0x0412 }, { value: 0x0426 }, { value: 0x040E }, { value: 0x0413 }, { value: 0x0415 }, { value: 0x0416 }, - { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }]; + { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }, { value: 0x0404 }]; data.forEach(function(item) { var langinfo = Common.util.LanguageInfo.getLocalLanguageName(item.value); item.displayValue = langinfo[1]; diff --git a/apps/documenteditor/main/app/view/DateTimeDialog.js b/apps/documenteditor/main/app/view/DateTimeDialog.js index 80253793d..9cc15d177 100644 --- a/apps/documenteditor/main/app/view/DateTimeDialog.js +++ b/apps/documenteditor/main/app/view/DateTimeDialog.js @@ -90,7 +90,7 @@ define([ var data = [{ value: 0x042C }, { value: 0x0402 }, { value: 0x0405 }, { value: 0x0C07 }, { value: 0x0407 }, {value: 0x0807}, { value: 0x0408 }, { value: 0x0C09 }, { value: 0x0809 }, { value: 0x0409 }, { value: 0x0C0A }, { value: 0x080A }, { value: 0x040B }, { value: 0x040C }, { value: 0x100C }, { value: 0x0410 }, { value: 0x0810 }, { value: 0x0411 }, { value: 0x0412 }, { value: 0x0426 }, { value: 0x040E }, { value: 0x0413 }, { value: 0x0415 }, { value: 0x0416 }, - { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }]; + { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }, { value: 0x0404 }]; data.forEach(function(item) { var langinfo = Common.util.LanguageInfo.getLocalLanguageName(item.value); item.displayValue = langinfo[1]; diff --git a/apps/documenteditor/main/app/view/DocProtection.js b/apps/documenteditor/main/app/view/DocProtection.js new file mode 100644 index 000000000..757cd7912 --- /dev/null +++ b/apps/documenteditor/main/app/view/DocProtection.js @@ -0,0 +1,147 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2022 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * + */ + +/** + * DocProtection.js + * + * Created by Julia Radzhabova on 21.09.2022 + * Copyright (c) 2022 Ascensio System SIA. All rights reserved. + * + */ +define([ + 'common/main/lib/util/utils', + 'common/main/lib/component/BaseView', + 'common/main/lib/component/Layout', + 'common/main/lib/component/Window' +], function (template) { + 'use strict'; + + DE.Views.DocProtection = Common.UI.BaseView.extend(_.extend((function(){ + var template = + '
    ' + + '' + + '
    '; + + function setEvents() { + var me = this; + + this.btnProtectDoc.on('click', function (btn, e) { + me.fireEvent('protect:document', [btn.pressed]); + }); + me._isSetEvents = true; + } + + return { + + options: {}, + + initialize: function (options) { + Common.UI.BaseView.prototype.initialize.call(this, options); + + this.appConfig = options.mode; + + var _set = Common.enumLock; + this.lockedControls = []; + this._state = {disabled: false, currentProtectHint: this.hintProtectDoc }; + + this.btnProtectDoc = new Common.UI.Button({ + cls: 'btn-toolbar x-huge icon-top', + iconCls: 'toolbar__icon restrict-editing', + enableToggle: true, + caption: this.txtProtectDoc, + lock : [_set.lostConnect, _set.coAuth, _set.previewReviewMode, _set.viewFormMode, _set.protectLock], + dataHint : '1', + dataHintDirection: 'bottom', + dataHintOffset: 'small' + }); + this.lockedControls.push(this.btnProtectDoc); + + Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); + }, + + render: function (el) { + return this; + }, + + onAppReady: function (config) { + var me = this; + (new Promise(function (accept, reject) { + accept(); + })).then(function(){ + me.btnProtectDoc.updateHint(me._state.currentProtectHint, true); + setEvents.call(me); + }); + }, + + getPanel: function () { + this.$el = $(_.template(template)( {} )); + + this.btnProtectDoc.render(this.$el.find('#slot-btn-protect-doc')); + return this.$el; + }, + + getButtons: function(type) { + if (type===undefined) + return this.lockedControls; + return []; + }, + + show: function () { + Common.UI.BaseView.prototype.show.call(this); + this.fireEvent('show', this); + }, + + updateProtectionTips: function(type) { + var str = this.txtProtectDoc; + if (type === Asc.c_oAscEDocProtect.ReadOnly) { + str = this.txtDocProtectedView; + } else if (type === Asc.c_oAscEDocProtect.Comments) { + str = this.txtDocProtectedComment; + } else if (type === Asc.c_oAscEDocProtect.Forms) { + str = this.txtDocProtectedForms; + } else if (type === Asc.c_oAscEDocProtect.TrackedChanges){ // none or tracked changes + str = this.txtDocProtectedTrack; + } + this.btnProtectDoc.updateHint(str, true); + this._state.currentProtectHint = str; + }, + txtProtectDoc: 'Protect Document', + txtDocProtectedView: 'Document is protected.
    You may only view this document.', + txtDocProtectedTrack: 'Document is protected.
    You may edit this document, but all changes will be tracked.', + txtDocProtectedComment: 'Document is protected.
    You may only insert comments to this document.', + txtDocProtectedForms: 'Document is protected.
    You may only fill in forms in this document.', + hintProtectDoc: 'Protect document', + txtDocUnlockDescription: 'Enter a password to unprotect document' + } + }()), DE.Views.DocProtection || {})); +}); \ No newline at end of file diff --git a/apps/documenteditor/main/app/view/DocumentHolder.js b/apps/documenteditor/main/app/view/DocumentHolder.js index 3b9f238c5..6276bda84 100644 --- a/apps/documenteditor/main/app/view/DocumentHolder.js +++ b/apps/documenteditor/main/app/view/DocumentHolder.js @@ -76,6 +76,12 @@ define([ this._currentParaObjDisabled = false; this._currLang = {}; this._isDisabled = false; + this._docProtection = { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + }; }, render: function () { @@ -165,11 +171,11 @@ define([ canComment = canComment && !(spectype==Asc.c_oAscContentControlSpecificType.CheckBox || spectype==Asc.c_oAscContentControlSpecificType.Picture || spectype==Asc.c_oAscContentControlSpecificType.ComboBox || spectype==Asc.c_oAscContentControlSpecificType.DropDownList || spectype==Asc.c_oAscContentControlSpecificType.DateTime); - canEditControl = spectype !== undefined && (spectype === Asc.c_oAscContentControlSpecificType.None || spectype === Asc.c_oAscContentControlSpecificType.ComboBox) && !control_lock; + canEditControl = spectype !== undefined && (spectype === Asc.c_oAscContentControlSpecificType.None || spectype === Asc.c_oAscContentControlSpecificType.ComboBox || spectype === Asc.c_oAscContentControlSpecificType.Complex) && !control_lock; } me.menuViewUndo.setVisible(me.mode.canCoAuthoring && me.mode.canComments && !me._isDisabled); - me.menuViewUndo.setDisabled(!me.api.asc_getCanUndo()); + me.menuViewUndo.setDisabled(!me.api.asc_getCanUndo() || me._docProtection.isReadOnly); me.menuViewCopySeparator.setVisible(isInSign); var isRequested = (signProps) ? signProps.asc_getRequested() : false; @@ -187,15 +193,15 @@ define([ } me.menuViewAddComment.setVisible(canComment); - me.menuViewAddComment.setDisabled(value.paraProps && value.paraProps.locked === true); + me.menuViewAddComment.setDisabled(value.paraProps && value.paraProps.locked === true || me._docProtection.isReadOnly || me._docProtection.isFormsOnly); var disabled = value.paraProps && value.paraProps.locked === true; var cancopy = me.api && me.api.can_CopyCut(); me.menuViewCopy.setDisabled(!cancopy); me.menuViewCut.setVisible(me._fillFormMode && canEditControl); - me.menuViewCut.setDisabled(disabled || !cancopy); + me.menuViewCut.setDisabled(disabled || !cancopy || me._docProtection.isReadOnly || me._docProtection.isCommentsOnly); me.menuViewPaste.setVisible(me._fillFormMode && canEditControl); - me.menuViewPaste.setDisabled(disabled); + me.menuViewPaste.setDisabled(disabled || me._docProtection.isReadOnly || me._docProtection.isCommentsOnly); me.menuViewPrint.setVisible(me.mode.canPrint && !me._fillFormMode); me.menuViewPrint.setDisabled(!cancopy); @@ -265,6 +271,12 @@ define([ }); var menuInsertCaptionSeparator = new Common.UI.MenuItem({ caption: '--' }); + me.menuSaveAsPicture = new Common.UI.MenuItem({ + caption : me.textSaveAsPicture + }); + + var menuSaveAsPictureSeparator = new Common.UI.MenuItem({ caption: '--'}); + me.menuEquationInsertCaption = new Common.UI.MenuItem({ caption : me.txtInsertCaption }); @@ -449,10 +461,6 @@ define([ caption : me.editChartText }); - var menuChartEditSeparator = new Common.UI.MenuItem({ - caption : '--' - }); - me.menuOriginalSize = new Common.UI.MenuItem({ caption : me.originalSizeText }); @@ -585,10 +593,6 @@ define([ caption: me.textEditPoints }); - var menuImgEditPointsSeparator = new Common.UI.MenuItem({ - caption : '--' - }); - this.pictureMenu = new Common.UI.Menu({ cls: 'shifted-right', restoreHeightAndTop: true, @@ -697,8 +701,6 @@ define([ if (me.menuChartEdit.isVisible()) me.menuChartEdit.setDisabled(islocked || value.imgProps.value.get_SeveralCharts()); - menuChartEditSeparator.setVisible(me.menuChartEdit.isVisible()); - me.menuOriginalSize.setDisabled(islocked || value.imgProps.value.get_ImageUrl()===null || value.imgProps.value.get_ImageUrl()===undefined); me.menuImageAdvanced.setDisabled(islocked); me.menuImageAlign.setDisabled( islocked || (wrapping == Asc.c_oAscWrapStyle2.Inline) ); @@ -732,9 +734,9 @@ define([ me.menuImgPrint.setDisabled(!cancopy); var lockreview = Common.Utils.InternalSettings.get("de-accept-reject-lock"); - me.menuImgAccept.setVisible(!lockreview); - me.menuImgReject.setVisible(!lockreview); - menuImgReviewSeparator.setVisible(!lockreview); + me.menuImgAccept.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); + me.menuImgReject.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); + menuImgReviewSeparator.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); var signGuid = (value.imgProps && value.imgProps.value && me.mode.isSignatureSupport) ? value.imgProps.value.asc_getSignatureId() : undefined, isInSign = !!signGuid; @@ -749,7 +751,6 @@ define([ var canEditPoints = me.api && me.api.asc_canEditGeometry(); me.menuImgEditPoints.setVisible(canEditPoints); - menuImgEditPointsSeparator.setVisible(canEditPoints); canEditPoints && me.menuImgEditPoints.setDisabled(islocked); }, items: [ @@ -767,8 +768,6 @@ define([ me.menuImgRemoveControl, me.menuImgControlSettings, menuImgControlSeparator, - me.menuImgEditPoints, - menuImgEditPointsSeparator, me.menuImageArrange, me.menuImageAlign, me.menuImageWrap, @@ -776,11 +775,13 @@ define([ { caption: '--' }, me.menuInsertCaption, menuInsertCaptionSeparator, + me.menuSaveAsPicture, + menuSaveAsPictureSeparator, me.menuImgCrop, me.menuOriginalSize, me.menuImgReplace, me.menuChartEdit, - menuChartEditSeparator, + me.menuImgEditPoints, me.menuImageAdvanced ] }).on('hide:after', function(menu, e, isFromInputControl) { @@ -1145,64 +1146,7 @@ define([ me.menuTableEquation = new Common.UI.MenuItem({ caption : me.advancedEquationText, - menu : new Common.UI.Menu({ - cls: 'ppm-toolbar shifted-right', - menuAlign: 'tl-tr', - items : [ - new Common.UI.MenuItem({ - caption : me.unicodeText, - iconCls : 'menu__icon unicode', - checkable : true, - checkmark : false, - checked : false, - toggleGroup : 'popupparaeqinput', - type : 'input', - value : Asc.c_oAscMathInputType.Unicode - }), - new Common.UI.MenuItem({ - caption : me.latexText, - iconCls : 'menu__icon latex', - checkable : true, - checkmark : false, - checked : false, - toggleGroup : 'popupparaeqinput', - type : 'input', - value : Asc.c_oAscMathInputType.LaTeX - }), - { caption : '--' }, - new Common.UI.MenuItem({ - caption : me.currProfText, - iconCls : 'menu__icon professional-equation', - type : 'view', - value : {all: false, linear: false} - }), - new Common.UI.MenuItem({ - caption : me.currLinearText, - iconCls : 'menu__icon linear-equation', - type : 'view', - value : {all: false, linear: true} - }), - new Common.UI.MenuItem({ - caption : me.allProfText, - iconCls : 'menu__icon professional-equation', - type : 'view', - value : {all: true, linear: false} - }), - new Common.UI.MenuItem({ - caption : me.allLinearText, - iconCls : 'menu__icon linear-equation', - type : 'view', - value : {all: true, linear: true} - }), - { caption : '--' }, - new Common.UI.MenuItem({ - caption : me.eqToInlineText, - checkable : true, - checked : false, - type : 'mode' - }) - ] - }) + menu : me.createEquationMenu('popuptableeqinput', 'tl-tr') }); me.menuTableSelectText = new Common.UI.MenuItem({ @@ -1364,9 +1308,9 @@ define([ me.menuTablePrint.setDisabled(!cancopy); var lockreview = Common.Utils.InternalSettings.get("de-accept-reject-lock"); - me.menuTableAccept.setVisible(!lockreview); - me.menuTableReject.setVisible(!lockreview); - menuTableReviewSeparator.setVisible(!lockreview); + me.menuTableAccept.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); + me.menuTableReject.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); + menuTableReviewSeparator.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); // bullets & numbering var listId = me.api.asc_GetCurrentNumberingId(), @@ -1491,13 +1435,10 @@ define([ me.menuAddCommentTable.setDisabled(value.paraProps!==undefined && value.paraProps.locked===true); /** coauthoring end **/ - var in_field = me.api.asc_GetCurrentComplexField(); + var in_field = me.api.asc_HaveFields(true); me.menuTableRefreshField.setVisible(!!in_field); me.menuTableRefreshField.setDisabled(disabled); menuTableFieldSeparator.setVisible(!!in_field); - if (in_field) { - me.menuTableRefreshField.options.fieldProps = in_field; - } }, items: [ me.menuSpellCheckTable, @@ -1658,66 +1599,8 @@ define([ me.menuParagraphEquation = new Common.UI.MenuItem({ caption : me.advancedEquationText, - menu : new Common.UI.Menu({ - cls: 'ppm-toolbar shifted-right', - menuAlign: 'tl-tr', - items : [ - new Common.UI.MenuItem({ - caption : me.unicodeText, - iconCls : 'menu__icon unicode', - checkable : true, - checkmark : false, - checked : false, - toggleGroup : 'popupparaeqinput', - type : 'input', - value : Asc.c_oAscMathInputType.Unicode - }), - new Common.UI.MenuItem({ - caption : me.latexText, - iconCls : 'menu__icon latex', - checkable : true, - checkmark : false, - checked : false, - toggleGroup : 'popupparaeqinput', - type : 'input', - value : Asc.c_oAscMathInputType.LaTeX - }), - { caption : '--' }, - new Common.UI.MenuItem({ - caption : me.currProfText, - iconCls : 'menu__icon professional-equation', - type : 'view', - value : {all: false, linear: false} - }), - new Common.UI.MenuItem({ - caption : me.currLinearText, - iconCls : 'menu__icon linear-equation', - type : 'view', - value : {all: false, linear: true} - }), - new Common.UI.MenuItem({ - caption : me.allProfText, - iconCls : 'menu__icon professional-equation', - type : 'view', - value : {all: true, linear: false} - }), - new Common.UI.MenuItem({ - caption : me.allLinearText, - iconCls : 'menu__icon linear-equation', - type : 'view', - value : {all: true, linear: true} - }), - { caption : '--' }, - new Common.UI.MenuItem({ - caption : me.eqToInlineText, - checkable : true, - checked : false, - type : 'mode' - }) - ] - }) + menu : me.createEquationMenu('popupparaeqinput', 'tl-tr') }); - /** coauthoring begin **/ var menuCommentSeparatorPara = new Common.UI.MenuItem({ caption : '--' @@ -2051,9 +1934,9 @@ define([ me.menuParaPrint.setDisabled(!cancopy); var lockreview = Common.Utils.InternalSettings.get("de-accept-reject-lock"); - me.menuParaAccept.setVisible(!lockreview); - me.menuParaReject.setVisible(!lockreview); - menuParaReviewSeparator.setVisible(!lockreview); + me.menuParaAccept.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); + me.menuParaReject.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); + menuParaReviewSeparator.setVisible(me.mode.canReview && !me.mode.isReviewOnly && !lockreview); // spellCheck var spell = (value.spellProps!==undefined && value.spellProps.value.get_Checked()===false); @@ -2139,13 +2022,10 @@ define([ me.menuAddCommentPara.setDisabled(value.paraProps && value.paraProps.locked === true); /** coauthoring end **/ - var in_field = me.api.asc_GetCurrentComplexField(); + var in_field = me.api.asc_HaveFields(true); me.menuParaRefreshField.setVisible(!!in_field); me.menuParaRefreshField.setDisabled(disabled); menuParaFieldSeparator.setVisible(!!in_field); - if (in_field) { - me.menuParaRefreshField.options.fieldProps = in_field; - } var listId = me.api.asc_GetCurrentNumberingId(), in_list = (listId !== null); @@ -2978,6 +2858,67 @@ define([ } }, + createEquationMenu: function(toggleGroup, menuAlign) { + return new Common.UI.Menu({ + cls: 'ppm-toolbar shifted-right', + menuAlign: menuAlign, + items : [ + new Common.UI.MenuItem({ + caption : this.unicodeText, + iconCls : 'menu__icon unicode', + checkable : true, + checkmark : false, + checked : false, + toggleGroup : toggleGroup, + type : 'input', + value : Asc.c_oAscMathInputType.Unicode + }), + new Common.UI.MenuItem({ + caption : this.latexText, + iconCls : 'menu__icon latex', + checkable : true, + checkmark : false, + checked : false, + toggleGroup : toggleGroup, + type : 'input', + value : Asc.c_oAscMathInputType.LaTeX + }), + { caption : '--' }, + new Common.UI.MenuItem({ + caption : this.currProfText, + iconCls : 'menu__icon professional-equation', + type : 'view', + value : {all: false, linear: false} + }), + new Common.UI.MenuItem({ + caption : this.currLinearText, + iconCls : 'menu__icon linear-equation', + type : 'view', + value : {all: false, linear: true} + }), + new Common.UI.MenuItem({ + caption : this.allProfText, + iconCls : 'menu__icon professional-equation', + type : 'view', + value : {all: true, linear: false} + }), + new Common.UI.MenuItem({ + caption : this.allLinearText, + iconCls : 'menu__icon linear-equation', + type : 'view', + value : {all: true, linear: true} + }), + { caption : '--' }, + new Common.UI.MenuItem({ + caption : this.eqToInlineText, + checkable : true, + checked : false, + type : 'mode' + }) + ] + }); + }, + focus: function() { var me = this; _.defer(function(){ me.cmpEl.focus(); }, 50); @@ -3203,6 +3144,7 @@ define([ textCells: 'Cells', textSeveral: 'Several Rows/Columns', txtInsertCaption: 'Insert Caption', + textSaveAsPicture: 'Save as picture', txtEmpty: '(Empty)', textFromStorage: 'From Storage', advancedDropCapText: 'Drop Cap Settings', diff --git a/apps/documenteditor/main/app/view/DropcapSettingsAdvanced.js b/apps/documenteditor/main/app/view/DropcapSettingsAdvanced.js index 26bcc3618..13864acfb 100644 --- a/apps/documenteditor/main/app/view/DropcapSettingsAdvanced.js +++ b/apps/documenteditor/main/app/view/DropcapSettingsAdvanced.js @@ -151,8 +151,8 @@ define([ {id: Common.UI.getId(), displayValue: '1.5 ' + txtPt, value: 1.5, pxValue: 2, offsety: 40}, {id: Common.UI.getId(), displayValue: '2.25 ' + txtPt, value: 2.25, pxValue: 3, offsety: 60}, {id: Common.UI.getId(), displayValue: '3 ' + txtPt, value: 3, pxValue: 4, offsety: 80}, - {id: Common.UI.getId(), displayValue: '4.5 ' + txtPt, value: 4.5, pxValue: 5, offsety: 100}, - {id: Common.UI.getId(), displayValue: '6 ' + txtPt, value: 6, pxValue: 6, offsety: 120} + {id: Common.UI.getId(), displayValue: '4.5 ' + txtPt, value: 4.5, pxValue: 6, offsety: 100}, + {id: Common.UI.getId(), displayValue: '6 ' + txtPt, value: 6, pxValue: 8, offsety: 120} ] }).on('selected', _.bind(function(combo, record) { this.BorderSize = {ptValue: record.value, pxValue: record.pxValue}; @@ -201,7 +201,8 @@ define([ } } var colorstr = (typeof(color) == 'object') ? color.color : color; - me.tableStyler.setCellsColor(colorstr); + me.tableStyler.setTableColor(colorstr); + me.tableStyler.redrawTable(); }, this)); this.colorsBack = this.btnBackColor.getPicker(); @@ -667,8 +668,7 @@ define([ }, afterRender: function() { - this.updateMetricUnit(); - this.updateThemeColors(); + if (!this.isFrame) { this.cmbFonts.fillFonts(this.fontStore); @@ -676,6 +676,13 @@ define([ this._setDefaults(this._originalProps); + var colorstr = (typeof(this.paragraphShade) == 'object') ? this.paragraphShade.color : this.paragraphShade; + this.tableStyler.setTableColor(colorstr); + (colorstr!='transparent') && this.tableStyler.redrawTable(); + + this.updateMetricUnit(); + this.updateThemeColors(); + if (this.borderProps !== undefined) { this.btnBorderColor.setColor(this.borderProps.borderColor); this.btnBorderColor.setAutoColor(this.borderProps.borderColor=='auto'); @@ -692,16 +699,13 @@ define([ this.setTitle((this.isFrame) ? this.textTitleFrame : this.textTitle); - for (var i=0; i -1 ) { - updateBorders.put_Left(this._UpdateBorderStyle(updateBorders.get_Left(), (size>0))); - if (this.ChangedBorders) { - this.ChangedBorders.put_Left(new Asc.asc_CTextBorder(updateBorders.get_Left())); - } + updateBorders.put_Between(this._UpdateBorderStyle(updateBorders.get_Between(), (size>0))); + if (this.ChangedBorders) { + this.ChangedBorders.put_Between(new Asc.asc_CTextBorder(updateBorders.get_Between())); } - if ( ct.col== this.tableStylerColumns-1 && border.indexOf('r') > -1 ) { - updateBorders.put_Right(this._UpdateBorderStyle(updateBorders.get_Right(), (size>0))); - if (this.ChangedBorders) { - this.ChangedBorders.put_Right(new Asc.asc_CTextBorder(updateBorders.get_Right())); - } - } - - if ( ct.row==0 && border.indexOf('t') > -1 ) { - updateBorders.put_Top(this._UpdateBorderStyle(updateBorders.get_Top(), (size>0))); - if (this.ChangedBorders) { - this.ChangedBorders.put_Top(new Asc.asc_CTextBorder(updateBorders.get_Top())); - } - } - - if ( ct.row== this.tableStylerRows-1 && border.indexOf('b') > -1 ) { - updateBorders.put_Bottom(this._UpdateBorderStyle(updateBorders.get_Bottom(), (size>0))); - if (this.ChangedBorders) { - this.ChangedBorders.put_Bottom(new Asc.asc_CTextBorder(updateBorders.get_Bottom())); - } - } - - if ( ct.row==0 && border.indexOf('b') > -1 || - ct.row== this.tableStylerRows-1 && border.indexOf('t') > -1) { - updateBorders.put_Between(this._UpdateBorderStyle(updateBorders.get_Between(), (size>0))); - if (this.ChangedBorders) { - this.ChangedBorders.put_Between(new Asc.asc_CTextBorder(updateBorders.get_Between())); - } - } }, _UpdateTableBordersStyle: function(ct, border, size, color, destination) { diff --git a/apps/documenteditor/main/app/view/FileMenu.js b/apps/documenteditor/main/app/view/FileMenu.js index 8a92b0750..3748d4a7c 100644 --- a/apps/documenteditor/main/app/view/FileMenu.js +++ b/apps/documenteditor/main/app/view/FileMenu.js @@ -67,9 +67,9 @@ define([ if (item) { var panel = this.panels[item.options.action]; if (item.options.action === 'help') { - if ( panel.usedHelpCenter === true && navigator.onLine ) { + if ( panel.noHelpContents === true && navigator.onLine ) { this.fireEvent('item:click', [this, 'external-help', true]); - window.open(panel.urlHelpCenter, '_blank'); + !!panel.urlHelpCenter && window.open(panel.urlHelpCenter, '_blank'); return; } } @@ -87,6 +87,9 @@ define([ }, initialize: function () { + this._state = { + infoPreviewMode: false + }; }, render: function () { @@ -158,6 +161,17 @@ define([ dataHintOffset: [2, 14] }); + this.miPrintWithPreview = new Common.UI.MenuItem({ + el : $markup.elementById('#fm-btn-print-with-preview'), + action : 'printpreview', + caption : this.btnPrintCaption, + canFocused: false, + dataHint: 1, + dataHintDirection: 'left-top', + dataHintOffset: [2, 14], + dataHintTitle: 'P' + }); + this.miPrint = new Common.UI.MenuItem({ el : $markup.elementById('#fm-btn-print'), action : 'print', @@ -292,6 +306,7 @@ define([ this.miSaveCopyAs, this.miSaveAs, this.miPrint, + this.miPrintWithPreview, this.miRename, this.miProtect, this.miRecent, @@ -363,6 +378,7 @@ define([ 'info' : (new DE.Views.FileMenuPanels.DocumentInfo({menu:this})).render(this.$el.find('#panel-info')), 'rights' : (new DE.Views.FileMenuPanels.DocumentRights({menu:this})).render(this.$el.find('#panel-rights')) }; + this._state.infoPreviewMode && this.panels['info'].setPreviewMode(this._state.infoPreviewMode); } if (!this.mode) return; @@ -381,7 +397,8 @@ define([ this.miSaveAs[((this.mode.canDownload || this.mode.canDownloadOrigin) && this.mode.isDesktopApp && this.mode.isOffline)?'show':'hide'](); this.miSave[this.mode.isEdit && Common.UI.LayoutManager.isElementVisible('toolbar-file-save') ?'show':'hide'](); this.miEdit[!this.mode.isEdit && this.mode.canEdit && this.mode.canRequestEditRights ?'show':'hide'](); - this.miPrint[this.mode.canPrint?'show':'hide'](); + this.miPrint[this.mode.canPrint && !this.mode.canPreviewPrint ?'show':'hide'](); + this.miPrintWithPreview[this.mode.canPreviewPrint?'show':'hide'](); this.miRename[(this.mode.canRename && !this.mode.isDesktopApp) ?'show':'hide'](); this.miProtect[this.mode.canProtect ?'show':'hide'](); separatorVisible = (this.mode.canDownload || this.mode.canDownloadOrigin || this.mode.isEdit && Common.UI.LayoutManager.isElementVisible('toolbar-file-save') || this.mode.canPrint || this.mode.canProtect || @@ -463,6 +480,12 @@ define([ this.panels['help'].setLangConfig(this.mode.lang); } + if (this.mode.canPreviewPrint) { + var printPanel = DE.getController('Print').getView('PrintWithPreview'); + printPanel.menu = this; + !this.panels['printpreview'] && (this.panels['printpreview'] = printPanel.render(this.$el.find('#panel-print'))); + } + if ( Common.Controllers.Desktop.isActive() ) { $('
  • ').insertAfter($('#fm-btn-recent', this.$el)); this.items.push( @@ -568,6 +591,7 @@ define([ options && options.protect && _btn_protect.setDisabled(disable); options && options.history && _btn_history.setDisabled(disable); + options && options.info && (this.panels ? this.panels['info'].setPreviewMode(disable) : this._state.infoPreviewMode = disable ); }, isVisible: function () { diff --git a/apps/documenteditor/main/app/view/FileMenuPanels.js b/apps/documenteditor/main/app/view/FileMenuPanels.js index 91f529801..f09186f6c 100644 --- a/apps/documenteditor/main/app/view/FileMenuPanels.js +++ b/apps/documenteditor/main/app/view/FileMenuPanels.js @@ -56,37 +56,40 @@ define([ {name: 'DOCX', imgCls: 'docx', type: Asc.c_oAscFileType.DOCX}, {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF}, {name: 'ODT', imgCls: 'odt', type: Asc.c_oAscFileType.ODT}, - {name: 'TXT', imgCls: 'txt', type: Asc.c_oAscFileType.TXT} - ],[ - {name: 'DOTX', imgCls: 'dotx', type: Asc.c_oAscFileType.DOTX}, - {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA}, - {name: 'OTT', imgCls: 'ott', type: Asc.c_oAscFileType.OTT}, - {name: 'RTF', imgCls: 'rtf', type: Asc.c_oAscFileType.RTF} - ],[ - {name: 'DOCM', imgCls: 'docm', type: Asc.c_oAscFileType.DOCM}, {name: 'DOCXF', imgCls: 'docxf', type: Asc.c_oAscFileType.DOCXF}, {name: 'OFORM', imgCls: 'oform', type: Asc.c_oAscFileType.OFORM} ],[ - {name: 'HTML (Zipped)', imgCls: 'html', type: Asc.c_oAscFileType.HTML}, + {name: 'DOTX', imgCls: 'dotx', type: Asc.c_oAscFileType.DOTX}, + {name: 'DOCM', imgCls: 'docm', type: Asc.c_oAscFileType.DOCM}, + {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA}, + {name: 'OTT', imgCls: 'ott', type: Asc.c_oAscFileType.OTT} + ],[ + {name: 'RTF', imgCls: 'rtf', type: Asc.c_oAscFileType.RTF}, + {name: 'TXT', imgCls: 'txt', type: Asc.c_oAscFileType.TXT}, {name: 'FB2', imgCls: 'fb2', type: Asc.c_oAscFileType.FB2}, - {name: 'EPUB', imgCls: 'epub', type: Asc.c_oAscFileType.EPUB} + {name: 'EPUB', imgCls: 'epub', type: Asc.c_oAscFileType.EPUB}, + {name: 'HTML (Zipped)', imgCls: 'html', type: Asc.c_oAscFileType.HTML} + ], [ + {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG}, + {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG} ]], - template: _.template([ - '', - '<% _.each(rows, function(row) { %>', - '', - '<% _.each(row, function(item) { %>', - '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', - '', - '<% } %>', - '<% }) %>', - '', - '<% }) %>', - '
    ', - '
    ', - '
    ' + '
    ', + '
    <%= header %>
    ', + '
    ', + '<% _.each(rows, function(row) { %>', + '<% _.each(row, function(item) { %>', + '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', + '
    ', + '
    ', + '
    ', + '<% } %>', + '<% }) %>', + '
    ', + '<% }) %>', + '
    ', + '
    ' ].join('')), initialize: function(options) { @@ -95,15 +98,24 @@ define([ this.menu = options.menu; this.fileType = options.fileType; this.mode = options.mode; + + Common.NotificationCenter.on({ + 'window:resize': _.bind(function() { + var divided = Common.Utils.innerWidth() >= this.maxWidth; + if (this.isDivided !== divided) { + this.$el.find('.divider').css('width', divided ? '100%' : '0'); + this.isDivided = divided; + } + }, this) + }); }, render: function() { if (/^pdf$/.test(this.fileType)) { - this.formats[0].splice(1, 1); // remove pdf - this.formats[1].splice(1, 1); // remove pdfa - this.formats[3].push({name: 'PDF', imgCls: 'pdf', type: ''}); // original pdf + this.formats[0].splice(1, 1, {name: 'PDF', imgCls: 'pdf', type: ''}); // remove pdf + this.formats[1].splice(2, 1); // remove pdfa } else if (/^xps|oxps$/.test(this.fileType)) { - this.formats[3].push({name: this.fileType.toUpperCase(), imgCls: this.fileType, type: ''}); // original xps/oxps + this.formats[0].push({name: this.fileType.toUpperCase(), imgCls: this.fileType, type: ''}); // original xps/oxps } else if (/^djvu$/.test(this.fileType)) { this.formats = [[ {name: 'DJVU', imgCls: 'djvu', type: ''}, // original djvu @@ -112,12 +124,10 @@ define([ } if (this.mode && !this.mode.canFeatureForms && this.formats.length>2) { - this.formats[2].splice(1, 2); - this.formats[2] = this.formats[2].concat(this.formats[3]); - this.formats[3] = undefined; + this.formats[0].splice(3, 2); // remove docxf and oform } - this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'docx').toLowerCase()})); + this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'docx').toLowerCase(), header: this.textDownloadAs})); $('.btn-doc-format',this.el).on('click', _.bind(this.onFormatClick,this)); if (_.isUndefined(this.scroller)) { @@ -128,6 +138,21 @@ define([ }); } + var itemWidth = 70 + 24, // width + margin + maxCount = 0; + this.formats.forEach(_.bind(function (item, index) { + var count = item.length; + if (count > maxCount) { + maxCount = count; + } + }, this)); + this.maxWidth = $('#file-menu-panel .panel-menu').outerWidth() + 20 + 10 + itemWidth * maxCount; // menu + left padding + margin + + if (Common.Utils.innerWidth() >= this.maxWidth) { + this.$el.find('.divider').css('width', '100%'); + this.isDivided = true; + } + return this; }, @@ -141,7 +166,9 @@ define([ if (!_.isUndefined(type) && this.menu) { this.menu.fireEvent('saveas:format', [this.menu, type.value ? parseInt(type.value) : undefined]); } - } + }, + + textDownloadAs: "Download as" }); DE.Views.FileMenuPanels.ViewSaveCopy = Common.UI.BaseView.extend({ @@ -149,40 +176,44 @@ define([ menu: undefined, formats: [[ - {name: 'DOCX', imgCls: 'docx', type: Asc.c_oAscFileType.DOCX, ext: '.docx'}, - {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF, ext: '.pdf'}, - {name: 'ODT', imgCls: 'odt', type: Asc.c_oAscFileType.ODT, ext: '.odt'}, - {name: 'TXT', imgCls: 'txt', type: Asc.c_oAscFileType.TXT, ext: '.txt'} + {name: 'DOCX', imgCls: 'docx', type: Asc.c_oAscFileType.DOCX}, + {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF}, + {name: 'ODT', imgCls: 'odt', type: Asc.c_oAscFileType.ODT}, + {name: 'DOCXF', imgCls: 'docxf', type: Asc.c_oAscFileType.DOCXF}, + {name: 'OFORM', imgCls: 'oform', type: Asc.c_oAscFileType.OFORM} ],[ - {name: 'DOTX', imgCls: 'dotx', type: Asc.c_oAscFileType.DOTX, ext: '.dotx'}, - {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA, ext: '.pdf'}, - {name: 'OTT', imgCls: 'ott', type: Asc.c_oAscFileType.OTT, ext: '.ott'}, - {name: 'RTF', imgCls: 'rtf', type: Asc.c_oAscFileType.RTF, ext: '.rtf'} + {name: 'DOTX', imgCls: 'dotx', type: Asc.c_oAscFileType.DOTX}, + {name: 'DOCM', imgCls: 'docm', type: Asc.c_oAscFileType.DOCM}, + {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA}, + {name: 'OTT', imgCls: 'ott', type: Asc.c_oAscFileType.OTT} ],[ - {name: 'DOCM', imgCls: 'docm', type: Asc.c_oAscFileType.DOCM, ext: '.docm'}, - {name: 'DOCXF', imgCls: 'docxf', type: Asc.c_oAscFileType.DOCXF, ext: '.docxf'}, - {name: 'OFORM', imgCls: 'oform', type: Asc.c_oAscFileType.OFORM, ext: '.oform'} - ],[ - {name: 'HTML (Zipped)', imgCls: 'html', type: Asc.c_oAscFileType.HTML, ext: '.html'}, - {name: 'FB2', imgCls: 'fb2', type: Asc.c_oAscFileType.FB2, ext: '.fb2'}, - {name: 'EPUB', imgCls: 'epub', type: Asc.c_oAscFileType.EPUB, ext: '.epub'} + {name: 'RTF', imgCls: 'rtf', type: Asc.c_oAscFileType.RTF}, + {name: 'TXT', imgCls: 'txt', type: Asc.c_oAscFileType.TXT}, + {name: 'FB2', imgCls: 'fb2', type: Asc.c_oAscFileType.FB2}, + {name: 'EPUB', imgCls: 'epub', type: Asc.c_oAscFileType.EPUB}, + {name: 'HTML (Zipped)', imgCls: 'html', type: Asc.c_oAscFileType.HTML} + ], [ + {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG}, + {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG} ]], template: _.template([ - '', - '<% _.each(rows, function(row) { %>', - '', + '
    ', + '
    <%= header %>
    ', + '
    ', + '<% _.each(rows, function(row) { %>', '<% _.each(row, function(item) { %>', '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', - '
    ', + '
    ', + '
    ', + '
    ', '<% } %>', '<% }) %>', - '', - '<% }) %>', - '
    ', - '
    ', - '
    ' + '
    ', + '<% }) %>', + '
  • ', + '
    ' ].join('')), initialize: function(options) { @@ -191,15 +222,24 @@ define([ this.menu = options.menu; this.fileType = options.fileType; this.mode = options.mode; + + Common.NotificationCenter.on({ + 'window:resize': _.bind(function() { + var divided = Common.Utils.innerWidth() >= this.maxWidth; + if (this.isDivided !== divided) { + this.$el.find('.divider').css('width', divided ? '100%' : '0'); + this.isDivided = divided; + } + }, this) + }); }, render: function() { if (/^pdf$/.test(this.fileType)) { - this.formats[0].splice(1, 1); // remove pdf - this.formats[1].splice(1, 1); // remove pdfa - this.formats[3].push({name: 'PDF', imgCls: 'pdf', type: '', ext: true}); // original pdf + this.formats[0].splice(1, 1, {name: 'PDF', imgCls: 'pdf', type: '', ext: true}); // remove pdf + this.formats[1].splice(2, 1); // remove pdfa } else if (/^xps|oxps$/.test(this.fileType)) { - this.formats[3].push({name: this.fileType.toUpperCase(), imgCls: this.fileType, type: '', ext: true}); // original xps/oxps + this.formats[0].push({name: this.fileType.toUpperCase(), imgCls: this.fileType, type: '', ext: true}); // original xps/oxps } else if (/^djvu$/.test(this.fileType)) { this.formats = [[ {name: 'DJVU', imgCls: 'djvu', type: '', ext: true}, // original djvu @@ -208,12 +248,10 @@ define([ } if (this.mode && !this.mode.canFeatureForms && this.formats.length>2) { - this.formats[2].splice(1, 2); - this.formats[2] = this.formats[2].concat(this.formats[3]); - this.formats[3] = undefined; + this.formats[0].splice(3, 2); // remove docxf and oform } - this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'docx').toLowerCase()})); + this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'docx').toLowerCase(), header: this.textSaveCopyAs})); $('.btn-doc-format',this.el).on('click', _.bind(this.onFormatClick,this)); if (_.isUndefined(this.scroller)) { @@ -224,6 +262,21 @@ define([ }); } + var itemWidth = 70 + 24, // width + margin + maxCount = 0; + this.formats.forEach(_.bind(function (item, index) { + var count = item.length; + if (count > maxCount) { + maxCount = count; + } + }, this)); + this.maxWidth = $('#file-menu-panel .panel-menu').outerWidth() + 20 + 10 + itemWidth * maxCount; // menu + left padding + margin + + if (Common.Utils.innerWidth() >= this.maxWidth) { + this.$el.find('.divider').css('width', '100%'); + this.isDivided = true; + } + return this; }, @@ -238,7 +291,9 @@ define([ if (!_.isUndefined(type) && !_.isUndefined(ext) && this.menu) { this.menu.fireEvent('saveas:format', [this.menu, type.value ? parseInt(type.value) : undefined, ext.value]); } - } + }, + + textSaveCopyAs: "Save Copy as" }); DE.Views.FileMenuPanels.Settings = Common.UI.BaseView.extend(_.extend({ @@ -247,7 +302,8 @@ define([ template: _.template([ '
    ', - '', + '
    <%= scope.txtAdvancedSettings %>
    ', + '
    ', '', '', '', @@ -338,12 +394,15 @@ define([ '', '', '', - '', - '', - '', '', '', '', + '', + '', + '', '', '', '', '', '', @@ -91,6 +92,11 @@ define([ this.api = options.api; this.handler = options.handler; + this.isUpdating = options.isUpdating || false; + this.linkStatus = []; + this.wrapEvents = { + onUpdateExternalReferenceList: _.bind(this.refreshList, this) + }; Common.Views.AdvancedSettingsWindow.prototype.initialize.call(this, this.options); }, @@ -102,6 +108,12 @@ define([ el: $('#external-links-list', this.$window), store: new Common.UI.DataViewStore(), simpleAddMode: true, + itemTemplate: _.template([ + '
    ', + '
    <%= value %>
    ', + '
    <%= status %>
    ', + '
    ' + ].join('')), tabindex: 1 }); @@ -123,7 +135,8 @@ define([ }] }) }); - $(this.btnUpdate.cmpEl.find('button')[0]).css('min-width', '87px'); + var el = $(this.btnUpdate.cmpEl.find('button')[0]); + el.css('min-width', Math.max(87, el.outerWidth()) + 'px'); this.btnUpdate.on('click', _.bind(this.onUpdate, this)); this.btnUpdate.menu.on('item:click', _.bind(this.onUpdateMenu, this)); @@ -164,12 +177,20 @@ define([ afterRender: function() { this._setDefaults(); + this.api.asc_registerCallback('asc_onUpdateExternalReferenceList', this.wrapEvents.onUpdateExternalReferenceList); + this.isUpdating && this.setIsUpdating(this.isUpdating, true); }, getFocusedComponents: function() { return [ this.btnUpdate, this.btnDelete, this.btnOpen, this.btnChange, this.linksList ]; }, + close: function () { + this.api.asc_unregisterCallback('asc_onUpdateExternalReferenceList', this.wrapEvents.onUpdateExternalReferenceList); + + Common.Views.AdvancedSettingsWindow.prototype.close.call(this); + }, + getDefaultFocusableComponent: function () { return this.linksList; }, @@ -184,26 +205,29 @@ define([ if (links) { for (var i=0; i0) && this.linksList.selectByIndex(0); - this.btnUpdate.setDisabled(this.linksList.store.length<1 || !this.linksList.getSelectedRec()); - this.btnDelete.setDisabled(this.linksList.store.length<1 || !this.linksList.getSelectedRec()); - this.btnOpen.setDisabled(this.linksList.store.length<1 || !this.linksList.getSelectedRec()); - this.btnChange.setDisabled(this.linksList.store.length<1 || !this.linksList.getSelectedRec()); + this.updateButtons(); }, onUpdate: function() { + if (this.isUpdating) return; + var rec = this.linksList.getSelectedRec(); rec && this.api.asc_updateExternalReferences([rec.get('externalRef')]); }, onUpdateMenu: function(menu, item) { + if (this.isUpdating) return; + if (item.value == 1) { var arr = []; this.linksList.store.each(function(item){ @@ -215,12 +239,16 @@ define([ }, onDelete: function() { + if (this.isUpdating) return; + var rec = this.linksList.getSelectedRec(); rec && this.api.asc_removeExternalReferences([rec.get('externalRef')]); this.refreshList(); }, onDeleteMenu: function(menu, item) { + if (this.isUpdating) return; + if (item.value == 1) { var arr = []; this.linksList.store.each(function(item){ @@ -240,6 +268,40 @@ define([ }, + updateButtons: function() { + var selected = this.linksList.store.length>0 && !!this.linksList.getSelectedRec(); + this.btnUpdate.setDisabled(!selected || this.isUpdating); + this.btnDelete.setDisabled(!selected || this.isUpdating); + this.btnOpen.setDisabled(!selected || this.isUpdating); + this.btnChange.setDisabled(!selected || this.isUpdating); + }, + + setIsUpdating: function(status, immediately) { + console.log(status); + immediately = immediately || !status; // set timeout when start updating only + this.isUpdating = status; + if (!status && this.timerId) { + clearTimeout(this.timerId); + this.timerId = 0; + } + if (immediately) { + this.updateButtons(); + this.btnUpdate.setCaption(status ? this.textUpdating : this.textUpdate); + } else if (!this.timerId) { + var me = this; + me.timerId = setTimeout(function () { + me.updateButtons(); + me.btnUpdate.setCaption(status ? me.textUpdating : me.textUpdate); + },500); + } + !status && this.refreshList(); + }, + + setLinkStatus: function(id, result) { + if (!id) return; + this.linkStatus[id] = result || this.textOk; + }, + txtTitle: 'External Links', textUpdate: 'Update Values', textUpdateAll: 'Update All', @@ -248,7 +310,11 @@ define([ textDelete: 'Break Links', textDeleteAll: 'Break All Links', textOpen: 'Open Source', - textChange: 'Change Source' + textChange: 'Change Source', + textStatus: 'Status', + textOk: 'OK', + textUnknown: 'Unknown', + textUpdating: 'Updating...' }, SSE.Views.ExternalLinksDlg || {})); }); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/view/FileMenu.js b/apps/spreadsheeteditor/main/app/view/FileMenu.js index e678b413d..84b635217 100644 --- a/apps/spreadsheeteditor/main/app/view/FileMenu.js +++ b/apps/spreadsheeteditor/main/app/view/FileMenu.js @@ -56,6 +56,13 @@ define([ var item = _.findWhere(this.items, {el: event.currentTarget}); if (item) { var panel = this.panels[item.options.action]; + if (item.options.action === 'help') { + if ( panel.noHelpContents === true && navigator.onLine ) { + this.fireEvent('item:click', [this, 'external-help', true]); + !!panel.urlHelpCenter && window.open(panel.urlHelpCenter, '_blank'); + return; + } + } this.fireEvent('item:click', [this, item.options.action, !!panel]); if (panel) { diff --git a/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js b/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js index c69e41c08..f47c75ae5 100644 --- a/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js +++ b/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js @@ -44,35 +44,36 @@ define([ formats: [[ {name: 'XLSX', imgCls: 'xlsx', type: Asc.c_oAscFileType.XLSX}, - {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF}, {name: 'ODS', imgCls: 'ods', type: Asc.c_oAscFileType.ODS}, - {name: 'CSV', imgCls: 'csv', type: Asc.c_oAscFileType.CSV} + {name: 'CSV', imgCls: 'csv', type: Asc.c_oAscFileType.CSV}, + {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF} ],[ {name: 'XLTX', imgCls: 'xltx', type: Asc.c_oAscFileType.XLTX}, - {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA}, {name: 'OTS', imgCls: 'ots', type: Asc.c_oAscFileType.OTS}, - {name: 'XLSM', imgCls: 'xlsm', type: Asc.c_oAscFileType.XLSM} - ] -// ,[ -// {name: 'HTML', imgCls: 'html', type: Asc.c_oAscFileType.HTML} -// ] - ], + {name: 'XLSM', imgCls: 'xlsm', type: Asc.c_oAscFileType.XLSM}, + {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA} + ], [ + {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG}, + {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG} + ]], template: _.template([ - '
    ', + '', + '
    ', + '
    ', @@ -395,14 +454,6 @@ define([ var me = this; var $markup = $(this.template({scope: this})); - this.chInputMode = new Common.UI.CheckBox({ - el: $markup.findById('#fms-chb-input-mode'), - labelText: this.txtHieroglyphs, - dataHint: '2', - dataHintDirection: 'left', - dataHintOffset: 'small' - }); - this.chUseAltKey = new Common.UI.CheckBox({ el: $markup.findById('#fms-chb-use-alt-key'), labelText: Common.Utils.isMac ? this.txtUseOptionKey : this.txtUseAltKey, @@ -710,6 +761,17 @@ define([ })).on('click', _.bind(me.applySettings, me)); }); + this.chQuickPrint = new Common.UI.CheckBox({ + el: $markup.findById('#fms-chb-quick-print'), + labelText: '', + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.chQuickPrint.$el.parent().on('click', function (){ + me.chQuickPrint.setValue(!me.chQuickPrint.isChecked()); + }); + this.pnlSettings = $markup.find('.flex-settings').addBack().filter('.flex-settings'); this.pnlApply = $markup.find('.fms-flex-apply').addBack().filter('.fms-flex-apply'); this.pnlTable = this.pnlSettings.find('table'); @@ -744,7 +806,7 @@ define([ updateScroller: function() { if (this.scroller) { Common.UI.Menu.Manager.hideAll(); - var scrolled = this.$el.height()< this.pnlTable.parent().height() + 25 + this.pnlApply.height(); + var scrolled = this.$el.height()< this.pnlTable.parent().height() + 25 + this.pnlApply.height() + this.$el.find('.header').outerHeight(true); this.pnlApply.toggleClass('hidden', !scrolled); this.trApply.toggleClass('hidden', scrolled); this.pnlSettings.css('overflow', scrolled ? 'hidden' : 'visible'); @@ -774,9 +836,9 @@ define([ $('tr.view-review', this.el)[mode.canViewReview ? 'show' : 'hide'](); $('tr.spellcheck', this.el)[mode.isEdit && Common.UI.FeaturesManager.canChange('spellcheck') ? 'show' : 'hide'](); $('tr.comments', this.el)[mode.canCoAuthoring ? 'show' : 'hide'](); - /** coauthoring end **/ + $('tr.quick-print', this.el)[mode.canQuickPrint ? 'show' : 'hide'](); $('tr.macros', this.el)[(mode.customization && mode.customization.macros===false) ? 'hide' : 'show'](); if ( !Common.UI.Themes.available() ) { $('tr.themes, tr.themes + tr.divider', this.el).hide(); @@ -789,8 +851,6 @@ define([ }, updateSettings: function() { - this.chInputMode.setValue(Common.Utils.InternalSettings.get("de-settings-inputmode")); - this.chUseAltKey.setValue(Common.Utils.InternalSettings.get("de-settings-show-alt-hints")); var value = Common.Utils.InternalSettings.get("de-settings-zoom"); @@ -849,6 +909,7 @@ define([ this.cmbMacros.setValue(item ? item.get('value') : 0); this.chPaste.setValue(Common.Utils.InternalSettings.get("de-settings-paste-button")); + this.chQuickPrint.setValue(Common.Utils.InternalSettings.get("de-settings-quick-print-button")); var data = []; for (var t in Common.UI.Themes.map()) { @@ -874,7 +935,6 @@ define([ Common.UI.Themes.setTheme(this.cmbTheme.getValue()); if (!this.chDarkMode.isDisabled() && (this.chDarkMode.isChecked() !== Common.UI.Themes.isContentThemeDark())) Common.UI.Themes.toggleContentTheme(); - Common.localStorage.setItem("de-settings-inputmode", this.chInputMode.isChecked() ? 1 : 0); Common.localStorage.setItem("de-settings-show-alt-hints", this.chUseAltKey.isChecked() ? 1 : 0); Common.Utils.InternalSettings.set("de-settings-show-alt-hints", Common.localStorage.getBool("de-settings-show-alt-hints")); Common.localStorage.setItem("de-settings-zoom", this.cmbZoom.getValue()); @@ -919,6 +979,7 @@ define([ } Common.localStorage.setItem("de-settings-paste-button", this.chPaste.isChecked() ? 1 : 0); + Common.localStorage.setBool("de-settings-quick-print-button", this.chQuickPrint.isChecked()); Common.localStorage.save(); @@ -1016,7 +1077,10 @@ define([ txtStrictTip: 'Use the \'Save\' button to sync the changes you and others make', strIgnoreWordsInUPPERCASE: 'Ignore words in UPPERCASE', strIgnoreWordsWithNumbers: 'Ignore words with numbers', - strShowOthersChanges: 'Show changes from other users' + strShowOthersChanges: 'Show changes from other users', + txtAdvancedSettings: 'Advanced Settings', + txtQuickPrint: 'Show the Quick Print button in the editor header', + txtQuickPrintTip: 'The document will be printed on the last selected or default printer' }, DE.Views.FileMenuPanels.Settings || {})); DE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ @@ -1024,7 +1088,8 @@ define([ menu: undefined, template: _.template([ - '
    ' + '
    <%= scope.txtOpenRecent %>
    ', + '
    ' ].join('')), initialize: function(options) { @@ -1035,7 +1100,7 @@ define([ }, render: function() { - this.$el.html(this.template()); + this.$el.html(this.template({scope: this})); this.viewRecentPicker = new Common.UI.DataView({ el: $('#id-recent-view'), @@ -1074,7 +1139,9 @@ define([ onRecentFileClick: function(view, itemview, record){ if ( this.menu ) this.menu.fireEvent('recent:open', [this.menu, record.get('url')]); - } + }, + + txtOpenRecent: 'Open Recent' }); DE.Views.FileMenuPanels.CreateNew = Common.UI.BaseView.extend(_.extend({ @@ -1089,7 +1156,7 @@ define([ }, template: _.template([ - '

    <%= scope.txtCreateNew %>

    ', + '
    <%= scope.txtCreateNew %>
    ', '
    ', '<% if (blank) { %> ', '
    ', @@ -1177,7 +1244,8 @@ define([ this.template = _.template([ '
    ', - '', + '
    ' + this.txtDocumentInfo + '
    ', + '
    ', '', '', '', @@ -1226,6 +1294,10 @@ define([ '', '', '', + '', + '', + '', + '', '', '', '', @@ -1299,7 +1371,7 @@ define([ '
    ', '
    ', '
    ', - '', + '
    ', '', '', '', @@ -1312,7 +1384,16 @@ define([ this.menu = options.menu; this.coreProps = null; this.authors = []; - this._locked = false; + this._state = { + _locked: false, + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + }, + disableEditing: false + }; }, render: function(node) { @@ -1354,6 +1435,15 @@ define([ dataHintDirection: 'left', dataHintOffset: 'small' }).on('keydown:before', keyDownBefore); + this.inputTags = new Common.UI.InputField({ + el : $markup.findById('#id-info-tags'), + style : 'width: 200px;', + placeHolder : this.txtAddText, + validateOnBlur: false, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }).on('keydown:before', keyDownBefore); this.inputSubject = new Common.UI.InputField({ el : $markup.findById('#id-info-subject'), style : 'width: 200px;', @@ -1571,6 +1661,8 @@ define([ value = props.asc_getTitle(); this.inputTitle.setValue(value || ''); + value = props.asc_getKeywords(); + this.inputTags.setValue(value || ''); value = props.asc_getSubject(); this.inputSubject.setValue(value || ''); value = props.asc_getDescription(); @@ -1586,7 +1678,7 @@ define([ me.authors.push(item); }); this.tblAuthor.find('.close').toggleClass('hidden', !this.mode.isEdit); - !this.mode.isEdit && this._ShowHideInfoItem(this.tblAuthor, !!this.authors.length); + this._ShowHideInfoItem(this.tblAuthor, this.mode.isEdit || !!this.authors.length); } this.SetDisabled(); }, @@ -1714,6 +1806,8 @@ define([ this.api.asc_registerCallback('asc_onGetDocInfoEnd', _.bind(this._onGetDocInfoEnd, this)); // this.api.asc_registerCallback('asc_onDocumentName', _.bind(this.onDocumentName, this)); this.api.asc_registerCallback('asc_onLockCore', _.bind(this.onLockCore, this)); + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); + this.onChangeProtectDocument(); this.updateInfo(this.doc); return this; }, @@ -1723,16 +1817,19 @@ define([ this.inputAuthor.setVisible(mode.isEdit); this.pnlApply.toggleClass('hidden', !mode.isEdit); this.tblAuthor.find('.close').toggleClass('hidden', !mode.isEdit); - if (!mode.isEdit) { - this.inputTitle._input.attr('placeholder', ''); - this.inputSubject._input.attr('placeholder', ''); - this.inputComment._input.attr('placeholder', ''); - this.inputAuthor._input.attr('placeholder', ''); - } + this.inputTitle._input.attr('placeholder', mode.isEdit ? this.txtAddText : ''); + this.inputTags._input.attr('placeholder', mode.isEdit ? this.txtAddText : ''); + this.inputSubject._input.attr('placeholder', mode.isEdit ? this.txtAddText : ''); + this.inputComment._input.attr('placeholder', mode.isEdit ? this.txtAddText : ''); + this.inputAuthor._input.attr('placeholder', mode.isEdit ? this.txtAddAuthor : ''); this.SetDisabled(); return this; }, + setPreviewMode: function(mode) { + this._state.disableEditing = mode; + }, + _onGetDocInfoStart: function() { var me = this; this.infoObj = {PageCount: 0, WordsCount: 0, ParagraphCount: 0, SymbolsCount: 0, SymbolsWSCount:0}; @@ -1788,24 +1885,37 @@ define([ }, onLockCore: function(lock) { - this._locked = lock; + this._state._locked = lock; this.updateFileInfo(); }, + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = DE.getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + } + }, + SetDisabled: function() { - var disable = !this.mode.isEdit || this._locked; + var isProtected = this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly || this._state.docProtection.isCommentsOnly; + var disable = !this.mode.isEdit || this._state._locked || isProtected || this._state.disableEditing; this.inputTitle.setDisabled(disable); + this.inputTags.setDisabled(disable); this.inputSubject.setDisabled(disable); this.inputComment.setDisabled(disable); this.inputAuthor.setDisabled(disable); - this.tblAuthor.find('.close').toggleClass('disabled', this._locked); + this.tblAuthor.find('.close').toggleClass('disabled', this._state._locked); this.tblAuthor.toggleClass('disabled', disable); - this.btnApply.setDisabled(this._locked); + this.btnApply.setDisabled(this._state._locked); }, applySettings: function() { if (this.coreProps && this.api) { this.coreProps.asc_putTitle(this.inputTitle.getValue()); + this.coreProps.asc_putKeywords(this.inputTags.getValue()); this.coreProps.asc_putSubject(this.inputSubject.getValue()); this.coreProps.asc_putDescription(this.inputComment.getValue()); this.coreProps.asc_putCreator(this.authors.join(';')); @@ -1826,6 +1936,7 @@ define([ txtAppName: 'Application', txtEditTime: 'Total Editing time', txtTitle: 'Title', + txtTags: 'Tags', txtSubject: 'Subject', txtComment: 'Comment', txtModifyDate: 'Last Modified', @@ -1842,7 +1953,8 @@ define([ txtFastWV: 'Fast Web View', txtYes: 'Yes', txtNo: 'No', - txtPdfProducer: 'PDF Producer' + txtPdfProducer: 'PDF Producer', + txtDocumentInfo: 'Document Info' }, DE.Views.FileMenuPanels.DocumentInfo || {})); @@ -1855,7 +1967,8 @@ define([ this.rendered = false; this.template = _.template([ - '
    ', + '
    ' + this.txtAccessRights + '
    ', + '
    ', '', '', '', @@ -1970,7 +2083,8 @@ define([ }, txtRights: 'Persons who have rights', - txtBtnAccessRights: 'Change access rights' + txtBtnAccessRights: 'Change access rights', + txtAccessRights: 'Access Rights' }, DE.Views.FileMenuPanels.DocumentRights || {})); DE.Views.FileMenuPanels.Help = Common.UI.BaseView.extend({ @@ -1990,7 +2104,14 @@ define([ this.menu = options.menu; this.urlPref = 'resources/help/{{DEFAULT_LANG}}/'; this.openUrl = null; - this.urlHelpCenter = '{{HELP_CENTER_WEB_EDITORS}}'; + + if ( !Common.Utils.isIE ) { + if ( /^https?:\/\//.test('{{HELP_CENTER_WEB_DE}}') ) { + const _url_obj = new URL('{{HELP_CENTER_WEB_DE}}'); + _url_obj.searchParams.set('lang', Common.Locale.getCurrentLanguage()); + this.urlHelpCenter = _url_obj.toString(); + } + } this.en_data = [ {"src": "ProgramInterface/ProgramInterface.htm", "name": "Introducing Document Editor user interface", "headername": "Program Interface"}, @@ -2081,16 +2202,17 @@ define([ this.iFrame.frameBorder = "0"; this.iFrame.width = "100%"; this.iFrame.height = "100%"; + if (Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86) + this.iFrame.onload = function() { + try { + me.findUrl(me.iFrame.contentWindow.location.href); + } catch (e) { + } + }; + Common.Gateway.on('internalcommand', function(data) { if (data.type == 'help:hyperlink') { - var src = data.data; - var rec = me.viewHelpPicker.store.find(function(record){ - return (src.indexOf(record.get('src'))>0); - }); - if (rec) { - me.viewHelpPicker.selectRecord(rec, true); - me.viewHelpPicker.scrollToRecord(rec); - } + me.findUrl(data.data); } }); @@ -2114,7 +2236,7 @@ define([ } else { if ( Common.Controllers.Desktop.isActive() ) { if ( store.contentLang === '{{DEFAULT_LANG}}' || !Common.Controllers.Desktop.helpUrl() ) { - me.usedHelpCenter = true; + me.noHelpContents = true; me.iFrame.src = '../../common/main/resources/help/download.html'; } else { store.contentLang = store.contentLang === lang ? '{{DEFAULT_LANG}}' : lang; @@ -2153,13 +2275,7 @@ define([ } if (url) { if (this.viewHelpPicker.store.length>0) { - var rec = this.viewHelpPicker.store.find(function(record){ - return (url.indexOf(record.get('src'))>=0); - }); - if (rec) { - this.viewHelpPicker.selectRecord(rec, true); - this.viewHelpPicker.scrollToRecord(rec); - } + this.findUrl(url); this.onSelectItem(url); } else this.openUrl = url; @@ -2168,6 +2284,16 @@ define([ onSelectItem: function(src) { this.iFrame.src = this.urlPref + src; + }, + + findUrl: function(src) { + var rec = this.viewHelpPicker.store.find(function(record){ + return (src.indexOf(record.get('src'))>=0); + }); + if (rec) { + this.viewHelpPicker.selectRecord(rec, true); + this.viewHelpPicker.scrollToRecord(rec); + } } }); @@ -2176,23 +2302,30 @@ define([ menu: undefined, template: _.template([ - '', + '', '
    ', '', - '
    ', - '
    ', - '', - '', - '', - '', - '', - '', - '', - '
    ', + '
    ', + '
    <%= scope.txtProtectDocument %>
    ', + '
    ', + '
    ', + '
    ', + '
    <%= scope.txtEncrypted %>
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', '
    ', '
    ', '', - '
    ', + '
    ', + '
    <%= scope.txtAddSignature %>
    ', + '
    ', + '
    ', + '
    ', + '
    <%= scope.txtAddedSignature %>
    ', + '
    ', '
    ', '
    ' ].join('')), @@ -2204,15 +2337,13 @@ define([ var me = this; this.templateSignature = _.template([ - '', - '', - '', + '
    ', + '
    <%= tipText %>
    ', + '
    ', + '', + '', '
    ', - '', - '', - '', - '', - '
    ' + '
    ' ].join('')); }, @@ -2234,7 +2365,8 @@ define([ this.btnDeletePwd.on('click', _.bind(this.closeMenu, this)); this.cntPassword = $('#id-fms-password'); - this.cntPasswordView = $('#id-fms-view-pwd'); + this.cntEncryptBlock = this.$el.find('.encrypt-block'); + this.cntEncryptedBlock = this.$el.find('.encrypted-block'); this.btnAddInvisibleSign = protection.getButton('signature'); this.btnAddInvisibleSign.render(this.$el.find('#fms-btn-invisible-sign')); @@ -2242,6 +2374,10 @@ define([ this.cntSignature = $('#id-fms-signature'); this.cntSignatureView = $('#id-fms-signature-view'); + + this.cntAddSignature = this.$el.find('.add-signature-block'); + this.cntAddedSignature = this.$el.find('.added-signature-block'); + if (_.isUndefined(this.scroller)) { this.scroller = new Common.UI.Scroller({ el: this.$el, @@ -2324,10 +2460,16 @@ define([ tipText = this.txtRequestedSignatures + (tipText!="" ? "

    " : "")+ tipText; this.cntSignatureView.html(this.templateSignature({tipText: tipText, hasSigned: (hasValid || hasInvalid), hasRequested: hasRequested})); + + var isAddedSignature = this.btnAddInvisibleSign.$el.find('button').hasClass('hidden'); + this.cntAddSignature.toggleClass('hidden', isAddedSignature); + this.cntAddedSignature.toggleClass('hidden', !isAddedSignature); }, updateEncrypt: function() { - this.cntPasswordView.toggleClass('hidden', this.btnAddPwd.isVisible()); + var isProtected = this.btnAddPwd.$el.find('button').hasClass('hidden'); + this.cntEncryptBlock.toggleClass('hidden', isProtected); + this.cntEncryptedBlock.toggleClass('hidden', !isProtected); }, strProtect: 'Protect Document', @@ -2340,8 +2482,348 @@ define([ notcriticalErrorTitle: 'Warning', txtEditWarning: 'Editing will remove the signatures from the document.
    Are you sure you want to continue?', strEncrypt: 'With Password', - txtEncrypted: 'This document has been protected by password' + txtProtectDocument: 'Encrypt this document with a password', + txtEncrypted: 'A password is required to open this document', + txtAddSignature: 'Ensure the integrity of the document by adding an
    invisible digital signature', + txtAddedSignature: 'Valid signatures have been added to the document.
    The document is protected from editing.' }, DE.Views.FileMenuPanels.ProtectDoc || {})); + DE.Views.PrintWithPreview = Common.UI.BaseView.extend(_.extend({ + el: '#panel-print', + menu: undefined, + + template: _.template([ + '
    ', + '
    ', + '', + '
    ', + '', + '
    ' + ].join('')), + + initialize: function(options) { + Common.UI.BaseView.prototype.initialize.call(this,arguments); + + this.menu = options.menu; + + this._initSettings = true; + }, + + render: function(node) { + var me = this; + + var $markup = $(this.template({scope: this})); + + this.cmbRange = new Common.UI.ComboBox({ + el: $markup.findById('#print-combo-range'), + menuStyle: 'min-width: 248px;max-height: 280px;', + editable: false, + takeFocusOnClose: true, + cls: 'input-group-nr', + data: [ + { value: 'all', displayValue: this.txtAllPages }, + { value: 'current', displayValue: this.txtCurrentPage }, + { value: -1, displayValue: this.txtCustomPages } + ], + dataHint: '2', + dataHintDirection: 'bottom', + dataHintOffset: 'big' + }); + this.cmbRange.setValue('all'); + + this.inputPages = new Common.UI.InputField({ + el: $markup.findById('#print-txt-pages'), + allowBlank: true, + validateOnChange: true, + validateOnBlur: false, + maskExp: /[0-9,\-]/, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + + this.cmbPaperSize = new Common.UI.ComboBox({ + el: $markup.findById('#print-combo-pages'), + menuStyle: 'max-height: 280px; min-width: 248px;', + editable: false, + takeFocusOnClose: true, + cls: 'input-group-nr', + data: [ + { value: 0, displayValue:'US Letter (21,59cm x 27,94cm)', caption: 'US Letter', size: [215.9, 279.4]}, + { value: 1, displayValue:'US Legal (21,59cm x 35,56cm)', caption: 'US Legal', size: [215.9, 355.6]}, + { value: 2, displayValue:'A4 (21cm x 29,7cm)', caption: 'A4', size: [210, 297]}, + { value: 3, displayValue:'A5 (14,8cm x 21cm)', caption: 'A5', size: [148, 210]}, + { value: 4, displayValue:'B5 (17,6cm x 25cm)', caption: 'B5', size: [176, 250]}, + { value: 5, displayValue:'Envelope #10 (10,48cm x 24,13cm)', caption: 'Envelope #10', size: [104.8, 241.3]}, + { value: 6, displayValue:'Envelope DL (11cm x 22cm)', caption: 'Envelope DL', size: [110, 220]}, + { value: 7, displayValue:'Tabloid (27,94cm x 43,18cm)', caption: 'Tabloid', size: [279.4, 431.8]}, + { value: 8, displayValue:'A3 (29,7cm x 42cm)', caption: 'A3', size: [297, 420]}, + { value: 9, displayValue:'Tabloid Oversize (30,48cm x 45,71cm)', caption: 'Tabloid Oversize', size: [304.8, 457.1]}, + { value: 10, displayValue:'ROC 16K (19,68cm x 27,3cm)', caption: 'ROC 16K', size: [196.8, 273]}, + { value: 11, displayValue:'Envelope Choukei 3 (11,99cm x 23,49cm)', caption: 'Envelope Choukei 3', size: [119.9, 234.9]}, + { value: 12, displayValue:'Super B/A3 (33,02cm x 48,25cm)', caption: 'Super B/A3', size: [330.2, 482.5]}, + { value: 13, displayValue:'A4 (84,1cm x 118,9cm)', caption: 'A0', size: [841, 1189]}, + { value: 14, displayValue:'A4 (59,4cm x 84,1cm)', caption: 'A1', size: [594, 841]}, + { value: 16, displayValue:'A4 (42cm x 59,4cm)', caption: 'A2', size: [420, 594]}, + { value: 17, displayValue:'A4 (10,5cm x 14,8cm)', caption: 'A6', size: [105, 148]}, + { value: -1, displayValue: this.txtCustom, caption: this.txtCustom, size: []} + ], + dataHint: '2', + dataHintDirection: 'bottom', + dataHintOffset: 'big' + }); + + this.cmbPaperOrientation = new Common.UI.ComboBox({ + el : $markup.findById('#print-combo-orient'), + menuStyle : 'min-width: 150px;', + editable : false, + takeFocusOnClose: true, + cls : 'input-group-nr', + data : [ + { value: Asc.c_oAscPageOrientation.PagePortrait, displayValue: this.txtPortrait }, + { value: Asc.c_oAscPageOrientation.PageLandscape, displayValue: this.txtLandscape } + ], + dataHint: '2', + dataHintDirection: 'bottom', + dataHintOffset: 'big' + }); + + this.cmbPaperMargins = new Common.UI.ComboBox({ + el: $markup.findById('#print-combo-margins'), + menuStyle: 'max-height: 280px; min-width: 248px;', + editable: false, + takeFocusOnClose: true, + cls: 'input-group-nr', + data: [ + { value: 0, displayValue: this.textMarginsNormal, size: [20, 30, 20, 15]}, + { value: 1, displayValue: this.textMarginsUsNormal, size: [25.4, 25.4, 25.4, 25.4]}, + { value: 2, displayValue: this.textMarginsNarrow, size: [12.7, 12.7, 12.7, 12.7]}, + { value: 3, displayValue: this.textMarginsModerate, size: [25.4, 19.1, 25.4, 19.1]}, + { value: 4, displayValue: this.textMarginsWide, size: [25.4, 50.8, 25.4, 50.8]}, + { value: -1, displayValue: this.txtCustom, size: null} + ], + itemsTemplate: _.template([ + '<% _.each(items, function(item) { %>', + '
  • ', + '
    <%= scope.getDisplayValue(item) %>
    ', + '<% if (item.size !== null) { %>
    ' + + '' + + '
    ' + + '' + + '
    ' + + '<% } %>', + '<% }); %>' + ].join('')), + dataHint: '2', + dataHintDirection: 'bottom', + dataHintOffset: 'big' + }); + + this.pnlSettings = $markup.find('.flex-settings').addBack().filter('.flex-settings'); + this.pnlTable = $(this.pnlSettings.find('table')[0]); + this.trApply = $markup.find('.fms-btn-apply'); + + this.btnPrint = new Common.UI.Button({ + el: $markup.findById('#print-btn-print') + }); + this.btnPrintPdf = new Common.UI.Button({ + el: $markup.findById('#print-btn-print-pdf') + }); + + this.btnPrevPage = new Common.UI.Button({ + parentEl: $markup.findById('#print-prev-page'), + cls: 'btn-prev-page', + iconCls: 'arrow', + dataHint: '2', + dataHintDirection: 'top' + }); + + this.btnNextPage = new Common.UI.Button({ + parentEl: $markup.findById('#print-next-page'), + cls: 'btn-next-page', + iconCls: 'arrow', + dataHint: '2', + dataHintDirection: 'top' + }); + + this.countOfPages = $markup.findById('#print-count-page'); + + this.txtNumberPage = new Common.UI.InputField({ + el: $markup.findById('#print-number-page'), + allowBlank: true, + validateOnChange: true, + style: 'width: 50px;', + maskExp: /[0-9]/, + validation: function(value) { + if (/(^[0-9]+$)/.test(value)) { + value = parseInt(value); + if (undefined !== value && value > 0 && value <= me.pageCount) + return true; + } + + return me.txtPageNumInvalid; + }, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + + this.$el = $(node).html($markup); + this.$previewBox = $('#print-preview-box'); + + if (_.isUndefined(this.scroller)) { + this.scroller = new Common.UI.Scroller({ + el: this.pnlSettings, + suppressScrollX: true, + alwaysVisibleY: true + }); + } + + Common.NotificationCenter.on({ + 'window:resize': function() { + me.isVisible() && me.updateScroller(); + } + }); + + this.updateMetricUnit(); + + this.fireEvent('render:after', this); + + return this; + }, + + show: function() { + Common.UI.BaseView.prototype.show.call(this,arguments); + if (this._initSettings) { + this.updateMetricUnit(); + this._initSettings = false; + } + this.updateScroller(); + this.fireEvent('show', this); + }, + + updateScroller: function() { + if (this.scroller) { + Common.UI.Menu.Manager.hideAll(); + var scrolled = this.$el.height()< this.pnlTable.height() + 25 + this.$el.find('.main-header').outerHeight(true); + this.pnlSettings.css('overflow', scrolled ? 'hidden' : 'visible'); + this.scroller.update(); + } + }, + + setMode: function(mode) { + this.mode = mode; + }, + + setApi: function(api) { + + }, + + updateMetricUnit: function() { + if (!this.cmbPaperSize) return; + var store = this.cmbPaperSize.store; + for (var i=0; i0) { var arr = []; data.forEach(function(item) { @@ -1446,7 +1443,7 @@ define([ } } else if (type == Asc.c_oAscContentControlSpecificType.Picture) { imageOnly = true; - } else if (type == Asc.c_oAscContentControlSpecificType.None) { + } else if (type == Asc.c_oAscContentControlSpecificType.None || type == Asc.c_oAscContentControlSpecificType.Complex) { textOnly = !!textProps; } this.TextOnlySettings.toggleClass('hidden', !textOnly); @@ -1472,7 +1469,7 @@ define([ }, onDisconnect: function() { - this.onKeyChanged(this.cmbKey, {value: ""}); + this.onKeyChanged(this.cmbKey, {value: (this._originalProps || new AscCommon.CContentControlPr()).get_NewKey()}); }, disableListButtons: function() { diff --git a/apps/documenteditor/main/app/view/FormsTab.js b/apps/documenteditor/main/app/view/FormsTab.js index 10524186c..83a9a10ed 100644 --- a/apps/documenteditor/main/app/view/FormsTab.js +++ b/apps/documenteditor/main/app/view/FormsTab.js @@ -169,7 +169,7 @@ define([ this.btnTextField = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-text-field', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnText, dataHint: '1', dataHintDirection: 'bottom', @@ -180,7 +180,7 @@ define([ this.btnComboBox = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-combo-box', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnComboBox, dataHint: '1', dataHintDirection: 'bottom', @@ -191,7 +191,7 @@ define([ this.btnDropDown = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-dropdown', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnDropDown, dataHint: '1', dataHintDirection: 'bottom', @@ -202,7 +202,7 @@ define([ this.btnCheckBox = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-checkbox', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnCheckBox, dataHint: '1', dataHintDirection: 'bottom', @@ -213,7 +213,7 @@ define([ this.btnRadioBox = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-radio-button', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnRadioBox, dataHint: '1', dataHintDirection: 'bottom', @@ -224,7 +224,7 @@ define([ this.btnImageField = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-insertimage', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.complexForm, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.complexForm, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnImage, dataHint: '1', dataHintDirection: 'bottom', @@ -235,7 +235,7 @@ define([ this.btnEmailField = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-email', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnEmail, dataHint: '1', dataHintDirection: 'bottom', @@ -246,7 +246,7 @@ define([ this.btnPhoneField = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-phone', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnPhone, dataHint: '1', dataHintDirection: 'bottom', @@ -257,7 +257,7 @@ define([ this.btnComplexField = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon complex-field', - lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.complexForm, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.controlPlain, _set.contentLock, _set.complexForm, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnComplex, dataHint: '1', dataHintDirection: 'bottom', @@ -268,7 +268,7 @@ define([ this.btnViewForm = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-sheet-view', - lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: this.capBtnView, enableToggle: true, dataHint: '1', @@ -280,7 +280,7 @@ define([ this.btnClearFields = new Common.UI.Button({ cls : 'btn-toolbar', iconCls : 'toolbar__icon btn-clearstyle', - lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockComments], caption : this.textClearFields, dataHint : '1', dataHintDirection: 'left', @@ -291,7 +291,7 @@ define([ this.btnHighlight = new Common.UI.ButtonColored({ cls : 'btn-toolbar', iconCls : 'toolbar__icon btn-highlight', - lock: [ _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption : this.textHighlight, menu : true, additionalItems: [ this.mnuNoFormsColor = new Common.UI.MenuItem({ @@ -316,7 +316,7 @@ define([ this.btnPrevForm = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon previous-field', - lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockComments], caption: this.capBtnPrev, // disabled: this.appConfig.isEdit && this.appConfig.canFeatureContentControl && this.appConfig.canFeatureForms, // disable only for edit mode dataHint: '1', @@ -328,7 +328,7 @@ define([ this.btnNextForm = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon next-field', - lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockComments], caption: this.capBtnNext, // disabled: this.appConfig.isEdit && this.appConfig.canFeatureContentControl && this.appConfig.canFeatureForms, // disable only for edit mode, dataHint: '1', @@ -355,7 +355,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', lock: [_set.lostConnect, _set.disableOnStart], iconCls: 'toolbar__icon save-form', - caption: this.appConfig.canRequestSaveAs || !!this.appConfig.saveAsUrl ? this.capBtnSaveForm : this.capBtnDownloadForm, + caption: this.appConfig.canRequestSaveAs || !!this.appConfig.saveAsUrl || this.appConfig.isOffline ? this.capBtnSaveForm : this.capBtnDownloadForm, // disabled: this.appConfig.isEdit && this.appConfig.canFeatureContentControl && this.appConfig.canFeatureForms, // disable only for edit mode, dataHint: '1', dataHintDirection: 'bottom', diff --git a/apps/documenteditor/main/app/view/ImageSettingsAdvanced.js b/apps/documenteditor/main/app/view/ImageSettingsAdvanced.js index dea267880..f5c155ba4 100644 --- a/apps/documenteditor/main/app/view/ImageSettingsAdvanced.js +++ b/apps/documenteditor/main/app/view/ImageSettingsAdvanced.js @@ -987,18 +987,18 @@ define([ 'text!documenteditor/main/app/template/ImageSettingsAdvanced.templat var _arrStyles = [], _arrSize = []; - for ( var i=0; i<6; i++ ) - _arrStyles.push({value: i, offsetx: 80*i+10, offsety: 0}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.None, idsvg: 'no-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Triangle, idsvg: ''}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Arrow, idsvg: 'open-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Stealth, idsvg: 'stealth-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Diamond, idsvg: 'dimond-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Oval, idsvg: 'oval-'}); - _arrStyles[0].type = Asc.c_oAscLineBeginType.None; - _arrStyles[1].type = Asc.c_oAscLineBeginType.Triangle; - _arrStyles[2].type = Asc.c_oAscLineBeginType.Arrow; - _arrStyles[3].type = Asc.c_oAscLineBeginType.Stealth; - _arrStyles[4].type = Asc.c_oAscLineBeginType.Diamond; - _arrStyles[5].type = Asc.c_oAscLineBeginType.Oval; + for ( var i=0; i<6; i++ ) + _arrStyles[i].value = i; for ( i=0; i<9; i++ ) - _arrSize.push({value: i, offsetx: 80+10, offsety: 20*(i+1)}); + _arrSize.push({value: i, typearrow:''}); _arrSize[0].type = Asc.c_oAscLineBeginSize.small_small; _arrSize[1].type = Asc.c_oAscLineBeginSize.small_mid; @@ -1016,7 +1016,7 @@ define([ 'text!documenteditor/main/app/template/ImageSettingsAdvanced.templat template: _.template([ '' + ].join(''); + + _options.tpl = _.template(this.template)(_options); + + Common.UI.Window.prototype.initialize.call(this, _options); + }, + render: function () { + Common.UI.Window.prototype.render.call(this); + + var me = this; + this.$window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this)); + + this.repeatPwd = new Common.UI.InputField({ + el: this.$window.find('#id-protect-repeat-txt'), + type: 'password', + allowBlank : true, + style : 'width: 100%;', + maxLength: 15, + validateOnBlur: false, + validation : function(value) { + return me.txtIncorrectPwd; + } + }); + + this.inputPwd = new Common.UI.InputFieldBtnPassword({ + el: this.$window.find('#id-protect-password-txt'), + type: 'password', + allowBlank : true, + style : 'width: 100%;', + maxLength: 15, + validateOnBlur: false, + repeatInput: this.repeatPwd, + showPwdOnClick: true + }); + + this.rbView = new Common.UI.RadioBox({ + el: this.$window.find('#id-protect-radio-view'), + labelText: this.textView, + name: 'asc-radio-protect-mode', + value: Asc.c_oAscEDocProtect.ReadOnly, + checked: true + }); + + this.rbForms = new Common.UI.RadioBox({ + el: this.$window.find('#id-protect-radio-forms'), + labelText: this.textForms, + name: 'asc-radio-protect-mode', + value: Asc.c_oAscEDocProtect.Forms + }); + + this.rbReview = new Common.UI.RadioBox({ + el: this.$window.find('#id-protect-radio-review'), + labelText: this.textReview, + name: 'asc-radio-protect-mode', + value: Asc.c_oAscEDocProtect.TrackedChanges + }); + + this.rbComments = new Common.UI.RadioBox({ + el: this.$window.find('#id-protect-radio-comment'), + labelText: this.textComments, + name: 'asc-radio-protect-mode', + value: Asc.c_oAscEDocProtect.Comments + }); + + this.btnOk = new Common.UI.Button({ + el: this.$window.find('.primary') + }); + + this.afterRender(); + }, + + getFocusedComponents: function() { + return [this.inputPwd, this.repeatPwd, this.rbView, this.rbForms, this.rbReview, this.rbComments]; + }, + + getDefaultFocusableComponent: function () { + return this.inputPwd; + }, + + afterRender: function() { + this._setDefaults(this.props); + }, + + onPrimary: function(event) { + this._handleInput('ok'); + return false; + }, + + onBtnClick: function(event) { + this._handleInput(event.currentTarget.attributes['result'].value); + }, + + _handleInput: function(state) { + if (state === 'ok' && this.btnOk.isDisabled()) + return; + + if (this.handler) { + if (state === 'ok') { + if (this.inputPwd.checkValidate() !== true) { + this.inputPwd.focus(); + return; + } + if (this.inputPwd.getValue() !== this.repeatPwd.getValue()) { + this.repeatPwd.checkValidate(); + this.repeatPwd.focus(); + return; + } + } + this.handler.call(this, state, this.inputPwd.getValue(), (state == 'ok') ? this.getSettings() : undefined); + } + + this.close(); + }, + + _setDefaults: function (props) { + if (props) { + this.rbReview.setDisabled(!props.canReview); + this.rbForms.setDisabled(!props.canFillForms); + this.rbComments.setDisabled(!props.canComments); + } + }, + + getSettings: function() { + if (this.rbView.getValue()) + return Asc.c_oAscEDocProtect.ReadOnly; + if (this.rbForms.getValue()) + return Asc.c_oAscEDocProtect.Forms; + if (this.rbReview.getValue()) + return Asc.c_oAscEDocProtect.TrackedChanges; + if (this.rbComments.getValue()) + return Asc.c_oAscEDocProtect.Comments; + }, + + SetDisabled: function(disabled) { + this.btnOk.setDisabled(disabled); + }, + + txtPassword : "Password", + txtRepeat: 'Repeat password', + txtOptional: 'optional', + txtIncorrectPwd: 'Confirmation password is not identical', + txtWarning: 'Warning: If you lose or forget the password, it cannot be recovered. Please keep it in a safe place.', + txtProtect: 'Protect', + txtTitle: 'Protect', + txtAllow: 'Allow only this type of editing in the document', + textView: 'No changes (Read only)', + textForms: 'Filling forms', + textReview: 'Tracked changes', + textComments: 'Comments' + + }, DE.Views.ProtectDialog || {})); +}); diff --git a/apps/documenteditor/main/app/view/ShapeSettings.js b/apps/documenteditor/main/app/view/ShapeSettings.js index a58e4cf4f..85af8379f 100644 --- a/apps/documenteditor/main/app/view/ShapeSettings.js +++ b/apps/documenteditor/main/app/view/ShapeSettings.js @@ -810,7 +810,7 @@ define([ var spectype = control_props.get_SpecificType(); control_props = (spectype==Asc.c_oAscContentControlSpecificType.CheckBox || spectype==Asc.c_oAscContentControlSpecificType.ComboBox || spectype==Asc.c_oAscContentControlSpecificType.DropDownList || spectype==Asc.c_oAscContentControlSpecificType.None || - spectype==Asc.c_oAscContentControlSpecificType.Picture) && + spectype==Asc.c_oAscContentControlSpecificType.Picture || spectype==Asc.c_oAscContentControlSpecificType.Complex) && control_props.get_FormPr() && control_props.get_FormPr().get_Fixed(); } else control_props = false; diff --git a/apps/documenteditor/main/app/view/Statusbar.js b/apps/documenteditor/main/app/view/Statusbar.js index 95b0d8d17..072bc49c4 100644 --- a/apps/documenteditor/main/app/view/Statusbar.js +++ b/apps/documenteditor/main/app/view/Statusbar.js @@ -160,6 +160,8 @@ define([ me.zoomMenu.on('item:click', function(menu, item) { me.fireEvent('zoom:value', [item.value]); }); + + me.onChangeProtectDocument(); } DE.Views.Statusbar = Backbone.View.extend(_.extend({ @@ -176,7 +178,15 @@ define([ _.extend(this, options); this.pages = new DE.Models.Pages({current:1, count:1}); this.pages.on('change', _.bind(_updatePagesCaption,this)); - this.state = {}; + this._state = { + docProtection: { + isReadOnly: false, + isReviewOnly: false, + isFormsOnly: false, + isCommentsOnly: false + } + }; + this._isDisabled = false; var me = this; this.$layout = $(this.template({ @@ -333,6 +343,7 @@ define([ this.api.asc_registerCallback('asc_onCurrentPage', _.bind(_onCurrentPage, this)); this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onApiCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onApiCoAuthoringDisconnect, this)); + Common.NotificationCenter.on('protect:doclock', _.bind(this.onChangeProtectDocument, this)); } return this; @@ -367,7 +378,8 @@ define([ }); this.langMenu.resetItems(arr); if (this.langMenu.items.length>0) { - this.btnLanguage.setDisabled(!!this.mode.isDisconnected); + var isProtected = this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly || this._state.docProtection.isCommentsOnly; + this.btnLanguage.setDisabled(this._isDisabled || !!this.mode.isDisconnected || isProtected); } }, @@ -399,8 +411,21 @@ define([ }, SetDisabled: function(disable) { - this.btnLanguage.setDisabled(disable || this.langMenu.items.length<1); - this.btnTurnReview && this.btnTurnReview.setDisabled(disable); + this._isDisabled = disable; + var isProtected = this._state.docProtection.isReadOnly || this._state.docProtection.isFormsOnly || this._state.docProtection.isCommentsOnly; + this.btnLanguage.setDisabled(disable || this.langMenu.items.length<1 || isProtected); + this.btnTurnReview && this.btnTurnReview.setDisabled(disable || isProtected); + }, + + onChangeProtectDocument: function(props) { + if (!props) { + var docprotect = DE.getController('DocProtection'); + props = docprotect ? docprotect.getDocProps() : null; + } + if (props) { + this._state.docProtection = props; + this.SetDisabled(this._isDisabled); + } }, onApiCoAuthoringDisconnect: function() { diff --git a/apps/documenteditor/main/app/view/TableOfContentsSettings.js b/apps/documenteditor/main/app/view/TableOfContentsSettings.js index a417d0e7c..498e43ac2 100644 --- a/apps/documenteditor/main/app/view/TableOfContentsSettings.js +++ b/apps/documenteditor/main/app/view/TableOfContentsSettings.js @@ -368,7 +368,7 @@ define([ template: _.template(['
    '].join('')), itemTemplate: _.template([ '
    ', - '
    <%= displayValue %>
    ', + '
    <%= Common.Utils.String.htmlEncode(displayValue) %>
    ', '
    ', '
    ', '
    ', diff --git a/apps/documenteditor/main/app/view/TableSettingsAdvanced.js b/apps/documenteditor/main/app/view/TableSettingsAdvanced.js index 87ce9d700..7f07822cd 100644 --- a/apps/documenteditor/main/app/view/TableSettingsAdvanced.js +++ b/apps/documenteditor/main/app/view/TableSettingsAdvanced.js @@ -1069,10 +1069,21 @@ define([ 'text!documenteditor/main/app/template/TableSettingsAdvanced.templat }, afterRender: function() { - this.updateMetricUnit(); - this.updateThemeColors(); this._setDefaults(this._originalProps); + var cellcolorstr = (typeof(this.CellColor.Color) == 'object') ? this.CellColor.Color.color : this.CellColor.Color, + tablecolorstr = (typeof(this.TableColor.Color) == 'object') ? this.TableColor.Color.color : this.TableColor.Color; + this.tableBordersImageSpacing.setTableColor(tablecolorstr); + this.tableBordersImage.setTableColor(tablecolorstr); + this.tableBordersImageSpacing.setCellsColor(cellcolorstr); + this.tableBordersImage.setCellsColor((this._allTable) ? tablecolorstr : cellcolorstr); + if(colorstr!='transparent') { + this.tableBordersImage.redrawTable(); + this.tableBordersImageSpacing.redrawTable(); + } + + this.updateMetricUnit(); + this.updateThemeColors(); if (this.borderProps !== undefined) { this.btnBorderColor.setColor(this.borderProps.borderColor); @@ -1091,39 +1102,20 @@ define([ 'text!documenteditor/main/app/template/TableSettingsAdvanced.templat this.onBorderSizeSelect(this.cmbBorderSize, rec); } - for (var i=0; i -1)); this._UpdateBorderStyle(updateBorders.get_InsideH(), (cellborder.indexOf('m') > -1)); } + this.tableBordersImageSpacing.redrawTable(); + this.tableBordersImage.redrawTable(); return; } @@ -2000,42 +1999,37 @@ define([ 'text!documenteditor/main/app/template/TableSettingsAdvanced.templat _UpdateCellBordersStyle: function(ct, border, size, color, destination, changed_destination) { var updateBorders = destination; - if ( ct.col==0 && border.indexOf('l') > -1 ) { + if(border.col == 0 && border.numInCell == 0){ this._UpdateBorderStyle(updateBorders.get_Left(), (size>0)); if (changed_destination) { changed_destination.put_Left(new Asc.asc_CTextBorder(updateBorders.get_Left())); } } - - if ( ct.col== this.tableStylerColumns-1 && border.indexOf('r') > -1 ) { + else if(border.col == border.columns-1 && border.numInCell == 1){ this._UpdateBorderStyle(updateBorders.get_Right(), (size>0)); if (changed_destination) { changed_destination.put_Right(new Asc.asc_CTextBorder(updateBorders.get_Right())); } } - - if ( ct.row==0 && border.indexOf('t') > -1 ) { + else if(border.row == 0 && border.numInCell == 0){ this._UpdateBorderStyle(updateBorders.get_Top(), (size>0)); if (changed_destination) { changed_destination.put_Top(new Asc.asc_CTextBorder(updateBorders.get_Top())); } } - - if ( ct.row== this.tableStylerRows-1 && border.indexOf('b') > -1 ) { + else if(border.row == border.rows-1 && border.numInCell == 1){ this._UpdateBorderStyle(updateBorders.get_Bottom(), (size>0)); - if (changed_destination) { + if (changed_destination) { changed_destination.put_Bottom(new Asc.asc_CTextBorder(updateBorders.get_Bottom())); } } - - if ( ct.col==0 && border.indexOf('r') > -1 || ct.col== this.tableStylerColumns-1 && border.indexOf('l') > -1) { + else if ( border.col > -1 ) { this._UpdateBorderStyle(updateBorders.get_InsideV(), (size>0)); if (changed_destination) { changed_destination.put_InsideV(new Asc.asc_CTextBorder(updateBorders.get_InsideV())); } } - - if ( ct.row==0 && border.indexOf('b') > -1 || ct.row== this.tableStylerRows-1 && border.indexOf('t') > -1) { + else if ( border.row > -1 ) { this._UpdateBorderStyle(updateBorders.get_InsideH(), (size>0)); if (changed_destination) { changed_destination.put_InsideH(new Asc.asc_CTextBorder(updateBorders.get_InsideH())); @@ -2051,20 +2045,17 @@ define([ 'text!documenteditor/main/app/template/TableSettingsAdvanced.templat if (changed_destination) { changed_destination.put_Left(new Asc.asc_CTextBorder(updateBorders.get_Left())); } - } - if (border.indexOf('t') > -1) { + }else if (border.indexOf('t') > -1) { this._UpdateBorderStyle(updateBorders.get_Top(), (size>0)); if (changed_destination) { changed_destination.put_Top(new Asc.asc_CTextBorder(updateBorders.get_Top())); } - } - if (border.indexOf('r') > -1) { + }else if (border.indexOf('r') > -1) { this._UpdateBorderStyle(updateBorders.get_Right(), (size>0)); if (changed_destination) { changed_destination.put_Right(new Asc.asc_CTextBorder(updateBorders.get_Right())); } - } - if (border.indexOf('b') > -1) { + }else if (border.indexOf('b') > -1) { this._UpdateBorderStyle(updateBorders.get_Bottom(), (size>0)); if (changed_destination) { changed_destination.put_Bottom(new Asc.asc_CTextBorder(updateBorders.get_Bottom())); diff --git a/apps/documenteditor/main/app/view/Toolbar.js b/apps/documenteditor/main/app/view/Toolbar.js index 576cde780..6a1efa4f3 100644 --- a/apps/documenteditor/main/app/view/Toolbar.js +++ b/apps/documenteditor/main/app/view/Toolbar.js @@ -214,7 +214,7 @@ define([ id: 'id-toolbar-btn-undo', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-undo', - lock: [_set.undoLock, _set.previewReviewMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.undoLock, _set.previewReviewMode, _set.lostConnect, _set.disableOnStart, _set.docLockView], signals: ['disabled'], dataHint: '1', dataHintDirection: 'bottom', @@ -226,7 +226,7 @@ define([ id: 'id-toolbar-btn-redo', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-redo', - lock: [_set.redoLock, _set.previewReviewMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.redoLock, _set.previewReviewMode, _set.lostConnect, _set.disableOnStart, _set.docLockView], signals: ['disabled'], dataHint: '1', dataHintDirection: 'bottom', @@ -249,7 +249,7 @@ define([ id: 'id-toolbar-btn-paste', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-paste', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockComments], dataHint: '1', dataHintDirection: 'top', dataHintTitle: 'V' @@ -260,7 +260,7 @@ define([ id: 'id-toolbar-btn-cut', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-cut', - lock: [_set.copyLock, _set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.imageLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.copyLock, _set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.imageLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockComments], dataHint: '1', dataHintDirection: 'top', dataHintTitle: 'X' @@ -281,7 +281,7 @@ define([ id: 'id-toolbar-btn-incfont', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-incfont', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'top' }); @@ -291,7 +291,7 @@ define([ id: 'id-toolbar-btn-decfont', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-decfont', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'top' }); @@ -301,7 +301,7 @@ define([ id: 'id-toolbar-btn-bold', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-bold', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, dataHint: '1', dataHintDirection: 'bottom' @@ -312,7 +312,7 @@ define([ id: 'id-toolbar-btn-italic', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-italic', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, dataHint: '1', dataHintDirection: 'bottom' @@ -323,7 +323,7 @@ define([ id: 'id-toolbar-btn-underline', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-underline', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, dataHint: '1', dataHintDirection: 'bottom' @@ -334,7 +334,7 @@ define([ id: 'id-toolbar-btn-strikeout', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-strikeout', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, dataHint: '1', dataHintDirection: 'bottom' @@ -345,7 +345,7 @@ define([ id: 'id-toolbar-btn-superscript', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-superscript', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'superscriptGroup', dataHint: '1', @@ -357,7 +357,7 @@ define([ id: 'id-toolbar-btn-subscript', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-subscript', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'superscriptGroup', dataHint: '1', @@ -370,7 +370,7 @@ define([ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-highlight', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, allowDepress: true, split: true, @@ -395,7 +395,7 @@ define([ id: 'id-toolbar-btn-fontcolor', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-fontcolor', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], split: true, menu: true, auto: true, @@ -410,7 +410,7 @@ define([ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-paracolor', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], split: true, transparent: true, menu: true, @@ -425,7 +425,7 @@ define([ id: 'id-toolbar-btn-case', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-change-case', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], menu: new Common.UI.Menu({ items: [ {caption: this.mniSentenceCase, value: Asc.c_oAscChangeTextCaseType.SentenceCase}, @@ -444,7 +444,7 @@ define([ id: 'id-toolbar-btn-align-left', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-align-left', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'alignGroup', dataHint: '1', @@ -456,7 +456,7 @@ define([ id: 'id-toolbar-btn-align-center', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-align-center', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'alignGroup', dataHint: '1', @@ -468,7 +468,7 @@ define([ id: 'id-toolbar-btn-align-right', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-align-right', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'alignGroup', dataHint: '1', @@ -480,7 +480,7 @@ define([ id: 'id-toolbar-btn-align-just', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-align-just', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'alignGroup', dataHint: '1', @@ -492,7 +492,7 @@ define([ id: 'id-toolbar-btn-decoffset', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-decoffset', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'top' }); @@ -502,7 +502,7 @@ define([ id: 'id-toolbar-btn-incoffset', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-incoffset', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'top' }); @@ -512,7 +512,7 @@ define([ id: 'id-toolbar-btn-linespace', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-linespace', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], menu: new Common.UI.Menu({ style: 'min-width: 60px;', items: [ @@ -534,7 +534,7 @@ define([ id: 'id-toolbar-btn-hidenchars', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-paragraph', - lock: [ _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, split: true, menu: new Common.UI.Menu({ @@ -555,7 +555,7 @@ define([ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-setmarkers', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'markersGroup', split: true, @@ -572,7 +572,7 @@ define([ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-numbering', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, toggleGroup: 'markersGroup', split: true, @@ -589,7 +589,7 @@ define([ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-multilevels', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], menu: true, dataHint: '1', dataHintDirection: 'top', @@ -622,7 +622,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-inserttable', lock: [_set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.controlPlain, _set.richDelLock, _set.plainDelLock, _set.cantAddTable, _set.previewReviewMode, - _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsTable, menu: new Common.UI.Menu({ items: [ @@ -645,7 +645,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-insertimage', lock: [_set.paragraphLock, _set.headerLock, _set.inEquation, _set.controlPlain, _set.richDelLock, _set.plainDelLock, _set.contentLock, _set.cantAddImagePara, - _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsImage, menu: new Common.UI.Menu({ items: [ @@ -666,7 +666,7 @@ define([ caption: me.capBtnInsChart, iconCls: 'toolbar__icon btn-insertchart', lock: [ _set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.controlPlain, _set.richDelLock, _set.plainDelLock, _set.contentLock, - _set.chartLock, _set.cantAddChart, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.chartLock, _set.cantAddChart, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], menu: true, dataHint: '1', dataHintDirection: 'bottom', @@ -679,7 +679,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-text', lock: [_set.paragraphLock, _set.headerLock, _set.inEquation, _set.controlPlain, _set.contentLock, _set.inFootnote, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsTextbox, enableToggle: true, split: true, @@ -695,7 +695,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-textart', lock: [_set.paragraphLock, _set.headerLock, _set.inEquation, _set.controlPlain, _set.richDelLock, _set.plainDelLock, _set.contentLock, _set.inFootnote, _set.cantAddImagePara, - _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsTextart, menu: new Common.UI.Menu({ cls: 'menu-shapes', @@ -713,7 +713,7 @@ define([ id: 'id-toolbar-btn-editheader', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-editheader', - lock: [ _set.previewReviewMode, _set.viewFormMode, _set.inEquation, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.viewFormMode, _set.inEquation, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsHeader, menu: true, dataHint: '1', @@ -747,7 +747,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-datetime', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.richDelLock, _set.plainDelLock, _set.noParagraphSelected, _set.previewReviewMode, - _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnDateTime, dataHint: '1', dataHintDirection: 'bottom', @@ -760,7 +760,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-blankpage', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.richDelLock, _set.plainDelLock, _set.inHeader, _set.inFootnote, _set.inControl, - _set.cantPageBreak, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.cantPageBreak, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnBlankPage, dataHint: '1', dataHintDirection: 'bottom', @@ -773,7 +773,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-insertshape', lock: [_set.paragraphLock, _set.headerLock, _set.inEquation, _set.controlPlain, _set.contentLock, _set.inFootnote, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsShape, enableToggle: true, menu: new Common.UI.Menu({cls: 'menu-shapes menu-insert-shape'}), @@ -783,12 +783,26 @@ define([ }); this.paragraphControls.push(this.btnInsertShape); + this.btnInsertSmartArt = new Common.UI.Button({ + id: 'tlbtn-insertsmartart', + cls: 'btn-toolbar x-huge icon-top', + iconCls: 'toolbar__icon smart-art', + lock: [_set.paragraphLock, _set.headerLock, _set.inEquation, _set.controlPlain, _set.contentLock, _set.inFootnote, _set.previewReviewMode, _set.viewFormMode, + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], + caption: me.capBtnInsSmartArt, + menu: true, + dataHint: '1', + dataHintDirection: 'bottom', + dataHintOffset: 'small' + }); + this.paragraphControls.push(this.btnInsertSmartArt); + this.btnInsertEquation = new Common.UI.Button({ id: 'tlbtn-insertequation', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-insertequation', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.controlPlain, _set.richDelLock, _set.plainDelLock, _set.cantAddEquation, - _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsEquation, split: true, menu: new Common.UI.Menu({cls: 'menu-shapes'}), @@ -803,7 +817,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-symbol', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.richDelLock, _set.plainDelLock, _set.noParagraphSelected, _set.previewReviewMode, - _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsSymbol, dataHint: '1', dataHintDirection: 'bottom', @@ -816,7 +830,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-dropcap', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inEquation, _set.controlPlain, _set.dropcapLock, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsDropcap, menu: new Common.UI.Menu({ cls: 'ppm-toolbar shifted-right', @@ -860,7 +874,7 @@ define([ id: 'tlbtn-controls', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-controls', - lock: [_set.paragraphLock, _set.headerLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnInsControls, menu: new Common.UI.Menu({ cls: 'ppm-toolbar shifted-right', @@ -946,7 +960,7 @@ define([ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-columns', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.controlPlain, _set.inImage, _set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnColumns, menu: new Common.UI.Menu({ cls: 'ppm-toolbar shifted-right', @@ -1005,7 +1019,7 @@ define([ id: 'tlbtn-pageorient', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-pageorient', - lock: [_set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnPageOrient, menu: new Common.UI.Menu({ cls: 'ppm-toolbar', @@ -1047,7 +1061,7 @@ define([ id: 'tlbtn-pagemargins', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-pagemargins', - lock: [_set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnMargins, menu: new Common.UI.Menu({ items: [ @@ -1110,7 +1124,7 @@ define([ id: 'tlbtn-pagesize', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-pagesize', - lock: [_set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.docPropsLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnPageSize, menu: new Common.UI.Menu({ restoreHeight: true, @@ -1234,7 +1248,7 @@ define([ id: 'tlbtn-line-numbers', cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-line-numbering', - lock: [_set.docPropsLock, _set.inImagePara, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.docPropsLock, _set.inImagePara, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnLineNumbers, menu: new Common.UI.Menu({ cls: 'ppm-toolbar', @@ -1287,7 +1301,7 @@ define([ cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-clearstyle', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, - _set.lostConnect, _set.disableOnStart], + _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'top' }); @@ -1297,7 +1311,7 @@ define([ id: 'id-toolbar-btn-copystyle', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-copystyle', - lock: [ _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [ _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], enableToggle: true, dataHint: '1', dataHintDirection: 'bottom' @@ -1308,7 +1322,7 @@ define([ id: 'id-toolbar-btn-colorschemas', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-colorschemas', - lock: [_set.docSchemaLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.docSchemaLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], menu: new Common.UI.Menu({ cls: 'shifted-left', items: [], @@ -1324,7 +1338,7 @@ define([ id: 'id-toolbar-btn-mailrecepients', cls: 'btn-toolbar', iconCls: 'toolbar__icon btn-mailmerge', - lock: [_set.mmergeLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.mmergeLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], dataHint: '1', dataHintDirection: 'bottom', menu: new Common.UI.Menu({ @@ -1340,7 +1354,7 @@ define([ me.btnImgAlign = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-img-align', - lock: [_set.imageLock, _set.contentLock, _set.inImageInline, _set.noObjectSelected, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.imageLock, _set.contentLock, _set.inImageInline, _set.noObjectSelected, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capImgAlign, menu: true, dataHint: '1', @@ -1351,7 +1365,7 @@ define([ me.btnImgGroup = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-img-group', - lock: [_set.imageLock, _set.contentLock, _set.inImageInline, _set.noObjectSelected, _set.cantGroup, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.imageLock, _set.contentLock, _set.inImageInline, _set.noObjectSelected, _set.cantGroup, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capImgGroup, menu: true, dataHint: '1', @@ -1361,7 +1375,7 @@ define([ me.btnImgForward = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-img-frwd', - lock: [_set.cantArrange, _set.lostConnect, _set.contentLock, _set.noObjectSelected, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.disableOnStart], + lock: [_set.cantArrange, _set.lostConnect, _set.contentLock, _set.noObjectSelected, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capImgForward, split: true, menu: true, @@ -1372,7 +1386,7 @@ define([ me.btnImgBackward = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-img-bkwd', - lock: [_set.cantArrange, _set.lostConnect, _set.contentLock, _set.noObjectSelected, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.disableOnStart], + lock: [_set.cantArrange, _set.lostConnect, _set.contentLock, _set.noObjectSelected, _set.inSmartartInternal, _set.previewReviewMode, _set.viewFormMode, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capImgBackward, split: true, menu: true, @@ -1383,7 +1397,7 @@ define([ me.btnImgWrapping = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-img-wrap', - lock: [_set.cantWrap, _set.imageLock, _set.contentLock, _set.noObjectSelected, _set.lostConnect, _set.previewReviewMode, _set.viewFormMode, _set.disableOnStart], + lock: [_set.cantWrap, _set.imageLock, _set.contentLock, _set.noObjectSelected, _set.lostConnect, _set.previewReviewMode, _set.viewFormMode, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capImgWrapping, menu: true, dataHint: '1', @@ -1394,7 +1408,7 @@ define([ me.btnWatermark = new Common.UI.Button({ cls: 'btn-toolbar x-huge icon-top', iconCls: 'toolbar__icon btn-watermark', - lock: [_set.headerLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.headerLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], caption: me.capBtnWatermark, menu: new Common.UI.Menu({ cls: 'ppm-toolbar', @@ -1433,7 +1447,7 @@ define([ this.cmbFontSize = new Common.UI.ComboBox({ cls: 'input-group-nr', menuStyle: 'min-width: 55px;', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], hint: this.tipFontSize, data: [ {value: 8, displayValue: "8"}, @@ -1463,7 +1477,7 @@ define([ cls: 'input-group-nr', menuCls: 'scrollable-menu', menuStyle: 'min-width: 325px;', - lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], hint: this.tipFontName, store: new Common.Collections.Fonts(), dataHint: '1', @@ -1482,7 +1496,7 @@ define([ this.listStyles = new Common.UI.ComboDataView({ cls: 'combo-styles', lock: [_set.paragraphLock, _set.headerLock, _set.richEditLock, _set.plainEditLock, _set.inChart, _set.inSmartart, _set.inSmartartInternal, _set.previewReviewMode, - _set.viewFormMode, _set.lostConnect, _set.disableOnStart], + _set.viewFormMode, _set.lostConnect, _set.disableOnStart, _set.docLockView, _set.docLockForms, _set.docLockComments], itemWidth: itemWidth, itemHeight: itemHeight, style: 'min-width:139px;', @@ -1631,17 +1645,8 @@ define([ me.setTab('home'); - var top = Common.localStorage.getItem("de-pgmargins-top"), - left = Common.localStorage.getItem("de-pgmargins-left"), - bottom = Common.localStorage.getItem("de-pgmargins-bottom"), - right = Common.localStorage.getItem("de-pgmargins-right"); - if ( top!==null && left!==null && bottom!==null && right!==null ) { - var mnu = this.btnPageMargins.menu.items[0]; - mnu.options.value = mnu.value = [parseFloat(top), parseFloat(left), parseFloat(bottom), parseFloat(right)]; - mnu.setVisible(true); - $(mnu.el).html(mnu.template({id: Common.UI.getId(), caption : mnu.caption, options : mnu.options})); - } else - this.btnPageMargins.menu.items[0].setVisible(false); + me.onUpdateLastCustomMargins(); + Common.NotificationCenter.on('margins:update', _.bind(me.onUpdateLastCustomMargins, me)); } if ( me.isCompactView ) @@ -1720,6 +1725,7 @@ define([ _injectComponent('#slot-btn-datetime', this.btnInsDateTime); _injectComponent('#slot-btn-blankpage', this.btnBlankPage); _injectComponent('#slot-btn-insshape', this.btnInsertShape); + _injectComponent('#slot-btn-inssmartart', this.btnInsertSmartArt); _injectComponent('#slot-btn-insequation', this.btnInsertEquation); _injectComponent('#slot-btn-inssymbol', this.btnInsertSymbol); _injectComponent('#slot-btn-pageorient', this.btnPageOrient); @@ -1741,7 +1747,7 @@ define([ this.btnsPageBreak = Common.Utils.injectButtons($host.find('.btn-slot.btn-pagebreak'), '', 'toolbar__icon btn-pagebreak', this.capBtnInsPagebreak, [Common.enumLock.paragraphLock, Common.enumLock.headerLock, Common.enumLock.richEditLock, Common.enumLock.plainEditLock, Common.enumLock.inEquation, Common.enumLock.richDelLock, Common.enumLock.plainDelLock, Common.enumLock.inHeader, Common.enumLock.inFootnote, Common.enumLock.inControl, Common.enumLock.cantPageBreak, Common.enumLock.previewReviewMode, - Common.enumLock.viewFormMode, Common.enumLock.lostConnect, Common.enumLock.disableOnStart], + Common.enumLock.viewFormMode, Common.enumLock.lostConnect, Common.enumLock.disableOnStart, Common.enumLock.docLockView, Common.enumLock.docLockForms, Common.enumLock.docLockComments], true, true, undefined, '1', 'bottom', 'small'); Array.prototype.push.apply(this.paragraphControls, this.btnsPageBreak); Array.prototype.push.apply(this.lockControls, this.btnsPageBreak); @@ -2019,6 +2025,7 @@ define([ this.btnInsDateTime.updateHint(this.tipDateTime); this.btnBlankPage.updateHint(this.tipBlankPage); this.btnInsertShape.updateHint(this.tipInsertShape); + this.btnInsertSmartArt.updateHint(this.tipInsertSmartArt); this.btnInsertEquation.updateHint(this.tipInsertEquation); this.btnInsertSymbol.updateHint(this.tipInsertSymbol); this.btnDropCap.updateHint(this.tipDropCap); @@ -2203,6 +2210,60 @@ define([ }; this.btnInsertChart.menu.on('show:before', onShowBefore); + this.btnInsertSmartArt.setMenu(new Common.UI.Menu({ + cls: 'shifted-right', + items: [] + })); + + var smartArtData = Common.define.smartArt.getSmartArtData(); + smartArtData.forEach(function (item, index) { + var length = item.items.length, + width = 399; + if (length < 5) { + width = length * (70 + 8) + 9; // 4px margin + 4px margin + } + me.btnInsertSmartArt.menu.addItem({ + caption: item.caption, + value: item.sectionId, + itemId: item.id, + iconCls: item.icon ? 'menu__icon ' + item.icon : undefined, + menu: new Common.UI.Menu({ + items: [ + {template: _.template('')} + ], + menuAlign: 'tl-tr', + })}); + }); + var onShowBeforeSmartArt = function (menu) { // + <% if(typeof imageUrl === "undefined" || imageUrl===null || imageUrl==="") { %> style="visibility: hidden;" <% } %>/>', + me.btnInsertSmartArt.menu.items.forEach(function (item, index) { + item.$el.one('mouseenter', function () { + me.fireEvent('generate:smartart', [item.value]); + item.$el.mouseenter(); + }); + item.menuPicker = new Common.UI.DataView({ + el: $('#' + item.options.itemId), + parentMenu: me.btnInsertSmartArt.menu.items[index].menu, + itemTemplate: _.template([ + '
    ', + '', + '
    ' + ].join('')), + store: new Common.UI.DataViewStore(), + delayRenderTips: true, + scrollAlwaysVisible: true, + showLast: false + }); + item.menuPicker.on('item:click', function(picker, item, record, e) { + if (record) { + me.fireEvent('insert:smartart', [record.get('value')]); + } + Common.NotificationCenter.trigger('edit:complete', me); + }); + }); + menu.off('show:before', onShowBeforeSmartArt); + }; + this.btnInsertSmartArt.menu.on('show:before', onShowBeforeSmartArt); + var onShowBeforeTextArt = function (menu) { var collection = DE.getCollection('Common.Collections.TextArt'); if (collection.length<1) @@ -2672,6 +2733,22 @@ define([ this.api.asc_RemoveAllCustomStyles(); }, + onUpdateLastCustomMargins: function(props) { + if (!this.btnPageMargins) return; + + var top = props ? props.get_TopMargin() : Common.localStorage.getItem("de-pgmargins-top"), + left = props ? props.get_LeftMargin() : Common.localStorage.getItem("de-pgmargins-left"), + bottom = props ? props.get_BottomMargin() : Common.localStorage.getItem("de-pgmargins-bottom"), + right = props ? props.get_RightMargin() : Common.localStorage.getItem("de-pgmargins-right"); + if ( top!==null && left!==null && bottom!==null && right!==null ) { + var mnu = this.btnPageMargins.menu.items[0]; + mnu.options.value = mnu.value = [parseFloat(top), parseFloat(left), parseFloat(bottom), parseFloat(right)]; + mnu.setVisible(true); + $(mnu.el).html(mnu.template({id: Common.UI.getId(), caption : mnu.caption, options : mnu.options})); + } else + this.btnPageMargins.menu.items[0].setVisible(false); + }, + lockToolbar: function (causes, lock, opts) { Common.Utils.lockControls(causes, lock, opts, this.lockControls); }, @@ -2719,6 +2796,7 @@ define([ tipBack: 'Back', tipInsertShape: 'Insert Autoshape', tipInsertEquation: 'Insert Equation', + tipInsertSmartArt: 'Insert SmartArt', mniImageFromFile: 'Image from File', mniImageFromUrl: 'Image from URL', mniCustomTable: 'Insert Custom Table', @@ -2822,6 +2900,7 @@ define([ capBtnPageOrient: 'Orientation', capBtnMargins: 'Margins', capBtnPageSize: 'Size', + capBtnInsSmartArt: 'SmartArt', tipImgAlign: 'Align objects', tipImgGroup: 'Group objects', tipImgWrapping: 'Wrap text', diff --git a/apps/documenteditor/main/app/view/ViewTab.js b/apps/documenteditor/main/app/view/ViewTab.js index fb300ead9..5d0b34685 100644 --- a/apps/documenteditor/main/app/view/ViewTab.js +++ b/apps/documenteditor/main/app/view/ViewTab.js @@ -57,15 +57,15 @@ define([ '' + '
    ' + '
    ' + - '' + + '' + '
    ' + '
    ' + '
    ' + '
    ' + - '' + + '' + '
    ' + '
    ' + - '' + + '' + '
    ' + '
    ' + '
    ' + @@ -82,6 +82,14 @@ define([ '' + '
  • ' + '' + + '
    ' + + '
    ' + + '' + + '
    ' + + '
    ' + + '' + + '
    ' + + '
    ' + '
    ' + '
    ' + '
    ' + @@ -114,6 +122,12 @@ define([ me.chRulers.on('change', _.bind(function (checkbox, state) { me.fireEvent('rulers:change', [me.chRulers, state === 'checked']); }, me)); + me.chLeftMenu.on('change', _.bind(function (checkbox, state) { + me.fireEvent('leftmenu:hide', [me.chLeftMenu, state === 'checked']); + }, me)); + me.chRightMenu.on('change', _.bind(function (checkbox, state) { + me.fireEvent('rightmenu:hide', [me.chRightMenu, state === 'checked']); + }, me)); me.btnDarkDocument.on('click', _.bind(function () { me.fireEvent('darkmode:change'); }, me)); @@ -237,6 +251,24 @@ define([ }); this.lockedControls.push(this.chToolbar); + this.chRightMenu = new Common.UI.CheckBox({ + lock: [_set.lostConnect, _set.disableOnStart], + labelText: this.textRightMenu, + dataHint : '1', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.lockedControls.push(this.chRightMenu); + + this.chLeftMenu = new Common.UI.CheckBox({ + lock: [_set.lostConnect, _set.disableOnStart], + labelText: this.textLeftMenu, + dataHint : '1', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.lockedControls.push(this.chLeftMenu); + this.chRulers = new Common.UI.CheckBox({ lock: [_set.lostConnect, _set.disableOnStart], labelText: this.textRulers, @@ -271,6 +303,8 @@ define([ this.chStatusbar.render($host.find('#slot-chk-statusbar')); this.chToolbar.render($host.find('#slot-chk-toolbar')); this.chRulers.render($host.find('#slot-chk-rulers')); + this.chLeftMenu.render($host.find('#slot-chk-leftmenu')); + this.chRightMenu.render($host.find('#slot-chk-rightmenu')); return this.$el; }, @@ -280,6 +314,14 @@ define([ this.btnFitToWidth.updateHint(this.tipFitToWidth); this.btnInterfaceTheme.updateHint(this.tipInterfaceTheme); this.btnDarkDocument.updateHint(this.tipDarkDocument); + + var value = Common.UI.LayoutManager.getInitValue('leftMenu'); + value = (value!==undefined) ? !value : false; + this.chLeftMenu.setValue(!Common.localStorage.getBool("de-hidden-leftmenu", value)); + + value = Common.UI.LayoutManager.getInitValue('rightMenu'); + value = (value!==undefined) ? !value : false; + this.chRightMenu.setValue(!Common.localStorage.getBool("de-hidden-rightmenu", value)); }, show: function () { @@ -327,7 +369,9 @@ define([ tipFitToPage: 'Fit to page', tipFitToWidth: 'Fit to width', tipInterfaceTheme: 'Interface theme', - tipDarkDocument: 'Dark document' + tipDarkDocument: 'Dark document', + textLeftMenu: 'Left panel', + textRightMenu: 'Right panel' } }()), DE.Views.ViewTab || {})); }); \ No newline at end of file diff --git a/apps/documenteditor/main/app/view/Viewport.js b/apps/documenteditor/main/app/view/Viewport.js index a90ad6f6b..2ee5fcc65 100644 --- a/apps/documenteditor/main/app/view/Viewport.js +++ b/apps/documenteditor/main/app/view/Viewport.js @@ -141,9 +141,18 @@ define([ rightMenuView = DE.getController('RightMenu').getView('RightMenu'); me._rightMenu = rightMenuView.render(this.mode); + var value = Common.UI.LayoutManager.getInitValue('rightMenu'); + value = (value!==undefined) ? !value : false; + Common.localStorage.getBool("de-hidden-rightmenu", value) && me._rightMenu.hide(); + }, + applyCommonMode: function() { if ( Common.localStorage.getBool('de-hidden-status') ) DE.getController('Statusbar').getView('Statusbar').setVisible(false); + + var value = Common.UI.LayoutManager.getInitValue('leftMenu'); + value = (value!==undefined) ? !value : false; + Common.localStorage.getBool("de-hidden-leftmenu", value) && DE.getController('LeftMenu').getView('LeftMenu').hide(); }, setMode: function(mode) { diff --git a/apps/documenteditor/main/app_dev.js b/apps/documenteditor/main/app_dev.js index 242a4d947..122329701 100644 --- a/apps/documenteditor/main/app_dev.js +++ b/apps/documenteditor/main/app_dev.js @@ -53,7 +53,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', api : 'api/documents/api', core : 'common/main/lib/core/application', notification : 'common/main/lib/core/NotificationCenter', @@ -116,11 +116,10 @@ require([ 'backbone', 'bootstrap', 'core', - 'api', 'analytics', 'gateway', 'locale', - 'sockjs', + 'socketio', 'underscore' ], function (Backbone, Bootstrap, Core) { if (Backbone.History && Backbone.History.started) @@ -147,6 +146,8 @@ require([ 'Main', 'ViewTab', 'Search', + 'DocProtection', + 'Print', 'Common.Controllers.Fonts', 'Common.Controllers.History' /** coauthoring begin **/ @@ -181,6 +182,8 @@ require([ 'documenteditor/main/app/controller/Main', 'documenteditor/main/app/controller/ViewTab', 'documenteditor/main/app/controller/Search', + 'documenteditor/main/app/controller/DocProtection', + 'documenteditor/main/app/controller/Print', 'documenteditor/main/app/view/FileMenuPanels', 'documenteditor/main/app/view/ParagraphSettings', 'documenteditor/main/app/view/HeaderFooterSettings', diff --git a/apps/documenteditor/main/index.html b/apps/documenteditor/main/index.html index c5d3b2cc3..fc821f3d1 100644 --- a/apps/documenteditor/main/index.html +++ b/apps/documenteditor/main/index.html @@ -331,6 +331,8 @@ + + diff --git a/apps/documenteditor/main/index_loader.html b/apps/documenteditor/main/index_loader.html index 72095a3aa..1e5070650 100644 --- a/apps/documenteditor/main/index_loader.html +++ b/apps/documenteditor/main/index_loader.html @@ -271,6 +271,8 @@ + + diff --git a/apps/documenteditor/main/locale/az.json b/apps/documenteditor/main/locale/az.json index f71d1a6c8..efff53ac5 100644 --- a/apps/documenteditor/main/locale/az.json +++ b/apps/documenteditor/main/locale/az.json @@ -9,6 +9,7 @@ "Common.Controllers.ExternalMergeEditor.textClose": "Bağla", "Common.Controllers.ExternalMergeEditor.warningText": "Obyekt deaktiv edilib, çünki o, başqa istifadəçi tərəfindən redaktə olunur.", "Common.Controllers.ExternalMergeEditor.warningTitle": "Xəbərdarlıq", + "Common.Controllers.ExternalOleEditor.textAnonymous": "Anonim", "Common.Controllers.History.notcriticalErrorTitle": "Xəbərdarlıq", "Common.Controllers.ReviewChanges.textAcceptBeforeCompare": "Sənədləri müqayisə etmək üçün edilən bütün dəyişikliklər qəbul edilmiş hesab ediləcək. Davam etmək istəyirsiniz?", "Common.Controllers.ReviewChanges.textAtLeast": "ən azı", @@ -242,6 +243,7 @@ "Common.Views.Comments.textAddComment": "Şərh Əlavə Et", "Common.Views.Comments.textAddCommentToDoc": "Sənədə şərh əlavə et", "Common.Views.Comments.textAddReply": "Cavab əlavə edin", + "Common.Views.Comments.textAll": "Bütün", "Common.Views.Comments.textAnonym": "Qonaq", "Common.Views.Comments.textCancel": "Ləğv et", "Common.Views.Comments.textClose": "Bağla", @@ -433,6 +435,7 @@ "Common.Views.ReviewPopover.txtReject": "Rədd edin", "Common.Views.SaveAsDlg.textLoading": "Yüklənir", "Common.Views.SaveAsDlg.textTitle": "Yadda saxlama üçün qovluq", + "Common.Views.SearchPanel.textCaseSensitive": "Böyük-kiçik hərflərə diqqət", "Common.Views.SelectFileDlg.textLoading": "Yüklənir", "Common.Views.SelectFileDlg.textTitle": "Verilənlər Mənbəyini Seçin", "Common.Views.SignDialog.textBold": "Qalın", @@ -1978,6 +1981,7 @@ "DE.Views.LineNumbersDialog.textStartAt": "Başlayın", "DE.Views.LineNumbersDialog.textTitle": "Sətir Nömrələri", "DE.Views.LineNumbersDialog.txtAutoText": "Avto", + "DE.Views.Links.capBtnAddText": "Mətn əlavə edin", "DE.Views.Links.capBtnBookmarks": "Əlfəcin", "DE.Views.Links.capBtnCaption": "Başlıq", "DE.Views.Links.capBtnContentsUpdate": "Təzələyin", @@ -2662,6 +2666,7 @@ "DE.Views.Toolbar.textTabLinks": "İstinadlar", "DE.Views.Toolbar.textTabProtect": "Qoruma", "DE.Views.Toolbar.textTabReview": "Nəzərdən keçir", + "DE.Views.Toolbar.textTabView": "Görünüş", "DE.Views.Toolbar.textTitleError": "Xəta", "DE.Views.Toolbar.textToCurrent": "Cari mövqeyə qədər", "DE.Views.Toolbar.textTop": "Yuxarı:", @@ -2753,6 +2758,8 @@ "DE.Views.Toolbar.txtScheme7": "Bərabərlik", "DE.Views.Toolbar.txtScheme8": "Axın", "DE.Views.Toolbar.txtScheme9": "Emalatxana", + "DE.Views.ViewTab.textInterfaceTheme": "İnterfeys mövzusu", + "DE.Views.ViewTab.tipInterfaceTheme": "İnterfeys mövzusu", "DE.Views.WatermarkSettingsDialog.textAuto": "Avto", "DE.Views.WatermarkSettingsDialog.textBold": "Qalın", "DE.Views.WatermarkSettingsDialog.textColor": "Mətn rəngi", diff --git a/apps/documenteditor/main/locale/be.json b/apps/documenteditor/main/locale/be.json index 9ae9d4239..a1c3e29f5 100644 --- a/apps/documenteditor/main/locale/be.json +++ b/apps/documenteditor/main/locale/be.json @@ -827,6 +827,7 @@ "DE.Controllers.Main.txtSyntaxError": "Сінтаксічная памылка", "DE.Controllers.Main.txtTableInd": "Індэкс табліцы не можа быць нулём", "DE.Controllers.Main.txtTableOfContents": "Змест", + "DE.Controllers.Main.txtTableOfFigures": "Спіс ілюстрацый", "DE.Controllers.Main.txtTooLarge": "Лік занадта вялікі для фарматавання", "DE.Controllers.Main.txtTypeEquation": "Месца для раўнання.", "DE.Controllers.Main.txtUndefBookmark": "Закладка не вызначаная", @@ -1682,6 +1683,7 @@ "DE.Views.FileMenuPanels.Settings.strPasteButton": "Паказваць кнопку параметраў устаўкі падчас устаўкі", "DE.Views.FileMenuPanels.Settings.strShowChanges": "Адлюстроўваць змены падчас сумеснай працы", "DE.Views.FileMenuPanels.Settings.strStrict": "Строгі", + "DE.Views.FileMenuPanels.Settings.strTheme": "Тэма інтэрфейсу", "DE.Views.FileMenuPanels.Settings.strUnit": "Адзінкі вымярэння", "DE.Views.FileMenuPanels.Settings.strZoom": "Прадвызначанае значэнне маштабу", "DE.Views.FileMenuPanels.Settings.text10Minutes": "Кожныя 10 хвілін", @@ -1937,6 +1939,7 @@ "DE.Views.Links.capBtnInsContents": "Змест", "DE.Views.Links.capBtnInsFootnote": "Зноска", "DE.Views.Links.capBtnInsLink": "Гіперспасылка", + "DE.Views.Links.capBtnTOF": "Спіс ілюстрацый", "DE.Views.Links.confirmDeleteFootnotes": "Хочаце выдаліць усе зноскі?", "DE.Views.Links.confirmReplaceTOF": "Хочаце замяніць абраную табліцу фігур?", "DE.Views.Links.mniConvertNote": "Пераўтварыць усе зноскі", @@ -2311,6 +2314,7 @@ "DE.Views.TableOfContentsSettings.textStyles": "Стылі", "DE.Views.TableOfContentsSettings.textTable": "Табліца", "DE.Views.TableOfContentsSettings.textTitle": "Змест", + "DE.Views.TableOfContentsSettings.textTitleTOF": "Спіс ілюстрацый", "DE.Views.TableOfContentsSettings.txtCentered": "Па цэнтры", "DE.Views.TableOfContentsSettings.txtClassic": "Класічны", "DE.Views.TableOfContentsSettings.txtCurrent": "Бягучы", @@ -2705,6 +2709,7 @@ "DE.Views.ViewTab.tipDarkDocument": "Цёмны дакумент", "DE.Views.ViewTab.tipFitToPage": "Па памеры старонкі", "DE.Views.ViewTab.tipFitToWidth": "Па шырыні", + "DE.Views.ViewTab.tipInterfaceTheme": "Тэма інтэрфейсу", "DE.Views.WatermarkSettingsDialog.textAuto": "Аўта", "DE.Views.WatermarkSettingsDialog.textBold": "Тоўсты", "DE.Views.WatermarkSettingsDialog.textColor": "Колер тэксту", diff --git a/apps/documenteditor/main/locale/bg.json b/apps/documenteditor/main/locale/bg.json index 2d9f26f80..d98a282b4 100644 --- a/apps/documenteditor/main/locale/bg.json +++ b/apps/documenteditor/main/locale/bg.json @@ -266,6 +266,8 @@ "Common.Views.ReviewChanges.txtChat": "Чат", "Common.Views.ReviewChanges.txtClose": "Затвори", "Common.Views.ReviewChanges.txtCoAuthMode": "Режим на съвместно редактиране", + "Common.Views.ReviewChanges.txtCommentRemove": "Премахване", + "Common.Views.ReviewChanges.txtCommentResolve": "Решение", "Common.Views.ReviewChanges.txtDocLang": "Език", "Common.Views.ReviewChanges.txtEditing": "редактиране", "Common.Views.ReviewChanges.txtFinal": "Всички промени са приети {0}", @@ -1574,6 +1576,7 @@ "DE.Views.LeftMenu.tipChat": "Чат", "DE.Views.LeftMenu.tipComments": "Коментари", "DE.Views.LeftMenu.tipNavigation": "Навигация", + "DE.Views.LeftMenu.tipOutline": "Заглавия", "DE.Views.LeftMenu.tipPlugins": "Добавки", "DE.Views.LeftMenu.tipSearch": "Търсене", "DE.Views.LeftMenu.tipSupport": "Обратна връзка и поддръжка", @@ -1648,6 +1651,7 @@ "DE.Views.MailMergeSettings.txtPrev": "Към предишния запис", "DE.Views.MailMergeSettings.txtUntitled": "Неозаглавен", "DE.Views.MailMergeSettings.warnProcessMailMerge": "Започването на сливане не бе успешно", + "DE.Views.Navigation.strNavigate": "Заглавия", "DE.Views.Navigation.txtCollapse": "Свиване на всички", "DE.Views.Navigation.txtDemote": "Понижавам", "DE.Views.Navigation.txtEmpty": "Този документ не съдържа заглавия", @@ -2117,6 +2121,7 @@ "DE.Views.Toolbar.textTabLinks": "Препратки", "DE.Views.Toolbar.textTabProtect": "Защита", "DE.Views.Toolbar.textTabReview": "Преглед", + "DE.Views.Toolbar.textTabView": "Изглед", "DE.Views.Toolbar.textTitleError": "Грешка", "DE.Views.Toolbar.textToCurrent": "Към текущата позиция", "DE.Views.Toolbar.textTop": "Връх: ", @@ -2203,6 +2208,9 @@ "DE.Views.Toolbar.txtScheme8": "Поток", "DE.Views.Toolbar.txtScheme9": "Леярна", "DE.Views.ViewTab.textInterfaceTheme": "Тема на интерфейса", + "DE.Views.ViewTab.textOutline": "Заглавия", + "DE.Views.ViewTab.textRulers": "Владетели", + "DE.Views.ViewTab.tipHeadings": "Заглавия", "DE.Views.WatermarkSettingsDialog.textFont": "Шрифт", "DE.Views.WatermarkSettingsDialog.textLanguage": "Език", "DE.Views.WatermarkSettingsDialog.textTitle": "Настройки на воден знак" diff --git a/apps/documenteditor/main/locale/ca.json b/apps/documenteditor/main/locale/ca.json index 3cfe6b61f..5fde1d311 100644 --- a/apps/documenteditor/main/locale/ca.json +++ b/apps/documenteditor/main/locale/ca.json @@ -125,6 +125,67 @@ "Common.define.chartData.textScatterSmoothMarker": "Dispersió amb línies suaus i marcadors", "Common.define.chartData.textStock": "Accions", "Common.define.chartData.textSurface": "Superfície", + "Common.define.smartArt.textAccentedPicture": "Imatge amb èmfasi", + "Common.define.smartArt.textAccentProcess": "Procés d'èmfasi", + "Common.define.smartArt.textAlternatingFlow": "Flux alternatiu", + "Common.define.smartArt.textAlternatingHexagons": "Hexàgons alternants", + "Common.define.smartArt.textAlternatingPictureBlocks": "Blocs d'imatges alternatius", + "Common.define.smartArt.textAlternatingPictureCircles": "Cercles d'imatges alternatius", + "Common.define.smartArt.textArchitectureLayout": "Disposició de l'arquitectura", + "Common.define.smartArt.textArrowRibbon": "Banda amb fletxes", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Procés d'èmfasi d'imatge ascendent", + "Common.define.smartArt.textBalance": "Saldo", + "Common.define.smartArt.textBasicBendingProcess": "Procés corb bàsic", + "Common.define.smartArt.textBasicBlockList": "Llista de blocs bàsica", + "Common.define.smartArt.textBasicChevronProcess": "Procés angular bàsic", + "Common.define.smartArt.textBasicCycle": "Cicle bàsic", + "Common.define.smartArt.textBasicMatrix": "Matriu bàsica", + "Common.define.smartArt.textBasicPie": "Circular bàsic", + "Common.define.smartArt.textBasicProcess": "Procés bàsic", + "Common.define.smartArt.textBasicPyramid": "Piràmide bàsica", + "Common.define.smartArt.textBasicRadial": "Radial bàsic", + "Common.define.smartArt.textBasicTarget": "Destinació bàsica", + "Common.define.smartArt.textBasicTimeline": "Cronologia bàsica", + "Common.define.smartArt.textBasicVenn": "Venn bàsic", + "Common.define.smartArt.textBendingPictureAccentList": "Llista d'èmfasi d'imatges corba", + "Common.define.smartArt.textBendingPictureBlocks": "Blocs d'imatges corbes", + "Common.define.smartArt.textBendingPictureCaption": "Llegenda d'imatge corba", + "Common.define.smartArt.textBendingPictureCaptionList": "Llista de llegendes d'imatges corba", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Text d'imatge semitransparent corb", + "Common.define.smartArt.textBlockCycle": "Cicle de blocs", + "Common.define.smartArt.textBubblePictureList": "Llista d'imatges de bombolla", + "Common.define.smartArt.textCaptionedPictures": "Imatges amb llegenda", + "Common.define.smartArt.textChevronAccentProcess": "Procés d'èmfasi angular", + "Common.define.smartArt.textChevronList": "Llista angular", + "Common.define.smartArt.textCircleAccentTimeline": "Cronologia d'èmfasi de cercle", + "Common.define.smartArt.textCircleArrowProcess": "Procés de fletxa circular", + "Common.define.smartArt.textCirclePictureHierarchy": "Jerarquia d'imatge circular", + "Common.define.smartArt.textCircleProcess": "Procés circular", + "Common.define.smartArt.textCircleRelationship": "Relació circular", + "Common.define.smartArt.textCircularBendingProcess": "Procés corb circular", + "Common.define.smartArt.textCircularPictureCallout": "Crida d'imatge circular", + "Common.define.smartArt.textClosedChevronProcess": "Procés angular tancat", + "Common.define.smartArt.textContinuousArrowProcess": "Procés de fletxes continu", + "Common.define.smartArt.textContinuousBlockProcess": "Procés de blocs continu", + "Common.define.smartArt.textContinuousCycle": "Cicle continu", + "Common.define.smartArt.textContinuousPictureList": "Llista d'imatges contínua", + "Common.define.smartArt.textConvergingArrows": "Fletxes convergents", + "Common.define.smartArt.textConvergingRadial": "Radial convergent", + "Common.define.smartArt.textConvergingText": "Text convergent", + "Common.define.smartArt.textCounterbalanceArrows": "Fletxes de contrapès", + "Common.define.smartArt.textCycle": "Cicle", + "Common.define.smartArt.textCycleMatrix": "Matriu de cicle", + "Common.define.smartArt.textDescendingBlockList": "Llista de blocs descendents", + "Common.define.smartArt.textDescendingProcess": "Procés descendent", + "Common.define.smartArt.textDetailedProcess": "Procés detallat", + "Common.define.smartArt.textDivergingArrows": "Fletxes divergents", + "Common.define.smartArt.textDivergingRadial": "Radial divergent", + "Common.define.smartArt.textEquation": "Equació", + "Common.define.smartArt.textFramedTextPicture": "Imatge de text emmarcat", + "Common.define.smartArt.textFunnel": "Embut", + "Common.define.smartArt.textGear": "Engrenatge", + "Common.define.smartArt.textGridMatrix": "Matriu de quadrícula", + "Common.define.smartArt.textGroupedList": "Llista agrupada", "Common.Translation.textMoreButton": "Més", "Common.Translation.warnFileLocked": "No pots editar aquest fitxer perquè és obert en una altra aplicació.", "Common.Translation.warnFileLockedBtnEdit": "Crea una còpia", @@ -288,6 +349,7 @@ "Common.Views.DocumentAccessDialog.textLoading": "S'està carregant...", "Common.Views.DocumentAccessDialog.textTitle": "Configuració per compartir", "Common.Views.ExternalDiagramEditor.textTitle": "Editor de gràfics", + "Common.Views.ExternalEditor.textClose": "Tanca", "Common.Views.ExternalMergeEditor.textTitle": "Destinataris de la combinació de la correspondència", "Common.Views.ExternalOleEditor.textTitle": "Editor del full de càlcul", "Common.Views.Header.labelCoUsersDescr": "Usuaris que editen el fitxer:", @@ -354,6 +416,7 @@ "Common.Views.Plugins.textStart": "Inici", "Common.Views.Plugins.textStop": "Atura", "Common.Views.Protection.hintAddPwd": "Xifra amb contrasenya", + "Common.Views.Protection.hintDelPwd": "Suprimeix la contrasenya", "Common.Views.Protection.hintPwd": "Canvia o suprimeix la contrasenya", "Common.Views.Protection.hintSignature": "Afegeix una signatura digital o una línia de signatura", "Common.Views.Protection.txtAddPwd": "Afegeix una contrasenya", @@ -499,6 +562,7 @@ "Common.Views.SignDialog.tipFontName": "Nom de la lletra", "Common.Views.SignDialog.tipFontSize": "Mida de la lletra", "Common.Views.SignSettingsDialog.textAllowComment": "Permet al signant afegir comentaris al diàleg de signatura", + "Common.Views.SignSettingsDialog.textDefInstruction": "Abans de signar aquest document, comproveu que el contingut és correcte.", "Common.Views.SignSettingsDialog.textInfoEmail": "Correu electrònic", "Common.Views.SignSettingsDialog.textInfoName": "Nom", "Common.Views.SignSettingsDialog.textInfoTitle": "Títol del signant", @@ -578,6 +642,11 @@ "DE.Controllers.Main.errorFilePassProtect": "El fitxer està protegit amb contrasenya i no es pot obrir.", "DE.Controllers.Main.errorFileSizeExceed": "La mida del fitxer supera el límit establert pel servidor. Contacteu amb l'administrador del servidor de documents per obtenir més informació.", "DE.Controllers.Main.errorForceSave": "S'ha produït un error en desar el fitxer. Utilitzeu l'opció \"Baixa-ho com a\" per desar el fitxer al disc dur de l’ordinador o torneu-ho a provar més endavant.", + "DE.Controllers.Main.errorInconsistentExt": "S'ha produït un error en obrir el fitxer.
    El contingut del fitxer no es correspon amb la seva extensió.", + "DE.Controllers.Main.errorInconsistentExtDocx": "S'ha produït un error en obrir el fitxer.
    El contingut del fitxer correspon a documents de text (per exemple, docx), però el fitxer té l'extensió incoherent: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "S'ha produït un error en obrir el fitxer.
    El contingut del fitxer correspon a un dels formats següents: pdf/djvu/xps/oxps, però el fitxer té l'extensió incoherent: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "S'ha produït un error en obrir el fitxer.
    El contingut del fitxer correspon a presentacions (per exemple, pptx), però el fitxer té l'extensió incongruent: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "S'ha produït un error en obrir el fitxer.
    El contingut del fitxer correspon a full de càlcul (per exemple, xlsx), però el fitxer té l'extensió incoherent: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Descriptor de claus desconegut", "DE.Controllers.Main.errorKeyExpire": "El descriptor de claus ha caducat", "DE.Controllers.Main.errorLoadingFont": "No s'han carregat les lletres tipogràfiques.
    Contacteu amb l'administrador del Servidor de Documents.", @@ -640,6 +709,7 @@ "DE.Controllers.Main.textClose": "Tanca", "DE.Controllers.Main.textCloseTip": "Feu clic per tancar el consell", "DE.Controllers.Main.textContactUs": "Contacta amb vendes", + "DE.Controllers.Main.textContinue": "Continua", "DE.Controllers.Main.textConvertEquation": "Aquesta equació es va crear amb una versió antiga de l'editor d'equacions que ja no és compatible. Per editar-la, converteix l’equació al format d’Office Math ML.
    Vols convertir-ho ara?", "DE.Controllers.Main.textCustomLoader": "Tingueu en compte que, segons els termes de la llicència, no teniu dret a canviar el carregador.
    Contacteu amb el nostre departament de vendes per obtenir un pressupost.", "DE.Controllers.Main.textDisconnect": "S'ha perdut la connexió", @@ -1329,8 +1399,13 @@ "DE.Views.CellsAddDialog.textRow": "Files", "DE.Views.CellsAddDialog.textTitle": "Insereix diversos", "DE.Views.CellsAddDialog.textUp": "Per damunt del cursor", + "DE.Views.ChartSettings.text3dDepth": "Profunditat (% de la base)", + "DE.Views.ChartSettings.text3dRotation": "Rotació 3D", "DE.Views.ChartSettings.textAdvanced": "Mostra la configuració avançada", + "DE.Views.ChartSettings.textAutoscale": "Escala automàtica", "DE.Views.ChartSettings.textChartType": "Canvia el tipus de gràfic", + "DE.Views.ChartSettings.textDefault": "Rotació per defecte", + "DE.Views.ChartSettings.textDown": "Avall", "DE.Views.ChartSettings.textEditData": "Edita les dades", "DE.Views.ChartSettings.textHeight": "Alçada", "DE.Views.ChartSettings.textOriginalSize": "Mida real", @@ -1428,14 +1503,24 @@ "DE.Views.DateTimeDialog.textLang": "Idioma", "DE.Views.DateTimeDialog.textUpdate": "Actualitza automàticament", "DE.Views.DateTimeDialog.txtTitle": "Hora i data", + "DE.Views.DocProtection.hintProtectDoc": "Protegir document", + "DE.Views.DocProtection.txtDocProtectedComment": "El document està protegit.
    Només hi podeu inserir comentaris.", + "DE.Views.DocProtection.txtDocProtectedForms": "El document està protegit.
    Només podeu omplir els formularis que hi ha.", + "DE.Views.DocProtection.txtDocProtectedTrack": "El document està protegit.
    Podeu editar aquest document, però es farà un seguiment de tots els canvis.", + "DE.Views.DocProtection.txtDocProtectedView": "El document està protegit.
    Només el podeu veure.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Introduïu una contrasenya per desbloquejar el document", + "DE.Views.DocProtection.txtProtectDoc": "Protegir document", "DE.Views.DocumentHolder.aboveText": "A dalt", "DE.Views.DocumentHolder.addCommentText": "Afegeix un comentari", "DE.Views.DocumentHolder.advancedDropCapText": "Configuració de la lletra de caixa alta", + "DE.Views.DocumentHolder.advancedEquationText": "Configuració de l'equació", "DE.Views.DocumentHolder.advancedFrameText": "Configuració avançada del marc", "DE.Views.DocumentHolder.advancedParagraphText": "Configuració avançada del paràgraf", "DE.Views.DocumentHolder.advancedTableText": "Configuració avançada de la taula", "DE.Views.DocumentHolder.advancedText": "Configuració avançada", "DE.Views.DocumentHolder.alignmentText": "Alineació", + "DE.Views.DocumentHolder.allLinearText": "Tot lineal", + "DE.Views.DocumentHolder.allProfText": "Tot professional", "DE.Views.DocumentHolder.belowText": "Més avall", "DE.Views.DocumentHolder.breakBeforeText": "Salt de pàgina anterior", "DE.Views.DocumentHolder.bulletsText": "Pics i numeració", @@ -1444,6 +1529,8 @@ "DE.Views.DocumentHolder.centerText": "Centra", "DE.Views.DocumentHolder.chartText": "Configuració avançada del gràfic", "DE.Views.DocumentHolder.columnText": "Columna", + "DE.Views.DocumentHolder.currLinearText": "Lineal - actual", + "DE.Views.DocumentHolder.currProfText": "Professional - actual", "DE.Views.DocumentHolder.deleteColumnText": "Suprimeix la columna", "DE.Views.DocumentHolder.deleteRowText": "Suprimeix la fila", "DE.Views.DocumentHolder.deleteTableText": "Suprimeix la taula", @@ -1456,6 +1543,7 @@ "DE.Views.DocumentHolder.editFooterText": "Edita el peu de pàgina", "DE.Views.DocumentHolder.editHeaderText": "Edita la capçalera", "DE.Views.DocumentHolder.editHyperlinkText": "Edita l'enllaç", + "DE.Views.DocumentHolder.eqToInlineText": "Canvia a Inline", "DE.Views.DocumentHolder.guestText": "Convidat", "DE.Views.DocumentHolder.hyperlinkText": "Enllaç", "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignora-ho tot", @@ -2373,6 +2461,12 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Estableix només la vora superior", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automàtic", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Sense vores", + "DE.Views.ProtectDialog.textComments": "Comentaris", + "DE.Views.ProtectDialog.textForms": "Omplir formularis", + "DE.Views.ProtectDialog.txtAllow": "Només permet aquest tipus d'edició del document", + "DE.Views.ProtectDialog.txtIncorrectPwd": "La contrasenya de confirmació no és idèntica", + "DE.Views.ProtectDialog.txtProtect": "Protegir", + "DE.Views.ProtectDialog.txtTitle": "Protegir", "DE.Views.RightMenu.txtChartSettings": "Configuració del gràfic", "DE.Views.RightMenu.txtFormSettings": "Configuració del formulari\n\t", "DE.Views.RightMenu.txtHeaderFooterSettings": "Configuració de la capçalera i el peu de pàgina", @@ -2563,8 +2657,13 @@ "DE.Views.TableSettings.tipOuter": "Estableix només la vora exterior", "DE.Views.TableSettings.tipRight": "Estableix només la vora exterior dreta", "DE.Views.TableSettings.tipTop": "Estableix només la vora superior externa", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Taules amb vores i línies", + "DE.Views.TableSettings.txtGroupTable_Custom": "personalitzat", + "DE.Views.TableSettings.txtGroupTable_Grid": "Taules amb quadrícula", "DE.Views.TableSettings.txtNoBorders": "Sense vores", "DE.Views.TableSettings.txtTable_Accent": "Accent", + "DE.Views.TableSettings.txtTable_Bordered": "Amb vores", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Amb vores i línies", "DE.Views.TableSettings.txtTable_Colorful": "Multicolor", "DE.Views.TableSettings.txtTable_Dark": "Fosc", "DE.Views.TableSettings.txtTable_GridTable": "Taula amb quadrícula", diff --git a/apps/documenteditor/main/locale/cs.json b/apps/documenteditor/main/locale/cs.json index d86081414..c932f9eb4 100644 --- a/apps/documenteditor/main/locale/cs.json +++ b/apps/documenteditor/main/locale/cs.json @@ -1424,6 +1424,8 @@ "DE.Views.DateTimeDialog.textLang": "Jazyk", "DE.Views.DateTimeDialog.textUpdate": "Aktualizovat automaticky", "DE.Views.DateTimeDialog.txtTitle": "Datum a čas", + "DE.Views.DocProtection.hintProtectDoc": "Zabezpečit dokument", + "DE.Views.DocProtection.txtProtectDoc": "Zabezpečit dokument", "DE.Views.DocumentHolder.aboveText": "Nad", "DE.Views.DocumentHolder.addCommentText": "Přidat komentář", "DE.Views.DocumentHolder.advancedDropCapText": "Nastavení iniciály", diff --git a/apps/documenteditor/main/locale/da.json b/apps/documenteditor/main/locale/da.json index 4c55ebe7a..2b8497a10 100644 --- a/apps/documenteditor/main/locale/da.json +++ b/apps/documenteditor/main/locale/da.json @@ -175,10 +175,11 @@ "Common.UI.InputFieldBtnPassword.textHintHidePwd": "Gem kodeord", "Common.UI.InputFieldBtnPassword.textHintShowPwd": "Vis kodeord", "Common.UI.SearchBar.textFind": "Find", + "Common.UI.SearchBar.tipCloseSearch": "Luk søgning", "Common.UI.SearchBar.tipNextResult": "Næste resultat", "Common.UI.SearchBar.tipOpenAdvancedSettings": "Åben avancerede indstillinger", "Common.UI.SearchDialog.textHighlight": "Fremhæv resultater", - "Common.UI.SearchDialog.textMatchCase": "Afhængigt af store og små bokstaver", + "Common.UI.SearchDialog.textMatchCase": "Afhængigt af store og små bogstaver", "Common.UI.SearchDialog.textReplaceDef": "Skriv din erstatningstekst", "Common.UI.SearchDialog.textSearchStart": "Skriv din tekst her", "Common.UI.SearchDialog.textTitle": "Find og erstat", @@ -192,6 +193,7 @@ "Common.UI.ThemeColorPalette.textStandartColors": "Standard farve", "Common.UI.ThemeColorPalette.textThemeColors": "Tema farver", "Common.UI.Themes.txtThemeClassicLight": "Klassisk lys", + "Common.UI.Themes.txtThemeContrastDark": "Mørk kontrast", "Common.UI.Themes.txtThemeDark": "Mørk", "Common.UI.Themes.txtThemeLight": "Lys", "Common.UI.Themes.txtThemeSystem": "Samme som system", @@ -207,6 +209,7 @@ "Common.UI.Window.yesButtonText": "Ja", "Common.Utils.Metric.txtCm": "cm", "Common.Utils.Metric.txtPt": "pt", + "Common.Utils.String.textAlt": "Alternativ", "Common.Utils.String.textCtrl": "Ctrl", "Common.Views.About.txtAddress": "Adresse:", "Common.Views.About.txtLicensee": "Licenstager", @@ -222,6 +225,8 @@ "Common.Views.AutoCorrectDialog.textBulleted": "Automatiske punktlister", "Common.Views.AutoCorrectDialog.textBy": "Af", "Common.Views.AutoCorrectDialog.textDelete": "Slet", + "Common.Views.AutoCorrectDialog.textDoubleSpaces": "Tilføj punktum med dobbelt mellemrum", + "Common.Views.AutoCorrectDialog.textFLCells": "Gør det første bogstav i tabeller stort", "Common.Views.AutoCorrectDialog.textFLSentence": "Sæt første bogstav i sætninger med stort", "Common.Views.AutoCorrectDialog.textHyperlink": "Internet- og netværksstier med hyperlinks", "Common.Views.AutoCorrectDialog.textHyphens": "Bindestreger (--) med streg (-)", @@ -254,6 +259,7 @@ "Common.Views.Comments.textAddComment": "Tilføj kommentar", "Common.Views.Comments.textAddCommentToDoc": "Tilføj kommentar til dokument", "Common.Views.Comments.textAddReply": "Tilføj svar", + "Common.Views.Comments.textAll": "Alle", "Common.Views.Comments.textAnonym": "Gæst", "Common.Views.Comments.textCancel": "Annuller", "Common.Views.Comments.textClose": "Luk", @@ -340,10 +346,12 @@ "Common.Views.PluginDlg.textLoading": "Indlæser", "Common.Views.Plugins.groupCaption": "Tilføjelsesprogrammer", "Common.Views.Plugins.strPlugins": "Tilføjelsesprogrammer", + "Common.Views.Plugins.textClosePanel": "Luk tilføjelser", "Common.Views.Plugins.textLoading": "Indlæser", "Common.Views.Plugins.textStart": "Start", "Common.Views.Plugins.textStop": "Stop", "Common.Views.Protection.hintAddPwd": "Krypter med adgangskode", + "Common.Views.Protection.hintDelPwd": "Slet kodeord", "Common.Views.Protection.hintPwd": "Ændre eller slet kodeord", "Common.Views.Protection.hintSignature": "Tilføj digital underskrift eller underskiftslinje", "Common.Views.Protection.txtAddPwd": "Tilføj kodeord", @@ -454,6 +462,7 @@ "Common.Views.SaveAsDlg.textLoading": "Indlæser", "Common.Views.SaveAsDlg.textTitle": "Mappe at gemme i", "Common.Views.SearchPanel.textCaseSensitive": "Afhængigt af store og små bogstaver", + "Common.Views.SearchPanel.textCloseSearch": "Luk søgning", "Common.Views.SearchPanel.textFind": "Find", "Common.Views.SearchPanel.textFindAndReplace": "Find og erstat", "Common.Views.SearchPanel.textNoMatches": "Ingen resultater", @@ -485,6 +494,7 @@ "Common.Views.SignDialog.tipFontName": "Skrifttypenavn", "Common.Views.SignDialog.tipFontSize": "Skriftstørrelse", "Common.Views.SignSettingsDialog.textAllowComment": "Tillad underskrier at tilføje en kommentar i underskrift dialogen", + "Common.Views.SignSettingsDialog.textDefInstruction": "Før der skrives under, bør du verificere, at materialet du skriver under, er korrekt. ", "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", "Common.Views.SignSettingsDialog.textInfoName": "Navn", "Common.Views.SignSettingsDialog.textInfoTitle": "Underskrivers titel", @@ -636,9 +646,11 @@ "DE.Controllers.Main.textLongName": "Indtast tekst mindre end 128 bogstaver.", "DE.Controllers.Main.textNoLicenseTitle": "Licensbegrænsning nået", "DE.Controllers.Main.textPaidFeature": "Betalt funktion", + "DE.Controllers.Main.textReconnect": "Forbindelsen er genoprettet", "DE.Controllers.Main.textRemember": "Husk mit valg til alle filer", "DE.Controllers.Main.textRenameError": "Brugernavn må ikke være tomt.", "DE.Controllers.Main.textRenameLabel": "Indtast et navn til brug ved samarbejde", + "DE.Controllers.Main.textRequestMacros": "En makro foretager en anmodning til URL. Vil du tillade anmodningen til %1?", "DE.Controllers.Main.textShape": "Form", "DE.Controllers.Main.textStrict": "Striks tilstand", "DE.Controllers.Main.textTryUndoRedo": "Fortryd funktionen er blevet slået fra i den hurtige co-redigerngstilstand.Tryk på 'Striks tilstand' knappen for at skifte til den strikse co-redigeringstilstand for at redigere filen uden at andre brugere kan foretage ændringer før efter du har gemt dem. Du kan skifte i mellem co-redigeringstilstanden ved at bruge de avancerede indstillinger. ", @@ -917,6 +929,7 @@ "DE.Controllers.Search.textNoTextFound": "Informationen du søger efter kan ikke findes. Juster venligst søgeindstillingerne.", "DE.Controllers.Search.textReplaceSuccess": "Søgning er afsluttet. {0} forekomster er blevet erstattet", "DE.Controllers.Search.warnReplaceString": "{0} er ikke et gyldigt specialtegn i feltet \"Erstat med\".", + "DE.Controllers.Statusbar.textDisconnect": "Forbindelsen er tabt
    Forsøger at genoprette forbindelse. Tjek venligst forbindelsesindstillingerne.", "DE.Controllers.Statusbar.textHasChanges": "Nye ændringer er blevet sporet", "DE.Controllers.Statusbar.textSetTrackChanges": "Du bruger Spor Ændringer-tilstand", "DE.Controllers.Statusbar.textTrackChanges": "Dokumentet er åbnet med ændringssporingstilstand slået til ", @@ -982,7 +995,7 @@ "DE.Controllers.Toolbar.txtBracket_Curve_NoneOpen": "Enkelt klamme", "DE.Controllers.Toolbar.txtBracket_Curve_OpenNone": "Enkelt klamme", "DE.Controllers.Toolbar.txtBracket_Custom_1": "Tilfælde (To betingelser)", - "DE.Controllers.Toolbar.txtBracket_Custom_2": "Sager (Tre betingelser)", + "DE.Controllers.Toolbar.txtBracket_Custom_2": "Sager (tre betingelser)", "DE.Controllers.Toolbar.txtBracket_Custom_3": "Stak objekt", "DE.Controllers.Toolbar.txtBracket_Custom_4": "Stak objekt", "DE.Controllers.Toolbar.txtBracket_Custom_5": "Eksempel", @@ -1313,6 +1326,7 @@ "DE.Views.ChartSettings.text3dHeight": "Højde (% af udgangspunkt)", "DE.Views.ChartSettings.text3dRotation": "3D-rotation", "DE.Views.ChartSettings.textAdvanced": "Vis avancerede indstillinger", + "DE.Views.ChartSettings.textAutoscale": "Autoskalering", "DE.Views.ChartSettings.textChartType": "Skift diagramtype", "DE.Views.ChartSettings.textDown": "Ned", "DE.Views.ChartSettings.textEditData": "Rediger data", @@ -1419,6 +1433,8 @@ "DE.Views.DateTimeDialog.textLang": "Sprog", "DE.Views.DateTimeDialog.textUpdate": "Opdater automatisk", "DE.Views.DateTimeDialog.txtTitle": "Dato og tid", + "DE.Views.DocProtection.hintProtectDoc": "Beskyt dokument", + "DE.Views.DocProtection.txtProtectDoc": "Beskyt dokument", "DE.Views.DocumentHolder.aboveText": "Over", "DE.Views.DocumentHolder.addCommentText": "Tilføj kommentar", "DE.Views.DocumentHolder.advancedDropCapText": "Indstillinger for unical", @@ -1427,6 +1443,8 @@ "DE.Views.DocumentHolder.advancedTableText": "Tabel avancerede indstillinger", "DE.Views.DocumentHolder.advancedText": "Avancerede indstillinger", "DE.Views.DocumentHolder.alignmentText": "Tilpasning", + "DE.Views.DocumentHolder.allLinearText": "Alle - Lineært", + "DE.Views.DocumentHolder.allProfText": "Alle - Professionelt", "DE.Views.DocumentHolder.belowText": "Under", "DE.Views.DocumentHolder.breakBeforeText": "Sideskift før", "DE.Views.DocumentHolder.bulletsText": "Prikekr og nummering", @@ -1447,6 +1465,7 @@ "DE.Views.DocumentHolder.editFooterText": "Rediger sidefod", "DE.Views.DocumentHolder.editHeaderText": "Rediger overskrift", "DE.Views.DocumentHolder.editHyperlinkText": "Rediger hyperlink", + "DE.Views.DocumentHolder.eqToInlineText": "Skift til inline", "DE.Views.DocumentHolder.guestText": "Gæst", "DE.Views.DocumentHolder.hyperlinkText": "Hyperlink", "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignorer alt", @@ -1734,6 +1753,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtPages": "Sider", "DE.Views.FileMenuPanels.DocumentInfo.txtPageSize": "Sideindstillinger", "DE.Views.FileMenuPanels.DocumentInfo.txtParagraphs": "Afsnit", + "DE.Views.FileMenuPanels.DocumentInfo.txtPdfVer": "PDF-verison", "DE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Lokation", "DE.Views.FileMenuPanels.DocumentInfo.txtRights": "Personer der har rettigheder", "DE.Views.FileMenuPanels.DocumentInfo.txtSpaces": "Symboler med mellemrum", @@ -1815,6 +1835,8 @@ "DE.Views.FileMenuPanels.Settings.txtWorkspace": "Arbejdsområde", "DE.Views.FormSettings.textAlways": "Altid", "DE.Views.FormSettings.textAspect": "Lås billedformat", + "DE.Views.FormSettings.textAtLeast": "Mindst", + "DE.Views.FormSettings.textAuto": "Automatisk", "DE.Views.FormSettings.textAutofit": "AutoTilpas", "DE.Views.FormSettings.textBackgroundColor": "Baggrundsfarve", "DE.Views.FormSettings.textCheckbox": "Afkrydsningsfelt", @@ -1828,6 +1850,7 @@ "DE.Views.FormSettings.textField": "Tekstfelt", "DE.Views.FormSettings.textFixed": "Felt med fast størrelse", "DE.Views.FormSettings.textFormat": "Formatér", + "DE.Views.FormSettings.textFormatSymbols": "Tilladte symboler", "DE.Views.FormSettings.textFromFile": "Fra fil", "DE.Views.FormSettings.textFromStorage": "Fra lager", "DE.Views.FormSettings.textFromUrl": "Fra URL", @@ -1836,6 +1859,7 @@ "DE.Views.FormSettings.textKey": "Nøgle", "DE.Views.FormSettings.textLetters": "Breve", "DE.Views.FormSettings.textLock": "Lås", + "DE.Views.FormSettings.textMask": "Vilkårlig maske", "DE.Views.FormSettings.textMaxChars": "Tegnbegrænsning", "DE.Views.FormSettings.textMulti": "Flerlinjefelt", "DE.Views.FormSettings.textNever": "Aldrig", @@ -2054,7 +2078,7 @@ "DE.Views.LineNumbersDialog.textSection": "Nuværende sektion", "DE.Views.LineNumbersDialog.textStartAt": "Start ved", "DE.Views.LineNumbersDialog.textTitle": "Linjenumre", - "DE.Views.LineNumbersDialog.txtAutoText": "Auto", + "DE.Views.LineNumbersDialog.txtAutoText": "Automatisk", "DE.Views.Links.capBtnAddText": "Tilføj tekst", "DE.Views.Links.capBtnBookmarks": "Bogmærke", "DE.Views.Links.capBtnCaption": "Overskrift", @@ -2157,6 +2181,7 @@ "DE.Views.MailMergeSettings.txtUntitled": "Unavngivet", "DE.Views.MailMergeSettings.warnProcessMailMerge": "Begyndelsesfletning fejlet", "DE.Views.Navigation.strNavigate": "Overskrifter", + "DE.Views.Navigation.txtClosePanel": "Sluk overskrifter", "DE.Views.Navigation.txtCollapse": "Sammenklap alt", "DE.Views.Navigation.txtDemote": "Degrader", "DE.Views.Navigation.txtEmpty": "Der er ingen overskrifter i dokumentet.
    Anvend en overskriftstypografi på teksten, så den vises i indholdsfortegnelsen.", @@ -2221,6 +2246,7 @@ "DE.Views.PageSizeDialog.textTitle": "Side størrelse", "DE.Views.PageSizeDialog.textWidth": "Bredde", "DE.Views.PageSizeDialog.txtCustom": "Brugerdefineret", + "DE.Views.PageThumbnails.textClosePanel": "Luk sideminiaturebilleder", "DE.Views.PageThumbnails.textPageThumbnails": "Sideminiaturebilleder", "DE.Views.ParagraphSettings.strIndent": "Indryk", "DE.Views.ParagraphSettings.strIndentsLeftText": "Venstre", @@ -2271,6 +2297,7 @@ "DE.Views.ParagraphSettingsAdvanced.strSuppressLineNumbers": "Udelad linjenumre", "DE.Views.ParagraphSettingsAdvanced.strTabs": "Faner", "DE.Views.ParagraphSettingsAdvanced.textAlign": "Tilpasning", + "DE.Views.ParagraphSettingsAdvanced.textAll": "Alle", "DE.Views.ParagraphSettingsAdvanced.textAtLeast": "Mindst", "DE.Views.ParagraphSettingsAdvanced.textAuto": "Flere", "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Baggrundsfarve", @@ -2312,8 +2339,10 @@ "DE.Views.ParagraphSettingsAdvanced.tipOuter": "Vælg kun ydre rammer", "DE.Views.ParagraphSettingsAdvanced.tipRight": "Vælg kun højre ramme", "DE.Views.ParagraphSettingsAdvanced.tipTop": "Vælg kun øverste ramme", - "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "automatisk", + "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automatisk", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Ingen rammer", + "DE.Views.ProtectDialog.txtProtect": "Beskyt", + "DE.Views.ProtectDialog.txtTitle": "Beskyt", "DE.Views.RightMenu.txtChartSettings": "Diagram indstillinger", "DE.Views.RightMenu.txtFormSettings": "Formularindstillinger", "DE.Views.RightMenu.txtHeaderFooterSettings": "Sidehoved- og sidefodsinstillinger", @@ -2503,8 +2532,11 @@ "DE.Views.TableSettings.tipOuter": "Vælg kun ydre rammer", "DE.Views.TableSettings.tipRight": "Vælg kun højre ramme", "DE.Views.TableSettings.tipTop": "Vælg kun ydre øverste ramme", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Indrammede og farvede tabeller", "DE.Views.TableSettings.txtNoBorders": "Ingen rammer", "DE.Views.TableSettings.txtTable_Accent": "Accent", + "DE.Views.TableSettings.txtTable_Bordered": "Indrammet", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Indrammet og farvet", "DE.Views.TableSettings.txtTable_Colorful": "Farverig", "DE.Views.TableSettings.txtTable_Dark": "Mørk", "DE.Views.TableSettings.txtTable_GridTable": "Gitter tabel", @@ -2629,7 +2661,7 @@ "DE.Views.TextToTableDialog.textTableSize": "Tabel størrelse", "DE.Views.TextToTableDialog.textTitle": "Konverter tekst til tabel", "DE.Views.TextToTableDialog.textWindow": "Autotilpas til vindue", - "DE.Views.TextToTableDialog.txtAutoText": "automatisk", + "DE.Views.TextToTableDialog.txtAutoText": "Automatisk", "DE.Views.Toolbar.capBtnAddComment": "Tilføj kommentar", "DE.Views.Toolbar.capBtnBlankPage": "Blank side", "DE.Views.Toolbar.capBtnColumns": "Kolonner", @@ -2799,6 +2831,8 @@ "DE.Views.Toolbar.tipLineSpace": "Afsnit linie afstand", "DE.Views.Toolbar.tipMailRecepients": "Mailfletning", "DE.Views.Toolbar.tipMarkers": "Punkter", + "DE.Views.Toolbar.tipMarkersArrow": "Pilepunkter", + "DE.Views.Toolbar.tipMarkersCheckmark": "Fluebenspunkter", "DE.Views.Toolbar.tipMultilevels": "Liste med flere niveauer", "DE.Views.Toolbar.tipNumbers": "Nummerering", "DE.Views.Toolbar.tipPageBreak": "Indsæt side eller sektion", @@ -2847,15 +2881,19 @@ "DE.Views.Toolbar.txtScheme8": "Flow", "DE.Views.Toolbar.txtScheme9": "Støberi", "DE.Views.ViewTab.textAlwaysShowToolbar": "Vis altid værktøjslinje", + "DE.Views.ViewTab.textDarkDocument": "Mørk dokument", "DE.Views.ViewTab.textFitToPage": "Tilpas til side", "DE.Views.ViewTab.textFitToWidth": "Tilpas til bredde", + "DE.Views.ViewTab.textInterfaceTheme": "Interface tema", "DE.Views.ViewTab.textOutline": "Overskrifter", "DE.Views.ViewTab.textRulers": "Linealer", "DE.Views.ViewTab.textZoom": "Zoom", + "DE.Views.ViewTab.tipDarkDocument": "Mørk dokument", "DE.Views.ViewTab.tipFitToPage": "Tilpas til side", "DE.Views.ViewTab.tipFitToWidth": "Tilpas til bredde", "DE.Views.ViewTab.tipHeadings": "Overskrifter", - "DE.Views.WatermarkSettingsDialog.textAuto": "automatisk", + "DE.Views.ViewTab.tipInterfaceTheme": "Interface tema", + "DE.Views.WatermarkSettingsDialog.textAuto": "Automatisk", "DE.Views.WatermarkSettingsDialog.textBold": "Fed", "DE.Views.WatermarkSettingsDialog.textColor": "Tekstfarve", "DE.Views.WatermarkSettingsDialog.textDiagonal": "Diagonal", diff --git a/apps/documenteditor/main/locale/de.json b/apps/documenteditor/main/locale/de.json index 186e912f6..62b78faba 100644 --- a/apps/documenteditor/main/locale/de.json +++ b/apps/documenteditor/main/locale/de.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "Punkte mit interpolierten Linien und Datenpunkten", "Common.define.chartData.textStock": "Kurs", "Common.define.chartData.textSurface": "Oberfläche", + "Common.define.smartArt.textAccentedPicture": "Bild mit Akzenten", + "Common.define.smartArt.textAccentProcess": "Akzentprozess", + "Common.define.smartArt.textAlternatingFlow": "Alternierender Fluss", + "Common.define.smartArt.textAlternatingHexagons": "Alternierende Sechsecke", + "Common.define.smartArt.textAlternatingPictureBlocks": "Alternierende Bildblöcke", + "Common.define.smartArt.textAlternatingPictureCircles": "Alternierende Bildblöcke", + "Common.define.smartArt.textArchitectureLayout": "Architekturlayout", + "Common.define.smartArt.textArrowRibbon": "Pfeilband", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Aufsteigender Prozess mit Bildakzenten", + "Common.define.smartArt.textBalance": "Kontostand", + "Common.define.smartArt.textBasicBendingProcess": "Einfacher umgebrochener Prozess", + "Common.define.smartArt.textBasicBlockList": "Einfache Blockliste", + "Common.define.smartArt.textBasicChevronProcess": "Einfacher Chevronprozess", + "Common.define.smartArt.textBasicCycle": "Einfacher Kreis", + "Common.define.smartArt.textBasicMatrix": "Einfache Matrix", + "Common.define.smartArt.textBasicPie": "Einfaches Kreisdiagramm", + "Common.define.smartArt.textBasicProcess": "Einfacher Prozess", + "Common.define.smartArt.textBasicPyramid": "Einfache Pyramide", + "Common.define.smartArt.textBasicRadial": "Einfaches Radial", + "Common.define.smartArt.textBasicTarget": "Einfaches Ziel", + "Common.define.smartArt.textBasicTimeline": "Einfache Zeitachse", + "Common.define.smartArt.textBasicVenn": "Einfaches Venn", + "Common.define.smartArt.textBendingPictureAccentList": "Umgebrochene Bildakzentliste", + "Common.define.smartArt.textBendingPictureBlocks": "Umgebrochene Bildblöcke", + "Common.define.smartArt.textBendingPictureCaption": "Umgebrochene Bildbeschriftung", + "Common.define.smartArt.textBendingPictureCaptionList": "Umgebrochene Bildbeschriftungsliste", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Umgebrochener halbtransparenter Bildtext", + "Common.define.smartArt.textBlockCycle": "Blockkreis", + "Common.define.smartArt.textBubblePictureList": "Blasenbildliste", + "Common.define.smartArt.textCaptionedPictures": "Bilder mit Beschriftungen", + "Common.define.smartArt.textChevronAccentProcess": "Chevronakzentprozess", + "Common.define.smartArt.textChevronList": "Chevronliste", + "Common.define.smartArt.textCircleAccentTimeline": "Zeitachse mit Kreisakzent", + "Common.define.smartArt.textCircleArrowProcess": "Kreisförmiger Pfeilprozess", + "Common.define.smartArt.textCirclePictureHierarchy": "Bilderhierarchie mit Kreisakzent", + "Common.define.smartArt.textCircleProcess": "Kreisprozess", + "Common.define.smartArt.textCircleRelationship": "Kreisbeziehung", + "Common.define.smartArt.textCircularBendingProcess": "Kreisförmiger umgebrochener Prozess", + "Common.define.smartArt.textCircularPictureCallout": "Bildlegende mit Kreisakzent", + "Common.define.smartArt.textClosedChevronProcess": "Geschlossener Chevronprozess", + "Common.define.smartArt.textContinuousArrowProcess": "Fortlaufender Pfeilprozess", + "Common.define.smartArt.textContinuousBlockProcess": "Fortlaufender Blockprozess", + "Common.define.smartArt.textContinuousCycle": "Fortlaufender Kreis", + "Common.define.smartArt.textContinuousPictureList": "Fortlaufende Bildliste", + "Common.define.smartArt.textConvergingArrows": "Zusammenlaufende Pfeile", + "Common.define.smartArt.textConvergingRadial": "Zusammenlaufendes Radial", + "Common.define.smartArt.textConvergingText": "Zusammenlaufender Text", + "Common.define.smartArt.textCounterbalanceArrows": "Gegengewichtspfeile", + "Common.define.smartArt.textCycle": "Zyklus", + "Common.define.smartArt.textCycleMatrix": "Kreismatrix", + "Common.define.smartArt.textDescendingBlockList": "Absteigende Blockliste", + "Common.define.smartArt.textDescendingProcess": "Absteigender Prozess", + "Common.define.smartArt.textDetailedProcess": "Detaillierter Prozess", + "Common.define.smartArt.textDivergingArrows": "Auseinanderlaufende Pfeile", + "Common.define.smartArt.textDivergingRadial": "Auseinanderlaufendes Radial", + "Common.define.smartArt.textEquation": "Gleichung", + "Common.define.smartArt.textFramedTextPicture": "Umrahmte Textgrafik", + "Common.define.smartArt.textFunnel": "Trichter", + "Common.define.smartArt.textGear": "Zahnrad", + "Common.define.smartArt.textGridMatrix": "Rastermatrix", + "Common.define.smartArt.textGroupedList": "Gruppierte Liste", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Halbkreisorganigramm", + "Common.define.smartArt.textHexagonCluster": "Sechseck-Cluster", + "Common.define.smartArt.textHexagonRadial": "Sechseck Radial", + "Common.define.smartArt.textHierarchy": "Hierarchie", + "Common.define.smartArt.textHierarchyList": "Hierarchieliste", + "Common.define.smartArt.textHorizontalBulletList": "Horizontale Aufzählungsliste", + "Common.define.smartArt.textHorizontalHierarchy": "Horizontale Hierarchie", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Horizontal beschriftete Hierarchie", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Horizontale Hierarchie mit mehreren Ebenen", + "Common.define.smartArt.textHorizontalOrganizationChart": "Horizontales Organigramm", + "Common.define.smartArt.textHorizontalPictureList": "Horizontale Bildliste", + "Common.define.smartArt.textIncreasingArrowProcess": "Wachsender Pfeil-Prozess", + "Common.define.smartArt.textIncreasingCircleProcess": "Wachsender Kreis-Prozess", + "Common.define.smartArt.textInterconnectedBlockProcess": "Vernetzter Blockprozess", + "Common.define.smartArt.textInterconnectedRings": "Verbundene Ringe", + "Common.define.smartArt.textInvertedPyramid": "Umgekehrte Pyramide", + "Common.define.smartArt.textLabeledHierarchy": "Beschriftete Hierarchie", + "Common.define.smartArt.textLinearVenn": "Lineares Venn", + "Common.define.smartArt.textLinedList": "Liste mit Linien", + "Common.define.smartArt.textList": "Liste", + "Common.define.smartArt.textMatrix": "Matrix", + "Common.define.smartArt.textMultidirectionalCycle": "Kreis mit mehreren Richtungen", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Organigramm mit Name und Titel", + "Common.define.smartArt.textNestedTarget": "Geschachteltes Ziel", + "Common.define.smartArt.textNondirectionalCycle": "Richtungsloser Kreis", + "Common.define.smartArt.textOpposingArrows": "Entgegengesetzte Pfeile", + "Common.define.smartArt.textOpposingIdeas": "Konträre Ansichten", + "Common.define.smartArt.textOrganizationChart": "Organigramm", + "Common.define.smartArt.textOther": "Sonstiges", + "Common.define.smartArt.textPhasedProcess": "Phasenprozess", + "Common.define.smartArt.textPicture": "Bild", + "Common.define.smartArt.textPictureAccentBlocks": "Bildakzentblöcke", + "Common.define.smartArt.textPictureAccentList": "Bildakzentliste", + "Common.define.smartArt.textPictureAccentProcess": "Bildakzentprozess", + "Common.define.smartArt.textPictureCaptionList": "Bildbeschriftungsliste", + "Common.define.smartArt.textPictureFrame": "Bildrahmen", + "Common.define.smartArt.textPictureGrid": "Bildraster", + "Common.define.smartArt.textPictureLineup": "Bildanordnung", + "Common.define.smartArt.textPictureOrganizationChart": "Bildorganigramm", + "Common.define.smartArt.textPictureStrips": "Bildstreifen", + "Common.define.smartArt.textPieProcess": "Kreisdiagrammprozess", + "Common.define.smartArt.textPlusAndMinus": "Plus und Minus", + "Common.define.smartArt.textProcess": "Prozess", + "Common.define.smartArt.textProcessArrows": "Prozesspfeile", + "Common.define.smartArt.textProcessList": "Prozessliste", + "Common.define.smartArt.textPyramid": "Pyramide", + "Common.define.smartArt.textPyramidList": "Pyramidenliste", + "Common.define.smartArt.textRadialCluster": "Radialer Cluster", + "Common.define.smartArt.textRadialCycle": "Radialkreis", + "Common.define.smartArt.textRadialList": "Radialliste", + "Common.define.smartArt.textRadialPictureList": "Radiale Bildliste", + "Common.define.smartArt.textRadialVenn": "Radialvenn", + "Common.define.smartArt.textRandomToResultProcess": "Zufallsergebnisprozess", + "Common.define.smartArt.textRelationship": "Beziehung", + "Common.define.smartArt.textRepeatingBendingProcess": "Wiederholter umgebrochener Prozess", + "Common.define.smartArt.textReverseList": "Umgekehrte Liste", + "Common.define.smartArt.textSegmentedCycle": "Segmentierter Kreis", + "Common.define.smartArt.textSegmentedProcess": "Segmentierter Prozess", + "Common.define.smartArt.textSegmentedPyramid": "Segmentierte Pyramide", + "Common.define.smartArt.textSnapshotPictureList": "Momentaufnahme-Bildliste", + "Common.define.smartArt.textSpiralPicture": "Spiralförmige Grafik", + "Common.define.smartArt.textSquareAccentList": "Liste mit quadratischen Akzenten", + "Common.define.smartArt.textStackedList": "Gestapelte Liste", + "Common.define.smartArt.textStackedVenn": "Gestapeltes Venn", + "Common.define.smartArt.textStaggeredProcess": "Gestaffelter Prozess", + "Common.define.smartArt.textStepDownProcess": "Prozess mit absteigenden Schritten", + "Common.define.smartArt.textStepUpProcess": "Prozess mit aufsteigenden Schritten", + "Common.define.smartArt.textSubStepProcess": "Unterschrittprozess", + "Common.define.smartArt.textTabbedArc": "Registerkartenbogen", + "Common.define.smartArt.textTableHierarchy": "Tabellenhierarchie", + "Common.define.smartArt.textTableList": "Tabellenliste", + "Common.define.smartArt.textTabList": "Registerkartenliste", + "Common.define.smartArt.textTargetList": "Zielliste", + "Common.define.smartArt.textTextCycle": "Textkreis", + "Common.define.smartArt.textThemePictureAccent": "Designbildakzent", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Alternierender Designbildakzent", + "Common.define.smartArt.textThemePictureGrid": "Designbildraster", + "Common.define.smartArt.textTitledMatrix": "Betitelte Matrix", + "Common.define.smartArt.textTitledPictureAccentList": "Bildakzentliste mit Titel", + "Common.define.smartArt.textTitledPictureBlocks": "Titelbildblöcke", + "Common.define.smartArt.textTitlePictureLineup": "Titelbildanordnung", + "Common.define.smartArt.textTrapezoidList": "Trapezförmige Liste", + "Common.define.smartArt.textUpwardArrow": "Pfeil nach oben", + "Common.define.smartArt.textVaryingWidthList": "Liste mit variabler Breite", + "Common.define.smartArt.textVerticalAccentList": "Liste mit vertikalen Akzenten", + "Common.define.smartArt.textVerticalArrowList": "Vertical Arrow List", + "Common.define.smartArt.textVerticalBendingProcess": "Vertikaler umgebrochener Prozess", + "Common.define.smartArt.textVerticalBlockList": "Vertikale Blockliste", + "Common.define.smartArt.textVerticalBoxList": "Vertikale Feldliste", + "Common.define.smartArt.textVerticalBracketList": "Liste mit vertikalen Klammerakzenten", + "Common.define.smartArt.textVerticalBulletList": "Vertikale Aufzählung", + "Common.define.smartArt.textVerticalChevronList": "Vertikale Chevronliste", + "Common.define.smartArt.textVerticalCircleList": "Liste mit vertikalen Kreisakzenten", + "Common.define.smartArt.textVerticalCurvedList": "Liste mit vertikalen Kurven", + "Common.define.smartArt.textVerticalEquation": "Vertikale Formel", + "Common.define.smartArt.textVerticalPictureAccentList": "Vertikale Bildakzentliste", + "Common.define.smartArt.textVerticalPictureList": "Vertikale Bildliste", + "Common.define.smartArt.textVerticalProcess": "Vertikaler Prozess", "Common.Translation.textMoreButton": "Mehr", "Common.Translation.warnFileLocked": "Die Datei wird in einer anderen App bearbeitet. Sie können die Bearbeitung fortsetzen und die Kopie dieser Datei speichern.", "Common.Translation.warnFileLockedBtnEdit": "Kopie erstellen", @@ -225,7 +384,7 @@ "Common.Views.AutoCorrectDialog.textAdd": "Hinzufügen", "Common.Views.AutoCorrectDialog.textApplyText": "Bei der Eingabe anwenden", "Common.Views.AutoCorrectDialog.textAutoCorrect": "Autokorrektur für Text", - "Common.Views.AutoCorrectDialog.textAutoFormat": "AutoFormat während der Eingabe", + "Common.Views.AutoCorrectDialog.textAutoFormat": "Automatisches Formatieren während der Eingabe", "Common.Views.AutoCorrectDialog.textBulleted": "Automatische Aufzählungen", "Common.Views.AutoCorrectDialog.textBy": "Nach", "Common.Views.AutoCorrectDialog.textDelete": "Löschen", @@ -288,6 +447,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Ladevorgang...", "Common.Views.DocumentAccessDialog.textTitle": "Freigabeeinstellungen", "Common.Views.ExternalDiagramEditor.textTitle": "Diagramm bearbeiten", + "Common.Views.ExternalEditor.textClose": "Schließen", + "Common.Views.ExternalEditor.textSave": "Speichern und beenden", "Common.Views.ExternalMergeEditor.textTitle": "Seriendruckempfänger", "Common.Views.ExternalOleEditor.textTitle": "Editor der Tabellenkalkulationen", "Common.Views.Header.labelCoUsersDescr": "Das Dokument wird gerade von mehreren Benutzern bearbeitet.", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Starten", "Common.Views.Plugins.textStop": "Beenden", "Common.Views.Protection.hintAddPwd": "Mit Kennwort verschlüsseln", + "Common.Views.Protection.hintDelPwd": "Kennwort löschen", "Common.Views.Protection.hintPwd": "Das Kennwort ändern oder löschen", "Common.Views.Protection.hintSignature": "Digitale Signatur oder Unterschriftenzeile hinzufügen", "Common.Views.Protection.txtAddPwd": "Kennwort hinzufügen", @@ -499,7 +661,8 @@ "Common.Views.SignDialog.tipFontName": "Schriftart", "Common.Views.SignDialog.tipFontSize": "Schriftgrad", "Common.Views.SignSettingsDialog.textAllowComment": "Signaturgeber verfügt über die Möglichkeit, einen Kommentar im Signaturdialog hinzuzufügen", - "Common.Views.SignSettingsDialog.textInfoEmail": "Email Adresse", + "Common.Views.SignSettingsDialog.textDefInstruction": "Überprüfen Sie, ob der signierte Inhalt stimmt, bevor Sie dieses Dokument signieren.", + "Common.Views.SignSettingsDialog.textInfoEmail": "E-Mail des vorgeschlagenen Unterzeichners", "Common.Views.SignSettingsDialog.textInfoName": "Name", "Common.Views.SignSettingsDialog.textInfoTitle": "Titel des Signatureingebers", "Common.Views.SignSettingsDialog.textInstructions": "Anweisungen für Signaturgeber", @@ -524,7 +687,7 @@ "Common.Views.SymbolTableDialog.textRange": "Bereich", "Common.Views.SymbolTableDialog.textRecent": "Kürzlich verwendete Symbole", "Common.Views.SymbolTableDialog.textRegistered": "Registered Trade Mark", - "Common.Views.SymbolTableDialog.textSCQuote": "Einfache schließende Anführung", + "Common.Views.SymbolTableDialog.textSCQuote": "Einfache schließendes Anführungszeichen", "Common.Views.SymbolTableDialog.textSection": "Paragraphenzeichen", "Common.Views.SymbolTableDialog.textShortcut": "Tastenkombination", "Common.Views.SymbolTableDialog.textSHyphen": "Weicher Bindestrich", @@ -532,7 +695,7 @@ "Common.Views.SymbolTableDialog.textSpecial": "Sonderzeichen", "Common.Views.SymbolTableDialog.textSymbols": "Symbole", "Common.Views.SymbolTableDialog.textTitle": "Symbol", - "Common.Views.SymbolTableDialog.textTradeMark": "Registered Trade Mark", + "Common.Views.SymbolTableDialog.textTradeMark": "Markenzeichen-Symbol", "Common.Views.UserNameDialog.textDontShow": "Nicht mehr anzeigen", "Common.Views.UserNameDialog.textLabel": "Bezeichnung:", "Common.Views.UserNameDialog.textLabelError": "Bezeichnung darf nicht leer sein.", @@ -552,6 +715,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} darf nicht als Sonderzeichen in das Feld \"Ersetzen durch\" eingegeben werden.", "DE.Controllers.Main.applyChangesTextText": "Die Änderungen werden geladen...", "DE.Controllers.Main.applyChangesTitleText": "Laden von Änderungen", + "DE.Controllers.Main.confirmMaxChangesSize": "Die Anzahl der Aktionen überschreitet die für Ihren Server festgelegte Grenze.
    Drücken Sie \"Rückgängig\", um Ihre letzte Aktion abzubrechen, oder drücken Sie \"Weiter\", um die Aktion lokal fortzusetzen (Sie müssen die Datei herunterladen oder ihren Inhalt kopieren, um sicherzustellen, dass nichts verloren geht).", "DE.Controllers.Main.convertationTimeoutText": "Zeitüberschreitung bei der Konvertierung.", "DE.Controllers.Main.criticalErrorExtText": "Klicken Sie auf \"OK\", um in die Dokumentenliste zu gelangen.", "DE.Controllers.Main.criticalErrorTitle": "Fehler", @@ -578,12 +742,18 @@ "DE.Controllers.Main.errorFilePassProtect": "Das Dokument ist kennwortgeschützt und kann nicht geöffnet werden.", "DE.Controllers.Main.errorFileSizeExceed": "Die Dateigröße überschreitet die für Ihren Server festgelegte Einschränkung.
    Weitere Informationen können Sie von Ihrem Document Server-Administrator erhalten.", "DE.Controllers.Main.errorForceSave": "Beim Speichern der Datei ist ein Fehler aufgetreten. Verwenden Sie die Option \"Herunterladen als\", um die Datei auf Ihrer Computerfestplatte zu speichern oder versuchen Sie es später erneut.", + "DE.Controllers.Main.errorInconsistentExt": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
    Der Inhalt der Datei stimmt nicht mit der Dateierweiterung überein.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
    Der Inhalt der Datei entspricht Textdokumenten (z.B. docx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
    Der Inhalt der Datei entspricht einem der folgenden Formate: pdf/djvu/xps/oxps, aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
    Der Inhalt der Datei entspricht Präsentationen (z.B. pptx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
    Der Inhalt der Datei entspricht Tabellenkalkulationen (z.B. xlsx), aber die Datei hat die inkonsistente Erweiterung: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Unbekannter Schlüsseldeskriptor", "DE.Controllers.Main.errorKeyExpire": "Der Schlüsseldeskriptor ist abgelaufen", "DE.Controllers.Main.errorLoadingFont": "Schriftarten nicht hochgeladen.
    Bitte wenden Sie sich an Administratoren von Ihrem Document Server.", "DE.Controllers.Main.errorMailMergeLoadFile": "Fehler beim Laden des Dokuments. Bitte wählen Sie eine andere Datei.", "DE.Controllers.Main.errorMailMergeSaveFile": "Merge ist fehlgeschlagen.", "DE.Controllers.Main.errorNoTOC": "Es gibt kein Inhaltsverzeichnis. Sie können es auf der Registerkarte \"Verweise\" einfügen.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "Das eingegebene Kennwort ist ungültig.
    Stellen Sie sicher, dass die FESTSTELLTASTE nicht aktiviert ist und dass Sie die korrekte Groß-/Kleinschreibung verwenden.", "DE.Controllers.Main.errorProcessSaveResult": "Speichern ist fehlgeschlagen.", "DE.Controllers.Main.errorServerVersion": "Editor-Version wurde aktualisiert. Die Seite wird neu geladen, um die Änderungen zu übernehmen.", "DE.Controllers.Main.errorSessionAbsolute": "Die Bearbeitungssitzung des Dokumentes ist abgelaufen. Laden Sie die Seite neu.", @@ -640,6 +810,7 @@ "DE.Controllers.Main.textClose": "Schließen", "DE.Controllers.Main.textCloseTip": "Klicken Sie, um den Tipp zu schließen", "DE.Controllers.Main.textContactUs": "Verkaufsteam kontaktieren", + "DE.Controllers.Main.textContinue": "Fortsetzen", "DE.Controllers.Main.textConvertEquation": "Diese Gleichung wurde in einer alten Version des Gleichungseditors erstellt, die nicht mehr unterstützt wird. Um die Gleichung zu bearbeiten, konvertieren Sie diese ins Format Office Math ML.
    Jetzt konvertieren?", "DE.Controllers.Main.textCustomLoader": "Bitte beachten Sie, dass Sie gemäß den Lizenzbedingungen nicht berechtigt sind, den Loader zu wechseln.
    Wenden Sie sich an unseren Vertrieb, um ein Angebot zu erhalten.", "DE.Controllers.Main.textDisconnect": "Verbindung wurde unterbrochen", @@ -660,6 +831,7 @@ "DE.Controllers.Main.textStrict": "Formaler Modus", "DE.Controllers.Main.textTryUndoRedo": "Undo/Redo Optionen sind für den halbformalen Zusammenbearbeitungsmodus deaktiviert.
    Klicken Sie auf den Button \"Formaler Modus\", um den formalen Zusammenbearbeitungsmodus zu aktivieren, um die Datei, ohne Störungen anderer Benutzer zu bearbeiten und die Änderungen erst nachdem Sie sie gespeichert haben, zu senden. Sie können zwischen den Zusammenbearbeitungsmodi mit der Hilfe der erweiterten Einstellungen von Editor umschalten.", "DE.Controllers.Main.textTryUndoRedoWarn": "Die Optionen Rückgängig/Wiederholen sind für den halbformalen Zusammenbearbeitungsmodus deaktiviert.", + "DE.Controllers.Main.textUndo": "Rückgängig", "DE.Controllers.Main.titleLicenseExp": "Lizenz ist abgelaufen", "DE.Controllers.Main.titleServerVersion": "Editor wurde aktualisiert", "DE.Controllers.Main.titleUpdateVersion": "Version wurde geändert", @@ -1204,7 +1376,7 @@ "DE.Controllers.Toolbar.txtSymbol_ast": "Stern-Operator", "DE.Controllers.Toolbar.txtSymbol_beta": "Beta", "DE.Controllers.Toolbar.txtSymbol_beth": "Bet", - "DE.Controllers.Toolbar.txtSymbol_bullet": "Aufzählungzeichensoperator", + "DE.Controllers.Toolbar.txtSymbol_bullet": "Stichpunktoperator", "DE.Controllers.Toolbar.txtSymbol_cap": "Schnittmenge", "DE.Controllers.Toolbar.txtSymbol_cbrt": "Kubikwurzel", "DE.Controllers.Toolbar.txtSymbol_cdots": "Horizontale Ellipse (Mittellinie)", @@ -1329,16 +1501,31 @@ "DE.Views.CellsAddDialog.textRow": "Zeilen", "DE.Views.CellsAddDialog.textTitle": "Einfügen: mehrere", "DE.Views.CellsAddDialog.textUp": "Über dem Cursor", + "DE.Views.ChartSettings.text3dDepth": "Tiefe (% der Basis)", + "DE.Views.ChartSettings.text3dHeight": "Höhe (% der Basis)", + "DE.Views.ChartSettings.text3dRotation": "3D-Drehung", "DE.Views.ChartSettings.textAdvanced": "Erweiterte Einstellungen anzeigen", + "DE.Views.ChartSettings.textAutoscale": "Autoskalierung", "DE.Views.ChartSettings.textChartType": "Diagrammtyp ändern", + "DE.Views.ChartSettings.textDefault": "Standardmäßige Drehung", + "DE.Views.ChartSettings.textDown": "Unten", "DE.Views.ChartSettings.textEditData": "Daten ändern", "DE.Views.ChartSettings.textHeight": "Höhe", + "DE.Views.ChartSettings.textLeft": "Links", + "DE.Views.ChartSettings.textNarrow": "Blickfeld verengen", "DE.Views.ChartSettings.textOriginalSize": "Tatsächliche Größe", + "DE.Views.ChartSettings.textPerspective": "Perspektive", + "DE.Views.ChartSettings.textRight": "Rechts", + "DE.Views.ChartSettings.textRightAngle": "Rechtwinklige Achsen", "DE.Views.ChartSettings.textSize": "Größe", "DE.Views.ChartSettings.textStyle": "Stil", "DE.Views.ChartSettings.textUndock": "Seitenbereich abdocken", + "DE.Views.ChartSettings.textUp": "Aufwärts", + "DE.Views.ChartSettings.textWiden": "Blickfeld verbreitern", "DE.Views.ChartSettings.textWidth": "Breite", "DE.Views.ChartSettings.textWrap": "Textumbruch", + "DE.Views.ChartSettings.textX": "X-Rotation", + "DE.Views.ChartSettings.textY": "Y-Rotation", "DE.Views.ChartSettings.txtBehind": "Hinter dem Text", "DE.Views.ChartSettings.txtInFront": "Vorne", "DE.Views.ChartSettings.txtInline": "Inline", @@ -1428,14 +1615,24 @@ "DE.Views.DateTimeDialog.textLang": "Sprache", "DE.Views.DateTimeDialog.textUpdate": "Automatisch aktualisieren", "DE.Views.DateTimeDialog.txtTitle": "Datum & Uhrzeit", + "DE.Views.DocProtection.hintProtectDoc": "Datei schützen", + "DE.Views.DocProtection.txtDocProtectedComment": "Das Dokument ist geschützt.
    Sie können nur Kommentare zu diesem Dokument hinterlassen.", + "DE.Views.DocProtection.txtDocProtectedForms": "Das Dokument ist geschützt.
    Sie können nur Formulare in diesem Dokument ausfüllen.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Das Dokument ist geschützt.
    Sie können dieses Dokument bearbeiten, aber alle Änderungen werden nachverfolgt.", + "DE.Views.DocProtection.txtDocProtectedView": "Das Dokument ist geschützt.
    Sie können dieses Dokument nur ansehen.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Geben Sie ein Passwort ein, um den Schutz des Dokuments aufzuheben", + "DE.Views.DocProtection.txtProtectDoc": "Datei schützen", "DE.Views.DocumentHolder.aboveText": "Oben", "DE.Views.DocumentHolder.addCommentText": "Kommentar hinzufügen", "DE.Views.DocumentHolder.advancedDropCapText": "Initialformatierung", + "DE.Views.DocumentHolder.advancedEquationText": "Einstellungen der Gleichung", "DE.Views.DocumentHolder.advancedFrameText": "Rahmen - Erweiterte Einstellungen", "DE.Views.DocumentHolder.advancedParagraphText": "Absatz - Erweiterte Einstellungen", "DE.Views.DocumentHolder.advancedTableText": "Tabelle - Erweiterte Einstellungen", "DE.Views.DocumentHolder.advancedText": "Erweiterte Einstellungen", "DE.Views.DocumentHolder.alignmentText": "Ausrichtung", + "DE.Views.DocumentHolder.allLinearText": "Alle – Linear", + "DE.Views.DocumentHolder.allProfText": "Alle – Professionelle", "DE.Views.DocumentHolder.belowText": "Unten", "DE.Views.DocumentHolder.breakBeforeText": "Seitenumbruch oberhalb", "DE.Views.DocumentHolder.bulletsText": "Aufzählung und Nummerierung", @@ -1444,6 +1641,8 @@ "DE.Views.DocumentHolder.centerText": "Zenter", "DE.Views.DocumentHolder.chartText": "Erweiterte Einstellungen des Diagramms", "DE.Views.DocumentHolder.columnText": "Spalte", + "DE.Views.DocumentHolder.currLinearText": "Aktuell – Linear", + "DE.Views.DocumentHolder.currProfText": "Aktuell – Professionell", "DE.Views.DocumentHolder.deleteColumnText": "Spalte löschen", "DE.Views.DocumentHolder.deleteRowText": "Zeile löschen", "DE.Views.DocumentHolder.deleteTableText": "Tabelle löschen", @@ -1456,6 +1655,7 @@ "DE.Views.DocumentHolder.editFooterText": "Fußzeile bearbeiten", "DE.Views.DocumentHolder.editHeaderText": "Kopfzeile bearbeiten", "DE.Views.DocumentHolder.editHyperlinkText": "Hyperlink bearbeiten", + "DE.Views.DocumentHolder.eqToInlineText": "Zum Inline wechseln", "DE.Views.DocumentHolder.guestText": "Gast", "DE.Views.DocumentHolder.hyperlinkText": "Hyperlink", "DE.Views.DocumentHolder.ignoreAllSpellText": "Alle auslassen", @@ -1470,6 +1670,7 @@ "DE.Views.DocumentHolder.insertText": "Einfügen", "DE.Views.DocumentHolder.keepLinesText": "Absatz zusammenhalten", "DE.Views.DocumentHolder.langText": "Sprache wählen", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Links", "DE.Views.DocumentHolder.loadSpellText": "Varianten werden geladen...", "DE.Views.DocumentHolder.mergeCellsText": "Zellen verbinden", @@ -1657,6 +1858,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Balken unter dem Text ", "DE.Views.DocumentHolder.txtUngroup": "Gruppierung aufheben", "DE.Views.DocumentHolder.txtWarnUrl": "Dieser Link kann für Ihr Gerät und Daten gefährlich sein.
    Möchten Sie wirklich fortsetzen?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "Format aktualisieren %1", "DE.Views.DocumentHolder.vertAlignText": "Vertikale Ausrichtung", "DE.Views.DropcapSettingsAdvanced.strBorders": "Rahmen & Füllung", @@ -1753,6 +1955,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistiken", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Thema", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Symbole", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Tags", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titel", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Hochgeladen", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Wörter", @@ -1986,7 +2189,7 @@ "DE.Views.ImageSettings.txtThrough": "Durchgehend", "DE.Views.ImageSettings.txtTight": "Passend", "DE.Views.ImageSettings.txtTopAndBottom": "Oben und unten", - "DE.Views.ImageSettingsAdvanced.strMargins": "Ränder um den Text", + "DE.Views.ImageSettingsAdvanced.strMargins": "Textauffüllung", "DE.Views.ImageSettingsAdvanced.textAbsoluteWH": "Absolut", "DE.Views.ImageSettingsAdvanced.textAlignment": "Ausrichtung", "DE.Views.ImageSettingsAdvanced.textAlt": "Alternativer Text", @@ -2066,6 +2269,7 @@ "DE.Views.LeftMenu.tipComments": "Kommentare", "DE.Views.LeftMenu.tipNavigation": "Navigation", "DE.Views.LeftMenu.tipOutline": "Überschriften", + "DE.Views.LeftMenu.tipPageThumbnails": "Miniaturansichten", "DE.Views.LeftMenu.tipPlugins": "Plugins", "DE.Views.LeftMenu.tipSearch": "Suchen", "DE.Views.LeftMenu.tipSupport": "Feedback und Support", @@ -2373,6 +2577,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Nur obere Rahmenlinie festlegen", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automatisch", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Keine Rahmen", + "DE.Views.ProtectDialog.textComments": "Kommentare", + "DE.Views.ProtectDialog.textForms": "Ausfüllen von Formularen", + "DE.Views.ProtectDialog.textReview": "Überarbeitungen", + "DE.Views.ProtectDialog.textView": "Keine Änderungen (Schreibgeschützt)", + "DE.Views.ProtectDialog.txtAllow": "Nur diese Art der Bearbeitung im Dokument zulassen", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Bestätigungseingabe ist nicht identisch", + "DE.Views.ProtectDialog.txtOptional": "optional", + "DE.Views.ProtectDialog.txtPassword": "Kennwort", + "DE.Views.ProtectDialog.txtProtect": "Schützen", + "DE.Views.ProtectDialog.txtRepeat": "Kennwort wiederholen", + "DE.Views.ProtectDialog.txtTitle": "Schützen", + "DE.Views.ProtectDialog.txtWarning": "Vorsicht: Wenn Sie das Kennwort verlieren oder vergessen, lässt es sich nicht mehr wiederherstellen. Bewahren Sie es an einem sicheren Ort auf.", "DE.Views.RightMenu.txtChartSettings": "Diagrammeinstellungen", "DE.Views.RightMenu.txtFormSettings": "Einstellungen des Formulars", "DE.Views.RightMenu.txtHeaderFooterSettings": "Kopf- und Fußzeileneinstellungen", @@ -2563,12 +2779,20 @@ "DE.Views.TableSettings.tipOuter": "Nur äußere Rahmenlinie festlegen", "DE.Views.TableSettings.tipRight": "Nur äußere rechte Rahmenlinie festlegen", "DE.Views.TableSettings.tipTop": "Nur äußere obere Rahmenlinie festlegen", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Umgrenzte und linierte Tabellen", + "DE.Views.TableSettings.txtGroupTable_Custom": "Einstellbar", + "DE.Views.TableSettings.txtGroupTable_Grid": "Gitternetztabellen", + "DE.Views.TableSettings.txtGroupTable_List": "Listentabellen", + "DE.Views.TableSettings.txtGroupTable_Plain": "Einfache Tabellen", "DE.Views.TableSettings.txtNoBorders": "Keine Rahmen", "DE.Views.TableSettings.txtTable_Accent": "Akzent", + "DE.Views.TableSettings.txtTable_Bordered": "Umgrenzt", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Umgrenzt und liniert", "DE.Views.TableSettings.txtTable_Colorful": "Farbig", "DE.Views.TableSettings.txtTable_Dark": "Dunkel", "DE.Views.TableSettings.txtTable_GridTable": "Gitternetztabelle", "DE.Views.TableSettings.txtTable_Light": "Hell", + "DE.Views.TableSettings.txtTable_Lined": "Mit Linien", "DE.Views.TableSettings.txtTable_ListTable": "Listentabelle", "DE.Views.TableSettings.txtTable_PlainTable": "Einfache Tabelle", "DE.Views.TableSettings.txtTable_TableGrid": "Tabellenraster", @@ -2627,7 +2851,7 @@ "DE.Views.TableSettingsAdvanced.textWrap": "Textumbruch", "DE.Views.TableSettingsAdvanced.textWrapNoneTooltip": "Inline-Tabelle", "DE.Views.TableSettingsAdvanced.textWrapParallelTooltip": "Flow-Tabelle", - "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Umbruch", + "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Textumbruch", "DE.Views.TableSettingsAdvanced.textWrapText": "Zeilenumbruch", "DE.Views.TableSettingsAdvanced.tipAll": "Äußere Rahmenlinie und alle inneren Linien festlegen", "DE.Views.TableSettingsAdvanced.tipCellAll": "Rahmenlinien nur für innere Zellen festlegen", @@ -2690,7 +2914,7 @@ "DE.Views.TextToTableDialog.textTitle": "Text in Tabelle umwandeln", "DE.Views.TextToTableDialog.textWindow": "An Fenster autoanpassen", "DE.Views.TextToTableDialog.txtAutoText": "Automatisch", - "DE.Views.Toolbar.capBtnAddComment": "Kommentar hinzufügen", + "DE.Views.Toolbar.capBtnAddComment": "Kommentar Hinzufügen", "DE.Views.Toolbar.capBtnBlankPage": "Leere Seite", "DE.Views.Toolbar.capBtnColumns": "Spalten", "DE.Views.Toolbar.capBtnComment": "Kommentar", @@ -2703,6 +2927,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Bild", "DE.Views.Toolbar.capBtnInsPagebreak": "Umbrüche", "DE.Views.Toolbar.capBtnInsShape": "Form", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Symbol", "DE.Views.Toolbar.capBtnInsTable": "Tabelle", "DE.Views.Toolbar.capBtnInsTextart": "Text Art", @@ -2849,13 +3074,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Einzug vergrößern", "DE.Views.Toolbar.tipInsertChart": "Diagramm einfügen", "DE.Views.Toolbar.tipInsertEquation": "Formel einfügen", + "DE.Views.Toolbar.tipInsertHorizontalText": "Horizontales Textfeld einfügen", "DE.Views.Toolbar.tipInsertImage": "Bild einfügen", "DE.Views.Toolbar.tipInsertNum": "Seitenzahl einfügen", "DE.Views.Toolbar.tipInsertShape": "AutoForm einfügen", + "DE.Views.Toolbar.tipInsertSmartArt": "SmartArt einfügen", "DE.Views.Toolbar.tipInsertSymbol": "Symbol einfügen", "DE.Views.Toolbar.tipInsertTable": "Tabelle einfügen", "DE.Views.Toolbar.tipInsertText": "Textfeld einfügen", "DE.Views.Toolbar.tipInsertTextArt": "TextArt einfügen", + "DE.Views.Toolbar.tipInsertVerticalText": "Vertikales Textfeld einfügen", "DE.Views.Toolbar.tipLineNumbers": "Zeilennummern anzeigen", "DE.Views.Toolbar.tipLineSpace": "Zeilenabstand", "DE.Views.Toolbar.tipMailRecepients": "Serienbrief", @@ -2927,8 +3155,10 @@ "DE.Views.ViewTab.textFitToPage": "Seite anpassen", "DE.Views.ViewTab.textFitToWidth": "An Breite anpassen", "DE.Views.ViewTab.textInterfaceTheme": "Thema der Benutzeroberfläche", + "DE.Views.ViewTab.textLeftMenu": "Linkes Bedienfeld", "DE.Views.ViewTab.textNavigation": "Navigation", "DE.Views.ViewTab.textOutline": "Überschriften", + "DE.Views.ViewTab.textRightMenu": "Rechtes Bedienungsfeld ", "DE.Views.ViewTab.textRulers": "Lineale", "DE.Views.ViewTab.textStatusBar": "Statusleiste", "DE.Views.ViewTab.textZoom": "Zoom", diff --git a/apps/documenteditor/main/locale/en.json b/apps/documenteditor/main/locale/en.json index bc8798795..d59b2e64c 100644 --- a/apps/documenteditor/main/locale/en.json +++ b/apps/documenteditor/main/locale/en.json @@ -125,7 +125,168 @@ "Common.define.chartData.textScatterSmoothMarker": "Scatter with smooth lines and markers", "Common.define.chartData.textStock": "Stock", "Common.define.chartData.textSurface": "Surface", + "Common.define.smartArt.textAccentedPicture": "Accented Picture", + "Common.define.smartArt.textAccentProcess": "Accent Process", + "Common.define.smartArt.textAlternatingFlow": "Alternating Flow", + "Common.define.smartArt.textAlternatingHexagons": "Alternating Hexagons", + "Common.define.smartArt.textAlternatingPictureBlocks": "Alternating Picture Blocks", + "Common.define.smartArt.textAlternatingPictureCircles": "Alternating Picture Circles", + "Common.define.smartArt.textArchitectureLayout": "Architecture Layout", + "Common.define.smartArt.textArrowRibbon": "Arrow Ribbon", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Ascending Picture Accent Process", + "Common.define.smartArt.textBalance": "Balance", + "Common.define.smartArt.textBasicBendingProcess": "Basic Bending Process", + "Common.define.smartArt.textBasicBlockList": "Basic Block List", + "Common.define.smartArt.textBasicChevronProcess": "Basic Chevron Process", + "Common.define.smartArt.textBasicCycle": "Basic Cycle", + "Common.define.smartArt.textBasicMatrix": "Basic Matrix", + "Common.define.smartArt.textBasicPie": "Basic Pie", + "Common.define.smartArt.textBasicProcess": "Basic Process", + "Common.define.smartArt.textBasicPyramid": "Basic Pyramid", + "Common.define.smartArt.textBasicRadial": "Basic Radial", + "Common.define.smartArt.textBasicTarget": "Basic Target", + "Common.define.smartArt.textBasicTimeline": "Basic Timeline", + "Common.define.smartArt.textBasicVenn": "Basic Venn", + "Common.define.smartArt.textBendingPictureAccentList": "Bending Picture Accent List", + "Common.define.smartArt.textBendingPictureBlocks": "Bending Picture Blocks", + "Common.define.smartArt.textBendingPictureCaption": "Bending Picture Caption", + "Common.define.smartArt.textBendingPictureCaptionList": "Bending Picture Caption List", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Bending Picture Semi-Transparent Text", + "Common.define.smartArt.textBlockCycle": "Block Cycle", + "Common.define.smartArt.textBubblePictureList": "Bubble Picture List", + "Common.define.smartArt.textCaptionedPictures": "Captioned Pictures", + "Common.define.smartArt.textChevronAccentProcess": "Chevron Accent Process", + "Common.define.smartArt.textChevronList": "Chevron List", + "Common.define.smartArt.textCircleAccentTimeline": "Circle Accent Timeline", + "Common.define.smartArt.textCircleArrowProcess": "Circle Arrow Process", + "Common.define.smartArt.textCirclePictureHierarchy": "Circle Picture Hierarchy", + "Common.define.smartArt.textCircleProcess": "Circle Process", + "Common.define.smartArt.textCircleRelationship": "Circle Relationship", + "Common.define.smartArt.textCircularBendingProcess": "Circular Bending Process", + "Common.define.smartArt.textCircularPictureCallout": "Circular Picture Callout", + "Common.define.smartArt.textClosedChevronProcess": "Closed Chevron Process", + "Common.define.smartArt.textContinuousArrowProcess": "Continuous Arrow Process", + "Common.define.smartArt.textContinuousBlockProcess": "Continuous Block Process", + "Common.define.smartArt.textContinuousCycle": "Continuous Cycle", + "Common.define.smartArt.textContinuousPictureList": "Continuous Picture List", + "Common.define.smartArt.textConvergingArrows": "Converging Arrows", + "Common.define.smartArt.textConvergingRadial": "Converging Radial", + "Common.define.smartArt.textConvergingText": "Converging Text", + "Common.define.smartArt.textCounterbalanceArrows": "Counterbalance Arrows", + "Common.define.smartArt.textCycle": "Cycle", + "Common.define.smartArt.textCycleMatrix": "Cycle Matrix", + "Common.define.smartArt.textDescendingBlockList": "Descending Block List", + "Common.define.smartArt.textDescendingProcess": "Descending Process", + "Common.define.smartArt.textDetailedProcess": "Detailed Process", + "Common.define.smartArt.textDivergingArrows": "Diverging Arrows", + "Common.define.smartArt.textDivergingRadial": "Diverging Radial", + "Common.define.smartArt.textEquation": "Equation", + "Common.define.smartArt.textFramedTextPicture": "Framed Text Picture", + "Common.define.smartArt.textFunnel": "Funnel", + "Common.define.smartArt.textGear": "Gear", + "Common.define.smartArt.textGridMatrix": "Grid Matrix", + "Common.define.smartArt.textGroupedList": "Grouped List", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Half Circle Organization Chart", + "Common.define.smartArt.textHexagonCluster": "Hexagon Cluster", + "Common.define.smartArt.textHexagonRadial": "Hexagon Radial", + "Common.define.smartArt.textHierarchy": "Hierarchy", + "Common.define.smartArt.textHierarchyList": "Hierarchy List", + "Common.define.smartArt.textHorizontalBulletList": "Horizontal Bullet List", + "Common.define.smartArt.textHorizontalHierarchy": "Horizontal Hierarchy", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Horizontal Labeled Hierarchy", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Horizontal Multi-Level Hierarchy", + "Common.define.smartArt.textHorizontalOrganizationChart": "Horizontal Organization Chart", + "Common.define.smartArt.textHorizontalPictureList": "Horizontal Picture List", + "Common.define.smartArt.textIncreasingArrowProcess": "Increasing Arrow Process", + "Common.define.smartArt.textIncreasingCircleProcess": "Increasing Circle Process", + "Common.define.smartArt.textInterconnectedBlockProcess": "Interconnected Block Process", + "Common.define.smartArt.textInterconnectedRings": "Interconnected Rings", + "Common.define.smartArt.textInvertedPyramid": "Inverted Pyramid", + "Common.define.smartArt.textLabeledHierarchy": "Labeled Hierarchy", + "Common.define.smartArt.textLinearVenn": "Linear Venn", + "Common.define.smartArt.textLinedList": "Lined List", + "Common.define.smartArt.textList": "List", + "Common.define.smartArt.textMatrix": "Matrix", + "Common.define.smartArt.textMultidirectionalCycle": "Multidirectional Cycle", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Name and Title Organization Chart", + "Common.define.smartArt.textNestedTarget": "Nested Target", + "Common.define.smartArt.textNondirectionalCycle": "Nondirectional Cycle", + "Common.define.smartArt.textOpposingArrows": "Opposing Arrows", + "Common.define.smartArt.textOpposingIdeas": "Opposing Ideas", + "Common.define.smartArt.textOrganizationChart": "Organization Chart", + "Common.define.smartArt.textOther": "Other", + "Common.define.smartArt.textPhasedProcess": "Phased Process", + "Common.define.smartArt.textPicture": "Picture", + "Common.define.smartArt.textPictureAccentBlocks": "Picture Accent Blocks", + "Common.define.smartArt.textPictureAccentList": "Picture Accent List", + "Common.define.smartArt.textPictureAccentProcess": "Picture Accent Process", + "Common.define.smartArt.textPictureCaptionList": "Picture Caption List", + "Common.define.smartArt.textPictureFrame": "PictureFrame", + "Common.define.smartArt.textPictureGrid": "Picture Grid", + "Common.define.smartArt.textPictureLineup": "Picture Lineup", + "Common.define.smartArt.textPictureOrganizationChart": "Picture Organization Chart", + "Common.define.smartArt.textPictureStrips": "Picture Strips", + "Common.define.smartArt.textPieProcess": "Pie Process", + "Common.define.smartArt.textPlusAndMinus": "Plus and Minus", + "Common.define.smartArt.textProcess": "Process", + "Common.define.smartArt.textProcessArrows": "Process Arrows", + "Common.define.smartArt.textProcessList": "Process List", + "Common.define.smartArt.textPyramid": "Pyramid", + "Common.define.smartArt.textPyramidList": "Pyramid List", + "Common.define.smartArt.textRadialCluster": "Radial Cluster", + "Common.define.smartArt.textRadialCycle": "Radial Cycle", + "Common.define.smartArt.textRadialList": "Radial List", + "Common.define.smartArt.textRadialPictureList": "Radial Picture List", + "Common.define.smartArt.textRadialVenn": "Radial Venn", + "Common.define.smartArt.textRandomToResultProcess": "Random to Result Process", + "Common.define.smartArt.textRelationship": "Relationship", + "Common.define.smartArt.textRepeatingBendingProcess": "Repeating Bending Process", + "Common.define.smartArt.textReverseList": "Reverse List", + "Common.define.smartArt.textSegmentedCycle": "Segmented Cycle", + "Common.define.smartArt.textSegmentedProcess": "Segmented Process", + "Common.define.smartArt.textSegmentedPyramid": "Segmented Pyramid", + "Common.define.smartArt.textSnapshotPictureList": "Snapshot Picture List", + "Common.define.smartArt.textSpiralPicture": "Spiral Picture", + "Common.define.smartArt.textSquareAccentList": "Square Accent List", + "Common.define.smartArt.textStackedList": "Stacked List", + "Common.define.smartArt.textStackedVenn": "Stacked Venn", + "Common.define.smartArt.textStaggeredProcess": "Staggered Process", + "Common.define.smartArt.textStepDownProcess": "Step Down Process", + "Common.define.smartArt.textStepUpProcess": "Step Up Process", + "Common.define.smartArt.textSubStepProcess": "Sub-Step Process", + "Common.define.smartArt.textTabbedArc": "Tabbed Arc", + "Common.define.smartArt.textTableHierarchy": "Table Hierarchy", + "Common.define.smartArt.textTableList": "Table List", + "Common.define.smartArt.textTabList": "Tab List", + "Common.define.smartArt.textTargetList": "Target List", + "Common.define.smartArt.textTextCycle": "Text Cycle", + "Common.define.smartArt.textThemePictureAccent": "Theme Picture Accent", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Theme Picture Alternating Accent", + "Common.define.smartArt.textThemePictureGrid": "Theme Picture Grid", + "Common.define.smartArt.textTitledMatrix": "Titled Matrix", + "Common.define.smartArt.textTitledPictureAccentList": "Titled Picture Accent List", + "Common.define.smartArt.textTitledPictureBlocks": "Titled Picture Blocks", + "Common.define.smartArt.textTitlePictureLineup": "Title Picture Lineup", + "Common.define.smartArt.textTrapezoidList": "Trapezoid List", + "Common.define.smartArt.textUpwardArrow": "Upward Arrow", + "Common.define.smartArt.textVaryingWidthList": "Varying Width List", + "Common.define.smartArt.textVerticalAccentList": "Vertical Accent List", + "Common.define.smartArt.textVerticalArrowList": "Vertical Arrow List", + "Common.define.smartArt.textVerticalBendingProcess": "Vertical Bending Process", + "Common.define.smartArt.textVerticalBlockList": "Vertical Block List", + "Common.define.smartArt.textVerticalBoxList": "Vertical Box List", + "Common.define.smartArt.textVerticalBracketList": "Vertical Bracket List", + "Common.define.smartArt.textVerticalBulletList": "Vertical Bullet List", + "Common.define.smartArt.textVerticalChevronList": "Vertical Chevron List", + "Common.define.smartArt.textVerticalCircleList": "Vertical Circle List", + "Common.define.smartArt.textVerticalCurvedList": "Vertical Curved List", + "Common.define.smartArt.textVerticalEquation": "Vertical Equation", + "Common.define.smartArt.textVerticalPictureAccentList": "Vertical Picture Accent List", + "Common.define.smartArt.textVerticalPictureList": "Vertical Picture List", + "Common.define.smartArt.textVerticalProcess": "Vertical Process", "Common.Translation.textMoreButton": "More", + "Common.Translation.tipFileLocked": "Document is locked for editing. You can make changes and save it as local copy later.", + "Common.Translation.tipFileReadOnly": "The file is read-only. To keep your changes, save the file with a new name or in a different location.", "Common.Translation.warnFileLocked": "You can't edit this file because it's being edited in another app.", "Common.Translation.warnFileLockedBtnEdit": "Create a copy", "Common.Translation.warnFileLockedBtnView": "Open for viewing", @@ -184,12 +345,12 @@ "Common.UI.SearchDialog.textMatchCase": "Case sensitive", "Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text", "Common.UI.SearchDialog.textSearchStart": "Enter your text here", - "Common.UI.SearchDialog.textTitle": "Find and Replace", + "Common.UI.SearchDialog.textTitle": "Find and replace", "Common.UI.SearchDialog.textTitle2": "Find", "Common.UI.SearchDialog.textWholeWords": "Whole words only", "Common.UI.SearchDialog.txtBtnHideReplace": "Hide Replace", "Common.UI.SearchDialog.txtBtnReplace": "Replace", - "Common.UI.SearchDialog.txtBtnReplaceAll": "Replace All", + "Common.UI.SearchDialog.txtBtnReplaceAll": "Replace all", "Common.UI.SynchronizeTip.textDontShow": "Don't show this message again", "Common.UI.SynchronizeTip.textSynchronize": "The document has been changed by another user.
    Please click to save your changes and reload the updates.", "Common.UI.ThemeColorPalette.textRecentColors": "Recent Colors", @@ -223,24 +384,28 @@ "Common.Views.About.txtTel": "tel.: ", "Common.Views.About.txtVersion": "Version ", "Common.Views.AutoCorrectDialog.textAdd": "Add", - "Common.Views.AutoCorrectDialog.textApplyText": "Apply As You Type", + "Common.Views.AutoCorrectDialog.textApplyText": "Apply as you type", "Common.Views.AutoCorrectDialog.textAutoCorrect": "Text AutoCorrect", - "Common.Views.AutoCorrectDialog.textAutoFormat": "AutoFormat As You Type", + "Common.Views.AutoCorrectDialog.textAutoFormat": "AutoFormat as you type", "Common.Views.AutoCorrectDialog.textBulleted": "Automatic bulleted lists", "Common.Views.AutoCorrectDialog.textBy": "By", "Common.Views.AutoCorrectDialog.textDelete": "Delete", "Common.Views.AutoCorrectDialog.textDoubleSpaces": "Add period with double-space", "Common.Views.AutoCorrectDialog.textFLCells": "Capitalize first letter of table cells", "Common.Views.AutoCorrectDialog.textFLSentence": "Capitalize first letter of sentences", + "Common.Views.AutoCorrectDialog.textForLangFL": "Exceptions for the language:", + "Common.Views.AutoCorrectDialog.textWarnResetFL": "Any exceptions you added will be removed and the removed ones will be restored. Do you want to continue?", + "Common.Views.AutoCorrectDialog.textWarnAddFL": "Exceptions must contain only the letters, uppercase or lowercase.", + "Common.Views.AutoCorrectDialog.textFLDont": "Don`t capitalize after", "Common.Views.AutoCorrectDialog.textHyperlink": "Internet and network paths with hyperlinks", "Common.Views.AutoCorrectDialog.textHyphens": "Hyphens (--) with dash (—)", "Common.Views.AutoCorrectDialog.textMathCorrect": "Math AutoCorrect", "Common.Views.AutoCorrectDialog.textNumbered": "Automatic numbered lists", "Common.Views.AutoCorrectDialog.textQuotes": "\"Straight quotes\" with \"smart quotes\"", - "Common.Views.AutoCorrectDialog.textRecognized": "Recognized Functions", + "Common.Views.AutoCorrectDialog.textRecognized": "Recognized functions", "Common.Views.AutoCorrectDialog.textRecognizedDesc": "The following expressions are recognized math expressions. They will not be automatically italicized.", "Common.Views.AutoCorrectDialog.textReplace": "Replace", - "Common.Views.AutoCorrectDialog.textReplaceText": "Replace As You Type", + "Common.Views.AutoCorrectDialog.textReplaceText": "Replace as you type", "Common.Views.AutoCorrectDialog.textReplaceType": "Replace text as you type", "Common.Views.AutoCorrectDialog.textReset": "Reset", "Common.Views.AutoCorrectDialog.textResetAll": "Reset to default", @@ -281,12 +446,12 @@ "Common.Views.Comments.txtEmpty": "There are no comments in the document.", "Common.Views.CopyWarningDialog.textDontShow": "Don't show this message again", "Common.Views.CopyWarningDialog.textMsg": "Copy, cut and paste actions using the editor toolbar buttons and context menu actions will be performed within this editor tab only.

    To copy or paste to or from applications outside the editor tab use the following keyboard combinations:", - "Common.Views.CopyWarningDialog.textTitle": "Copy, Cut and Paste Actions", + "Common.Views.CopyWarningDialog.textTitle": "Copy, Cut and Paste actions", "Common.Views.CopyWarningDialog.textToCopy": "for Copy", "Common.Views.CopyWarningDialog.textToCut": "for Cut", "Common.Views.CopyWarningDialog.textToPaste": "for Paste", "Common.Views.DocumentAccessDialog.textLoading": "Loading...", - "Common.Views.DocumentAccessDialog.textTitle": "Sharing Settings", + "Common.Views.DocumentAccessDialog.textTitle": "Sharing settings", "Common.Views.ExternalDiagramEditor.textTitle": "Chart Editor", "Common.Views.ExternalEditor.textClose": "Close", "Common.Views.ExternalEditor.textSave": "Save & Exit", @@ -315,6 +480,8 @@ "Common.Views.Header.tipViewUsers": "View users and manage document access rights", "Common.Views.Header.txtAccessRights": "Change access rights", "Common.Views.Header.txtRename": "Rename", + "Common.Views.Header.tipPrintQuick": "Quick print", + "Common.Views.Header.textReadOnly": "Read only", "Common.Views.History.textCloseHistory": "Close History", "Common.Views.History.textHide": "Collapse", "Common.Views.History.textHideAll": "Hide detailed changes", @@ -326,14 +493,14 @@ "Common.Views.ImageFromUrlDialog.txtEmpty": "This field is required", "Common.Views.ImageFromUrlDialog.txtNotUrl": "This field should be a URL in the \"http://www.example.com\" format", "Common.Views.InsertTableDialog.textInvalidRowsCols": "You need to specify valid rows and columns count.", - "Common.Views.InsertTableDialog.txtColumns": "Number of Columns", + "Common.Views.InsertTableDialog.txtColumns": "Number of columns", "Common.Views.InsertTableDialog.txtMaxText": "The maximum value for this field is {0}.", "Common.Views.InsertTableDialog.txtMinText": "The minimum value for this field is {0}.", - "Common.Views.InsertTableDialog.txtRows": "Number of Rows", - "Common.Views.InsertTableDialog.txtTitle": "Table Size", - "Common.Views.InsertTableDialog.txtTitleSplit": "Split Cell", + "Common.Views.InsertTableDialog.txtRows": "Number of rows", + "Common.Views.InsertTableDialog.txtTitle": "Table size", + "Common.Views.InsertTableDialog.txtTitleSplit": "Split cell", "Common.Views.LanguageDialog.labelSelect": "Select document language", - "Common.Views.OpenDialog.closeButtonText": "Close File", + "Common.Views.OpenDialog.closeButtonText": "Close file", "Common.Views.OpenDialog.txtEncoding": "Encoding ", "Common.Views.OpenDialog.txtIncorrectPwd": "Password is incorrect.", "Common.Views.OpenDialog.txtOpenFile": "Enter a password to open the file", @@ -341,12 +508,12 @@ "Common.Views.OpenDialog.txtPreview": "Preview", "Common.Views.OpenDialog.txtProtected": "Once you enter the password and open the file, the current password to the file will be reset.", "Common.Views.OpenDialog.txtTitle": "Choose %1 options", - "Common.Views.OpenDialog.txtTitleProtected": "Protected File", + "Common.Views.OpenDialog.txtTitleProtected": "Protected file", "Common.Views.PasswordDialog.txtDescription": "Set a password to protect this document", "Common.Views.PasswordDialog.txtIncorrectPwd": "Confirmation password is not identical", "Common.Views.PasswordDialog.txtPassword": "Password", "Common.Views.PasswordDialog.txtRepeat": "Repeat password", - "Common.Views.PasswordDialog.txtTitle": "Set Password", + "Common.Views.PasswordDialog.txtTitle": "Set password", "Common.Views.PasswordDialog.txtWarning": "Warning: If you lose or forget the password, it cannot be recovered. Please keep it in a safe place.", "Common.Views.PluginDlg.textLoading": "Loading", "Common.Views.Plugins.groupCaption": "Plugins", @@ -441,20 +608,21 @@ "Common.Views.ReviewChanges.txtSpelling": "Spell Checking", "Common.Views.ReviewChanges.txtTurnon": "Track Changes", "Common.Views.ReviewChanges.txtView": "Display Mode", - "Common.Views.ReviewChangesDialog.textTitle": "Review Changes", + "Common.Views.ReviewChangesDialog.textTitle": "Review changes", "Common.Views.ReviewChangesDialog.txtAccept": "Accept", - "Common.Views.ReviewChangesDialog.txtAcceptAll": "Accept All Changes", - "Common.Views.ReviewChangesDialog.txtAcceptCurrent": "Accept Current Change", + "Common.Views.ReviewChangesDialog.txtAcceptAll": "Accept all changes", + "Common.Views.ReviewChangesDialog.txtAcceptCurrent": "Accept current change", "Common.Views.ReviewChangesDialog.txtNext": "To next change", "Common.Views.ReviewChangesDialog.txtPrev": "To previous change", "Common.Views.ReviewChangesDialog.txtReject": "Reject", - "Common.Views.ReviewChangesDialog.txtRejectAll": "Reject All Changes", - "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Reject Current Change", + "Common.Views.ReviewChangesDialog.txtRejectAll": "Reject all changes", + "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Reject current change", "Common.Views.ReviewPopover.textAdd": "Add", "Common.Views.ReviewPopover.textAddReply": "Add Reply", "Common.Views.ReviewPopover.textCancel": "Cancel", "Common.Views.ReviewPopover.textClose": "Close", "Common.Views.ReviewPopover.textEdit": "OK", + "Common.Views.ReviewPopover.textEnterComment": "Enter your comment here", "Common.Views.ReviewPopover.textFollowMove": "Follow Move", "Common.Views.ReviewPopover.textMention": "+mention will provide access to the document and send an email", "Common.Views.ReviewPopover.textMentionNotify": "+mention will notify the user via email", @@ -487,7 +655,7 @@ "Common.Views.SearchPanel.tipNextResult": "Next result", "Common.Views.SearchPanel.tipPreviousResult": "Previous result", "Common.Views.SelectFileDlg.textLoading": "Loading", - "Common.Views.SelectFileDlg.textTitle": "Select Data Source", + "Common.Views.SelectFileDlg.textTitle": "Select data source", "Common.Views.SignDialog.textBold": "Bold", "Common.Views.SignDialog.textCertificate": "Certificate", "Common.Views.SignDialog.textChange": "Change", @@ -496,49 +664,49 @@ "Common.Views.SignDialog.textNameError": "Signer name must not be empty.", "Common.Views.SignDialog.textPurpose": "Purpose for signing this document", "Common.Views.SignDialog.textSelect": "Select", - "Common.Views.SignDialog.textSelectImage": "Select Image", + "Common.Views.SignDialog.textSelectImage": "Select image", "Common.Views.SignDialog.textSignature": "Signature looks as", - "Common.Views.SignDialog.textTitle": "Sign Document", + "Common.Views.SignDialog.textTitle": "Sign document", "Common.Views.SignDialog.textUseImage": "or click 'Select Image' to use a picture as signature", "Common.Views.SignDialog.textValid": "Valid from %1 to %2", - "Common.Views.SignDialog.tipFontName": "Font Name", - "Common.Views.SignDialog.tipFontSize": "Font Size", + "Common.Views.SignDialog.tipFontName": "Font name", + "Common.Views.SignDialog.tipFontSize": "Font size", "Common.Views.SignSettingsDialog.textAllowComment": "Allow signer to add comment in the signature dialog", + "Common.Views.SignSettingsDialog.textDefInstruction": "Before signing this document, verify that the content you are signing is correct.", "Common.Views.SignSettingsDialog.textInfoEmail": "Suggested signer's e-mail", "Common.Views.SignSettingsDialog.textInfoName": "Suggested signer", "Common.Views.SignSettingsDialog.textInfoTitle": "Suggested signer's title", "Common.Views.SignSettingsDialog.textInstructions": "Instructions for signer", "Common.Views.SignSettingsDialog.textShowDate": "Show sign date in signature line", - "Common.Views.SignSettingsDialog.textTitle": "Signature Setup", + "Common.Views.SignSettingsDialog.textTitle": "Signature setup", "Common.Views.SignSettingsDialog.txtEmpty": "This field is required", - "Common.Views.SignSettingsDialog.textDefInstruction": "Before signing this document, verify that the content you are signing is correct.", "Common.Views.SymbolTableDialog.textCharacter": "Character", "Common.Views.SymbolTableDialog.textCode": "Unicode HEX value", - "Common.Views.SymbolTableDialog.textCopyright": "Copyright Sign", - "Common.Views.SymbolTableDialog.textDCQuote": "Closing Double Quote", - "Common.Views.SymbolTableDialog.textDOQuote": "Opening Double Quote", - "Common.Views.SymbolTableDialog.textEllipsis": "Horizontal Ellipsis", - "Common.Views.SymbolTableDialog.textEmDash": "Em Dash", - "Common.Views.SymbolTableDialog.textEmSpace": "Em Space", - "Common.Views.SymbolTableDialog.textEnDash": "En Dash", - "Common.Views.SymbolTableDialog.textEnSpace": "En Space", + "Common.Views.SymbolTableDialog.textCopyright": "Copyright sign", + "Common.Views.SymbolTableDialog.textDCQuote": "Closing double quote", + "Common.Views.SymbolTableDialog.textDOQuote": "Opening double quote", + "Common.Views.SymbolTableDialog.textEllipsis": "Horizontal ellipsis", + "Common.Views.SymbolTableDialog.textEmDash": "Em dash", + "Common.Views.SymbolTableDialog.textEmSpace": "Em space", + "Common.Views.SymbolTableDialog.textEnDash": "En dash", + "Common.Views.SymbolTableDialog.textEnSpace": "En space", "Common.Views.SymbolTableDialog.textFont": "Font", - "Common.Views.SymbolTableDialog.textNBHyphen": "Non-breaking Hyphen", - "Common.Views.SymbolTableDialog.textNBSpace": "No-break Space", - "Common.Views.SymbolTableDialog.textPilcrow": "Pilcrow Sign", - "Common.Views.SymbolTableDialog.textQEmSpace": "1/4 Em Space", + "Common.Views.SymbolTableDialog.textNBHyphen": "Non-breaking hyphen", + "Common.Views.SymbolTableDialog.textNBSpace": "No-break space", + "Common.Views.SymbolTableDialog.textPilcrow": "Pilcrow sign", + "Common.Views.SymbolTableDialog.textQEmSpace": "1/4 Em space", "Common.Views.SymbolTableDialog.textRange": "Range", "Common.Views.SymbolTableDialog.textRecent": "Recently used symbols", - "Common.Views.SymbolTableDialog.textRegistered": "Registered Sign", - "Common.Views.SymbolTableDialog.textSCQuote": "Closing Single Quote", - "Common.Views.SymbolTableDialog.textSection": "Section Sign", - "Common.Views.SymbolTableDialog.textShortcut": "Shortcut Key", - "Common.Views.SymbolTableDialog.textSHyphen": "Soft Hyphen", - "Common.Views.SymbolTableDialog.textSOQuote": "Opening Single Quote", + "Common.Views.SymbolTableDialog.textRegistered": "Registered sign", + "Common.Views.SymbolTableDialog.textSCQuote": "Closing single quote", + "Common.Views.SymbolTableDialog.textSection": "Section sign", + "Common.Views.SymbolTableDialog.textShortcut": "Shortcut key", + "Common.Views.SymbolTableDialog.textSHyphen": "Soft hyphen", + "Common.Views.SymbolTableDialog.textSOQuote": "Opening single quote", "Common.Views.SymbolTableDialog.textSpecial": "Special characters", "Common.Views.SymbolTableDialog.textSymbols": "Symbols", "Common.Views.SymbolTableDialog.textTitle": "Symbol", - "Common.Views.SymbolTableDialog.textTradeMark": "Trademark Symbol ", + "Common.Views.SymbolTableDialog.textTradeMark": "Trademark symbol ", "Common.Views.UserNameDialog.textDontShow": "Don't ask me again", "Common.Views.UserNameDialog.textLabel": "Label:", "Common.Views.UserNameDialog.textLabelError": "Label must not be empty.", @@ -558,6 +726,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} is not a valid special character for the replacement field.", "DE.Controllers.Main.applyChangesTextText": "Loading the changes...", "DE.Controllers.Main.applyChangesTitleText": "Loading the Changes", + "DE.Controllers.Main.confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
    Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", "DE.Controllers.Main.convertationTimeoutText": "Conversion timeout exceeded.", "DE.Controllers.Main.criticalErrorExtText": "Press \"OK\" to return to document list.", "DE.Controllers.Main.criticalErrorTitle": "Error", @@ -568,6 +737,7 @@ "DE.Controllers.Main.downloadTitleText": "Downloading Document", "DE.Controllers.Main.errorAccessDeny": "You are trying to perform an action you do not have rights for.
    Please contact your Document Server administrator.", "DE.Controllers.Main.errorBadImageUrl": "Image URL is incorrect", + "DE.Controllers.Main.errorCannotPasteImg": "We can't paste this image from the Clipboard, but you can save it to your device and \ninsert it from there, or you can copy the image without text and paste it into the document.", "DE.Controllers.Main.errorCoAuthoringDisconnect": "Server connection lost. The document cannot be edited right now.", "DE.Controllers.Main.errorComboSeries": "To create a combination chart, select at least two series of data.", "DE.Controllers.Main.errorCompare": "The Compare Documents feature is not available while co-editing. ", @@ -584,12 +754,18 @@ "DE.Controllers.Main.errorFilePassProtect": "The file is password protected and cannot be opened.", "DE.Controllers.Main.errorFileSizeExceed": "The file size exceeds the limitation set for your server.
    Please contact your Document Server administrator for details.", "DE.Controllers.Main.errorForceSave": "An error occurred while saving the file. Please use the 'Download as' option to save the file to a drive or try again later.", + "DE.Controllers.Main.errorInconsistentExt": "An error has occurred while opening the file.
    The file content does not match the file extension.", + "DE.Controllers.Main.errorInconsistentExtDocx": "An error has occurred while opening the file.
    The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "An error has occurred while opening the file.
    The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "An error has occurred while opening the file.
    The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "An error has occurred while opening the file.
    The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Unknown key descriptor", "DE.Controllers.Main.errorKeyExpire": "Key descriptor expired", "DE.Controllers.Main.errorLoadingFont": "Fonts are not loaded.
    Please contact your Document Server administrator.", "DE.Controllers.Main.errorMailMergeLoadFile": "Loading the document failed. Please select a different file.", "DE.Controllers.Main.errorMailMergeSaveFile": "Merge failed.", "DE.Controllers.Main.errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "The password you supplied is not correct.
    Verify that the CAPS LOCK key is off and be sure to use the correct capitalization.", "DE.Controllers.Main.errorProcessSaveResult": "Saving failed.", "DE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.", "DE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.", @@ -646,6 +822,7 @@ "DE.Controllers.Main.textClose": "Close", "DE.Controllers.Main.textCloseTip": "Click to close the tip", "DE.Controllers.Main.textContactUs": "Contact sales", + "DE.Controllers.Main.textContinue": "Continue", "DE.Controllers.Main.textConvertEquation": "This equation was created with an old version of the equation editor which is no longer supported. To edit it, convert the equation to the Office Math ML format.
    Convert now?", "DE.Controllers.Main.textCustomLoader": "Please note that according to the terms of the license you are not entitled to change the loader.
    Please contact our Sales Department to get a quote.", "DE.Controllers.Main.textDisconnect": "Connection is lost", @@ -666,6 +843,7 @@ "DE.Controllers.Main.textStrict": "Strict mode", "DE.Controllers.Main.textTryUndoRedo": "The Undo/Redo functions are disabled for the Fast co-editing mode.
    Click the 'Strict mode' button to switch to the Strict co-editing mode to edit the file without other users interference and send your changes only after you save them. You can switch between the co-editing modes using the editor Advanced settings.", "DE.Controllers.Main.textTryUndoRedoWarn": "The Undo/Redo functions are disabled for the Fast co-editing mode.", + "DE.Controllers.Main.textUndo": "Undo", "DE.Controllers.Main.titleLicenseExp": "License expired", "DE.Controllers.Main.titleServerVersion": "Editor updated", "DE.Controllers.Main.titleUpdateVersion": "Version changed", @@ -934,6 +1112,7 @@ "DE.Controllers.Main.warnNoLicense": "You've reached the limit for simultaneous connections to %1 editors. This document will be opened for viewing only.
    Contact %1 sales team for personal upgrade terms.", "DE.Controllers.Main.warnNoLicenseUsers": "You've reached the user limit for %1 editors. Contact %1 sales team for personal upgrade terms.", "DE.Controllers.Main.warnProcessRightsChange": "You have been denied the right to edit the file.", + "DE.Controllers.Main.textTryQuickPrint": "You have selected Quick print: the entire document will be printed on the last selected or default printer.
    Do you want to continue?", "DE.Controllers.Navigation.txtBeginning": "Beginning of document", "DE.Controllers.Navigation.txtGotoBeginning": "Go to the beginning of the document", "DE.Controllers.Search.notcriticalErrorTitle": "Warning", @@ -947,6 +1126,10 @@ "DE.Controllers.Statusbar.textTrackChanges": "The document is opened with the Track Changes mode enabled", "DE.Controllers.Statusbar.tipReview": "Track changes", "DE.Controllers.Statusbar.zoomText": "Zoom {0}%", + "DE.Controllers.Print.txtCustom": "Custom", + "DE.Controllers.Print.txtPrintRangeInvalid": "Invalid print range", + "DE.Controllers.Print.textMarginsLast": "Last Custom", + "DE.Controllers.Print.txtPrintRangeSingleRange": "Enter either a single page number or a single page range (for example, 5-12). Or you can Print to PDF.", "DE.Controllers.Toolbar.confirmAddFontName": "The font you are going to save is not available on the current device.
    The text style will be displayed using one of the system fonts, the saved font will be used when it is available.
    Do you want to continue?", "DE.Controllers.Toolbar.dataUrl": "Paste a data URL", "DE.Controllers.Toolbar.notcriticalErrorTitle": "Warning", @@ -1298,7 +1481,7 @@ "DE.Views.BookmarksDialog.textClose": "Close", "DE.Views.BookmarksDialog.textCopy": "Copy", "DE.Views.BookmarksDialog.textDelete": "Delete", - "DE.Views.BookmarksDialog.textGetLink": "Get Link", + "DE.Views.BookmarksDialog.textGetLink": "Get link", "DE.Views.BookmarksDialog.textGoto": "Go to", "DE.Views.BookmarksDialog.textHidden": "Hidden bookmarks", "DE.Views.BookmarksDialog.textLocation": "Location", @@ -1327,13 +1510,13 @@ "DE.Views.CaptionDialog.textPeriod": "period", "DE.Views.CaptionDialog.textSeparator": "Use separator", "DE.Views.CaptionDialog.textTable": "Table", - "DE.Views.CaptionDialog.textTitle": "Insert Caption", + "DE.Views.CaptionDialog.textTitle": "Insert caption", "DE.Views.CellsAddDialog.textCol": "Columns", "DE.Views.CellsAddDialog.textDown": "Below the cursor", "DE.Views.CellsAddDialog.textLeft": "To the left", "DE.Views.CellsAddDialog.textRight": "To the right", "DE.Views.CellsAddDialog.textRow": "Rows", - "DE.Views.CellsAddDialog.textTitle": "Insert Several", + "DE.Views.CellsAddDialog.textTitle": "Insert several", "DE.Views.CellsAddDialog.textUp": "Above the cursor", "DE.Views.ChartSettings.text3dDepth": "Depth (% of base)", "DE.Views.ChartSettings.text3dHeight": "Height (% of base)", @@ -1371,7 +1554,7 @@ "DE.Views.ControlSettingsDialog.strGeneral": "General", "DE.Views.ControlSettingsDialog.textAdd": "Add", "DE.Views.ControlSettingsDialog.textAppearance": "Appearance", - "DE.Views.ControlSettingsDialog.textApplyAll": "Apply to All", + "DE.Views.ControlSettingsDialog.textApplyAll": "Apply to all", "DE.Views.ControlSettingsDialog.textBox": "Bounding box", "DE.Views.ControlSettingsDialog.textChange": "Edit", "DE.Views.ControlSettingsDialog.textCheckbox": "Check box", @@ -1392,7 +1575,7 @@ "DE.Views.ControlSettingsDialog.textShowAs": "Show as", "DE.Views.ControlSettingsDialog.textSystemColor": "System", "DE.Views.ControlSettingsDialog.textTag": "Tag", - "DE.Views.ControlSettingsDialog.textTitle": "Content Control Settings", + "DE.Views.ControlSettingsDialog.textTitle": "Content control settings", "DE.Views.ControlSettingsDialog.textUnchecked": "Unchecked symbol", "DE.Views.ControlSettingsDialog.textUp": "Up", "DE.Views.ControlSettingsDialog.textValue": "Value", @@ -1449,13 +1632,20 @@ "DE.Views.DateTimeDialog.textLang": "Language", "DE.Views.DateTimeDialog.textUpdate": "Update automatically", "DE.Views.DateTimeDialog.txtTitle": "Date & Time", + "DE.Views.DocProtection.hintProtectDoc": "Protect document", + "DE.Views.DocProtection.txtDocProtectedComment": "Document is protected.
    You may only insert comments to this document.", + "DE.Views.DocProtection.txtDocProtectedForms": "Document is protected.
    You may only fill in forms in this document.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Document is protected.
    You may edit this document, but all changes will be tracked.", + "DE.Views.DocProtection.txtDocProtectedView": "Document is protected.
    You may only view this document.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Enter a password to unprotect document", + "DE.Views.DocProtection.txtProtectDoc": "Protect Document", "DE.Views.DocumentHolder.aboveText": "Above", - "DE.Views.DocumentHolder.addCommentText": "Add Comment", + "DE.Views.DocumentHolder.addCommentText": "Add comment", "DE.Views.DocumentHolder.advancedDropCapText": "Drop Cap Settings", "DE.Views.DocumentHolder.advancedEquationText": "Equation Settings", "DE.Views.DocumentHolder.advancedFrameText": "Frame Advanced Settings", - "DE.Views.DocumentHolder.advancedParagraphText": "Paragraph Advanced Settings", - "DE.Views.DocumentHolder.advancedTableText": "Table Advanced Settings", + "DE.Views.DocumentHolder.advancedParagraphText": "Paragraph advanced settings", + "DE.Views.DocumentHolder.advancedTableText": "Table advanced settings", "DE.Views.DocumentHolder.advancedText": "Advanced Settings", "DE.Views.DocumentHolder.alignmentText": "Alignment", "DE.Views.DocumentHolder.allLinearText": "All - Linear", @@ -1463,10 +1653,10 @@ "DE.Views.DocumentHolder.belowText": "Below", "DE.Views.DocumentHolder.breakBeforeText": "Page break before", "DE.Views.DocumentHolder.bulletsText": "Bullets and Numbering", - "DE.Views.DocumentHolder.cellAlignText": "Cell Vertical Alignment", + "DE.Views.DocumentHolder.cellAlignText": "Cell vertical alignment", "DE.Views.DocumentHolder.cellText": "Cell", "DE.Views.DocumentHolder.centerText": "Center", - "DE.Views.DocumentHolder.chartText": "Chart Advanced Settings", + "DE.Views.DocumentHolder.chartText": "Chart advanced settings", "DE.Views.DocumentHolder.columnText": "Column", "DE.Views.DocumentHolder.currLinearText": "Current - Linear", "DE.Views.DocumentHolder.currProfText": "Current - Professional", @@ -1477,17 +1667,17 @@ "DE.Views.DocumentHolder.direct270Text": "Rotate Text Up", "DE.Views.DocumentHolder.direct90Text": "Rotate Text Down", "DE.Views.DocumentHolder.directHText": "Horizontal", - "DE.Views.DocumentHolder.directionText": "Text Direction", - "DE.Views.DocumentHolder.editChartText": "Edit Data", + "DE.Views.DocumentHolder.directionText": "Text direction", + "DE.Views.DocumentHolder.editChartText": "Edit data", "DE.Views.DocumentHolder.editFooterText": "Edit Footer", "DE.Views.DocumentHolder.editHeaderText": "Edit Header", "DE.Views.DocumentHolder.editHyperlinkText": "Edit Hyperlink", "DE.Views.DocumentHolder.eqToInlineText": "Change to Inline", "DE.Views.DocumentHolder.guestText": "Guest", "DE.Views.DocumentHolder.hyperlinkText": "Hyperlink", - "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignore All", + "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignore all", "DE.Views.DocumentHolder.ignoreSpellText": "Ignore", - "DE.Views.DocumentHolder.imageText": "Image Advanced Settings", + "DE.Views.DocumentHolder.imageText": "Image advanced settings", "DE.Views.DocumentHolder.insertColumnLeftText": "Column Left", "DE.Views.DocumentHolder.insertColumnRightText": "Column Right", "DE.Views.DocumentHolder.insertColumnText": "Insert Column", @@ -1496,15 +1686,15 @@ "DE.Views.DocumentHolder.insertRowText": "Insert Row", "DE.Views.DocumentHolder.insertText": "Insert", "DE.Views.DocumentHolder.keepLinesText": "Keep lines together", - "DE.Views.DocumentHolder.langText": "Select Language", + "DE.Views.DocumentHolder.langText": "Select language", "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Left", "DE.Views.DocumentHolder.loadSpellText": "Loading variants...", - "DE.Views.DocumentHolder.mergeCellsText": "Merge Cells", + "DE.Views.DocumentHolder.mergeCellsText": "Merge cells", "DE.Views.DocumentHolder.moreText": "More variants...", "DE.Views.DocumentHolder.noSpellVariantsText": "No variants", "DE.Views.DocumentHolder.notcriticalErrorTitle": "Warning", - "DE.Views.DocumentHolder.originalSizeText": "Actual Size", + "DE.Views.DocumentHolder.originalSizeText": "Actual size", "DE.Views.DocumentHolder.paragraphText": "Paragraph", "DE.Views.DocumentHolder.removeHyperlinkText": "Remove Hyperlink", "DE.Views.DocumentHolder.rightText": "Right", @@ -1515,9 +1705,9 @@ "DE.Views.DocumentHolder.selectRowText": "Select Row", "DE.Views.DocumentHolder.selectTableText": "Select Table", "DE.Views.DocumentHolder.selectText": "Select", - "DE.Views.DocumentHolder.shapeText": "Shape Advanced Settings", + "DE.Views.DocumentHolder.shapeText": "Shape advanced settings", "DE.Views.DocumentHolder.spellcheckText": "Spellcheck", - "DE.Views.DocumentHolder.splitCellsText": "Split Cell...", + "DE.Views.DocumentHolder.splitCellsText": "Split cell...", "DE.Views.DocumentHolder.splitCellTitleText": "Split Cell", "DE.Views.DocumentHolder.strDelete": "Remove Signature", "DE.Views.DocumentHolder.strDetails": "Signature Details", @@ -1525,7 +1715,7 @@ "DE.Views.DocumentHolder.strSign": "Sign", "DE.Views.DocumentHolder.styleText": "Formatting as Style", "DE.Views.DocumentHolder.tableText": "Table", - "DE.Views.DocumentHolder.textAccept": "Accept Change", + "DE.Views.DocumentHolder.textAccept": "Accept change", "DE.Views.DocumentHolder.textAlign": "Align", "DE.Views.DocumentHolder.textArrange": "Arrange", "DE.Views.DocumentHolder.textArrangeBack": "Send to Background", @@ -1560,7 +1750,7 @@ "DE.Views.DocumentHolder.textPaste": "Paste", "DE.Views.DocumentHolder.textPrevPage": "Previous Page", "DE.Views.DocumentHolder.textRefreshField": "Update field", - "DE.Views.DocumentHolder.textReject": "Reject Change", + "DE.Views.DocumentHolder.textReject": "Reject change", "DE.Views.DocumentHolder.textRemCheckBox": "Remove Checkbox", "DE.Views.DocumentHolder.textRemComboBox": "Remove Combo Box", "DE.Views.DocumentHolder.textRemDropdown": "Remove Dropdown", @@ -1592,9 +1782,9 @@ "DE.Views.DocumentHolder.textUpdateAll": "Update entire table", "DE.Views.DocumentHolder.textUpdatePages": "Update page numbers only", "DE.Views.DocumentHolder.textUpdateTOC": "Update table of contents", - "DE.Views.DocumentHolder.textWrap": "Wrapping Style", + "DE.Views.DocumentHolder.textWrap": "Wrapping style", "DE.Views.DocumentHolder.tipIsLocked": "This element is currently being edited by another user.", - "DE.Views.DocumentHolder.toDictionaryText": "Add to Dictionary", + "DE.Views.DocumentHolder.toDictionaryText": "Add to dictionary", "DE.Views.DocumentHolder.txtAddBottom": "Add bottom border", "DE.Views.DocumentHolder.txtAddFractionBar": "Add fraction bar", "DE.Views.DocumentHolder.txtAddHor": "Add horizontal line", @@ -1605,7 +1795,7 @@ "DE.Views.DocumentHolder.txtAddTop": "Add top border", "DE.Views.DocumentHolder.txtAddVer": "Add vertical line", "DE.Views.DocumentHolder.txtAlignToChar": "Align to character", - "DE.Views.DocumentHolder.txtBehind": "Behind Text", + "DE.Views.DocumentHolder.txtBehind": "Behind text", "DE.Views.DocumentHolder.txtBorderProps": "Border properties", "DE.Views.DocumentHolder.txtBottom": "Bottom", "DE.Views.DocumentHolder.txtColumnAlign": "Column alignment", @@ -1617,8 +1807,8 @@ "DE.Views.DocumentHolder.txtDeleteEq": "Delete equation", "DE.Views.DocumentHolder.txtDeleteGroupChar": "Delete char", "DE.Views.DocumentHolder.txtDeleteRadical": "Delete radical", - "DE.Views.DocumentHolder.txtDistribHor": "Distribute Horizontally", - "DE.Views.DocumentHolder.txtDistribVert": "Distribute Vertically", + "DE.Views.DocumentHolder.txtDistribHor": "Distribute horizontally", + "DE.Views.DocumentHolder.txtDistribVert": "Distribute vertically", "DE.Views.DocumentHolder.txtEmpty": "(Empty)", "DE.Views.DocumentHolder.txtFractionLinear": "Change to linear fraction", "DE.Views.DocumentHolder.txtFractionSkewed": "Change to skewed fraction", @@ -1641,12 +1831,13 @@ "DE.Views.DocumentHolder.txtHideTopLimit": "Hide top limit", "DE.Views.DocumentHolder.txtHideVer": "Hide vertical line", "DE.Views.DocumentHolder.txtIncreaseArg": "Increase argument size", - "DE.Views.DocumentHolder.txtInFront": "In Front of Text", - "DE.Views.DocumentHolder.txtInline": "In Line with Text", + "DE.Views.DocumentHolder.txtInFront": "In front of text", + "DE.Views.DocumentHolder.txtInline": "In line with text", "DE.Views.DocumentHolder.txtInsertArgAfter": "Insert argument after", "DE.Views.DocumentHolder.txtInsertArgBefore": "Insert argument before", "DE.Views.DocumentHolder.txtInsertBreak": "Insert manual break", - "DE.Views.DocumentHolder.txtInsertCaption": "Insert Caption", + "DE.Views.DocumentHolder.txtInsertCaption": "Insert caption", + "DE.Views.DocumentHolder.textSaveAsPicture": "Save as picture", "DE.Views.DocumentHolder.txtInsertEqAfter": "Insert equation after", "DE.Views.DocumentHolder.txtInsertEqBefore": "Insert equation before", "DE.Views.DocumentHolder.txtKeepTextOnly": "Keep text only", @@ -1659,7 +1850,7 @@ "DE.Views.DocumentHolder.txtOverwriteCells": "Overwrite cells", "DE.Views.DocumentHolder.txtPasteSourceFormat": "Keep source formatting", "DE.Views.DocumentHolder.txtPressLink": "Press {0} and click link", - "DE.Views.DocumentHolder.txtPrintSelection": "Print Selection", + "DE.Views.DocumentHolder.txtPrintSelection": "Print selection", "DE.Views.DocumentHolder.txtRemFractionBar": "Remove fraction bar", "DE.Views.DocumentHolder.txtRemLimit": "Remove limit", "DE.Views.DocumentHolder.txtRemoveAccentChar": "Remove accent character", @@ -1687,17 +1878,17 @@ "DE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.
    Are you sure you want to continue?", "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "Update %1 style", - "DE.Views.DocumentHolder.vertAlignText": "Vertical Alignment", + "DE.Views.DocumentHolder.vertAlignText": "Vertical alignment", "DE.Views.DropcapSettingsAdvanced.strBorders": "Borders & Fill", - "DE.Views.DropcapSettingsAdvanced.strDropcap": "Drop Cap", + "DE.Views.DropcapSettingsAdvanced.strDropcap": "Drop cap", "DE.Views.DropcapSettingsAdvanced.strMargins": "Margins", "DE.Views.DropcapSettingsAdvanced.textAlign": "Alignment", "DE.Views.DropcapSettingsAdvanced.textAtLeast": "At least", "DE.Views.DropcapSettingsAdvanced.textAuto": "Auto", - "DE.Views.DropcapSettingsAdvanced.textBackColor": "Background Color", - "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Border Color", + "DE.Views.DropcapSettingsAdvanced.textBackColor": "Background color", + "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Border color", "DE.Views.DropcapSettingsAdvanced.textBorderDesc": "Click on diagram or use buttons to select borders", - "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Border Size", + "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Border size", "DE.Views.DropcapSettingsAdvanced.textBottom": "Bottom", "DE.Views.DropcapSettingsAdvanced.textCenter": "Center", "DE.Views.DropcapSettingsAdvanced.textColumn": "Column", @@ -1722,8 +1913,8 @@ "DE.Views.DropcapSettingsAdvanced.textRelative": "Relative to", "DE.Views.DropcapSettingsAdvanced.textRight": "Right", "DE.Views.DropcapSettingsAdvanced.textRowHeight": "Height in rows", - "DE.Views.DropcapSettingsAdvanced.textTitle": "Drop Cap - Advanced Settings", - "DE.Views.DropcapSettingsAdvanced.textTitleFrame": "Frame - Advanced Settings", + "DE.Views.DropcapSettingsAdvanced.textTitle": "Drop cap - Advanced settings", + "DE.Views.DropcapSettingsAdvanced.textTitleFrame": "Frame - Advanced settings", "DE.Views.DropcapSettingsAdvanced.textTop": "Top", "DE.Views.DropcapSettingsAdvanced.textVertical": "Vertical", "DE.Views.DropcapSettingsAdvanced.textWidth": "Width", @@ -1782,23 +1973,29 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistics", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Subject", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Symbols", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Tags", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Title", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Uploaded", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Words", "DE.Views.FileMenuPanels.DocumentInfo.txtYes": "Yes", + "DE.Views.FileMenuPanels.DocumentInfo.txtDocumentInfo": "Document Info", "DE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Change access rights", "DE.Views.FileMenuPanels.DocumentRights.txtRights": "Persons who have rights", + "DE.Views.FileMenuPanels.DocumentRights.txtAccessRights": "Access Rights", "DE.Views.FileMenuPanels.ProtectDoc.notcriticalErrorTitle": "Warning", "DE.Views.FileMenuPanels.ProtectDoc.strEncrypt": "With password", "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Protect Document", "DE.Views.FileMenuPanels.ProtectDoc.strSignature": "With signature", "DE.Views.FileMenuPanels.ProtectDoc.txtEdit": "Edit document", "DE.Views.FileMenuPanels.ProtectDoc.txtEditWarning": "Editing will remove signatures from the document.
    Continue?", - "DE.Views.FileMenuPanels.ProtectDoc.txtEncrypted": "This document has been protected with password", + "DE.Views.FileMenuPanels.ProtectDoc.txtEncrypted": "A password is required to open this document", "DE.Views.FileMenuPanels.ProtectDoc.txtRequestedSignatures": "This document needs to be signed.", "DE.Views.FileMenuPanels.ProtectDoc.txtSigned": "Valid signatures have been added to the document. The document is protected from editing.", "DE.Views.FileMenuPanels.ProtectDoc.txtSignedInvalid": "Some of the digital signatures in the document are invalid or could not be verified. The document is protected from editing.", "DE.Views.FileMenuPanels.ProtectDoc.txtView": "View signatures", + "DE.Views.FileMenuPanels.ProtectDoc.txtProtectDocument": "Encrypt this document with a password", + "DE.Views.FileMenuPanels.ProtectDoc.txtAddSignature": "Ensure the integrity of the document by adding an
    invisible digital signature", + "DE.Views.FileMenuPanels.ProtectDoc.txtAddedSignature": "Valid signatures have been added to the document.
    The document is protected from editing.", "DE.Views.FileMenuPanels.Settings.okButtonText": "Apply", "DE.Views.FileMenuPanels.Settings.strCoAuthMode": "Co-editing Mode", "DE.Views.FileMenuPanels.Settings.strFast": "Fast", @@ -1854,11 +2051,17 @@ "DE.Views.FileMenuPanels.Settings.txtStopMacrosDesc": "Disable all macros without a notification", "DE.Views.FileMenuPanels.Settings.txtStrictTip": "Use the \"Save\" button to sync the changes you and others make", "DE.Views.FileMenuPanels.Settings.txtUseAltKey": "Use Alt key to navigate the user interface using the keyboard", - "DE.Views.FileMenuPanels.Settings.txtUseOptionKey": "Use ⌘F6 to navigate the user interface using the keyboard", + "DE.Views.FileMenuPanels.Settings.txtUseOptionKey": "Use Option key to navigate the user interface using the keyboard", "DE.Views.FileMenuPanels.Settings.txtWarnMacros": "Show Notification", "DE.Views.FileMenuPanels.Settings.txtWarnMacrosDesc": "Disable all macros with a notification", "DE.Views.FileMenuPanels.Settings.txtWin": "as Windows", "DE.Views.FileMenuPanels.Settings.txtWorkspace": "Workspace", + "DE.Views.FileMenuPanels.Settings.txtAdvancedSettings": "Advanced Settings", + "DE.Views.FileMenuPanels.ViewSaveAs.textDownloadAs": "Download as", + "DE.Views.FileMenuPanels.ViewSaveCopy.textSaveCopyAs": "Save Copy as", + "DE.Views.FileMenuPanels.RecentFiles.txtOpenRecent": "Open Recent", + "DE.Views.FileMenuPanels.Settings.txtQuickPrint": "Show the Quick Print button in the editor header", + "DE.Views.FileMenuPanels.Settings.txtQuickPrintTip": "The document will be printed on the last selected or default printer", "DE.Views.FormSettings.textAlways": "Always", "DE.Views.FormSettings.textAspect": "Lock aspect ratio", "DE.Views.FormSettings.textAtLeast": "At least", @@ -1972,9 +2175,9 @@ "DE.Views.HeaderFooterSettings.textTopRight": "Top right", "DE.Views.HyperlinkSettingsDialog.textDefault": "Selected text fragment", "DE.Views.HyperlinkSettingsDialog.textDisplay": "Display", - "DE.Views.HyperlinkSettingsDialog.textExternal": "External Link", - "DE.Views.HyperlinkSettingsDialog.textInternal": "Place in Document", - "DE.Views.HyperlinkSettingsDialog.textTitle": "Hyperlink Settings", + "DE.Views.HyperlinkSettingsDialog.textExternal": "External link", + "DE.Views.HyperlinkSettingsDialog.textInternal": "Place in document", + "DE.Views.HyperlinkSettingsDialog.textTitle": "Hyperlink settings", "DE.Views.HyperlinkSettingsDialog.textTooltip": "ScreenTip text", "DE.Views.HyperlinkSettingsDialog.textUrl": "Link to", "DE.Views.HyperlinkSettingsDialog.txtBeginning": "Beginning of document", @@ -2015,10 +2218,10 @@ "DE.Views.ImageSettings.txtThrough": "Through", "DE.Views.ImageSettings.txtTight": "Tight", "DE.Views.ImageSettings.txtTopAndBottom": "Top and bottom", - "DE.Views.ImageSettingsAdvanced.strMargins": "Text Padding", + "DE.Views.ImageSettingsAdvanced.strMargins": "Text padding", "DE.Views.ImageSettingsAdvanced.textAbsoluteWH": "Absolute", "DE.Views.ImageSettingsAdvanced.textAlignment": "Alignment", - "DE.Views.ImageSettingsAdvanced.textAlt": "Alternative Text", + "DE.Views.ImageSettingsAdvanced.textAlt": "Alternative text", "DE.Views.ImageSettingsAdvanced.textAltDescription": "Description", "DE.Views.ImageSettingsAdvanced.textAltTip": "The alternative text-based representation of the visual object information, which will be read to the people with vision or cognitive impairments to help them better understand what information there is in the image, autoshape, chart, or table.", "DE.Views.ImageSettingsAdvanced.textAltTitle": "Title", @@ -2026,36 +2229,36 @@ "DE.Views.ImageSettingsAdvanced.textArrows": "Arrows", "DE.Views.ImageSettingsAdvanced.textAspectRatio": "Lock aspect ratio", "DE.Views.ImageSettingsAdvanced.textAutofit": "AutoFit", - "DE.Views.ImageSettingsAdvanced.textBeginSize": "Begin Size", - "DE.Views.ImageSettingsAdvanced.textBeginStyle": "Begin Style", + "DE.Views.ImageSettingsAdvanced.textBeginSize": "Begin size", + "DE.Views.ImageSettingsAdvanced.textBeginStyle": "Begin style", "DE.Views.ImageSettingsAdvanced.textBelow": "below", "DE.Views.ImageSettingsAdvanced.textBevel": "Bevel", "DE.Views.ImageSettingsAdvanced.textBottom": "Bottom", - "DE.Views.ImageSettingsAdvanced.textBottomMargin": "Bottom Margin", - "DE.Views.ImageSettingsAdvanced.textBtnWrap": "Text Wrapping", - "DE.Views.ImageSettingsAdvanced.textCapType": "Cap Type", + "DE.Views.ImageSettingsAdvanced.textBottomMargin": "Bottom margin", + "DE.Views.ImageSettingsAdvanced.textBtnWrap": "Text wrapping", + "DE.Views.ImageSettingsAdvanced.textCapType": "Cap type", "DE.Views.ImageSettingsAdvanced.textCenter": "Center", "DE.Views.ImageSettingsAdvanced.textCharacter": "Character", "DE.Views.ImageSettingsAdvanced.textColumn": "Column", - "DE.Views.ImageSettingsAdvanced.textDistance": "Distance from Text", - "DE.Views.ImageSettingsAdvanced.textEndSize": "End Size", - "DE.Views.ImageSettingsAdvanced.textEndStyle": "End Style", + "DE.Views.ImageSettingsAdvanced.textDistance": "Distance from text", + "DE.Views.ImageSettingsAdvanced.textEndSize": "End size", + "DE.Views.ImageSettingsAdvanced.textEndStyle": "End style", "DE.Views.ImageSettingsAdvanced.textFlat": "Flat", "DE.Views.ImageSettingsAdvanced.textFlipped": "Flipped", "DE.Views.ImageSettingsAdvanced.textHeight": "Height", "DE.Views.ImageSettingsAdvanced.textHorizontal": "Horizontal", "DE.Views.ImageSettingsAdvanced.textHorizontally": "Horizontally", - "DE.Views.ImageSettingsAdvanced.textJoinType": "Join Type", + "DE.Views.ImageSettingsAdvanced.textJoinType": "Join type", "DE.Views.ImageSettingsAdvanced.textKeepRatio": "Constant proportions", "DE.Views.ImageSettingsAdvanced.textLeft": "Left", - "DE.Views.ImageSettingsAdvanced.textLeftMargin": "Left Margin", + "DE.Views.ImageSettingsAdvanced.textLeftMargin": "Left margin", "DE.Views.ImageSettingsAdvanced.textLine": "Line", - "DE.Views.ImageSettingsAdvanced.textLineStyle": "Line Style", + "DE.Views.ImageSettingsAdvanced.textLineStyle": "Line style", "DE.Views.ImageSettingsAdvanced.textMargin": "Margin", "DE.Views.ImageSettingsAdvanced.textMiter": "Miter", "DE.Views.ImageSettingsAdvanced.textMove": "Move object with text", "DE.Views.ImageSettingsAdvanced.textOptions": "Options", - "DE.Views.ImageSettingsAdvanced.textOriginalSize": "Actual Size", + "DE.Views.ImageSettingsAdvanced.textOriginalSize": "Actual size", "DE.Views.ImageSettingsAdvanced.textOverlap": "Allow overlap", "DE.Views.ImageSettingsAdvanced.textPage": "Page", "DE.Views.ImageSettingsAdvanced.textParagraph": "Paragraph", @@ -2065,27 +2268,27 @@ "DE.Views.ImageSettingsAdvanced.textRelativeWH": "Relative", "DE.Views.ImageSettingsAdvanced.textResizeFit": "Resize shape to fit text", "DE.Views.ImageSettingsAdvanced.textRight": "Right", - "DE.Views.ImageSettingsAdvanced.textRightMargin": "Right Margin", + "DE.Views.ImageSettingsAdvanced.textRightMargin": "Right margin", "DE.Views.ImageSettingsAdvanced.textRightOf": "to the right of", "DE.Views.ImageSettingsAdvanced.textRotation": "Rotation", "DE.Views.ImageSettingsAdvanced.textRound": "Round", - "DE.Views.ImageSettingsAdvanced.textShape": "Shape Settings", + "DE.Views.ImageSettingsAdvanced.textShape": "Shape settings", "DE.Views.ImageSettingsAdvanced.textSize": "Size", "DE.Views.ImageSettingsAdvanced.textSquare": "Square", - "DE.Views.ImageSettingsAdvanced.textTextBox": "Text Box", - "DE.Views.ImageSettingsAdvanced.textTitle": "Image - Advanced Settings", - "DE.Views.ImageSettingsAdvanced.textTitleChart": "Chart - Advanced Settings", - "DE.Views.ImageSettingsAdvanced.textTitleShape": "Shape - Advanced Settings", + "DE.Views.ImageSettingsAdvanced.textTextBox": "Text box", + "DE.Views.ImageSettingsAdvanced.textTitle": "Image - Advanced settings", + "DE.Views.ImageSettingsAdvanced.textTitleChart": "Chart - Advanced settings", + "DE.Views.ImageSettingsAdvanced.textTitleShape": "Shape - Advanced settings", "DE.Views.ImageSettingsAdvanced.textTop": "Top", - "DE.Views.ImageSettingsAdvanced.textTopMargin": "Top Margin", + "DE.Views.ImageSettingsAdvanced.textTopMargin": "Top margin", "DE.Views.ImageSettingsAdvanced.textVertical": "Vertical", "DE.Views.ImageSettingsAdvanced.textVertically": "Vertically", "DE.Views.ImageSettingsAdvanced.textWeightArrows": "Weights & Arrows", "DE.Views.ImageSettingsAdvanced.textWidth": "Width", - "DE.Views.ImageSettingsAdvanced.textWrap": "Wrapping Style", - "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Behind Text", - "DE.Views.ImageSettingsAdvanced.textWrapInFrontTooltip": "In Front of Text", - "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "In Line with Text", + "DE.Views.ImageSettingsAdvanced.textWrap": "Wrapping style", + "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Behind text", + "DE.Views.ImageSettingsAdvanced.textWrapInFrontTooltip": "In front of text", + "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "In line with text", "DE.Views.ImageSettingsAdvanced.textWrapSquareTooltip": "Square", "DE.Views.ImageSettingsAdvanced.textWrapThroughTooltip": "Through", "DE.Views.ImageSettingsAdvanced.textWrapTightTooltip": "Tight", @@ -2113,11 +2316,11 @@ "DE.Views.LineNumbersDialog.textForward": "This point forward", "DE.Views.LineNumbersDialog.textFromText": "From text", "DE.Views.LineNumbersDialog.textNumbering": "Numbering", - "DE.Views.LineNumbersDialog.textRestartEachPage": "Restart Each Page", - "DE.Views.LineNumbersDialog.textRestartEachSection": "Restart Each Section", + "DE.Views.LineNumbersDialog.textRestartEachPage": "Restart each page", + "DE.Views.LineNumbersDialog.textRestartEachSection": "Restart each section", "DE.Views.LineNumbersDialog.textSection": "Current section", "DE.Views.LineNumbersDialog.textStartAt": "Start at", - "DE.Views.LineNumbersDialog.textTitle": "Line Numbers", + "DE.Views.LineNumbersDialog.textTitle": "Line numbers", "DE.Views.LineNumbersDialog.txtAutoText": "Auto", "DE.Views.Links.capBtnAddText": "Add Text", "DE.Views.Links.capBtnBookmarks": "Bookmark", @@ -2166,13 +2369,13 @@ "DE.Views.ListSettingsDialog.txtAlign": "Alignment", "DE.Views.ListSettingsDialog.txtBullet": "Bullet", "DE.Views.ListSettingsDialog.txtColor": "Color", - "DE.Views.ListSettingsDialog.txtFont": "Font and Symbol", + "DE.Views.ListSettingsDialog.txtFont": "Font and symbol", "DE.Views.ListSettingsDialog.txtLikeText": "Like a text", "DE.Views.ListSettingsDialog.txtNewBullet": "New bullet", "DE.Views.ListSettingsDialog.txtNone": "None", "DE.Views.ListSettingsDialog.txtSize": "Size", "DE.Views.ListSettingsDialog.txtSymbol": "Symbol", - "DE.Views.ListSettingsDialog.txtTitle": "List Settings", + "DE.Views.ListSettingsDialog.txtTitle": "List settings", "DE.Views.ListSettingsDialog.txtType": "Type", "DE.Views.MailMergeEmailDlg.filePlaceholder": "PDF", "DE.Views.MailMergeEmailDlg.okButtonText": "Send", @@ -2184,8 +2387,8 @@ "DE.Views.MailMergeEmailDlg.textFrom": "From", "DE.Views.MailMergeEmailDlg.textHTML": "HTML", "DE.Views.MailMergeEmailDlg.textMessage": "Message", - "DE.Views.MailMergeEmailDlg.textSubject": "Subject Line", - "DE.Views.MailMergeEmailDlg.textTitle": "Send to Email", + "DE.Views.MailMergeEmailDlg.textSubject": "Subject line", + "DE.Views.MailMergeEmailDlg.textTitle": "Send to email", "DE.Views.MailMergeEmailDlg.textTo": "To", "DE.Views.MailMergeEmailDlg.textWarning": "Warning!", "DE.Views.MailMergeEmailDlg.textWarningMsg": "Please note that mailing cannot be stopped once your click the 'Send' button.", @@ -2244,7 +2447,7 @@ "DE.Views.NoteSettingsDialog.textApply": "Apply", "DE.Views.NoteSettingsDialog.textApplyTo": "Apply changes to", "DE.Views.NoteSettingsDialog.textContinue": "Continuous", - "DE.Views.NoteSettingsDialog.textCustom": "Custom Mark", + "DE.Views.NoteSettingsDialog.textCustom": "Custom mark", "DE.Views.NoteSettingsDialog.textDocEnd": "End of document", "DE.Views.NoteSettingsDialog.textDocument": "Whole document", "DE.Views.NoteSettingsDialog.textEachPage": "Restart each page", @@ -2255,16 +2458,16 @@ "DE.Views.NoteSettingsDialog.textInsert": "Insert", "DE.Views.NoteSettingsDialog.textLocation": "Location", "DE.Views.NoteSettingsDialog.textNumbering": "Numbering", - "DE.Views.NoteSettingsDialog.textNumFormat": "Number Format", + "DE.Views.NoteSettingsDialog.textNumFormat": "Number format", "DE.Views.NoteSettingsDialog.textPageBottom": "Bottom of page", "DE.Views.NoteSettingsDialog.textSectEnd": "End of section", "DE.Views.NoteSettingsDialog.textSection": "Current section", "DE.Views.NoteSettingsDialog.textStart": "Start at", "DE.Views.NoteSettingsDialog.textTextBottom": "Below text", - "DE.Views.NoteSettingsDialog.textTitle": "Notes Settings", - "DE.Views.NotesRemoveDialog.textEnd": "Delete All Endnotes", - "DE.Views.NotesRemoveDialog.textFoot": "Delete All Footnotes", - "DE.Views.NotesRemoveDialog.textTitle": "Delete Notes", + "DE.Views.NoteSettingsDialog.textTitle": "Notes settings", + "DE.Views.NotesRemoveDialog.textEnd": "Delete all endnotes", + "DE.Views.NotesRemoveDialog.textFoot": "Delete all footnotes", + "DE.Views.NotesRemoveDialog.textTitle": "Delete notes", "DE.Views.PageMarginsDialog.notcriticalErrorTitle": "Warning", "DE.Views.PageMarginsDialog.textBottom": "Bottom", "DE.Views.PageMarginsDialog.textGutter": "Gutter", @@ -2286,7 +2489,7 @@ "DE.Views.PageMarginsDialog.txtMarginsW": "Left and right margins are too wide for a given page width", "DE.Views.PageSizeDialog.textHeight": "Height", "DE.Views.PageSizeDialog.textPreset": "Preset", - "DE.Views.PageSizeDialog.textTitle": "Page Size", + "DE.Views.PageSizeDialog.textTitle": "Page size", "DE.Views.PageSizeDialog.textWidth": "Width", "DE.Views.PageSizeDialog.txtCustom": "Custom", "DE.Views.PageThumbnails.textClosePanel": "Close page thumbnails", @@ -2320,7 +2523,7 @@ "DE.Views.ParagraphSettingsAdvanced.strDoubleStrike": "Double strikethrough", "DE.Views.ParagraphSettingsAdvanced.strIndent": "Indents", "DE.Views.ParagraphSettingsAdvanced.strIndentsLeftText": "Left", - "DE.Views.ParagraphSettingsAdvanced.strIndentsLineSpacing": "Line Spacing", + "DE.Views.ParagraphSettingsAdvanced.strIndentsLineSpacing": "Line spacing", "DE.Views.ParagraphSettingsAdvanced.strIndentsOutlinelevel": "Outline level", "DE.Views.ParagraphSettingsAdvanced.strIndentsRightText": "Right", "DE.Views.ParagraphSettingsAdvanced.strIndentsSpacingAfter": "After", @@ -2332,7 +2535,7 @@ "DE.Views.ParagraphSettingsAdvanced.strOrphan": "Orphan control", "DE.Views.ParagraphSettingsAdvanced.strParagraphFont": "Font", "DE.Views.ParagraphSettingsAdvanced.strParagraphIndents": "Indents & Spacing", - "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Line & Page Breaks", + "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Line & Page breaks", "DE.Views.ParagraphSettingsAdvanced.strParagraphPosition": "Placement", "DE.Views.ParagraphSettingsAdvanced.strSmallCaps": "Small caps", "DE.Views.ParagraphSettingsAdvanced.strSomeParagraphSpace": "Don't add interval between paragraphs of the same style", @@ -2346,26 +2549,26 @@ "DE.Views.ParagraphSettingsAdvanced.textAll": "All", "DE.Views.ParagraphSettingsAdvanced.textAtLeast": "At least", "DE.Views.ParagraphSettingsAdvanced.textAuto": "Multiple", - "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Background Color", - "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Basic Text", - "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Border Color", + "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Background color", + "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Basic text", + "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Border color", "DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Click on diagram or use buttons to select borders and apply chosen style to them", - "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Border Size", + "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Border size", "DE.Views.ParagraphSettingsAdvanced.textBottom": "Bottom", "DE.Views.ParagraphSettingsAdvanced.textCentered": "Centered", - "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Character Spacing", + "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Character spacing", "DE.Views.ParagraphSettingsAdvanced.textContext": "Contextual", - "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Contextual and Discretionary", - "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Contextual, Historical and Discretionary", - "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Contextual and Historical", - "DE.Views.ParagraphSettingsAdvanced.textDefault": "Default Tab", + "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Contextual and discretionary", + "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Contextual, historical and discretionary", + "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Contextual and historical", + "DE.Views.ParagraphSettingsAdvanced.textDefault": "Default tab", "DE.Views.ParagraphSettingsAdvanced.textDiscret": "Discretionary", "DE.Views.ParagraphSettingsAdvanced.textEffects": "Effects", "DE.Views.ParagraphSettingsAdvanced.textExact": "Exactly", "DE.Views.ParagraphSettingsAdvanced.textFirstLine": "First line", "DE.Views.ParagraphSettingsAdvanced.textHanging": "Hanging", "DE.Views.ParagraphSettingsAdvanced.textHistorical": "Historical", - "DE.Views.ParagraphSettingsAdvanced.textHistoricalDiscret": "Historical and Discretionary", + "DE.Views.ParagraphSettingsAdvanced.textHistoricalDiscret": "Historical and discretionary", "DE.Views.ParagraphSettingsAdvanced.textJustified": "Justified", "DE.Views.ParagraphSettingsAdvanced.textLeader": "Leader", "DE.Views.ParagraphSettingsAdvanced.textLeft": "Left", @@ -2373,25 +2576,25 @@ "DE.Views.ParagraphSettingsAdvanced.textLigatures": "Ligatures", "DE.Views.ParagraphSettingsAdvanced.textNone": "None", "DE.Views.ParagraphSettingsAdvanced.textNoneSpecial": "(none)", - "DE.Views.ParagraphSettingsAdvanced.textOpenType": "OpenType Features", + "DE.Views.ParagraphSettingsAdvanced.textOpenType": "OpenType features", "DE.Views.ParagraphSettingsAdvanced.textPosition": "Position", "DE.Views.ParagraphSettingsAdvanced.textRemove": "Remove", - "DE.Views.ParagraphSettingsAdvanced.textRemoveAll": "Remove All", + "DE.Views.ParagraphSettingsAdvanced.textRemoveAll": "Remove all", "DE.Views.ParagraphSettingsAdvanced.textRight": "Right", "DE.Views.ParagraphSettingsAdvanced.textSet": "Specify", "DE.Views.ParagraphSettingsAdvanced.textSpacing": "Spacing", "DE.Views.ParagraphSettingsAdvanced.textStandard": "Standard only", - "DE.Views.ParagraphSettingsAdvanced.textStandardContext": "Standard and Contextual", - "DE.Views.ParagraphSettingsAdvanced.textStandardContextDiscret": "Standard, Contextual and Discretionary", - "DE.Views.ParagraphSettingsAdvanced.textStandardContextHist": "Standard, Contextual and Historical", - "DE.Views.ParagraphSettingsAdvanced.textStandardDiscret": "Standard and Discretionary", - "DE.Views.ParagraphSettingsAdvanced.textStandardHistDiscret": "Standard, Historical and Discretionary", - "DE.Views.ParagraphSettingsAdvanced.textStandardHistorical": "Standard and Historical", + "DE.Views.ParagraphSettingsAdvanced.textStandardContext": "Standard and contextual", + "DE.Views.ParagraphSettingsAdvanced.textStandardContextDiscret": "Standard, contextual and discretionary", + "DE.Views.ParagraphSettingsAdvanced.textStandardContextHist": "Standard, contextual and historical", + "DE.Views.ParagraphSettingsAdvanced.textStandardDiscret": "Standard and discretionary", + "DE.Views.ParagraphSettingsAdvanced.textStandardHistDiscret": "Standard, historical and discretionary", + "DE.Views.ParagraphSettingsAdvanced.textStandardHistorical": "Standard and historical", "DE.Views.ParagraphSettingsAdvanced.textTabCenter": "Center", "DE.Views.ParagraphSettingsAdvanced.textTabLeft": "Left", - "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Tab Position", + "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Tab position", "DE.Views.ParagraphSettingsAdvanced.textTabRight": "Right", - "DE.Views.ParagraphSettingsAdvanced.textTitle": "Paragraph - Advanced Settings", + "DE.Views.ParagraphSettingsAdvanced.textTitle": "Paragraph - Advanced settings", "DE.Views.ParagraphSettingsAdvanced.textTop": "Top", "DE.Views.ParagraphSettingsAdvanced.tipAll": "Set outer border and all inner lines", "DE.Views.ParagraphSettingsAdvanced.tipBottom": "Set bottom border only", @@ -2403,6 +2606,45 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Set top border only", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "No borders", + "DE.Views.ProtectDialog.textComments": "Comments", + "DE.Views.ProtectDialog.textForms": "Filling forms", + "DE.Views.ProtectDialog.textReview": "Tracked changes", + "DE.Views.ProtectDialog.textView": "No changes (Read only)", + "DE.Views.ProtectDialog.txtAllow": "Allow only this type of editing in the document", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Confirmation password is not identical", + "DE.Views.ProtectDialog.txtOptional": "optional", + "DE.Views.ProtectDialog.txtPassword": "Password", + "DE.Views.ProtectDialog.txtProtect": "Protect", + "DE.Views.ProtectDialog.txtRepeat": "Repeat password", + "DE.Views.ProtectDialog.txtTitle": "Protect", + "DE.Views.ProtectDialog.txtWarning": "Warning: If you lose or forget the password, it cannot be recovered. Please keep it in a safe place.", + "DE.Views.PrintWithPreview.txtPrint": "Print", + "DE.Views.PrintWithPreview.txtPrintPdf": "Print to PDF", + "DE.Views.PrintWithPreview.txtPrintRange": "Print range", + "DE.Views.PrintWithPreview.txtCurrentPage": "Current page", + "DE.Views.PrintWithPreview.txtAllPages": "All pages", + "DE.Views.PrintWithPreview.txtSelection": "Selection", + "DE.Views.PrintWithPreview.txtCustomPages": "Custom print", + "DE.Views.PrintWithPreview.txtPageSize": "Page size", + "DE.Views.PrintWithPreview.txtPageOrientation": "Page orientation", + "DE.Views.PrintWithPreview.txtPortrait": "Portrait", + "DE.Views.PrintWithPreview.txtLandscape": "Landscape", + "DE.Views.PrintWithPreview.txtCustom": "Custom", + "DE.Views.PrintWithPreview.txtMargins": "Margins", + "DE.Views.PrintWithPreview.txtTop": "Top", + "DE.Views.PrintWithPreview.txtBottom": "Bottom", + "DE.Views.PrintWithPreview.txtLeft": "Left", + "DE.Views.PrintWithPreview.txtRight": "Right", + "DE.Views.PrintWithPreview.txtPage": "Page", + "DE.Views.PrintWithPreview.txtOf": "of {0}", + "DE.Views.PrintWithPreview.txtPageNumInvalid": "Page number invalid", + "DE.Views.PrintWithPreview.txtPages": "Pages", + "DE.Views.PrintWithPreview.textMarginsLast": "Last Custom", + "DE.Views.PrintWithPreview.textMarginsNormal": "Normal", + "DE.Views.PrintWithPreview.textMarginsUsNormal": "US Normal", + "DE.Views.PrintWithPreview.textMarginsNarrow": "Narrow", + "DE.Views.PrintWithPreview.textMarginsModerate": "Moderate", + "DE.Views.PrintWithPreview.textMarginsWide": "Wide", "DE.Views.RightMenu.txtChartSettings": "Chart settings", "DE.Views.RightMenu.txtFormSettings": "Form Settings", "DE.Views.RightMenu.txtHeaderFooterSettings": "Header and footer settings", @@ -2504,20 +2746,20 @@ "DE.Views.Statusbar.tipZoomIn": "Zoom in", "DE.Views.Statusbar.tipZoomOut": "Zoom out", "DE.Views.Statusbar.txtPageNumInvalid": "Page number invalid", - "DE.Views.StyleTitleDialog.textHeader": "Create New Style", + "DE.Views.StyleTitleDialog.textHeader": "Create new style", "DE.Views.StyleTitleDialog.textNextStyle": "Next paragraph style", "DE.Views.StyleTitleDialog.textTitle": "Title", "DE.Views.StyleTitleDialog.txtEmpty": "This field is required", "DE.Views.StyleTitleDialog.txtNotEmpty": "Field must not be empty", "DE.Views.StyleTitleDialog.txtSameAs": "Same as created new style", - "DE.Views.TableFormulaDialog.textBookmark": "Paste Bookmark", - "DE.Views.TableFormulaDialog.textFormat": "Number Format", + "DE.Views.TableFormulaDialog.textBookmark": "Paste bookmark", + "DE.Views.TableFormulaDialog.textFormat": "Number format", "DE.Views.TableFormulaDialog.textFormula": "Formula", - "DE.Views.TableFormulaDialog.textInsertFunction": "Paste Function", - "DE.Views.TableFormulaDialog.textTitle": "Formula Settings", + "DE.Views.TableFormulaDialog.textInsertFunction": "Paste function", + "DE.Views.TableFormulaDialog.textTitle": "Formula settings", "DE.Views.TableOfContentsSettings.strAlign": "Right align page numbers", "DE.Views.TableOfContentsSettings.strFullCaption": "Include label and number", - "DE.Views.TableOfContentsSettings.strLinks": "Format Table of Contents as links", + "DE.Views.TableOfContentsSettings.strLinks": "Format table of contents as links", "DE.Views.TableOfContentsSettings.strLinksOF": "Format table of figures as links", "DE.Views.TableOfContentsSettings.strShowPages": "Show page numbers", "DE.Views.TableOfContentsSettings.textBuildTable": "Build table of contents from", @@ -2535,8 +2777,8 @@ "DE.Views.TableOfContentsSettings.textStyle": "Style", "DE.Views.TableOfContentsSettings.textStyles": "Styles", "DE.Views.TableOfContentsSettings.textTable": "Table", - "DE.Views.TableOfContentsSettings.textTitle": "Table of Contents", - "DE.Views.TableOfContentsSettings.textTitleTOF": "Table of Figures", + "DE.Views.TableOfContentsSettings.textTitle": "Table of contents", + "DE.Views.TableOfContentsSettings.textTitleTOF": "Table of figures", "DE.Views.TableOfContentsSettings.txtCentered": "Centered", "DE.Views.TableOfContentsSettings.txtClassic": "Classic", "DE.Views.TableOfContentsSettings.txtCurrent": "Current", @@ -2613,33 +2855,33 @@ "DE.Views.TableSettingsAdvanced.textAlign": "Alignment", "DE.Views.TableSettingsAdvanced.textAlignment": "Alignment", "DE.Views.TableSettingsAdvanced.textAllowSpacing": "Spacing between cells", - "DE.Views.TableSettingsAdvanced.textAlt": "Alternative Text", + "DE.Views.TableSettingsAdvanced.textAlt": "Alternative text", "DE.Views.TableSettingsAdvanced.textAltDescription": "Description", "DE.Views.TableSettingsAdvanced.textAltTip": "The alternative text-based representation of the visual object information, which will be read to the people with vision or cognitive impairments to help them better understand what information there is in the image, autoshape, chart, or table.", "DE.Views.TableSettingsAdvanced.textAltTitle": "Title", "DE.Views.TableSettingsAdvanced.textAnchorText": "Text", "DE.Views.TableSettingsAdvanced.textAutofit": "Automatically resize to fit contents", - "DE.Views.TableSettingsAdvanced.textBackColor": "Cell Background", + "DE.Views.TableSettingsAdvanced.textBackColor": "Cell background", "DE.Views.TableSettingsAdvanced.textBelow": "below", - "DE.Views.TableSettingsAdvanced.textBorderColor": "Border Color", + "DE.Views.TableSettingsAdvanced.textBorderColor": "Border color", "DE.Views.TableSettingsAdvanced.textBorderDesc": "Click on diagram or use buttons to select borders and apply chosen style to them", "DE.Views.TableSettingsAdvanced.textBordersBackgroung": "Borders & Background", - "DE.Views.TableSettingsAdvanced.textBorderWidth": "Border Size", + "DE.Views.TableSettingsAdvanced.textBorderWidth": "Border size", "DE.Views.TableSettingsAdvanced.textBottom": "Bottom", - "DE.Views.TableSettingsAdvanced.textCellOptions": "Cell Options", + "DE.Views.TableSettingsAdvanced.textCellOptions": "Cell options", "DE.Views.TableSettingsAdvanced.textCellProps": "Cell", - "DE.Views.TableSettingsAdvanced.textCellSize": "Cell Size", + "DE.Views.TableSettingsAdvanced.textCellSize": "Cell size", "DE.Views.TableSettingsAdvanced.textCenter": "Center", "DE.Views.TableSettingsAdvanced.textCenterTooltip": "Center", "DE.Views.TableSettingsAdvanced.textCheckMargins": "Use default margins", - "DE.Views.TableSettingsAdvanced.textDefaultMargins": "Default Cell Margins", - "DE.Views.TableSettingsAdvanced.textDistance": "Distance from Text", + "DE.Views.TableSettingsAdvanced.textDefaultMargins": "Default cell margins", + "DE.Views.TableSettingsAdvanced.textDistance": "Distance from text", "DE.Views.TableSettingsAdvanced.textHorizontal": "Horizontal", - "DE.Views.TableSettingsAdvanced.textIndLeft": "Indent from Left", + "DE.Views.TableSettingsAdvanced.textIndLeft": "Indent from left", "DE.Views.TableSettingsAdvanced.textLeft": "Left", "DE.Views.TableSettingsAdvanced.textLeftTooltip": "Left", "DE.Views.TableSettingsAdvanced.textMargin": "Margin", - "DE.Views.TableSettingsAdvanced.textMargins": "Cell Margins", + "DE.Views.TableSettingsAdvanced.textMargins": "Cell margins", "DE.Views.TableSettingsAdvanced.textMeasure": "Measure in", "DE.Views.TableSettingsAdvanced.textMove": "Move object with text", "DE.Views.TableSettingsAdvanced.textOnlyCells": "For selected cells only", @@ -2654,18 +2896,18 @@ "DE.Views.TableSettingsAdvanced.textRightOf": "to the right of", "DE.Views.TableSettingsAdvanced.textRightTooltip": "Right", "DE.Views.TableSettingsAdvanced.textTable": "Table", - "DE.Views.TableSettingsAdvanced.textTableBackColor": "Table Background", - "DE.Views.TableSettingsAdvanced.textTablePosition": "Table Position", - "DE.Views.TableSettingsAdvanced.textTableSize": "Table Size", - "DE.Views.TableSettingsAdvanced.textTitle": "Table - Advanced Settings", + "DE.Views.TableSettingsAdvanced.textTableBackColor": "Table background", + "DE.Views.TableSettingsAdvanced.textTablePosition": "Table position", + "DE.Views.TableSettingsAdvanced.textTableSize": "Table size", + "DE.Views.TableSettingsAdvanced.textTitle": "Table - Advanced settings", "DE.Views.TableSettingsAdvanced.textTop": "Top", "DE.Views.TableSettingsAdvanced.textVertical": "Vertical", "DE.Views.TableSettingsAdvanced.textWidth": "Width", "DE.Views.TableSettingsAdvanced.textWidthSpaces": "Width & Spaces", - "DE.Views.TableSettingsAdvanced.textWrap": "Text Wrapping", + "DE.Views.TableSettingsAdvanced.textWrap": "Text wrapping", "DE.Views.TableSettingsAdvanced.textWrapNoneTooltip": "Inline table", "DE.Views.TableSettingsAdvanced.textWrapParallelTooltip": "Flow table", - "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Wrapping Style", + "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Wrapping style", "DE.Views.TableSettingsAdvanced.textWrapText": "Wrap text", "DE.Views.TableSettingsAdvanced.tipAll": "Set outer border and all inner lines", "DE.Views.TableSettingsAdvanced.tipCellAll": "Set borders for inner cells only", @@ -2689,7 +2931,7 @@ "DE.Views.TableToTextDialog.textSemicolon": "Semicolons", "DE.Views.TableToTextDialog.textSeparator": "Separate text with", "DE.Views.TableToTextDialog.textTab": "Tabs", - "DE.Views.TableToTextDialog.textTitle": "Convert Table to Text", + "DE.Views.TableToTextDialog.textTitle": "Convert table to text", "DE.Views.TextArtSettings.strColor": "Color", "DE.Views.TextArtSettings.strFill": "Fill", "DE.Views.TextArtSettings.strSize": "Size", @@ -2713,7 +2955,7 @@ "DE.Views.TextArtSettings.tipAddGradientPoint": "Add gradient point", "DE.Views.TextArtSettings.tipRemoveGradientPoint": "Remove gradient point", "DE.Views.TextArtSettings.txtNoBorders": "No Line", - "DE.Views.TextToTableDialog.textAutofit": "Autofit Behavior", + "DE.Views.TextToTableDialog.textAutofit": "Autofit behavior", "DE.Views.TextToTableDialog.textColumns": "Columns", "DE.Views.TextToTableDialog.textContents": "Autofit to contents", "DE.Views.TextToTableDialog.textEmpty": "You must type a character for the custom separator.", @@ -2722,10 +2964,10 @@ "DE.Views.TextToTableDialog.textPara": "Paragraphs", "DE.Views.TextToTableDialog.textRows": "Rows", "DE.Views.TextToTableDialog.textSemicolon": "Semicolons", - "DE.Views.TextToTableDialog.textSeparator": "Separate Text at", + "DE.Views.TextToTableDialog.textSeparator": "Separate text at", "DE.Views.TextToTableDialog.textTab": "Tabs", - "DE.Views.TextToTableDialog.textTableSize": "Table Size", - "DE.Views.TextToTableDialog.textTitle": "Convert Text to Table", + "DE.Views.TextToTableDialog.textTableSize": "Table size", + "DE.Views.TextToTableDialog.textTitle": "Convert text to table", "DE.Views.TextToTableDialog.textWindow": "Autofit to window", "DE.Views.TextToTableDialog.txtAutoText": "Auto", "DE.Views.Toolbar.capBtnAddComment": "Add Comment", @@ -2741,6 +2983,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Image", "DE.Views.Toolbar.capBtnInsPagebreak": "Breaks", "DE.Views.Toolbar.capBtnInsShape": "Shape", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Symbol", "DE.Views.Toolbar.capBtnInsTable": "Table", "DE.Views.Toolbar.capBtnInsTextart": "Text Art", @@ -2887,15 +3130,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Increase indent", "DE.Views.Toolbar.tipInsertChart": "Insert chart", "DE.Views.Toolbar.tipInsertEquation": "Insert equation", + "DE.Views.Toolbar.tipInsertHorizontalText": "Insert horizontal text box", "DE.Views.Toolbar.tipInsertImage": "Insert image", "DE.Views.Toolbar.tipInsertNum": "Insert Page Number", "DE.Views.Toolbar.tipInsertShape": "Insert autoshape", + "DE.Views.Toolbar.tipInsertSmartArt": "Insert SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Insert symbol", "DE.Views.Toolbar.tipInsertTable": "Insert table", - "DE.Views.Toolbar.tipInsertHorizontalText": "Insert horizontal text box", - "DE.Views.Toolbar.tipInsertVerticalText": "Insert vertical text box", "DE.Views.Toolbar.tipInsertText": "Insert text box", "DE.Views.Toolbar.tipInsertTextArt": "Insert Text Art", + "DE.Views.Toolbar.tipInsertVerticalText": "Insert vertical text box", "DE.Views.Toolbar.tipLineNumbers": "Show line numbers", "DE.Views.Toolbar.tipLineSpace": "Paragraph line spacing", "DE.Views.Toolbar.tipMailRecepients": "Mail merge", @@ -2923,7 +3167,7 @@ "DE.Views.Toolbar.tipPageSize": "Page size", "DE.Views.Toolbar.tipParagraphStyle": "Paragraph Style", "DE.Views.Toolbar.tipPaste": "Paste", - "DE.Views.Toolbar.tipPrColor": "Paragraph background color", + "DE.Views.Toolbar.tipPrColor": "Shading", "DE.Views.Toolbar.tipPrint": "Print", "DE.Views.Toolbar.tipRedo": "Redo", "DE.Views.Toolbar.tipSave": "Save", @@ -2962,13 +3206,15 @@ "DE.Views.Toolbar.txtScheme7": "Equity", "DE.Views.Toolbar.txtScheme8": "Flow", "DE.Views.Toolbar.txtScheme9": "Foundry", - "DE.Views.ViewTab.textAlwaysShowToolbar": "Always show toolbar", - "DE.Views.ViewTab.textDarkDocument": "Dark document", + "DE.Views.ViewTab.textAlwaysShowToolbar": "Always Show Toolbar", + "DE.Views.ViewTab.textDarkDocument": "Dark Document", "DE.Views.ViewTab.textFitToPage": "Fit To Page", "DE.Views.ViewTab.textFitToWidth": "Fit To Width", - "DE.Views.ViewTab.textInterfaceTheme": "Interface theme", + "DE.Views.ViewTab.textInterfaceTheme": "Interface Theme", + "DE.Views.ViewTab.textLeftMenu": "Left Panel", "DE.Views.ViewTab.textNavigation": "Navigation", "DE.Views.ViewTab.textOutline": "Headings", + "DE.Views.ViewTab.textRightMenu": "Right Panel", "DE.Views.ViewTab.textRulers": "Rulers", "DE.Views.ViewTab.textStatusBar": "Status Bar", "DE.Views.ViewTab.textZoom": "Zoom", @@ -2982,8 +3228,8 @@ "DE.Views.WatermarkSettingsDialog.textColor": "Text color", "DE.Views.WatermarkSettingsDialog.textDiagonal": "Diagonal", "DE.Views.WatermarkSettingsDialog.textFont": "Font", - "DE.Views.WatermarkSettingsDialog.textFromFile": "From File", - "DE.Views.WatermarkSettingsDialog.textFromStorage": "From Storage", + "DE.Views.WatermarkSettingsDialog.textFromFile": "From file", + "DE.Views.WatermarkSettingsDialog.textFromStorage": "From storage", "DE.Views.WatermarkSettingsDialog.textFromUrl": "From URL", "DE.Views.WatermarkSettingsDialog.textHor": "Horizontal", "DE.Views.WatermarkSettingsDialog.textImageW": "Image watermark", @@ -2992,13 +3238,13 @@ "DE.Views.WatermarkSettingsDialog.textLayout": "Layout", "DE.Views.WatermarkSettingsDialog.textNone": "None", "DE.Views.WatermarkSettingsDialog.textScale": "Scale", - "DE.Views.WatermarkSettingsDialog.textSelect": "Select Image", + "DE.Views.WatermarkSettingsDialog.textSelect": "Select image", "DE.Views.WatermarkSettingsDialog.textStrikeout": "Strikethrough", "DE.Views.WatermarkSettingsDialog.textText": "Text", "DE.Views.WatermarkSettingsDialog.textTextW": "Text watermark", - "DE.Views.WatermarkSettingsDialog.textTitle": "Watermark Settings", + "DE.Views.WatermarkSettingsDialog.textTitle": "Watermark settings", "DE.Views.WatermarkSettingsDialog.textTransparency": "Semitransparent", "DE.Views.WatermarkSettingsDialog.textUnderline": "Underline", - "DE.Views.WatermarkSettingsDialog.tipFontName": "Font Name", - "DE.Views.WatermarkSettingsDialog.tipFontSize": "Font Size" + "DE.Views.WatermarkSettingsDialog.tipFontName": "Font name", + "DE.Views.WatermarkSettingsDialog.tipFontSize": "Font size" } \ No newline at end of file diff --git a/apps/documenteditor/main/locale/es.json b/apps/documenteditor/main/locale/es.json index 37f9eb482..b3eab7ade 100644 --- a/apps/documenteditor/main/locale/es.json +++ b/apps/documenteditor/main/locale/es.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "Dispersión con líneas suavizadas y marcadores", "Common.define.chartData.textStock": "De cotizaciones", "Common.define.chartData.textSurface": "Superficie", + "Common.define.smartArt.textAccentedPicture": "Imagen destacada", + "Common.define.smartArt.textAccentProcess": "Proceso destacado", + "Common.define.smartArt.textAlternatingFlow": "Flujo alternativo", + "Common.define.smartArt.textAlternatingHexagons": "Hexágonos alternados", + "Common.define.smartArt.textAlternatingPictureBlocks": "Bloques de imágenes alternativos", + "Common.define.smartArt.textAlternatingPictureCircles": "Círculos con imágenes alternativos", + "Common.define.smartArt.textArchitectureLayout": "Diseño de arquitectura", + "Common.define.smartArt.textArrowRibbon": "Cinta de flechas", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Proceso de imágenes destacadas ascendente", + "Common.define.smartArt.textBalance": "Saldo", + "Common.define.smartArt.textBasicBendingProcess": "Proceso curvo básico", + "Common.define.smartArt.textBasicBlockList": "Lista de bloques básica", + "Common.define.smartArt.textBasicChevronProcess": "Proceso cheurón básico", + "Common.define.smartArt.textBasicCycle": "Ciclo básico", + "Common.define.smartArt.textBasicMatrix": "Matriz básica", + "Common.define.smartArt.textBasicPie": "Circular básico", + "Common.define.smartArt.textBasicProcess": "Proceso básico", + "Common.define.smartArt.textBasicPyramid": "Pirámide básica", + "Common.define.smartArt.textBasicRadial": "Radial básico", + "Common.define.smartArt.textBasicTarget": "Objetivo básico", + "Common.define.smartArt.textBasicTimeline": "Escala de tiempo básica", + "Common.define.smartArt.textBasicVenn": "Venn básico", + "Common.define.smartArt.textBendingPictureAccentList": "Lista destacada con círculos abajo", + "Common.define.smartArt.textBendingPictureBlocks": "Bloques de imágenes con cuadro", + "Common.define.smartArt.textBendingPictureCaption": "Imágenes con títulos", + "Common.define.smartArt.textBendingPictureCaptionList": "Lista de títulos de imágenes", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Imágenes con texto semitransparente", + "Common.define.smartArt.textBlockCycle": "Ciclo de bloques", + "Common.define.smartArt.textBubblePictureList": "Lista de imágenes con burbujas", + "Common.define.smartArt.textCaptionedPictures": "Imágenes con títulos", + "Common.define.smartArt.textChevronAccentProcess": "Proceso cheurón destacado", + "Common.define.smartArt.textChevronList": "Lista de cheurones", + "Common.define.smartArt.textCircleAccentTimeline": "Línea de tiempo con círculos", + "Common.define.smartArt.textCircleArrowProcess": "Proceso de círculos con flecha", + "Common.define.smartArt.textCirclePictureHierarchy": "Jerarquía con imágenes en círculos", + "Common.define.smartArt.textCircleProcess": "Proceso de círculos", + "Common.define.smartArt.textCircleRelationship": "Relación de círculo", + "Common.define.smartArt.textCircularBendingProcess": "Proceso curvo circular", + "Common.define.smartArt.textCircularPictureCallout": "Globo de imagen circular", + "Common.define.smartArt.textClosedChevronProcess": "Proceso de cheurón cerrado", + "Common.define.smartArt.textContinuousArrowProcess": "Proceso de flechas continuo", + "Common.define.smartArt.textContinuousBlockProcess": "Proceso de bloque continuo", + "Common.define.smartArt.textContinuousCycle": "Ciclo continuo", + "Common.define.smartArt.textContinuousPictureList": "Lista de imágenes continua", + "Common.define.smartArt.textConvergingArrows": "Flechas convergentes", + "Common.define.smartArt.textConvergingRadial": "Radial convergente", + "Common.define.smartArt.textConvergingText": "Texto convergente", + "Common.define.smartArt.textCounterbalanceArrows": "Flechas de contrapeso", + "Common.define.smartArt.textCycle": "Ciclo", + "Common.define.smartArt.textCycleMatrix": "Matriz de ciclo", + "Common.define.smartArt.textDescendingBlockList": "Lista de bloques descendente", + "Common.define.smartArt.textDescendingProcess": "Proceso descendente", + "Common.define.smartArt.textDetailedProcess": "Proceso detallado", + "Common.define.smartArt.textDivergingArrows": "Flechas divergentes", + "Common.define.smartArt.textDivergingRadial": "Radial divergente", + "Common.define.smartArt.textEquation": "Ecuación", + "Common.define.smartArt.textFramedTextPicture": "Imagen de texto enmarcado", + "Common.define.smartArt.textFunnel": "Embudo", + "Common.define.smartArt.textGear": "Engranaje", + "Common.define.smartArt.textGridMatrix": "Matriz de cuadrícula", + "Common.define.smartArt.textGroupedList": "Lista agrupada", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Organigrama con semicírculos", + "Common.define.smartArt.textHexagonCluster": "Grupo de hexágonos", + "Common.define.smartArt.textHexagonRadial": "Radial con hexágonos", + "Common.define.smartArt.textHierarchy": "Jerarquía", + "Common.define.smartArt.textHierarchyList": "Lista de jerarquías", + "Common.define.smartArt.textHorizontalBulletList": "Lista de viñetas horizontal", + "Common.define.smartArt.textHorizontalHierarchy": "Jerarquía horizontal", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Jerarquía etiquetada horizontal", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Jerarquía horizontal de varios niveles", + "Common.define.smartArt.textHorizontalOrganizationChart": "Organigrama horizontal", + "Common.define.smartArt.textHorizontalPictureList": "Lista horizontal de imágenes", + "Common.define.smartArt.textIncreasingArrowProcess": "Proceso de flechas crecientes", + "Common.define.smartArt.textIncreasingCircleProcess": "Proceso de círculos crecientes", + "Common.define.smartArt.textInterconnectedBlockProcess": "Bloque interconectado", + "Common.define.smartArt.textInterconnectedRings": "Anillos interconectados", + "Common.define.smartArt.textInvertedPyramid": "Pirámide invertida", + "Common.define.smartArt.textLabeledHierarchy": "Jerarquía etiquetada", + "Common.define.smartArt.textLinearVenn": "Venn lineal", + "Common.define.smartArt.textLinedList": "Lista alineada", + "Common.define.smartArt.textList": "Lista", + "Common.define.smartArt.textMatrix": "Matriz", + "Common.define.smartArt.textMultidirectionalCycle": "Ciclo multidireccional", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Organigrama con nombres y cargos", + "Common.define.smartArt.textNestedTarget": "Objetivo anidado", + "Common.define.smartArt.textNondirectionalCycle": "Ciclo sin dirección", + "Common.define.smartArt.textOpposingArrows": "Flechas opuestas", + "Common.define.smartArt.textOpposingIdeas": "Ideas opuestas", + "Common.define.smartArt.textOrganizationChart": "Organigrama", + "Common.define.smartArt.textOther": "Otro", + "Common.define.smartArt.textPhasedProcess": "Proceso en fases", + "Common.define.smartArt.textPicture": "Imagen", + "Common.define.smartArt.textPictureAccentBlocks": "Imágenes destacadas en bloques", + "Common.define.smartArt.textPictureAccentList": "Lista de imágenes destacadas", + "Common.define.smartArt.textPictureAccentProcess": "Proceso de imágenes destacadas", + "Common.define.smartArt.textPictureCaptionList": "Lista de títulos de imágenes", + "Common.define.smartArt.textPictureFrame": "MarcoDeFotos", + "Common.define.smartArt.textPictureGrid": "Imágenes en cuadrícula", + "Common.define.smartArt.textPictureLineup": "Imágenes en paralelo", + "Common.define.smartArt.textPictureOrganizationChart": "Organigrama con imágenes", + "Common.define.smartArt.textPictureStrips": "Picture Strips", + "Common.define.smartArt.textPieProcess": "Proceso circular", + "Common.define.smartArt.textPlusAndMinus": "Más y menos", + "Common.define.smartArt.textProcess": "Proceso", + "Common.define.smartArt.textProcessArrows": "Flechas de proceso", + "Common.define.smartArt.textProcessList": "Lista de procesos", + "Common.define.smartArt.textPyramid": "Pirámide", + "Common.define.smartArt.textPyramidList": "Lista en pirámide", + "Common.define.smartArt.textRadialCluster": "Diseño radial", + "Common.define.smartArt.textRadialCycle": "Ciclo radial", + "Common.define.smartArt.textRadialList": "Lista radial", + "Common.define.smartArt.textRadialPictureList": "Lista radial con imágenes", + "Common.define.smartArt.textRadialVenn": "Venn radial", + "Common.define.smartArt.textRandomToResultProcess": "Proceso de azar a resultado", + "Common.define.smartArt.textRelationship": "Relación", + "Common.define.smartArt.textRepeatingBendingProcess": "Proceso curvo repetitivo", + "Common.define.smartArt.textReverseList": "Lista inversa", + "Common.define.smartArt.textSegmentedCycle": "Ciclo segmentado", + "Common.define.smartArt.textSegmentedProcess": "Proceso segmentado", + "Common.define.smartArt.textSegmentedPyramid": "Pirámide segmentada", + "Common.define.smartArt.textSnapshotPictureList": "Lista de imágenes instantáneas", + "Common.define.smartArt.textSpiralPicture": "Imagen en espiral", + "Common.define.smartArt.textSquareAccentList": "Lista de imágenes con cuadrados", + "Common.define.smartArt.textStackedList": "Lista apilada", + "Common.define.smartArt.textStackedVenn": "Venn apilado", + "Common.define.smartArt.textStaggeredProcess": "Proceso escalonado", + "Common.define.smartArt.textStepDownProcess": "Proceso de nivel inferior", + "Common.define.smartArt.textStepUpProcess": "Proceso de nivel superior", + "Common.define.smartArt.textSubStepProcess": "Proceso de pasos secundarios", + "Common.define.smartArt.textTabbedArc": "Arco con pestañas", + "Common.define.smartArt.textTableHierarchy": "Jerarquía de tabla", + "Common.define.smartArt.textTableList": "Lista de tablas", + "Common.define.smartArt.textTabList": "Lista de pestañas", + "Common.define.smartArt.textTargetList": "Lista de objetivo", + "Common.define.smartArt.textTextCycle": "Ciclo de texto", + "Common.define.smartArt.textThemePictureAccent": "Imágenes temáticas destacadas", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Imágenes temáticas destacadas alternativas", + "Common.define.smartArt.textThemePictureGrid": "Imágenes temáticas en cuadrícula", + "Common.define.smartArt.textTitledMatrix": "Matriz con títulos", + "Common.define.smartArt.textTitledPictureAccentList": "Lista de imágenes destacadas con título", + "Common.define.smartArt.textTitledPictureBlocks": "Bloques de imágenes con títulos", + "Common.define.smartArt.textTitlePictureLineup": "Serie de imágenes con título", + "Common.define.smartArt.textTrapezoidList": "Lista de trapezoides", + "Common.define.smartArt.textUpwardArrow": "Flecha arriba", + "Common.define.smartArt.textVaryingWidthList": "Lista de ancho variable", + "Common.define.smartArt.textVerticalAccentList": "Lista con rectángulos en vertical", + "Common.define.smartArt.textVerticalArrowList": "Lista vertical de flechas", + "Common.define.smartArt.textVerticalBendingProcess": "Proceso curvo vertical", + "Common.define.smartArt.textVerticalBlockList": "Lista de bloques verticales", + "Common.define.smartArt.textVerticalBoxList": "Lista vertical de cuadros", + "Common.define.smartArt.textVerticalBracketList": "Lista vertical con corchetes", + "Common.define.smartArt.textVerticalBulletList": "Lista vertical de viñetas", + "Common.define.smartArt.textVerticalChevronList": "Lista vertical de cheurones", + "Common.define.smartArt.textVerticalCircleList": "Lista con círculos en vertical", + "Common.define.smartArt.textVerticalCurvedList": "Lista curvada vertical", + "Common.define.smartArt.textVerticalEquation": "Ecuación vertical", + "Common.define.smartArt.textVerticalPictureAccentList": "Lista con círculos a la izquierda", + "Common.define.smartArt.textVerticalPictureList": "Lista vertical de imágenes", + "Common.define.smartArt.textVerticalProcess": "Proceso vertical", "Common.Translation.textMoreButton": "Más", "Common.Translation.warnFileLocked": "No puede editar este archivo porque está siendo editado en otra aplicación.", "Common.Translation.warnFileLockedBtnEdit": "Crear una copia", @@ -184,7 +343,7 @@ "Common.UI.SearchDialog.textMatchCase": "Sensible a mayúsculas y minúsculas", "Common.UI.SearchDialog.textReplaceDef": "Introduzca el texto de sustitución", "Common.UI.SearchDialog.textSearchStart": "Introduzca su texto aquí", - "Common.UI.SearchDialog.textTitle": "Encontrar y reemplazar", + "Common.UI.SearchDialog.textTitle": "Buscar y reemplazar", "Common.UI.SearchDialog.textTitle2": "Encontrar", "Common.UI.SearchDialog.textWholeWords": "Sólo palabras completas", "Common.UI.SearchDialog.txtBtnHideReplace": "Esconder Sustitución", @@ -237,7 +396,7 @@ "Common.Views.AutoCorrectDialog.textMathCorrect": "Autocorrección matemática", "Common.Views.AutoCorrectDialog.textNumbered": "Listas con numeración automática", "Common.Views.AutoCorrectDialog.textQuotes": "\"Comillas rectas\" con \"comillas tipográficas\"", - "Common.Views.AutoCorrectDialog.textRecognized": "Funciones Reconocidas", + "Common.Views.AutoCorrectDialog.textRecognized": "Funciones reconocidas", "Common.Views.AutoCorrectDialog.textRecognizedDesc": "Las siguientes expresiones son expresiones matemáticas reconocidas. No se pondrán en cursiva automáticamente.", "Common.Views.AutoCorrectDialog.textReplace": "Reemplazar", "Common.Views.AutoCorrectDialog.textReplaceText": "Reemplazar mientras escribe", @@ -281,13 +440,15 @@ "Common.Views.Comments.txtEmpty": "Sin comentarios en el documento", "Common.Views.CopyWarningDialog.textDontShow": "No volver a mostrar este mensaje", "Common.Views.CopyWarningDialog.textMsg": "Se puede realizar las acciones de copiar, cortar y pegar usando los botones en la barra de herramientas y el menú contextual sólo en esta pestaña del editor.

    Si quiere copiar o pegar algo fuera de esta pestaña, usa las combinaciones de teclas siguientes:", - "Common.Views.CopyWarningDialog.textTitle": "Funciones de Copiar, Cortar y Pegar", + "Common.Views.CopyWarningDialog.textTitle": "Acciones de Copiar, Cortar y Pegar", "Common.Views.CopyWarningDialog.textToCopy": "para copiar", "Common.Views.CopyWarningDialog.textToCut": "para cortar", "Common.Views.CopyWarningDialog.textToPaste": "para pegar", "Common.Views.DocumentAccessDialog.textLoading": "Cargando...", "Common.Views.DocumentAccessDialog.textTitle": "Ajustes de uso compartido", "Common.Views.ExternalDiagramEditor.textTitle": "Editor de gráfico", + "Common.Views.ExternalEditor.textClose": "Cerrar", + "Common.Views.ExternalEditor.textSave": "Guardar y salir", "Common.Views.ExternalMergeEditor.textTitle": "Receptores de Fusión de Correo", "Common.Views.ExternalOleEditor.textTitle": "Editor de hojas de cálculo", "Common.Views.Header.labelCoUsersDescr": "Usuarios que están editando el archivo:", @@ -344,7 +505,7 @@ "Common.Views.PasswordDialog.txtIncorrectPwd": "La contraseña de confirmación es", "Common.Views.PasswordDialog.txtPassword": "Contraseña", "Common.Views.PasswordDialog.txtRepeat": "Repita la contraseña", - "Common.Views.PasswordDialog.txtTitle": "Establezca una contraseña", + "Common.Views.PasswordDialog.txtTitle": "Establecer contraseña", "Common.Views.PasswordDialog.txtWarning": "Precaución: Si pierde u olvida su contraseña, no podrá recuperarla. Guárdalo en un lugar seguro.", "Common.Views.PluginDlg.textLoading": "Cargando", "Common.Views.Plugins.groupCaption": "Extensiones", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Iniciar", "Common.Views.Plugins.textStop": "Detener", "Common.Views.Protection.hintAddPwd": "Encriptar con contraseña", + "Common.Views.Protection.hintDelPwd": "Eliminar contraseña", "Common.Views.Protection.hintPwd": "Cambie o elimine la contraseña", "Common.Views.Protection.hintSignature": "Agregar firma digital o línea de firma", "Common.Views.Protection.txtAddPwd": "Agregar contraseña", @@ -443,8 +605,8 @@ "Common.Views.ReviewChangesDialog.txtNext": "Al siguiente cambio", "Common.Views.ReviewChangesDialog.txtPrev": "Al cambio anterior", "Common.Views.ReviewChangesDialog.txtReject": "Rechazar", - "Common.Views.ReviewChangesDialog.txtRejectAll": "Rechazar todos los cambjios", - "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Rechazar Cambio Actual", + "Common.Views.ReviewChangesDialog.txtRejectAll": "Rechazar todos los cambios", + "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Rechazar cambio actual", "Common.Views.ReviewPopover.textAdd": "Agregar", "Common.Views.ReviewPopover.textAddReply": "Agregar respuesta", "Common.Views.ReviewPopover.textCancel": "Cancelar", @@ -482,7 +644,7 @@ "Common.Views.SearchPanel.tipNextResult": "Resultado siguiente", "Common.Views.SearchPanel.tipPreviousResult": "Resultado anterior", "Common.Views.SelectFileDlg.textLoading": "Cargando", - "Common.Views.SelectFileDlg.textTitle": "Seleccionar fuente de datos", + "Common.Views.SelectFileDlg.textTitle": "Seleccionar origen de datos", "Common.Views.SignDialog.textBold": "Negrilla", "Common.Views.SignDialog.textCertificate": "Certificar", "Common.Views.SignDialog.textChange": "Cambiar", @@ -491,7 +653,7 @@ "Common.Views.SignDialog.textNameError": "El nombre del firmante no debe estar vacío.", "Common.Views.SignDialog.textPurpose": "Propósito al firmar este documento", "Common.Views.SignDialog.textSelect": "Seleccionar", - "Common.Views.SignDialog.textSelectImage": "Seleccionar Imagen", + "Common.Views.SignDialog.textSelectImage": "Seleccionar imagen", "Common.Views.SignDialog.textSignature": "La firma se ve como", "Common.Views.SignDialog.textTitle": "Firmar documento", "Common.Views.SignDialog.textUseImage": "o pulsar 'Seleccionar Imagen' para usar una imagen como firma", @@ -499,12 +661,13 @@ "Common.Views.SignDialog.tipFontName": "Nombre del tipo de letra", "Common.Views.SignDialog.tipFontSize": "Tamaño del tipo de letra", "Common.Views.SignSettingsDialog.textAllowComment": "Permitir al firmante agregar comentarios en el diálogo de firma", - "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", - "Common.Views.SignSettingsDialog.textInfoName": "Nombre", - "Common.Views.SignSettingsDialog.textInfoTitle": "Título de quien firma", + "Common.Views.SignSettingsDialog.textDefInstruction": "Antes de firmar este documento, verifique que el contenido que está firmando es correcto.", + "Common.Views.SignSettingsDialog.textInfoEmail": "Correo electrónico del firmante sugerido", + "Common.Views.SignSettingsDialog.textInfoName": "Firmante sugerido", + "Common.Views.SignSettingsDialog.textInfoTitle": "Título del firmante sugerido", "Common.Views.SignSettingsDialog.textInstructions": "Instrucciones para quien firma", "Common.Views.SignSettingsDialog.textShowDate": "Presentar fecha de la firma", - "Common.Views.SignSettingsDialog.textTitle": "Preparación de la firma", + "Common.Views.SignSettingsDialog.textTitle": "Configuración de firma", "Common.Views.SignSettingsDialog.txtEmpty": "Este campo es obligatorio", "Common.Views.SymbolTableDialog.textCharacter": "Carácter", "Common.Views.SymbolTableDialog.textCode": "Valor HEX de Unicode", @@ -532,7 +695,7 @@ "Common.Views.SymbolTableDialog.textSpecial": "Caracteres especiales", "Common.Views.SymbolTableDialog.textSymbols": "Símbolos", "Common.Views.SymbolTableDialog.textTitle": "Símbolo", - "Common.Views.SymbolTableDialog.textTradeMark": "Símbolo de marca comercial", + "Common.Views.SymbolTableDialog.textTradeMark": "Símbolo de marca registrada", "Common.Views.UserNameDialog.textDontShow": "No volver a preguntarme", "Common.Views.UserNameDialog.textLabel": "Etiqueta:", "Common.Views.UserNameDialog.textLabelError": "La etiqueta no debe estar vacía.", @@ -552,6 +715,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} no es un carácter especial válido para el campo de sustitución.", "DE.Controllers.Main.applyChangesTextText": "Cargando cambios...", "DE.Controllers.Main.applyChangesTitleText": "Cargando cambios", + "DE.Controllers.Main.confirmMaxChangesSize": "El tamaño de las acciones excede la limitación establecida para su servidor.
    Pulse \"Deshacer\" para cancelar su última acción o pulse \"Continuar\" para mantener la acción localmente (debe descargar el archivo o copiar su contenido para asegurarse de que no se pierde nada).", "DE.Controllers.Main.convertationTimeoutText": "Tiempo de conversión está superado.", "DE.Controllers.Main.criticalErrorExtText": "Pulse \"OK\" para regresar al documento.", "DE.Controllers.Main.criticalErrorTitle": "Error", @@ -578,12 +742,18 @@ "DE.Controllers.Main.errorFilePassProtect": "El archivo está protegido por una contraseña y no puede ser abierto.", "DE.Controllers.Main.errorFileSizeExceed": "El tamaño del archivo excede la limitación establecida para su servidor.
    Por favor, póngase en contacto con el administrador del Servidor de Documentos para obtener más detalles.", "DE.Controllers.Main.errorForceSave": "Se produjo un error al guardar el archivo. Utilice la opción \"Descargar como\" para guardar el archivo en el disco duro o inténtelo de nuevo más tarde.", + "DE.Controllers.Main.errorInconsistentExt": "Se ha producido un error al abrir el archivo.
    El contenido del archivo no coincide con la extensión del mismo.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Se ha producido un error al abrir el archivo.
    El contenido del archivo corresponde a documentos de texto (por ejemplo, docx), pero el archivo tiene extensión inconsistente: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Se ha producido un error al abrir el archivo.
    El contenido del archivo corresponde a uno de los siguientes formatos: pdf/djvu/xps/oxps, pero el archivo tiene extensión inconsistente: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Se ha producido un error al abrir el archivo.
    El contenido del archivo corresponde a presentaciones (por ejemplo, pptx), pero el archivo tiene extensión inconsistente: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Se ha producido un error al abrir el archivo.
    El contenido del archivo corresponde a hojas de cálculo (por ejemplo, xlsx), pero el archivo tiene extensión inconsistente: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Descriptor de clave desconocido", "DE.Controllers.Main.errorKeyExpire": "Descriptor de clave ha expirado", "DE.Controllers.Main.errorLoadingFont": "Las fuentes no están cargadas.
    Por favor, póngase en contacto con el administrador del Document Server.", "DE.Controllers.Main.errorMailMergeLoadFile": "La carga del documento ha fallado. Por favor, seleccione un archivo diferente.", "DE.Controllers.Main.errorMailMergeSaveFile": "Error de fusión.", "DE.Controllers.Main.errorNoTOC": "No hay ninguna tabla de contenido para actualizar. Se puede insertar una desde la pestaña Referencias.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "La contraseña que ha proporcionado no es correcta.
    Verifique que la tecla Bloq Mayús está desactivada y asegúrese de utilizar las mayúsculas correctas.", "DE.Controllers.Main.errorProcessSaveResult": "Problemas al guardar", "DE.Controllers.Main.errorServerVersion": "La versión del editor ha sido actualizada. La página será recargada para aplicar los cambios.", "DE.Controllers.Main.errorSessionAbsolute": "Sesión de editar el documento ha expirado. Por favor, recargue la página.", @@ -640,6 +810,7 @@ "DE.Controllers.Main.textClose": "Cerrar", "DE.Controllers.Main.textCloseTip": "Pulse para cerrar el consejo", "DE.Controllers.Main.textContactUs": "Contactar con equipo de ventas", + "DE.Controllers.Main.textContinue": "Continuar", "DE.Controllers.Main.textConvertEquation": "Esta ecuación fue creada con una versión antigua del editor de ecuaciones que ya no es compatible. Para editarla, convierta la ecuación al formato ML de Office Math.
    ¿Convertir ahora?", "DE.Controllers.Main.textCustomLoader": "Note, por favor, que según los términos de la licencia Usted no tiene derecho a cambiar el cargador.
    Por favor, póngase en contacto con nuestro Departamento de Ventas para obtener una cotización.", "DE.Controllers.Main.textDisconnect": "Se ha perdido la conexión", @@ -660,6 +831,7 @@ "DE.Controllers.Main.textStrict": "Modo estricto", "DE.Controllers.Main.textTryUndoRedo": "Las funciones Anular/Rehacer se desactivan para el modo co-edición rápido.
    Haga Clic en el botón \"modo estricto\" para cambiar al modo de co-edición estricta para editar el archivo sin la interferencia de otros usuarios y enviar sus cambios sólo después de guardarlos. Se puede cambiar entre los modos de co-edición usando los ajustes avanzados de edición.", "DE.Controllers.Main.textTryUndoRedoWarn": "Las funciones Deshacer/Rehacer son desactivados en el modo de co-edición rápido.", + "DE.Controllers.Main.textUndo": "Deshacer", "DE.Controllers.Main.titleLicenseExp": "Licencia ha expirado", "DE.Controllers.Main.titleServerVersion": "Editor ha sido actualizado", "DE.Controllers.Main.titleUpdateVersion": "Versión ha cambiado", @@ -992,12 +1164,12 @@ "DE.Controllers.Toolbar.txtAccent_Smile": "Acento breve", "DE.Controllers.Toolbar.txtAccent_Tilde": "Tilde", "DE.Controllers.Toolbar.txtBracket_Angle": "Paréntesis", - "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_2": "Paréntesis con separadores", - "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_3": "Paréntesis con separadores", + "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_2": "Corchetes con separadores", + "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_3": "Corchetes con separadores", "DE.Controllers.Toolbar.txtBracket_Angle_NoneOpen": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Angle_OpenNone": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Curve": "Paréntesis", - "DE.Controllers.Toolbar.txtBracket_Curve_Delimiter_2": "Paréntesis con separadores", + "DE.Controllers.Toolbar.txtBracket_Curve_Delimiter_2": "Corchetes con separadores", "DE.Controllers.Toolbar.txtBracket_Curve_NoneOpen": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Curve_OpenNone": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Custom_1": "Casos (dos condiciones)", @@ -1017,7 +1189,7 @@ "DE.Controllers.Toolbar.txtBracket_LowLim_NoneNone": "Corchete único", "DE.Controllers.Toolbar.txtBracket_LowLim_OpenNone": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Round": "Paréntesis", - "DE.Controllers.Toolbar.txtBracket_Round_Delimiter_2": "Paréntesis con separadores", + "DE.Controllers.Toolbar.txtBracket_Round_Delimiter_2": "Corchetes con separadores", "DE.Controllers.Toolbar.txtBracket_Round_NoneOpen": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Round_OpenNone": "Corchete único", "DE.Controllers.Toolbar.txtBracket_Square": "Paréntesis", @@ -1327,18 +1499,33 @@ "DE.Views.CellsAddDialog.textLeft": "A la izquierda", "DE.Views.CellsAddDialog.textRight": "A la derecha", "DE.Views.CellsAddDialog.textRow": "Filas", - "DE.Views.CellsAddDialog.textTitle": "Insertar Varios", + "DE.Views.CellsAddDialog.textTitle": "Insertar varios", "DE.Views.CellsAddDialog.textUp": "Por encima del cursor", + "DE.Views.ChartSettings.text3dDepth": "Profundidad (% de la base)", + "DE.Views.ChartSettings.text3dHeight": "Altura (% de la base)", + "DE.Views.ChartSettings.text3dRotation": "Rotación 3D", "DE.Views.ChartSettings.textAdvanced": "Mostrar ajustes avanzados", + "DE.Views.ChartSettings.textAutoscale": "Escalado automático", "DE.Views.ChartSettings.textChartType": "Cambiar tipo de gráfico", + "DE.Views.ChartSettings.textDefault": "Rotación por defecto", + "DE.Views.ChartSettings.textDown": "Abajo", "DE.Views.ChartSettings.textEditData": "Editar datos", "DE.Views.ChartSettings.textHeight": "Altura", + "DE.Views.ChartSettings.textLeft": "Izquierda", + "DE.Views.ChartSettings.textNarrow": "Campo de visión estrecho", "DE.Views.ChartSettings.textOriginalSize": "Tamaño real", + "DE.Views.ChartSettings.textPerspective": "Perspectiva", + "DE.Views.ChartSettings.textRight": "Derecha", + "DE.Views.ChartSettings.textRightAngle": "Ejes en ángulo recto", "DE.Views.ChartSettings.textSize": "Tamaño", "DE.Views.ChartSettings.textStyle": "Estilo", "DE.Views.ChartSettings.textUndock": "Desacoplar de panel", + "DE.Views.ChartSettings.textUp": "Arriba", + "DE.Views.ChartSettings.textWiden": "Campo de visión ancho", "DE.Views.ChartSettings.textWidth": "Ancho", "DE.Views.ChartSettings.textWrap": "Ajuste de texto", + "DE.Views.ChartSettings.textX": "Rotación X", + "DE.Views.ChartSettings.textY": "Rotación Y", "DE.Views.ChartSettings.txtBehind": "Detrás del texto", "DE.Views.ChartSettings.txtInFront": "Delante del texto", "DE.Views.ChartSettings.txtInline": "En línea con el texto", @@ -1428,14 +1615,24 @@ "DE.Views.DateTimeDialog.textLang": "Idioma", "DE.Views.DateTimeDialog.textUpdate": "Actualizar automáticamente", "DE.Views.DateTimeDialog.txtTitle": "Fecha y hora", + "DE.Views.DocProtection.hintProtectDoc": "Proteger documento", + "DE.Views.DocProtection.txtDocProtectedComment": "El documento está protegido.
    Sólo puede insertar comentarios en este documento.", + "DE.Views.DocProtection.txtDocProtectedForms": "El documento está protegido.
    Sólo puede rellenar los formularios de este documento.", + "DE.Views.DocProtection.txtDocProtectedTrack": "El documento está protegido.
    Puede editar este documento, pero todos los cambios serán revisados.", + "DE.Views.DocProtection.txtDocProtectedView": "El documento está protegido.
    Sólo puede visualizar este documento.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Introduzca una contraseña para desproteger el documento", + "DE.Views.DocProtection.txtProtectDoc": "Proteger documento", "DE.Views.DocumentHolder.aboveText": "Encima", "DE.Views.DocumentHolder.addCommentText": "Agregar comentario", "DE.Views.DocumentHolder.advancedDropCapText": "Configuración de Capitalización", + "DE.Views.DocumentHolder.advancedEquationText": "Ajustes de la ecuación", "DE.Views.DocumentHolder.advancedFrameText": "Ajustes avanzados de marco", "DE.Views.DocumentHolder.advancedParagraphText": "Ajustes avanzados de párrafo", "DE.Views.DocumentHolder.advancedTableText": "Ajustes avanzados de tabla", "DE.Views.DocumentHolder.advancedText": "Configuración avanzada", "DE.Views.DocumentHolder.alignmentText": "Alineación", + "DE.Views.DocumentHolder.allLinearText": "Lineal (todos)", + "DE.Views.DocumentHolder.allProfText": "Profesional (todos)", "DE.Views.DocumentHolder.belowText": "Abajo", "DE.Views.DocumentHolder.breakBeforeText": "Salto de página antes", "DE.Views.DocumentHolder.bulletsText": "Viñetas y numeración", @@ -1444,6 +1641,8 @@ "DE.Views.DocumentHolder.centerText": "Al centro", "DE.Views.DocumentHolder.chartText": "Ajustes avanzados de gráfico", "DE.Views.DocumentHolder.columnText": "Columna", + "DE.Views.DocumentHolder.currLinearText": "Lineal (actual)", + "DE.Views.DocumentHolder.currProfText": "Profesional (actual)", "DE.Views.DocumentHolder.deleteColumnText": "Borrar columna", "DE.Views.DocumentHolder.deleteRowText": "Borrar fila", "DE.Views.DocumentHolder.deleteTableText": "Borrar tabla", @@ -1456,6 +1655,7 @@ "DE.Views.DocumentHolder.editFooterText": "Editar pie de página", "DE.Views.DocumentHolder.editHeaderText": "Editar encabezado", "DE.Views.DocumentHolder.editHyperlinkText": "Editar hiperenlace", + "DE.Views.DocumentHolder.eqToInlineText": "Cambiar a En línea", "DE.Views.DocumentHolder.guestText": "Visitante", "DE.Views.DocumentHolder.hyperlinkText": "Hiperenlace", "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignorar todo", @@ -1470,6 +1670,7 @@ "DE.Views.DocumentHolder.insertText": "Insertar", "DE.Views.DocumentHolder.keepLinesText": "Mantener líneas juntas", "DE.Views.DocumentHolder.langText": "Seleccionar idioma", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Izquierdo", "DE.Views.DocumentHolder.loadSpellText": "Cargando variantes", "DE.Views.DocumentHolder.mergeCellsText": "Unir celdas", @@ -1657,6 +1858,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Barra debajo de texto", "DE.Views.DocumentHolder.txtUngroup": "Desagrupar", "DE.Views.DocumentHolder.txtWarnUrl": "Hacer clic en este enlace puede ser perjudicial para su dispositivo y sus datos.
    ¿Está seguro de que quiere continuar?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "Actualizar estilo %1", "DE.Views.DocumentHolder.vertAlignText": "Alineación vertical", "DE.Views.DropcapSettingsAdvanced.strBorders": "Bordes y relleno", @@ -1693,8 +1895,8 @@ "DE.Views.DropcapSettingsAdvanced.textRelative": "En relación a", "DE.Views.DropcapSettingsAdvanced.textRight": "Derecho", "DE.Views.DropcapSettingsAdvanced.textRowHeight": "Altura en filas", - "DE.Views.DropcapSettingsAdvanced.textTitle": "Letra capital - ajustes avanzados", - "DE.Views.DropcapSettingsAdvanced.textTitleFrame": "Marco-ajustes avanzados", + "DE.Views.DropcapSettingsAdvanced.textTitle": "Letra capital - Ajustes avanzados", + "DE.Views.DropcapSettingsAdvanced.textTitleFrame": "Marco - Ajustes avanzados", "DE.Views.DropcapSettingsAdvanced.textTop": "Superior", "DE.Views.DropcapSettingsAdvanced.textVertical": "Vertical", "DE.Views.DropcapSettingsAdvanced.textWidth": "Ancho", @@ -1753,6 +1955,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Estadísticas", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Asunto", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Símbolos", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Etiquetas", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Título", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Subido", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Palabras", @@ -1944,8 +2147,8 @@ "DE.Views.HyperlinkSettingsDialog.textDefault": "Fragmento de texto seleccionado", "DE.Views.HyperlinkSettingsDialog.textDisplay": "Mostrar", "DE.Views.HyperlinkSettingsDialog.textExternal": "Enlace externo", - "DE.Views.HyperlinkSettingsDialog.textInternal": "Lugar en documento", - "DE.Views.HyperlinkSettingsDialog.textTitle": "Configuración de hiperenlace", + "DE.Views.HyperlinkSettingsDialog.textInternal": "Lugar del documento", + "DE.Views.HyperlinkSettingsDialog.textTitle": "Ajustes de enlace", "DE.Views.HyperlinkSettingsDialog.textTooltip": "Información en pantalla", "DE.Views.HyperlinkSettingsDialog.textUrl": "Enlace a", "DE.Views.HyperlinkSettingsDialog.txtBeginning": "Principio del documento", @@ -1986,7 +2189,7 @@ "DE.Views.ImageSettings.txtThrough": "A través", "DE.Views.ImageSettings.txtTight": "Estrecho", "DE.Views.ImageSettings.txtTopAndBottom": "Superior e inferior", - "DE.Views.ImageSettingsAdvanced.strMargins": "Márgenes interiores", + "DE.Views.ImageSettingsAdvanced.strMargins": "Espaciado del texto", "DE.Views.ImageSettingsAdvanced.textAbsoluteWH": "Absoluto", "DE.Views.ImageSettingsAdvanced.textAlignment": "Alineación", "DE.Views.ImageSettingsAdvanced.textAlt": "Texto alternativo", @@ -2008,7 +2211,7 @@ "DE.Views.ImageSettingsAdvanced.textCenter": "Al centro", "DE.Views.ImageSettingsAdvanced.textCharacter": "Carácter", "DE.Views.ImageSettingsAdvanced.textColumn": "Columna", - "DE.Views.ImageSettingsAdvanced.textDistance": "Distancia del texto", + "DE.Views.ImageSettingsAdvanced.textDistance": "Distancia desde el texto", "DE.Views.ImageSettingsAdvanced.textEndSize": "Tamaño final", "DE.Views.ImageSettingsAdvanced.textEndStyle": "Estilo final", "DE.Views.ImageSettingsAdvanced.textFlat": "Plano", @@ -2045,15 +2248,15 @@ "DE.Views.ImageSettingsAdvanced.textSquare": "Cuadrado", "DE.Views.ImageSettingsAdvanced.textTextBox": "Cuadro de texto", "DE.Views.ImageSettingsAdvanced.textTitle": "Imagen - Ajustes avanzados", - "DE.Views.ImageSettingsAdvanced.textTitleChart": "Gráfico- Ajustes avanzados", - "DE.Views.ImageSettingsAdvanced.textTitleShape": "Forma - ajustes avanzados", + "DE.Views.ImageSettingsAdvanced.textTitleChart": "Gráfico - Ajustes avanzados", + "DE.Views.ImageSettingsAdvanced.textTitleShape": "Forma - Ajustes avanzados", "DE.Views.ImageSettingsAdvanced.textTop": "Superior", "DE.Views.ImageSettingsAdvanced.textTopMargin": "Margen superior", "DE.Views.ImageSettingsAdvanced.textVertical": "Vertical", "DE.Views.ImageSettingsAdvanced.textVertically": "Verticalmente", "DE.Views.ImageSettingsAdvanced.textWeightArrows": "Grosores y flechas", "DE.Views.ImageSettingsAdvanced.textWidth": "Ancho", - "DE.Views.ImageSettingsAdvanced.textWrap": "Ajuste de texto", + "DE.Views.ImageSettingsAdvanced.textWrap": "Estilo de ajuste", "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Detrás del texto", "DE.Views.ImageSettingsAdvanced.textWrapInFrontTooltip": "Delante del texto", "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "En línea con el texto", @@ -2066,6 +2269,7 @@ "DE.Views.LeftMenu.tipComments": "Comentarios", "DE.Views.LeftMenu.tipNavigation": "Navegación", "DE.Views.LeftMenu.tipOutline": "Títulos", + "DE.Views.LeftMenu.tipPageThumbnails": "Miniaturas de página", "DE.Views.LeftMenu.tipPlugins": "Plugins", "DE.Views.LeftMenu.tipSearch": "Búsqueda", "DE.Views.LeftMenu.tipSupport": "Feedback y Soporte", @@ -2087,7 +2291,7 @@ "DE.Views.LineNumbersDialog.textRestartEachSection": "Reiniciar cada sección", "DE.Views.LineNumbersDialog.textSection": "Sección actual", "DE.Views.LineNumbersDialog.textStartAt": "Empezar en", - "DE.Views.LineNumbersDialog.textTitle": "Numeración de Líneas", + "DE.Views.LineNumbersDialog.textTitle": "Numeración de líneas", "DE.Views.LineNumbersDialog.txtAutoText": "Auto", "DE.Views.Links.capBtnAddText": "Agregar texto", "DE.Views.Links.capBtnBookmarks": "Marcador", @@ -2136,13 +2340,13 @@ "DE.Views.ListSettingsDialog.txtAlign": "Alineación", "DE.Views.ListSettingsDialog.txtBullet": "Viñeta", "DE.Views.ListSettingsDialog.txtColor": "Color", - "DE.Views.ListSettingsDialog.txtFont": "Fuente y Símbolo", + "DE.Views.ListSettingsDialog.txtFont": "Fuente y símbolo", "DE.Views.ListSettingsDialog.txtLikeText": "Como un texto", "DE.Views.ListSettingsDialog.txtNewBullet": "Nueva viñeta", "DE.Views.ListSettingsDialog.txtNone": "Ninguno", "DE.Views.ListSettingsDialog.txtSize": "Tamaño", "DE.Views.ListSettingsDialog.txtSymbol": "Símbolo", - "DE.Views.ListSettingsDialog.txtTitle": "Opciones de lista", + "DE.Views.ListSettingsDialog.txtTitle": "Ajustes de lista", "DE.Views.ListSettingsDialog.txtType": "Tipo", "DE.Views.MailMergeEmailDlg.filePlaceholder": "PDF", "DE.Views.MailMergeEmailDlg.okButtonText": "Enviar", @@ -2154,8 +2358,8 @@ "DE.Views.MailMergeEmailDlg.textFrom": "De", "DE.Views.MailMergeEmailDlg.textHTML": "HTML", "DE.Views.MailMergeEmailDlg.textMessage": "Mensaje", - "DE.Views.MailMergeEmailDlg.textSubject": "Línea de tema", - "DE.Views.MailMergeEmailDlg.textTitle": "Enviar por correo", + "DE.Views.MailMergeEmailDlg.textSubject": "Línea de asunto", + "DE.Views.MailMergeEmailDlg.textTitle": "Enviar a correo electrónico", "DE.Views.MailMergeEmailDlg.textTo": "Para", "DE.Views.MailMergeEmailDlg.textWarning": "¡Aviso!", "DE.Views.MailMergeEmailDlg.textWarningMsg": "Note, por favor, que no se puede detener el envío, una vez pulsado el botón 'Enviar'.", @@ -2214,7 +2418,7 @@ "DE.Views.NoteSettingsDialog.textApply": "Aplicar", "DE.Views.NoteSettingsDialog.textApplyTo": "Aplicar cambios a", "DE.Views.NoteSettingsDialog.textContinue": "Continua", - "DE.Views.NoteSettingsDialog.textCustom": "Símbolo especial", + "DE.Views.NoteSettingsDialog.textCustom": "Marca personal", "DE.Views.NoteSettingsDialog.textDocEnd": "Final del documento", "DE.Views.NoteSettingsDialog.textDocument": "Todo el documento", "DE.Views.NoteSettingsDialog.textEachPage": "Reiniciar cada página", @@ -2231,10 +2435,10 @@ "DE.Views.NoteSettingsDialog.textSection": "Sección actual", "DE.Views.NoteSettingsDialog.textStart": "Empezar con", "DE.Views.NoteSettingsDialog.textTextBottom": "Bajo el texto", - "DE.Views.NoteSettingsDialog.textTitle": "Ajustes de las notas a pie de página", - "DE.Views.NotesRemoveDialog.textEnd": "Eliminar Todas las Notas al Final", + "DE.Views.NoteSettingsDialog.textTitle": "Ajustes de notas", + "DE.Views.NotesRemoveDialog.textEnd": "Eliminar todas las notas al final", "DE.Views.NotesRemoveDialog.textFoot": "Eliminar todas las notas al pie de página", - "DE.Views.NotesRemoveDialog.textTitle": "Eliminar Notas", + "DE.Views.NotesRemoveDialog.textTitle": "Eliminar notas", "DE.Views.PageMarginsDialog.notcriticalErrorTitle": "Aviso", "DE.Views.PageMarginsDialog.textBottom": "Inferior", "DE.Views.PageMarginsDialog.textGutter": "Reliure", @@ -2302,7 +2506,7 @@ "DE.Views.ParagraphSettingsAdvanced.strOrphan": "Control de líneas huérfanas", "DE.Views.ParagraphSettingsAdvanced.strParagraphFont": "Letra ", "DE.Views.ParagraphSettingsAdvanced.strParagraphIndents": "Sangría y espaciado", - "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Saltos de línea y Saltos de página", + "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Saltos de línea y saltos de página", "DE.Views.ParagraphSettingsAdvanced.strParagraphPosition": "Ubicación", "DE.Views.ParagraphSettingsAdvanced.strSmallCaps": "Mayúsculas pequeñas", "DE.Views.ParagraphSettingsAdvanced.strSomeParagraphSpace": "No agregue intervalos entre párrafos del mismo estilo", @@ -2317,7 +2521,7 @@ "DE.Views.ParagraphSettingsAdvanced.textAtLeast": "Por lo menos", "DE.Views.ParagraphSettingsAdvanced.textAuto": "Múltiple", "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Color de fondo", - "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Texto Básico", + "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Texto básico", "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Color de borde", "DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Haga clic en diagrama o use botones para seleccionar bordes y aplicar el estilo seleccionado", "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Tamaño de borde", @@ -2325,17 +2529,17 @@ "DE.Views.ParagraphSettingsAdvanced.textCentered": "Centrado", "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Espaciado entre caracteres", "DE.Views.ParagraphSettingsAdvanced.textContext": "Contexto", - "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Contexto y discrecionalidad", - "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Contexto, histórico y discrecionalidad", - "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Contexto e histórico", - "DE.Views.ParagraphSettingsAdvanced.textDefault": "Tabulador Predeterminado", + "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Contextuales y discrecionales", + "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Contextuales, históricas y discrecionales", + "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Contextuales e históricas", + "DE.Views.ParagraphSettingsAdvanced.textDefault": "Pestaña predeterminada", "DE.Views.ParagraphSettingsAdvanced.textDiscret": "Discrecionalidad", "DE.Views.ParagraphSettingsAdvanced.textEffects": "Efectos", "DE.Views.ParagraphSettingsAdvanced.textExact": "Exactamente", "DE.Views.ParagraphSettingsAdvanced.textFirstLine": "Primera linea", "DE.Views.ParagraphSettingsAdvanced.textHanging": "Suspendido", "DE.Views.ParagraphSettingsAdvanced.textHistorical": "Histórico", - "DE.Views.ParagraphSettingsAdvanced.textHistoricalDiscret": "Histórico y discrecionalidad", + "DE.Views.ParagraphSettingsAdvanced.textHistoricalDiscret": "Históricas y discrecionales", "DE.Views.ParagraphSettingsAdvanced.textJustified": "Justificado", "DE.Views.ParagraphSettingsAdvanced.textLeader": "Director", "DE.Views.ParagraphSettingsAdvanced.textLeft": "Izquierdo", @@ -2343,7 +2547,7 @@ "DE.Views.ParagraphSettingsAdvanced.textLigatures": "Ligaduras", "DE.Views.ParagraphSettingsAdvanced.textNone": "Ninguno", "DE.Views.ParagraphSettingsAdvanced.textNoneSpecial": "(ninguno)", - "DE.Views.ParagraphSettingsAdvanced.textOpenType": "Características de OpenType", + "DE.Views.ParagraphSettingsAdvanced.textOpenType": "Características OpenType", "DE.Views.ParagraphSettingsAdvanced.textPosition": "Posición", "DE.Views.ParagraphSettingsAdvanced.textRemove": "Eliminar", "DE.Views.ParagraphSettingsAdvanced.textRemoveAll": "Eliminar todo", @@ -2351,11 +2555,11 @@ "DE.Views.ParagraphSettingsAdvanced.textSet": "Especificar", "DE.Views.ParagraphSettingsAdvanced.textSpacing": "Espaciado", "DE.Views.ParagraphSettingsAdvanced.textStandard": "Solamente estándar", - "DE.Views.ParagraphSettingsAdvanced.textStandardContext": "Estándar y contexto", - "DE.Views.ParagraphSettingsAdvanced.textStandardContextDiscret": "Estándar, contexto y discrecionalidad", - "DE.Views.ParagraphSettingsAdvanced.textStandardContextHist": "Estándar, contexto e histórico", - "DE.Views.ParagraphSettingsAdvanced.textStandardDiscret": "Estándar y discrecionalidad", - "DE.Views.ParagraphSettingsAdvanced.textStandardHistDiscret": "Estándar, histórico y discrecionalidad", + "DE.Views.ParagraphSettingsAdvanced.textStandardContext": "Estándar y contextual", + "DE.Views.ParagraphSettingsAdvanced.textStandardContextDiscret": "Estándar, contextual y discrecional", + "DE.Views.ParagraphSettingsAdvanced.textStandardContextHist": "Estándar, contextual e histórico", + "DE.Views.ParagraphSettingsAdvanced.textStandardDiscret": "Estándar y discrecional", + "DE.Views.ParagraphSettingsAdvanced.textStandardHistDiscret": "Estándar, histórico y discrecional", "DE.Views.ParagraphSettingsAdvanced.textStandardHistorical": "Estándar e histórico", "DE.Views.ParagraphSettingsAdvanced.textTabCenter": "Al centro", "DE.Views.ParagraphSettingsAdvanced.textTabLeft": "Izquierdo", @@ -2373,6 +2577,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Fijar sólo borde superior", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Sin bordes", + "DE.Views.ProtectDialog.textComments": "Comentarios", + "DE.Views.ProtectDialog.textForms": "Relleno de formularios", + "DE.Views.ProtectDialog.textReview": "Cambios realizados", + "DE.Views.ProtectDialog.textView": "Sin cambios (Sólo lectura)", + "DE.Views.ProtectDialog.txtAllow": "Permitir sólo este tipo de edición en el documento", + "DE.Views.ProtectDialog.txtIncorrectPwd": "La contraseña de confirmación no es idéntica", + "DE.Views.ProtectDialog.txtOptional": "opcional", + "DE.Views.ProtectDialog.txtPassword": "Contraseña", + "DE.Views.ProtectDialog.txtProtect": "Proteger", + "DE.Views.ProtectDialog.txtRepeat": "Repita la contraseña", + "DE.Views.ProtectDialog.txtTitle": "Proteger", + "DE.Views.ProtectDialog.txtWarning": "Precaución: Si pierde u olvida su contraseña, no podrá recuperarla. Guárdalo en un lugar seguro.", "DE.Views.RightMenu.txtChartSettings": "Ajustes de gráfico", "DE.Views.RightMenu.txtFormSettings": "Ajustes de formulario", "DE.Views.RightMenu.txtHeaderFooterSettings": "Ajustes de encabezado y pie de página", @@ -2487,7 +2703,7 @@ "DE.Views.TableFormulaDialog.textTitle": "Ajustes de fórmula", "DE.Views.TableOfContentsSettings.strAlign": "Alinee los números de página a la derecha", "DE.Views.TableOfContentsSettings.strFullCaption": "Incluir etiqueta y número", - "DE.Views.TableOfContentsSettings.strLinks": "Formatear tabla de ilustraciones como enlaces", + "DE.Views.TableOfContentsSettings.strLinks": "Formatear tabla de contenido como enlaces", "DE.Views.TableOfContentsSettings.strLinksOF": "Formatear tabla de ilustraciones como enlaces", "DE.Views.TableOfContentsSettings.strShowPages": "Mostrar números de página", "DE.Views.TableOfContentsSettings.textBuildTable": "Crear tabla de contenidos desde", @@ -2563,12 +2779,20 @@ "DE.Views.TableSettings.tipOuter": "Fijar sólo borde exterior", "DE.Views.TableSettings.tipRight": "Fijar sólo borde exterior derecho", "DE.Views.TableSettings.tipTop": "Fijar sólo borde exterior superior", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Tablas con bordes y líneas", + "DE.Views.TableSettings.txtGroupTable_Custom": "Personalizado", + "DE.Views.TableSettings.txtGroupTable_Grid": "Tablas de cuadrícula", + "DE.Views.TableSettings.txtGroupTable_List": "Tablas de lista", + "DE.Views.TableSettings.txtGroupTable_Plain": "Tablas sin formato", "DE.Views.TableSettings.txtNoBorders": "Sin bordes", "DE.Views.TableSettings.txtTable_Accent": "Acento", + "DE.Views.TableSettings.txtTable_Bordered": "Con bordes", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Con bordes y líneas", "DE.Views.TableSettings.txtTable_Colorful": "Colorido", "DE.Views.TableSettings.txtTable_Dark": "Oscuro", "DE.Views.TableSettings.txtTable_GridTable": "Tabla de rejilla", "DE.Views.TableSettings.txtTable_Light": "Claro", + "DE.Views.TableSettings.txtTable_Lined": "Con líneas", "DE.Views.TableSettings.txtTable_ListTable": "Tabla de lista", "DE.Views.TableSettings.txtTable_PlainTable": "Tabla normal", "DE.Views.TableSettings.txtTable_TableGrid": "Cuadrícula de tabla", @@ -2590,12 +2814,12 @@ "DE.Views.TableSettingsAdvanced.textBottom": "Inferior", "DE.Views.TableSettingsAdvanced.textCellOptions": "Opciones de celda", "DE.Views.TableSettingsAdvanced.textCellProps": "Celda", - "DE.Views.TableSettingsAdvanced.textCellSize": "Tamaño de Celda", + "DE.Views.TableSettingsAdvanced.textCellSize": "Tamaño de сelda", "DE.Views.TableSettingsAdvanced.textCenter": "Al centro", "DE.Views.TableSettingsAdvanced.textCenterTooltip": "Al centro", "DE.Views.TableSettingsAdvanced.textCheckMargins": "Usar márgenes predeterminados", "DE.Views.TableSettingsAdvanced.textDefaultMargins": "Márgenes de celda predeterminados", - "DE.Views.TableSettingsAdvanced.textDistance": "Distancia del texto", + "DE.Views.TableSettingsAdvanced.textDistance": "Distancia desde el texto", "DE.Views.TableSettingsAdvanced.textHorizontal": "Horizontal ", "DE.Views.TableSettingsAdvanced.textIndLeft": "Sangría a la izquierda", "DE.Views.TableSettingsAdvanced.textLeft": "Izquierdo", @@ -2617,7 +2841,7 @@ "DE.Views.TableSettingsAdvanced.textRightTooltip": "Derecho", "DE.Views.TableSettingsAdvanced.textTable": "Tabla", "DE.Views.TableSettingsAdvanced.textTableBackColor": "Fondo de tabla", - "DE.Views.TableSettingsAdvanced.textTablePosition": "Posición de la tabla", + "DE.Views.TableSettingsAdvanced.textTablePosition": "Posición de tabla", "DE.Views.TableSettingsAdvanced.textTableSize": "Tamaño de tabla", "DE.Views.TableSettingsAdvanced.textTitle": "Tabla - Ajustes avanzados", "DE.Views.TableSettingsAdvanced.textTop": "Superior", @@ -2627,7 +2851,7 @@ "DE.Views.TableSettingsAdvanced.textWrap": "Ajuste de texto", "DE.Views.TableSettingsAdvanced.textWrapNoneTooltip": "Tabla en línea", "DE.Views.TableSettingsAdvanced.textWrapParallelTooltip": "Tabla flujo", - "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Ajuste de texto", + "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Estilo de ajuste", "DE.Views.TableSettingsAdvanced.textWrapText": "Ajustar texto", "DE.Views.TableSettingsAdvanced.tipAll": "Fijar borde exterior y todas líneas interiores ", "DE.Views.TableSettingsAdvanced.tipCellAll": "Fijar bordes sólo para celdas interiores", @@ -2703,9 +2927,10 @@ "DE.Views.Toolbar.capBtnInsImage": "Imagen", "DE.Views.Toolbar.capBtnInsPagebreak": "Cambios de línea", "DE.Views.Toolbar.capBtnInsShape": "Forma", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Símbolo", "DE.Views.Toolbar.capBtnInsTable": "Tabla", - "DE.Views.Toolbar.capBtnInsTextart": "Galería de Texto", + "DE.Views.Toolbar.capBtnInsTextart": "Galería de texto", "DE.Views.Toolbar.capBtnInsTextbox": "Cuadro de Texto", "DE.Views.Toolbar.capBtnLineNumbers": "Numeración de Líneas", "DE.Views.Toolbar.capBtnMargins": "Márgenes", @@ -2849,13 +3074,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Aumentar sangría", "DE.Views.Toolbar.tipInsertChart": "Insertar gráfico", "DE.Views.Toolbar.tipInsertEquation": "Insertar ecuación", + "DE.Views.Toolbar.tipInsertHorizontalText": "Insertar cuadro de texto horizontal", "DE.Views.Toolbar.tipInsertImage": "Insertar imagen", "DE.Views.Toolbar.tipInsertNum": "Insertar número de página", "DE.Views.Toolbar.tipInsertShape": "Insertar autoforma", + "DE.Views.Toolbar.tipInsertSmartArt": "Insertar SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Insertar Symboló", "DE.Views.Toolbar.tipInsertTable": "Insertar tabla", "DE.Views.Toolbar.tipInsertText": "Insertar cuadro de texto", "DE.Views.Toolbar.tipInsertTextArt": "Insertar Galería de Texto", + "DE.Views.Toolbar.tipInsertVerticalText": "Insertar cuadro de texto vertical", "DE.Views.Toolbar.tipLineNumbers": "Mostrar números de línea", "DE.Views.Toolbar.tipLineSpace": "Espaciado de línea de párrafo", "DE.Views.Toolbar.tipMailRecepients": "Combinación de Correspondencia", @@ -2926,9 +3154,11 @@ "DE.Views.ViewTab.textDarkDocument": "Documento oscuro", "DE.Views.ViewTab.textFitToPage": "Ajustar a la página", "DE.Views.ViewTab.textFitToWidth": "Ajustar al ancho", - "DE.Views.ViewTab.textInterfaceTheme": "Tema del interfaz", + "DE.Views.ViewTab.textInterfaceTheme": "Tema de interfaz", + "DE.Views.ViewTab.textLeftMenu": "Panel izquierdo", "DE.Views.ViewTab.textNavigation": "Navegación", "DE.Views.ViewTab.textOutline": "Títulos", + "DE.Views.ViewTab.textRightMenu": "Panel derecho", "DE.Views.ViewTab.textRulers": "Reglas", "DE.Views.ViewTab.textStatusBar": "Barra de estado", "DE.Views.ViewTab.textZoom": "Zoom", @@ -2942,7 +3172,7 @@ "DE.Views.WatermarkSettingsDialog.textColor": "Color de texto", "DE.Views.WatermarkSettingsDialog.textDiagonal": "Diagonal", "DE.Views.WatermarkSettingsDialog.textFont": "Fuente", - "DE.Views.WatermarkSettingsDialog.textFromFile": "De archivo", + "DE.Views.WatermarkSettingsDialog.textFromFile": "Desde archivo", "DE.Views.WatermarkSettingsDialog.textFromStorage": "Desde almacenamiento", "DE.Views.WatermarkSettingsDialog.textFromUrl": "De URL", "DE.Views.WatermarkSettingsDialog.textHor": "Horizontal ", @@ -2952,13 +3182,13 @@ "DE.Views.WatermarkSettingsDialog.textLayout": "Disposición", "DE.Views.WatermarkSettingsDialog.textNone": "Ninguno", "DE.Views.WatermarkSettingsDialog.textScale": "Escala", - "DE.Views.WatermarkSettingsDialog.textSelect": "Seleccionar Imagen", + "DE.Views.WatermarkSettingsDialog.textSelect": "Seleccionar imagen", "DE.Views.WatermarkSettingsDialog.textStrikeout": "Tachado", "DE.Views.WatermarkSettingsDialog.textText": "Texto", "DE.Views.WatermarkSettingsDialog.textTextW": "Marca de agua de texto", - "DE.Views.WatermarkSettingsDialog.textTitle": "Ajustes de Marca de agua", + "DE.Views.WatermarkSettingsDialog.textTitle": "Ajustes de marca de agua", "DE.Views.WatermarkSettingsDialog.textTransparency": "Semitransparente", "DE.Views.WatermarkSettingsDialog.textUnderline": "Subrayado", - "DE.Views.WatermarkSettingsDialog.tipFontName": "Nombre de fuente", - "DE.Views.WatermarkSettingsDialog.tipFontSize": "Tamaño de fuente" + "DE.Views.WatermarkSettingsDialog.tipFontName": "Nombre del tipo de letra", + "DE.Views.WatermarkSettingsDialog.tipFontSize": "Tamaño del tipo de letra" } \ No newline at end of file diff --git a/apps/documenteditor/main/locale/eu.json b/apps/documenteditor/main/locale/eu.json index d8547fa4a..49413d270 100644 --- a/apps/documenteditor/main/locale/eu.json +++ b/apps/documenteditor/main/locale/eu.json @@ -125,6 +125,136 @@ "Common.define.chartData.textScatterSmoothMarker": "Barreiadura lerro leundu eta markatzaileekin", "Common.define.chartData.textStock": "Kotizazioak", "Common.define.chartData.textSurface": "Gainazala", + "Common.define.smartArt.textAccentedPicture": "Enfasidun irudia", + "Common.define.smartArt.textAccentProcess": "Enfasi-prozesua", + "Common.define.smartArt.textAlternatingFlow": "Txandakako fluxua", + "Common.define.smartArt.textAlternatingHexagons": "Hexagono txandakatuak", + "Common.define.smartArt.textAlternatingPictureBlocks": "Irudi-bloke txandakatuak", + "Common.define.smartArt.textAlternatingPictureCircles": "Irudi-zirkulu txandakatuak", + "Common.define.smartArt.textArchitectureLayout": "Arkitektura-diseinua", + "Common.define.smartArt.textArrowRibbon": "Gezi-zinta", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Goranzko irudi enfasi-prozesua", + "Common.define.smartArt.textBalance": "Balantzea", + "Common.define.smartArt.textBasicBendingProcess": "Oinarrizko prozesu kateatua", + "Common.define.smartArt.textBasicBlockList": "Oinarrizko bloke-zerrenda", + "Common.define.smartArt.textBasicChevronProcess": "Oinarrizko xebroi-prozesua", + "Common.define.smartArt.textBasicCycle": "Oinarrizko zikloa", + "Common.define.smartArt.textBasicMatrix": "Oinarrizko matrizea", + "Common.define.smartArt.textBasicPie": "Oinarrizko biribila", + "Common.define.smartArt.textBasicProcess": "Oinarrizko prozesua", + "Common.define.smartArt.textBasicPyramid": "Oinarrizko piramidea", + "Common.define.smartArt.textBasicRadial": "Oinarrizko erradiala", + "Common.define.smartArt.textBasicTarget": "Oinarrizko helburua", + "Common.define.smartArt.textBasicTimeline": "Oinarrizko denbora-lerroa", + "Common.define.smartArt.textBasicVenn": "Oinarrizko Venn diagrama", + "Common.define.smartArt.textBendingPictureAccentList": "Irudi kateatuen zerrenda nabarmendua", + "Common.define.smartArt.textBendingPictureBlocks": "Irudi kateatuen blokeak", + "Common.define.smartArt.textBendingPictureCaption": "Epigrafedun irudi kateatuak", + "Common.define.smartArt.textBendingPictureCaptionList": "Epigrafedun irudi kateatuen zerrenda", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Testu erdi-gardeneko irudi kateatuak", + "Common.define.smartArt.textBlockCycle": "Bloke-zikloa", + "Common.define.smartArt.textBubblePictureList": "Burbuila-irudien zerrenda", + "Common.define.smartArt.textCaptionedPictures": "Irudi epigrafedunak", + "Common.define.smartArt.textChevronAccentProcess": "Xebroi-enfasiaren prozesua", + "Common.define.smartArt.textChevronList": "Xebroi-zerrenda", + "Common.define.smartArt.textCircleAccentTimeline": "Zirkuluen denbora-eskala nabarmendua", + "Common.define.smartArt.textCircleArrowProcess": "Gezi-prozesu zirkularra", + "Common.define.smartArt.textCirclePictureHierarchy": "Irudi-hierarkia zirkularra", + "Common.define.smartArt.textCircleProcess": "Prozesu zirkularra", + "Common.define.smartArt.textCircleRelationship": "Zirkulu-harremana", + "Common.define.smartArt.textCircularBendingProcess": "Prozesu kateatu zirkularra", + "Common.define.smartArt.textCircularPictureCallout": "Zirkulu-globoa", + "Common.define.smartArt.textClosedChevronProcess": "Xebroi itxiaren prozesua", + "Common.define.smartArt.textContinuousArrowProcess": "Gezi-prozesu jarraitua", + "Common.define.smartArt.textContinuousBlockProcess": "Bloke-prozesu jarraitua", + "Common.define.smartArt.textContinuousCycle": "Ziklo jarraitua", + "Common.define.smartArt.textContinuousPictureList": "Irudi-zerrenda jarraitua", + "Common.define.smartArt.textConvergingArrows": "Gezi konbergenteak", + "Common.define.smartArt.textConvergingRadial": "Erradial konbergentea", + "Common.define.smartArt.textConvergingText": "Testu konbergentea", + "Common.define.smartArt.textCounterbalanceArrows": "Kontrabalantzearen geziak", + "Common.define.smartArt.textCycle": "Zikloa", + "Common.define.smartArt.textCycleMatrix": "Zikloaren matrizea", + "Common.define.smartArt.textDescendingBlockList": "Beheranzko bloke-zerrenda", + "Common.define.smartArt.textDescendingProcess": "Beheranzko prozesua", + "Common.define.smartArt.textDetailedProcess": "Prozesu xehatua", + "Common.define.smartArt.textDivergingArrows": "Gezi dibergenteak", + "Common.define.smartArt.textDivergingRadial": "Erradial dibergentea", + "Common.define.smartArt.textEquation": "Ekuazioa", + "Common.define.smartArt.textFramedTextPicture": "Testu-irudi markoduna", + "Common.define.smartArt.textFunnel": "Inbutua", + "Common.define.smartArt.textGear": "Engranajea", + "Common.define.smartArt.textGridMatrix": "Saretaren matrizea", + "Common.define.smartArt.textGroupedList": "Taldekatutako zerrenda", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Organigrama erdizirkularra", + "Common.define.smartArt.textHexagonCluster": "Hexagono multzokatuak", + "Common.define.smartArt.textHexagonRadial": "Hexagono erradiala", + "Common.define.smartArt.textHierarchy": "Hierarkia", + "Common.define.smartArt.textHierarchyList": "Hierarkia-zerrenda", + "Common.define.smartArt.textHorizontalBulletList": "Buletdun zerrenda horizontala", + "Common.define.smartArt.textHorizontalHierarchy": "Hierarkia horizontala", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Etiketadun hierarkia horizontala", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Maila anitzeko hierarkia horizontala", + "Common.define.smartArt.textHorizontalOrganizationChart": "Organigrama horizontala", + "Common.define.smartArt.textHorizontalPictureList": "Irudi-zerrenda horizontala", + "Common.define.smartArt.textIncreasingArrowProcess": "Goranzko gezi-prozesua", + "Common.define.smartArt.textIncreasingCircleProcess": "Goranzko zirkulu-prozesua", + "Common.define.smartArt.textInterconnectedBlockProcess": "Elkarri lotuta dagoen bloke-prozesua", + "Common.define.smartArt.textInterconnectedRings": "Elkarri lotuta dauden uztaiak", + "Common.define.smartArt.textInvertedPyramid": "Piramide alderantzikatua", + "Common.define.smartArt.textLabeledHierarchy": "Etiketadun hierarkia", + "Common.define.smartArt.textLinearVenn": "Venn lineala", + "Common.define.smartArt.textLinedList": "Marratxodun zerrenda", + "Common.define.smartArt.textList": "Zerrenda", + "Common.define.smartArt.textMatrix": "Matrizea", + "Common.define.smartArt.textMultidirectionalCycle": "Norabide anitzeko zikloa", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Izena eta lanpostua dituen organigrama", + "Common.define.smartArt.textNestedTarget": "Xede habiaratua", + "Common.define.smartArt.textNondirectionalCycle": "Norabiderik gabeko zikloa", + "Common.define.smartArt.textOpposingArrows": "Aurkako geziak", + "Common.define.smartArt.textOpposingIdeas": "Aurkako ideiak", + "Common.define.smartArt.textOrganizationChart": "Organigrama", + "Common.define.smartArt.textOther": "Beste bat", + "Common.define.smartArt.textPhasedProcess": "Fasekako prozesua", + "Common.define.smartArt.textPicture": "Irudia", + "Common.define.smartArt.textPictureAccentBlocks": "Irudi enfasidunen blokeak", + "Common.define.smartArt.textPictureAccentList": "Irudiaren enfasi-zerrenda", + "Common.define.smartArt.textPictureAccentProcess": "Irudi enfasidunaren prozesua", + "Common.define.smartArt.textPictureCaptionList": "Irudi-epigrafearen zerrenda", + "Common.define.smartArt.textPictureFrame": "Irudi-markoa", + "Common.define.smartArt.textPictureGrid": "Irudi-sareta", + "Common.define.smartArt.textPictureLineup": "Irudi lerrokatuak", + "Common.define.smartArt.textPictureOrganizationChart": "Irudien organigrama", + "Common.define.smartArt.textPictureStrips": "Irudien marrak", + "Common.define.smartArt.textPieProcess": "Prozesu biribila", + "Common.define.smartArt.textPlusAndMinus": "Plus eta minus", + "Common.define.smartArt.textProcess": "Prozesua", + "Common.define.smartArt.textProcessArrows": "Prozesu-geziak", + "Common.define.smartArt.textProcessList": "Prozesu-zerrenda", + "Common.define.smartArt.textPyramid": "Piramidea", + "Common.define.smartArt.textPyramidList": "Piramide-zerrenda", + "Common.define.smartArt.textRadialCluster": "Erradial multzokatua", + "Common.define.smartArt.textRadialCycle": "Ziklo erradiala", + "Common.define.smartArt.textRadialList": "Zerrenda erradiala", + "Common.define.smartArt.textRadialPictureList": "Irudi-zerrenda erradiala", + "Common.define.smartArt.textRadialVenn": "Venn erradiala", + "Common.define.smartArt.textRandomToResultProcess": "Prozesuaren ausazko emaitza", + "Common.define.smartArt.textRelationship": "Erlazioa", + "Common.define.smartArt.textRepeatingBendingProcess": "Prozesu kateatu errepikaria", + "Common.define.smartArt.textReverseList": "Zerrenda alderantzikatua", + "Common.define.smartArt.textSegmentedCycle": "Ziklo segmentatua", + "Common.define.smartArt.textSegmentedProcess": "Prozesu segmentatua", + "Common.define.smartArt.textSegmentedPyramid": "Piramide segmentatua", + "Common.define.smartArt.textSnapshotPictureList": "Argazki-zerrenda", + "Common.define.smartArt.textSpiralPicture": "Irudi espirala", + "Common.define.smartArt.textSquareAccentList": "Enfasi karratuzko zerrenda", + "Common.define.smartArt.textStackedList": "Zerrenda pilatua", + "Common.define.smartArt.textStackedVenn": "Venn pilatua", + "Common.define.smartArt.textStaggeredProcess": "Pilatutako prozesua", + "Common.define.smartArt.textStepDownProcess": "Beheranzko prozesua", + "Common.define.smartArt.textStepUpProcess": "Goranzko prozesua", + "Common.define.smartArt.textSubStepProcess": "Azpi-urratsen prozesua", + "Common.define.smartArt.textTabList": "Fitxa-zerrenda", "Common.Translation.textMoreButton": "Gehiago", "Common.Translation.warnFileLocked": "Ezin duzu fitxategi hau editatu, beste aplikazio batean editatzen ari direlako.", "Common.Translation.warnFileLockedBtnEdit": "Sortu kopia", @@ -288,6 +418,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Kargatzen...", "Common.Views.DocumentAccessDialog.textTitle": "Partekatzearen ezarpenak", "Common.Views.ExternalDiagramEditor.textTitle": "Diagrama-editorea", + "Common.Views.ExternalEditor.textClose": "Itxi", + "Common.Views.ExternalEditor.textSave": "Gorde eta irten", "Common.Views.ExternalMergeEditor.textTitle": "Posta-konbinazioaren hartzaileak", "Common.Views.ExternalOleEditor.textTitle": "Kalkulu-orri editorea", "Common.Views.Header.labelCoUsersDescr": "Fitxategia editatzen ari diren erabiltzaileak:", @@ -354,6 +486,7 @@ "Common.Views.Plugins.textStart": "Hasi", "Common.Views.Plugins.textStop": "Gelditu", "Common.Views.Protection.hintAddPwd": "Enkriptatu pasahitzarekin", + "Common.Views.Protection.hintDelPwd": "Ezabatu pasahitza", "Common.Views.Protection.hintPwd": "Aldatu edo ezabatu pasahitza", "Common.Views.Protection.hintSignature": "Gehitu sinadura digitala edo sinadura-lerroa", "Common.Views.Protection.txtAddPwd": "Gehitu pasahitza", @@ -499,6 +632,7 @@ "Common.Views.SignDialog.tipFontName": "Letra-tipoaren izena", "Common.Views.SignDialog.tipFontSize": "Letra-tamaina", "Common.Views.SignSettingsDialog.textAllowComment": "Onartu sinatzaileak sinaduraren elkarrizketa-koadroan iruzkina gehitzea", + "Common.Views.SignSettingsDialog.textDefInstruction": "Dokumentu hau sinatu aurretik, egiaztatu sinatzen ari zaren edukia zuzena dela.", "Common.Views.SignSettingsDialog.textInfoEmail": "Posta elektronikoa", "Common.Views.SignSettingsDialog.textInfoName": "Izena", "Common.Views.SignSettingsDialog.textInfoTitle": "Sinatzailearen titulua", @@ -578,6 +712,11 @@ "DE.Controllers.Main.errorFilePassProtect": "Fitxategia pasahitzez babestua dago eta ezin da ireki.", "DE.Controllers.Main.errorFileSizeExceed": "Fitxategiaren tamainak zure zerbitzarirako ezarritako muga gainditzen du.
    Jarri harremanetan dokumentu-zerbitzariaren administratzailearekin informazio gehiago lortzeko.", "DE.Controllers.Main.errorForceSave": "Errore bat gertatu da dokumentua gordetzean.
    Erabili 'Deskargatu honela' aukera fitxategia zure ordenagailuko disko gogorrean gordetzeko edo saiatu berriro geroago.", + "DE.Controllers.Main.errorInconsistentExt": "Errore bat gertatu da fitxategia irekitzean.
    Fitxategiaren edukia eta luzapena ez datoz bat.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Errore bat gertatu da fitxategia irekitzean.
    Fitxategiaren edukia testu-dokumentu bati dagokio (adibidez, docx), baina fitxategiaren luzapena ez dator bat: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Errore bat gertatu da fitxategia irekitzean.
    Fitxategiaren edukia ondorengo formatuetako bati dagokio: pdf/djvu/xps/oxps, baina fitxategiaren luzapena ez dator bat: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Errore bat gertatu da fitxategia irekitzean.
    Fitxategiaren edukia aurkezpen bati dagokio (adibidez, pptx), baina fitxategiaren luzapena ez dator bat: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Errore bat gertatu da fitxategia irekitzean.
    Fitxategiaren edukia kalkulu-orri bati dagokio (adibidez, xlsx), baina fitxategiaren luzapena ez dator bat: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Gako-deskriptore ezezaguna", "DE.Controllers.Main.errorKeyExpire": "Gakoaren deskriptorea iraungi da", "DE.Controllers.Main.errorLoadingFont": "Letra-tipoak ez dira kargatu.
    Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", @@ -640,6 +779,7 @@ "DE.Controllers.Main.textClose": "Itxi", "DE.Controllers.Main.textCloseTip": "Egin klik argibidea ixteko", "DE.Controllers.Main.textContactUs": "Jarri harremanetan salmenta-sailarekin", + "DE.Controllers.Main.textContinue": "Jarraitu", "DE.Controllers.Main.textConvertEquation": "Ekuazio hau dagoeneko euskarririk ez duen ekuazio editorearen bertsio zahar batekin sortu zen. Editatu ahal izateko, bihurtu ekuazioa Office Math ML formatura.
    Orain bihurtu?", "DE.Controllers.Main.textCustomLoader": "Kontuan izan, lizentziaren baldintzen arabera, ez duzula baimenik kargatzailea aldatzeko.
    Jarri harremanetan gure Salmenta departamentuarekin aurrekontu bat eskatzeko.", "DE.Controllers.Main.textDisconnect": "Konexioa galdu da", @@ -1329,11 +1469,22 @@ "DE.Views.CellsAddDialog.textRow": "Errenkadak", "DE.Views.CellsAddDialog.textTitle": "Txertatu hainbat", "DE.Views.CellsAddDialog.textUp": "Kurtsorearen gainean", + "DE.Views.ChartSettings.text3dDepth": "Sakonera (oinarriaren %)", + "DE.Views.ChartSettings.text3dHeight": "Altuera (oinarriaren %)", + "DE.Views.ChartSettings.text3dRotation": "3D biraketa", "DE.Views.ChartSettings.textAdvanced": "Erakutsi ezarpen aurreratuak", + "DE.Views.ChartSettings.textAutoscale": "Eskala automatikoa", "DE.Views.ChartSettings.textChartType": "Aldatu diagrama-mota", + "DE.Views.ChartSettings.textDefault": "Biraketa lehenetsia", + "DE.Views.ChartSettings.textDown": "Behera", "DE.Views.ChartSettings.textEditData": "Editatu datuak", "DE.Views.ChartSettings.textHeight": "Altuera", + "DE.Views.ChartSettings.textLeft": "Ezkerra", + "DE.Views.ChartSettings.textNarrow": "Ikuspegiaren eremu estua", "DE.Views.ChartSettings.textOriginalSize": "Benetako tamaina", + "DE.Views.ChartSettings.textPerspective": "Perspektiba", + "DE.Views.ChartSettings.textRight": "Eskuina", + "DE.Views.ChartSettings.textRightAngle": "Ardatz angeluzuzenak", "DE.Views.ChartSettings.textSize": "Tamaina", "DE.Views.ChartSettings.textStyle": "Estiloa", "DE.Views.ChartSettings.textUndock": "Desatrakatu paneletik", @@ -1428,14 +1579,24 @@ "DE.Views.DateTimeDialog.textLang": "Hizkuntza", "DE.Views.DateTimeDialog.textUpdate": "Eguneratu automatikoki", "DE.Views.DateTimeDialog.txtTitle": "Data eta ordua", + "DE.Views.DocProtection.hintProtectDoc": "Babestu dokumentua", + "DE.Views.DocProtection.txtDocProtectedComment": "Dokumentua babestuta dago.
    Iruzkinak soilik txertatu ditzakezu dokumentuan.", + "DE.Views.DocProtection.txtDocProtectedForms": "Dokumentua babestuta dago.
    Dokumentuko formularioak soilik bete ditzakezu.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Dokumentua babestuta dago.
    Dokumentu hau editatu dezakezu, baina aldaketen jarraipena egingo da.", + "DE.Views.DocProtection.txtDocProtectedView": "Dokumentua babestuta dago.
    Dokumentua irakurtzeko soilik da.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Sartu pasahitza dokumentuari babesa kentzeko", + "DE.Views.DocProtection.txtProtectDoc": "Babestu dokumentua", "DE.Views.DocumentHolder.aboveText": "Gainean", "DE.Views.DocumentHolder.addCommentText": "Gehitu iruzkina", "DE.Views.DocumentHolder.advancedDropCapText": "Letra kapitalaren ezarpenak", + "DE.Views.DocumentHolder.advancedEquationText": "Ekuazioaren ezarpenak", "DE.Views.DocumentHolder.advancedFrameText": "Markoaren ezarpen aurreratuak", "DE.Views.DocumentHolder.advancedParagraphText": "Paragrafoaren ezarpen aurreratuak", "DE.Views.DocumentHolder.advancedTableText": "Taularen ezarpen aurreratuak", "DE.Views.DocumentHolder.advancedText": "Ezarpen aurreratuak", "DE.Views.DocumentHolder.alignmentText": "Lerrokatzea", + "DE.Views.DocumentHolder.allLinearText": "Guztia - Lineala", + "DE.Views.DocumentHolder.allProfText": "Guztia - Profesionala", "DE.Views.DocumentHolder.belowText": "Azpian", "DE.Views.DocumentHolder.breakBeforeText": "Orri-jauzia aurretik", "DE.Views.DocumentHolder.bulletsText": "Buletak eta numerazioa", @@ -1444,6 +1605,8 @@ "DE.Views.DocumentHolder.centerText": "Erdia", "DE.Views.DocumentHolder.chartText": "Diagramaren ezarpen aurreratuak", "DE.Views.DocumentHolder.columnText": "Zutabea", + "DE.Views.DocumentHolder.currLinearText": "Unekoa - Lineala", + "DE.Views.DocumentHolder.currProfText": "Unekoa - Profesionala", "DE.Views.DocumentHolder.deleteColumnText": "Ezabatu zutabea", "DE.Views.DocumentHolder.deleteRowText": "Ezabatu errenkada", "DE.Views.DocumentHolder.deleteTableText": "Ezabatu taula", @@ -1456,6 +1619,7 @@ "DE.Views.DocumentHolder.editFooterText": "Editatu orri-oina", "DE.Views.DocumentHolder.editHeaderText": "Editatu goiburua", "DE.Views.DocumentHolder.editHyperlinkText": "Editatu hiperesteka", + "DE.Views.DocumentHolder.eqToInlineText": "Aldatu txertatura", "DE.Views.DocumentHolder.guestText": "Gonbidatua", "DE.Views.DocumentHolder.hyperlinkText": "Hiperesteka", "DE.Views.DocumentHolder.ignoreAllSpellText": "Egin ez ikusia guztiei", @@ -1470,6 +1634,7 @@ "DE.Views.DocumentHolder.insertText": "Txertatu", "DE.Views.DocumentHolder.keepLinesText": "Mantendu lerroak elkarrekin", "DE.Views.DocumentHolder.langText": "Hautatu hizkuntza", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Ezkerra", "DE.Views.DocumentHolder.loadSpellText": "Aldagaiak kargatzen...", "DE.Views.DocumentHolder.mergeCellsText": "Konbinatu gelaxkak", @@ -2066,6 +2231,7 @@ "DE.Views.LeftMenu.tipComments": "Iruzkinak", "DE.Views.LeftMenu.tipNavigation": "Nabigazioa", "DE.Views.LeftMenu.tipOutline": "Izenburuak", + "DE.Views.LeftMenu.tipPageThumbnails": "Orrien koadro txikiak", "DE.Views.LeftMenu.tipPlugins": "Pluginak", "DE.Views.LeftMenu.tipSearch": "Bilatu", "DE.Views.LeftMenu.tipSupport": "Oharrak eta laguntza", @@ -2373,6 +2539,16 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Ezarri goiko ertza soilik", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automatikoa", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Ertzik gabe", + "DE.Views.ProtectDialog.textComments": "Iruzkinak", + "DE.Views.ProtectDialog.textForms": "Formularioak betetzea", + "DE.Views.ProtectDialog.textView": "Aldaketarik ez (irakurtzeko soilik)", + "DE.Views.ProtectDialog.txtAllow": "Onartu soilik edizio-mota hau dokumentuan", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Berrespen-pasahitza ez da berdina", + "DE.Views.ProtectDialog.txtOptional": "hautazkoa", + "DE.Views.ProtectDialog.txtPassword": "Pasahitza", + "DE.Views.ProtectDialog.txtProtect": "Babestu", + "DE.Views.ProtectDialog.txtRepeat": "Errepikatu pasahitza", + "DE.Views.ProtectDialog.txtTitle": "Babestu", "DE.Views.RightMenu.txtChartSettings": "Diagramaren ezarpenak", "DE.Views.RightMenu.txtFormSettings": "Formularioaren ezarpenak", "DE.Views.RightMenu.txtHeaderFooterSettings": "Goiburu eta oinaren ezarpenak", @@ -2563,12 +2739,20 @@ "DE.Views.TableSettings.tipOuter": "Ezarri kanpoko ertza soilik", "DE.Views.TableSettings.tipRight": "Ezarri kanpoko eskuineko ertza soilik", "DE.Views.TableSettings.tipTop": "Ezarri kanpoko goiko ertza soilik", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Taula ertzdun eta marratuak", + "DE.Views.TableSettings.txtGroupTable_Custom": "Pertsonalizatua", + "DE.Views.TableSettings.txtGroupTable_Grid": "Sareta-taulak", + "DE.Views.TableSettings.txtGroupTable_List": "Zerrenda-taulak", + "DE.Views.TableSettings.txtGroupTable_Plain": "Taula arruntak", "DE.Views.TableSettings.txtNoBorders": "Ertzik gabe", "DE.Views.TableSettings.txtTable_Accent": "Azentua", + "DE.Views.TableSettings.txtTable_Bordered": "Ertzduna", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Ertzduna eta marratua", "DE.Views.TableSettings.txtTable_Colorful": "Koloretsua", "DE.Views.TableSettings.txtTable_Dark": "Iluna", "DE.Views.TableSettings.txtTable_GridTable": "Sareta-taula", "DE.Views.TableSettings.txtTable_Light": "Argia", + "DE.Views.TableSettings.txtTable_Lined": "Marratua", "DE.Views.TableSettings.txtTable_ListTable": "Zerrenda-taula", "DE.Views.TableSettings.txtTable_PlainTable": "Taula arrunta", "DE.Views.TableSettings.txtTable_TableGrid": "Saretadun taula", @@ -2703,6 +2887,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Irudia", "DE.Views.Toolbar.capBtnInsPagebreak": "Jauziak", "DE.Views.Toolbar.capBtnInsShape": "Forma", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Ikurra", "DE.Views.Toolbar.capBtnInsTable": "Taula", "DE.Views.Toolbar.capBtnInsTextart": "Testu-artea", @@ -2849,13 +3034,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Handiagotu koska", "DE.Views.Toolbar.tipInsertChart": "Txertatu diagrama", "DE.Views.Toolbar.tipInsertEquation": "Txertatu ekuazioa", + "DE.Views.Toolbar.tipInsertHorizontalText": "Txertatu testu-koadro horizontala", "DE.Views.Toolbar.tipInsertImage": "Txertatu irudia", "DE.Views.Toolbar.tipInsertNum": "Txertatu orrialde-zenbakia", "DE.Views.Toolbar.tipInsertShape": "Txertatu forma automatikoa", + "DE.Views.Toolbar.tipInsertSmartArt": "Txertatu SmartArt-a", "DE.Views.Toolbar.tipInsertSymbol": "Txertatu ikurra", "DE.Views.Toolbar.tipInsertTable": "Txertatu taula", "DE.Views.Toolbar.tipInsertText": "Txertatu testu-koadroa", "DE.Views.Toolbar.tipInsertTextArt": "Txertatu testu-artea", + "DE.Views.Toolbar.tipInsertVerticalText": "Txertatu testu-koadro bertikala", "DE.Views.Toolbar.tipLineNumbers": "Erakutsi lerro zenbakiak", "DE.Views.Toolbar.tipLineSpace": "Paragrafoaren lerroartea", "DE.Views.Toolbar.tipMailRecepients": "Posta-konbinazioa", @@ -2927,8 +3115,10 @@ "DE.Views.ViewTab.textFitToPage": "Doitu orrira", "DE.Views.ViewTab.textFitToWidth": "Doitu zabalerara", "DE.Views.ViewTab.textInterfaceTheme": "Interfazearen gaia", + "DE.Views.ViewTab.textLeftMenu": "Ezkerreko panela", "DE.Views.ViewTab.textNavigation": "Nabigazioa", "DE.Views.ViewTab.textOutline": "Izenburuak", + "DE.Views.ViewTab.textRightMenu": "Eskuineko panela", "DE.Views.ViewTab.textRulers": "Erregelak", "DE.Views.ViewTab.textStatusBar": "Egoera-barra", "DE.Views.ViewTab.textZoom": "Zooma", diff --git a/apps/documenteditor/main/locale/fr.json b/apps/documenteditor/main/locale/fr.json index 663c92832..3404ee030 100644 --- a/apps/documenteditor/main/locale/fr.json +++ b/apps/documenteditor/main/locale/fr.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "disperser avec des lignes lisses et marqueurs", "Common.define.chartData.textStock": "Boursier", "Common.define.chartData.textSurface": "Surface", + "Common.define.smartArt.textAccentedPicture": "Image accentuée", + "Common.define.smartArt.textAccentProcess": "Processus accentué", + "Common.define.smartArt.textAlternatingFlow": "Flux interactif", + "Common.define.smartArt.textAlternatingHexagons": "Hexagones alternés", + "Common.define.smartArt.textAlternatingPictureBlocks": "Blocs d'images alternées", + "Common.define.smartArt.textAlternatingPictureCircles": "Cercles d'images alternées", + "Common.define.smartArt.textArchitectureLayout": "Disposition architecture", + "Common.define.smartArt.textArrowRibbon": "Ruban flèche", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Processus accentué dans un ordre croissant avec images", + "Common.define.smartArt.textBalance": "Balance", + "Common.define.smartArt.textBasicBendingProcess": "Processus en lacet simple", + "Common.define.smartArt.textBasicBlockList": "Liste de blocs simple", + "Common.define.smartArt.textBasicChevronProcess": "Processus en chevrons simple", + "Common.define.smartArt.textBasicCycle": "Cycle simple", + "Common.define.smartArt.textBasicMatrix": "Matrice simple", + "Common.define.smartArt.textBasicPie": "Graphique en secteurs simple", + "Common.define.smartArt.textBasicProcess": "Processus simple", + "Common.define.smartArt.textBasicPyramid": "Pyramide simple", + "Common.define.smartArt.textBasicRadial": "Radial simple", + "Common.define.smartArt.textBasicTarget": "Cible simple", + "Common.define.smartArt.textBasicTimeline": "Chronologie simple", + "Common.define.smartArt.textBasicVenn": "Venn simple", + "Common.define.smartArt.textBendingPictureAccentList": "Liste accentuée en lacet avec images", + "Common.define.smartArt.textBendingPictureBlocks": "Blocs en lacet avec images", + "Common.define.smartArt.textBendingPictureCaption": "Images en lacet avec légendes", + "Common.define.smartArt.textBendingPictureCaptionList": "Liste d’images en lacet avec légendes", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Texte semi-transparent en lacet avec images", + "Common.define.smartArt.textBlockCycle": "Cycle en blocs", + "Common.define.smartArt.textBubblePictureList": "Liste d’images avec bulles", + "Common.define.smartArt.textCaptionedPictures": "Images avec légende", + "Common.define.smartArt.textChevronAccentProcess": "Processus accentué en chevrons", + "Common.define.smartArt.textChevronList": "Liste de chevrons", + "Common.define.smartArt.textCircleAccentTimeline": "Barre de planning accentuée avec cercles", + "Common.define.smartArt.textCircleArrowProcess": "Processus en flèches circulaires", + "Common.define.smartArt.textCirclePictureHierarchy": "Hiérarchie avec images rondes", + "Common.define.smartArt.textCircleProcess": "Processus en cercles", + "Common.define.smartArt.textCircleRelationship": "Relation circulaire", + "Common.define.smartArt.textCircularBendingProcess": "Processus en lacets avec bulles", + "Common.define.smartArt.textCircularPictureCallout": "Images circulaires avec légende", + "Common.define.smartArt.textClosedChevronProcess": "Processus en chevrons fermés", + "Common.define.smartArt.textContinuousArrowProcess": "Processus en flèche continue", + "Common.define.smartArt.textContinuousBlockProcess": "Processus en bloc continu", + "Common.define.smartArt.textContinuousCycle": "Cycle continu", + "Common.define.smartArt.textContinuousPictureList": "Liste continue avec images", + "Common.define.smartArt.textConvergingArrows": "Flèches convergentes", + "Common.define.smartArt.textConvergingRadial": "Radial convergeant", + "Common.define.smartArt.textConvergingText": "Texte convergent", + "Common.define.smartArt.textCounterbalanceArrows": "Flèches d’équilibrage", + "Common.define.smartArt.textCycle": "Cycle", + "Common.define.smartArt.textCycleMatrix": "Matrice de cycle", + "Common.define.smartArt.textDescendingBlockList": "Liste de blocs décroissante", + "Common.define.smartArt.textDescendingProcess": "Processus décroissant", + "Common.define.smartArt.textDetailedProcess": "Processus détaillé", + "Common.define.smartArt.textDivergingArrows": "Flèches divergentes", + "Common.define.smartArt.textDivergingRadial": "Radial convergeant", + "Common.define.smartArt.textEquation": "Équation", + "Common.define.smartArt.textFramedTextPicture": "Images avec texte en encadré", + "Common.define.smartArt.textFunnel": "Entonnoir", + "Common.define.smartArt.textGear": "Engrenage", + "Common.define.smartArt.textGridMatrix": "Matrice avec grille", + "Common.define.smartArt.textGroupedList": "Liste groupée", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Organigramme avec demi-cercles", + "Common.define.smartArt.textHexagonCluster": "Groupe d’hexagones", + "Common.define.smartArt.textHexagonRadial": "Hexagone radial", + "Common.define.smartArt.textHierarchy": "Hiérarchie", + "Common.define.smartArt.textHierarchyList": "Liste hiérarchique", + "Common.define.smartArt.textHorizontalBulletList": "Liste à puces horizontale", + "Common.define.smartArt.textHorizontalHierarchy": "Hiérarchie horizontale", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Hiérarchie horizontale avec étiquettes", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Hiérarchie horizontale à plusieurs niveaux", + "Common.define.smartArt.textHorizontalOrganizationChart": "Organigramme horizontal", + "Common.define.smartArt.textHorizontalPictureList": "Liste horizontale avec images", + "Common.define.smartArt.textIncreasingArrowProcess": "Processus en flèches croissant", + "Common.define.smartArt.textIncreasingCircleProcess": "Processus ascendant avec cercles", + "Common.define.smartArt.textInterconnectedBlockProcess": "Processus en blocs interconnectés", + "Common.define.smartArt.textInterconnectedRings": "Anneaux interconnectés", + "Common.define.smartArt.textInvertedPyramid": "Pyramide inversée", + "Common.define.smartArt.textLabeledHierarchy": "Hiérarchie libellée", + "Common.define.smartArt.textLinearVenn": "Venn linéaire", + "Common.define.smartArt.textLinedList": "Liste alignée", + "Common.define.smartArt.textList": "Liste", + "Common.define.smartArt.textMatrix": "Matrice", + "Common.define.smartArt.textMultidirectionalCycle": "Cycle multidirectionnel", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Organigramme avec titre et nom", + "Common.define.smartArt.textNestedTarget": "Cible imbriquée", + "Common.define.smartArt.textNondirectionalCycle": "Cycle non directionnel", + "Common.define.smartArt.textOpposingArrows": "Flèches opposées", + "Common.define.smartArt.textOpposingIdeas": "Idées opposées", + "Common.define.smartArt.textOrganizationChart": "Organigramme", + "Common.define.smartArt.textOther": "Autre", + "Common.define.smartArt.textPhasedProcess": "Processus à phases", + "Common.define.smartArt.textPicture": "Image", + "Common.define.smartArt.textPictureAccentBlocks": "Blocs accentués avec images", + "Common.define.smartArt.textPictureAccentList": "Liste accentuée avec images", + "Common.define.smartArt.textPictureAccentProcess": "Processus accentué avec images", + "Common.define.smartArt.textPictureCaptionList": "Liste de légendes d'images", + "Common.define.smartArt.textPictureFrame": "Cadre de l’image", + "Common.define.smartArt.textPictureGrid": "Grille d’images", + "Common.define.smartArt.textPictureLineup": "Alignement d’images", + "Common.define.smartArt.textPictureOrganizationChart": "Organigramme avec images", + "Common.define.smartArt.textPictureStrips": "Bandes avec images", + "Common.define.smartArt.textPieProcess": "Processus à secteurs", + "Common.define.smartArt.textPlusAndMinus": "Plus et moins", + "Common.define.smartArt.textProcess": "Processus", + "Common.define.smartArt.textProcessArrows": "Processus en flèches", + "Common.define.smartArt.textProcessList": "Liste de processus", + "Common.define.smartArt.textPyramid": "Pyramide", + "Common.define.smartArt.textPyramidList": "Liste pyramidale", + "Common.define.smartArt.textRadialCluster": "Groupe en rayon", + "Common.define.smartArt.textRadialCycle": "Cycle radial", + "Common.define.smartArt.textRadialList": "Liste radiale", + "Common.define.smartArt.textRadialPictureList": "Liste radiale avec images", + "Common.define.smartArt.textRadialVenn": "Venn radial", + "Common.define.smartArt.textRandomToResultProcess": "Processus d’idées aléatoires avec résultat", + "Common.define.smartArt.textRelationship": "Relation", + "Common.define.smartArt.textRepeatingBendingProcess": "Processus en lacets", + "Common.define.smartArt.textReverseList": "Liste inversée", + "Common.define.smartArt.textSegmentedCycle": "Cycle segmenté", + "Common.define.smartArt.textSegmentedProcess": "Processus segmenté", + "Common.define.smartArt.textSegmentedPyramid": "Pyramide segmentée", + "Common.define.smartArt.textSnapshotPictureList": "Liste d’images instantanées", + "Common.define.smartArt.textSpiralPicture": "Images en spirale", + "Common.define.smartArt.textSquareAccentList": "Liste accentuée avec carrés", + "Common.define.smartArt.textStackedList": "Liste empilée", + "Common.define.smartArt.textStackedVenn": "Venn empilé", + "Common.define.smartArt.textStaggeredProcess": "Processus décalé", + "Common.define.smartArt.textStepDownProcess": "Processus descendant", + "Common.define.smartArt.textStepUpProcess": "Processus ascendant", + "Common.define.smartArt.textSubStepProcess": "Processus avec sous-étapes", + "Common.define.smartArt.textTabbedArc": "Arc à onglets", + "Common.define.smartArt.textTableHierarchy": "Hiérarchie de tables", + "Common.define.smartArt.textTableList": "Liste de tables", + "Common.define.smartArt.textTabList": "Liste des onglets", + "Common.define.smartArt.textTargetList": "Liste cible", + "Common.define.smartArt.textTextCycle": "Cycle de texte", + "Common.define.smartArt.textThemePictureAccent": "Images de thème accentué", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Images de thème alternées accentué", + "Common.define.smartArt.textThemePictureGrid": "Grille d’images de thème", + "Common.define.smartArt.textTitledMatrix": "Matrice avec titres", + "Common.define.smartArt.textTitledPictureAccentList": "Liste accentuée avec images et titre", + "Common.define.smartArt.textTitledPictureBlocks": "Blocs d’images avec titre", + "Common.define.smartArt.textTitlePictureLineup": "Alignement d’images avec titre", + "Common.define.smartArt.textTrapezoidList": "Liste trapézoïdale", + "Common.define.smartArt.textUpwardArrow": "Flèche vers le haut", + "Common.define.smartArt.textVaryingWidthList": "Liste à largeur variable", + "Common.define.smartArt.textVerticalAccentList": "Liste accentuée verticale", + "Common.define.smartArt.textVerticalArrowList": "Liste verticale avec flèches", + "Common.define.smartArt.textVerticalBendingProcess": "Processus vertical en lacet", + "Common.define.smartArt.textVerticalBlockList": "Liste de blocs verticale", + "Common.define.smartArt.textVerticalBoxList": "Liste de zones verticale", + "Common.define.smartArt.textVerticalBracketList": "Liste de crochets verticale", + "Common.define.smartArt.textVerticalBulletList": "Liste à puces verticale", + "Common.define.smartArt.textVerticalChevronList": "Liste de chevrons verticale", + "Common.define.smartArt.textVerticalCircleList": "Liste de cercles verticale", + "Common.define.smartArt.textVerticalCurvedList": "Liste courbe verticale", + "Common.define.smartArt.textVerticalEquation": "Équation verticale", + "Common.define.smartArt.textVerticalPictureAccentList": "Liste accentuée verticale avec images", + "Common.define.smartArt.textVerticalPictureList": "Liste d’images verticale", + "Common.define.smartArt.textVerticalProcess": "Processus vertical", "Common.Translation.textMoreButton": "Plus", "Common.Translation.warnFileLocked": "Vous ne pouvez pas modifier ce fichier car il a été modifié avec une autre application.", "Common.Translation.warnFileLockedBtnEdit": "Créer une copie", @@ -240,7 +399,7 @@ "Common.Views.AutoCorrectDialog.textRecognized": "Fonctions reconnues", "Common.Views.AutoCorrectDialog.textRecognizedDesc": "Les expressions suivantes sont les expressions mathématiques reconnues. Elles ne seront pas mises en italique automatiquement.", "Common.Views.AutoCorrectDialog.textReplace": "Remplacer", - "Common.Views.AutoCorrectDialog.textReplaceText": "Remplacer au cours de la frappe", + "Common.Views.AutoCorrectDialog.textReplaceText": "Remplacer pendant la frappe", "Common.Views.AutoCorrectDialog.textReplaceType": "Remplacer le texte au cours de la frappe", "Common.Views.AutoCorrectDialog.textReset": "Réinitialiser", "Common.Views.AutoCorrectDialog.textResetAll": "Rétablir paramètres par défaut", @@ -281,13 +440,15 @@ "Common.Views.Comments.txtEmpty": "Il n'y a pas de commentaires dans le document.", "Common.Views.CopyWarningDialog.textDontShow": "Ne plus afficher ce message", "Common.Views.CopyWarningDialog.textMsg": "Vous pouvez réaliser les actions de copier, couper et coller en utilisant les boutons de la barre d'outils et à l'aide du menu contextuel à partir de cet onglet uniquement.

    Pour copier ou coller de / vers les applications en dehors de l'onglet de l'éditeur, utilisez les combinaisons de touches suivantes :", - "Common.Views.CopyWarningDialog.textTitle": "Fonctions de Copier, Couper et Coller", + "Common.Views.CopyWarningDialog.textTitle": "Actions copier, couper et coller", "Common.Views.CopyWarningDialog.textToCopy": "pour Copier", "Common.Views.CopyWarningDialog.textToCut": "pour Couper", "Common.Views.CopyWarningDialog.textToPaste": "pour Coller", "Common.Views.DocumentAccessDialog.textLoading": "Chargement en cours...", "Common.Views.DocumentAccessDialog.textTitle": "Paramètres de partage", "Common.Views.ExternalDiagramEditor.textTitle": "Éditeur de graphique", + "Common.Views.ExternalEditor.textClose": "Fermer", + "Common.Views.ExternalEditor.textSave": "Enregistrer et quitter", "Common.Views.ExternalMergeEditor.textTitle": "Destinataires de fusion et publipostage", "Common.Views.ExternalOleEditor.textTitle": "Tableur", "Common.Views.Header.labelCoUsersDescr": "Le document est en cours de modification par les utilisateurs suivants :", @@ -331,7 +492,7 @@ "Common.Views.InsertTableDialog.txtTitle": "Taille du tableau", "Common.Views.InsertTableDialog.txtTitleSplit": "Fractionner la cellule", "Common.Views.LanguageDialog.labelSelect": "Sélectionner la langue du document", - "Common.Views.OpenDialog.closeButtonText": "Fermer le fichier", + "Common.Views.OpenDialog.closeButtonText": "Fermer fichier", "Common.Views.OpenDialog.txtEncoding": "Codage ", "Common.Views.OpenDialog.txtIncorrectPwd": "Le mot de passe est incorrect.", "Common.Views.OpenDialog.txtOpenFile": "Entrer le mot de passe pour ouvrir le fichier", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Démarrer", "Common.Views.Plugins.textStop": "Arrêter", "Common.Views.Protection.hintAddPwd": "Chiffrer avec mot de passe", + "Common.Views.Protection.hintDelPwd": "Supprimer le mot de passe", "Common.Views.Protection.hintPwd": "Modifier ou supprimer le mot de passe", "Common.Views.Protection.hintSignature": "Ajouter une signature électronique ou", "Common.Views.Protection.txtAddPwd": "Ajouter un mot de passe", @@ -436,15 +598,15 @@ "Common.Views.ReviewChanges.txtSpelling": "Vérification de l'orthographe", "Common.Views.ReviewChanges.txtTurnon": "Suivi des modifications", "Common.Views.ReviewChanges.txtView": "Mode d'affichage", - "Common.Views.ReviewChangesDialog.textTitle": "Examiner les modifications", + "Common.Views.ReviewChangesDialog.textTitle": "Réviser les modifications", "Common.Views.ReviewChangesDialog.txtAccept": "Accepter", "Common.Views.ReviewChangesDialog.txtAcceptAll": "Accepter toutes les modifications", "Common.Views.ReviewChangesDialog.txtAcceptCurrent": "Accepter la modification actuelle", "Common.Views.ReviewChangesDialog.txtNext": "À la modification suivante", "Common.Views.ReviewChangesDialog.txtPrev": "À la modification précédente", "Common.Views.ReviewChangesDialog.txtReject": "Rejeter", - "Common.Views.ReviewChangesDialog.txtRejectAll": "Rejeter toutes les modifications", - "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Rejeter cette modification", + "Common.Views.ReviewChangesDialog.txtRejectAll": "Refuser toutes les modifications", + "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Refuser la modification actuelle", "Common.Views.ReviewPopover.textAdd": "Ajouter", "Common.Views.ReviewPopover.textAddReply": "Ajouter une réponse", "Common.Views.ReviewPopover.textCancel": "Annuler", @@ -482,7 +644,7 @@ "Common.Views.SearchPanel.tipNextResult": "Résultat suivant", "Common.Views.SearchPanel.tipPreviousResult": "Résultat précédent", "Common.Views.SelectFileDlg.textLoading": "Chargement", - "Common.Views.SelectFileDlg.textTitle": "Sélectionnez la source de données", + "Common.Views.SelectFileDlg.textTitle": "Sélectionner la source de données", "Common.Views.SignDialog.textBold": "Gras", "Common.Views.SignDialog.textCertificate": "Certificat", "Common.Views.SignDialog.textChange": "Modifier", @@ -496,43 +658,44 @@ "Common.Views.SignDialog.textTitle": "Signer le document", "Common.Views.SignDialog.textUseImage": "ou cliquez sur \"Sélectionner une image\" afin d'utiliser une image en tant que signature", "Common.Views.SignDialog.textValid": "Valide de %1 à %2", - "Common.Views.SignDialog.tipFontName": "Nom de la police", - "Common.Views.SignDialog.tipFontSize": "Taille de la police", + "Common.Views.SignDialog.tipFontName": "Nom de police", + "Common.Views.SignDialog.tipFontSize": "Taille de police", "Common.Views.SignSettingsDialog.textAllowComment": "Autoriser le signataire à ajouter un commentaire dans la boîte de dialogue de la signature", - "Common.Views.SignSettingsDialog.textInfoEmail": "Adresse de messagerie", - "Common.Views.SignSettingsDialog.textInfoName": "Nom", - "Common.Views.SignSettingsDialog.textInfoTitle": "Titre du signataire", + "Common.Views.SignSettingsDialog.textDefInstruction": "Avant de signer un document, vérifiez que le contenu que vous signez est correct.", + "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail du signataire suggéré", + "Common.Views.SignSettingsDialog.textInfoName": "Signataire suggéré", + "Common.Views.SignSettingsDialog.textInfoTitle": "Titre du signataire suggéré", "Common.Views.SignSettingsDialog.textInstructions": "Instructions pour les signataires", "Common.Views.SignSettingsDialog.textShowDate": "Afficher la date de signature à côté de la signature", - "Common.Views.SignSettingsDialog.textTitle": "Mise en place de la signature", + "Common.Views.SignSettingsDialog.textTitle": "Configuration de signature", "Common.Views.SignSettingsDialog.txtEmpty": "Ce champ est obligatoire.", "Common.Views.SymbolTableDialog.textCharacter": "Caractère", "Common.Views.SymbolTableDialog.textCode": "Valeur hexadécimale Unicode", - "Common.Views.SymbolTableDialog.textCopyright": "Signe Copyright", - "Common.Views.SymbolTableDialog.textDCQuote": "Fermer les guillemets", - "Common.Views.SymbolTableDialog.textDOQuote": "Ouvrir les guillemets", + "Common.Views.SymbolTableDialog.textCopyright": "Symbole de copyright", + "Common.Views.SymbolTableDialog.textDCQuote": "Guillemet double fermant", + "Common.Views.SymbolTableDialog.textDOQuote": "Double guillemet ouvrant", "Common.Views.SymbolTableDialog.textEllipsis": "Points de suspension", "Common.Views.SymbolTableDialog.textEmDash": "Tiret cadratin", "Common.Views.SymbolTableDialog.textEmSpace": "Espace cadratin", "Common.Views.SymbolTableDialog.textEnDash": "Tiret demi-cadratin", "Common.Views.SymbolTableDialog.textEnSpace": "Espace demi-cadratin", "Common.Views.SymbolTableDialog.textFont": "Police", - "Common.Views.SymbolTableDialog.textNBHyphen": "tiret insécable", + "Common.Views.SymbolTableDialog.textNBHyphen": "Trait d’union insécable", "Common.Views.SymbolTableDialog.textNBSpace": "Espace insécable", - "Common.Views.SymbolTableDialog.textPilcrow": "Symbole de Paragraphe", + "Common.Views.SymbolTableDialog.textPilcrow": "Pied-de-mouche", "Common.Views.SymbolTableDialog.textQEmSpace": "1/4 Espace cadratin", "Common.Views.SymbolTableDialog.textRange": "Plage", "Common.Views.SymbolTableDialog.textRecent": "Caractères spéciaux récemment utilisés", - "Common.Views.SymbolTableDialog.textRegistered": "Signe 'Registred'", - "Common.Views.SymbolTableDialog.textSCQuote": "Fermer l'apostrophe", - "Common.Views.SymbolTableDialog.textSection": "Signe de Section ", - "Common.Views.SymbolTableDialog.textShortcut": "Raccourcis clavier", + "Common.Views.SymbolTableDialog.textRegistered": "Symbole de marque déposée", + "Common.Views.SymbolTableDialog.textSCQuote": "Guillemet simple fermant", + "Common.Views.SymbolTableDialog.textSection": "Paragraphe", + "Common.Views.SymbolTableDialog.textShortcut": "Touche de raccourci", "Common.Views.SymbolTableDialog.textSHyphen": "Trait d'union conditionnel", - "Common.Views.SymbolTableDialog.textSOQuote": "Ouvrir l'apostrophe", + "Common.Views.SymbolTableDialog.textSOQuote": "Guillemet simple ouvrant", "Common.Views.SymbolTableDialog.textSpecial": "symboles spéciaux", "Common.Views.SymbolTableDialog.textSymbols": "Symboles", "Common.Views.SymbolTableDialog.textTitle": "Symbole", - "Common.Views.SymbolTableDialog.textTradeMark": "Logo", + "Common.Views.SymbolTableDialog.textTradeMark": "Symbole de marque", "Common.Views.UserNameDialog.textDontShow": "Ne plus me demander à nouveau", "Common.Views.UserNameDialog.textLabel": "Étiquette :", "Common.Views.UserNameDialog.textLabelError": "Étiquette ne doit pas être vide", @@ -552,6 +715,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} n'est pas un caractère spécial valide pour le champ de remplacement.", "DE.Controllers.Main.applyChangesTextText": "Chargement des changemets...", "DE.Controllers.Main.applyChangesTitleText": "Chargement des changemets", + "DE.Controllers.Main.confirmMaxChangesSize": "La taille des actions dépasse la limitation fixée pour votre serveur.
    Appuyez sur \"Annuler\" pour annuler votre dernière action ou sur \"Continuer\" pour maintenir l'action en local (vous devez télécharger le fichier ou copier son contenu pour vous assurer que rien n'est perdu).", "DE.Controllers.Main.convertationTimeoutText": "Délai de conversion expiré.", "DE.Controllers.Main.criticalErrorExtText": "Cliquez sur \"OK\" pour revenir à la liste des documents.", "DE.Controllers.Main.criticalErrorTitle": "Erreur", @@ -578,12 +742,18 @@ "DE.Controllers.Main.errorFilePassProtect": "Le fichier est protégé par le mot de passe et ne peut être ouvert.", "DE.Controllers.Main.errorFileSizeExceed": "La taille du fichier dépasse les limites établies sur votre serveur.
    Veuillez contacter votre administrateur de Document Server pour obtenir plus d'information. ", "DE.Controllers.Main.errorForceSave": "Une erreur est survenue lors de l'enregistrement du fichier. Veuillez utiliser l'option \"Télécharger comme\" pour enregistrer le fichier sur le disque dur de votre ordinateur ou réessayer plus tard.", + "DE.Controllers.Main.errorInconsistentExt": "Une erreur s'est produite lors de l'ouverture du fichier.
    Le contenu du fichier ne correspond pas à l'extension du fichier.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Une erreur s'est produite lors de l'ouverture du fichier.
    Le contenu du fichier correspond à des documents texte (par exemple docx), mais le fichier a une extension incohérente : %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Une erreur s'est produite lors de l'ouverture du fichier.
    Le contenu du fichier correspond à l'un des formats suivants : pdf/djvu/xps/oxps, mais le fichier a l'extension incohérente : %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Une erreur s'est produite lors de l'ouverture du fichier.
    Le contenu du fichier correspond à des présentations (par exemple pptx), mais le fichier a une extension incohérente : %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Une erreur s'est produite lors de l'ouverture du fichier.
    Le contenu du fichier correspond à des feuilles de calcul (par exemple xlsx), mais le fichier a une extension incohérente : %1.", "DE.Controllers.Main.errorKeyEncrypt": "Descripteur de clés inconnu", "DE.Controllers.Main.errorKeyExpire": "Descripteur de clés expiré", "DE.Controllers.Main.errorLoadingFont": "Les polices ne sont pas téléchargées.
    Veuillez contacter l'administrateur de Document Server.", "DE.Controllers.Main.errorMailMergeLoadFile": "Échec de chargement du document. Merci de choisir un autre fichier.", "DE.Controllers.Main.errorMailMergeSaveFile": "Fusion a échoué.", "DE.Controllers.Main.errorNoTOC": "Il n'y a pas de table des matières à mettre à jour. Vous pouvez en insérer une à partir de l'onglet Références.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "Le mot de passe que vous avez fourni n'est pas correct.
    Vérifiez que la touche CAPS LOCK est désactivée et assurez-vous d'utiliser la bonne majuscule.", "DE.Controllers.Main.errorProcessSaveResult": "Échec de l'enregistrement", "DE.Controllers.Main.errorServerVersion": "La version de l'éditeur a été mise à jour. La page sera rechargée pour appliquer les modifications.", "DE.Controllers.Main.errorSessionAbsolute": "Votre session a expiré. Veuillez recharger la page.", @@ -640,6 +810,7 @@ "DE.Controllers.Main.textClose": "Fermer", "DE.Controllers.Main.textCloseTip": "Cliquez pour fermer le conseil", "DE.Controllers.Main.textContactUs": "Contacter l'équipe de ventes", + "DE.Controllers.Main.textContinue": "Continuer", "DE.Controllers.Main.textConvertEquation": "Cette équation a été créée avec une ancienne version de l'éditeur des équations qui n'est plus disponible. Pour modifier cette équation, convertissez-la au format Office Math ML.
    Convertir maintenant ?", "DE.Controllers.Main.textCustomLoader": "Veuillez noter que conformément aux clauses du contrat de licence vous n'êtes pas autorisé à changer le chargeur.
    Veuillez contacter notre Service des Ventes pour obtenir le devis.", "DE.Controllers.Main.textDisconnect": "La connexion est perdue", @@ -660,6 +831,7 @@ "DE.Controllers.Main.textStrict": "Mode strict", "DE.Controllers.Main.textTryUndoRedo": "Les fonctions annuler/rétablir sont désactivées pour le mode de co-édition rapide.
    Cliquez sur le bouton \"Mode strict\" pour passer au mode de la co-édition stricte pour modifier le fichier sans interférence d'autres utilisateurs et envoyer vos modifications seulement après que vous les enregistrez. Vous pouvez basculer entre les modes de co-édition à l'aide de paramètres avancés d'éditeur.", "DE.Controllers.Main.textTryUndoRedoWarn": "Les fonctions Annuler/Rétablir sont désactivées pour le mode de co-édition rapide.", + "DE.Controllers.Main.textUndo": "Annuler", "DE.Controllers.Main.titleLicenseExp": "Licence expirée", "DE.Controllers.Main.titleServerVersion": "L'éditeur est mis à jour", "DE.Controllers.Main.titleUpdateVersion": "Version a été modifiée", @@ -1327,19 +1499,33 @@ "DE.Views.CellsAddDialog.textLeft": "Vers la gauche", "DE.Views.CellsAddDialog.textRight": "Vers la droite", "DE.Views.CellsAddDialog.textRow": "Lignes", - "DE.Views.CellsAddDialog.textTitle": "Inserer Plusieurs", + "DE.Views.CellsAddDialog.textTitle": "Insérer plusieurs", "DE.Views.CellsAddDialog.textUp": "au-dessus du curseur", + "DE.Views.ChartSettings.text3dDepth": "Profondeur (% de la base)", + "DE.Views.ChartSettings.text3dHeight": "Hauteur (% de la base)", "DE.Views.ChartSettings.text3dRotation": "Rotation 3D", "DE.Views.ChartSettings.textAdvanced": "Afficher les paramètres avancés", + "DE.Views.ChartSettings.textAutoscale": "Mise à l'échelle automatique", "DE.Views.ChartSettings.textChartType": "Modifier le type de graphique", + "DE.Views.ChartSettings.textDefault": "Rotation par défaut", + "DE.Views.ChartSettings.textDown": "Bas", "DE.Views.ChartSettings.textEditData": "Modifier les données", "DE.Views.ChartSettings.textHeight": "Hauteur", + "DE.Views.ChartSettings.textLeft": "Gauche", + "DE.Views.ChartSettings.textNarrow": "Rétrécir le champ de vision", "DE.Views.ChartSettings.textOriginalSize": "Taille actuelle", + "DE.Views.ChartSettings.textPerspective": "Perspective", + "DE.Views.ChartSettings.textRight": "Droite", + "DE.Views.ChartSettings.textRightAngle": "Axes à angle droit", "DE.Views.ChartSettings.textSize": "Taille", "DE.Views.ChartSettings.textStyle": "Style", "DE.Views.ChartSettings.textUndock": "Détacher du panneau", + "DE.Views.ChartSettings.textUp": "En haut", + "DE.Views.ChartSettings.textWiden": "Élargir le champ de vision", "DE.Views.ChartSettings.textWidth": "Largeur", "DE.Views.ChartSettings.textWrap": "Style d'habillage", + "DE.Views.ChartSettings.textX": "Rotation X", + "DE.Views.ChartSettings.textY": "Rotation Y", "DE.Views.ChartSettings.txtBehind": "Derrière le texte", "DE.Views.ChartSettings.txtInFront": "Devant le texte", "DE.Views.ChartSettings.txtInline": "Aligné sur le texte", @@ -1429,14 +1615,24 @@ "DE.Views.DateTimeDialog.textLang": "Langue", "DE.Views.DateTimeDialog.textUpdate": "Mettre à jour automatiquement", "DE.Views.DateTimeDialog.txtTitle": "Date et heure", + "DE.Views.DocProtection.hintProtectDoc": "Protéger le document", + "DE.Views.DocProtection.txtDocProtectedComment": "Le document est protégé.
    Vous ne pouvez que laisser des commentaires dans ce document.", + "DE.Views.DocProtection.txtDocProtectedForms": "Le document est protégé.
    Vous ne pouvez que remplir les champs de ce document.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Le document est protégé.
    Vous pouvez modifier ce document, mais toutes les modifications seront suivies.", + "DE.Views.DocProtection.txtDocProtectedView": "Le document est protégé.
    Vous ne pouvez que visualiser ce document.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Saisissez le mot de passe pour déprotéger le document", + "DE.Views.DocProtection.txtProtectDoc": "Protéger le document", "DE.Views.DocumentHolder.aboveText": "Au-dessus", "DE.Views.DocumentHolder.addCommentText": "Ajouter un commentaire", "DE.Views.DocumentHolder.advancedDropCapText": "Paramètres de la lettrine", + "DE.Views.DocumentHolder.advancedEquationText": "Paramètres d'équations", "DE.Views.DocumentHolder.advancedFrameText": "Paramètres avancés du cadre", "DE.Views.DocumentHolder.advancedParagraphText": "Paramètres avancés du paragraphe", "DE.Views.DocumentHolder.advancedTableText": "Paramètres avancés du tableau", "DE.Views.DocumentHolder.advancedText": "Paramètres avancés", "DE.Views.DocumentHolder.alignmentText": "Alignement", + "DE.Views.DocumentHolder.allLinearText": "Toutes - Linéaire", + "DE.Views.DocumentHolder.allProfText": "Toutes - Professionnel", "DE.Views.DocumentHolder.belowText": "En dessous", "DE.Views.DocumentHolder.breakBeforeText": "Saut de page avant", "DE.Views.DocumentHolder.bulletsText": "Puces et Numéros", @@ -1445,6 +1641,8 @@ "DE.Views.DocumentHolder.centerText": "Centre", "DE.Views.DocumentHolder.chartText": "Paramètres avancés du graphique ", "DE.Views.DocumentHolder.columnText": "Colonne", + "DE.Views.DocumentHolder.currLinearText": "Actuelles - Linéaire", + "DE.Views.DocumentHolder.currProfText": "Actuelles - Professionnel", "DE.Views.DocumentHolder.deleteColumnText": "Supprimer la colonne", "DE.Views.DocumentHolder.deleteRowText": "Supprimer la ligne", "DE.Views.DocumentHolder.deleteTableText": "Supprimer le tableau", @@ -1457,6 +1655,7 @@ "DE.Views.DocumentHolder.editFooterText": "Modifier le pied de page", "DE.Views.DocumentHolder.editHeaderText": "Modifier l'en-tête", "DE.Views.DocumentHolder.editHyperlinkText": "Modifier le lien hypertexte", + "DE.Views.DocumentHolder.eqToInlineText": "Passer à Inline", "DE.Views.DocumentHolder.guestText": "Invité", "DE.Views.DocumentHolder.hyperlinkText": "Lien hypertexte", "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignorer tout", @@ -1471,6 +1670,7 @@ "DE.Views.DocumentHolder.insertText": "Insérer", "DE.Views.DocumentHolder.keepLinesText": "Lignes solidaires", "DE.Views.DocumentHolder.langText": "Sélectionner la langue", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "À gauche", "DE.Views.DocumentHolder.loadSpellText": "Chargement des variantes en cours...", "DE.Views.DocumentHolder.mergeCellsText": "Fusionner les cellules", @@ -1658,6 +1858,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Barre en dessous d'un texte", "DE.Views.DocumentHolder.txtUngroup": "Dissocier", "DE.Views.DocumentHolder.txtWarnUrl": "Cliquer sur ce lien peut être dangereux pour votre appareil et vos données.
    Êtes-vous sûr de vouloir continuer ?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "Mettre à jour le style %1 ", "DE.Views.DocumentHolder.vertAlignText": "Alignement vertical", "DE.Views.DropcapSettingsAdvanced.strBorders": "Bordures et remplissage", @@ -1667,7 +1868,7 @@ "DE.Views.DropcapSettingsAdvanced.textAtLeast": "Au moins ", "DE.Views.DropcapSettingsAdvanced.textAuto": "Auto", "DE.Views.DropcapSettingsAdvanced.textBackColor": "Couleur d'arrière-plan", - "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Couleur", + "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Couleur de bordure", "DE.Views.DropcapSettingsAdvanced.textBorderDesc": "Cliquez sur le diagramme ou utilisez les boutons pour sélectionner les bordures", "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Taille de bordure", "DE.Views.DropcapSettingsAdvanced.textBottom": "En bas", @@ -1754,6 +1955,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistiques", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Sujet", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Symboles", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Tags", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titre du document", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Chargé", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Mots", @@ -1945,7 +2147,7 @@ "DE.Views.HyperlinkSettingsDialog.textDefault": "Fragment du texte sélectionné", "DE.Views.HyperlinkSettingsDialog.textDisplay": "Afficher", "DE.Views.HyperlinkSettingsDialog.textExternal": "Lien externe", - "DE.Views.HyperlinkSettingsDialog.textInternal": "Endroit dans le document", + "DE.Views.HyperlinkSettingsDialog.textInternal": "Placer dans le document", "DE.Views.HyperlinkSettingsDialog.textTitle": "Paramètres du lien hypertexte", "DE.Views.HyperlinkSettingsDialog.textTooltip": "Texte de l'info-bulle ", "DE.Views.HyperlinkSettingsDialog.textUrl": "Lien vers", @@ -1987,7 +2189,7 @@ "DE.Views.ImageSettings.txtThrough": "Au travers", "DE.Views.ImageSettings.txtTight": "Rapproché", "DE.Views.ImageSettings.txtTopAndBottom": "Haut et bas", - "DE.Views.ImageSettingsAdvanced.strMargins": "Rembourrage texte", + "DE.Views.ImageSettingsAdvanced.strMargins": "Marges intérieures", "DE.Views.ImageSettingsAdvanced.textAbsoluteWH": "Absolue", "DE.Views.ImageSettingsAdvanced.textAlignment": "Alignement", "DE.Views.ImageSettingsAdvanced.textAlt": "Texte de remplacement", @@ -2011,23 +2213,23 @@ "DE.Views.ImageSettingsAdvanced.textColumn": "Colonne", "DE.Views.ImageSettingsAdvanced.textDistance": "Distance du texte", "DE.Views.ImageSettingsAdvanced.textEndSize": "Taille de fin", - "DE.Views.ImageSettingsAdvanced.textEndStyle": "Style de fin", + "DE.Views.ImageSettingsAdvanced.textEndStyle": "Style final", "DE.Views.ImageSettingsAdvanced.textFlat": "Plat", "DE.Views.ImageSettingsAdvanced.textFlipped": "Retourné", "DE.Views.ImageSettingsAdvanced.textHeight": "Hauteur", "DE.Views.ImageSettingsAdvanced.textHorizontal": "Horizontal", "DE.Views.ImageSettingsAdvanced.textHorizontally": "Horizontalement", - "DE.Views.ImageSettingsAdvanced.textJoinType": "Type de jointure", + "DE.Views.ImageSettingsAdvanced.textJoinType": "Type de connexion", "DE.Views.ImageSettingsAdvanced.textKeepRatio": "Proportions constantes", "DE.Views.ImageSettingsAdvanced.textLeft": "À gauche", "DE.Views.ImageSettingsAdvanced.textLeftMargin": "Marge gauche", "DE.Views.ImageSettingsAdvanced.textLine": "Ligne", - "DE.Views.ImageSettingsAdvanced.textLineStyle": "Style de la ligne", + "DE.Views.ImageSettingsAdvanced.textLineStyle": "Style de ligne", "DE.Views.ImageSettingsAdvanced.textMargin": "Marge", "DE.Views.ImageSettingsAdvanced.textMiter": "Onglet", "DE.Views.ImageSettingsAdvanced.textMove": "Déplacer avec le texte", "DE.Views.ImageSettingsAdvanced.textOptions": "Options", - "DE.Views.ImageSettingsAdvanced.textOriginalSize": "Taille actuelle", + "DE.Views.ImageSettingsAdvanced.textOriginalSize": "Taille réelle", "DE.Views.ImageSettingsAdvanced.textOverlap": "Autoriser le chevauchement", "DE.Views.ImageSettingsAdvanced.textPage": "Page", "DE.Views.ImageSettingsAdvanced.textParagraph": "Paragraphe", @@ -2041,7 +2243,7 @@ "DE.Views.ImageSettingsAdvanced.textRightOf": "à droite de", "DE.Views.ImageSettingsAdvanced.textRotation": "Rotation", "DE.Views.ImageSettingsAdvanced.textRound": "Arrondi", - "DE.Views.ImageSettingsAdvanced.textShape": "Paramètres de la forme", + "DE.Views.ImageSettingsAdvanced.textShape": "Paramètres de forme", "DE.Views.ImageSettingsAdvanced.textSize": "Taille", "DE.Views.ImageSettingsAdvanced.textSquare": "Carré", "DE.Views.ImageSettingsAdvanced.textTextBox": "Zone de texte", @@ -2067,6 +2269,7 @@ "DE.Views.LeftMenu.tipComments": "Commentaires", "DE.Views.LeftMenu.tipNavigation": "Navigation", "DE.Views.LeftMenu.tipOutline": "Titres", + "DE.Views.LeftMenu.tipPageThumbnails": "Miniatures des pages", "DE.Views.LeftMenu.tipPlugins": "Plug-ins", "DE.Views.LeftMenu.tipSearch": "Rechercher", "DE.Views.LeftMenu.tipSupport": "Commentaires & assistance", @@ -2084,11 +2287,11 @@ "DE.Views.LineNumbersDialog.textForward": "Ce point en avant", "DE.Views.LineNumbersDialog.textFromText": "A partir du texte", "DE.Views.LineNumbersDialog.textNumbering": "Numérotation", - "DE.Views.LineNumbersDialog.textRestartEachPage": "Restaurer chaque page", - "DE.Views.LineNumbersDialog.textRestartEachSection": "Restaurer chaque section", + "DE.Views.LineNumbersDialog.textRestartEachPage": "Redémarrer à chaque page", + "DE.Views.LineNumbersDialog.textRestartEachSection": "Redémarrer à chaque section", "DE.Views.LineNumbersDialog.textSection": "Section active", "DE.Views.LineNumbersDialog.textStartAt": "Commencer par", - "DE.Views.LineNumbersDialog.textTitle": "Numéros des lignes", + "DE.Views.LineNumbersDialog.textTitle": "Numérotation des lignes", "DE.Views.LineNumbersDialog.txtAutoText": "Auto", "DE.Views.Links.capBtnAddText": "Ajouter du texte", "DE.Views.Links.capBtnBookmarks": "Signet", @@ -2137,7 +2340,7 @@ "DE.Views.ListSettingsDialog.txtAlign": "Alignement", "DE.Views.ListSettingsDialog.txtBullet": "Puce", "DE.Views.ListSettingsDialog.txtColor": "Couleur", - "DE.Views.ListSettingsDialog.txtFont": "Symboles et caractères", + "DE.Views.ListSettingsDialog.txtFont": "Police et symbole", "DE.Views.ListSettingsDialog.txtLikeText": "En tant que texte", "DE.Views.ListSettingsDialog.txtNewBullet": "Nouvelle puce", "DE.Views.ListSettingsDialog.txtNone": "Rien", @@ -2155,8 +2358,8 @@ "DE.Views.MailMergeEmailDlg.textFrom": "De", "DE.Views.MailMergeEmailDlg.textHTML": "HTML", "DE.Views.MailMergeEmailDlg.textMessage": "Message", - "DE.Views.MailMergeEmailDlg.textSubject": "Sujet ligne", - "DE.Views.MailMergeEmailDlg.textTitle": "Envoyer par Email", + "DE.Views.MailMergeEmailDlg.textSubject": "Ligne d'objet", + "DE.Views.MailMergeEmailDlg.textTitle": "Envoyer par e-mail", "DE.Views.MailMergeEmailDlg.textTo": "à", "DE.Views.MailMergeEmailDlg.textWarning": "Attention !", "DE.Views.MailMergeEmailDlg.textWarningMsg": "S'il vous plaît noter que postale ne peut pas être arrêté une fois que vous cliquez sur le bouton 'Envoyer'.", @@ -2232,9 +2435,9 @@ "DE.Views.NoteSettingsDialog.textSection": "Section active", "DE.Views.NoteSettingsDialog.textStart": "Commencer par", "DE.Views.NoteSettingsDialog.textTextBottom": "Sous le texte", - "DE.Views.NoteSettingsDialog.textTitle": "Paramètres des notes de bas de page", - "DE.Views.NotesRemoveDialog.textEnd": "Supprimer toutes les notes de fin", - "DE.Views.NotesRemoveDialog.textFoot": "Supprimer les notes de bas de page", + "DE.Views.NoteSettingsDialog.textTitle": "Paramètres des notes", + "DE.Views.NotesRemoveDialog.textEnd": "Supprimer toutes les notes de fin de page", + "DE.Views.NotesRemoveDialog.textFoot": "Supprimer toutes les notes de bas de page", "DE.Views.NotesRemoveDialog.textTitle": "Supprimer les notes", "DE.Views.PageMarginsDialog.notcriticalErrorTitle": "Avertissement", "DE.Views.PageMarginsDialog.textBottom": "Bas", @@ -2303,7 +2506,7 @@ "DE.Views.ParagraphSettingsAdvanced.strOrphan": "Éviter orphelines", "DE.Views.ParagraphSettingsAdvanced.strParagraphFont": "Police", "DE.Views.ParagraphSettingsAdvanced.strParagraphIndents": "Retraits et espacement", - "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Enchaînements", + "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Sauts de ligne et de page", "DE.Views.ParagraphSettingsAdvanced.strParagraphPosition": "Emplacement", "DE.Views.ParagraphSettingsAdvanced.strSmallCaps": "Petites majuscules", "DE.Views.ParagraphSettingsAdvanced.strSomeParagraphSpace": "Ne pas ajouter d'intervalle entre paragraphes du même style", @@ -2319,17 +2522,17 @@ "DE.Views.ParagraphSettingsAdvanced.textAuto": "Multiple ", "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Couleur d'arrière-plan", "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Texte simple", - "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Couleur", + "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Couleur de bordure", "DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Cliquez sur le diagramme ou utilisez les boutons pour sélectionner les bordures et appliquez le style choisi", "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Taille de bordure", "DE.Views.ParagraphSettingsAdvanced.textBottom": "En bas", "DE.Views.ParagraphSettingsAdvanced.textCentered": "Centré", "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Espacement des caractères", "DE.Views.ParagraphSettingsAdvanced.textContext": "Contextuels", - "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Contextuels et discrétionnaires", - "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Contextuels, historiques et discrétionnaires", - "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Contextuels et historiques", - "DE.Views.ParagraphSettingsAdvanced.textDefault": "Par défaut", + "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Contextuelles et discrétionnaires", + "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Contextuelles, historiques et discrétionnaires", + "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Contextuelles et historiques", + "DE.Views.ParagraphSettingsAdvanced.textDefault": "Onglet par défaut", "DE.Views.ParagraphSettingsAdvanced.textDiscret": "Discrétionnaires", "DE.Views.ParagraphSettingsAdvanced.textEffects": "Effets", "DE.Views.ParagraphSettingsAdvanced.textExact": "Exactement", @@ -2360,7 +2563,7 @@ "DE.Views.ParagraphSettingsAdvanced.textStandardHistorical": "Standards et historiques", "DE.Views.ParagraphSettingsAdvanced.textTabCenter": "Centre", "DE.Views.ParagraphSettingsAdvanced.textTabLeft": "À gauche", - "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Position", + "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Position de l'onglet", "DE.Views.ParagraphSettingsAdvanced.textTabRight": "A droite", "DE.Views.ParagraphSettingsAdvanced.textTitle": "Paragraphe - Paramètres avancés", "DE.Views.ParagraphSettingsAdvanced.textTop": "En haut", @@ -2374,6 +2577,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Seulement bordure supérieure", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Pas de bordures", + "DE.Views.ProtectDialog.textComments": "Commentaires", + "DE.Views.ProtectDialog.textForms": "Remplissage des formulaires", + "DE.Views.ProtectDialog.textReview": "Modifications", + "DE.Views.ProtectDialog.textView": "Aucune modification (Lecture seule)", + "DE.Views.ProtectDialog.txtAllow": "Autoriser uniquement ce type de modification dans le document", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Le mot de passe de confirmation n'est pas identique", + "DE.Views.ProtectDialog.txtOptional": "optionnel", + "DE.Views.ProtectDialog.txtPassword": "Mot de passe", + "DE.Views.ProtectDialog.txtProtect": "Protéger", + "DE.Views.ProtectDialog.txtRepeat": "Répéter le mot de passe", + "DE.Views.ProtectDialog.txtTitle": "Protéger", + "DE.Views.ProtectDialog.txtWarning": "Attention : si vous oubliez ou perdez votre mot de passe, il sera impossible de le récupérer. Conservez-le en lieu sûr.", "DE.Views.RightMenu.txtChartSettings": "Paramètres du graphique", "DE.Views.RightMenu.txtFormSettings": "Paramètres du formulaire", "DE.Views.RightMenu.txtHeaderFooterSettings": "Paramètres d'en-têtes et de pieds de page", @@ -2481,10 +2696,10 @@ "DE.Views.StyleTitleDialog.txtEmpty": "Ce champ est obligatoire", "DE.Views.StyleTitleDialog.txtNotEmpty": "Le champ ne doit pas être vide", "DE.Views.StyleTitleDialog.txtSameAs": "Identique au nouveau style créé", - "DE.Views.TableFormulaDialog.textBookmark": "Coller Signet ", + "DE.Views.TableFormulaDialog.textBookmark": "Insérer le signet", "DE.Views.TableFormulaDialog.textFormat": "Format de nombre", "DE.Views.TableFormulaDialog.textFormula": "Formule", - "DE.Views.TableFormulaDialog.textInsertFunction": "Coller Fonction", + "DE.Views.TableFormulaDialog.textInsertFunction": "Coller une fonction", "DE.Views.TableFormulaDialog.textTitle": "Paramètres de formule", "DE.Views.TableOfContentsSettings.strAlign": "Aligner les numéros de page à droite", "DE.Views.TableOfContentsSettings.strFullCaption": "Inclure l'étiquette et le numéro", @@ -2507,7 +2722,7 @@ "DE.Views.TableOfContentsSettings.textStyles": "Styles", "DE.Views.TableOfContentsSettings.textTable": "Tableau", "DE.Views.TableOfContentsSettings.textTitle": "Table des matières", - "DE.Views.TableOfContentsSettings.textTitleTOF": "Table des figures", + "DE.Views.TableOfContentsSettings.textTitleTOF": "Table des illustrations", "DE.Views.TableOfContentsSettings.txtCentered": "Centré", "DE.Views.TableOfContentsSettings.txtClassic": "Classique", "DE.Views.TableOfContentsSettings.txtCurrent": "Actuel", @@ -2564,12 +2779,20 @@ "DE.Views.TableSettings.tipOuter": "Seulement bordure extérieure", "DE.Views.TableSettings.tipRight": "Seulement bordure extérieure droite", "DE.Views.TableSettings.tipTop": "Seulement bordure extérieure supérieure", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Tableaux à bordures et à lignes", + "DE.Views.TableSettings.txtGroupTable_Custom": "Personnalisé", + "DE.Views.TableSettings.txtGroupTable_Grid": "Tableaux Grille", + "DE.Views.TableSettings.txtGroupTable_List": "Tableaux Liste", + "DE.Views.TableSettings.txtGroupTable_Plain": "Tableaux simples", "DE.Views.TableSettings.txtNoBorders": "Pas de bordures", "DE.Views.TableSettings.txtTable_Accent": "Accentuation", + "DE.Views.TableSettings.txtTable_Bordered": "À bordure", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "À bordures et à lignes", "DE.Views.TableSettings.txtTable_Colorful": "En couleurs", "DE.Views.TableSettings.txtTable_Dark": "Foncé", "DE.Views.TableSettings.txtTable_GridTable": "Table Grille", "DE.Views.TableSettings.txtTable_Light": "Clair", + "DE.Views.TableSettings.txtTable_Lined": "À lignes", "DE.Views.TableSettings.txtTable_ListTable": "Tableau de listes", "DE.Views.TableSettings.txtTable_PlainTable": "Tableau simple", "DE.Views.TableSettings.txtTable_TableGrid": "Grille du tableau", @@ -2582,9 +2805,9 @@ "DE.Views.TableSettingsAdvanced.textAltTitle": "Titre", "DE.Views.TableSettingsAdvanced.textAnchorText": "Texte", "DE.Views.TableSettingsAdvanced.textAutofit": "Redimensionner automatiquement pour ajuster au contenu", - "DE.Views.TableSettingsAdvanced.textBackColor": "Fond de la cellule", + "DE.Views.TableSettingsAdvanced.textBackColor": "Arrière-plan de cellule ", "DE.Views.TableSettingsAdvanced.textBelow": "en dessous", - "DE.Views.TableSettingsAdvanced.textBorderColor": "Couleur", + "DE.Views.TableSettingsAdvanced.textBorderColor": "Couleur de bordure", "DE.Views.TableSettingsAdvanced.textBorderDesc": "Cliquez sur le diagramme ou utilisez les boutons pour sélectionner bordures et appliquez le style choisi", "DE.Views.TableSettingsAdvanced.textBordersBackgroung": "Bordures et arrière-plan", "DE.Views.TableSettingsAdvanced.textBorderWidth": "Taille de bordure", @@ -2617,7 +2840,7 @@ "DE.Views.TableSettingsAdvanced.textRightOf": "à droite de", "DE.Views.TableSettingsAdvanced.textRightTooltip": "A droite", "DE.Views.TableSettingsAdvanced.textTable": "Tableau", - "DE.Views.TableSettingsAdvanced.textTableBackColor": "Fond du tableau", + "DE.Views.TableSettingsAdvanced.textTableBackColor": "Arrière-plan de tableau", "DE.Views.TableSettingsAdvanced.textTablePosition": "Position du tableau", "DE.Views.TableSettingsAdvanced.textTableSize": "Taille du tableau", "DE.Views.TableSettingsAdvanced.textTitle": "Tableau - Paramètres avancés", @@ -2704,6 +2927,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Image", "DE.Views.Toolbar.capBtnInsPagebreak": "Sauts", "DE.Views.Toolbar.capBtnInsShape": "Forme", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Symbole", "DE.Views.Toolbar.capBtnInsTable": "Tableau", "DE.Views.Toolbar.capBtnInsTextart": "Text Art", @@ -2774,7 +2998,7 @@ "DE.Views.Toolbar.textLandscape": "Paysage", "DE.Views.Toolbar.textLeft": "À gauche:", "DE.Views.Toolbar.textListSettings": "Paramètres de la liste", - "DE.Views.Toolbar.textMarginsLast": "Dernière mesure", + "DE.Views.Toolbar.textMarginsLast": "Dernières personnalisées", "DE.Views.Toolbar.textMarginsModerate": "Modérer", "DE.Views.Toolbar.textMarginsNarrow": "Étroit", "DE.Views.Toolbar.textMarginsNormal": "Normal", @@ -2850,13 +3074,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Augmenter le retrait", "DE.Views.Toolbar.tipInsertChart": "Insérer un graphique", "DE.Views.Toolbar.tipInsertEquation": "Insérer une équation", + "DE.Views.Toolbar.tipInsertHorizontalText": "Insérer une zone de texte horizontale", "DE.Views.Toolbar.tipInsertImage": "Insérer une image", "DE.Views.Toolbar.tipInsertNum": "Insérer le numéro de page", "DE.Views.Toolbar.tipInsertShape": "Insérer une forme automatique", + "DE.Views.Toolbar.tipInsertSmartArt": "Insérer un graphique SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Insérer un symbole", "DE.Views.Toolbar.tipInsertTable": "Insérer un tableau", "DE.Views.Toolbar.tipInsertText": "Insérez zone de texte", "DE.Views.Toolbar.tipInsertTextArt": "Insérer Text Art", + "DE.Views.Toolbar.tipInsertVerticalText": "Insérer une zone de texte verticale", "DE.Views.Toolbar.tipLineNumbers": "Afficher les numéros des lignes", "DE.Views.Toolbar.tipLineSpace": "Interligne du paragraphe", "DE.Views.Toolbar.tipMailRecepients": "Fusion et publipostage", @@ -2927,9 +3154,11 @@ "DE.Views.ViewTab.textDarkDocument": "Document sombre", "DE.Views.ViewTab.textFitToPage": "Ajuster à la page", "DE.Views.ViewTab.textFitToWidth": "Ajuster à la largeur", - "DE.Views.ViewTab.textInterfaceTheme": "Thème d'interface", + "DE.Views.ViewTab.textInterfaceTheme": "Thème d’interface", + "DE.Views.ViewTab.textLeftMenu": "Panneau gauche", "DE.Views.ViewTab.textNavigation": "Navigation", "DE.Views.ViewTab.textOutline": "Titres", + "DE.Views.ViewTab.textRightMenu": "Panneau droit", "DE.Views.ViewTab.textRulers": "Règles", "DE.Views.ViewTab.textStatusBar": "Barre d'état", "DE.Views.ViewTab.textZoom": "Zoom", @@ -2943,8 +3172,8 @@ "DE.Views.WatermarkSettingsDialog.textColor": "Couleur du texte", "DE.Views.WatermarkSettingsDialog.textDiagonal": "Diagonale", "DE.Views.WatermarkSettingsDialog.textFont": "Police", - "DE.Views.WatermarkSettingsDialog.textFromFile": "Depuis un fichier", - "DE.Views.WatermarkSettingsDialog.textFromStorage": "A partir de l'espace de stockage", + "DE.Views.WatermarkSettingsDialog.textFromFile": "D'un fichier", + "DE.Views.WatermarkSettingsDialog.textFromStorage": "Depuis l'espace de stockage", "DE.Views.WatermarkSettingsDialog.textFromUrl": "D'une URL", "DE.Views.WatermarkSettingsDialog.textHor": "Horizontal", "DE.Views.WatermarkSettingsDialog.textImageW": "Image en filigrane", diff --git a/apps/documenteditor/main/locale/hu.json b/apps/documenteditor/main/locale/hu.json index efcc25efe..690700d25 100644 --- a/apps/documenteditor/main/locale/hu.json +++ b/apps/documenteditor/main/locale/hu.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "Szórás sima vonalakkal és jelölőkkel", "Common.define.chartData.textStock": "Részvény", "Common.define.chartData.textSurface": "Felület", + "Common.define.smartArt.textAccentedPicture": "Hangsúlyos kép", + "Common.define.smartArt.textAccentProcess": "Akcentus eljárás", + "Common.define.smartArt.textAlternatingFlow": "Váltakozó folyamat", + "Common.define.smartArt.textAlternatingHexagons": "Váltakozó hatszögek", + "Common.define.smartArt.textAlternatingPictureBlocks": "Váltakozó képblokkok", + "Common.define.smartArt.textAlternatingPictureCircles": "Váltakozó képkörök", + "Common.define.smartArt.textArchitectureLayout": "Tervezés Elrendezés", + "Common.define.smartArt.textArrowRibbon": "Nyilas szalag", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Felszálló kép hangsúlyozásának folyamata", + "Common.define.smartArt.textBalance": "Egyensúly", + "Common.define.smartArt.textBasicBendingProcess": "Alapvető elhajlítási folyamat", + "Common.define.smartArt.textBasicBlockList": "Alapvető blokkok listája", + "Common.define.smartArt.textBasicChevronProcess": "Alapvető Chevron folyamat", + "Common.define.smartArt.textBasicCycle": "Alapciklus", + "Common.define.smartArt.textBasicMatrix": "Alap mátrix", + "Common.define.smartArt.textBasicPie": "Egyszerű körforgás", + "Common.define.smartArt.textBasicProcess": "Alapfolyamat", + "Common.define.smartArt.textBasicPyramid": "Egyszerű piramis", + "Common.define.smartArt.textBasicRadial": "Alap sugárirányú", + "Common.define.smartArt.textBasicTarget": "Alapvető cél", + "Common.define.smartArt.textBasicTimeline": "Egyszerű idővonal", + "Common.define.smartArt.textBasicVenn": "Alap Venn", + "Common.define.smartArt.textBendingPictureAccentList": "Kiemelt lista képekkel", + "Common.define.smartArt.textBendingPictureBlocks": "Képekkel ellátott blokkok", + "Common.define.smartArt.textBendingPictureCaption": "Kiemelt képek feliratokkal", + "Common.define.smartArt.textBendingPictureCaptionList": "kiemelt képaláírások listája", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Kiemelt kép félig átlátszó szöveg", + "Common.define.smartArt.textBlockCycle": "Blokkciklus", + "Common.define.smartArt.textBubblePictureList": "Buborék kép lista", + "Common.define.smartArt.textCaptionedPictures": "Feliratos képek", + "Common.define.smartArt.textChevronAccentProcess": "Eltolásos sarokfeldolgozás", + "Common.define.smartArt.textChevronList": "Sarok lista", + "Common.define.smartArt.textCircleAccentTimeline": "Kiemelt tervezési sáv körökkel", + "Common.define.smartArt.textCircleArrowProcess": "Körkörös nyilazási folyamat", + "Common.define.smartArt.textCirclePictureHierarchy": "Körképek rangsora", + "Common.define.smartArt.textCircleProcess": "Kör folyamat", + "Common.define.smartArt.textCircleRelationship": "Körkapcsolat", + "Common.define.smartArt.textCircularBendingProcess": "Körkörös hajlítási eljárás", + "Common.define.smartArt.textCircularPictureCallout": "Körkörös képhívás", + "Common.define.smartArt.textClosedChevronProcess": "Zárt sarok folyamat", + "Common.define.smartArt.textContinuousArrowProcess": "Folyamatos nyilas folyamat", + "Common.define.smartArt.textContinuousBlockProcess": "Folyamatos blokkfolyamat", + "Common.define.smartArt.textContinuousCycle": "Folyamatos ciklus", + "Common.define.smartArt.textContinuousPictureList": "Folyamatos képlista", + "Common.define.smartArt.textConvergingArrows": "Összefutó nyilak", + "Common.define.smartArt.textConvergingRadial": "Összefutó radiális", + "Common.define.smartArt.textConvergingText": "Konvergens szöveg", + "Common.define.smartArt.textCounterbalanceArrows": "Kiegyensúlyozó nyilak", + "Common.define.smartArt.textCycle": "Ciklus", + "Common.define.smartArt.textCycleMatrix": "Ciklus mátrix", + "Common.define.smartArt.textDescendingBlockList": "Csökkenő blokklista", + "Common.define.smartArt.textDescendingProcess": "Csökkenő folyamat", + "Common.define.smartArt.textDetailedProcess": "Részletes folyamat", + "Common.define.smartArt.textDivergingArrows": "Különböző nyilak", + "Common.define.smartArt.textDivergingRadial": "Radiális konvergencia", + "Common.define.smartArt.textEquation": "Egyenlet", + "Common.define.smartArt.textFramedTextPicture": "Keretezett szöveges kép", + "Common.define.smartArt.textFunnel": "Tölcsér", + "Common.define.smartArt.textGear": "Fogaskerék", + "Common.define.smartArt.textGridMatrix": "Rácsmátrix", + "Common.define.smartArt.textGroupedList": "Csoportos lista", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Félkör szervezeti diagram", + "Common.define.smartArt.textHexagonCluster": "Hatszög klaszter", + "Common.define.smartArt.textHexagonRadial": "Hatszög radiális", + "Common.define.smartArt.textHierarchy": "Hierarchia", + "Common.define.smartArt.textHierarchyList": "Hierarchikus lista", + "Common.define.smartArt.textHorizontalBulletList": "Vízszintes felsorolás", + "Common.define.smartArt.textHorizontalHierarchy": "Horizontális hierarchia", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Horizontális címkézett hierarchia", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Horizontális többszintű hierarchia", + "Common.define.smartArt.textHorizontalOrganizationChart": "Horizontal Organization Chart", + "Common.define.smartArt.textHorizontalPictureList": "Horizontális képlista", + "Common.define.smartArt.textIncreasingArrowProcess": "Növekvő nyíl folyamat", + "Common.define.smartArt.textIncreasingCircleProcess": "Növekvő körfolyamat", + "Common.define.smartArt.textInterconnectedBlockProcess": "Kapcsolódó blokkfolyamat", + "Common.define.smartArt.textInterconnectedRings": "Kapcsolódó gyűrűk", + "Common.define.smartArt.textInvertedPyramid": "Fordított piramis", + "Common.define.smartArt.textLabeledHierarchy": "Megcímkézett hierarchia", + "Common.define.smartArt.textLinearVenn": "Lineáris Venn", + "Common.define.smartArt.textLinedList": "Vonalas lista", + "Common.define.smartArt.textList": "Lista", + "Common.define.smartArt.textMatrix": "Mátrix", + "Common.define.smartArt.textMultidirectionalCycle": "Többirányú kör", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Név és cím Szervezeti ábra", + "Common.define.smartArt.textNestedTarget": "Beágyazott cél", + "Common.define.smartArt.textNondirectionalCycle": "Irányítatlan ciklus", + "Common.define.smartArt.textOpposingArrows": "Szemben álló nyilak", + "Common.define.smartArt.textOpposingIdeas": "Ellentétes elképzelések", + "Common.define.smartArt.textOrganizationChart": "Szervezeti ábra", + "Common.define.smartArt.textOther": "Egyéb", + "Common.define.smartArt.textPhasedProcess": "Fokozatos eljárás", + "Common.define.smartArt.textPicture": "Kép", + "Common.define.smartArt.textPictureAccentBlocks": "Kép kiegészítő blokkok", + "Common.define.smartArt.textPictureAccentList": "Kép kísérőjegyzék", + "Common.define.smartArt.textPictureAccentProcess": "Kép Akcentus folyamat", + "Common.define.smartArt.textPictureCaptionList": "Képaláírások listája", + "Common.define.smartArt.textPictureFrame": "Képkeret", + "Common.define.smartArt.textPictureGrid": "Képrács", + "Common.define.smartArt.textPictureLineup": "Képösszeállítás", + "Common.define.smartArt.textPictureOrganizationChart": "Szervezeti ábra", + "Common.define.smartArt.textPictureStrips": "Képcsíkok", + "Common.define.smartArt.textPieProcess": "Folyamat kördiagrammal", + "Common.define.smartArt.textPlusAndMinus": "Plusz és mínusz", + "Common.define.smartArt.textProcess": "Folyamat", + "Common.define.smartArt.textProcessArrows": "Folyamatnyilak", + "Common.define.smartArt.textProcessList": "Folyamatlista", + "Common.define.smartArt.textPyramid": "Piramis", + "Common.define.smartArt.textPyramidList": "Piramis lista", + "Common.define.smartArt.textRadialCluster": "Radiális klaszter", + "Common.define.smartArt.textRadialCycle": "Radiális ciklus", + "Common.define.smartArt.textRadialList": "Radiális lista", + "Common.define.smartArt.textRadialPictureList": "Radiális képlista", + "Common.define.smartArt.textRadialVenn": "Radiális Venn", + "Common.define.smartArt.textRandomToResultProcess": "Folyamat a véletlentől az eredményig", + "Common.define.smartArt.textRelationship": "Kapcsolat", + "Common.define.smartArt.textRepeatingBendingProcess": "Ismételt hajlítási folyamat", + "Common.define.smartArt.textReverseList": "Fordított lista", + "Common.define.smartArt.textSegmentedCycle": "Szegmentált ciklust", + "Common.define.smartArt.textSegmentedProcess": "Segmentált ciklus", + "Common.define.smartArt.textSegmentedPyramid": "Szegmentált piramis", + "Common.define.smartArt.textSnapshotPictureList": "Pillanatkép Képek listája", + "Common.define.smartArt.textSpiralPicture": "Spirálkép", + "Common.define.smartArt.textSquareAccentList": "Négyzet akcentus lista", + "Common.define.smartArt.textStackedList": "Halmozott lista", + "Common.define.smartArt.textStackedVenn": "Halmozott Venn", + "Common.define.smartArt.textStaggeredProcess": "Fokozatos folyamat", + "Common.define.smartArt.textStepDownProcess": "Lépcsőzetes folyamat", + "Common.define.smartArt.textStepUpProcess": "Lépcsőzetes folyamat", + "Common.define.smartArt.textSubStepProcess": "Részlépéses folyamat", + "Common.define.smartArt.textTabbedArc": "Tabulátorlap", + "Common.define.smartArt.textTableHierarchy": "Táblázati hierarchia", + "Common.define.smartArt.textTableList": "Táblázati lista", + "Common.define.smartArt.textTabList": "Laplista", + "Common.define.smartArt.textTargetList": "Céllista", + "Common.define.smartArt.textTextCycle": "Szövegciklus", + "Common.define.smartArt.textThemePictureAccent": "Tematikus kép akcentus", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Téma Kép váltakozó akcentus", + "Common.define.smartArt.textThemePictureGrid": "Téma képrács", + "Common.define.smartArt.textTitledMatrix": "Mátrix címkézve", + "Common.define.smartArt.textTitledPictureAccentList": "Címzett kép akcentus lista", + "Common.define.smartArt.textTitledPictureBlocks": "Címzett képblokkok", + "Common.define.smartArt.textTitlePictureLineup": "Címképek felállása", + "Common.define.smartArt.textTrapezoidList": "Trapéz lista", + "Common.define.smartArt.textUpwardArrow": "Nyíl felfelé", + "Common.define.smartArt.textVaryingWidthList": "Változó széles lista", + "Common.define.smartArt.textVerticalAccentList": "Vertikális akcentus lista", + "Common.define.smartArt.textVerticalArrowList": "Függőleges nyilak listája", + "Common.define.smartArt.textVerticalBendingProcess": "Vertikális hajítási folyamat", + "Common.define.smartArt.textVerticalBlockList": "Vertikális blokk lista", + "Common.define.smartArt.textVerticalBoxList": "Vertikális box lista", + "Common.define.smartArt.textVerticalBracketList": "Vertikális zárójel lista", + "Common.define.smartArt.textVerticalBulletList": "Vertikális bullet lista", + "Common.define.smartArt.textVerticalChevronList": "Vertikális ékzáras lista", + "Common.define.smartArt.textVerticalCircleList": "Vertikális kör lista", + "Common.define.smartArt.textVerticalCurvedList": "Vertikális ívelt lista", + "Common.define.smartArt.textVerticalEquation": "Vertikális egyenlet", + "Common.define.smartArt.textVerticalPictureAccentList": "Vertikális kép akcentus lista", + "Common.define.smartArt.textVerticalPictureList": "Vertikális képlista", + "Common.define.smartArt.textVerticalProcess": "Vertikális folyamat", "Common.Translation.textMoreButton": "Több", "Common.Translation.warnFileLocked": "Nem szerkesztheti ezt a fájlt, mert egy másik alkalmazásban szerkesztik.", "Common.Translation.warnFileLockedBtnEdit": "Másolat létrehozása", @@ -288,6 +447,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Betöltés...", "Common.Views.DocumentAccessDialog.textTitle": "Megosztási beállítások", "Common.Views.ExternalDiagramEditor.textTitle": "Diagram szerkesztő", + "Common.Views.ExternalEditor.textClose": "Bezár", + "Common.Views.ExternalEditor.textSave": "Mentés és kilépés", "Common.Views.ExternalMergeEditor.textTitle": "E-mail címzettek összevonása", "Common.Views.ExternalOleEditor.textTitle": "Táblázat szerkesztő", "Common.Views.Header.labelCoUsersDescr": "A fájlt szerkesztő felhasználók:", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Kezdés", "Common.Views.Plugins.textStop": "Stop", "Common.Views.Protection.hintAddPwd": "Jelszóval titkosít", + "Common.Views.Protection.hintDelPwd": "Jelszó törlése", "Common.Views.Protection.hintPwd": "Jelszó módosítása vagy törlése", "Common.Views.Protection.hintSignature": "Digitális aláírás vagy aláírás sor hozzáadása", "Common.Views.Protection.txtAddPwd": "Jelszó hozzáadása", @@ -450,6 +612,7 @@ "Common.Views.ReviewPopover.textCancel": "Mégsem", "Common.Views.ReviewPopover.textClose": "Bezár", "Common.Views.ReviewPopover.textEdit": "OK", + "Common.Views.ReviewPopover.textEnterComment": "Megjegyzését itt adja meg", "Common.Views.ReviewPopover.textFollowMove": "Mozgás követése", "Common.Views.ReviewPopover.textMention": "A +megemlítés hozzáférést biztosít a dokumentumhoz, és e-mailt küld.", "Common.Views.ReviewPopover.textMentionNotify": "A +mention e-mailben értesíti a felhasználót", @@ -499,8 +662,9 @@ "Common.Views.SignDialog.tipFontName": "Betűtípus neve", "Common.Views.SignDialog.tipFontSize": "Betűméret", "Common.Views.SignSettingsDialog.textAllowComment": "Engedélyezi az aláírónak megjegyzés hozzáadását az aláírási párbeszédablakban", - "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", - "Common.Views.SignSettingsDialog.textInfoName": "Név", + "Common.Views.SignSettingsDialog.textDefInstruction": "A dokumentum aláírása előtt győződjön meg arról, hogy az aláírt tartalom helyes.", + "Common.Views.SignSettingsDialog.textInfoEmail": "Javasolt aláíró E-mai címel", + "Common.Views.SignSettingsDialog.textInfoName": "Javasolt aláíró", "Common.Views.SignSettingsDialog.textInfoTitle": "Aláíró titulus", "Common.Views.SignSettingsDialog.textInstructions": "Utasítások az aláírónak", "Common.Views.SignSettingsDialog.textShowDate": "Aláírási sorban az aláírás dátumának mutatása", @@ -552,6 +716,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} nem írható be speciális karakterként a \"Csere\" mezőbe.", "DE.Controllers.Main.applyChangesTextText": "Módosítások betöltése...", "DE.Controllers.Main.applyChangesTitleText": "Módosítások betöltése", + "DE.Controllers.Main.confirmMaxChangesSize": "A műveletek mérete meghaladja a szerverre beállított korlátozást.
    Nyomja meg a \" Mégsem \" gombot az utolsó művelet törléséhez, vagy nyomja meg a \" Folytatás \" gombot a művelet helyben tartásához ( a fájl letöltése vagy tartalmának másolása szükséges, hogy biztosan ne vesszen el semmi).", "DE.Controllers.Main.convertationTimeoutText": "Időtúllépés az átalakítás során.", "DE.Controllers.Main.criticalErrorExtText": "Nyomja meg az \"OK\" gombot a dokumentumlistához való visszatéréshez.", "DE.Controllers.Main.criticalErrorTitle": "Hiba", @@ -562,6 +727,7 @@ "DE.Controllers.Main.downloadTitleText": "Dokumentum letöltése", "DE.Controllers.Main.errorAccessDeny": "Olyan műveletet próbál végrehajtani, melyre nincs jogosultsága.
    Vegye fel a kapcsolatot a Document Server adminisztrátorával.", "DE.Controllers.Main.errorBadImageUrl": "Hibás kép URL", + "DE.Controllers.Main.errorCannotPasteImg": "Ezt a képet nem tudjuk a vágólapról beilleszteni, de elmentheti eszközére, és onnan beillesztheti, vagy másolhatja a képet szöveg nélkül, és a dokumentumba illesztheti.", "DE.Controllers.Main.errorCoAuthoringDisconnect": "Elveszett a kapcsolat a szerverrel. A dokumentum jelenleg nem szerkeszthető.", "DE.Controllers.Main.errorComboSeries": "Kombinált diagram létrehozásához válasszon legalább két adatsort.", "DE.Controllers.Main.errorCompare": "A Dokumentumok összehasonlítása funkció nem érhető el együttes szerkesztés közben.", @@ -578,12 +744,18 @@ "DE.Controllers.Main.errorFilePassProtect": "A dokumentum jelszóval védett, és nem nyitható meg.", "DE.Controllers.Main.errorFileSizeExceed": "A fájlméret meghaladja a szerverre beállított korlátozást.
    Kérjük, forduljon a Document Server rendszergazdájához a részletekért.", "DE.Controllers.Main.errorForceSave": "Hiba történt a fájl mentése közben. Kérjük, használja a 'Letöltés másként' opciót, hogy a fájlt a számítógépére mentse, vagy próbálkozzon később.", + "DE.Controllers.Main.errorInconsistentExt": "Hiba történt a fájl megnyitásakor.
    A fájl tartalma nem felel meg a fájlkiterjesztésnek.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Hiba történt a fájl megnyitásakor.
    A fájl tartalma szöveges dokumentumnak (pl. docx) felel meg, de kiterjesztése nem megfelelő: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Hiba történt a fájl megnyitásakor.
    A fájl tartalma a következő formátumok egyikének felel meg: pdf/djvu/xps/oxps, de kiterjesztése nem egyezik meg: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Hiba történt a fájl megnyitásakor.
    A fájl tartalma megfelel a prezentációknak (pl. pptx), de kiterjesztése nem megfelelő: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Hiba történt a fájl megnyitásakor.
    A fájl tartalma megfelel a táblázatoknak (pl. xlsx), de kiterjesztése nem megfelelő: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Ismeretlen kulcsleíró", "DE.Controllers.Main.errorKeyExpire": "Lejárt kulcsleíró", "DE.Controllers.Main.errorLoadingFont": "A betűtípusok nincsenek betöltve.
    Kérjük forduljon a dokumentumszerver rendszergazdájához.", "DE.Controllers.Main.errorMailMergeLoadFile": "A dokumentum megnyitása sikertelen. Kérjük, válasszon egy másik fájlt.", "DE.Controllers.Main.errorMailMergeSaveFile": "Sikertelen összevonás.", "DE.Controllers.Main.errorNoTOC": "Nincs frissítendő tartalomjegyzék. A Hivatkozások lapon beilleszthet egyet.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "A megadott jelszó helytelen.
    Győződjön meg arról, hogy a CAPS LOCK billentyű ki van kapcsolva, és ügyeljen arra, hogy a megfelelő nagybetűket használja.", "DE.Controllers.Main.errorProcessSaveResult": "Sikertelen mentés.", "DE.Controllers.Main.errorServerVersion": "A szerkesztő verziója frissült. Az oldal újratöltésre kerül a módosítások alkalmazásához.", "DE.Controllers.Main.errorSessionAbsolute": "A dokumentumszerkesztési munkamenet lejárt. Kérjük, töltse be újra az oldalt.", @@ -640,6 +812,7 @@ "DE.Controllers.Main.textClose": "Bezár", "DE.Controllers.Main.textCloseTip": "Kattintson, a tippek bezárásához", "DE.Controllers.Main.textContactUs": "Értékesítés elérhetősége", + "DE.Controllers.Main.textContinue": "Folytatás", "DE.Controllers.Main.textConvertEquation": "Ez az egyenlet az egyenletszerkesztő régi verziójával lett létrehozva, amely már nem támogatott. A szerkesztéshez alakítsa az egyenletet Office Math ML formátumra.
    Konvertáljuk most?", "DE.Controllers.Main.textCustomLoader": "Kérjük, vegye figyelembe, hogy a licence feltételei szerint nem jogosult a betöltő cseréjére.
    Kérjük, forduljon értékesítési osztályunkhoz, hogy árajánlatot kapjon.", "DE.Controllers.Main.textDisconnect": "A kapcsolat megszakadt", @@ -660,6 +833,7 @@ "DE.Controllers.Main.textStrict": "Biztonságos mód", "DE.Controllers.Main.textTryUndoRedo": "A Visszavonás / Újra funkciók le vannak tiltva a Gyors együttes szerkesztés módban.
    A \"Biztonságos mód\" gombra kattintva válthat a Biztonságos együttes szerkesztés módra, hogy a dokumentumot más felhasználókkal való interferencia nélkül tudja szerkeszteni, mentés után küldve el a módosításokat. A szerkesztési módok között a Speciális beállítások segítségével válthat.", "DE.Controllers.Main.textTryUndoRedoWarn": "A Visszavonás/Újra funkciók le vannak tiltva a Gyors társszerkesztés módban.", + "DE.Controllers.Main.textUndo": "Vissza", "DE.Controllers.Main.titleLicenseExp": "Lejárt licenc", "DE.Controllers.Main.titleServerVersion": "Szerkesztő frissítve", "DE.Controllers.Main.titleUpdateVersion": "A verzió megváltozott", @@ -1329,16 +1503,31 @@ "DE.Views.CellsAddDialog.textRow": "Sorok", "DE.Views.CellsAddDialog.textTitle": "Több beszúrása", "DE.Views.CellsAddDialog.textUp": "A kurzor felett", + "DE.Views.ChartSettings.text3dDepth": "Mélység (az alap %-a)", + "DE.Views.ChartSettings.text3dHeight": "Magasság (az alap %-a)", + "DE.Views.ChartSettings.text3dRotation": "3D Forgatás", "DE.Views.ChartSettings.textAdvanced": "Speciális beállítások megjelenítése", + "DE.Views.ChartSettings.textAutoscale": "Automatikus méretezés", "DE.Views.ChartSettings.textChartType": "Diagramtípus módosítása", + "DE.Views.ChartSettings.textDefault": "Alapértelmezett forgatás", + "DE.Views.ChartSettings.textDown": "Le", "DE.Views.ChartSettings.textEditData": "Adat szerkesztése", "DE.Views.ChartSettings.textHeight": "Magasság", + "DE.Views.ChartSettings.textLeft": "Bal", + "DE.Views.ChartSettings.textNarrow": "Közeli ező nézet", "DE.Views.ChartSettings.textOriginalSize": "Aktuális méret", + "DE.Views.ChartSettings.textPerspective": "Perspektíva", + "DE.Views.ChartSettings.textRight": "Jobb", + "DE.Views.ChartSettings.textRightAngle": "Derékszögű tengelyek", "DE.Views.ChartSettings.textSize": "Méret", "DE.Views.ChartSettings.textStyle": "Stílus", "DE.Views.ChartSettings.textUndock": "Eltávolít a panelről", + "DE.Views.ChartSettings.textUp": "Fel", + "DE.Views.ChartSettings.textWiden": "Szélesebb mező nézet", "DE.Views.ChartSettings.textWidth": "Szélesség", "DE.Views.ChartSettings.textWrap": "Tördelés stílus", + "DE.Views.ChartSettings.textX": "X fogatás", + "DE.Views.ChartSettings.textY": "Y forgatás", "DE.Views.ChartSettings.txtBehind": "Szöveg mögött", "DE.Views.ChartSettings.txtInFront": "Szöveg előtt", "DE.Views.ChartSettings.txtInline": "Szöveggel egy sorban", @@ -1428,14 +1617,24 @@ "DE.Views.DateTimeDialog.textLang": "Nyelv", "DE.Views.DateTimeDialog.textUpdate": "Automatikus frissítés", "DE.Views.DateTimeDialog.txtTitle": "Dátum és idő", + "DE.Views.DocProtection.hintProtectDoc": "Dokumentum védelme", + "DE.Views.DocProtection.txtDocProtectedComment": "Védett dokumentum.
    Kizárólag megjegyzéseket fűzhet ehhez a dokumentumhoz.", + "DE.Views.DocProtection.txtDocProtectedForms": "Védett dokumentum.
    Kizárólag a dokumentumban található űrlapokat töltheti ki.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Védett dokumentum.
    A dokumentumot szerkesztheti, de minden változtatás nyomon követhető lesz.", + "DE.Views.DocProtection.txtDocProtectedView": "Védett dokumentum.
    Csak ezt a dokumentumot tekintheti meg.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Jelszó megadása a dokumentum védelmének feloldásához", + "DE.Views.DocProtection.txtProtectDoc": "Dokumentum védelme", "DE.Views.DocumentHolder.aboveText": "Felett", "DE.Views.DocumentHolder.addCommentText": "Megjegyzés hozzáadása", "DE.Views.DocumentHolder.advancedDropCapText": "Iniciálé beállításai", + "DE.Views.DocumentHolder.advancedEquationText": "Egyenlet beállításai", "DE.Views.DocumentHolder.advancedFrameText": "Speciális keret beállítások", "DE.Views.DocumentHolder.advancedParagraphText": "Haladó bekezdés beállítások", "DE.Views.DocumentHolder.advancedTableText": "Haladó táblázatbeállítások", "DE.Views.DocumentHolder.advancedText": "Haladó beállítások", "DE.Views.DocumentHolder.alignmentText": "Elrendezés", + "DE.Views.DocumentHolder.allLinearText": "Mind - Lineáris", + "DE.Views.DocumentHolder.allProfText": "Minden - Professzionális", "DE.Views.DocumentHolder.belowText": "Alatt", "DE.Views.DocumentHolder.breakBeforeText": "Oldaltörés előtte", "DE.Views.DocumentHolder.bulletsText": "Felsorolás és számozás", @@ -1444,6 +1643,8 @@ "DE.Views.DocumentHolder.centerText": "Közép", "DE.Views.DocumentHolder.chartText": "Speciális diagram beállítások", "DE.Views.DocumentHolder.columnText": "Oszlop", + "DE.Views.DocumentHolder.currLinearText": "Aktuális - Lineáris", + "DE.Views.DocumentHolder.currProfText": "Aktuális - Professzionális", "DE.Views.DocumentHolder.deleteColumnText": "Hasáb törlése", "DE.Views.DocumentHolder.deleteRowText": "Sor törlése", "DE.Views.DocumentHolder.deleteTableText": "Táblázat törlése", @@ -1456,6 +1657,7 @@ "DE.Views.DocumentHolder.editFooterText": "Lábléc szerkesztése", "DE.Views.DocumentHolder.editHeaderText": "Fejléc szerkesztése", "DE.Views.DocumentHolder.editHyperlinkText": "Hivatkozás szerkesztése", + "DE.Views.DocumentHolder.eqToInlineText": "Váltás Inline-re", "DE.Views.DocumentHolder.guestText": "Vendég", "DE.Views.DocumentHolder.hyperlinkText": "Hivatkozás", "DE.Views.DocumentHolder.ignoreAllSpellText": "Mindent mellőz", @@ -1470,6 +1672,7 @@ "DE.Views.DocumentHolder.insertText": "Beszúr", "DE.Views.DocumentHolder.keepLinesText": "Sorok egyben tartása", "DE.Views.DocumentHolder.langText": "Nyelv kiválsztása", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Bal", "DE.Views.DocumentHolder.loadSpellText": "Változatok betöltése", "DE.Views.DocumentHolder.mergeCellsText": "Cellák összevonása", @@ -1657,6 +1860,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Sáv a szöveg alatt", "DE.Views.DocumentHolder.txtUngroup": "Csoport szétválasztása", "DE.Views.DocumentHolder.txtWarnUrl": "A link megnyitása káros lehet az eszközére és adataira.
    Biztosan folytatja?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "%1 stílust frissít", "DE.Views.DocumentHolder.vertAlignText": "Függőleges rendezés", "DE.Views.DropcapSettingsAdvanced.strBorders": "Szegélyek és kitöltés", @@ -1753,6 +1957,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statisztika", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Tárgy", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Szimbólumok", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Címkék", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Cím", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Feltöltve", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Szavak", @@ -2066,6 +2271,7 @@ "DE.Views.LeftMenu.tipComments": "Megjegyzések", "DE.Views.LeftMenu.tipNavigation": "Navigáció", "DE.Views.LeftMenu.tipOutline": "Címsorok", + "DE.Views.LeftMenu.tipPageThumbnails": "Oldal miniatűrök", "DE.Views.LeftMenu.tipPlugins": "Kiegészítők", "DE.Views.LeftMenu.tipSearch": "Keresés", "DE.Views.LeftMenu.tipSupport": "Visszajelzés és támogatás", @@ -2373,6 +2579,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Csak felső szegély beállítása", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Nincsenek szegélyek", + "DE.Views.ProtectDialog.textComments": "Megjegyzések", + "DE.Views.ProtectDialog.textForms": "Nyomtatványok kitöltése", + "DE.Views.ProtectDialog.textReview": "Követett változások", + "DE.Views.ProtectDialog.textView": "Nincs változás (csak olvasható)", + "DE.Views.ProtectDialog.txtAllow": "Csak ilyen típusú szerkesztés engedélyezése a dokumentumban", + "DE.Views.ProtectDialog.txtIncorrectPwd": "A megerősítő jelszó nem egyezik", + "DE.Views.ProtectDialog.txtOptional": "opcionális", + "DE.Views.ProtectDialog.txtPassword": "Jelszó", + "DE.Views.ProtectDialog.txtProtect": "Védelem", + "DE.Views.ProtectDialog.txtRepeat": "Jelszó ismétlése", + "DE.Views.ProtectDialog.txtTitle": "Védelem", + "DE.Views.ProtectDialog.txtWarning": "Figyelem: ha elveszti vagy elfelejti a jelszót, annak visszaállítására nincs mód. Tárolja biztonságos helyen.", "DE.Views.RightMenu.txtChartSettings": "Diagram beállítások", "DE.Views.RightMenu.txtFormSettings": "Űrlapbeállítások", "DE.Views.RightMenu.txtHeaderFooterSettings": "Fejléc és lábléc beállítások", @@ -2563,12 +2781,20 @@ "DE.Views.TableSettings.tipOuter": "Csak külső szegély beállítása", "DE.Views.TableSettings.tipRight": "Csak külső, jobb szegély beállítása", "DE.Views.TableSettings.tipTop": "Csak külső, felső szegély beállítása", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Szegélyezett és vonalazott táblák", + "DE.Views.TableSettings.txtGroupTable_Custom": "Egyéni", + "DE.Views.TableSettings.txtGroupTable_Grid": "Rács táblázatok", + "DE.Views.TableSettings.txtGroupTable_List": "Táblázatok listája", + "DE.Views.TableSettings.txtGroupTable_Plain": "Sima táblák", "DE.Views.TableSettings.txtNoBorders": "Nincsenek szegélyek", "DE.Views.TableSettings.txtTable_Accent": "Akcentus", + "DE.Views.TableSettings.txtTable_Bordered": "Szegélyezett", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Szegélyezett és vonalazott", "DE.Views.TableSettings.txtTable_Colorful": "Színes", "DE.Views.TableSettings.txtTable_Dark": "Sötét", "DE.Views.TableSettings.txtTable_GridTable": "Rács táblázat", "DE.Views.TableSettings.txtTable_Light": "Világos", + "DE.Views.TableSettings.txtTable_Lined": "Vonalazott", "DE.Views.TableSettings.txtTable_ListTable": "Lista táblázat", "DE.Views.TableSettings.txtTable_PlainTable": "Egyszerű táblázat", "DE.Views.TableSettings.txtTable_TableGrid": "Táblázat rács", @@ -2703,6 +2929,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Kép", "DE.Views.Toolbar.capBtnInsPagebreak": "Szünetek", "DE.Views.Toolbar.capBtnInsShape": "Alakzat", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Szimbólum", "DE.Views.Toolbar.capBtnInsTable": "Táblázat", "DE.Views.Toolbar.capBtnInsTextart": "TextArt", @@ -2849,13 +3076,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Francia bekezdés növelése", "DE.Views.Toolbar.tipInsertChart": "Diagram beszúrása", "DE.Views.Toolbar.tipInsertEquation": "Egyenlet beszúrása", + "DE.Views.Toolbar.tipInsertHorizontalText": "Horizontális szövegdoboz beillesztése", "DE.Views.Toolbar.tipInsertImage": "Kép beszúrása", "DE.Views.Toolbar.tipInsertNum": "Oldalszám beillesztése", "DE.Views.Toolbar.tipInsertShape": "Alakzat beszúrása", + "DE.Views.Toolbar.tipInsertSmartArt": "SmartArt beillesztése", "DE.Views.Toolbar.tipInsertSymbol": "Szimbólum beszúrása", "DE.Views.Toolbar.tipInsertTable": "Táblázat beszúrása", "DE.Views.Toolbar.tipInsertText": "Szövegdoboz beszúrása", "DE.Views.Toolbar.tipInsertTextArt": "TextArt beszúrása", + "DE.Views.Toolbar.tipInsertVerticalText": "Vertikális szövegdoboz beillesztése", "DE.Views.Toolbar.tipLineNumbers": "Sorszámok megjelenítése", "DE.Views.Toolbar.tipLineSpace": "Bekezdés sortávolság", "DE.Views.Toolbar.tipMailRecepients": "E-mail összevonás", @@ -2927,8 +3157,10 @@ "DE.Views.ViewTab.textFitToPage": "Oldalhoz igazít", "DE.Views.ViewTab.textFitToWidth": "Szélességhez igazít", "DE.Views.ViewTab.textInterfaceTheme": "Felhasználói felület témája", + "DE.Views.ViewTab.textLeftMenu": "Bal panel", "DE.Views.ViewTab.textNavigation": "Navigáció", "DE.Views.ViewTab.textOutline": "Címszavak", + "DE.Views.ViewTab.textRightMenu": "Jobb panel", "DE.Views.ViewTab.textRulers": "Vonalzók", "DE.Views.ViewTab.textStatusBar": "Állapotsor", "DE.Views.ViewTab.textZoom": "Zoom", diff --git a/apps/documenteditor/main/locale/hy.json b/apps/documenteditor/main/locale/hy.json index e235c4cab..3a598bd36 100644 --- a/apps/documenteditor/main/locale/hy.json +++ b/apps/documenteditor/main/locale/hy.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "Ցրել սահուն գծերով և նշիչներով", "Common.define.chartData.textStock": "Տվյալների տատանում", "Common.define.chartData.textSurface": "Մակերեսային", + "Common.define.smartArt.textAccentedPicture": "Շեշտված նկար", + "Common.define.smartArt.textAccentProcess": "Շեշտման ընթացք", + "Common.define.smartArt.textAlternatingFlow": "Այլընտրական հոսք", + "Common.define.smartArt.textAlternatingHexagons": "Այլընտրական վեցանկյունիներ", + "Common.define.smartArt.textAlternatingPictureBlocks": "Այլընտրական նկարների կազմեր", + "Common.define.smartArt.textAlternatingPictureCircles": "Այլընտրական նկարների շրջանակներ", + "Common.define.smartArt.textArchitectureLayout": "Ճարտարապետական դասավորություն", + "Common.define.smartArt.textArrowRibbon": "Սլաքի երիզ", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Աճող նկարների շեշտման ընթացք", + "Common.define.smartArt.textBalance": "Հաշվեկշիռ", + "Common.define.smartArt.textBasicBendingProcess": "Հիմնական ծռման ընթացք", + "Common.define.smartArt.textBasicBlockList": "Հիմնական բաժնի ցուցակ", + "Common.define.smartArt.textBasicChevronProcess": "Հիմնական ծպեղների ընթացք", + "Common.define.smartArt.textBasicCycle": "Հիմնական շրջան", + "Common.define.smartArt.textBasicMatrix": "Հիմնական մատրիցա", + "Common.define.smartArt.textBasicPie": "Հիմնական բլիթ", + "Common.define.smartArt.textBasicProcess": "Հիմնական ընթացք", + "Common.define.smartArt.textBasicPyramid": "Հիմնական բուրգ", + "Common.define.smartArt.textBasicRadial": "Հիմնական շառավիղ", + "Common.define.smartArt.textBasicTarget": "Հիմնական նպատակ", + "Common.define.smartArt.textBasicTimeline": "Հիմնական ժամագիծ", + "Common.define.smartArt.textBasicVenn": "Հիմնական վրածածք", + "Common.define.smartArt.textBendingPictureAccentList": "Ծռված նկարի շեշտման ցուցակ", + "Common.define.smartArt.textBendingPictureBlocks": "Ծռված նկարների կազմեր", + "Common.define.smartArt.textBendingPictureCaption": "Ծռված նկարի խորագիր", + "Common.define.smartArt.textBendingPictureCaptionList": "Ծռված նկարի խորագրերի ցուցակ", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Ծռված նկարի կիսաթափանցիկ գրվածք", + "Common.define.smartArt.textBlockCycle": "Բաժնի շրջան", + "Common.define.smartArt.textBubblePictureList": "Դրսագրով նկարների ցուցակ", + "Common.define.smartArt.textCaptionedPictures": "Խորագրով նկարներ", + "Common.define.smartArt.textChevronAccentProcess": "Ծպեղների շեշտման ընթաց", + "Common.define.smartArt.textChevronList": "Ծպեղների ցուցակ", + "Common.define.smartArt.textCircleAccentTimeline": "Շրջանաձև շեշտման ժամագիծ", + "Common.define.smartArt.textCircleArrowProcess": "Շրջանաձև սլաքի ընթացք", + "Common.define.smartArt.textCirclePictureHierarchy": "Շրջանաձև նկարների աստիճանակարգություն", + "Common.define.smartArt.textCircleProcess": "Շրջանաձև ընթացք", + "Common.define.smartArt.textCircleRelationship": "Շրջանների հարաբերություն", + "Common.define.smartArt.textCircularBendingProcess": "Շրջանային ծռման ընթացք", + "Common.define.smartArt.textCircularPictureCallout": "Շրջանաձև նկարի դրսագիր", + "Common.define.smartArt.textClosedChevronProcess": "Փակ ծպեղների ընթացք", + "Common.define.smartArt.textContinuousArrowProcess": "Շարունակական սլաքի ընթացք", + "Common.define.smartArt.textContinuousBlockProcess": "Շարունակական բաժնի ընթացք", + "Common.define.smartArt.textContinuousCycle": "Շարունակական շրջան", + "Common.define.smartArt.textContinuousPictureList": "Շարունակական նկարի ցուցակ", + "Common.define.smartArt.textConvergingArrows": "Միակցող սլաքներ", + "Common.define.smartArt.textConvergingRadial": "Զուգահեռ շառավիղ", + "Common.define.smartArt.textConvergingText": "Զուգամետ գրվածք", + "Common.define.smartArt.textCounterbalanceArrows": "Հակակշիռ սլաքներ", + "Common.define.smartArt.textCycle": "Շրջան", + "Common.define.smartArt.textCycleMatrix": "Շրջանային մատրիցա", + "Common.define.smartArt.textDescendingBlockList": "Նվազող կազմերի ցուցակ", + "Common.define.smartArt.textDescendingProcess": "Նվազող ընթացք", + "Common.define.smartArt.textDetailedProcess": "Մանրամասն ընթացք", + "Common.define.smartArt.textDivergingArrows": "Հակադիր սլաքներ", + "Common.define.smartArt.textDivergingRadial": "Ցրված շառավիղ", + "Common.define.smartArt.textEquation": "Հավասարում", + "Common.define.smartArt.textFramedTextPicture": "Շրջանակված գրվածքով նկար", + "Common.define.smartArt.textFunnel": "Ձագարաձև", + "Common.define.smartArt.textGear": "Ատամնանիվ", + "Common.define.smartArt.textGridMatrix": "Ցանցավոր մատրիցա", + "Common.define.smartArt.textGroupedList": "Խմբավորված ցուցակ", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Կիսաշրջանաձև կազմակերպության գծապատկեր", + "Common.define.smartArt.textHexagonCluster": "Վեցանկյունիների բույլ", + "Common.define.smartArt.textHexagonRadial": "Վեցանկյունիների շառավիղ", + "Common.define.smartArt.textHierarchy": "Ստորակարգ", + "Common.define.smartArt.textHierarchyList": "Ստորակարգի ցուցակ", + "Common.define.smartArt.textHorizontalBulletList": "Հորիզոնական պարբերակի ցուցակ", + "Common.define.smartArt.textHorizontalHierarchy": "Հորիզոնական ստորակարգ", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Հորիզոնական պիտակված ստորակարգ", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Հորիզոնական բազմակակարդակ աստիճանակարգություն", + "Common.define.smartArt.textHorizontalOrganizationChart": "Հորիզոնական կազմակերպության գծապատկեր", + "Common.define.smartArt.textHorizontalPictureList": "Հորիզոնական նկարների ցուցակ", + "Common.define.smartArt.textIncreasingArrowProcess": "Աճող սլաքի ընթացք", + "Common.define.smartArt.textIncreasingCircleProcess": "Աճող շրջանաձև ընթացք", + "Common.define.smartArt.textInterconnectedBlockProcess": "Փոխկապակցված կազմերի ընթացք", + "Common.define.smartArt.textInterconnectedRings": "Փոխկապակցված օղակներ", + "Common.define.smartArt.textInvertedPyramid": "Հակադարձված բուրգ", + "Common.define.smartArt.textLabeledHierarchy": "Պիտակված ստորակարգ", + "Common.define.smartArt.textLinearVenn": "Գծային վրածածք", + "Common.define.smartArt.textLinedList": "Գծված ցուցակ", + "Common.define.smartArt.textList": "Ցուցակ", + "Common.define.smartArt.textMatrix": "Մատրիցա", + "Common.define.smartArt.textMultidirectionalCycle": "Բազմուղի շրջան", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Անուններով և պաշտոններով կազմակերպության գծապատկեր", + "Common.define.smartArt.textNestedTarget": "Ներդրված թիրախ", + "Common.define.smartArt.textNondirectionalCycle": "Ոչ ուղղորդված շրջան", + "Common.define.smartArt.textOpposingArrows": "Հակադրող սլաքներ", + "Common.define.smartArt.textOpposingIdeas": "Հակադրող առաջարկներ", + "Common.define.smartArt.textOrganizationChart": "Կազմակերպության գծապատկեր", + "Common.define.smartArt.textOther": "Այլ", + "Common.define.smartArt.textPhasedProcess": "Փուլային ընթացք", + "Common.define.smartArt.textPicture": "Նկար", + "Common.define.smartArt.textPictureAccentBlocks": "Նկարների շեշտման կազմեր", + "Common.define.smartArt.textPictureAccentList": "Նկարի շեշտման ցուցակ", + "Common.define.smartArt.textPictureAccentProcess": "Նկարի շեշտման ընթացք", + "Common.define.smartArt.textPictureCaptionList": "Նկարի խորագրերի ցուցակ", + "Common.define.smartArt.textPictureFrame": "ՆկարիՇրջանակ", + "Common.define.smartArt.textPictureGrid": "Նկարների ցանց", + "Common.define.smartArt.textPictureLineup": "Նկարների շարան", + "Common.define.smartArt.textPictureOrganizationChart": "Նկարի կազմակերպության գծապատկեր", + "Common.define.smartArt.textPictureStrips": "Նկարների գծեր", + "Common.define.smartArt.textPieProcess": "Բլիթային գծապատկերով ընթացք", + "Common.define.smartArt.textPlusAndMinus": "Գումարած և հանած", + "Common.define.smartArt.textProcess": "Ընթացք", + "Common.define.smartArt.textProcessArrows": "Ընթացքի սլաքներ", + "Common.define.smartArt.textProcessList": "Ընթացքների ցուցակ", + "Common.define.smartArt.textPyramid": "Բուրգ", + "Common.define.smartArt.textPyramidList": "Բուրգի ցուցակ", + "Common.define.smartArt.textRadialCluster": "Շառավիղների բույլ", + "Common.define.smartArt.textRadialCycle": "Շառավղային շրջան", + "Common.define.smartArt.textRadialList": "Շառավղի ցուցակ", + "Common.define.smartArt.textRadialPictureList": "Շառավղային նկարների ցուցակ", + "Common.define.smartArt.textRadialVenn": "Շառավղային վրածածք", + "Common.define.smartArt.textRandomToResultProcess": "Պատահականից դեպի արդյունք ընթացք", + "Common.define.smartArt.textRelationship": "Հարաբերություն", + "Common.define.smartArt.textRepeatingBendingProcess": "Կրկնվող ծռման ընթացք", + "Common.define.smartArt.textReverseList": "Հետադարձ ցուցակ", + "Common.define.smartArt.textSegmentedCycle": "Մասնատված շրջան", + "Common.define.smartArt.textSegmentedProcess": "Մասնատված ընթացք", + "Common.define.smartArt.textSegmentedPyramid": "Մասնատված բուրգ", + "Common.define.smartArt.textSnapshotPictureList": "Ճեպապատկերների ցուցակ", + "Common.define.smartArt.textSpiralPicture": "Պարուրաձև նկար", + "Common.define.smartArt.textSquareAccentList": "Քառակուսի շեշտման ցուցակ", + "Common.define.smartArt.textStackedList": "Շեղջված ցուցակ", + "Common.define.smartArt.textStackedVenn": "Շեղջված վրածածք", + "Common.define.smartArt.textStaggeredProcess": "Աստիճանայաին ընթացք", + "Common.define.smartArt.textStepDownProcess": "Իջնող ընթացք", + "Common.define.smartArt.textStepUpProcess": "Բարձրացող ընթացք", + "Common.define.smartArt.textSubStepProcess": "Ենթաքայլերով ընթացք", + "Common.define.smartArt.textTabbedArc": "Ներդիրավոր աղեղ", + "Common.define.smartArt.textTableHierarchy": "Աղյուսակի ստորակարգ", + "Common.define.smartArt.textTableList": "Աղյուսակային ցուցակ", + "Common.define.smartArt.textTabList": "Ներդիրների ցուցակ", + "Common.define.smartArt.textTargetList": "Նպատակակետի ցուցակ", + "Common.define.smartArt.textTextCycle": "Գրվածքի շրջան", + "Common.define.smartArt.textThemePictureAccent": "Ոճի նկարի շեշտում", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Ոճի նկարի այլընտրական շեշտում", + "Common.define.smartArt.textThemePictureGrid": "Ոճի նկարի ցանց", + "Common.define.smartArt.textTitledMatrix": "Անվանված մատրիցա", + "Common.define.smartArt.textTitledPictureAccentList": "Անվանված նկարների շեշտման ցուցակ", + "Common.define.smartArt.textTitledPictureBlocks": "Անվանված նկարների կազմեր", + "Common.define.smartArt.textTitlePictureLineup": "Ոճի նկարների շարան", + "Common.define.smartArt.textTrapezoidList": "Սեղանի ցուցակ", + "Common.define.smartArt.textUpwardArrow": "Վեր սլացող սլաք", + "Common.define.smartArt.textVaryingWidthList": "Փոփոխվող լայնությունների ցուցակ", + "Common.define.smartArt.textVerticalAccentList": "Ուղղաձիգ շեշտման ցուցակ", + "Common.define.smartArt.textVerticalArrowList": "Ուղղաձիգ սլաքի ցուցակ", + "Common.define.smartArt.textVerticalBendingProcess": "Ուղղաձիգ ծռման ընթացք", + "Common.define.smartArt.textVerticalBlockList": "Ուղղաձիգ կապանի ցուցակ", + "Common.define.smartArt.textVerticalBoxList": "Ուղղաձիգ ցուցակատուփ", + "Common.define.smartArt.textVerticalBracketList": "Ուղղաձիգ ուղղանկյուն փակագծերի ցուցակ", + "Common.define.smartArt.textVerticalBulletList": "Ուղղաձիգ պարբերակների ցուցակ", + "Common.define.smartArt.textVerticalChevronList": "Ուղղաձիգ ծպեղների ցուցակ", + "Common.define.smartArt.textVerticalCircleList": "Ուղղաձիգ շրջանով ցուցակ", + "Common.define.smartArt.textVerticalCurvedList": "Ուղղաձիգ կորով ցուցակ", + "Common.define.smartArt.textVerticalEquation": "Ուղղաձիգ հավասարում", + "Common.define.smartArt.textVerticalPictureAccentList": "Ուղղաձիգ նկարի շեշտման ցուցակ", + "Common.define.smartArt.textVerticalPictureList": "Ուղղաձիգ նկարի ցուցակ", + "Common.define.smartArt.textVerticalProcess": "Ուղղաձիգ ընթացք", "Common.Translation.textMoreButton": "Ավել", "Common.Translation.warnFileLocked": "Դուք չեք կարող խմբագրել այս ֆայլը, քանի որ այն խմբագրվում է մեկ այլ հավելվածում:", "Common.Translation.warnFileLockedBtnEdit": "Ստեղծել պատճեն", @@ -288,6 +447,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Բեռնում...", "Common.Views.DocumentAccessDialog.textTitle": "Համօգտագործման կարգավորումներ", "Common.Views.ExternalDiagramEditor.textTitle": "Գծապատկերի խմբագրիչ", + "Common.Views.ExternalEditor.textClose": "Փակել", + "Common.Views.ExternalEditor.textSave": "Պահպանել և դուրս գալ", "Common.Views.ExternalMergeEditor.textTitle": "Փոստի միավորման հաղորդագրություն ստացողներ", "Common.Views.ExternalOleEditor.textTitle": "Աղյուսակաթերթի խմբագիր", "Common.Views.Header.labelCoUsersDescr": "Փաստաթուղթը խմբագրողներ՝", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Մեկնարկ", "Common.Views.Plugins.textStop": "Կանգ", "Common.Views.Protection.hintAddPwd": "Գաղտնագրել գաղտնաբառով", + "Common.Views.Protection.hintDelPwd": "Ջնջել գաղտնաբառը", "Common.Views.Protection.hintPwd": "Փոխել կամ ջնջել գաղտնաբառը", "Common.Views.Protection.hintSignature": "Դնել թվային ստորագրություն կամ ստորագրության տող", "Common.Views.Protection.txtAddPwd": "Դնել գաղտնաբառ", @@ -409,7 +571,7 @@ "Common.Views.ReviewChanges.txtCommentResolveCurrent": "Լուծել ընթացիկ մեկնաբանությունները", "Common.Views.ReviewChanges.txtCommentResolveMy": "Լուծել իմ մեկնաբանությունները", "Common.Views.ReviewChanges.txtCommentResolveMyCurrent": "Լուծել իմ ընթացիկ մեկնաբանությունները", - "Common.Views.ReviewChanges.txtCompare": " Համեմատել", + "Common.Views.ReviewChanges.txtCompare": "Համեմատել", "Common.Views.ReviewChanges.txtDocLang": "Լեզու", "Common.Views.ReviewChanges.txtEditing": "Խմբագրում ", "Common.Views.ReviewChanges.txtFinal": "Բոլոր փոփոխումներն ընդունված են {0}", @@ -499,7 +661,8 @@ "Common.Views.SignDialog.tipFontName": "Տառատեսակի անուն", "Common.Views.SignDialog.tipFontSize": "Տառատեսակի չափ", "Common.Views.SignSettingsDialog.textAllowComment": "Թույլ տալ ստորագրողին ավելացնել մեկնաբանություն ստորագրության երկխոսության մեջ", - "Common.Views.SignSettingsDialog.textInfoEmail": "Էլ․ հասցե", + "Common.Views.SignSettingsDialog.textDefInstruction": "Նախքան այս փաստաթուղթը ստորագրելը, ստուգեք, որ Ձեր ստորագրած բովանդակությունը ճիշտ է:", + "Common.Views.SignSettingsDialog.textInfoEmail": "Առաջարկվող ստորագրողի Էլ․ հասցե", "Common.Views.SignSettingsDialog.textInfoName": "Անուն", "Common.Views.SignSettingsDialog.textInfoTitle": "Ստորագրողի անվանումը", "Common.Views.SignSettingsDialog.textInstructions": "Հրահանգներ ստորագրողի համար", @@ -511,11 +674,11 @@ "Common.Views.SymbolTableDialog.textCopyright": "Պատճենաշնորհի նշան", "Common.Views.SymbolTableDialog.textDCQuote": "Փակող կրկնակի չակերտ", "Common.Views.SymbolTableDialog.textDOQuote": "Բացել կրկնակի փակագծերը", - "Common.Views.SymbolTableDialog.textEllipsis": "Հորիզոնական բազմակետեր ", - "Common.Views.SymbolTableDialog.textEmDash": "Երկար գծիկ", + "Common.Views.SymbolTableDialog.textEllipsis": "Հորիզոնական էլիպսներ", + "Common.Views.SymbolTableDialog.textEmDash": "M-աչափ գիծ", "Common.Views.SymbolTableDialog.textEmSpace": "Երկար բացատ", "Common.Views.SymbolTableDialog.textEnDash": "Միջին գծիկ", - "Common.Views.SymbolTableDialog.textEnSpace": "Միջին բացատ", + "Common.Views.SymbolTableDialog.textEnSpace": "en տարածություն", "Common.Views.SymbolTableDialog.textFont": "Տառատեսակ ", "Common.Views.SymbolTableDialog.textNBHyphen": "Չընդատվող գծիկ", "Common.Views.SymbolTableDialog.textNBSpace": "Առանց ընդմիջման տարածություն", @@ -552,6 +715,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0}-ը վավեր գրանշան չէ փոխարինել դաշտի համար:", "DE.Controllers.Main.applyChangesTextText": "Փոփոխությունների բեռնում․․․", "DE.Controllers.Main.applyChangesTitleText": "Փոփոխությունների բեռնում", + "DE.Controllers.Main.confirmMaxChangesSize": "Գործողությունների չափը գերազանցում է Ձեր սերվերի համար սահմանված սահմանափակումը:
    Սեղմեք «Հետարկել»՝ Ձեր վերջին գործողությունը չեղարկելու համար կամ սեղմեք «Շարունակել»՝ գործողությունը տեղում պահելու համար (Դուք պետք է ներբեռնեք ֆայլը կամ պատճենեք դրա բովանդակությունը՝ համոզվելու համար, որ ոչինչ կորած չէ):", "DE.Controllers.Main.convertationTimeoutText": "Փոխարկման սպասման ժամանակը սպառվել է։", "DE.Controllers.Main.criticalErrorExtText": "Սեղմեք «լավ» ու վերադարձեք փաստաթղթերի ցանկին", "DE.Controllers.Main.criticalErrorTitle": "Սխալ", @@ -578,12 +742,18 @@ "DE.Controllers.Main.errorFilePassProtect": "Ֆայլն ունի գաղտնաբառ և չի կարող բացվել։", "DE.Controllers.Main.errorFileSizeExceed": "Ֆայլի չափը գերազանցում է ձեր սերվերի համար սահմանված սահմանափակումը:
    Մանրամասների համար խնդրում ենք կապվել Ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "DE.Controllers.Main.errorForceSave": "Փաստաթղթի պահպանման ժամանակ տեղի ունեցավ սխալ։ «Ներբեռնել որպես» հրամանով պահպանեք նիշքը Ձեր համակարգչի կոշտ սկավառակում կամ ավելի ուշ նորից փորձեք։", + "DE.Controllers.Main.errorInconsistentExt": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
    Ֆայլի բովանդակությունը չի համապատասխանում ֆայլի ընդլայնմանը:", + "DE.Controllers.Main.errorInconsistentExtDocx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
    Ֆայլի բովանդակությունը համապատասխանում է տեքստային փաստաթղթերին (օրինակ՝ docx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում՝ %1:", + "DE.Controllers.Main.errorInconsistentExtPdf": "Ֆայլը բացելիս սխալ է տեղի ունեցել:Ֆայլի բովանդակությունը համապատասխանում է հետևյալ ձևաչափերից մեկին՝pdf/djvu/xps/oxps,բայց ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "DE.Controllers.Main.errorInconsistentExtPptx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
    Ֆայլի բովանդակությունը համապատասխանում է ներկայացումներին (օրինակ՝ pptx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
    Ֆայլի բովանդակությունը համապատասխանում է աղյուսակներին (օր. xlsx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", "DE.Controllers.Main.errorKeyEncrypt": "Բանալու անհայտ նկարագրիչ", "DE.Controllers.Main.errorKeyExpire": "Բանալու նկարագրիչի ժամկետը սպառվել է", "DE.Controllers.Main.errorLoadingFont": "Տառատեսակները բեռնված չեն:
    Խնդրում ենք կապվել ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "DE.Controllers.Main.errorMailMergeLoadFile": "Փաստաթղթի բեռնումը խափանվեց։ Խնդրում ենք ընտրել մեկ այլ ֆայլ:", "DE.Controllers.Main.errorMailMergeSaveFile": "Միաձուլումը խափանվեց։", "DE.Controllers.Main.errorNoTOC": "Արդիացնելու համար բովանդակություն չկա: Կարող եք զետեղել այն հղումներ ներդիրից:", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "Ձեր տրամադրած գաղտնաբառը ճիշտ չէ:
    Ստուգեք, որ CAPS LOCK ստեղնը անջատված է և օգտագործեք ճիշտ գլխատառացումը:", "DE.Controllers.Main.errorProcessSaveResult": "Պահումը ձախողվել է:", "DE.Controllers.Main.errorServerVersion": "Խմբագրիչի տարբերակը արդիացվել է։ Որպեսզի փոփոխումները տեղի ունենան, էջը նորից կբեռնվի։", "DE.Controllers.Main.errorSessionAbsolute": "Փաստաթղթի խմբագրման գործաժամը սպառվել է։ Նորի՛ց բեռնեք էջը։", @@ -640,6 +810,7 @@ "DE.Controllers.Main.textClose": "Փակել", "DE.Controllers.Main.textCloseTip": "Կտտացրեք՝ հուշումը փակելու համար", "DE.Controllers.Main.textContactUs": "Կապ վաճառքի բաժնի հետ", + "DE.Controllers.Main.textContinue": "Շարունակել", "DE.Controllers.Main.textConvertEquation": "Այս հավասարումը ստեղծվել է հավասարումների խմբագրիչի հին տարբերակով, որն այլևս չի աջակցվում:Այն խմբագրելու համար հավասարումը փոխարկեք Office Math ML ձևաչափի:Փոխակերպե՞լ հիմա:", "DE.Controllers.Main.textCustomLoader": "Խնդրում ենք նկատի ունենալ,որ ըստ թույլատրագրի պայմանների՝ Դուք իրավունք չունեք փոխելու բեռնման էկրանը։
    Հարցման համար խնդրում ենք դիմել մեր վաճառքի բաժին։", "DE.Controllers.Main.textDisconnect": "Կապը կորել է", @@ -660,6 +831,7 @@ "DE.Controllers.Main.textStrict": "Խիստ աշխատակարգ", "DE.Controllers.Main.textTryUndoRedo": "Համախմբագրման արագ աշխատակարգում հետարկումն ու վերարկումն անջատված են։
    «Խիստ աշխատակարգ»-ի սեղմումով անցեք համախմբագրման խիստ աշխատակարգին, որպեսզի նիշքը խմբագրեք առանց այլ օգտատերերի միջամտության և փոփոխումներն ուղարկեք միայն դրանք պահպանելուց հետո։ Կարող եք համախմբագրման աշխատակարգերը փոխել լրացուցիչ կարգավորումների միջոցով։", "DE.Controllers.Main.textTryUndoRedoWarn": "Հետարկումն ու վերարկումն գործառույթներն անջատված են արագ համատեղ խմբագրման ռեժիմի համար:", + "DE.Controllers.Main.textUndo": "Հետարկել", "DE.Controllers.Main.titleLicenseExp": "Լիցենզիայի ժամկետը լրացել է", "DE.Controllers.Main.titleServerVersion": "Խմբագրիչը արդիացվել է", "DE.Controllers.Main.titleUpdateVersion": "Տարբերակը փոխվել է", @@ -1329,16 +1501,31 @@ "DE.Views.CellsAddDialog.textRow": "Տողեր", "DE.Views.CellsAddDialog.textTitle": "Տեղադրեք մի քանիսը", "DE.Views.CellsAddDialog.textUp": "Նշորդի վերևում", + "DE.Views.ChartSettings.text3dDepth": "Խորությունը (բազայի %)", + "DE.Views.ChartSettings.text3dHeight": "Բարձրություն (բազայի %)", + "DE.Views.ChartSettings.text3dRotation": "3D Պտտում", "DE.Views.ChartSettings.textAdvanced": "Ցուցադրել լրացուցիչ կարգավորումները", + "DE.Views.ChartSettings.textAutoscale": "Ինքնասանդղակ", "DE.Views.ChartSettings.textChartType": "Փոխել գծապատկերի տեսակը", + "DE.Views.ChartSettings.textDefault": "Սկզբնադիր շրջում", + "DE.Views.ChartSettings.textDown": "Ներքև", "DE.Views.ChartSettings.textEditData": "Խմբագրել տվյալները", "DE.Views.ChartSettings.textHeight": "Բարձրություն", + "DE.Views.ChartSettings.textLeft": "Ձախ", + "DE.Views.ChartSettings.textNarrow": "Նեղ տեսադաշտ", "DE.Views.ChartSettings.textOriginalSize": "Իրական չափ", + "DE.Views.ChartSettings.textPerspective": "Հեռանկար", + "DE.Views.ChartSettings.textRight": "Աջ", + "DE.Views.ChartSettings.textRightAngle": "Աջ անկյան առանցքներ", "DE.Views.ChartSettings.textSize": "Չափ", "DE.Views.ChartSettings.textStyle": "Ոճ", "DE.Views.ChartSettings.textUndock": "Ապահարակցել վահանակից", + "DE.Views.ChartSettings.textUp": "Վեր", + "DE.Views.ChartSettings.textWiden": "Լայն տեսադաշտ", "DE.Views.ChartSettings.textWidth": "Լայնք", "DE.Views.ChartSettings.textWrap": "Ծալման ոճ", + "DE.Views.ChartSettings.textX": "X պտտում", + "DE.Views.ChartSettings.textY": "Y պտտում", "DE.Views.ChartSettings.txtBehind": "Տեքստի հետևում", "DE.Views.ChartSettings.txtInFront": "Տեքստի դիմաց", "DE.Views.ChartSettings.txtInline": "Գրվածքի հետ մեկտող", @@ -1428,14 +1615,24 @@ "DE.Views.DateTimeDialog.textLang": "Լեզու", "DE.Views.DateTimeDialog.textUpdate": "Ինքնաբար արդիացնել", "DE.Views.DateTimeDialog.txtTitle": "Ամիս-ամսաթիվ, ժամ", + "DE.Views.DocProtection.hintProtectDoc": "Պաշտպանել փաստաթուղթը", + "DE.Views.DocProtection.txtDocProtectedComment": "Փաստաթուղթը պաշտպանված է:
    Դուք կարող եք միայն մեկնաբանություններ տեղադրել այս փաստաթղթում:", + "DE.Views.DocProtection.txtDocProtectedForms": "Փաստաթուղթը պաշտպանված է:
    Այս փաստաթղթում կարող եք լրացնել միայն ձևերը:", + "DE.Views.DocProtection.txtDocProtectedTrack": "Փաստաթուղթը պաշտպանված է:
    Դուք կարող եք խմբագրել այս փաստաթուղթը, բայց բոլոր փոփոխությունները կհետևվեն:", + "DE.Views.DocProtection.txtDocProtectedView": "Փաստաթուղթը պաշտպանված է:
    Դուք կարող եք դիտել միայն այս փաստաթուղթը:", + "DE.Views.DocProtection.txtDocUnlockDescription": "Փաստաթուղթը չպաշտպանելու համար մուտքագրեք գաղտնաբառ։", + "DE.Views.DocProtection.txtProtectDoc": "Պաշտպանել փաստաթուղթը", "DE.Views.DocumentHolder.aboveText": "Վերև", "DE.Views.DocumentHolder.addCommentText": "Ավելացնել մեկնաբանություն", "DE.Views.DocumentHolder.advancedDropCapText": "Սկզբնատառի կարգավորումներ", + "DE.Views.DocumentHolder.advancedEquationText": "Հավասարման կարգավորումներ", "DE.Views.DocumentHolder.advancedFrameText": "Շրջանակի լրացուցիչ կարգավորումներ", "DE.Views.DocumentHolder.advancedParagraphText": "Պարբերության լրացուցիչ կարգավորումներ", "DE.Views.DocumentHolder.advancedTableText": "Աղյուսակի լրացուցիչ կարգավորումներ", "DE.Views.DocumentHolder.advancedText": "Լրացուցիչ կարգավորումներ", "DE.Views.DocumentHolder.alignmentText": "Հավասարեցում", + "DE.Views.DocumentHolder.allLinearText": "Ամբողջական գծային", + "DE.Views.DocumentHolder.allProfText": "Ամբողջական պրոֆեսիոնալ", "DE.Views.DocumentHolder.belowText": "Ներքևում", "DE.Views.DocumentHolder.breakBeforeText": "Սկզբից էջատում", "DE.Views.DocumentHolder.bulletsText": "Պարբերակներ և համարակալում", @@ -1444,6 +1641,8 @@ "DE.Views.DocumentHolder.centerText": "Կենտրոնով", "DE.Views.DocumentHolder.chartText": "Գծապատկերի լրացուցիչ կարգավորումներ", "DE.Views.DocumentHolder.columnText": "Սյունակ", + "DE.Views.DocumentHolder.currLinearText": "Ընթացիկ - Գծային", + "DE.Views.DocumentHolder.currProfText": "Ընթացիկ-Պրոֆեսիոնալ", "DE.Views.DocumentHolder.deleteColumnText": "Ջնջել սյունակ", "DE.Views.DocumentHolder.deleteRowText": "Ջնջել տող", "DE.Views.DocumentHolder.deleteTableText": "Ջնջել աղյուսակը", @@ -1456,6 +1655,7 @@ "DE.Views.DocumentHolder.editFooterText": "Խմբագրել էջատակը", "DE.Views.DocumentHolder.editHeaderText": "Խմբագրել էջագլուխը", "DE.Views.DocumentHolder.editHyperlinkText": "Խմբագրել գերհղումը", + "DE.Views.DocumentHolder.eqToInlineText": "Փոխել ներտող ", "DE.Views.DocumentHolder.guestText": "Հյուր", "DE.Views.DocumentHolder.hyperlinkText": "Գերհղում", "DE.Views.DocumentHolder.ignoreAllSpellText": "Անտեսել բոլորը", @@ -1470,6 +1670,7 @@ "DE.Views.DocumentHolder.insertText": "Զետեղել", "DE.Views.DocumentHolder.keepLinesText": "Տողերը պահել միասին ", "DE.Views.DocumentHolder.langText": "Ընտրել լեզուն", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Ձախ", "DE.Views.DocumentHolder.loadSpellText": "Տարբերակների բեռնում...", "DE.Views.DocumentHolder.mergeCellsText": "Միաձուլել վանդակները", @@ -1657,6 +1858,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Տեքստի տակ գիծ", "DE.Views.DocumentHolder.txtUngroup": "Ապախմբավորել", "DE.Views.DocumentHolder.txtWarnUrl": "Այս հղմանը հետևելը կարող է վնասել ձեր սարքավորումն ու տվյալները:
    Վստա՞հ եք, որ ցանկանում եք շարունակել:", + "DE.Views.DocumentHolder.unicodeText": "Յունիկոդ", "DE.Views.DocumentHolder.updateStyleText": "Թարմացնել %1 ոճը", "DE.Views.DocumentHolder.vertAlignText": "Ուղղաձիգ հավասարեցում", "DE.Views.DropcapSettingsAdvanced.strBorders": "Եզրագծեր և լցում", @@ -1753,6 +1955,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Վիճակագրություն", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Նյութ", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Նշաններ", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Պիտակներ", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Վերնագիր", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Վերբեռնվել է", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Բառեր", @@ -2046,7 +2249,7 @@ "DE.Views.ImageSettingsAdvanced.textTextBox": "Գրվածքի տուփ", "DE.Views.ImageSettingsAdvanced.textTitle": "Պատկեր - լրացուցիչ կարգավորումներ", "DE.Views.ImageSettingsAdvanced.textTitleChart": "Գծապատկեր - լրացուցիչ կարգավորումներ", - "DE.Views.ImageSettingsAdvanced.textTitleShape": "Պատկեր - լրացուցիչ կարգավորումներ", + "DE.Views.ImageSettingsAdvanced.textTitleShape": "Պատկեր - ընդլայնված կարգավորումներ", "DE.Views.ImageSettingsAdvanced.textTop": "Վերև", "DE.Views.ImageSettingsAdvanced.textTopMargin": "Վերին լուսանցք", "DE.Views.ImageSettingsAdvanced.textVertical": "Ուղղահայաց", @@ -2066,6 +2269,7 @@ "DE.Views.LeftMenu.tipComments": "Մեկնաբանություններ", "DE.Views.LeftMenu.tipNavigation": "Նավիգացիա", "DE.Views.LeftMenu.tipOutline": "Վերնագրեր", + "DE.Views.LeftMenu.tipPageThumbnails": "Էջի էսքիզներ", "DE.Views.LeftMenu.tipPlugins": "Պլագիններ", "DE.Views.LeftMenu.tipSearch": "Որոնել", "DE.Views.LeftMenu.tipSupport": "Հետադարձ կապ և աջակցություն", @@ -2361,7 +2565,7 @@ "DE.Views.ParagraphSettingsAdvanced.textTabLeft": "Ձախ", "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Ներդիրի դիրքը", "DE.Views.ParagraphSettingsAdvanced.textTabRight": "Աջ", - "DE.Views.ParagraphSettingsAdvanced.textTitle": "Պարբերություն- լրացուցիչ կարգավորումներ", + "DE.Views.ParagraphSettingsAdvanced.textTitle": "Պարբերություն- ընդլայնված կարգավորումներ", "DE.Views.ParagraphSettingsAdvanced.textTop": "Վերև", "DE.Views.ParagraphSettingsAdvanced.tipAll": "Սահմանել արտաքին եզրագիծը և բոլոր ներքին գծերը", "DE.Views.ParagraphSettingsAdvanced.tipBottom": "Սահմանել միայն ստորին Եզրագիծ", @@ -2373,6 +2577,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Սահմանել միայն վերին եզրագիծը", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Ինքնաշխատ", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Առանց եզրագծերի", + "DE.Views.ProtectDialog.textComments": "Մեկնաբանություններ", + "DE.Views.ProtectDialog.textForms": "Լրացվող ձևեր", + "DE.Views.ProtectDialog.textReview": "Հետագծված փոփոխություններ", + "DE.Views.ProtectDialog.textView": "Փոփոխություններ չկան (Միայն-կարդալու)", + "DE.Views.ProtectDialog.txtAllow": "Թույլատրել միայն այս տեսակի խմբագրումը փաստաթղթում", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Հաստատման գաղտնաբառը նույնը չէ", + "DE.Views.ProtectDialog.txtOptional": "ընտրովի", + "DE.Views.ProtectDialog.txtPassword": "Գաղտնաբառ", + "DE.Views.ProtectDialog.txtProtect": "Պաշտպանել", + "DE.Views.ProtectDialog.txtRepeat": "Կրկնել գաղտնաբառը", + "DE.Views.ProtectDialog.txtTitle": "Պաշտպանել", + "DE.Views.ProtectDialog.txtWarning": "Զգուշացում․ գաղտնաբառը կորցնելու կամ մոռանալու դեպքում այն ​​չի կարող վերականգնվել։Խնդրում ենք պահել այն ապահով տեղում:", "DE.Views.RightMenu.txtChartSettings": "Գծապատկերի կարգավորումներ", "DE.Views.RightMenu.txtFormSettings": "Ձևի կարգավորումներ", "DE.Views.RightMenu.txtHeaderFooterSettings": "Էջագլխի և էջատակի կարգավորումներ", @@ -2563,12 +2779,20 @@ "DE.Views.TableSettings.tipOuter": "Սահմանել միայն արտաքին եզրագիծը", "DE.Views.TableSettings.tipRight": "Սահմանել միայն արտաքին աջ եզրագիծը", "DE.Views.TableSettings.tipTop": "Սահմանել միայն արտաքին վերին եզրագիծը", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Եզրագծած և Ընդգծված Աղյուսակներ", + "DE.Views.TableSettings.txtGroupTable_Custom": "Հարմարեցված", + "DE.Views.TableSettings.txtGroupTable_Grid": "Ցանցավոր աղյուսակներ", + "DE.Views.TableSettings.txtGroupTable_List": "Ցուցակային աղյուսակներ", + "DE.Views.TableSettings.txtGroupTable_Plain": "Պարզ աղյուսակներ", "DE.Views.TableSettings.txtNoBorders": "Առանց եզրագծերի", "DE.Views.TableSettings.txtTable_Accent": "Շեշտ", + "DE.Views.TableSettings.txtTable_Bordered": "Եզրագծած", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Եզրագծած և Ընդգծված", "DE.Views.TableSettings.txtTable_Colorful": "Գունավոր", "DE.Views.TableSettings.txtTable_Dark": "Մութ", "DE.Views.TableSettings.txtTable_GridTable": "Ցանցային աղյուսակ", "DE.Views.TableSettings.txtTable_Light": "Լույս", + "DE.Views.TableSettings.txtTable_Lined": "Գծավոր", "DE.Views.TableSettings.txtTable_ListTable": "Ցանկի աղյուսակ", "DE.Views.TableSettings.txtTable_PlainTable": "Պարզ աղյուսակ ", "DE.Views.TableSettings.txtTable_TableGrid": "Աղյուսակի կետացանց", @@ -2703,6 +2927,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Նկար", "DE.Views.Toolbar.capBtnInsPagebreak": "Ընդհատումներ", "DE.Views.Toolbar.capBtnInsShape": "Պատկեր", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Նշան", "DE.Views.Toolbar.capBtnInsTable": "Աղյուսակ", "DE.Views.Toolbar.capBtnInsTextart": "Տեքստարվեստ", @@ -2849,13 +3074,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Մեծացնել բացատը պարբերության սկզբում", "DE.Views.Toolbar.tipInsertChart": "Զետեղել գծապատկեր", "DE.Views.Toolbar.tipInsertEquation": "Դնել հավասարում", + "DE.Views.Toolbar.tipInsertHorizontalText": "Զետեղել հորիզոնական գրվածքի տուփ", "DE.Views.Toolbar.tipInsertImage": "Զետեղել նկար", "DE.Views.Toolbar.tipInsertNum": "Դնել էջի համարը", "DE.Views.Toolbar.tipInsertShape": "Զետեղել պատկեր", + "DE.Views.Toolbar.tipInsertSmartArt": "Զետեղել SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Տեղադրել նշան", "DE.Views.Toolbar.tipInsertTable": "Դնել աղյուսակ", "DE.Views.Toolbar.tipInsertText": "Դնել տեքստատուփ", "DE.Views.Toolbar.tipInsertTextArt": "Դնել տեքստարվեստից", + "DE.Views.Toolbar.tipInsertVerticalText": "Զետեղել ուղղահայաց գրվածքի տուփ", "DE.Views.Toolbar.tipLineNumbers": "Ցուցադրել տողերի համարները", "DE.Views.Toolbar.tipLineSpace": "Պարբերության տողամիջոց", "DE.Views.Toolbar.tipMailRecepients": "Փոստի միավորում", @@ -2926,9 +3154,11 @@ "DE.Views.ViewTab.textDarkDocument": "Մուգ փաստաթուղթ", "DE.Views.ViewTab.textFitToPage": "Հարմարեցնել էջին", "DE.Views.ViewTab.textFitToWidth": "Լայնքով", - "DE.Views.ViewTab.textInterfaceTheme": "Ինտերֆեյսի թեմա", + "DE.Views.ViewTab.textInterfaceTheme": "Ինտերֆեյսի ոճ", + "DE.Views.ViewTab.textLeftMenu": "Ձախ վահանակ", "DE.Views.ViewTab.textNavigation": "Նավիգացիա", "DE.Views.ViewTab.textOutline": "Վերնագրեր", + "DE.Views.ViewTab.textRightMenu": "Աջ վահանակ", "DE.Views.ViewTab.textRulers": "Քանոններ", "DE.Views.ViewTab.textStatusBar": "Վիճակագոտի", "DE.Views.ViewTab.textZoom": "Խոշորացնել", diff --git a/apps/documenteditor/main/locale/id.json b/apps/documenteditor/main/locale/id.json index a93804c44..f52f25a29 100644 --- a/apps/documenteditor/main/locale/id.json +++ b/apps/documenteditor/main/locale/id.json @@ -39,29 +39,29 @@ "Common.Controllers.ReviewChanges.textIndentRight": "Indent kanan", "Common.Controllers.ReviewChanges.textInserted": "Disisipkan:", "Common.Controllers.ReviewChanges.textItalic": "Miring", - "Common.Controllers.ReviewChanges.textJustify": "Rata", + "Common.Controllers.ReviewChanges.textJustify": "Rata kiri kanan", "Common.Controllers.ReviewChanges.textKeepLines": "Pertahankan garis bersama", "Common.Controllers.ReviewChanges.textKeepNext": "Satukan dengan berikutnya", - "Common.Controllers.ReviewChanges.textLeft": "Sejajar kiri", + "Common.Controllers.ReviewChanges.textLeft": "Rata kiri", "Common.Controllers.ReviewChanges.textLineSpacing": "Spasi Antar Baris:", "Common.Controllers.ReviewChanges.textMultiple": "banyak", "Common.Controllers.ReviewChanges.textNoBreakBefore": "Tanpa break halaman sebelum", - "Common.Controllers.ReviewChanges.textNoContextual": "Tambah jarak diantara", + "Common.Controllers.ReviewChanges.textNoContextual": "Tambah jarak di antara", "Common.Controllers.ReviewChanges.textNoKeepLines": "Jangan satukan garis", "Common.Controllers.ReviewChanges.textNoKeepNext": "Jangan satukan dengan berikutnya", "Common.Controllers.ReviewChanges.textNot": "Tidak ", "Common.Controllers.ReviewChanges.textNoWidow": "Tanpa kontrol widow", "Common.Controllers.ReviewChanges.textNum": "Ganti penomoran", "Common.Controllers.ReviewChanges.textOff": "{0} tidak lagi menggunakan Lacak Perubahan.", - "Common.Controllers.ReviewChanges.textOffGlobal": "{0} menonaktifkan Lacak Perubahan untuk semua.", + "Common.Controllers.ReviewChanges.textOffGlobal": "{0} menonaktifkan Lacak Perubahan untuk semua orang.", "Common.Controllers.ReviewChanges.textOn": "{0} sedang menggunakan Lacak Perubahan.", - "Common.Controllers.ReviewChanges.textOnGlobal": "{0} mengaktifkan Lacak Perubahan untuk semua.", + "Common.Controllers.ReviewChanges.textOnGlobal": "{0} mengaktifkan Lacak Perubahan untuk semua orang.", "Common.Controllers.ReviewChanges.textParaDeleted": "Paragraf Dihapus", "Common.Controllers.ReviewChanges.textParaFormatted": "Paragraf Diformat", "Common.Controllers.ReviewChanges.textParaInserted": "Paragraf Disisipkan", - "Common.Controllers.ReviewChanges.textParaMoveFromDown": "Pindah ke bawah:", - "Common.Controllers.ReviewChanges.textParaMoveFromUp": "Pindah ke atas:", - "Common.Controllers.ReviewChanges.textParaMoveTo": "Pindah:", + "Common.Controllers.ReviewChanges.textParaMoveFromDown": "Dipindah Ke Bawah:", + "Common.Controllers.ReviewChanges.textParaMoveFromUp": "Dipindah Ke Atas:", + "Common.Controllers.ReviewChanges.textParaMoveTo": "Dipindah:", "Common.Controllers.ReviewChanges.textPosition": "Posisi", "Common.Controllers.ReviewChanges.textRight": "Rata kanan", "Common.Controllers.ReviewChanges.textShape": "Bentuk", @@ -74,9 +74,9 @@ "Common.Controllers.ReviewChanges.textStrikeout": "Coret ganda", "Common.Controllers.ReviewChanges.textSubScript": "Subskrip", "Common.Controllers.ReviewChanges.textSuperScript": "Superskrip", - "Common.Controllers.ReviewChanges.textTableChanged": "Setelan tabel", - "Common.Controllers.ReviewChanges.textTableRowsAdd": "Baris tabel ditambah", - "Common.Controllers.ReviewChanges.textTableRowsDel": "Baris Tabel dihapus", + "Common.Controllers.ReviewChanges.textTableChanged": "Pengaturan Tabel Diubah", + "Common.Controllers.ReviewChanges.textTableRowsAdd": "Baris Tabel Ditambah", + "Common.Controllers.ReviewChanges.textTableRowsDel": "Baris Tabel Dihapus", "Common.Controllers.ReviewChanges.textTabs": "Ganti tab", "Common.Controllers.ReviewChanges.textTitleComparison": "Pengaturan Perbandingan", "Common.Controllers.ReviewChanges.textUnderline": "Garis bawah", @@ -105,16 +105,16 @@ "Common.define.chartData.textHBarNormal": "Grafik batang klaster", "Common.define.chartData.textHBarNormal3d": "Diagram Batang Cluster 3-D", "Common.define.chartData.textHBarStacked": "Diagram batang bertumpuk", - "Common.define.chartData.textHBarStacked3d": "Diagram batang bertumpuk 3-D", - "Common.define.chartData.textHBarStackedPer": "Diagram batang bertumpuk 100%", - "Common.define.chartData.textHBarStackedPer3d": "Diagram batang bertumpuk 100% 3-D", + "Common.define.chartData.textHBarStacked3d": "Batang bertumpuk 3-D", + "Common.define.chartData.textHBarStackedPer": "Batang bertumpuk 100%", + "Common.define.chartData.textHBarStackedPer3d": "Batang bertumpuk 100% 3-D", "Common.define.chartData.textLine": "Garis", "Common.define.chartData.textLine3d": "Garis 3-D", "Common.define.chartData.textLineMarker": "Garis dengan tanda", "Common.define.chartData.textLineStacked": "Diagram garis bertumpuk", "Common.define.chartData.textLineStackedMarker": "Diagram garis bertumpuk dengan marker", "Common.define.chartData.textLineStackedPer": "Garis bertumpuk 100%", - "Common.define.chartData.textLineStackedPerMarker": "Garis bertumpuk 100% dengan marker", + "Common.define.chartData.textLineStackedPerMarker": "Garis bertumpuk 100% dengan penanda", "Common.define.chartData.textPie": "Diagram Lingkaran", "Common.define.chartData.textPie3d": "Pie 3-D", "Common.define.chartData.textPoint": "XY (Scatter)", @@ -125,12 +125,171 @@ "Common.define.chartData.textScatterSmoothMarker": "Diagram sebar dengan garis mulus dan marker", "Common.define.chartData.textStock": "Diagram Garis", "Common.define.chartData.textSurface": "Permukaan", + "Common.define.smartArt.textAccentedPicture": "Gambar Beraksen", + "Common.define.smartArt.textAccentProcess": "Proses Aksen", + "Common.define.smartArt.textAlternatingFlow": "Alur Bolak-Balik", + "Common.define.smartArt.textAlternatingHexagons": "Segi Enam Bolak-Balik", + "Common.define.smartArt.textAlternatingPictureBlocks": "Blok Gambar Bolak-Balik", + "Common.define.smartArt.textAlternatingPictureCircles": "Lingkaran Gambar Bolak-Balik", + "Common.define.smartArt.textArchitectureLayout": "Tata Letak Arsitektur", + "Common.define.smartArt.textArrowRibbon": "Pita Anak Panah", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Proses Akses Gambar Naik", + "Common.define.smartArt.textBalance": "Seimbang", + "Common.define.smartArt.textBasicBendingProcess": "Proses Meliuk Dasar", + "Common.define.smartArt.textBasicBlockList": "Daftar Blok Dasar", + "Common.define.smartArt.textBasicChevronProcess": "Proses Chevron Dasar", + "Common.define.smartArt.textBasicCycle": "Lingkaran Dasar", + "Common.define.smartArt.textBasicMatrix": "Matriks Dasar", + "Common.define.smartArt.textBasicPie": "Pai Dasar", + "Common.define.smartArt.textBasicProcess": "Proses Dasar", + "Common.define.smartArt.textBasicPyramid": "Piramida Dasar", + "Common.define.smartArt.textBasicRadial": "Radial Dasar", + "Common.define.smartArt.textBasicTarget": "Target Dasar", + "Common.define.smartArt.textBasicTimeline": "Garis Waktu Dasar", + "Common.define.smartArt.textBasicVenn": "Venn Dasar", + "Common.define.smartArt.textBendingPictureAccentList": "Daftar Akses Gambar Meliuk", + "Common.define.smartArt.textBendingPictureBlocks": "Blok Gambar Meliuk", + "Common.define.smartArt.textBendingPictureCaption": "Keterangan Gambar Meliuk", + "Common.define.smartArt.textBendingPictureCaptionList": "Daftar Keterangan Gambar Meliuk", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Teks Semi-Transparan Gambar Meliuk", + "Common.define.smartArt.textBlockCycle": "Lingkaran Blok", + "Common.define.smartArt.textBubblePictureList": "Daftar Gambar Gelembung", + "Common.define.smartArt.textCaptionedPictures": "Gambar Dengan Keterangan", + "Common.define.smartArt.textChevronAccentProcess": "Proses Aksen Chevron", + "Common.define.smartArt.textChevronList": "Daftar Chevron", + "Common.define.smartArt.textCircleAccentTimeline": "Garis Waktu Aksen Lingkaran", + "Common.define.smartArt.textCircleArrowProcess": "Proses Panah Lingkaran", + "Common.define.smartArt.textCirclePictureHierarchy": "Hierarki Gambar Lingkaran", + "Common.define.smartArt.textCircleProcess": "Proses Lingkaran", + "Common.define.smartArt.textCircleRelationship": "Hubungan Lingkaran", + "Common.define.smartArt.textCircularBendingProcess": "Proses Melingkar", + "Common.define.smartArt.textCircularPictureCallout": "Panggilan Gambar Melingkar", + "Common.define.smartArt.textClosedChevronProcess": "Proses Chevron Tertutup", + "Common.define.smartArt.textContinuousArrowProcess": "Proses Panah Berkelanjutan", + "Common.define.smartArt.textContinuousBlockProcess": "Proses Blok Berkelanjutan", + "Common.define.smartArt.textContinuousCycle": "Siklus Berkelanjutan", + "Common.define.smartArt.textContinuousPictureList": "Daftar Gambar Berkelanjutan", + "Common.define.smartArt.textConvergingArrows": "Panah Memusat", + "Common.define.smartArt.textConvergingRadial": "Radial Memusat", + "Common.define.smartArt.textConvergingText": "Teks Memusat", + "Common.define.smartArt.textCounterbalanceArrows": "Panah Pengimbang", + "Common.define.smartArt.textCycle": "Siklus", + "Common.define.smartArt.textCycleMatrix": "Matriks Siklus", + "Common.define.smartArt.textDescendingBlockList": "Daftar Blok Turun", + "Common.define.smartArt.textDescendingProcess": "Proses Menurun", + "Common.define.smartArt.textDetailedProcess": "Proses Terperinci", + "Common.define.smartArt.textDivergingArrows": "Panah Menyebar", + "Common.define.smartArt.textDivergingRadial": "Radial Menyebar", + "Common.define.smartArt.textEquation": "Persamaan", + "Common.define.smartArt.textFramedTextPicture": "Gambar Teks Terbingkai", + "Common.define.smartArt.textFunnel": "Corong", + "Common.define.smartArt.textGear": "Gerigi", + "Common.define.smartArt.textGridMatrix": "Matriks Kisi", + "Common.define.smartArt.textGroupedList": "Daftar yang Dikelompokkan", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Bagan Organisasi Setengah Lingkaran", + "Common.define.smartArt.textHexagonCluster": "Kluster Segi Enam", + "Common.define.smartArt.textHexagonRadial": "Radial Segi Enam", + "Common.define.smartArt.textHierarchy": "Hierarki", + "Common.define.smartArt.textHierarchyList": "Daftar Hierarki", + "Common.define.smartArt.textHorizontalBulletList": "Daftar Poin Horizontal", + "Common.define.smartArt.textHorizontalHierarchy": "Hierarki Horizontal", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Hierarki Berlabel Horizontal", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Hierarki Multi-Level Horizontal", + "Common.define.smartArt.textHorizontalOrganizationChart": "Bagan Organisasi Horizontal", + "Common.define.smartArt.textHorizontalPictureList": "Daftar Gambar Horizontal", + "Common.define.smartArt.textIncreasingArrowProcess": "Proses Panah Meningkat", + "Common.define.smartArt.textIncreasingCircleProcess": "Proses Lingkaran Meningkat", + "Common.define.smartArt.textInterconnectedBlockProcess": "Proses Blok yang Saling Terhubung", + "Common.define.smartArt.textInterconnectedRings": "Cincin yang Saling Terhubung", + "Common.define.smartArt.textInvertedPyramid": "Piramida Terbalik", + "Common.define.smartArt.textLabeledHierarchy": "Hierarki Berlabel", + "Common.define.smartArt.textLinearVenn": "Venn Linear", + "Common.define.smartArt.textLinedList": "Daftar Bergaris", + "Common.define.smartArt.textList": "Daftar", + "Common.define.smartArt.textMatrix": "Matriks", + "Common.define.smartArt.textMultidirectionalCycle": "Siklus Multiarah", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Bagan Organisasi Nama dan Jabatan", + "Common.define.smartArt.textNestedTarget": "Target Bertumpuk", + "Common.define.smartArt.textNondirectionalCycle": "Siklus Tanpa Arah", + "Common.define.smartArt.textOpposingArrows": "Panah Berlawanan", + "Common.define.smartArt.textOpposingIdeas": "Ide Berlawanan", + "Common.define.smartArt.textOrganizationChart": "Bagan Organisasi", + "Common.define.smartArt.textOther": "Lainnya", + "Common.define.smartArt.textPhasedProcess": "Proses Berfase", + "Common.define.smartArt.textPicture": "Gambar", + "Common.define.smartArt.textPictureAccentBlocks": "Blok Aksen Gambar", + "Common.define.smartArt.textPictureAccentList": "Daftar Aksen Gambar", + "Common.define.smartArt.textPictureAccentProcess": "Proses Aksen Gambar", + "Common.define.smartArt.textPictureCaptionList": "Daftar Keterangan Gambar", + "Common.define.smartArt.textPictureFrame": "PictureFrame", + "Common.define.smartArt.textPictureGrid": "Kisi Gambar", + "Common.define.smartArt.textPictureLineup": "Deretan Gambar", + "Common.define.smartArt.textPictureOrganizationChart": "Bagan Organisasi Gambar", + "Common.define.smartArt.textPictureStrips": "Jalur Gambar", + "Common.define.smartArt.textPieProcess": "Proses Pai", + "Common.define.smartArt.textPlusAndMinus": "Plus dan Minus", + "Common.define.smartArt.textProcess": "Proses", + "Common.define.smartArt.textProcessArrows": "Panah Proses", + "Common.define.smartArt.textProcessList": "Daftar Proses", + "Common.define.smartArt.textPyramid": "Piramida", + "Common.define.smartArt.textPyramidList": "Daftar Piramida", + "Common.define.smartArt.textRadialCluster": "Kluster Radial", + "Common.define.smartArt.textRadialCycle": "Siklus Radial", + "Common.define.smartArt.textRadialList": "Daftar Radial", + "Common.define.smartArt.textRadialPictureList": "Daftar Gambar Radial", + "Common.define.smartArt.textRadialVenn": "Venn Radial", + "Common.define.smartArt.textRandomToResultProcess": "Proses Acak ke Hasil", + "Common.define.smartArt.textRelationship": "Hubungan", + "Common.define.smartArt.textRepeatingBendingProcess": "Proses Pengarahan Berulang", + "Common.define.smartArt.textReverseList": "Daftar Terbalik", + "Common.define.smartArt.textSegmentedCycle": "Siklus Bersegmen", + "Common.define.smartArt.textSegmentedProcess": "Proses Bersegmen", + "Common.define.smartArt.textSegmentedPyramid": "Piramida Bersegmen", + "Common.define.smartArt.textSnapshotPictureList": "Daftar Gambar Snapshot", + "Common.define.smartArt.textSpiralPicture": "Gambar Spiral", + "Common.define.smartArt.textSquareAccentList": "Daftar Aksen Persegi", + "Common.define.smartArt.textStackedList": "Daftar Bertumpuk", + "Common.define.smartArt.textStackedVenn": "Venn Bertumpuk", + "Common.define.smartArt.textStaggeredProcess": "Proses Pengaturan", + "Common.define.smartArt.textStepDownProcess": "Proses Mundur", + "Common.define.smartArt.textStepUpProcess": "Proses Meningkat", + "Common.define.smartArt.textSubStepProcess": "Proses Sub-Langkah", + "Common.define.smartArt.textTabbedArc": "Busur Bertab", + "Common.define.smartArt.textTableHierarchy": "Hierarki Tabel", + "Common.define.smartArt.textTableList": "Daftar Tabel", + "Common.define.smartArt.textTabList": "Daftar Tab", + "Common.define.smartArt.textTargetList": "Daftar Target", + "Common.define.smartArt.textTextCycle": "Siklus Teks", + "Common.define.smartArt.textThemePictureAccent": "Aksen Gambar Tema", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Aksen Bolak-Balik Gambar Tema", + "Common.define.smartArt.textThemePictureGrid": "Kisi Gambar Tema", + "Common.define.smartArt.textTitledMatrix": "Matriks Berjudul", + "Common.define.smartArt.textTitledPictureAccentList": "Daftar Aksen Gambar Berjudul", + "Common.define.smartArt.textTitledPictureBlocks": "Blok Gambar Berjudul", + "Common.define.smartArt.textTitlePictureLineup": "Deretan Gambar Judul", + "Common.define.smartArt.textTrapezoidList": "Daftar Trapesium", + "Common.define.smartArt.textUpwardArrow": "Panah ke Atas", + "Common.define.smartArt.textVaryingWidthList": "Daftar dengan Lebar Bervariasi", + "Common.define.smartArt.textVerticalAccentList": "Daftar Aksen Vertikal", + "Common.define.smartArt.textVerticalArrowList": "Daftar Panah Vertikal", + "Common.define.smartArt.textVerticalBendingProcess": "Arah Proses Vertikal", + "Common.define.smartArt.textVerticalBlockList": "Daftar Blok Vertikal", + "Common.define.smartArt.textVerticalBoxList": "Daftar Kotak Vertikal", + "Common.define.smartArt.textVerticalBracketList": "Daftar Tanda Kurung Vertikal", + "Common.define.smartArt.textVerticalBulletList": "Daftar Poin Vertikal", + "Common.define.smartArt.textVerticalChevronList": "Daftar Chevron Vertikal", + "Common.define.smartArt.textVerticalCircleList": "Daftar Lingkaran Vertikal", + "Common.define.smartArt.textVerticalCurvedList": "Daftar Kurva Vertikal", + "Common.define.smartArt.textVerticalEquation": "Persamaan Vertikal", + "Common.define.smartArt.textVerticalPictureAccentList": "Daftar Aksen Gambar Vertikal", + "Common.define.smartArt.textVerticalPictureList": "Daftar Gambar Vertikal", + "Common.define.smartArt.textVerticalProcess": "Proses Vertikal", "Common.Translation.textMoreButton": "Lainnya", "Common.Translation.warnFileLocked": "Anda tidak bisa edit file ini karena sedang di edit di aplikasi lain.", "Common.Translation.warnFileLockedBtnEdit": "Buat salinan", "Common.Translation.warnFileLockedBtnView": "Buka untuk dilihat", "Common.UI.ButtonColored.textAutoColor": "Otomatis", - "Common.UI.ButtonColored.textNewColor": "Tambahkan warna khusus baru", + "Common.UI.ButtonColored.textNewColor": "Tambahkan Warna Ubahan Baru", "Common.UI.Calendar.textApril": "April", "Common.UI.Calendar.textAugust": "Agustus", "Common.UI.Calendar.textDecember": "Desember", @@ -184,12 +343,12 @@ "Common.UI.SearchDialog.textMatchCase": "Harus sama persis", "Common.UI.SearchDialog.textReplaceDef": "Tuliskan teks pengganti", "Common.UI.SearchDialog.textSearchStart": "Tuliskan teks Anda di sini", - "Common.UI.SearchDialog.textTitle": "Cari dan Ganti", + "Common.UI.SearchDialog.textTitle": "Cari dan ganti", "Common.UI.SearchDialog.textTitle2": "Cari", "Common.UI.SearchDialog.textWholeWords": "Seluruh kata saja", "Common.UI.SearchDialog.txtBtnHideReplace": "Sembunyikan Replace", "Common.UI.SearchDialog.txtBtnReplace": "Ganti", - "Common.UI.SearchDialog.txtBtnReplaceAll": "Ganti Semua", + "Common.UI.SearchDialog.txtBtnReplaceAll": "Ganti semua", "Common.UI.SynchronizeTip.textDontShow": "Jangan tampilkan pesan ini lagi", "Common.UI.SynchronizeTip.textSynchronize": "Dokumen telah diubah oleh pengguna lain.
    Silakan klik untuk menyimpan perubahan dan memuat ulang pembaruan.", "Common.UI.ThemeColorPalette.textRecentColors": "Warna Terakhir", @@ -223,9 +382,9 @@ "Common.Views.About.txtTel": "tel: ", "Common.Views.About.txtVersion": "Versi ", "Common.Views.AutoCorrectDialog.textAdd": "Tambahkan", - "Common.Views.AutoCorrectDialog.textApplyText": "Terapkan Sesuai yang Anda Tulis", + "Common.Views.AutoCorrectDialog.textApplyText": "Terapkan sambil Anda menulis", "Common.Views.AutoCorrectDialog.textAutoCorrect": "AutoKoreksi Teks", - "Common.Views.AutoCorrectDialog.textAutoFormat": "AutoFormat Sesuai yang Anda Mau", + "Common.Views.AutoCorrectDialog.textAutoFormat": "AutoFormat sambil Anda mengetik", "Common.Views.AutoCorrectDialog.textBulleted": "Butir list otomatis", "Common.Views.AutoCorrectDialog.textBy": "oleh", "Common.Views.AutoCorrectDialog.textDelete": "Hapus", @@ -237,10 +396,10 @@ "Common.Views.AutoCorrectDialog.textMathCorrect": "AutoCorrect Matematika", "Common.Views.AutoCorrectDialog.textNumbered": "Penomoran list otomatis", "Common.Views.AutoCorrectDialog.textQuotes": "\"Straight quotes\" dengan \"smart quotes\"", - "Common.Views.AutoCorrectDialog.textRecognized": "Fungsi yang Diterima", + "Common.Views.AutoCorrectDialog.textRecognized": "Fungsi yang dikenali", "Common.Views.AutoCorrectDialog.textRecognizedDesc": "Ekspresi ini merupakan ekspresi matematika. Ekspresi ini tidak akan dimiringkan secara otomatis.", "Common.Views.AutoCorrectDialog.textReplace": "Ganti", - "Common.Views.AutoCorrectDialog.textReplaceText": "Ganti Saat Anda Mengetik", + "Common.Views.AutoCorrectDialog.textReplaceText": "Ganti sambil Anda mengetik", "Common.Views.AutoCorrectDialog.textReplaceType": "Ganti teks saat Anda mengetik", "Common.Views.AutoCorrectDialog.textReset": "Atur ulang", "Common.Views.AutoCorrectDialog.textResetAll": "Atur ulang kembali ke awal", @@ -261,7 +420,7 @@ "Common.Views.Comments.mniPositionDesc": "Dari bawah", "Common.Views.Comments.textAdd": "Tambahkan", "Common.Views.Comments.textAddComment": "Tambahkan Komentar", - "Common.Views.Comments.textAddCommentToDoc": "Tambahkan Komentar untuk Dokumen", + "Common.Views.Comments.textAddCommentToDoc": "Tambahkan Komentar untuk dokumen", "Common.Views.Comments.textAddReply": "Tambahkan Balasan", "Common.Views.Comments.textAll": "Semua", "Common.Views.Comments.textAnonym": "Tamu", @@ -281,12 +440,12 @@ "Common.Views.Comments.txtEmpty": "Tidak ada komentar pada dokumen.", "Common.Views.CopyWarningDialog.textDontShow": "Jangan tampilkan pesan ini lagi", "Common.Views.CopyWarningDialog.textMsg": "Langkah salin, potong dan tempel menggunakan tombol editor toolbar dan menu konteks dapat dilakukan hanya dengan tab editor ni saja.

    Untuk menyalin atau menempel ke atau dari aplikasi di luar tab editor, gunakan kombinasi tombol keyboard berikut ini:", - "Common.Views.CopyWarningDialog.textTitle": "Salin, Potong dan Tempel", + "Common.Views.CopyWarningDialog.textTitle": "Aksi Salin, Potong, dan Tempel", "Common.Views.CopyWarningDialog.textToCopy": "untuk Salin", "Common.Views.CopyWarningDialog.textToCut": "untuk Potong", "Common.Views.CopyWarningDialog.textToPaste": "untuk Tempel", "Common.Views.DocumentAccessDialog.textLoading": "Memuat...", - "Common.Views.DocumentAccessDialog.textTitle": "Pengaturan Berbagi", + "Common.Views.DocumentAccessDialog.textTitle": "Pengaturan berbagi", "Common.Views.ExternalDiagramEditor.textTitle": "Editor Bagan", "Common.Views.ExternalEditor.textClose": "Tutup", "Common.Views.ExternalEditor.textSave": "Simpan & Keluar", @@ -294,7 +453,7 @@ "Common.Views.ExternalOleEditor.textTitle": "Penyunting Spreadsheet", "Common.Views.Header.labelCoUsersDescr": "User yang sedang edit file:", "Common.Views.Header.textAddFavorite": "Tandai sebagai favorit", - "Common.Views.Header.textAdvSettings": "Pengaturan Lanjut", + "Common.Views.Header.textAdvSettings": "Pengaturan lanjut", "Common.Views.Header.textBack": "Buka Dokumen", "Common.Views.Header.textCompactView": "Sembunyikan Toolbar", "Common.Views.Header.textHideLines": "Sembunyikan Mistar", @@ -323,17 +482,17 @@ "Common.Views.History.textShowAll": "Tampilkan detail perubahan", "Common.Views.History.textVer": "ver.", "Common.Views.ImageFromUrlDialog.textUrl": "Tempel URL gambar:", - "Common.Views.ImageFromUrlDialog.txtEmpty": "Kolom ini harus diisi", - "Common.Views.ImageFromUrlDialog.txtNotUrl": "Bagian ini harus berupa URL dengn format \"http://www.contoh.com\"", + "Common.Views.ImageFromUrlDialog.txtEmpty": "Ruas ini diperlukan", + "Common.Views.ImageFromUrlDialog.txtNotUrl": "Ruas ini harus berupa URL dengan format \"http://www.contoh.com\"", "Common.Views.InsertTableDialog.textInvalidRowsCols": "Anda harus menentukan baris dan jumlah kolom yang benar.", - "Common.Views.InsertTableDialog.txtColumns": "Jumlah Kolom", - "Common.Views.InsertTableDialog.txtMaxText": "Input maksimal untuk kolom ini adalah {0}.", - "Common.Views.InsertTableDialog.txtMinText": "Input minimal untuk kolom ini adalah {0}.", - "Common.Views.InsertTableDialog.txtRows": "Jumlah Baris", - "Common.Views.InsertTableDialog.txtTitle": "Ukuran Tabel", - "Common.Views.InsertTableDialog.txtTitleSplit": "Pisahkan Sel", + "Common.Views.InsertTableDialog.txtColumns": "Jumlah kolom", + "Common.Views.InsertTableDialog.txtMaxText": "Nilai maksimal untuk ruas ini adalah {0}.", + "Common.Views.InsertTableDialog.txtMinText": "Nilai minimal untuk ruas ini adalah {0}.", + "Common.Views.InsertTableDialog.txtRows": "Jumlah baris", + "Common.Views.InsertTableDialog.txtTitle": "Ukuran tabel", + "Common.Views.InsertTableDialog.txtTitleSplit": "Belah sel", "Common.Views.LanguageDialog.labelSelect": "Pilih bahasa dokumen", - "Common.Views.OpenDialog.closeButtonText": "Tutup File", + "Common.Views.OpenDialog.closeButtonText": "Tutup file", "Common.Views.OpenDialog.txtEncoding": "Enkoding ", "Common.Views.OpenDialog.txtIncorrectPwd": "Password salah.", "Common.Views.OpenDialog.txtOpenFile": "Masukkan kata sandi untuk buka file", @@ -341,7 +500,7 @@ "Common.Views.OpenDialog.txtPreview": "Pratinjau", "Common.Views.OpenDialog.txtProtected": "Jika Anda memasukkan password dan membuka file, password file saat ini akan di reset.", "Common.Views.OpenDialog.txtTitle": "Pilih %1 opsi", - "Common.Views.OpenDialog.txtTitleProtected": "File yang Diproteksi", + "Common.Views.OpenDialog.txtTitleProtected": "File yang diproteksi", "Common.Views.PasswordDialog.txtDescription": "Buat password untuk melindungi dokumen ini", "Common.Views.PasswordDialog.txtIncorrectPwd": "Password konfirmasi tidak sama", "Common.Views.PasswordDialog.txtPassword": "Kata Sandi", @@ -358,14 +517,14 @@ "Common.Views.Protection.hintAddPwd": "Enkripsi dengan password", "Common.Views.Protection.hintDelPwd": "Hapus kata sandi", "Common.Views.Protection.hintPwd": "Ganti atau hapus password", - "Common.Views.Protection.hintSignature": "Tambah tanda tangan digital atau garis tanda tangan", + "Common.Views.Protection.hintSignature": "Tambah tanda tangan digital atau baris tanda tangan", "Common.Views.Protection.txtAddPwd": "Tambah password", "Common.Views.Protection.txtChangePwd": "Ubah kata sandi", "Common.Views.Protection.txtDeletePwd": "Nama file", "Common.Views.Protection.txtEncrypt": "Enkripsi", "Common.Views.Protection.txtInvisibleSignature": "Tambah tanda tangan digital", "Common.Views.Protection.txtSignature": "Tanda Tangan", - "Common.Views.Protection.txtSignatureLine": "Tambah garis tanda tangan", + "Common.Views.Protection.txtSignatureLine": "Tambah baris tanda tangan", "Common.Views.RenameDialog.textName": "Nama file", "Common.Views.RenameDialog.txtInvalidName": "Nama file tidak boleh berisi karakter seperti: ", "Common.Views.ReviewChanges.hintNext": "Ke perubahan berikutnya", @@ -396,7 +555,7 @@ "Common.Views.ReviewChanges.tipSetSpelling": "Periksa Ejaan", "Common.Views.ReviewChanges.tipSharing": "Atur perizinan akses dokumen", "Common.Views.ReviewChanges.txtAccept": "Terima", - "Common.Views.ReviewChanges.txtAcceptAll": "Terima semua perubahan", + "Common.Views.ReviewChanges.txtAcceptAll": "Terima Semua Perubahan", "Common.Views.ReviewChanges.txtAcceptChanges": "Terima perubahan", "Common.Views.ReviewChanges.txtAcceptCurrent": "Terima Perubahan Saat Ini", "Common.Views.ReviewChanges.txtChat": "Chat", @@ -417,7 +576,7 @@ "Common.Views.ReviewChanges.txtEditing": "Editing", "Common.Views.ReviewChanges.txtFinal": "Semua perubahan diterima {0}", "Common.Views.ReviewChanges.txtFinalCap": "Final", - "Common.Views.ReviewChanges.txtHistory": "Riwayat Versi", + "Common.Views.ReviewChanges.txtHistory": "Riwayat versi", "Common.Views.ReviewChanges.txtMarkup": "Semua perubahan {0}", "Common.Views.ReviewChanges.txtMarkupCap": "Markup dan balon", "Common.Views.ReviewChanges.txtMarkupSimple": "Semua perubahan {0}
    Tanpa balloons", @@ -439,15 +598,15 @@ "Common.Views.ReviewChanges.txtSpelling": "Periksa Ejaan", "Common.Views.ReviewChanges.txtTurnon": "Lacak Perubahan", "Common.Views.ReviewChanges.txtView": "Mode Tampilan", - "Common.Views.ReviewChangesDialog.textTitle": "Review Perubahan", + "Common.Views.ReviewChangesDialog.textTitle": "Tinjau perubahan", "Common.Views.ReviewChangesDialog.txtAccept": "Terima", "Common.Views.ReviewChangesDialog.txtAcceptAll": "Terima semua perubahan", - "Common.Views.ReviewChangesDialog.txtAcceptCurrent": "Terima Perubahan Saat Ini", + "Common.Views.ReviewChangesDialog.txtAcceptCurrent": "Terima perubahan saat ini", "Common.Views.ReviewChangesDialog.txtNext": "Ke perubahan berikutnya", "Common.Views.ReviewChangesDialog.txtPrev": "Ke perubahan sebelumnya", "Common.Views.ReviewChangesDialog.txtReject": "Tolak", - "Common.Views.ReviewChangesDialog.txtRejectAll": "Tolak Semua Perubahan", - "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Tolak Perubahan Saat Ini", + "Common.Views.ReviewChangesDialog.txtRejectAll": "Tolak semua perubahan", + "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Tolak perubahan saat ini", "Common.Views.ReviewPopover.textAdd": "Tambahkan", "Common.Views.ReviewPopover.textAddReply": "Tambahkan Balasan", "Common.Views.ReviewPopover.textCancel": "Batalkan", @@ -494,49 +653,49 @@ "Common.Views.SignDialog.textNameError": "Nama penandatangan tidak boleh kosong.", "Common.Views.SignDialog.textPurpose": "Tujuan menandatangani dokumen ini", "Common.Views.SignDialog.textSelect": "Pilih", - "Common.Views.SignDialog.textSelectImage": "Pilih Gambar", + "Common.Views.SignDialog.textSelectImage": "Pilih gambar", "Common.Views.SignDialog.textSignature": "Tandatangan terlihat seperti", - "Common.Views.SignDialog.textTitle": "Tanda Tangan Dokumen", + "Common.Views.SignDialog.textTitle": "Tanda tangani dokumen", "Common.Views.SignDialog.textUseImage": "atau klik 'Pilih Gambar' untuk menjadikan gambar sebagai tandatangan", "Common.Views.SignDialog.textValid": "Valid dari %1 sampai %2", - "Common.Views.SignDialog.tipFontName": "Nama Font", - "Common.Views.SignDialog.tipFontSize": "Ukuran Huruf", + "Common.Views.SignDialog.tipFontName": "Nama font", + "Common.Views.SignDialog.tipFontSize": "Ukuran font", "Common.Views.SignSettingsDialog.textAllowComment": "Izinkan penandatangan untuk menambahkan komentar di dialog tanda tangan", "Common.Views.SignSettingsDialog.textDefInstruction": "Sebelum menandatangani dokumen ini, pastikan konten yang akan Anda tanda tangani sudah benar.", - "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", - "Common.Views.SignSettingsDialog.textInfoName": "Nama", - "Common.Views.SignSettingsDialog.textInfoTitle": "Gelar Penandatangan", - "Common.Views.SignSettingsDialog.textInstructions": "Instruksi untuk Penandatangan", + "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail penandatangan yang disarankan", + "Common.Views.SignSettingsDialog.textInfoName": "Penandatangan yang disarankan", + "Common.Views.SignSettingsDialog.textInfoTitle": "Gelar penandatangan yang disarankan", + "Common.Views.SignSettingsDialog.textInstructions": "Instruksi untuk penandatangan", "Common.Views.SignSettingsDialog.textShowDate": "Tampilkan tanggal di garis tandatangan", - "Common.Views.SignSettingsDialog.textTitle": "Setup Tanda Tangan", - "Common.Views.SignSettingsDialog.txtEmpty": "Area ini dibutuhkan", + "Common.Views.SignSettingsDialog.textTitle": "Penyiapan tanda tangan", + "Common.Views.SignSettingsDialog.txtEmpty": "Ruas ini diperlukan", "Common.Views.SymbolTableDialog.textCharacter": "Karakter", "Common.Views.SymbolTableDialog.textCode": "Nilai Unicode HEX", - "Common.Views.SymbolTableDialog.textCopyright": "Copyright Sign", - "Common.Views.SymbolTableDialog.textDCQuote": "Kutip Dua Penutup", - "Common.Views.SymbolTableDialog.textDOQuote": "Kutip Dua Pembuka", - "Common.Views.SymbolTableDialog.textEllipsis": "Ellipsis Horizontal", - "Common.Views.SymbolTableDialog.textEmDash": "Em Dash", - "Common.Views.SymbolTableDialog.textEmSpace": "Em Space", - "Common.Views.SymbolTableDialog.textEnDash": "En Dash", - "Common.Views.SymbolTableDialog.textEnSpace": "En Space", + "Common.Views.SymbolTableDialog.textCopyright": "Tanda hak cipta", + "Common.Views.SymbolTableDialog.textDCQuote": "Kutip ganda penutup", + "Common.Views.SymbolTableDialog.textDOQuote": "Kutip ganda pembuka", + "Common.Views.SymbolTableDialog.textEllipsis": "Ellipsis horizontal", + "Common.Views.SymbolTableDialog.textEmDash": "Em dash", + "Common.Views.SymbolTableDialog.textEmSpace": "Em space", + "Common.Views.SymbolTableDialog.textEnDash": "En dash", + "Common.Views.SymbolTableDialog.textEnSpace": "En space", "Common.Views.SymbolTableDialog.textFont": "Huruf", - "Common.Views.SymbolTableDialog.textNBHyphen": "Hyphen Non-breaking", - "Common.Views.SymbolTableDialog.textNBSpace": "Spasi Tanpa-break", - "Common.Views.SymbolTableDialog.textPilcrow": "Simbol Pilcrow", - "Common.Views.SymbolTableDialog.textQEmSpace": "1/4 Em Space", + "Common.Views.SymbolTableDialog.textNBHyphen": "Tanda sambung tak-putus", + "Common.Views.SymbolTableDialog.textNBSpace": "Spasi tak-putus", + "Common.Views.SymbolTableDialog.textPilcrow": "Tanda pilcrow", + "Common.Views.SymbolTableDialog.textQEmSpace": "1/4 Em space", "Common.Views.SymbolTableDialog.textRange": "Rentang", "Common.Views.SymbolTableDialog.textRecent": "Simbol yang baru digunakan", - "Common.Views.SymbolTableDialog.textRegistered": "Tandatangan Teregistrasi", - "Common.Views.SymbolTableDialog.textSCQuote": "Kutip Satu Penutup", - "Common.Views.SymbolTableDialog.textSection": "Sesi Tandatangan", - "Common.Views.SymbolTableDialog.textShortcut": "Kunci Shortcut", - "Common.Views.SymbolTableDialog.textSHyphen": "Soft Hyphen", - "Common.Views.SymbolTableDialog.textSOQuote": "Kutip Satu Pembuka", + "Common.Views.SymbolTableDialog.textRegistered": "Tanda terdaftar", + "Common.Views.SymbolTableDialog.textSCQuote": "Kutip tunggal penutup", + "Common.Views.SymbolTableDialog.textSection": "Tanda seksi", + "Common.Views.SymbolTableDialog.textShortcut": "Tombol pintasan", + "Common.Views.SymbolTableDialog.textSHyphen": "Tanda hubung lunak", + "Common.Views.SymbolTableDialog.textSOQuote": "Kutip tunggal pembuka", "Common.Views.SymbolTableDialog.textSpecial": "Karakter khusus", "Common.Views.SymbolTableDialog.textSymbols": "Simbol", "Common.Views.SymbolTableDialog.textTitle": "Simbol", - "Common.Views.SymbolTableDialog.textTradeMark": "Simbol Trademark ", + "Common.Views.SymbolTableDialog.textTradeMark": "Simbol merk dagang ", "Common.Views.UserNameDialog.textDontShow": "Jangan tanya saya lagi", "Common.Views.UserNameDialog.textLabel": "Label:", "Common.Views.UserNameDialog.textLabelError": "Label tidak boleh kosong.", @@ -553,9 +712,10 @@ "DE.Controllers.LeftMenu.warnDownloadAs": "Jika Anda lanjut simpan dengan format ini, semua fitur kecuali teks akan hilang.
    Apakah Anda ingin melanjutkan?", "DE.Controllers.LeftMenu.warnDownloadAsPdf": "{0} Anda akan dikonversi ke format yang bisa diedit. Hal ini mungkin akan membutuhkan waktu. Dokumen yang dihasilkan akan dioptimalkan untuk memungkinkan Anda mengedit teks, sehingga mungkin tidak terlihat persis seperti aslinya {0}, terutama jika file asli berisi banyak gambar.", "DE.Controllers.LeftMenu.warnDownloadAsRTF": "Jika Anda lanjut simpan dengan format ini, beberapa format lain mungkin akan terhapus.
    Apakah Anda ingin melanjutkan?", - "DE.Controllers.LeftMenu.warnReplaceString": "{0} bukan karakter khusus yang valid untuk bidang penggantian.", + "DE.Controllers.LeftMenu.warnReplaceString": "{0} bukan karakter khusus yang valid untuk ruas penggantian.", "DE.Controllers.Main.applyChangesTextText": "Memuat perubahan...", "DE.Controllers.Main.applyChangesTitleText": "Memuat Perubahan", + "DE.Controllers.Main.confirmMaxChangesSize": "Ukuran tindakan melebihi batas yang ditetapkan untuk server Anda.
    Tekan \"Batalkan\" untuk membatalkan tindakan terakhir Anda atau tekan \"Lanjutkan\" untuk menyimpan tindakan secara lokal (Anda perlu mengunduh file atau menyalin isinya untuk memastikan tidak ada yang hilang).", "DE.Controllers.Main.convertationTimeoutText": "Waktu konversi habis.", "DE.Controllers.Main.criticalErrorExtText": "Tekan \"OK\" untuk kembali ke daftar dokumen.", "DE.Controllers.Main.criticalErrorTitle": "Kesalahan", @@ -582,12 +742,18 @@ "DE.Controllers.Main.errorFilePassProtect": "Dokumen dilindungi dengan kata sandi dan tidak dapat dibuka.", "DE.Controllers.Main.errorFileSizeExceed": "Ukuran file melewati batas server Anda.
    Silakan hubungi admin Server Dokumen Anda untuk detail.", "DE.Controllers.Main.errorForceSave": "Ada kesalahan saat menyimpan file. Silakan gunakan opsi 'Unduh sebagai' untuk menyimpan file ke komputer Anda dan coba lagi.", + "DE.Controllers.Main.errorInconsistentExt": "Terjadi kesalahan saat membuka file.
    Isi file tidak cocok dengan ekstensi file.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Terjadi kesalahan saat membuka file.
    Isi file berhubungan dengan dokumen teks (mis. docx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Sebuah kesalahan terjadi ketika membuka file.
    Isi file berhubungan dengan satu dari format berikut: pdf/djvu/xps/oxps, tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Terjadi kesalahan saat membuka file.
    Isi file berhubungan dengan presentasi (mis. pptx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Terjadi kesalahan saat membuka file.
    Isi file berhubungan dengan spreadsheet (mis. xlsx), tapi file memiliki ekstensi yang tidak konsisten: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Deskriptor kunci tidak dikenal", "DE.Controllers.Main.errorKeyExpire": "Deskriptor kunci tidak berfungsi", "DE.Controllers.Main.errorLoadingFont": "Font tidak bisa dimuat.
    Silakan kontak admin Server Dokumen Anda.", "DE.Controllers.Main.errorMailMergeLoadFile": "Loading dokumen gagal. Silakan coba dengan file lain.", "DE.Controllers.Main.errorMailMergeSaveFile": "Merge gagal.", "DE.Controllers.Main.errorNoTOC": "Tidak ada daftar isi yang harus diperbarui. Anda dapat menyisipkan satu daftar isi dari tab Referensi.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "Kata sandi yang Anda masukkan tidak tepat.
    Pastikan CAPS LOCK sudah mati dan pastikan telah menggunakan huruf besar dengan tepat.", "DE.Controllers.Main.errorProcessSaveResult": "Gagal menyimpan.", "DE.Controllers.Main.errorServerVersion": "Versi editor sudah di update. Halaman akan dimuat ulang untuk menerapkan perubahan.", "DE.Controllers.Main.errorSessionAbsolute": "Waktu edit dokumen sudah selesai. Silakan muat ulang halaman.", @@ -596,7 +762,7 @@ "DE.Controllers.Main.errorSetPassword": "Password tidak bisa diatur.", "DE.Controllers.Main.errorStockChart": "Urutan baris salah. Untuk membuat diagram garis, masukkan data pada lembar kerja dengan urutan berikut ini:
    harga pembukaan, harga maksimal, harga minimal, harga penutupan.", "DE.Controllers.Main.errorSubmit": "Submit gagal.", - "DE.Controllers.Main.errorTextFormWrongFormat": "Nilai yang dimasukkan tidak cocok dengan format bidang.", + "DE.Controllers.Main.errorTextFormWrongFormat": "Nilai yang dimasukkan tidak cocok dengan format ruas.", "DE.Controllers.Main.errorToken": "Token keamanan dokumen tidak dibentuk dengan tepat.
    Silakan hubungi admin Server Dokumen Anda.", "DE.Controllers.Main.errorTokenExpire": "Token keamanan dokumen sudah kadaluwarsa.
    Silakan hubungi admin Server Dokumen Anda.", "DE.Controllers.Main.errorUpdateVersion": "Versi file telah diubah. Halaman tidak akan dimuat ulang.", @@ -627,7 +793,7 @@ "DE.Controllers.Main.reloadButtonText": "Muat Ulang Halaman", "DE.Controllers.Main.requestEditFailedMessageText": "Saat ini dokumen sedang diedit. Silakan coba beberapa saat lagi.", "DE.Controllers.Main.requestEditFailedTitleText": "Akses ditolak", - "DE.Controllers.Main.saveErrorText": "Eror ketika menyimpan file.", + "DE.Controllers.Main.saveErrorText": "Terjadi kesalahan ketika menyimpan file.", "DE.Controllers.Main.saveErrorTextDesktop": "File tidak bisa disimpan atau dibuat.
    Alasan yang mungkin adalah:
    1. File hanya bisa dibaca.
    2. File sedang diedit user lain.
    3. Memori penuh atau terkorupsi.", "DE.Controllers.Main.saveTextText": "Menyimpan dokumen...", "DE.Controllers.Main.saveTitleText": "Menyimpan Dokumen", @@ -644,6 +810,7 @@ "DE.Controllers.Main.textClose": "Tutup", "DE.Controllers.Main.textCloseTip": "Klik untuk menutup tips", "DE.Controllers.Main.textContactUs": "Hubungi sales", + "DE.Controllers.Main.textContinue": "Lanjutkan", "DE.Controllers.Main.textConvertEquation": "Persamaan ini dibuat dengan editor persamaan versi lama yang sudah tidak didukung. Untuk edit, konversikan persamaan ke format Office Math ML.
    Konversi sekarang?", "DE.Controllers.Main.textCustomLoader": "Perlu diketahui bahwa berdasarkan syarat dari lisensi, Anda tidak bisa untuk mengganti loader.
    Silakan hubungi Departemen Penjualan kami untuk mendapatkan harga.", "DE.Controllers.Main.textDisconnect": "Koneksi terputus", @@ -664,6 +831,7 @@ "DE.Controllers.Main.textStrict": "Mode strict", "DE.Controllers.Main.textTryUndoRedo": "Fungsi Undo/Redo dinonaktifkan untuk mode Co-editing Cepat.
    Klik tombol 'Mode strict' untuk mengganti ke Mode Strict Co-editing untuk edit file tanpa gangguan dari user lain dan kirim perubahan Anda hanya setelah Anda menyimpannya. Anda bisa mengganti mode co-editing menggunakan editor di pengaturan lanjut.", "DE.Controllers.Main.textTryUndoRedoWarn": "Fungsi Undo/Redo dinonaktifkan untuk mode Co-editing Cepat.", + "DE.Controllers.Main.textUndo": "Batalkan", "DE.Controllers.Main.titleLicenseExp": "Lisensi kadaluwarsa", "DE.Controllers.Main.titleServerVersion": "Editor mengupdate", "DE.Controllers.Main.titleUpdateVersion": "Versi telah diubah", @@ -825,7 +993,7 @@ "DE.Controllers.Main.txtShape_mathNotEqual": "Tidak Sama", "DE.Controllers.Main.txtShape_mathPlus": "Plus", "DE.Controllers.Main.txtShape_moon": "Bulan", - "DE.Controllers.Main.txtShape_noSmoking": "\"No\" simbol", + "DE.Controllers.Main.txtShape_noSmoking": "Simbol \"Tidak\"", "DE.Controllers.Main.txtShape_notchedRightArrow": "Panah Takik Kanan", "DE.Controllers.Main.txtShape_octagon": "Oktagon", "DE.Controllers.Main.txtShape_parallelogram": "Parallelogram", @@ -912,7 +1080,7 @@ "DE.Controllers.Main.txtYAxis": "Sumbu Y", "DE.Controllers.Main.txtZeroDivide": "Pembagi Nol", "DE.Controllers.Main.unknownErrorText": "Kesalahan tidak diketahui.", - "DE.Controllers.Main.unsupportedBrowserErrorText": "Peramban kamu tidak didukung.", + "DE.Controllers.Main.unsupportedBrowserErrorText": "Peramban Anda tidak didukung.", "DE.Controllers.Main.uploadDocExtMessage": "Format dokumen tidak diketahui.", "DE.Controllers.Main.uploadDocFileCountMessage": "Tidak ada dokumen yang diupload.", "DE.Controllers.Main.uploadDocSizeMessage": "Batas ukuran maksimum dokumen terlampaui.", @@ -923,9 +1091,9 @@ "DE.Controllers.Main.uploadImageTitleText": "Mengunggah Gambar", "DE.Controllers.Main.waitText": "Silahkan menunggu", "DE.Controllers.Main.warnBrowserIE9": "Aplikasi ini tidak berjalan dengan baik di IE9. Gunakan IE10 atau versi yang terbaru.", - "DE.Controllers.Main.warnBrowserZoom": "Pengaturan pembesaran tampilan pada browser Anda saat ini tidak didukung sepenuhnya. Silakan atur ulang ke tampilan standar dengan menekan Ctrl+0.", + "DE.Controllers.Main.warnBrowserZoom": "Pengaturan pembesaran tampilan pada peramban Anda saat ini tidak didukung sepenuhnya. Silakan atur ulang ke pembesaran standar dengan menekan Ctrl+0.", "DE.Controllers.Main.warnLicenseExceeded": "Anda sudah mencapai batas untuk koneksi bersamaan ke %1 editor. Dokumen ini akan dibuka untuk dilihat saja.
    Hubungi admin Anda untuk mempelajari lebih lanjut.", - "DE.Controllers.Main.warnLicenseExp": "Lisensi Anda sudah kadaluwarsa.
    Silakan update lisensi Anda dan muat ulang halaman.", + "DE.Controllers.Main.warnLicenseExp": "Lisensi Anda sudah kedaluwarsa.
    Silakan perbarui lisensi Anda dan segarkan halaman.", "DE.Controllers.Main.warnLicenseLimitedNoAccess": "Lisensi kadaluwarsa.
    Anda tidak memiliki akses untuk editing dokumen secara keseluruhan.
    Silakan hubungi admin Anda.", "DE.Controllers.Main.warnLicenseLimitedRenewed": "Lisensi perlu diperbaharui.
    Anda memiliki akses terbatas untuk edit dokumen.
    Silakan hubungi admin Anda untuk mendapatkan akses penuh", "DE.Controllers.Main.warnLicenseUsersExceeded": "Anda sudah mencapai batas user untuk %1 editor. Hubungi admin Anda untuk mempelajari lebih lanjut.", @@ -951,7 +1119,7 @@ "DE.Controllers.Toolbar.textAccent": "Aksen", "DE.Controllers.Toolbar.textBracket": "Tanda Kurung", "DE.Controllers.Toolbar.textEmptyImgUrl": "Anda harus menentukan URL gambar.", - "DE.Controllers.Toolbar.textEmptyMMergeUrl": "Anda perlu melengkapkan URL.", + "DE.Controllers.Toolbar.textEmptyMMergeUrl": "Anda perlu menyatakan URL.", "DE.Controllers.Toolbar.textFontSizeErr": "Input yang dimasukkan salah.
    Silakan masukkan input numerik antara 1 dan 300", "DE.Controllers.Toolbar.textFraction": "Pecahan", "DE.Controllers.Toolbar.textFunction": "Fungsi", @@ -975,7 +1143,7 @@ "DE.Controllers.Toolbar.txtAccent_Bar": "Palang", "DE.Controllers.Toolbar.txtAccent_BarBot": "Underbar", "DE.Controllers.Toolbar.txtAccent_BarTop": "Garis Atas", - "DE.Controllers.Toolbar.txtAccent_BorderBox": "Kotak Formula (Dengan Placeholder)", + "DE.Controllers.Toolbar.txtAccent_BorderBox": "Rumus berkotak (dengan placeholder)", "DE.Controllers.Toolbar.txtAccent_BorderBoxCustom": "Kotak Formula(Contoh)", "DE.Controllers.Toolbar.txtAccent_Check": "Periksa", "DE.Controllers.Toolbar.txtAccent_CurveBracketBot": "Underbrace", @@ -996,12 +1164,12 @@ "DE.Controllers.Toolbar.txtAccent_Smile": "Prosodi", "DE.Controllers.Toolbar.txtAccent_Tilde": "Tilde", "DE.Controllers.Toolbar.txtBracket_Angle": "Tanda Kurung", - "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_2": "Tanda Kurung dengan Pemisah", - "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_3": "Tanda Kurung dengan Pemisah", + "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_2": "Tanda kurung dengan pemisah", + "DE.Controllers.Toolbar.txtBracket_Angle_Delimiter_3": "Tanda kurung dengan pemisah", "DE.Controllers.Toolbar.txtBracket_Angle_NoneOpen": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Angle_OpenNone": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Curve": "Tanda Kurung", - "DE.Controllers.Toolbar.txtBracket_Curve_Delimiter_2": "Tanda Kurung dengan Pemisah", + "DE.Controllers.Toolbar.txtBracket_Curve_Delimiter_2": "Tanda kurung dengan pemisah", "DE.Controllers.Toolbar.txtBracket_Curve_NoneOpen": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Curve_OpenNone": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Custom_1": "Kasus (Dua Kondisi)", @@ -1009,8 +1177,8 @@ "DE.Controllers.Toolbar.txtBracket_Custom_3": "Tumpuk objek", "DE.Controllers.Toolbar.txtBracket_Custom_4": "Tumpuk objek", "DE.Controllers.Toolbar.txtBracket_Custom_5": "Contoh Kasus", - "DE.Controllers.Toolbar.txtBracket_Custom_6": "Koefisien Binomial", - "DE.Controllers.Toolbar.txtBracket_Custom_7": "Koefisien Binomial", + "DE.Controllers.Toolbar.txtBracket_Custom_6": "Koefisien binomial", + "DE.Controllers.Toolbar.txtBracket_Custom_7": "Koefisien binomial", "DE.Controllers.Toolbar.txtBracket_Line": "Tanda Kurung", "DE.Controllers.Toolbar.txtBracket_Line_NoneOpen": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Line_OpenNone": "Kurung Kurawal Single", @@ -1021,7 +1189,7 @@ "DE.Controllers.Toolbar.txtBracket_LowLim_NoneNone": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_LowLim_OpenNone": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Round": "Tanda Kurung", - "DE.Controllers.Toolbar.txtBracket_Round_Delimiter_2": "Tanda Kurung dengan Pemisah", + "DE.Controllers.Toolbar.txtBracket_Round_Delimiter_2": "Tanda kurung dengan pemisah", "DE.Controllers.Toolbar.txtBracket_Round_NoneOpen": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Round_OpenNone": "Kurung Kurawal Single", "DE.Controllers.Toolbar.txtBracket_Square": "Tanda Kurung", @@ -1143,28 +1311,28 @@ "DE.Controllers.Toolbar.txtLimitLog_Min": "Minimum", "DE.Controllers.Toolbar.txtMarginsH": "Margin atas dan bawah terlalu jauh untuk halaman setinggi ini", "DE.Controllers.Toolbar.txtMarginsW": "Margin kiri dan kanan terlalu besar dengan lebar halaman yang ada", - "DE.Controllers.Toolbar.txtMatrix_1_2": "1x2 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_1_3": "1x3 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_2_1": "2x1 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_2_2": "2x2 Matriks Kosong", + "DE.Controllers.Toolbar.txtMatrix_1_2": "matriks kosong 1x2", + "DE.Controllers.Toolbar.txtMatrix_1_3": "matriks kosong 1x3", + "DE.Controllers.Toolbar.txtMatrix_2_1": "matriks kosong 2x1", + "DE.Controllers.Toolbar.txtMatrix_2_2": "matriks kosong 2x2", "DE.Controllers.Toolbar.txtMatrix_2_2_DLineBracket": "Matriks Kosong dengan Tanda Kurung", "DE.Controllers.Toolbar.txtMatrix_2_2_LineBracket": "Matriks Kosong dengan Tanda Kurung", "DE.Controllers.Toolbar.txtMatrix_2_2_RoundBracket": "Matriks Kosong dengan Tanda Kurung", "DE.Controllers.Toolbar.txtMatrix_2_2_SquareBracket": "Matriks Kosong dengan Tanda Kurung", - "DE.Controllers.Toolbar.txtMatrix_2_3": "2x3 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_3_1": "3x1 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_3_2": "3x2 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_3_3": "3x3 Matriks Kosong", - "DE.Controllers.Toolbar.txtMatrix_Dots_Baseline": "Titik Bawah", + "DE.Controllers.Toolbar.txtMatrix_2_3": "matriks kosong 2x3", + "DE.Controllers.Toolbar.txtMatrix_3_1": "matriks kosong 3x1", + "DE.Controllers.Toolbar.txtMatrix_3_2": "matriks kosong 3x2", + "DE.Controllers.Toolbar.txtMatrix_3_3": "matriks kosong 3x3", + "DE.Controllers.Toolbar.txtMatrix_Dots_Baseline": "Titik garis dasar", "DE.Controllers.Toolbar.txtMatrix_Dots_Center": "Titik Tengah", "DE.Controllers.Toolbar.txtMatrix_Dots_Diagonal": "Titik Diagonal", "DE.Controllers.Toolbar.txtMatrix_Dots_Vertical": "Titik Vertikal", "DE.Controllers.Toolbar.txtMatrix_Flat_Round": "Sparse Matrix", "DE.Controllers.Toolbar.txtMatrix_Flat_Square": "Sparse Matrix", - "DE.Controllers.Toolbar.txtMatrix_Identity_2": "2x2 Matriks Identitas", - "DE.Controllers.Toolbar.txtMatrix_Identity_2_NoZeros": "3x3 Matriks Identitas", - "DE.Controllers.Toolbar.txtMatrix_Identity_3": "3x3 Matriks Identitas", - "DE.Controllers.Toolbar.txtMatrix_Identity_3_NoZeros": "3x3 Matriks Identitas", + "DE.Controllers.Toolbar.txtMatrix_Identity_2": "matriks identitas 2x2", + "DE.Controllers.Toolbar.txtMatrix_Identity_2_NoZeros": "matriks identitas 3x3", + "DE.Controllers.Toolbar.txtMatrix_Identity_3": "matriks identitas 3x3", + "DE.Controllers.Toolbar.txtMatrix_Identity_3_NoZeros": "matriks identitas 3x3", "DE.Controllers.Toolbar.txtOperator_ArrowD_Bot": "Tanda Panah Kanan-Kiri Bawah", "DE.Controllers.Toolbar.txtOperator_ArrowD_Top": "Tanda Panah Kanan-Kiri Atas", "DE.Controllers.Toolbar.txtOperator_ArrowL_Bot": "Panah Kiri Bawah", @@ -1205,16 +1373,16 @@ "DE.Controllers.Toolbar.txtSymbol_aleph": "Alef", "DE.Controllers.Toolbar.txtSymbol_alpha": "Alfa", "DE.Controllers.Toolbar.txtSymbol_approx": "Setara Dengan", - "DE.Controllers.Toolbar.txtSymbol_ast": "Operator Tanda Bintang", + "DE.Controllers.Toolbar.txtSymbol_ast": "Operator tanda bintang", "DE.Controllers.Toolbar.txtSymbol_beta": "Beta", "DE.Controllers.Toolbar.txtSymbol_beth": "Taruhan", - "DE.Controllers.Toolbar.txtSymbol_bullet": "Operator Butir", + "DE.Controllers.Toolbar.txtSymbol_bullet": "Operator butir", "DE.Controllers.Toolbar.txtSymbol_cap": "Perpotongan", "DE.Controllers.Toolbar.txtSymbol_cbrt": "Akar Pangkat Tiga", "DE.Controllers.Toolbar.txtSymbol_cdots": "Elipsis Tengah Horisontal", "DE.Controllers.Toolbar.txtSymbol_celsius": "Derajat Celcius", "DE.Controllers.Toolbar.txtSymbol_chi": "Chi", - "DE.Controllers.Toolbar.txtSymbol_cong": "Kira-Kira Setara Dengan", + "DE.Controllers.Toolbar.txtSymbol_cong": "Kira-kira sama dengan", "DE.Controllers.Toolbar.txtSymbol_cup": "Union", "DE.Controllers.Toolbar.txtSymbol_ddots": "Serong Kanan Bawah", "DE.Controllers.Toolbar.txtSymbol_degree": "Derajat", @@ -1296,7 +1464,7 @@ "DE.Views.BookmarksDialog.textClose": "Tutup", "DE.Views.BookmarksDialog.textCopy": "Salin", "DE.Views.BookmarksDialog.textDelete": "Hapus", - "DE.Views.BookmarksDialog.textGetLink": "Dapatkan Link", + "DE.Views.BookmarksDialog.textGetLink": "Dapatkan tautan", "DE.Views.BookmarksDialog.textGoto": "Pergi ke", "DE.Views.BookmarksDialog.textHidden": "Bookmarks tersembunyi", "DE.Views.BookmarksDialog.textLocation": "Lokasi", @@ -1325,14 +1493,14 @@ "DE.Views.CaptionDialog.textPeriod": "periode", "DE.Views.CaptionDialog.textSeparator": "Gunakan separator", "DE.Views.CaptionDialog.textTable": "Tabel", - "DE.Views.CaptionDialog.textTitle": "Sisipkan Caption", + "DE.Views.CaptionDialog.textTitle": "Sisipkan caption", "DE.Views.CellsAddDialog.textCol": "Kolom", "DE.Views.CellsAddDialog.textDown": "Di bawah cursor", "DE.Views.CellsAddDialog.textLeft": "Ke kiri", "DE.Views.CellsAddDialog.textRight": "Ke kanan", "DE.Views.CellsAddDialog.textRow": "Baris", - "DE.Views.CellsAddDialog.textTitle": "Sisipkan Beberapa", - "DE.Views.CellsAddDialog.textUp": "Diatas kursor", + "DE.Views.CellsAddDialog.textTitle": "Sisipkan beberapa", + "DE.Views.CellsAddDialog.textUp": "Di atas kursor", "DE.Views.ChartSettings.text3dDepth": "Kedalaman (% dari dasar)", "DE.Views.ChartSettings.text3dHeight": "Tinggi (% dari dasar)", "DE.Views.ChartSettings.text3dRotation": "Rotasi 3D", @@ -1368,8 +1536,8 @@ "DE.Views.ChartSettings.txtTopAndBottom": "Atas dan bawah", "DE.Views.ControlSettingsDialog.strGeneral": "Umum", "DE.Views.ControlSettingsDialog.textAdd": "Tambahkan", - "DE.Views.ControlSettingsDialog.textAppearance": "Tampilan", - "DE.Views.ControlSettingsDialog.textApplyAll": "Terapkan untuk Semua", + "DE.Views.ControlSettingsDialog.textAppearance": "Penampilan", + "DE.Views.ControlSettingsDialog.textApplyAll": "Terapkan untuk semua", "DE.Views.ControlSettingsDialog.textBox": "Kotak Pembatas", "DE.Views.ControlSettingsDialog.textChange": "Sunting", "DE.Views.ControlSettingsDialog.textCheckbox": "Kotak centang", @@ -1390,7 +1558,7 @@ "DE.Views.ControlSettingsDialog.textShowAs": "Tampilkan sebagai", "DE.Views.ControlSettingsDialog.textSystemColor": "Sistem", "DE.Views.ControlSettingsDialog.textTag": "Tandai", - "DE.Views.ControlSettingsDialog.textTitle": "Pengaturan Kontrol Konten", + "DE.Views.ControlSettingsDialog.textTitle": "Pengaturan kontrol konten", "DE.Views.ControlSettingsDialog.textUnchecked": "Simbol tidak dicentang", "DE.Views.ControlSettingsDialog.textUp": "Naik", "DE.Views.ControlSettingsDialog.textValue": "Nilai", @@ -1447,14 +1615,21 @@ "DE.Views.DateTimeDialog.textLang": "Bahasa", "DE.Views.DateTimeDialog.textUpdate": "Update secara otomatis", "DE.Views.DateTimeDialog.txtTitle": "Tanggal & Jam", + "DE.Views.DocProtection.hintProtectDoc": "Proteksi dokumen", + "DE.Views.DocProtection.txtDocProtectedComment": "Dokumen terproteksi.
    Anda hanya bisa menyisipkan komentar pada dokumen ini.", + "DE.Views.DocProtection.txtDocProtectedForms": "Dokumen terproteksi.
    Anda hanya bisa mengisi formulir pada dokumen ini.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Dokumen terproteksi.
    Anda dapat menyunting dokumen ini, tapi semua perubahan akan dilacak.", + "DE.Views.DocProtection.txtDocProtectedView": "Dokumen terproteksi.
    Anda hanya bisa melihat dokumen ini.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Masukkan kata sandi untuk membuka proteksi dokumen", + "DE.Views.DocProtection.txtProtectDoc": "Proteksi dokumen", "DE.Views.DocumentHolder.aboveText": "Di atas", - "DE.Views.DocumentHolder.addCommentText": "Tambahkan Komentar", + "DE.Views.DocumentHolder.addCommentText": "Tambahkan komentar", "DE.Views.DocumentHolder.advancedDropCapText": "Pengaturan Drop Cap", "DE.Views.DocumentHolder.advancedEquationText": "Pengaturan Persamaan", "DE.Views.DocumentHolder.advancedFrameText": "Pengaturan Lanjut untuk Kerangka", "DE.Views.DocumentHolder.advancedParagraphText": "Pengaturan Lanjut untuk Paragraf", "DE.Views.DocumentHolder.advancedTableText": "Pengaturan Lanjut untuk Tabel", - "DE.Views.DocumentHolder.advancedText": "Pengaturan Lanjut", + "DE.Views.DocumentHolder.advancedText": "Pengaturan lanjut", "DE.Views.DocumentHolder.alignmentText": "Perataan", "DE.Views.DocumentHolder.allLinearText": "Semua - Linear", "DE.Views.DocumentHolder.allProfText": "Semua - Profesional", @@ -1502,7 +1677,7 @@ "DE.Views.DocumentHolder.moreText": "Varian lain...", "DE.Views.DocumentHolder.noSpellVariantsText": "Tidak ada varian", "DE.Views.DocumentHolder.notcriticalErrorTitle": "Peringatan", - "DE.Views.DocumentHolder.originalSizeText": "Ukuran Sebenarnya", + "DE.Views.DocumentHolder.originalSizeText": "Ukuran sebenarnya", "DE.Views.DocumentHolder.paragraphText": "Paragraf", "DE.Views.DocumentHolder.removeHyperlinkText": "Hapus Hyperlink", "DE.Views.DocumentHolder.rightText": "Kanan", @@ -1554,15 +1729,15 @@ "DE.Views.DocumentHolder.textLeft": "Pindahkan sel ke kiri", "DE.Views.DocumentHolder.textNest": "Nest table", "DE.Views.DocumentHolder.textNextPage": "Halaman Selanjutnya", - "DE.Views.DocumentHolder.textNumberingValue": "Penomoran Nilai", + "DE.Views.DocumentHolder.textNumberingValue": "Penomoran nilai", "DE.Views.DocumentHolder.textPaste": "Tempel", "DE.Views.DocumentHolder.textPrevPage": "Halaman Sebelumnya", - "DE.Views.DocumentHolder.textRefreshField": "Update area", + "DE.Views.DocumentHolder.textRefreshField": "Perbarui ruas", "DE.Views.DocumentHolder.textReject": "Tolak Perubahan", "DE.Views.DocumentHolder.textRemCheckBox": "Hilangkan Checkbox", "DE.Views.DocumentHolder.textRemComboBox": "Hilangkan Kotak Combo", "DE.Views.DocumentHolder.textRemDropdown": "Hilangkan Dropdown", - "DE.Views.DocumentHolder.textRemField": "Hilangkan Area Teks", + "DE.Views.DocumentHolder.textRemField": "Hapus Ruas Teks", "DE.Views.DocumentHolder.textRemove": "Hapus", "DE.Views.DocumentHolder.textRemoveControl": "Hilangkan Kontrol Konten", "DE.Views.DocumentHolder.textRemPicture": "Hilangkan Gambar", @@ -1592,18 +1767,18 @@ "DE.Views.DocumentHolder.textUpdateTOC": "Update daftar isi", "DE.Views.DocumentHolder.textWrap": "Bentuk Potongan", "DE.Views.DocumentHolder.tipIsLocked": "Elemen ini sedang diedit oleh pengguna lain.", - "DE.Views.DocumentHolder.toDictionaryText": "Tambah ke Kamus", - "DE.Views.DocumentHolder.txtAddBottom": "Tambah pembatas bawah", - "DE.Views.DocumentHolder.txtAddFractionBar": "Tambah bar pecahan", + "DE.Views.DocumentHolder.toDictionaryText": "Tambahkan ke kamus", + "DE.Views.DocumentHolder.txtAddBottom": "Tambah tepi bawah", + "DE.Views.DocumentHolder.txtAddFractionBar": "Tambah batang pecahan", "DE.Views.DocumentHolder.txtAddHor": "Tambah garis horizontal", "DE.Views.DocumentHolder.txtAddLB": "Tambah garis kiri bawah", - "DE.Views.DocumentHolder.txtAddLeft": "Tambah pembatas kiri", + "DE.Views.DocumentHolder.txtAddLeft": "Tambah tepi kiri", "DE.Views.DocumentHolder.txtAddLT": "Tambah garis kiri atas", - "DE.Views.DocumentHolder.txtAddRight": "Tambah pembatas kiri", - "DE.Views.DocumentHolder.txtAddTop": "Tambah pembatas atas", + "DE.Views.DocumentHolder.txtAddRight": "Tambah tepi kanan", + "DE.Views.DocumentHolder.txtAddTop": "Tambah tepi atas", "DE.Views.DocumentHolder.txtAddVer": "Tambah garis vertikal", "DE.Views.DocumentHolder.txtAlignToChar": "Rata dengan karakter", - "DE.Views.DocumentHolder.txtBehind": "Di Belakang Teks", + "DE.Views.DocumentHolder.txtBehind": "Di belakang teks", "DE.Views.DocumentHolder.txtBorderProps": "Properti pembatas", "DE.Views.DocumentHolder.txtBottom": "Bawah", "DE.Views.DocumentHolder.txtColumnAlign": "Rata kolom", @@ -1615,8 +1790,8 @@ "DE.Views.DocumentHolder.txtDeleteEq": "Hapus persamaan", "DE.Views.DocumentHolder.txtDeleteGroupChar": "Hapus char", "DE.Views.DocumentHolder.txtDeleteRadical": "Hapus radikal", - "DE.Views.DocumentHolder.txtDistribHor": "Distribusikan Horizontal", - "DE.Views.DocumentHolder.txtDistribVert": "Distribusikan Vertikal", + "DE.Views.DocumentHolder.txtDistribHor": "Distribusikan arah horizontal", + "DE.Views.DocumentHolder.txtDistribVert": "Distribusikan arah vertikal", "DE.Views.DocumentHolder.txtEmpty": "(Kosong)", "DE.Views.DocumentHolder.txtFractionLinear": "Ubah ke pecahan linear", "DE.Views.DocumentHolder.txtFractionSkewed": "Ubah ke pecahan", @@ -1639,12 +1814,12 @@ "DE.Views.DocumentHolder.txtHideTopLimit": "Sembunyikan nilai batas atas", "DE.Views.DocumentHolder.txtHideVer": "Sembunyikan garis vertikal", "DE.Views.DocumentHolder.txtIncreaseArg": "Tingkatkan ukuran argumen", - "DE.Views.DocumentHolder.txtInFront": "Di Depan Teks", - "DE.Views.DocumentHolder.txtInline": "Sejajar dengan Teks", + "DE.Views.DocumentHolder.txtInFront": "Di depan teks", + "DE.Views.DocumentHolder.txtInline": "Sejajar dengan teks", "DE.Views.DocumentHolder.txtInsertArgAfter": "Sisipkan argumen setelah", "DE.Views.DocumentHolder.txtInsertArgBefore": "Sisipkan argumen sebelum", "DE.Views.DocumentHolder.txtInsertBreak": "Sisipkan break manual", - "DE.Views.DocumentHolder.txtInsertCaption": "Sisipkan Caption", + "DE.Views.DocumentHolder.txtInsertCaption": "Sisipkan caption", "DE.Views.DocumentHolder.txtInsertEqAfter": "Sisipkan persamaan setelah", "DE.Views.DocumentHolder.txtInsertEqBefore": "Sisipkan persamaan sebelum", "DE.Views.DocumentHolder.txtKeepTextOnly": "Pertahankan hanya teks", @@ -1657,7 +1832,7 @@ "DE.Views.DocumentHolder.txtOverwriteCells": "Tiban sel", "DE.Views.DocumentHolder.txtPasteSourceFormat": "Pertahankan formatting sumber", "DE.Views.DocumentHolder.txtPressLink": "Tekan {0} dan klik link", - "DE.Views.DocumentHolder.txtPrintSelection": "Print Pilihan", + "DE.Views.DocumentHolder.txtPrintSelection": "Cetak pilihan", "DE.Views.DocumentHolder.txtRemFractionBar": "Hilangkan bar pecahan", "DE.Views.DocumentHolder.txtRemLimit": "Hilangkan limit", "DE.Views.DocumentHolder.txtRemoveAccentChar": "Hilangkan aksen karakter", @@ -1687,15 +1862,15 @@ "DE.Views.DocumentHolder.updateStyleText": "Update %1 style", "DE.Views.DocumentHolder.vertAlignText": "Perataan Vertikal", "DE.Views.DropcapSettingsAdvanced.strBorders": "Pembatas & Isian", - "DE.Views.DropcapSettingsAdvanced.strDropcap": "Drop Cap", + "DE.Views.DropcapSettingsAdvanced.strDropcap": "Drop cap", "DE.Views.DropcapSettingsAdvanced.strMargins": "Margin", "DE.Views.DropcapSettingsAdvanced.textAlign": "Perataan", "DE.Views.DropcapSettingsAdvanced.textAtLeast": "Sekurang-kurangnya", "DE.Views.DropcapSettingsAdvanced.textAuto": "Otomatis", - "DE.Views.DropcapSettingsAdvanced.textBackColor": "Warna Latar", - "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Warna", + "DE.Views.DropcapSettingsAdvanced.textBackColor": "Warna latar", + "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Warna tepi", "DE.Views.DropcapSettingsAdvanced.textBorderDesc": "Klik pada diagram atau gunakan tombol untuk memilih pembatas", - "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Ukuran Pembatas", + "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Ukuran tepi", "DE.Views.DropcapSettingsAdvanced.textBottom": "Bawah", "DE.Views.DropcapSettingsAdvanced.textCenter": "Tengah", "DE.Views.DropcapSettingsAdvanced.textColumn": "Kolom", @@ -1720,8 +1895,8 @@ "DE.Views.DropcapSettingsAdvanced.textRelative": "Relatif dengan", "DE.Views.DropcapSettingsAdvanced.textRight": "Kanan", "DE.Views.DropcapSettingsAdvanced.textRowHeight": "Ketinggian dalam ukuran baris", - "DE.Views.DropcapSettingsAdvanced.textTitle": "Drop Cap - Pengaturan Lanjut", - "DE.Views.DropcapSettingsAdvanced.textTitleFrame": "Kerangka - Pengaturan Lanjut", + "DE.Views.DropcapSettingsAdvanced.textTitle": "Drop cap - Pengaturan lanjut", + "DE.Views.DropcapSettingsAdvanced.textTitleFrame": "Kerangka - Pengaturan lanjut", "DE.Views.DropcapSettingsAdvanced.textTop": "Atas", "DE.Views.DropcapSettingsAdvanced.textVertical": "Vertikal", "DE.Views.DropcapSettingsAdvanced.textWidth": "Lebar", @@ -1738,7 +1913,7 @@ "DE.Views.FileMenu.btnExitCaption": "Tutup", "DE.Views.FileMenu.btnFileOpenCaption": "Buka", "DE.Views.FileMenu.btnHelpCaption": "Bantuan", - "DE.Views.FileMenu.btnHistoryCaption": "Riwayat Versi", + "DE.Views.FileMenu.btnHistoryCaption": "Riwayat versi", "DE.Views.FileMenu.btnInfoCaption": "Informasi Dokumen", "DE.Views.FileMenu.btnPrintCaption": "Cetak", "DE.Views.FileMenu.btnProtectCaption": "Proteksi", @@ -1755,8 +1930,8 @@ "DE.Views.FileMenuPanels.CreateNew.txtBlank": "Dokumen Kosong", "DE.Views.FileMenuPanels.CreateNew.txtCreateNew": "Buat Baru", "DE.Views.FileMenuPanels.DocumentInfo.okButtonText": "Terapkan", - "DE.Views.FileMenuPanels.DocumentInfo.txtAddAuthor": "Tambahkan penulis", - "DE.Views.FileMenuPanels.DocumentInfo.txtAddText": "Tambah teks", + "DE.Views.FileMenuPanels.DocumentInfo.txtAddAuthor": "Tambahkan Penulis", + "DE.Views.FileMenuPanels.DocumentInfo.txtAddText": "Tambah Teks", "DE.Views.FileMenuPanels.DocumentInfo.txtAppName": "Aplikasi", "DE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Penyusun", "DE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Ubah hak akses", @@ -1780,6 +1955,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistik", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Subyek", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Simbol", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Tag", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Judul", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Diunggah", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Kata", @@ -1788,7 +1964,7 @@ "DE.Views.FileMenuPanels.DocumentRights.txtRights": "Orang yang memiliki hak", "DE.Views.FileMenuPanels.ProtectDoc.notcriticalErrorTitle": "Peringatan", "DE.Views.FileMenuPanels.ProtectDoc.strEncrypt": "Dengan password", - "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Proteksi Dokumen", + "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Proteksi dokumen", "DE.Views.FileMenuPanels.ProtectDoc.strSignature": "Dengan tanda tangan", "DE.Views.FileMenuPanels.ProtectDoc.txtEdit": "Edit Dokumen", "DE.Views.FileMenuPanels.ProtectDoc.txtEditWarning": "Editing akan menghapus tandatangan dari dokumen.
    Lanjutkan?", @@ -1868,14 +2044,14 @@ "DE.Views.FormSettings.textComb": "Karakter bersisir", "DE.Views.FormSettings.textCombobox": "Kotak combo", "DE.Views.FormSettings.textComplex": "Bidang Kompleks", - "DE.Views.FormSettings.textConnected": "Area terhubung", + "DE.Views.FormSettings.textConnected": "Ruas terhubung", "DE.Views.FormSettings.textDelete": "Hapus", "DE.Views.FormSettings.textDigits": "Digit", "DE.Views.FormSettings.textDisconnect": "Putuskan hubungan", "DE.Views.FormSettings.textDropDown": "Dropdown", "DE.Views.FormSettings.textExact": "Persis", - "DE.Views.FormSettings.textField": "Area Teks", - "DE.Views.FormSettings.textFixed": "Area ukuran tetap", + "DE.Views.FormSettings.textField": "Ruas Teks", + "DE.Views.FormSettings.textFixed": "Ruas ukuran tetap", "DE.Views.FormSettings.textFormat": "Format", "DE.Views.FormSettings.textFormatSymbols": "Simbol yang Diizinkan", "DE.Views.FormSettings.textFromFile": "Dari File", @@ -1886,9 +2062,9 @@ "DE.Views.FormSettings.textKey": "Kunci", "DE.Views.FormSettings.textLetters": "Huruf", "DE.Views.FormSettings.textLock": "Kunci", - "DE.Views.FormSettings.textMask": "Samaran Arbitrer", + "DE.Views.FormSettings.textMask": "Sebarang Masker", "DE.Views.FormSettings.textMaxChars": "Batas karakter", - "DE.Views.FormSettings.textMulti": "Area multi-garis", + "DE.Views.FormSettings.textMulti": "Ruas multi baris", "DE.Views.FormSettings.textNever": "tidak pernah", "DE.Views.FormSettings.textNoBorder": "Tanpa pembatas", "DE.Views.FormSettings.textNone": "Tidak ada", @@ -1916,21 +2092,21 @@ "DE.Views.FormsTab.capBtnDropDown": "Dropdown", "DE.Views.FormsTab.capBtnEmail": "Alamat Email", "DE.Views.FormsTab.capBtnImage": "Gambar", - "DE.Views.FormsTab.capBtnNext": "Area Berikutnya", + "DE.Views.FormsTab.capBtnNext": "Ruas Berikutnya", "DE.Views.FormsTab.capBtnPhone": "Nomor Telepon", - "DE.Views.FormsTab.capBtnPrev": "Area Sebelumnya", + "DE.Views.FormsTab.capBtnPrev": "Ruas Sebelumnya", "DE.Views.FormsTab.capBtnRadioBox": "Tombol Radio", "DE.Views.FormsTab.capBtnSaveForm": "Simpan sebagai oform", "DE.Views.FormsTab.capBtnSubmit": "Submit", - "DE.Views.FormsTab.capBtnText": "Area Teks", + "DE.Views.FormsTab.capBtnText": "Ruas Teks", "DE.Views.FormsTab.capBtnView": "Tampilkan form", - "DE.Views.FormsTab.textClear": "Bersihkan Area", - "DE.Views.FormsTab.textClearFields": "Bersihkan Semua Area", - "DE.Views.FormsTab.textCreateForm": "Tambah area dan buat dokumen OFORM yang bisa diisi", + "DE.Views.FormsTab.textClear": "Bersihkan Ruas", + "DE.Views.FormsTab.textClearFields": "Bersihkan Semua Ruas", + "DE.Views.FormsTab.textCreateForm": "Tambah ruas dan buat dokumen OFORM yang bisa diisi", "DE.Views.FormsTab.textGotIt": "Mengerti", "DE.Views.FormsTab.textHighlight": "Pengaturan Highlight", "DE.Views.FormsTab.textNoHighlight": "Tanpa highlight", - "DE.Views.FormsTab.textRequired": "Isi semua area yang dibutuhkan untuk mengirim form.", + "DE.Views.FormsTab.textRequired": "Isi semua ruas yang dibutuhkan untuk mengirim formulir.", "DE.Views.FormsTab.textSubmited": "Form berhasil disubmit", "DE.Views.FormsTab.tipCheckBox": "Sisipkan kotak centang", "DE.Views.FormsTab.tipComboBox": "Sisipkan kotak kombo", @@ -1939,13 +2115,13 @@ "DE.Views.FormsTab.tipDropDown": "Sisipkan list dropdown", "DE.Views.FormsTab.tipEmailField": "Sisipkan alamat email", "DE.Views.FormsTab.tipImageField": "Sisipkan Gambar", - "DE.Views.FormsTab.tipNextForm": "Pergi ke area berikutnya", + "DE.Views.FormsTab.tipNextForm": "Pergi ke ruas berikutnya", "DE.Views.FormsTab.tipPhoneField": "Sisipkan nomor telepon", - "DE.Views.FormsTab.tipPrevForm": "Pergi ke area sebelumnya", + "DE.Views.FormsTab.tipPrevForm": "Pergi ke ruas sebelumnya", "DE.Views.FormsTab.tipRadioBox": "Sisipkan tombol radio", "DE.Views.FormsTab.tipSaveForm": "Simpan file sebagai dokumen OFORM yang bisa diisi", "DE.Views.FormsTab.tipSubmit": "Submit form", - "DE.Views.FormsTab.tipTextField": "Sisipkan area teks", + "DE.Views.FormsTab.tipTextField": "Sisipkan ruas teks", "DE.Views.FormsTab.tipViewForm": "Tampilkan form", "DE.Views.FormsTab.txtUntitled": "Tanpa Judul", "DE.Views.HeaderFooterSettings.textBottomCenter": "Bawah Tengah", @@ -1959,8 +2135,8 @@ "DE.Views.HeaderFooterSettings.textHeaderFromTop": "Header dari Atas", "DE.Views.HeaderFooterSettings.textInsertCurrent": "Sisipkan ke Posisi Saat Ini", "DE.Views.HeaderFooterSettings.textOptions": "Pilihan", - "DE.Views.HeaderFooterSettings.textPageNum": "Sisipkan Nomor Halaman", - "DE.Views.HeaderFooterSettings.textPageNumbering": "Penomoran Halaman", + "DE.Views.HeaderFooterSettings.textPageNum": "Sisipkan nomor halaman", + "DE.Views.HeaderFooterSettings.textPageNumbering": "Penomoran halaman", "DE.Views.HeaderFooterSettings.textPosition": "Posisi", "DE.Views.HeaderFooterSettings.textPrev": "Lanjut dari sesi sebelumnya", "DE.Views.HeaderFooterSettings.textSameAs": "Tautkan dengan Sebelumnya", @@ -1971,16 +2147,16 @@ "DE.Views.HyperlinkSettingsDialog.textDefault": "Fragmen teks yang dipilih", "DE.Views.HyperlinkSettingsDialog.textDisplay": "Tampilan", "DE.Views.HyperlinkSettingsDialog.textExternal": "Tautan eksternal", - "DE.Views.HyperlinkSettingsDialog.textInternal": "Letakkan di Dokumen", - "DE.Views.HyperlinkSettingsDialog.textTitle": "Pengaturan Hyperlink", + "DE.Views.HyperlinkSettingsDialog.textInternal": "Letakkan di dokumen", + "DE.Views.HyperlinkSettingsDialog.textTitle": "Pengaturan hyperlink", "DE.Views.HyperlinkSettingsDialog.textTooltip": "Teks ScreenTip", "DE.Views.HyperlinkSettingsDialog.textUrl": "Tautkan dengan", "DE.Views.HyperlinkSettingsDialog.txtBeginning": "Awal dokumen", "DE.Views.HyperlinkSettingsDialog.txtBookmarks": "Bookmarks", - "DE.Views.HyperlinkSettingsDialog.txtEmpty": "Area ini dibutuhkan", + "DE.Views.HyperlinkSettingsDialog.txtEmpty": "Ruas ini diperlukan", "DE.Views.HyperlinkSettingsDialog.txtHeadings": "Headings", - "DE.Views.HyperlinkSettingsDialog.txtNotUrl": "Bagian ini harus berupa URL dengn format \"http://www.contoh.com\"", - "DE.Views.HyperlinkSettingsDialog.txtSizeLimit": "Area ini dibatasi 2083 karakter", + "DE.Views.HyperlinkSettingsDialog.txtNotUrl": "Ruas ini harus berupa URL dengan format \"http://www.contoh.com\"", + "DE.Views.HyperlinkSettingsDialog.txtSizeLimit": "Ruas ini dibatasi 2083 karakter", "DE.Views.ImageSettings.textAdvanced": "Tampilkan pengaturan lanjut", "DE.Views.ImageSettings.textCrop": "Isian", "DE.Views.ImageSettings.textCropFill": "Isi", @@ -2013,10 +2189,10 @@ "DE.Views.ImageSettings.txtThrough": "Tembus", "DE.Views.ImageSettings.txtTight": "Ketat", "DE.Views.ImageSettings.txtTopAndBottom": "Atas dan bawah", - "DE.Views.ImageSettingsAdvanced.strMargins": "Lapisan Teks", + "DE.Views.ImageSettingsAdvanced.strMargins": "Lapisan teks", "DE.Views.ImageSettingsAdvanced.textAbsoluteWH": "Absolut", "DE.Views.ImageSettingsAdvanced.textAlignment": "Perataan", - "DE.Views.ImageSettingsAdvanced.textAlt": "Teks Alternatif", + "DE.Views.ImageSettingsAdvanced.textAlt": "Teks alternatif", "DE.Views.ImageSettingsAdvanced.textAltDescription": "Deskripsi", "DE.Views.ImageSettingsAdvanced.textAltTip": "Representasi alternatif berbasis teks dari informasi objek visual, yang akan dibaca kepada orang dengan gangguan penglihatan atau kognitif untuk membantu mereka lebih memahami informasi yang ada dalam gambar, autoshape, grafik, atau tabel.", "DE.Views.ImageSettingsAdvanced.textAltTitle": "Judul", @@ -2024,20 +2200,20 @@ "DE.Views.ImageSettingsAdvanced.textArrows": "Tanda panah", "DE.Views.ImageSettingsAdvanced.textAspectRatio": "Kunci aspek rasio", "DE.Views.ImageSettingsAdvanced.textAutofit": "AutoFit", - "DE.Views.ImageSettingsAdvanced.textBeginSize": "Ukuran Mulai", - "DE.Views.ImageSettingsAdvanced.textBeginStyle": "Gaya Mulai", + "DE.Views.ImageSettingsAdvanced.textBeginSize": "Ukuran mulai", + "DE.Views.ImageSettingsAdvanced.textBeginStyle": "Gaya mulai", "DE.Views.ImageSettingsAdvanced.textBelow": "di bawah", "DE.Views.ImageSettingsAdvanced.textBevel": "Miring", "DE.Views.ImageSettingsAdvanced.textBottom": "Bawah", - "DE.Views.ImageSettingsAdvanced.textBottomMargin": "Margin Bawah", - "DE.Views.ImageSettingsAdvanced.textBtnWrap": "Potongan Teks", - "DE.Views.ImageSettingsAdvanced.textCapType": "Tipe Cap", + "DE.Views.ImageSettingsAdvanced.textBottomMargin": "Margin bawah", + "DE.Views.ImageSettingsAdvanced.textBtnWrap": "Pelipatan teks", + "DE.Views.ImageSettingsAdvanced.textCapType": "Tipe cap", "DE.Views.ImageSettingsAdvanced.textCenter": "Tengah", "DE.Views.ImageSettingsAdvanced.textCharacter": "Karakter", "DE.Views.ImageSettingsAdvanced.textColumn": "Kolom", - "DE.Views.ImageSettingsAdvanced.textDistance": "Jarak dari Teks", - "DE.Views.ImageSettingsAdvanced.textEndSize": "Ukuran Akhir", - "DE.Views.ImageSettingsAdvanced.textEndStyle": "Model Akhir", + "DE.Views.ImageSettingsAdvanced.textDistance": "Jarak dari teks", + "DE.Views.ImageSettingsAdvanced.textEndSize": "Ukuran akhir", + "DE.Views.ImageSettingsAdvanced.textEndStyle": "Gaya akhir", "DE.Views.ImageSettingsAdvanced.textFlat": "Datar", "DE.Views.ImageSettingsAdvanced.textFlipped": "Flipped", "DE.Views.ImageSettingsAdvanced.textHeight": "Tinggi", @@ -2046,14 +2222,14 @@ "DE.Views.ImageSettingsAdvanced.textJoinType": "Gabungkan Tipe", "DE.Views.ImageSettingsAdvanced.textKeepRatio": "Proporsi Konstan", "DE.Views.ImageSettingsAdvanced.textLeft": "Kiri", - "DE.Views.ImageSettingsAdvanced.textLeftMargin": "Margin Kiri", + "DE.Views.ImageSettingsAdvanced.textLeftMargin": "Margin kiri", "DE.Views.ImageSettingsAdvanced.textLine": "Garis", - "DE.Views.ImageSettingsAdvanced.textLineStyle": "Model Garis", + "DE.Views.ImageSettingsAdvanced.textLineStyle": "Gaya garis", "DE.Views.ImageSettingsAdvanced.textMargin": "Margin", "DE.Views.ImageSettingsAdvanced.textMiter": "Siku-siku", "DE.Views.ImageSettingsAdvanced.textMove": "Pindah obyek bersama teks", "DE.Views.ImageSettingsAdvanced.textOptions": "Pilihan", - "DE.Views.ImageSettingsAdvanced.textOriginalSize": "Ukuran Sebenarnya", + "DE.Views.ImageSettingsAdvanced.textOriginalSize": "Ukuran sebenarnya", "DE.Views.ImageSettingsAdvanced.textOverlap": "Ijinkan menumpuk", "DE.Views.ImageSettingsAdvanced.textPage": "Halaman", "DE.Views.ImageSettingsAdvanced.textParagraph": "Paragraf", @@ -2063,27 +2239,27 @@ "DE.Views.ImageSettingsAdvanced.textRelativeWH": "Relatif", "DE.Views.ImageSettingsAdvanced.textResizeFit": "Ubah ukuran bentuk agar cocok ke teks", "DE.Views.ImageSettingsAdvanced.textRight": "Kanan", - "DE.Views.ImageSettingsAdvanced.textRightMargin": "Margin Kanan", + "DE.Views.ImageSettingsAdvanced.textRightMargin": "Margin kanan", "DE.Views.ImageSettingsAdvanced.textRightOf": "ke sebelah kanan dari", "DE.Views.ImageSettingsAdvanced.textRotation": "Rotasi", "DE.Views.ImageSettingsAdvanced.textRound": "Bulat", - "DE.Views.ImageSettingsAdvanced.textShape": "Pengaturan Bentuk", + "DE.Views.ImageSettingsAdvanced.textShape": "Pengaturan bentuk", "DE.Views.ImageSettingsAdvanced.textSize": "Ukuran", "DE.Views.ImageSettingsAdvanced.textSquare": "Persegi", - "DE.Views.ImageSettingsAdvanced.textTextBox": "Kotak Teks", - "DE.Views.ImageSettingsAdvanced.textTitle": "Gambar - Pengaturan Lanjut", - "DE.Views.ImageSettingsAdvanced.textTitleChart": "Bagan - Pengaturan Lanjut", - "DE.Views.ImageSettingsAdvanced.textTitleShape": "Bentuk - Pengaturan Lanjut", + "DE.Views.ImageSettingsAdvanced.textTextBox": "Kotak teks", + "DE.Views.ImageSettingsAdvanced.textTitle": "Gambar - Pengaturan lanjut", + "DE.Views.ImageSettingsAdvanced.textTitleChart": "Bagan - Pengaturan lanjut", + "DE.Views.ImageSettingsAdvanced.textTitleShape": "Bentuk - Pengaturan lanjut", "DE.Views.ImageSettingsAdvanced.textTop": "Atas", - "DE.Views.ImageSettingsAdvanced.textTopMargin": "Margin Atas", + "DE.Views.ImageSettingsAdvanced.textTopMargin": "Margin atas", "DE.Views.ImageSettingsAdvanced.textVertical": "Vertikal", "DE.Views.ImageSettingsAdvanced.textVertically": "Secara Vertikal", "DE.Views.ImageSettingsAdvanced.textWeightArrows": "Bobot & Panah", "DE.Views.ImageSettingsAdvanced.textWidth": "Lebar", - "DE.Views.ImageSettingsAdvanced.textWrap": "Bentuk Potongan", - "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Di Belakang Teks", - "DE.Views.ImageSettingsAdvanced.textWrapInFrontTooltip": "Di depan", - "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "Sejajar dengan Teks", + "DE.Views.ImageSettingsAdvanced.textWrap": "Gaya pelipatan", + "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Di belakang teks", + "DE.Views.ImageSettingsAdvanced.textWrapInFrontTooltip": "Di depan teks", + "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "Sejajar dengan teks", "DE.Views.ImageSettingsAdvanced.textWrapSquareTooltip": "Persegi", "DE.Views.ImageSettingsAdvanced.textWrapThroughTooltip": "Tembus", "DE.Views.ImageSettingsAdvanced.textWrapTightTooltip": "Ketat", @@ -2103,7 +2279,7 @@ "DE.Views.LeftMenu.txtLimit": "Batas Akses", "DE.Views.LeftMenu.txtTrial": "MODE TRIAL", "DE.Views.LeftMenu.txtTrialDev": "Mode Trial Developer", - "DE.Views.LineNumbersDialog.textAddLineNumbering": "Tambah nomor garis", + "DE.Views.LineNumbersDialog.textAddLineNumbering": "Tambah penomoran baris", "DE.Views.LineNumbersDialog.textApplyTo": "Terapkan perubahan ke", "DE.Views.LineNumbersDialog.textContinuous": "Kontinyu", "DE.Views.LineNumbersDialog.textCountBy": "Dihitung dengan", @@ -2111,11 +2287,11 @@ "DE.Views.LineNumbersDialog.textForward": "Dari poin ini sampai selanjutnya", "DE.Views.LineNumbersDialog.textFromText": "Dari teks", "DE.Views.LineNumbersDialog.textNumbering": "Penomoran", - "DE.Views.LineNumbersDialog.textRestartEachPage": "Restart Setiap Halaman", - "DE.Views.LineNumbersDialog.textRestartEachSection": "Restart Setiap Sesi", + "DE.Views.LineNumbersDialog.textRestartEachPage": "Mulai ulang setiap halaman", + "DE.Views.LineNumbersDialog.textRestartEachSection": "Mulai ulang setiap seksi", "DE.Views.LineNumbersDialog.textSection": "Sesi Saat Ini", "DE.Views.LineNumbersDialog.textStartAt": "Dimulai pada", - "DE.Views.LineNumbersDialog.textTitle": "Nomor Garis", + "DE.Views.LineNumbersDialog.textTitle": "Nomor garis", "DE.Views.LineNumbersDialog.txtAutoText": "Otomatis", "DE.Views.Links.capBtnAddText": "Tambahkan Teks", "DE.Views.Links.capBtnBookmarks": "Bookmark", @@ -2164,13 +2340,13 @@ "DE.Views.ListSettingsDialog.txtAlign": "Perataan", "DE.Views.ListSettingsDialog.txtBullet": "Butir", "DE.Views.ListSettingsDialog.txtColor": "Warna", - "DE.Views.ListSettingsDialog.txtFont": "Font dan Simbol", + "DE.Views.ListSettingsDialog.txtFont": "Font dan simbol", "DE.Views.ListSettingsDialog.txtLikeText": "Seperti teks", "DE.Views.ListSettingsDialog.txtNewBullet": "Butir baru", "DE.Views.ListSettingsDialog.txtNone": "Tidak ada", "DE.Views.ListSettingsDialog.txtSize": "Ukuran", "DE.Views.ListSettingsDialog.txtSymbol": "Simbol", - "DE.Views.ListSettingsDialog.txtTitle": "List Pengaturan", + "DE.Views.ListSettingsDialog.txtTitle": "Pengaturan daftar", "DE.Views.ListSettingsDialog.txtType": "Tipe", "DE.Views.MailMergeEmailDlg.filePlaceholder": "PDF", "DE.Views.MailMergeEmailDlg.okButtonText": "Kirim", @@ -2182,8 +2358,8 @@ "DE.Views.MailMergeEmailDlg.textFrom": "Dari", "DE.Views.MailMergeEmailDlg.textHTML": "HTML", "DE.Views.MailMergeEmailDlg.textMessage": "Pesan", - "DE.Views.MailMergeEmailDlg.textSubject": "Garis Subjek", - "DE.Views.MailMergeEmailDlg.textTitle": "Kirim ke Email", + "DE.Views.MailMergeEmailDlg.textSubject": "Baris subjek", + "DE.Views.MailMergeEmailDlg.textTitle": "Kirim ke email", "DE.Views.MailMergeEmailDlg.textTo": "Ke", "DE.Views.MailMergeEmailDlg.textWarning": "Peringatan!", "DE.Views.MailMergeEmailDlg.textWarningMsg": "Perlu dicatat bahwa mengirim email tidak bisa dihentikan setelah Anda klik tombol 'Kirim'.", @@ -2200,11 +2376,11 @@ "DE.Views.MailMergeSettings.textEmail": "Email", "DE.Views.MailMergeSettings.textFrom": "Dari", "DE.Views.MailMergeSettings.textGoToMail": "Pergi ke Email", - "DE.Views.MailMergeSettings.textHighlight": "Highlight area merge", - "DE.Views.MailMergeSettings.textInsertField": "Sisipkan Area Merge", + "DE.Views.MailMergeSettings.textHighlight": "Sorot ruas gabung", + "DE.Views.MailMergeSettings.textInsertField": "Sisipkan Ruas Gabung", "DE.Views.MailMergeSettings.textMaxRecepients": "Maks 100 penerima.", "DE.Views.MailMergeSettings.textMerge": "Merge", - "DE.Views.MailMergeSettings.textMergeFields": "Merge Area", + "DE.Views.MailMergeSettings.textMergeFields": "Ruas Gabung", "DE.Views.MailMergeSettings.textMergeTo": "Merge ke", "DE.Views.MailMergeSettings.textPdf": "PDF", "DE.Views.MailMergeSettings.textPortal": "Simpan", @@ -2242,7 +2418,7 @@ "DE.Views.NoteSettingsDialog.textApply": "Terapkan", "DE.Views.NoteSettingsDialog.textApplyTo": "Terapkan perubahan ke", "DE.Views.NoteSettingsDialog.textContinue": "Kontinyu", - "DE.Views.NoteSettingsDialog.textCustom": "Custom Tanda", + "DE.Views.NoteSettingsDialog.textCustom": "Tanda ubahan", "DE.Views.NoteSettingsDialog.textDocEnd": "Akhir dokumen", "DE.Views.NoteSettingsDialog.textDocument": "Keseluruhan dokumen", "DE.Views.NoteSettingsDialog.textEachPage": "Restart Setiap Halaman", @@ -2253,16 +2429,16 @@ "DE.Views.NoteSettingsDialog.textInsert": "Sisipkan", "DE.Views.NoteSettingsDialog.textLocation": "Lokasi", "DE.Views.NoteSettingsDialog.textNumbering": "Penomoran", - "DE.Views.NoteSettingsDialog.textNumFormat": "Format Nomor", + "DE.Views.NoteSettingsDialog.textNumFormat": "Format nomor", "DE.Views.NoteSettingsDialog.textPageBottom": "Bawah halaman", "DE.Views.NoteSettingsDialog.textSectEnd": "Akhir sesi", "DE.Views.NoteSettingsDialog.textSection": "Sesi Saat Ini", "DE.Views.NoteSettingsDialog.textStart": "Dimulai pada", "DE.Views.NoteSettingsDialog.textTextBottom": "Di bawah teks", - "DE.Views.NoteSettingsDialog.textTitle": "Pengaturan Catatan", - "DE.Views.NotesRemoveDialog.textEnd": "Hapus Semua Endnotes", - "DE.Views.NotesRemoveDialog.textFoot": "Hapus Semua Footnotes", - "DE.Views.NotesRemoveDialog.textTitle": "Hapus Catatan", + "DE.Views.NoteSettingsDialog.textTitle": "Pengaturan catatan", + "DE.Views.NotesRemoveDialog.textEnd": "Hapus semua catatan akhir", + "DE.Views.NotesRemoveDialog.textFoot": "Hapus semua catatan kaki", + "DE.Views.NotesRemoveDialog.textTitle": "Hapus catatan", "DE.Views.PageMarginsDialog.notcriticalErrorTitle": "Peringatan", "DE.Views.PageMarginsDialog.textBottom": "Bawah", "DE.Views.PageMarginsDialog.textGutter": "Jarak Spasi", @@ -2284,7 +2460,7 @@ "DE.Views.PageMarginsDialog.txtMarginsW": "Margin kiri dan kanan terlalu besar dengan lebar halaman yang ada", "DE.Views.PageSizeDialog.textHeight": "Tinggi", "DE.Views.PageSizeDialog.textPreset": "Preset", - "DE.Views.PageSizeDialog.textTitle": "Ukuran Halaman", + "DE.Views.PageSizeDialog.textTitle": "Ukuran halaman", "DE.Views.PageSizeDialog.textWidth": "Lebar", "DE.Views.PageSizeDialog.txtCustom": "Khusus", "DE.Views.PageThumbnails.textClosePanel": "Tutup thumbnails halaman", @@ -2309,16 +2485,16 @@ "DE.Views.ParagraphSettings.textExact": "Persis", "DE.Views.ParagraphSettings.textFirstLine": "Baris Pertama", "DE.Views.ParagraphSettings.textHanging": "Menggantung", - "DE.Views.ParagraphSettings.textNoneSpecial": "(tidak ada)", + "DE.Views.ParagraphSettings.textNoneSpecial": "(nihil)", "DE.Views.ParagraphSettings.txtAutoText": "Otomatis", - "DE.Views.ParagraphSettingsAdvanced.noTabs": "Tab yang ditentukan akan muncul pada bagian ini", + "DE.Views.ParagraphSettingsAdvanced.noTabs": "Tab yang ditentukan akan muncul pada ruas ini", "DE.Views.ParagraphSettingsAdvanced.strAllCaps": "Huruf kapital semua", "DE.Views.ParagraphSettingsAdvanced.strBorders": "Pembatas & Isian", "DE.Views.ParagraphSettingsAdvanced.strBreakBefore": "Jeda halaman sebelum", "DE.Views.ParagraphSettingsAdvanced.strDoubleStrike": "Garis coret ganda", "DE.Views.ParagraphSettingsAdvanced.strIndent": "Indentasi", "DE.Views.ParagraphSettingsAdvanced.strIndentsLeftText": "Kiri", - "DE.Views.ParagraphSettingsAdvanced.strIndentsLineSpacing": "Spasi Antar Baris", + "DE.Views.ParagraphSettingsAdvanced.strIndentsLineSpacing": "Jarak baris", "DE.Views.ParagraphSettingsAdvanced.strIndentsOutlinelevel": "Level outline", "DE.Views.ParagraphSettingsAdvanced.strIndentsRightText": "Kanan", "DE.Views.ParagraphSettingsAdvanced.strIndentsSpacingAfter": "Setelah", @@ -2330,7 +2506,7 @@ "DE.Views.ParagraphSettingsAdvanced.strOrphan": "Kontrol Orphan", "DE.Views.ParagraphSettingsAdvanced.strParagraphFont": "Huruf", "DE.Views.ParagraphSettingsAdvanced.strParagraphIndents": "Indentasi & Peletakan", - "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Break Garis & Halaman", + "DE.Views.ParagraphSettingsAdvanced.strParagraphLine": "Putus Baris & Halaman", "DE.Views.ParagraphSettingsAdvanced.strParagraphPosition": "Penempatan", "DE.Views.ParagraphSettingsAdvanced.strSmallCaps": "Huruf Ukuran Kecil", "DE.Views.ParagraphSettingsAdvanced.strSomeParagraphSpace": "Jangan tambahkan interval antar paragraf dengan model yang sama", @@ -2344,19 +2520,19 @@ "DE.Views.ParagraphSettingsAdvanced.textAll": "Semua", "DE.Views.ParagraphSettingsAdvanced.textAtLeast": "Sekurang-kurangnya", "DE.Views.ParagraphSettingsAdvanced.textAuto": "Banyak", - "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Warna Latar", - "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Teks Basic", - "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Warna Pembatas", + "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Warna latar", + "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Teks dasar", + "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Warna tepi", "DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Klik pada diagram atau gunakan tombol untuk memilih pembatas dan menerapkan pilihan model", - "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Ukuran Pembatas", + "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Ukuran tepi", "DE.Views.ParagraphSettingsAdvanced.textBottom": "Bawah", "DE.Views.ParagraphSettingsAdvanced.textCentered": "Tengah", - "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Spasi Antar Karakter", + "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Spasi antar karakter", "DE.Views.ParagraphSettingsAdvanced.textContext": "Kontekstual", "DE.Views.ParagraphSettingsAdvanced.textContextDiscret": "Kontekstual dan", "DE.Views.ParagraphSettingsAdvanced.textContextHistDiscret": "Kontekstual, Bersejarah, dan", - "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Kontekstual dan Bersejarah", - "DE.Views.ParagraphSettingsAdvanced.textDefault": "Tab Standar", + "DE.Views.ParagraphSettingsAdvanced.textContextHistorical": "Kontekstual dan bersejarah", + "DE.Views.ParagraphSettingsAdvanced.textDefault": "Tab baku", "DE.Views.ParagraphSettingsAdvanced.textDiscret": "Diskresional", "DE.Views.ParagraphSettingsAdvanced.textEffects": "Efek", "DE.Views.ParagraphSettingsAdvanced.textExact": "Persis", @@ -2370,26 +2546,26 @@ "DE.Views.ParagraphSettingsAdvanced.textLevel": "Level", "DE.Views.ParagraphSettingsAdvanced.textLigatures": "Ligatur", "DE.Views.ParagraphSettingsAdvanced.textNone": "Tidak ada", - "DE.Views.ParagraphSettingsAdvanced.textNoneSpecial": "(tidak ada)", + "DE.Views.ParagraphSettingsAdvanced.textNoneSpecial": "(nihil)", "DE.Views.ParagraphSettingsAdvanced.textOpenType": "Fitur OpenType", "DE.Views.ParagraphSettingsAdvanced.textPosition": "Posisi", "DE.Views.ParagraphSettingsAdvanced.textRemove": "Hapus", - "DE.Views.ParagraphSettingsAdvanced.textRemoveAll": "Hapus Semua", + "DE.Views.ParagraphSettingsAdvanced.textRemoveAll": "Hapus semua", "DE.Views.ParagraphSettingsAdvanced.textRight": "Kanan", "DE.Views.ParagraphSettingsAdvanced.textSet": "Tentukan", "DE.Views.ParagraphSettingsAdvanced.textSpacing": "Spasi", "DE.Views.ParagraphSettingsAdvanced.textStandard": "Standar saja", - "DE.Views.ParagraphSettingsAdvanced.textStandardContext": "Standar dan Kontekstual", + "DE.Views.ParagraphSettingsAdvanced.textStandardContext": "Standar dan kontekstual", "DE.Views.ParagraphSettingsAdvanced.textStandardContextDiscret": "Standar, Kontekstual, dan Diskresional", "DE.Views.ParagraphSettingsAdvanced.textStandardContextHist": "Standar, Kontekstual, dan Bersejarah", "DE.Views.ParagraphSettingsAdvanced.textStandardDiscret": "Standar dan Diskresional", "DE.Views.ParagraphSettingsAdvanced.textStandardHistDiscret": "Standar, Bersejarah, dan Diskresional", - "DE.Views.ParagraphSettingsAdvanced.textStandardHistorical": "Standar dan Bersejarah", + "DE.Views.ParagraphSettingsAdvanced.textStandardHistorical": "Standar dan bersejarah", "DE.Views.ParagraphSettingsAdvanced.textTabCenter": "Tengah", "DE.Views.ParagraphSettingsAdvanced.textTabLeft": "Kiri", - "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Posisi Tab", + "DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Posisi tab", "DE.Views.ParagraphSettingsAdvanced.textTabRight": "Kanan", - "DE.Views.ParagraphSettingsAdvanced.textTitle": "Paragraf - Pengaturan Lanjut", + "DE.Views.ParagraphSettingsAdvanced.textTitle": "Paragraf - Pengaturan lanjut", "DE.Views.ParagraphSettingsAdvanced.textTop": "Atas", "DE.Views.ParagraphSettingsAdvanced.tipAll": "Buat Pembatas Luar dan Semua Garis Dalam", "DE.Views.ParagraphSettingsAdvanced.tipBottom": "Buat Pembatas Bawah Saja", @@ -2401,6 +2577,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Buat Pembatas Atas Saja", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Otomatis", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Tidak ada pembatas", + "DE.Views.ProtectDialog.textComments": "Komentar", + "DE.Views.ProtectDialog.textForms": "Formulir isian", + "DE.Views.ProtectDialog.textReview": "Perubahan terlacak", + "DE.Views.ProtectDialog.textView": "Tidak ada perubahan (Baca saja)", + "DE.Views.ProtectDialog.txtAllow": "Izinkan jenis penyuntingan ini saja pada dokumen", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Kata sandi konfirmasi tidak sama", + "DE.Views.ProtectDialog.txtOptional": "opsional", + "DE.Views.ProtectDialog.txtPassword": "Kata Sandi", + "DE.Views.ProtectDialog.txtProtect": "Proteksi", + "DE.Views.ProtectDialog.txtRepeat": "Ulangi kata sandi", + "DE.Views.ProtectDialog.txtTitle": "Proteksi", + "DE.Views.ProtectDialog.txtWarning": "Peringatan: Tidak bisa dipulihkan jika Anda kehilangan atau lupa kata sandi. Simpan di tempat yang aman.", "DE.Views.RightMenu.txtChartSettings": "Pengaturan Bagan", "DE.Views.RightMenu.txtFormSettings": "Pengaturan Form", "DE.Views.RightMenu.txtHeaderFooterSettings": "Pengaturan Header dan Footer", @@ -2502,20 +2690,20 @@ "DE.Views.Statusbar.tipZoomIn": "Perbesar", "DE.Views.Statusbar.tipZoomOut": "Perkecil", "DE.Views.Statusbar.txtPageNumInvalid": "Nomor halaman salah", - "DE.Views.StyleTitleDialog.textHeader": "Buat style baru", + "DE.Views.StyleTitleDialog.textHeader": "Buat gaya baru", "DE.Views.StyleTitleDialog.textNextStyle": "Style paragraf berikutnya", "DE.Views.StyleTitleDialog.textTitle": "Judul", - "DE.Views.StyleTitleDialog.txtEmpty": "Kolom ini harus diisi", - "DE.Views.StyleTitleDialog.txtNotEmpty": "Area tidak boleh kosong", + "DE.Views.StyleTitleDialog.txtEmpty": "Ruas ini diperlukan", + "DE.Views.StyleTitleDialog.txtNotEmpty": "Ruas tidak boleh kosong", "DE.Views.StyleTitleDialog.txtSameAs": "Sama seperti membuat style baru", - "DE.Views.TableFormulaDialog.textBookmark": "Paste Bookmark", - "DE.Views.TableFormulaDialog.textFormat": "Format Nomor", + "DE.Views.TableFormulaDialog.textBookmark": "Tempel markah", + "DE.Views.TableFormulaDialog.textFormat": "Format nomor", "DE.Views.TableFormulaDialog.textFormula": "Formula", - "DE.Views.TableFormulaDialog.textInsertFunction": "Paste Fungsi", - "DE.Views.TableFormulaDialog.textTitle": "Pengaturan Formula", + "DE.Views.TableFormulaDialog.textInsertFunction": "Tempel fungsi", + "DE.Views.TableFormulaDialog.textTitle": "Pengaturan rumus", "DE.Views.TableOfContentsSettings.strAlign": "Nomor halaman rata kanan", "DE.Views.TableOfContentsSettings.strFullCaption": "Sertakan label dan nomor", - "DE.Views.TableOfContentsSettings.strLinks": "Format Daftar Isi sebagai Link", + "DE.Views.TableOfContentsSettings.strLinks": "Format daftar isi sebagai tautan", "DE.Views.TableOfContentsSettings.strLinksOF": "Format daftar gambar sebagai link", "DE.Views.TableOfContentsSettings.strShowPages": "Tampilkan nomor halaman", "DE.Views.TableOfContentsSettings.textBuildTable": "Buat daftar isi dari", @@ -2533,7 +2721,7 @@ "DE.Views.TableOfContentsSettings.textStyle": "Model", "DE.Views.TableOfContentsSettings.textStyles": "Style", "DE.Views.TableOfContentsSettings.textTable": "Tabel", - "DE.Views.TableOfContentsSettings.textTitle": "Daftar Isi", + "DE.Views.TableOfContentsSettings.textTitle": "Daftar isi", "DE.Views.TableOfContentsSettings.textTitleTOF": "Daftar gambar", "DE.Views.TableOfContentsSettings.txtCentered": "Tengah", "DE.Views.TableOfContentsSettings.txtClassic": "Klasik", @@ -2559,7 +2747,7 @@ "DE.Views.TableSettings.splitCellsText": "Pisahkan Sel...", "DE.Views.TableSettings.splitCellTitleText": "Pisahkan Sel", "DE.Views.TableSettings.strRepeatRow": "Ulangi sebagai baris header di bagian atas tiap halaman", - "DE.Views.TableSettings.textAddFormula": "Tambah formula", + "DE.Views.TableSettings.textAddFormula": "Tambah rumus", "DE.Views.TableSettings.textAdvanced": "Tampilkan pengaturan lanjut", "DE.Views.TableSettings.textBackColor": "Warna Latar", "DE.Views.TableSettings.textBanded": "Bergaris", @@ -2611,33 +2799,33 @@ "DE.Views.TableSettingsAdvanced.textAlign": "Perataan", "DE.Views.TableSettingsAdvanced.textAlignment": "Perataan", "DE.Views.TableSettingsAdvanced.textAllowSpacing": "Beri spasi antar sel", - "DE.Views.TableSettingsAdvanced.textAlt": "Teks Alternatif", + "DE.Views.TableSettingsAdvanced.textAlt": "Teks alternatif", "DE.Views.TableSettingsAdvanced.textAltDescription": "Deskripsi", "DE.Views.TableSettingsAdvanced.textAltTip": "Representasi alternatif berbasis teks dari informasi objek visual, yang akan dibaca kepada orang dengan gangguan penglihatan atau kognitif untuk membantu mereka lebih memahami informasi yang ada dalam gambar, autoshape, grafik, atau tabel.", "DE.Views.TableSettingsAdvanced.textAltTitle": "Judul", "DE.Views.TableSettingsAdvanced.textAnchorText": "Teks", "DE.Views.TableSettingsAdvanced.textAutofit": "Otomatis sesuaikan ukuran dengan konten", - "DE.Views.TableSettingsAdvanced.textBackColor": "Latar Sel", + "DE.Views.TableSettingsAdvanced.textBackColor": "Latar sel", "DE.Views.TableSettingsAdvanced.textBelow": "di bawah", - "DE.Views.TableSettingsAdvanced.textBorderColor": "Warna Pembatas", + "DE.Views.TableSettingsAdvanced.textBorderColor": "Warna tepi", "DE.Views.TableSettingsAdvanced.textBorderDesc": "Klik pada diagram atau gunakan tombol untuk memilih pembatas dan menerapkan pilihan model", "DE.Views.TableSettingsAdvanced.textBordersBackgroung": "Pembatas & Latar", - "DE.Views.TableSettingsAdvanced.textBorderWidth": "Ukuran Pembatas", + "DE.Views.TableSettingsAdvanced.textBorderWidth": "Ukuran tepi", "DE.Views.TableSettingsAdvanced.textBottom": "Bawah", - "DE.Views.TableSettingsAdvanced.textCellOptions": "Opsi Sel", + "DE.Views.TableSettingsAdvanced.textCellOptions": "Opsi sel", "DE.Views.TableSettingsAdvanced.textCellProps": "Properti Sel", - "DE.Views.TableSettingsAdvanced.textCellSize": "Ukuran Sel", + "DE.Views.TableSettingsAdvanced.textCellSize": "Ukuran sel", "DE.Views.TableSettingsAdvanced.textCenter": "Tengah", "DE.Views.TableSettingsAdvanced.textCenterTooltip": "Tengah", "DE.Views.TableSettingsAdvanced.textCheckMargins": "Gunakan margin standar", - "DE.Views.TableSettingsAdvanced.textDefaultMargins": "Margin Standar", - "DE.Views.TableSettingsAdvanced.textDistance": "Jarak dari Teks", + "DE.Views.TableSettingsAdvanced.textDefaultMargins": "Margin sel baku", + "DE.Views.TableSettingsAdvanced.textDistance": "Jarak dari teks", "DE.Views.TableSettingsAdvanced.textHorizontal": "Horisontal", - "DE.Views.TableSettingsAdvanced.textIndLeft": "Indentasi dari Kiri", + "DE.Views.TableSettingsAdvanced.textIndLeft": "Indentasi dari kiri", "DE.Views.TableSettingsAdvanced.textLeft": "Kiri", "DE.Views.TableSettingsAdvanced.textLeftTooltip": "Kiri", "DE.Views.TableSettingsAdvanced.textMargin": "Margin", - "DE.Views.TableSettingsAdvanced.textMargins": "Margin Sel", + "DE.Views.TableSettingsAdvanced.textMargins": "Margin sel", "DE.Views.TableSettingsAdvanced.textMeasure": "Diukur dalam", "DE.Views.TableSettingsAdvanced.textMove": "Pindah obyek bersama teks", "DE.Views.TableSettingsAdvanced.textOnlyCells": "Hanya untuk sel yang dipilih", @@ -2652,18 +2840,18 @@ "DE.Views.TableSettingsAdvanced.textRightOf": "ke sebelah kanan dari", "DE.Views.TableSettingsAdvanced.textRightTooltip": "Kanan", "DE.Views.TableSettingsAdvanced.textTable": "Tabel", - "DE.Views.TableSettingsAdvanced.textTableBackColor": "Latar Belakang Tabel", - "DE.Views.TableSettingsAdvanced.textTablePosition": "Posisi Tabel", - "DE.Views.TableSettingsAdvanced.textTableSize": "Ukuran Tabel", - "DE.Views.TableSettingsAdvanced.textTitle": "Tabel - Pengaturan Lanjut", + "DE.Views.TableSettingsAdvanced.textTableBackColor": "Latar belakang tabel", + "DE.Views.TableSettingsAdvanced.textTablePosition": "Posisi tabel", + "DE.Views.TableSettingsAdvanced.textTableSize": "Ukuran tabel", + "DE.Views.TableSettingsAdvanced.textTitle": "Tabel - Pengaturan lanjut", "DE.Views.TableSettingsAdvanced.textTop": "Atas", "DE.Views.TableSettingsAdvanced.textVertical": "Vertikal", "DE.Views.TableSettingsAdvanced.textWidth": "Lebar", "DE.Views.TableSettingsAdvanced.textWidthSpaces": "Lebar & Spasi", - "DE.Views.TableSettingsAdvanced.textWrap": "Potongan Teks", + "DE.Views.TableSettingsAdvanced.textWrap": "Pelipatan teks", "DE.Views.TableSettingsAdvanced.textWrapNoneTooltip": "Tabel berderet", "DE.Views.TableSettingsAdvanced.textWrapParallelTooltip": "Tabel alur", - "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Bentuk Potongan", + "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Gaya pelipatan", "DE.Views.TableSettingsAdvanced.textWrapText": "Wrap Teks", "DE.Views.TableSettingsAdvanced.tipAll": "Buat Pembatas Luar dan Semua Garis Dalam", "DE.Views.TableSettingsAdvanced.tipCellAll": "Buat Pembatas untuk Sel Dalam Saja", @@ -2680,14 +2868,14 @@ "DE.Views.TableSettingsAdvanced.txtNoBorders": "Tidak ada pembatas", "DE.Views.TableSettingsAdvanced.txtPercent": "Persen", "DE.Views.TableSettingsAdvanced.txtPt": "Titik", - "DE.Views.TableToTextDialog.textEmpty": "Anda harus menulis karakter untuk separator custom.", + "DE.Views.TableToTextDialog.textEmpty": "Anda harus mengetikkan sebuah karakter untuk pemisah ubahan.", "DE.Views.TableToTextDialog.textNested": "Konversi tabel nested", "DE.Views.TableToTextDialog.textOther": "Lainnya", "DE.Views.TableToTextDialog.textPara": "Tanda paragraf", "DE.Views.TableToTextDialog.textSemicolon": "Semicolons", "DE.Views.TableToTextDialog.textSeparator": "Pisahkan teks dengan", "DE.Views.TableToTextDialog.textTab": "Tab", - "DE.Views.TableToTextDialog.textTitle": "Konversi Tabel ke Teks", + "DE.Views.TableToTextDialog.textTitle": "Konversi tabel ke teks", "DE.Views.TextArtSettings.strColor": "Warna", "DE.Views.TextArtSettings.strFill": "Isi", "DE.Views.TextArtSettings.strSize": "Ukuran", @@ -2711,19 +2899,19 @@ "DE.Views.TextArtSettings.tipAddGradientPoint": "Tambah titik gradien", "DE.Views.TextArtSettings.tipRemoveGradientPoint": "Hilangkan titik gradien", "DE.Views.TextArtSettings.txtNoBorders": "Tanpa Garis", - "DE.Views.TextToTableDialog.textAutofit": "Sifat Autofit", + "DE.Views.TextToTableDialog.textAutofit": "Perilaku Autofit", "DE.Views.TextToTableDialog.textColumns": "Kolom", "DE.Views.TextToTableDialog.textContents": "Autofit ke konten", - "DE.Views.TextToTableDialog.textEmpty": "Anda harus menulis karakter untuk separator custom.", + "DE.Views.TextToTableDialog.textEmpty": "Anda harus mengetikkan sebuah karakter untuk pemisah ubahan.", "DE.Views.TextToTableDialog.textFixed": "Lebar kolom tetap", "DE.Views.TextToTableDialog.textOther": "Lainnya", "DE.Views.TextToTableDialog.textPara": "Paragraf", "DE.Views.TextToTableDialog.textRows": "Baris", "DE.Views.TextToTableDialog.textSemicolon": "Semicolons", - "DE.Views.TextToTableDialog.textSeparator": "Pisahkan Teks pada", + "DE.Views.TextToTableDialog.textSeparator": "Pisahkan teks pada", "DE.Views.TextToTableDialog.textTab": "Tab", - "DE.Views.TextToTableDialog.textTableSize": "Ukuran Tabel", - "DE.Views.TextToTableDialog.textTitle": "Konversi Teks ke Tabel", + "DE.Views.TextToTableDialog.textTableSize": "Ukuran tabel", + "DE.Views.TextToTableDialog.textTitle": "Konversi teks ke tabel", "DE.Views.TextToTableDialog.textWindow": "Autofit ke jendela", "DE.Views.TextToTableDialog.txtAutoText": "Otomatis", "DE.Views.Toolbar.capBtnAddComment": "Tambahkan Komentar", @@ -2739,11 +2927,12 @@ "DE.Views.Toolbar.capBtnInsImage": "Gambar", "DE.Views.Toolbar.capBtnInsPagebreak": "Breaks", "DE.Views.Toolbar.capBtnInsShape": "Bentuk", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Simbol", "DE.Views.Toolbar.capBtnInsTable": "Tabel", "DE.Views.Toolbar.capBtnInsTextart": "Text Art", "DE.Views.Toolbar.capBtnInsTextbox": "Kotak Teks", - "DE.Views.Toolbar.capBtnLineNumbers": "Nomor Garis", + "DE.Views.Toolbar.capBtnLineNumbers": "Nomor garis", "DE.Views.Toolbar.capBtnMargins": "Margin", "DE.Views.Toolbar.capBtnPageOrient": "Orientasi", "DE.Views.Toolbar.capBtnPageSize": "Ukuran", @@ -2815,7 +3004,7 @@ "DE.Views.Toolbar.textMarginsNormal": "Normal", "DE.Views.Toolbar.textMarginsUsNormal": "US Normal", "DE.Views.Toolbar.textMarginsWide": "Wide", - "DE.Views.Toolbar.textNewColor": "Tambahkan warna khusus baru", + "DE.Views.Toolbar.textNewColor": "Tambahkan Warna Ubahan Baru", "DE.Views.Toolbar.textNextPage": "Halaman Selanjutnya", "DE.Views.Toolbar.textNoHighlight": "Tanpa highlight", "DE.Views.Toolbar.textNone": "Tidak ada", @@ -2854,10 +3043,10 @@ "DE.Views.Toolbar.textToCurrent": "Ke posisi saat ini", "DE.Views.Toolbar.textTop": "Atas: ", "DE.Views.Toolbar.textUnderline": "Garis bawah", - "DE.Views.Toolbar.tipAlignCenter": "Rata Tengah", + "DE.Views.Toolbar.tipAlignCenter": "Rata tengah", "DE.Views.Toolbar.tipAlignJust": "Rata Kiri-Kanan", - "DE.Views.Toolbar.tipAlignLeft": "Rata Kiri", - "DE.Views.Toolbar.tipAlignRight": "Rata Kanan", + "DE.Views.Toolbar.tipAlignLeft": "Rata kiri", + "DE.Views.Toolbar.tipAlignRight": "Rata kanan", "DE.Views.Toolbar.tipBack": "Kembali", "DE.Views.Toolbar.tipBlankPage": "Sisipkan halaman kosong", "DE.Views.Toolbar.tipChangeCase": "Ubah case", @@ -2885,13 +3074,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Tambahkan Indentasi", "DE.Views.Toolbar.tipInsertChart": "Sisipkan Bagan", "DE.Views.Toolbar.tipInsertEquation": "Masukkan Persamaan", + "DE.Views.Toolbar.tipInsertHorizontalText": "Sisipkan kotak teks horizontal", "DE.Views.Toolbar.tipInsertImage": "Sisipkan Gambar", "DE.Views.Toolbar.tipInsertNum": "Sisipkan Nomor Halaman", "DE.Views.Toolbar.tipInsertShape": "Sisipkan Bentuk Otomatis", + "DE.Views.Toolbar.tipInsertSmartArt": "Sisipkan SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Sisipkan simbol", "DE.Views.Toolbar.tipInsertTable": "Sisipkan Tabel", "DE.Views.Toolbar.tipInsertText": "Sisipkan kotak teks", "DE.Views.Toolbar.tipInsertTextArt": "Sisipkan Text Art", + "DE.Views.Toolbar.tipInsertVerticalText": "Sisipkan kotak teks vertikal", "DE.Views.Toolbar.tipLineNumbers": "Tampilkan nomor garis", "DE.Views.Toolbar.tipLineSpace": "Spasi Antar Baris Paragraf", "DE.Views.Toolbar.tipMailRecepients": "Merge email", @@ -2958,13 +3150,15 @@ "DE.Views.Toolbar.txtScheme7": "Margin Sisa", "DE.Views.Toolbar.txtScheme8": "Alur", "DE.Views.Toolbar.txtScheme9": "Cetakan", - "DE.Views.ViewTab.textAlwaysShowToolbar": "Selalu tampilkan toolbar", + "DE.Views.ViewTab.textAlwaysShowToolbar": "Selalu Tampilkan Bilah Alat", "DE.Views.ViewTab.textDarkDocument": "Dokumen gelap", "DE.Views.ViewTab.textFitToPage": "Sesuaikan Halaman", "DE.Views.ViewTab.textFitToWidth": "Sesuaikan Lebar", - "DE.Views.ViewTab.textInterfaceTheme": "Tema interface", + "DE.Views.ViewTab.textInterfaceTheme": "Tema Antar Muka", + "DE.Views.ViewTab.textLeftMenu": "Panel Kiri", "DE.Views.ViewTab.textNavigation": "Navigasi", "DE.Views.ViewTab.textOutline": "Tajuk", + "DE.Views.ViewTab.textRightMenu": "Panel Kanan", "DE.Views.ViewTab.textRulers": "Penggaris", "DE.Views.ViewTab.textStatusBar": "Bar Status", "DE.Views.ViewTab.textZoom": "Pembesaran", @@ -2978,8 +3172,8 @@ "DE.Views.WatermarkSettingsDialog.textColor": "Warna teks", "DE.Views.WatermarkSettingsDialog.textDiagonal": "Diagonal", "DE.Views.WatermarkSettingsDialog.textFont": "Huruf", - "DE.Views.WatermarkSettingsDialog.textFromFile": "Dari File", - "DE.Views.WatermarkSettingsDialog.textFromStorage": "Dari Penyimpanan", + "DE.Views.WatermarkSettingsDialog.textFromFile": "Dari file", + "DE.Views.WatermarkSettingsDialog.textFromStorage": "Dari penyimpanan", "DE.Views.WatermarkSettingsDialog.textFromUrl": "Dari URL", "DE.Views.WatermarkSettingsDialog.textHor": "Horisontal", "DE.Views.WatermarkSettingsDialog.textImageW": "Watermark gambar", @@ -2988,13 +3182,13 @@ "DE.Views.WatermarkSettingsDialog.textLayout": "Layout", "DE.Views.WatermarkSettingsDialog.textNone": "Tidak ada", "DE.Views.WatermarkSettingsDialog.textScale": "Skala", - "DE.Views.WatermarkSettingsDialog.textSelect": "Pilih Gambar", + "DE.Views.WatermarkSettingsDialog.textSelect": "Pilih gambar", "DE.Views.WatermarkSettingsDialog.textStrikeout": "Coret ganda", "DE.Views.WatermarkSettingsDialog.textText": "Teks", "DE.Views.WatermarkSettingsDialog.textTextW": "Watermark teks", - "DE.Views.WatermarkSettingsDialog.textTitle": "Pengaturan Watermark", + "DE.Views.WatermarkSettingsDialog.textTitle": "Pengaturan watermark", "DE.Views.WatermarkSettingsDialog.textTransparency": "Semi Transparan", "DE.Views.WatermarkSettingsDialog.textUnderline": "Garis bawah", - "DE.Views.WatermarkSettingsDialog.tipFontName": "Nama Font", - "DE.Views.WatermarkSettingsDialog.tipFontSize": "Ukuran Huruf" + "DE.Views.WatermarkSettingsDialog.tipFontName": "Nama font", + "DE.Views.WatermarkSettingsDialog.tipFontSize": "Ukuran font" } \ No newline at end of file diff --git a/apps/documenteditor/main/locale/it.json b/apps/documenteditor/main/locale/it.json index 3ee00e229..6656ea399 100644 --- a/apps/documenteditor/main/locale/it.json +++ b/apps/documenteditor/main/locale/it.json @@ -125,6 +125,13 @@ "Common.define.chartData.textScatterSmoothMarker": "Grafico a dispersione con linee e indicatori", "Common.define.chartData.textStock": "Azionario", "Common.define.chartData.textSurface": "Superficie", + "Common.define.smartArt.textBalance": "Equilibri", + "Common.define.smartArt.textEquation": "Equazione", + "Common.define.smartArt.textFunnel": "Imbuto", + "Common.define.smartArt.textList": "Elenco", + "Common.define.smartArt.textMatrix": "Matrice", + "Common.define.smartArt.textOther": "Altro", + "Common.define.smartArt.textPicture": "Immagine", "Common.Translation.textMoreButton": "più", "Common.Translation.warnFileLocked": "Non puoi modificare questo file perché è in fase di modifica in un'altra applicazione.", "Common.Translation.warnFileLockedBtnEdit": "Crea copia", @@ -288,6 +295,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Caricamento in corso...", "Common.Views.DocumentAccessDialog.textTitle": "Impostazioni di condivisione", "Common.Views.ExternalDiagramEditor.textTitle": "Editor di grafici", + "Common.Views.ExternalEditor.textClose": "Chiudi", + "Common.Views.ExternalEditor.textSave": "Salva ed esci", "Common.Views.ExternalMergeEditor.textTitle": "Destinatari Stampa unione", "Common.Views.ExternalOleEditor.textTitle": "Editor di fogli di calcolo", "Common.Views.Header.labelCoUsersDescr": "Utenti che stanno modificando il file:", @@ -354,6 +363,7 @@ "Common.Views.Plugins.textStart": "Inizia", "Common.Views.Plugins.textStop": "Termina", "Common.Views.Protection.hintAddPwd": "Crittografa con password", + "Common.Views.Protection.hintDelPwd": "Elimina password", "Common.Views.Protection.hintPwd": "Modifica o rimuovi password", "Common.Views.Protection.hintSignature": "Aggiungi firma digitale o riga di firma", "Common.Views.Protection.txtAddPwd": "Aggiungi password", @@ -435,7 +445,7 @@ "Common.Views.ReviewChanges.txtSharing": "Condivisione", "Common.Views.ReviewChanges.txtSpelling": "Controllo ortografico", "Common.Views.ReviewChanges.txtTurnon": "Traccia cambiamenti", - "Common.Views.ReviewChanges.txtView": "Modalità Visualizzazione", + "Common.Views.ReviewChanges.txtView": "Modalità di visualizzazione", "Common.Views.ReviewChangesDialog.textTitle": "Rivedi modifiche", "Common.Views.ReviewChangesDialog.txtAccept": "Accetta", "Common.Views.ReviewChangesDialog.txtAcceptAll": "Accetta tutte le modifiche", @@ -591,6 +601,7 @@ "DE.Controllers.Main.errorSetPassword": "Impossibile impostare la password.", "DE.Controllers.Main.errorStockChart": "Righe ordinate in modo errato. Per creare un grafico azionario posizionare i dati sul foglio nel seguente ordine:
    prezzo di apertura, prezzo massimo, prezzo minimo, prezzo di chiusura.", "DE.Controllers.Main.errorSubmit": "Invio fallito.", + "DE.Controllers.Main.errorTextFormWrongFormat": "Il valore inserito non corrisponde al formato del campo.", "DE.Controllers.Main.errorToken": "Il token di sicurezza del documento non è stato creato correttamente.
    Si prega di contattare l'amministratore del Server dei Documenti.", "DE.Controllers.Main.errorTokenExpire": "Il token di sicurezza del documento è scaduto.
    Si prega di contattare l'amministratore del Server dei Documenti.", "DE.Controllers.Main.errorUpdateVersion": "La versione del file è stata modificata. La pagina verrà ricaricata.", @@ -638,6 +649,7 @@ "DE.Controllers.Main.textClose": "Chiudi", "DE.Controllers.Main.textCloseTip": "Clicca su per chiudere la notifica", "DE.Controllers.Main.textContactUs": "Contatta il team di vendite", + "DE.Controllers.Main.textContinue": "Continua", "DE.Controllers.Main.textConvertEquation": "Questa equazione è stata creata con una vecchia versione dell'editor di equazioni che non è più supportata.Per modificarla, convertire l'equazione nel formato ML di Office Math.
    Convertire ora?", "DE.Controllers.Main.textCustomLoader": "Si prega di notare che, in base ai termini della licenza, non si ha il diritto di modificare il caricatore.
    Si prega di contattare il nostro reparto vendite per ottenere un preventivo.", "DE.Controllers.Main.textDisconnect": "Connessione persa", @@ -658,6 +670,7 @@ "DE.Controllers.Main.textStrict": "Modalità Rigorosa", "DE.Controllers.Main.textTryUndoRedo": "Le funzioni Annulla/Ripristina sono disabilitate per la Modalità di Co-editing Veloce.
    Clicca il pulsante 'Modalità Rigorosa' per passare alla Modalità di Co-editing Rigorosa per poter modificare il file senza l'interferenza di altri utenti e inviare le modifiche solamente dopo averle salvate. Puoi passare da una modalità all'altra di co-editing utilizzando le Impostazioni avanzate dell'editor.", "DE.Controllers.Main.textTryUndoRedoWarn": "Le funzioni Annulla/Ripeti sono disattivate nella modalità rapida in modifica collaborativa.", + "DE.Controllers.Main.textUndo": "Annulla", "DE.Controllers.Main.titleLicenseExp": "La licenza è scaduta", "DE.Controllers.Main.titleServerVersion": "L'editor è stato aggiornato", "DE.Controllers.Main.titleUpdateVersion": "Versione Modificata", @@ -1329,12 +1342,17 @@ "DE.Views.CellsAddDialog.textUp": "Sopra il cursore", "DE.Views.ChartSettings.textAdvanced": "Mostra impostazioni avanzate", "DE.Views.ChartSettings.textChartType": "Cambia tipo di grafico", + "DE.Views.ChartSettings.textDown": "Giù", "DE.Views.ChartSettings.textEditData": "Modifica dati", "DE.Views.ChartSettings.textHeight": "Altezza", + "DE.Views.ChartSettings.textLeft": "A sinistra", "DE.Views.ChartSettings.textOriginalSize": "Dimensione reale", + "DE.Views.ChartSettings.textPerspective": "Prospettiva", + "DE.Views.ChartSettings.textRight": "A destra", "DE.Views.ChartSettings.textSize": "Dimensione", "DE.Views.ChartSettings.textStyle": "Stile", "DE.Views.ChartSettings.textUndock": "Disancora dal pannello", + "DE.Views.ChartSettings.textUp": "Verso l'alto", "DE.Views.ChartSettings.textWidth": "Larghezza", "DE.Views.ChartSettings.textWrap": "Stile di disposizione testo", "DE.Views.ChartSettings.txtBehind": "Dietro al testo", @@ -1426,6 +1444,8 @@ "DE.Views.DateTimeDialog.textLang": "Lingua", "DE.Views.DateTimeDialog.textUpdate": "Aggiorna automaticamente", "DE.Views.DateTimeDialog.txtTitle": "Data e ora", + "DE.Views.DocProtection.hintProtectDoc": "Proteggi documento", + "DE.Views.DocProtection.txtProtectDoc": "Proteggi documento", "DE.Views.DocumentHolder.aboveText": "Al di sopra", "DE.Views.DocumentHolder.addCommentText": "Aggiungi commento", "DE.Views.DocumentHolder.advancedDropCapText": "Impostazioni di capolettera", @@ -1751,6 +1771,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistiche", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Oggetto", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Simboli", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Etichette", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titolo documento", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Caricato", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Parole", @@ -1759,7 +1780,7 @@ "DE.Views.FileMenuPanels.DocumentRights.txtRights": "Persone che hanno diritti", "DE.Views.FileMenuPanels.ProtectDoc.notcriticalErrorTitle": "Avviso", "DE.Views.FileMenuPanels.ProtectDoc.strEncrypt": "con Password", - "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Proteggi Documento", + "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Proteggi documento", "DE.Views.FileMenuPanels.ProtectDoc.strSignature": "con Firma", "DE.Views.FileMenuPanels.ProtectDoc.txtEdit": "Modifica documento", "DE.Views.FileMenuPanels.ProtectDoc.txtEditWarning": "La modifica eliminerà le firme dal documento.
    Vuoi continuare?", @@ -1838,8 +1859,10 @@ "DE.Views.FormSettings.textColor": "Colore bordo", "DE.Views.FormSettings.textComb": "Combinazione di caratteri", "DE.Views.FormSettings.textCombobox": "Casella combinata", + "DE.Views.FormSettings.textComplex": "Campo complesso", "DE.Views.FormSettings.textConnected": "Campi collegati", "DE.Views.FormSettings.textDelete": "Elimina", + "DE.Views.FormSettings.textDigits": "Cifre", "DE.Views.FormSettings.textDisconnect": "Disconnetti", "DE.Views.FormSettings.textDropDown": "Menù a discesca", "DE.Views.FormSettings.textExact": "Esattamente", @@ -1858,6 +1881,7 @@ "DE.Views.FormSettings.textMulti": "Campo con molte righe", "DE.Views.FormSettings.textNever": "Mai", "DE.Views.FormSettings.textNoBorder": "Senza bordo", + "DE.Views.FormSettings.textNone": "Nessuno", "DE.Views.FormSettings.textPlaceholder": "Segnaposto", "DE.Views.FormSettings.textRadiobox": "Pulsante opzione", "DE.Views.FormSettings.textRequired": "Richiesto", @@ -1876,11 +1900,13 @@ "DE.Views.FormSettings.textWidth": "‎Larghezza cella‎", "DE.Views.FormsTab.capBtnCheckBox": "Casella di controllo", "DE.Views.FormsTab.capBtnComboBox": "Casella combinata", + "DE.Views.FormsTab.capBtnComplex": "Campo complesso", "DE.Views.FormsTab.capBtnDownloadForm": "Scarica come oform", "DE.Views.FormsTab.capBtnDropDown": "Menù a discesca", "DE.Views.FormsTab.capBtnEmail": "Indirizzo email", "DE.Views.FormsTab.capBtnImage": "Immagine", "DE.Views.FormsTab.capBtnNext": "Campo successivo", + "DE.Views.FormsTab.capBtnPhone": "Numero di telefono", "DE.Views.FormsTab.capBtnPrev": "Campo precedente", "DE.Views.FormsTab.capBtnRadioBox": "Pulsante opzione", "DE.Views.FormsTab.capBtnSaveForm": "Salvare come oform", @@ -1897,10 +1923,13 @@ "DE.Views.FormsTab.textSubmited": "Modulo inviato con successo", "DE.Views.FormsTab.tipCheckBox": "Inserisci casella di controllo", "DE.Views.FormsTab.tipComboBox": "Inserisci una cella combinata", + "DE.Views.FormsTab.tipComplexField": "Inserisci campo complesso", "DE.Views.FormsTab.tipDownloadForm": "Scaricare un file come un documento OFORM compilabile", "DE.Views.FormsTab.tipDropDown": "Inserisci lista in basso espandibile", + "DE.Views.FormsTab.tipEmailField": " Inserisci indirizzo email", "DE.Views.FormsTab.tipImageField": "Inserisci immagine", "DE.Views.FormsTab.tipNextForm": "Vai al campo successivo", + "DE.Views.FormsTab.tipPhoneField": "Inserisci numero di telefono", "DE.Views.FormsTab.tipPrevForm": "Vai al campo precedente", "DE.Views.FormsTab.tipRadioBox": "Inserisci pulsante di opzione", "DE.Views.FormsTab.tipSaveForm": "Salvare un file come documento OFORM compilabile", @@ -2053,6 +2082,7 @@ "DE.Views.LeftMenu.tipComments": "Commenti", "DE.Views.LeftMenu.tipNavigation": "Navigazione", "DE.Views.LeftMenu.tipOutline": "Intestazioni", + "DE.Views.LeftMenu.tipPageThumbnails": "Miniature delle pagine", "DE.Views.LeftMenu.tipPlugins": "Plugin", "DE.Views.LeftMenu.tipSearch": "Ricerca", "DE.Views.LeftMenu.tipSupport": "Feedback & Supporto", @@ -2360,6 +2390,14 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Imposta solo bordo superiore", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Nessun bordo", + "DE.Views.ProtectDialog.textComments": "Commenti", + "DE.Views.ProtectDialog.txtIncorrectPwd": "La password di conferma non corrisponde", + "DE.Views.ProtectDialog.txtOptional": "opzionale", + "DE.Views.ProtectDialog.txtPassword": "Password", + "DE.Views.ProtectDialog.txtProtect": "Proteggere", + "DE.Views.ProtectDialog.txtRepeat": "Ripeti la password", + "DE.Views.ProtectDialog.txtTitle": "Proteggere", + "DE.Views.ProtectDialog.txtWarning": "Importante: una volta persa o dimenticata, la password non potrà più essere recuperata. Conservalo in un luogo sicuro.", "DE.Views.RightMenu.txtChartSettings": "Impostazioni grafico", "DE.Views.RightMenu.txtFormSettings": "‎Impostazioni modulo‎", "DE.Views.RightMenu.txtHeaderFooterSettings": "Impostazioni intestazione e piè di pagina", @@ -2550,6 +2588,7 @@ "DE.Views.TableSettings.tipOuter": "Imposta solo bordi esterni", "DE.Views.TableSettings.tipRight": "Imposta solo bordo esterno destro", "DE.Views.TableSettings.tipTop": "Imposta solo bordo esterno superiore", + "DE.Views.TableSettings.txtGroupTable_Custom": "Personalizzato", "DE.Views.TableSettings.txtNoBorders": "Nessun bordo", "DE.Views.TableSettings.txtTable_Accent": "Accento", "DE.Views.TableSettings.txtTable_Colorful": "Colorato", @@ -2678,7 +2717,7 @@ "DE.Views.TextToTableDialog.textWindow": "Autofit alla finestra", "DE.Views.TextToTableDialog.txtAutoText": "Automatico", "DE.Views.Toolbar.capBtnAddComment": "Aggiungi commento", - "DE.Views.Toolbar.capBtnBlankPage": "Pagina Vuota", + "DE.Views.Toolbar.capBtnBlankPage": "Pagina vuota", "DE.Views.Toolbar.capBtnColumns": "Colonne", "DE.Views.Toolbar.capBtnComment": "Commento", "DE.Views.Toolbar.capBtnDateTime": "Data e ora", @@ -2690,6 +2729,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Immagine", "DE.Views.Toolbar.capBtnInsPagebreak": "Interruzione di pagina", "DE.Views.Toolbar.capBtnInsShape": "Forma", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Simbolo", "DE.Views.Toolbar.capBtnInsTable": "Tabella", "DE.Views.Toolbar.capBtnInsTextart": "Text Art", diff --git a/apps/documenteditor/main/locale/ja.json b/apps/documenteditor/main/locale/ja.json index 2a3b6da15..8ab147eb6 100644 --- a/apps/documenteditor/main/locale/ja.json +++ b/apps/documenteditor/main/locale/ja.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "マーカーと平滑線付き散布図", "Common.define.chartData.textStock": "株価チャート", "Common.define.chartData.textSurface": "表面", + "Common.define.smartArt.textAccentedPicture": "アクセント付きの図", + "Common.define.smartArt.textAccentProcess": "アクセント・プロセス", + "Common.define.smartArt.textAlternatingFlow": "波型ステップ", + "Common.define.smartArt.textAlternatingHexagons": "左右交替積み上げ六角形", + "Common.define.smartArt.textAlternatingPictureBlocks": "左右交替積み上げ画像ブロック", + "Common.define.smartArt.textAlternatingPictureCircles": "円形付き画像ジグザグ表示", + "Common.define.smartArt.textArchitectureLayout": "アーキテクチャ レイアウト", + "Common.define.smartArt.textArrowRibbon": "リボン状の矢印", + "Common.define.smartArt.textAscendingPictureAccentProcess": "アクセント画像付き上昇ステップ", + "Common.define.smartArt.textBalance": "バランス", + "Common.define.smartArt.textBasicBendingProcess": "基本蛇行ステップ", + "Common.define.smartArt.textBasicBlockList": "カード型リスト", + "Common.define.smartArt.textBasicChevronProcess": "プロセス", + "Common.define.smartArt.textBasicCycle": "基本の循環", + "Common.define.smartArt.textBasicMatrix": "基本マトリックス", + "Common.define.smartArt.textBasicPie": "円グラフ", + "Common.define.smartArt.textBasicProcess": "基本ステップ", + "Common.define.smartArt.textBasicPyramid": "基本ピラミッド", + "Common.define.smartArt.textBasicRadial": "基本放射", + "Common.define.smartArt.textBasicTarget": "ターゲット", + "Common.define.smartArt.textBasicTimeline": "タイムライン", + "Common.define.smartArt.textBasicVenn": "基本ベン図", + "Common.define.smartArt.textBendingPictureAccentList": "画像付きカード型リスト", + "Common.define.smartArt.textBendingPictureBlocks": "自動配置の画像ブロック", + "Common.define.smartArt.textBendingPictureCaption": "自動配置の表題付き画像", + "Common.define.smartArt.textBendingPictureCaptionList": "自動配置の表題付き画像レイアウト", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "自動配置の半透明テキスト付き画像", + "Common.define.smartArt.textBlockCycle": "ボックス循環", + "Common.define.smartArt.textBubblePictureList": "バブル状画像リスト", + "Common.define.smartArt.textCaptionedPictures": "表題付き画像", + "Common.define.smartArt.textChevronAccentProcess": "アクセントステップ", + "Common.define.smartArt.textChevronList": "プロセス リスト", + "Common.define.smartArt.textCircleAccentTimeline": "円形組み合わせタイムライン", + "Common.define.smartArt.textCircleArrowProcess": "円形矢印プロセス", + "Common.define.smartArt.textCirclePictureHierarchy": "円形画像を使用した階層", + "Common.define.smartArt.textCircleProcess": "円形プロセス", + "Common.define.smartArt.textCircleRelationship": "円の関連付け", + "Common.define.smartArt.textCircularBendingProcess": "円形蛇行ステップ", + "Common.define.smartArt.textCircularPictureCallout": "円形画像を使った吹き出し", + "Common.define.smartArt.textClosedChevronProcess": "開始点強調型プロセス", + "Common.define.smartArt.textContinuousArrowProcess": "大きな矢印のプロセス", + "Common.define.smartArt.textContinuousBlockProcess": "矢印と長方形のプロセス", + "Common.define.smartArt.textContinuousCycle": "連続性強調循環", + "Common.define.smartArt.textContinuousPictureList": "矢印付き画像リスト", + "Common.define.smartArt.textConvergingArrows": "内向き矢印", + "Common.define.smartArt.textConvergingRadial": "集中", + "Common.define.smartArt.textConvergingText": "内向きテキスト", + "Common.define.smartArt.textCounterbalanceArrows": "対立とバランスの矢印", + "Common.define.smartArt.textCycle": "循環", + "Common.define.smartArt.textCycleMatrix": "循環マトリックス", + "Common.define.smartArt.textDescendingBlockList": "ブロックの降順リスト", + "Common.define.smartArt.textDescendingProcess": "降順プロセス", + "Common.define.smartArt.textDetailedProcess": "詳述プロセス", + "Common.define.smartArt.textDivergingArrows": "左右逆方向矢印", + "Common.define.smartArt.textDivergingRadial": "矢印付き放射", + "Common.define.smartArt.textEquation": "数式", + "Common.define.smartArt.textFramedTextPicture": "フレームに表示されるテキスト画像", + "Common.define.smartArt.textFunnel": "漏斗", + "Common.define.smartArt.textGear": "歯車", + "Common.define.smartArt.textGridMatrix": "グリッド マトリックス", + "Common.define.smartArt.textGroupedList": "グループ リスト", + "Common.define.smartArt.textHalfCircleOrganizationChart": "アーチ型線で飾られた組織図", + "Common.define.smartArt.textHexagonCluster": "蜂の巣状の六角形", + "Common.define.smartArt.textHexagonRadial": "六角形放射", + "Common.define.smartArt.textHierarchy": "階層", + "Common.define.smartArt.textHierarchyList": "階層リスト", + "Common.define.smartArt.textHorizontalBulletList": "横方向箇条書きリスト", + "Common.define.smartArt.textHorizontalHierarchy": "横方向階層", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "ラベル付き横方向階層", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "複数レベル対応の横方向階層", + "Common.define.smartArt.textHorizontalOrganizationChart": "水平方向の組織図", + "Common.define.smartArt.textHorizontalPictureList": "横方向画像リスト", + "Common.define.smartArt.textIncreasingArrowProcess": "上昇矢印のプロセス", + "Common.define.smartArt.textIncreasingCircleProcess": "上昇円プロセス", + "Common.define.smartArt.textInterconnectedBlockProcess": "相互接続された長方形のプロセス", + "Common.define.smartArt.textInterconnectedRings": "互いにつながったリング", + "Common.define.smartArt.textInvertedPyramid": "反転ピラミッド", + "Common.define.smartArt.textLabeledHierarchy": "ラベル付き階層", + "Common.define.smartArt.textLinearVenn": "横方向ベン図", + "Common.define.smartArt.textLinedList": "線区切りリスト", + "Common.define.smartArt.textList": "リスト", + "Common.define.smartArt.textMatrix": "マトリックス", + "Common.define.smartArt.textMultidirectionalCycle": "双方向循環", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "氏名/役職名付き組織図", + "Common.define.smartArt.textNestedTarget": "包含", + "Common.define.smartArt.textNondirectionalCycle": "矢印無し循環", + "Common.define.smartArt.textOpposingArrows": "上下逆方向矢印", + "Common.define.smartArt.textOpposingIdeas": "対立する案", + "Common.define.smartArt.textOrganizationChart": "組織図", + "Common.define.smartArt.textOther": "その他", + "Common.define.smartArt.textPhasedProcess": "フェーズ プロセス", + "Common.define.smartArt.textPicture": "画像", + "Common.define.smartArt.textPictureAccentBlocks": "画像アクセントのブロック", + "Common.define.smartArt.textPictureAccentList": "画像アクセントのリスト", + "Common.define.smartArt.textPictureAccentProcess": "画像アクセントのプロセス", + "Common.define.smartArt.textPictureCaptionList": "画像キャプションのリスト", + "Common.define.smartArt.textPictureFrame": "フォトフレーム", + "Common.define.smartArt.textPictureGrid": "画像グリッド", + "Common.define.smartArt.textPictureLineup": "画像ラインアップ", + "Common.define.smartArt.textPictureOrganizationChart": "画像付き組織図", + "Common.define.smartArt.textPictureStrips": "画像付きラベル", + "Common.define.smartArt.textPieProcess": "円グラフのプロセス", + "Common.define.smartArt.textPlusAndMinus": "プラスとマイナス", + "Common.define.smartArt.textProcess": "プロセス", + "Common.define.smartArt.textProcessArrows": "矢印型ステップ", + "Common.define.smartArt.textProcessList": "プロセスのリスト", + "Common.define.smartArt.textPyramid": "ピラミッド", + "Common.define.smartArt.textPyramidList": "ピラミッドのリスト", + "Common.define.smartArt.textRadialCluster": "放射ブロック", + "Common.define.smartArt.textRadialCycle": "中心付き循環", + "Common.define.smartArt.textRadialList": "放射リスト", + "Common.define.smartArt.textRadialPictureList": "放射画像リスト", + "Common.define.smartArt.textRadialVenn": "放射型ベン図", + "Common.define.smartArt.textRandomToResultProcess": "複数案をまとめるステップ", + "Common.define.smartArt.textRelationship": "関係", + "Common.define.smartArt.textRepeatingBendingProcess": "改行型蛇行ステップ", + "Common.define.smartArt.textReverseList": "逆順リスト", + "Common.define.smartArt.textSegmentedCycle": "円型循環", + "Common.define.smartArt.textSegmentedProcess": "分割ステップ", + "Common.define.smartArt.textSegmentedPyramid": "分割ピラミッド", + "Common.define.smartArt.textSnapshotPictureList": "スナップショット画像リスト", + "Common.define.smartArt.textSpiralPicture": "渦巻き画像", + "Common.define.smartArt.textSquareAccentList": "箇条書き記号アクセントのリスト", + "Common.define.smartArt.textStackedList": "積み上げリスト", + "Common.define.smartArt.textStackedVenn": "包含型ベン図", + "Common.define.smartArt.textStaggeredProcess": "段違いステップ", + "Common.define.smartArt.textStepDownProcess": "ステップ ダウンのプロセス", + "Common.define.smartArt.textStepUpProcess": "ステップアップのプロセス", + "Common.define.smartArt.textSubStepProcess": "サブステップのプロセス", + "Common.define.smartArt.textTabbedArc": "円弧状タブ", + "Common.define.smartArt.textTableHierarchy": "積み木型の階層", + "Common.define.smartArt.textTableList": "表型リスト", + "Common.define.smartArt.textTabList": "タブ付きリスト", + "Common.define.smartArt.textTargetList": "ターゲットのリスト", + "Common.define.smartArt.textTextCycle": "テキスト循環", + "Common.define.smartArt.textThemePictureAccent": "テーマ画像アクセント", + "Common.define.smartArt.textThemePictureAlternatingAccent": "テーマ画像交互のアクセント", + "Common.define.smartArt.textThemePictureGrid": "テーマ画像グリッド", + "Common.define.smartArt.textTitledMatrix": "タイトル付きマトリックス", + "Common.define.smartArt.textTitledPictureAccentList": "画像付き横方向リスト", + "Common.define.smartArt.textTitledPictureBlocks": "タイトル付き画像ブロック", + "Common.define.smartArt.textTitlePictureLineup": "タイトル付き画像ラインアップ", + "Common.define.smartArt.textTrapezoidList": "台形リスト", + "Common.define.smartArt.textUpwardArrow": "上向き矢印", + "Common.define.smartArt.textVaryingWidthList": "可変幅リスト", + "Common.define.smartArt.textVerticalAccentList": "縦方向アクセントのリスト", + "Common.define.smartArt.textVerticalArrowList": "縦方向矢印リスト", + "Common.define.smartArt.textVerticalBendingProcess": "縦型蛇行ステップ", + "Common.define.smartArt.textVerticalBlockList": "縦方向ボックス リスト", + "Common.define.smartArt.textVerticalBoxList": "縦方向リスト", + "Common.define.smartArt.textVerticalBracketList": "縦方向ブラケット リスト", + "Common.define.smartArt.textVerticalBulletList": "縦方向箇条書きリスト", + "Common.define.smartArt.textVerticalChevronList": "縦方向プロセス", + "Common.define.smartArt.textVerticalCircleList": "縦方向円リスト", + "Common.define.smartArt.textVerticalCurvedList": "縦方向カーブのリスト", + "Common.define.smartArt.textVerticalEquation": "縦型の数式", + "Common.define.smartArt.textVerticalPictureAccentList": "縦方向円形画像リスト", + "Common.define.smartArt.textVerticalPictureList": "縦方向画像リスト", + "Common.define.smartArt.textVerticalProcess": "縦方向ステップ", "Common.Translation.textMoreButton": "もっと", "Common.Translation.warnFileLocked": "このファイルは他のアプリで編集されているので、編集できません。", "Common.Translation.warnFileLockedBtnEdit": "コピーを作成する", @@ -280,14 +439,16 @@ "Common.Views.Comments.textViewResolved": "コメントを再開する権限がありません", "Common.Views.Comments.txtEmpty": "ドキュメントにはコメントがありません。", "Common.Views.CopyWarningDialog.textDontShow": "今後このメッセージを表示しない", - "Common.Views.CopyWarningDialog.textMsg": "エディターツールバーのボタンやコンテキストメニューの操作によるコピー、カット、ペーストの動作は、このエディタータブ内でのみ実行されます。

    エディタータブ以外のアプリケーションとの間でコピーまたは貼り付けを行うには、次のキーボードの組み合わせを使用して下さい。", - "Common.Views.CopyWarningDialog.textTitle": "コピー、切り取り、貼り付けの操作", + "Common.Views.CopyWarningDialog.textMsg": "エディターツールバーのボタンやコンテキストメニューの操作によるコピー、カット、ペーストの動作は、このエディタータブ内でのみ実行されます。

    エディタータブ以外のアプリケーションとの間でコピーまたは貼り付けを行うには、次のキーボードの組み合わせを使用して下さい:", + "Common.Views.CopyWarningDialog.textTitle": "コピー,切り取り,貼り付け", "Common.Views.CopyWarningDialog.textToCopy": "コピーのため", "Common.Views.CopyWarningDialog.textToCut": "切り取りのため", "Common.Views.CopyWarningDialog.textToPaste": "貼り付のため", "Common.Views.DocumentAccessDialog.textLoading": "読み込み中...", "Common.Views.DocumentAccessDialog.textTitle": "共有設定", "Common.Views.ExternalDiagramEditor.textTitle": "チャートのエディタ", + "Common.Views.ExternalEditor.textClose": "閉じる", + "Common.Views.ExternalEditor.textSave": "保存&終了", "Common.Views.ExternalMergeEditor.textTitle": "差し込み印刷の宛先", "Common.Views.ExternalOleEditor.textTitle": "スプレッドシートエディター", "Common.Views.Header.labelCoUsersDescr": "ファイルを編集しているユーザー:", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "開始", "Common.Views.Plugins.textStop": "停止", "Common.Views.Protection.hintAddPwd": "パスワードを使用して暗号化する", + "Common.Views.Protection.hintDelPwd": "パスワードを削除する", "Common.Views.Protection.hintPwd": "パスワードを変更か削除する", "Common.Views.Protection.hintSignature": "デジタル署名かデジタル署名行を追加", "Common.Views.Protection.txtAddPwd": "パスワードの追加", @@ -499,9 +661,10 @@ "Common.Views.SignDialog.tipFontName": "フォント名", "Common.Views.SignDialog.tipFontSize": "フォントのサイズ", "Common.Views.SignSettingsDialog.textAllowComment": "署名ダイアログで署名者がコメントを追加できるようにする", - "Common.Views.SignSettingsDialog.textInfoEmail": "メール", - "Common.Views.SignSettingsDialog.textInfoName": "名前", - "Common.Views.SignSettingsDialog.textInfoTitle": "署名者の役職", + "Common.Views.SignSettingsDialog.textDefInstruction": "このドキュメントに署名する前に、署名するコンテンツが正しいことを確認してください。", + "Common.Views.SignSettingsDialog.textInfoEmail": "署名候補者のメールアドレス", + "Common.Views.SignSettingsDialog.textInfoName": "署名候補者", + "Common.Views.SignSettingsDialog.textInfoTitle": "署名候補者の役職", "Common.Views.SignSettingsDialog.textInstructions": "署名者への説明", "Common.Views.SignSettingsDialog.textShowDate": "署名欄に署名日を表示する", "Common.Views.SignSettingsDialog.textTitle": "署名の設定", @@ -552,6 +715,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} は、置換フィールドに有効な特殊文字ではありません。", "DE.Controllers.Main.applyChangesTextText": "変更の読み込み中...", "DE.Controllers.Main.applyChangesTitleText": "変更の読み込み中", + "DE.Controllers.Main.confirmMaxChangesSize": "アクションのサイズがサーバーに設定された制限を超えています。
    「元に戻す」ボタンを押して最後のアクションをキャンセルするか、「続ける」を押してローカルにアクションを維持してください(何も失われないことを確認するために、ファイルをダウンロードするか、その内容をコピーする必要があります)。", "DE.Controllers.Main.convertationTimeoutText": "変換タイムアウトを超過しました。", "DE.Controllers.Main.criticalErrorExtText": "OKボタンを押すとドキュメントリストに戻ることができます。", "DE.Controllers.Main.criticalErrorTitle": "エラー", @@ -578,12 +742,18 @@ "DE.Controllers.Main.errorFilePassProtect": "文書がパスワードで保護されているため開くことができません", "DE.Controllers.Main.errorFileSizeExceed": "ファイルサイズがサーバーで設定された制限を超過しています。
    Documentサーバー管理者に詳細をお問い合わせください。", "DE.Controllers.Main.errorForceSave": "文書の保存中にエラーが発生しました。「名前を付けてダウンロード」オプションを使用して、ファイルのバックアップコピーをコンピューターのハードディスクに保存するか、後で再試行してください。", + "DE.Controllers.Main.errorInconsistentExt": "ファイルを開くときにエラーが発生しました。
    ファイルの内容がファイルの拡張子と一致しません。", + "DE.Controllers.Main.errorInconsistentExtDocx": "ファイルを開くときにエラーが発生しました。
    ファイルの内容はドキュメント (docx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "DE.Controllers.Main.errorInconsistentExtPdf": "ファイルを開くときにエラーが発生しました。
    ファイルの内容は次のいずれかの形式に対応しています: pdf/djvu/xps/oxps が、ファイルの拡張子が一致していません: %1", + "DE.Controllers.Main.errorInconsistentExtPptx": "ファイルを開くときにエラーが発生しました。
    ファイルの内容はプレゼンテーション (pptx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "DE.Controllers.Main.errorInconsistentExtXlsx": "ファイルを開くときにエラーが発生しました。
    ファイルの内容はスプレッドシート (xlsx など) に対応していますが、ファイルの拡張子が一致していません: %1", "DE.Controllers.Main.errorKeyEncrypt": "不明なキーの記述子", "DE.Controllers.Main.errorKeyExpire": "キー記述子は有効期限が切れました", "DE.Controllers.Main.errorLoadingFont": "フォントが読み込まれていません。
    ドキュメントサーバーの管理者に連絡してください。", "DE.Controllers.Main.errorMailMergeLoadFile": "ドキュメントの読み込みに失敗しました。別のファイルを選択してください。", "DE.Controllers.Main.errorMailMergeSaveFile": "結合に失敗しました。", "DE.Controllers.Main.errorNoTOC": "更新する目次がありません。「参考文献」タブから挿入できます", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "入力されたパスワードが正しくありません。
    CAPS LOCKキーがオフになっていることを確認し、大文字を正しく使用するようにしてください。", "DE.Controllers.Main.errorProcessSaveResult": "保存に失敗しました", "DE.Controllers.Main.errorServerVersion": "エディターのバージョンが更新されました。 変更を適用するために、ページが再読み込みされます。", "DE.Controllers.Main.errorSessionAbsolute": "ドキュメント編集セッションが終了しました。 ページを再度読み込みしてください。", @@ -640,6 +810,7 @@ "DE.Controllers.Main.textClose": "閉じる", "DE.Controllers.Main.textCloseTip": "クリックでヒントを閉じる", "DE.Controllers.Main.textContactUs": "営業部に連絡する", + "DE.Controllers.Main.textContinue": "続ける", "DE.Controllers.Main.textConvertEquation": "この数式は、サポートされなくなった古いバージョンの数式エディタで作成されました。 編集するには、方程式をOffice Math ML形式に変換します。
    今すぐ変換しますか?", "DE.Controllers.Main.textCustomLoader": "ライセンス条項により、ローダーを変更する権利がないことにご注意ください。
    見積もりについては、弊社営業部門にお問い合わせください。", "DE.Controllers.Main.textDisconnect": "接続が切断されました", @@ -660,6 +831,7 @@ "DE.Controllers.Main.textStrict": "厳格モード", "DE.Controllers.Main.textTryUndoRedo": "高速共同編集モードでは、元に戻す/やり直し機能は無効になります。
    「厳格モード」ボタンをクリックすると、他のユーザーの干渉を受けずにファイルを編集し、保存後に変更内容を送信する厳格共同編集モードに切り替わります。共同編集モードの切り替えは、エディタの詳細設定を使用して行うことができます。", "DE.Controllers.Main.textTryUndoRedoWarn": "高速共同編集モードでは、元に戻す/やり直し機能が無効になります。", + "DE.Controllers.Main.textUndo": "元に戻す", "DE.Controllers.Main.titleLicenseExp": "ライセンスの有効期限が切れています", "DE.Controllers.Main.titleServerVersion": "編集者が更新されました", "DE.Controllers.Main.titleUpdateVersion": "バージョンが変更されました", @@ -1329,16 +1501,31 @@ "DE.Views.CellsAddDialog.textRow": "行", "DE.Views.CellsAddDialog.textTitle": "複数を挿入する", "DE.Views.CellsAddDialog.textUp": "カーソルより上", + "DE.Views.ChartSettings.text3dDepth": "深さ(ベースに対する割合)", + "DE.Views.ChartSettings.text3dHeight": "高さ(ベースに対する割合)", + "DE.Views.ChartSettings.text3dRotation": "3D回転", "DE.Views.ChartSettings.textAdvanced": "詳細設定を表示", + "DE.Views.ChartSettings.textAutoscale": "自動スケーリング", "DE.Views.ChartSettings.textChartType": "グラフの種類の変更", + "DE.Views.ChartSettings.textDefault": "デフォルト回転", + "DE.Views.ChartSettings.textDown": "下", "DE.Views.ChartSettings.textEditData": "データの編集", "DE.Views.ChartSettings.textHeight": "高さ", + "DE.Views.ChartSettings.textLeft": "左", + "DE.Views.ChartSettings.textNarrow": "狭角", "DE.Views.ChartSettings.textOriginalSize": "実際のサイズ", + "DE.Views.ChartSettings.textPerspective": "分析観点", + "DE.Views.ChartSettings.textRight": "右", + "DE.Views.ChartSettings.textRightAngle": "軸の直交", "DE.Views.ChartSettings.textSize": "サイズ", "DE.Views.ChartSettings.textStyle": "スタイル", "DE.Views.ChartSettings.textUndock": "パネルからドッキング解除", + "DE.Views.ChartSettings.textUp": "上", + "DE.Views.ChartSettings.textWiden": "広角", "DE.Views.ChartSettings.textWidth": "幅", "DE.Views.ChartSettings.textWrap": "折り返しの種類と配置", + "DE.Views.ChartSettings.textX": "X 回転", + "DE.Views.ChartSettings.textY": "Y 回転", "DE.Views.ChartSettings.txtBehind": "テキストの背後に", "DE.Views.ChartSettings.txtInFront": "テキストの前に", "DE.Views.ChartSettings.txtInline": "テキストに沿って", @@ -1428,14 +1615,24 @@ "DE.Views.DateTimeDialog.textLang": "言語", "DE.Views.DateTimeDialog.textUpdate": "自動的に更新", "DE.Views.DateTimeDialog.txtTitle": "日付&時刻", + "DE.Views.DocProtection.hintProtectDoc": "文書を保護する", + "DE.Views.DocProtection.txtDocProtectedComment": "文書は保護されています。
    この文書には、コメントしか挿入できません。", + "DE.Views.DocProtection.txtDocProtectedForms": "文書は保護されています。
    この文書では、フォームにのみ記入することができます。", + "DE.Views.DocProtection.txtDocProtectedTrack": "文書は保護されています。
    この文書を編集することは可能ですが、すべての変更は追跡されます。", + "DE.Views.DocProtection.txtDocProtectedView": "ドキュメントが保護されています。
    このドキュメントは閲覧のみ可能です。", + "DE.Views.DocProtection.txtDocUnlockDescription": "パスワードを入力すると、文書の保護が解除されます", + "DE.Views.DocProtection.txtProtectDoc": "文書を保護する", "DE.Views.DocumentHolder.aboveText": "上", "DE.Views.DocumentHolder.addCommentText": "コメントの追加", "DE.Views.DocumentHolder.advancedDropCapText": "ドロップキャップの設定", + "DE.Views.DocumentHolder.advancedEquationText": "数式設定", "DE.Views.DocumentHolder.advancedFrameText": "フレームの詳細設定", "DE.Views.DocumentHolder.advancedParagraphText": "段落の詳細設定", "DE.Views.DocumentHolder.advancedTableText": "テーブルの詳細設定", "DE.Views.DocumentHolder.advancedText": "詳細設定", "DE.Views.DocumentHolder.alignmentText": "配置", + "DE.Views.DocumentHolder.allLinearText": "すべて - 線形", + "DE.Views.DocumentHolder.allProfText": "すべて - プロフェッショナル", "DE.Views.DocumentHolder.belowText": "下", "DE.Views.DocumentHolder.breakBeforeText": "前に改ページ", "DE.Views.DocumentHolder.bulletsText": "箇条書きと段落番号", @@ -1444,6 +1641,8 @@ "DE.Views.DocumentHolder.centerText": "中央揃え", "DE.Views.DocumentHolder.chartText": "チャートの詳細設定", "DE.Views.DocumentHolder.columnText": "列", + "DE.Views.DocumentHolder.currLinearText": "現在 - 線形", + "DE.Views.DocumentHolder.currProfText": "現在 - プロフェッショナル", "DE.Views.DocumentHolder.deleteColumnText": "列の削除", "DE.Views.DocumentHolder.deleteRowText": "行の削除", "DE.Views.DocumentHolder.deleteTableText": "表の削除", @@ -1456,6 +1655,7 @@ "DE.Views.DocumentHolder.editFooterText": "フッターの編集", "DE.Views.DocumentHolder.editHeaderText": "ヘッダーの編集", "DE.Views.DocumentHolder.editHyperlinkText": "ハイパーリンクの編集", + "DE.Views.DocumentHolder.eqToInlineText": "内臓に切り替える", "DE.Views.DocumentHolder.guestText": "ゲスト", "DE.Views.DocumentHolder.hyperlinkText": "ハイパーリンク", "DE.Views.DocumentHolder.ignoreAllSpellText": "全てを無視する", @@ -1470,6 +1670,7 @@ "DE.Views.DocumentHolder.insertText": "挿入", "DE.Views.DocumentHolder.keepLinesText": "段落を分割しない", "DE.Views.DocumentHolder.langText": "言語の選択", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "左", "DE.Views.DocumentHolder.loadSpellText": "バリエーションの読み込み中...", "DE.Views.DocumentHolder.mergeCellsText": "セルの結合", @@ -1657,6 +1858,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "テキストの下のバー", "DE.Views.DocumentHolder.txtUngroup": "グループ化解除", "DE.Views.DocumentHolder.txtWarnUrl": "このリンクをクリックすると、お使いの端末やデータに悪影響を与える可能性があります。
    本当に続けてよろしいですか?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "%1スタイルの更新", "DE.Views.DocumentHolder.vertAlignText": "垂直方向の配置", "DE.Views.DropcapSettingsAdvanced.strBorders": "罫線と塗りつぶし", @@ -1753,6 +1955,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "統計", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "件名", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "記号", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "タグ", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "タイトル", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "アップロード済み", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "単語", @@ -2066,6 +2269,7 @@ "DE.Views.LeftMenu.tipComments": "コメント", "DE.Views.LeftMenu.tipNavigation": "ナビゲーション", "DE.Views.LeftMenu.tipOutline": "見出し", + "DE.Views.LeftMenu.tipPageThumbnails": "ページサムネイル", "DE.Views.LeftMenu.tipPlugins": "プラグイン", "DE.Views.LeftMenu.tipSearch": "検索", "DE.Views.LeftMenu.tipSupport": "フィードバック&サポート", @@ -2373,6 +2577,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "上罫線だけを設定", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "自動", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "罫線なし", + "DE.Views.ProtectDialog.textComments": "コメント", + "DE.Views.ProtectDialog.textForms": "フォームの入力", + "DE.Views.ProtectDialog.textReview": "変更履歴", + "DE.Views.ProtectDialog.textView": "変更不可 (閲覧のみ)", + "DE.Views.ProtectDialog.txtAllow": "ユーザーに許可する編集の種類を指定する", + "DE.Views.ProtectDialog.txtIncorrectPwd": "先に入力したパスワードと一致しません。", + "DE.Views.ProtectDialog.txtOptional": "任意", + "DE.Views.ProtectDialog.txtPassword": "パスワード", + "DE.Views.ProtectDialog.txtProtect": "保護する", + "DE.Views.ProtectDialog.txtRepeat": "パスワードを再入力", + "DE.Views.ProtectDialog.txtTitle": "保護する", + "DE.Views.ProtectDialog.txtWarning": "ご注意:パスワードを紛失したり、忘れたりした場合は、復旧できません。安全な場所に保管してください。", "DE.Views.RightMenu.txtChartSettings": "チャート設定", "DE.Views.RightMenu.txtFormSettings": "フォーム設定", "DE.Views.RightMenu.txtHeaderFooterSettings": "ヘッダーとフッターの設定", @@ -2563,12 +2779,20 @@ "DE.Views.TableSettings.tipOuter": "外枠の罫線だけを設定", "DE.Views.TableSettings.tipRight": "外部の罫線(右)だけを設定", "DE.Views.TableSettings.tipTop": "外部の罫線(上)だけを設定", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "境界&線付き表", + "DE.Views.TableSettings.txtGroupTable_Custom": "カスタム", + "DE.Views.TableSettings.txtGroupTable_Grid": "グリッド テーブル", + "DE.Views.TableSettings.txtGroupTable_List": "リストの表", + "DE.Views.TableSettings.txtGroupTable_Plain": "標準の表", "DE.Views.TableSettings.txtNoBorders": "罫線なし", "DE.Views.TableSettings.txtTable_Accent": "アクセント", + "DE.Views.TableSettings.txtTable_Bordered": "境界付き", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "境界&線付き", "DE.Views.TableSettings.txtTable_Colorful": "カラフル", "DE.Views.TableSettings.txtTable_Dark": "暗い", "DE.Views.TableSettings.txtTable_GridTable": "グリッドテーブル", "DE.Views.TableSettings.txtTable_Light": "明るい", + "DE.Views.TableSettings.txtTable_Lined": "線付き", "DE.Views.TableSettings.txtTable_ListTable": "リスト表", "DE.Views.TableSettings.txtTable_PlainTable": "通常のテーブル", "DE.Views.TableSettings.txtTable_TableGrid": "テーブルの枠線", @@ -2703,6 +2927,7 @@ "DE.Views.Toolbar.capBtnInsImage": "画像", "DE.Views.Toolbar.capBtnInsPagebreak": "区切り", "DE.Views.Toolbar.capBtnInsShape": "図形", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "記号", "DE.Views.Toolbar.capBtnInsTable": "テーブル", "DE.Views.Toolbar.capBtnInsTextart": "テキストアート", @@ -2849,13 +3074,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "インデントを増やす", "DE.Views.Toolbar.tipInsertChart": "グラフの挿入", "DE.Views.Toolbar.tipInsertEquation": "数式の挿入", + "DE.Views.Toolbar.tipInsertHorizontalText": "横書きテキストボックスの挿入", "DE.Views.Toolbar.tipInsertImage": "画像の挿入", "DE.Views.Toolbar.tipInsertNum": "ページ番号の挿入", "DE.Views.Toolbar.tipInsertShape": "オートシェイプの挿入", + "DE.Views.Toolbar.tipInsertSmartArt": "SmartArtの挿入", "DE.Views.Toolbar.tipInsertSymbol": "記号の挿入", "DE.Views.Toolbar.tipInsertTable": "表の挿入", "DE.Views.Toolbar.tipInsertText": "テキストボックスの挿入", "DE.Views.Toolbar.tipInsertTextArt": "テキストアートの挿入", + "DE.Views.Toolbar.tipInsertVerticalText": "縦書きテキストボックスの挿入", "DE.Views.Toolbar.tipLineNumbers": "行番号を表示する", "DE.Views.Toolbar.tipLineSpace": "段落の行間", "DE.Views.Toolbar.tipMailRecepients": "差し込み印刷", @@ -2927,8 +3155,10 @@ "DE.Views.ViewTab.textFitToPage": "ページに合わせる", "DE.Views.ViewTab.textFitToWidth": "幅に合わせる", "DE.Views.ViewTab.textInterfaceTheme": "インターフェイスのテーマ", + "DE.Views.ViewTab.textLeftMenu": "左パネル", "DE.Views.ViewTab.textNavigation": "ナビゲーション", "DE.Views.ViewTab.textOutline": "見出し", + "DE.Views.ViewTab.textRightMenu": "右パネル", "DE.Views.ViewTab.textRulers": "ルーラー", "DE.Views.ViewTab.textStatusBar": "ステータスバー", "DE.Views.ViewTab.textZoom": "ズーム", diff --git a/apps/documenteditor/main/locale/ko.json b/apps/documenteditor/main/locale/ko.json index adb40bf00..2fc8ea7f9 100644 --- a/apps/documenteditor/main/locale/ko.json +++ b/apps/documenteditor/main/locale/ko.json @@ -1379,6 +1379,8 @@ "DE.Views.DateTimeDialog.textLang": "언어", "DE.Views.DateTimeDialog.textUpdate": "자동 업데이트", "DE.Views.DateTimeDialog.txtTitle": "날짜 및 시간", + "DE.Views.DocProtection.hintProtectDoc": "문서 보호", + "DE.Views.DocProtection.txtProtectDoc": "문서 보호", "DE.Views.DocumentHolder.aboveText": "위", "DE.Views.DocumentHolder.addCommentText": "주석 추가", "DE.Views.DocumentHolder.advancedDropCapText": "드롭 캡 설정", @@ -2003,6 +2005,7 @@ "DE.Views.LineNumbersDialog.textStartAt": "시작", "DE.Views.LineNumbersDialog.textTitle": "행번호", "DE.Views.LineNumbersDialog.txtAutoText": "자동", + "DE.Views.Links.capBtnAddText": "텍스트추가", "DE.Views.Links.capBtnBookmarks": "즐겨찾기", "DE.Views.Links.capBtnCaption": "참조", "DE.Views.Links.capBtnContentsUpdate": "표 업데이트", @@ -2258,6 +2261,8 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "위쪽 테두리", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "자동", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "테두리 없음", + "DE.Views.ProtectDialog.txtProtect": "보호", + "DE.Views.ProtectDialog.txtTitle": "보호", "DE.Views.RightMenu.txtChartSettings": "차트 설정", "DE.Views.RightMenu.txtFormSettings": "폼 설정", "DE.Views.RightMenu.txtHeaderFooterSettings": "머리글 및 바닥 글 설정", diff --git a/apps/documenteditor/main/locale/pl.json b/apps/documenteditor/main/locale/pl.json index 0e1986c03..da0465fe3 100644 --- a/apps/documenteditor/main/locale/pl.json +++ b/apps/documenteditor/main/locale/pl.json @@ -1405,6 +1405,8 @@ "DE.Views.DateTimeDialog.textLang": "Język", "DE.Views.DateTimeDialog.textUpdate": "Aktualizuj automatycznie", "DE.Views.DateTimeDialog.txtTitle": "Data i czas", + "DE.Views.DocProtection.hintProtectDoc": "Chroń dokument", + "DE.Views.DocProtection.txtProtectDoc": "Chroń dokument", "DE.Views.DocumentHolder.aboveText": "Powyżej", "DE.Views.DocumentHolder.addCommentText": "Dodaj komentarz", "DE.Views.DocumentHolder.advancedDropCapText": "Inicjały Ustawienia", diff --git a/apps/documenteditor/main/locale/pt-pt.json b/apps/documenteditor/main/locale/pt-pt.json index 5dfafa36a..d0d1dec5e 100644 --- a/apps/documenteditor/main/locale/pt-pt.json +++ b/apps/documenteditor/main/locale/pt-pt.json @@ -125,6 +125,11 @@ "Common.define.chartData.textScatterSmoothMarker": "Dispersão com Linhas Suaves e Marcadores", "Common.define.chartData.textStock": "Gráfico de ações", "Common.define.chartData.textSurface": "Superfície", + "Common.define.smartArt.textEquation": "Equação", + "Common.define.smartArt.textFunnel": "Funil", + "Common.define.smartArt.textList": "Lista", + "Common.define.smartArt.textOther": "Outro", + "Common.define.smartArt.textPicture": "Imagem", "Common.Translation.textMoreButton": "Mais", "Common.Translation.warnFileLocked": "Não pode editar o ficheiro porque este está a ser editado por outra aplicação.", "Common.Translation.warnFileLockedBtnEdit": "Criar uma cópia", @@ -503,9 +508,9 @@ "Common.Views.SignDialog.tipFontSize": "Tamanho do tipo de letra", "Common.Views.SignSettingsDialog.textAllowComment": "Permitir ao signatário inserir comentários no diálogo de assinatura", "Common.Views.SignSettingsDialog.textDefInstruction": "Antes de assinar este documento, verifique se o conteúdo que está a assinar está correto.", - "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", - "Common.Views.SignSettingsDialog.textInfoName": "Nome", - "Common.Views.SignSettingsDialog.textInfoTitle": "Título do Assinante", + "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail do assinante sugerido", + "Common.Views.SignSettingsDialog.textInfoName": "Assinante sugerido", + "Common.Views.SignSettingsDialog.textInfoTitle": "Título do assinante", "Common.Views.SignSettingsDialog.textInstructions": "Instruções para o assinante", "Common.Views.SignSettingsDialog.textShowDate": "Mostrar data na linha de assinatura", "Common.Views.SignSettingsDialog.textTitle": "Definições de Assinatura", @@ -588,6 +593,7 @@ "DE.Controllers.Main.errorMailMergeLoadFile": "Não foi possível carregar o documento. Por favor escolha outro ficheiro.", "DE.Controllers.Main.errorMailMergeSaveFile": "Falha ao unir.", "DE.Controllers.Main.errorNoTOC": "Não existem alterações a fazer no índice remissivo. Pode introduzir alterações no separador Referências.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "A palavra-passe que introduziu não está correta.
    Verifique se a tecla CAPS LOCK está desligada e não se esqueça de utilizar a capitalização correta.", "DE.Controllers.Main.errorProcessSaveResult": "Falha ao guardar.", "DE.Controllers.Main.errorServerVersion": "A versão do editor foi atualizada. A página será recarregada para aplicar as alterações.", "DE.Controllers.Main.errorSessionAbsolute": "A sessão de edição expirou. Tente recarregar a página.", @@ -644,6 +650,7 @@ "DE.Controllers.Main.textClose": "Fechar", "DE.Controllers.Main.textCloseTip": "Clique para fechar a dica", "DE.Controllers.Main.textContactUs": "Contacte a equipa comercial", + "DE.Controllers.Main.textContinue": "Continuar", "DE.Controllers.Main.textConvertEquation": "Esta equação foi criada com uma versão anterior da aplicação e já não é suportada. Para a editar, tem que converter a equação para o formato Office Math ML.
    Converter agora?", "DE.Controllers.Main.textCustomLoader": "Tenha em conta de que, de acordo com os termos da licença, não tem permissões para alterar o carregador.
    Por favor contacte a equipa comercial.", "DE.Controllers.Main.textDisconnect": "A ligação está perdida", @@ -664,6 +671,7 @@ "DE.Controllers.Main.textStrict": "Modo estrito", "DE.Controllers.Main.textTryUndoRedo": "As funções Desfazer/Refazer foram desativadas para se poder co-editar o documento.
    Clique no botão 'Modo estrito' para ativar este modo de edição e editar o ficheiro sem ser incomodado por outros utilizadores enviando apenas as suas alterações assim que terminar e guardar. Pode alternar entre modos de co-edição através das definições avançadas.", "DE.Controllers.Main.textTryUndoRedoWarn": "As funções Desfazer/Refazer estão desativadas no modo de co-edição rápida.", + "DE.Controllers.Main.textUndo": "Desfazer", "DE.Controllers.Main.titleLicenseExp": "Licença expirada", "DE.Controllers.Main.titleServerVersion": "Editor atualizado", "DE.Controllers.Main.titleUpdateVersion": "Versão alterada", @@ -940,7 +948,7 @@ "DE.Controllers.Search.textReplaceSuccess": "A pesquisa foi concluída. {0} ocorrências foram substituídas", "DE.Controllers.Search.warnReplaceString": "{0} não é um carácter especial válido para a janela Substituir com.", "DE.Controllers.Statusbar.textDisconnect": "Sem ligação
    A tentar ligar. Por favor, verifique as definições da ligação.", - "DE.Controllers.Statusbar.textHasChanges": "Novas alterações foram encontradas", + "DE.Controllers.Statusbar.textHasChanges": "Novas alterações foram rastreadas", "DE.Controllers.Statusbar.textSetTrackChanges": "Está no modo Registar Alterações", "DE.Controllers.Statusbar.textTrackChanges": "The document is opened with the Track Changes mode enabled", "DE.Controllers.Statusbar.tipReview": "Rastrear alterações", @@ -1446,7 +1454,14 @@ "DE.Views.DateTimeDialog.textFormat": "Formatos", "DE.Views.DateTimeDialog.textLang": "Idioma", "DE.Views.DateTimeDialog.textUpdate": "Atualizar automaticamente", - "DE.Views.DateTimeDialog.txtTitle": "Data e Hora", + "DE.Views.DateTimeDialog.txtTitle": "Data e hora", + "DE.Views.DocProtection.hintProtectDoc": "Proteger o documento", + "DE.Views.DocProtection.txtDocProtectedComment": "O documento está protegido.
    Apenas pode inserir comentários a este documento.", + "DE.Views.DocProtection.txtDocProtectedForms": "O documento está protegido.
    Apenas pode preencher formulários neste documento.", + "DE.Views.DocProtection.txtDocProtectedTrack": "O documento está protegido.
    Pode editar este documento, mas todas as alterações serão rastreadas.", + "DE.Views.DocProtection.txtDocProtectedView": "O documento está protegido.
    Apenas pode ver este documento.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Introduzir uma palavra-passe para desproteger documento", + "DE.Views.DocProtection.txtProtectDoc": "Proteger o documento", "DE.Views.DocumentHolder.aboveText": "Acima", "DE.Views.DocumentHolder.addCommentText": "Adicionar comentário", "DE.Views.DocumentHolder.advancedDropCapText": "Definições de capitulares", @@ -1780,6 +1795,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Estatísticas", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Assunto", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Símbolos", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Tags", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Título", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Carregado", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Palavras", @@ -2401,6 +2417,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Definir apenas contorno superior", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automático", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Sem contornos", + "DE.Views.ProtectDialog.textComments": "Comentários", + "DE.Views.ProtectDialog.textForms": "Preenchimento de formulários", + "DE.Views.ProtectDialog.textReview": "Alterações rastreadas", + "DE.Views.ProtectDialog.textView": "Sem alterações (apenas leitura)", + "DE.Views.ProtectDialog.txtAllow": "Permitir apenas este tipo de edição no documento", + "DE.Views.ProtectDialog.txtIncorrectPwd": "A palavra-passe de confirmação não é idêntica", + "DE.Views.ProtectDialog.txtOptional": "opcional", + "DE.Views.ProtectDialog.txtPassword": "Palavra-passe", + "DE.Views.ProtectDialog.txtProtect": "Proteger", + "DE.Views.ProtectDialog.txtRepeat": "Repetir palavra-passe", + "DE.Views.ProtectDialog.txtTitle": "Proteger", + "DE.Views.ProtectDialog.txtWarning": "Aviso: se perder ou esquecer a palavra-passe, não será possível recuperá-la. Guarde-a num local seguro.", "DE.Views.RightMenu.txtChartSettings": "Definições de gráfico", "DE.Views.RightMenu.txtFormSettings": "Definições de formulários", "DE.Views.RightMenu.txtHeaderFooterSettings": "Definições de cabeçalho/rodapé", @@ -2730,7 +2758,7 @@ "DE.Views.Toolbar.capBtnBlankPage": "Página vazia", "DE.Views.Toolbar.capBtnColumns": "Colunas", "DE.Views.Toolbar.capBtnComment": "Comentário", - "DE.Views.Toolbar.capBtnDateTime": "Data e Hora", + "DE.Views.Toolbar.capBtnDateTime": "Data e hora", "DE.Views.Toolbar.capBtnInsChart": "Gráfico", "DE.Views.Toolbar.capBtnInsControls": "Controlos de conteúdo", "DE.Views.Toolbar.capBtnInsDropcap": "Letra capitular", @@ -2739,6 +2767,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Imagem", "DE.Views.Toolbar.capBtnInsPagebreak": "Quebras", "DE.Views.Toolbar.capBtnInsShape": "Forma", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Símbolo", "DE.Views.Toolbar.capBtnInsTable": "Tabela", "DE.Views.Toolbar.capBtnInsTextart": "Lágrima", @@ -2885,6 +2914,7 @@ "DE.Views.Toolbar.tipIncPrLeft": "Aumentar recuo", "DE.Views.Toolbar.tipInsertChart": "Inserir gráfico", "DE.Views.Toolbar.tipInsertEquation": "Inserir equação", + "DE.Views.Toolbar.tipInsertHorizontalText": "Inserir caixa de texto horizontal", "DE.Views.Toolbar.tipInsertImage": "Inserir imagem", "DE.Views.Toolbar.tipInsertNum": "Inserir número da página", "DE.Views.Toolbar.tipInsertShape": "Inserir forma automática", @@ -2892,6 +2922,7 @@ "DE.Views.Toolbar.tipInsertTable": "Inserir tabela", "DE.Views.Toolbar.tipInsertText": "Inserir caixa de texto", "DE.Views.Toolbar.tipInsertTextArt": "Inserir arte de texto", + "DE.Views.Toolbar.tipInsertVerticalText": "Inserir caixa de texto vertical", "DE.Views.Toolbar.tipLineNumbers": "Mostrar número das linhas", "DE.Views.Toolbar.tipLineSpace": "Espaçamento entre linhas do parágrafo", "DE.Views.Toolbar.tipMailRecepients": "Select Recepients", @@ -2963,6 +2994,7 @@ "DE.Views.ViewTab.textFitToPage": "Ajustar à página", "DE.Views.ViewTab.textFitToWidth": "Ajustar à Largura", "DE.Views.ViewTab.textInterfaceTheme": "Tema da interface", + "DE.Views.ViewTab.textLeftMenu": "Painel esquerdo", "DE.Views.ViewTab.textNavigation": "Navegação", "DE.Views.ViewTab.textOutline": "Títulos", "DE.Views.ViewTab.textRulers": "Réguas", diff --git a/apps/documenteditor/main/locale/pt.json b/apps/documenteditor/main/locale/pt.json index 4a0af3d0d..81f60175f 100644 --- a/apps/documenteditor/main/locale/pt.json +++ b/apps/documenteditor/main/locale/pt.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "Dispersão com linhas suaves e marcadores", "Common.define.chartData.textStock": "Gráfico de ações", "Common.define.chartData.textSurface": "Superfície", + "Common.define.smartArt.textAccentedPicture": "Imagem com Ênfase", + "Common.define.smartArt.textAccentProcess": "Processo em Destaque", + "Common.define.smartArt.textAlternatingFlow": "Fluxo alternado", + "Common.define.smartArt.textAlternatingHexagons": "Hexágonos alternados", + "Common.define.smartArt.textAlternatingPictureBlocks": "Blocos de imagem alternados", + "Common.define.smartArt.textAlternatingPictureCircles": "Círculos de imagens alternadas", + "Common.define.smartArt.textArchitectureLayout": "Layout de arquitetura", + "Common.define.smartArt.textArrowRibbon": "Seta em Forma de Fita", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Processo de acentuação da imagem ascendente", + "Common.define.smartArt.textBalance": "Saldo", + "Common.define.smartArt.textBasicBendingProcess": "Processo Básico de Dobragem", + "Common.define.smartArt.textBasicBlockList": "Lista básica de blocos", + "Common.define.smartArt.textBasicChevronProcess": "Processo Básico em Divisas", + "Common.define.smartArt.textBasicCycle": "Ciclo Básico", + "Common.define.smartArt.textBasicMatrix": "Matriz Básica", + "Common.define.smartArt.textBasicPie": "Torta Básica", + "Common.define.smartArt.textBasicProcess": "Processo Básico", + "Common.define.smartArt.textBasicPyramid": "Pirâmide Básica", + "Common.define.smartArt.textBasicRadial": "Radial Básico", + "Common.define.smartArt.textBasicTarget": "Alvo Básico", + "Common.define.smartArt.textBasicTimeline": "Linha do tempo básica", + "Common.define.smartArt.textBasicVenn": "Venn básico", + "Common.define.smartArt.textBendingPictureAccentList": "Lista de Acentos de Imagem Dobrada", + "Common.define.smartArt.textBendingPictureBlocks": "Dobrar Blocos de Imagem", + "Common.define.smartArt.textBendingPictureCaption": "Dobrando a legenda da imagem", + "Common.define.smartArt.textBendingPictureCaptionList": "Lista de legendas de imagens dobradas", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Dobrando o Texto Semitransparente da Imagem", + "Common.define.smartArt.textBlockCycle": "Ciclo de bloco", + "Common.define.smartArt.textBubblePictureList": "Lista de imagens de bolhas", + "Common.define.smartArt.textCaptionedPictures": "Imagens legendadas", + "Common.define.smartArt.textChevronAccentProcess": "Processo de Ênfase em Divisas", + "Common.define.smartArt.textChevronList": "Lista de Divisas", + "Common.define.smartArt.textCircleAccentTimeline": "Linha do tempo de destaque do círculo", + "Common.define.smartArt.textCircleArrowProcess": "Processo de seta circular", + "Common.define.smartArt.textCirclePictureHierarchy": "Hierarquia de imagem do círculo", + "Common.define.smartArt.textCircleProcess": "Processo Círculo", + "Common.define.smartArt.textCircleRelationship": "Relacionamento do Círculo", + "Common.define.smartArt.textCircularBendingProcess": "Processo de dobra circular", + "Common.define.smartArt.textCircularPictureCallout": "Texto explicativo de imagem circular", + "Common.define.smartArt.textClosedChevronProcess": "Processo Fechado em Divisas", + "Common.define.smartArt.textContinuousArrowProcess": "Processo de Seta Contínua", + "Common.define.smartArt.textContinuousBlockProcess": "Processo de Bloco Contínuo", + "Common.define.smartArt.textContinuousCycle": "Ciclo Contínuo", + "Common.define.smartArt.textContinuousPictureList": "Lista de Imagens Contínua", + "Common.define.smartArt.textConvergingArrows": "Setas convergentes", + "Common.define.smartArt.textConvergingRadial": "Radial convergente", + "Common.define.smartArt.textConvergingText": "Texto convergente", + "Common.define.smartArt.textCounterbalanceArrows": "Setas de contrapeso", + "Common.define.smartArt.textCycle": "Ciclo", + "Common.define.smartArt.textCycleMatrix": "Matriz de Ciclo", + "Common.define.smartArt.textDescendingBlockList": "Lista de Bloqueios Descendentes", + "Common.define.smartArt.textDescendingProcess": "Processo descendente", + "Common.define.smartArt.textDetailedProcess": "Processo Detalhado", + "Common.define.smartArt.textDivergingArrows": "Flechas divergentes", + "Common.define.smartArt.textDivergingRadial": "Radial divergente", + "Common.define.smartArt.textEquation": "Equação", + "Common.define.smartArt.textFramedTextPicture": "Imagem de texto emoldurada", + "Common.define.smartArt.textFunnel": "Funil", + "Common.define.smartArt.textGear": "Engrenagem", + "Common.define.smartArt.textGridMatrix": "Matriz de grade", + "Common.define.smartArt.textGroupedList": "Lista Agrupada", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Organograma de meio círculo", + "Common.define.smartArt.textHexagonCluster": "Conjunto Hexagonal", + "Common.define.smartArt.textHexagonRadial": "Radial Hexágono", + "Common.define.smartArt.textHierarchy": "Hierarquia", + "Common.define.smartArt.textHierarchyList": "Lista de hierarquia", + "Common.define.smartArt.textHorizontalBulletList": "Lista de marcadores horizontais", + "Common.define.smartArt.textHorizontalHierarchy": "Hierarquia Horizontal", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Hierarquia Horizontal Rotulada", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Hierarquia horizontal multinível", + "Common.define.smartArt.textHorizontalOrganizationChart": "Organograma Horizontal", + "Common.define.smartArt.textHorizontalPictureList": "Lista de imagens horizontais", + "Common.define.smartArt.textIncreasingArrowProcess": "Processo de seta crescente", + "Common.define.smartArt.textIncreasingCircleProcess": "Aumentando o Processo do Círculo", + "Common.define.smartArt.textInterconnectedBlockProcess": "Processo de bloco interconectado", + "Common.define.smartArt.textInterconnectedRings": "Anéis Interconectados", + "Common.define.smartArt.textInvertedPyramid": "Pirâmide invertida", + "Common.define.smartArt.textLabeledHierarchy": "Hierarquia rotulada", + "Common.define.smartArt.textLinearVenn": "Venn Linear", + "Common.define.smartArt.textLinedList": "Lista alinhada", + "Common.define.smartArt.textList": "Lista", + "Common.define.smartArt.textMatrix": "Matriz", + "Common.define.smartArt.textMultidirectionalCycle": "Ciclo multidirecional", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Organograma de Nome e Título", + "Common.define.smartArt.textNestedTarget": "Alvo Aninhado", + "Common.define.smartArt.textNondirectionalCycle": "Ciclo Não Direcional", + "Common.define.smartArt.textOpposingArrows": "Setas Opostas", + "Common.define.smartArt.textOpposingIdeas": "Ideias opostas", + "Common.define.smartArt.textOrganizationChart": "Organograma", + "Common.define.smartArt.textOther": "Outro", + "Common.define.smartArt.textPhasedProcess": "Processo em fases", + "Common.define.smartArt.textPicture": "Imagem", + "Common.define.smartArt.textPictureAccentBlocks": "Blocos de destaque de imagem", + "Common.define.smartArt.textPictureAccentList": "Lista de destaques da imagem", + "Common.define.smartArt.textPictureAccentProcess": "Processo de destaque da imagem", + "Common.define.smartArt.textPictureCaptionList": "Lista de legendas de imagens", + "Common.define.smartArt.textPictureFrame": "Porta-retrato", + "Common.define.smartArt.textPictureGrid": "Grade de imagens", + "Common.define.smartArt.textPictureLineup": "Alinhamento de imagens", + "Common.define.smartArt.textPictureOrganizationChart": "Organograma de imagens", + "Common.define.smartArt.textPictureStrips": "Tiras de imagem", + "Common.define.smartArt.textPieProcess": "Processo em Pizza", + "Common.define.smartArt.textPlusAndMinus": "Mais e menos", + "Common.define.smartArt.textProcess": "Processo", + "Common.define.smartArt.textProcessArrows": "Setas de processo", + "Common.define.smartArt.textProcessList": "Lista de processos", + "Common.define.smartArt.textPyramid": "Pirâmide", + "Common.define.smartArt.textPyramidList": "Lista de pirâmides", + "Common.define.smartArt.textRadialCluster": "Aglomerado Radial", + "Common.define.smartArt.textRadialCycle": "Ciclo radial", + "Common.define.smartArt.textRadialList": "Lista radial", + "Common.define.smartArt.textRadialPictureList": "Lista de imagens radiais", + "Common.define.smartArt.textRadialVenn": "Venn Radial", + "Common.define.smartArt.textRandomToResultProcess": "Processo aleatório para resultado", + "Common.define.smartArt.textRelationship": "Relação", + "Common.define.smartArt.textRepeatingBendingProcess": "Repetindo o processo de dobra", + "Common.define.smartArt.textReverseList": "Lista reversa", + "Common.define.smartArt.textSegmentedCycle": "Ciclo Segmentado", + "Common.define.smartArt.textSegmentedProcess": "Processo segmentado", + "Common.define.smartArt.textSegmentedPyramid": "Pirâmide segmentada", + "Common.define.smartArt.textSnapshotPictureList": "Lista de fotos instantâneas", + "Common.define.smartArt.textSpiralPicture": "Imagem em espiral", + "Common.define.smartArt.textSquareAccentList": "Lista de Acentos Quadrados", + "Common.define.smartArt.textStackedList": "Lista empilhada", + "Common.define.smartArt.textStackedVenn": "Venn Empilhado", + "Common.define.smartArt.textStaggeredProcess": "Processo escalonado", + "Common.define.smartArt.textStepDownProcess": "Processo de redução", + "Common.define.smartArt.textStepUpProcess": "Processo de intensificação", + "Common.define.smartArt.textSubStepProcess": "Processo de subetapas", + "Common.define.smartArt.textTabbedArc": "Arco com abas", + "Common.define.smartArt.textTableHierarchy": "Hierarquia da Tabela", + "Common.define.smartArt.textTableList": "Lista de Tabelas", + "Common.define.smartArt.textTabList": "Lista de guias", + "Common.define.smartArt.textTargetList": "Lista de alvos", + "Common.define.smartArt.textTextCycle": "Ciclo de texto", + "Common.define.smartArt.textThemePictureAccent": "Destaque da Imagem do Tema", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Acento Alternado da Imagem do Tema", + "Common.define.smartArt.textThemePictureGrid": "Grade de imagens do tema", + "Common.define.smartArt.textTitledMatrix": "Matriz intitulada", + "Common.define.smartArt.textTitledPictureAccentList": "Lista de Acentos de Imagem Intitulada", + "Common.define.smartArt.textTitledPictureBlocks": "Blocos de imagens intitulados", + "Common.define.smartArt.textTitlePictureLineup": "Título Imagem Alinhamento", + "Common.define.smartArt.textTrapezoidList": "Lista de trapézios", + "Common.define.smartArt.textUpwardArrow": "Seta para cima", + "Common.define.smartArt.textVaryingWidthList": "Lista de largura variável", + "Common.define.smartArt.textVerticalAccentList": "Lista de acentos verticais", + "Common.define.smartArt.textVerticalArrowList": "Lista de setas verticais", + "Common.define.smartArt.textVerticalBendingProcess": "Processo de dobra vertical", + "Common.define.smartArt.textVerticalBlockList": "Lista de Bloqueios Verticais", + "Common.define.smartArt.textVerticalBoxList": "Lista de caixas verticais", + "Common.define.smartArt.textVerticalBracketList": "Lista de colchetes verticais", + "Common.define.smartArt.textVerticalBulletList": "Lista de marcadores verticais", + "Common.define.smartArt.textVerticalChevronList": "Lista Vertical em Divisas", + "Common.define.smartArt.textVerticalCircleList": "Lista de círculos verticais", + "Common.define.smartArt.textVerticalCurvedList": "Lista Curva Vertical", + "Common.define.smartArt.textVerticalEquation": "Equação Vertical", + "Common.define.smartArt.textVerticalPictureAccentList": "Lista Vertical de Acentos de Imagem", + "Common.define.smartArt.textVerticalPictureList": "Lista de imagens verticais", + "Common.define.smartArt.textVerticalProcess": "Processo Vertical", "Common.Translation.textMoreButton": "Mais", "Common.Translation.warnFileLocked": "Documento está em uso por outra aplicação. Você pode continuar editando e salvá-lo como uma cópia.", "Common.Translation.warnFileLockedBtnEdit": "Criar uma cópia", @@ -281,13 +440,15 @@ "Common.Views.Comments.txtEmpty": "Não há comentários no documento.", "Common.Views.CopyWarningDialog.textDontShow": "Não exibir esta mensagem novamente", "Common.Views.CopyWarningDialog.textMsg": "As ações copiar, cortar e colar usando os botões da barra de ferramentas do editor e as ações de menu de contexto serão realizadas apenas nesta aba do editor.

    Para copiar ou colar para ou de aplicativos externos a aba do editor, use as seguintes combinações do teclado:", - "Common.Views.CopyWarningDialog.textTitle": "Ações copiar, cortar e colar", + "Common.Views.CopyWarningDialog.textTitle": "Copiar, Cortar e Colar", "Common.Views.CopyWarningDialog.textToCopy": "para Copiar", "Common.Views.CopyWarningDialog.textToCut": "para Cortar", "Common.Views.CopyWarningDialog.textToPaste": "para Colar", "Common.Views.DocumentAccessDialog.textLoading": "Carregando...", "Common.Views.DocumentAccessDialog.textTitle": "Configurações de compartilhamento", "Common.Views.ExternalDiagramEditor.textTitle": "Editor de gráfico", + "Common.Views.ExternalEditor.textClose": "Fechar", + "Common.Views.ExternalEditor.textSave": "Salvar e Sair", "Common.Views.ExternalMergeEditor.textTitle": "Mail Merge Recepients", "Common.Views.ExternalOleEditor.textTitle": "Editor de planilhas", "Common.Views.Header.labelCoUsersDescr": "Usuários que estão editando o arquivo:", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Iniciar", "Common.Views.Plugins.textStop": "Parar", "Common.Views.Protection.hintAddPwd": "Criptografar com senha", + "Common.Views.Protection.hintDelPwd": "Excluir senha", "Common.Views.Protection.hintPwd": "Alterar ou excluir senha", "Common.Views.Protection.hintSignature": "Inserir assinatura digital ou linha de assinatura", "Common.Views.Protection.txtAddPwd": "Inserir a senha", @@ -398,7 +560,7 @@ "Common.Views.ReviewChanges.txtAcceptCurrent": "Aceitar alterações atuais", "Common.Views.ReviewChanges.txtChat": "Chat", "Common.Views.ReviewChanges.txtClose": "Fechar", - "Common.Views.ReviewChanges.txtCoAuthMode": "Modo de Coedição", + "Common.Views.ReviewChanges.txtCoAuthMode": "Modo de coedição", "Common.Views.ReviewChanges.txtCommentRemAll": "Excluir Todos os Comentários", "Common.Views.ReviewChanges.txtCommentRemCurrent": "Excluir comentários atuais", "Common.Views.ReviewChanges.txtCommentRemMy": "Excluir meus comentários", @@ -414,7 +576,7 @@ "Common.Views.ReviewChanges.txtEditing": "Editando", "Common.Views.ReviewChanges.txtFinal": "Todas as alterações aceitas {0}", "Common.Views.ReviewChanges.txtFinalCap": "Final", - "Common.Views.ReviewChanges.txtHistory": "Histórico de Versão", + "Common.Views.ReviewChanges.txtHistory": "Histórico de versão", "Common.Views.ReviewChanges.txtMarkup": "Todas as alterações {0}", "Common.Views.ReviewChanges.txtMarkupCap": "Marcação", "Common.Views.ReviewChanges.txtMarkupSimple": "Todas as mudanças {0}
    Não há balões", @@ -438,7 +600,7 @@ "Common.Views.ReviewChanges.txtView": "Modo de exibição", "Common.Views.ReviewChangesDialog.textTitle": "Rever alterações", "Common.Views.ReviewChangesDialog.txtAccept": "Aceitar", - "Common.Views.ReviewChangesDialog.txtAcceptAll": "Aceitar todas as alterações", + "Common.Views.ReviewChangesDialog.txtAcceptAll": "Aceitar todas as alterações.", "Common.Views.ReviewChangesDialog.txtAcceptCurrent": "Aceitar a alteração atual", "Common.Views.ReviewChangesDialog.txtNext": "Para a próxima alteração", "Common.Views.ReviewChangesDialog.txtPrev": "Para a alteração anterior", @@ -450,6 +612,7 @@ "Common.Views.ReviewPopover.textCancel": "Cancelar", "Common.Views.ReviewPopover.textClose": "Fechar", "Common.Views.ReviewPopover.textEdit": "OK", + "Common.Views.ReviewPopover.textEnterComment": "Insira seu comentário aqui", "Common.Views.ReviewPopover.textFollowMove": "Seguir movimento", "Common.Views.ReviewPopover.textMention": "+menção fornecerá acesso ao documento e enviará um e-mail", "Common.Views.ReviewPopover.textMentionNotify": "+menção notificará o usuário por e-mail", @@ -499,9 +662,10 @@ "Common.Views.SignDialog.tipFontName": "Nome da Fonte", "Common.Views.SignDialog.tipFontSize": "Tamanho da fonte", "Common.Views.SignSettingsDialog.textAllowComment": "Permitir ao signatário inserir comentários no diálogo de assinatura", - "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", + "Common.Views.SignSettingsDialog.textDefInstruction": "Antes de assinar este documento, verifique se o conteúdo que está a assinar está correto.", + "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail do assinante sugerido", "Common.Views.SignSettingsDialog.textInfoName": "Nome", - "Common.Views.SignSettingsDialog.textInfoTitle": "Título do Signatário", + "Common.Views.SignSettingsDialog.textInfoTitle": "Título do assinante", "Common.Views.SignSettingsDialog.textInstructions": "Instruções para o Assinante", "Common.Views.SignSettingsDialog.textShowDate": "Exibir a data da assinatura na linha da assinatura", "Common.Views.SignSettingsDialog.textTitle": "Configurações da Assinatura", @@ -552,6 +716,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} não é um caractere especial válido para o campo de substituição.", "DE.Controllers.Main.applyChangesTextText": "Carregando as alterações...", "DE.Controllers.Main.applyChangesTitleText": "Carregando as alterações", + "DE.Controllers.Main.confirmMaxChangesSize": "O tamanho das ações excede a limitação definida para seu servidor.
    Pressione \"Desfazer\" para cancelar sua última ação ou pressione \"Continue\" para manter a ação localmente (você precisa baixar o arquivo ou copiar seu conteúdo para garantir que nada seja perdido).", "DE.Controllers.Main.convertationTimeoutText": "Tempo limite de conversão excedido.", "DE.Controllers.Main.criticalErrorExtText": "Pressione \"OK\" para voltar para a lista de documentos.", "DE.Controllers.Main.criticalErrorTitle": "Erro", @@ -562,6 +727,7 @@ "DE.Controllers.Main.downloadTitleText": "Baixando documento", "DE.Controllers.Main.errorAccessDeny": "Você está tentando executar uma ação que você não tem direitos.
    Contate o administrador do Servidor de Documentos.", "DE.Controllers.Main.errorBadImageUrl": "URL de imagem está incorreta", + "DE.Controllers.Main.errorCannotPasteImg": "Não podemos colar esta imagem da área de transferência, mas você pode salvá-la em seu dispositivo e\ninsira-o a partir daí ou copie a imagem sem texto e cole-a no documento.", "DE.Controllers.Main.errorCoAuthoringDisconnect": "Conexão com servidor perdida. O documento não pode ser editado neste momento.", "DE.Controllers.Main.errorComboSeries": "Para criar uma tabela de combinação, selecione pelo menos duas séries de dados.", "DE.Controllers.Main.errorCompare": "O recurso Comparar documentos não está disponível durante a coedição.", @@ -578,12 +744,18 @@ "DE.Controllers.Main.errorFilePassProtect": "O documento é protegido por senha e não pode ser aberto.", "DE.Controllers.Main.errorFileSizeExceed": "O tamanho do arquivo excede o limite de seu servidor.
    Por favor, contate seu administrador de Servidor de Documentos para detalhes.", "DE.Controllers.Main.errorForceSave": "Ocorreu um erro na gravação. Favor utilizar a opção 'Baixar como' para gravar o arquivo em seu computador ou tente novamente mais tarde.", + "DE.Controllers.Main.errorInconsistentExt": "Ocorreu um erro ao abrir o arquivo.
    O conteúdo do arquivo não corresponde à extensão do arquivo.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o arquivo.
    O conteúdo do arquivo corresponde a documentos de texto (por exemplo, docx), mas o arquivo tem a extensão inconsistente: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o arquivo.
    O conteúdo do arquivo corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas o arquivo tem a extensão inconsistente: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o arquivo.
    O conteúdo do arquivo corresponde a apresentações (por exemplo, pptx), mas o arquivo tem a extensão inconsistente: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o arquivo.
    O conteúdo do arquivo corresponde a planilhas (por exemplo, xlsx), mas o arquivo tem a extensão inconsistente: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Descritor de chave desconhecido", "DE.Controllers.Main.errorKeyExpire": "Descritor de chave expirado", "DE.Controllers.Main.errorLoadingFont": "As fontes não foram carregadas.
    Entre em contato com o administrador do Document Server.", "DE.Controllers.Main.errorMailMergeLoadFile": "Carregamento falhou. Por favor, selecione um arquivo diferente.", "DE.Controllers.Main.errorMailMergeSaveFile": "Merge failed.", "DE.Controllers.Main.errorNoTOC": "Não há índice para atualizar. Você pode inserir um na guia Referências.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "A senha fornecida não está correta.
    Verifique se a tecla CAPS LOCK está desligada e use a capitalização correta.", "DE.Controllers.Main.errorProcessSaveResult": "Salvamento falhou.", "DE.Controllers.Main.errorServerVersion": "A versão do editor foi atualizada. A página será recarregada para aplicar as alterações.", "DE.Controllers.Main.errorSessionAbsolute": "A sessão de edição de documentos expirou. Por Favor atualize a página.", @@ -640,6 +812,7 @@ "DE.Controllers.Main.textClose": "Fechar", "DE.Controllers.Main.textCloseTip": "Clique para fechar a dica", "DE.Controllers.Main.textContactUs": "Contate as vendas", + "DE.Controllers.Main.textContinue": "Continuar", "DE.Controllers.Main.textConvertEquation": "Esta equação foi criada com uma versão antiga do editor de equação que não é mais compatível. Para editá-lo, converta a equação para o formato Office Math ML.
    Converter agora?", "DE.Controllers.Main.textCustomLoader": "Por favor, observe que de acordo com os termos de licença, você não tem autorização para alterar o carregador.
    Por favor, contate o Departamento de Vendas para fazer cotação.", "DE.Controllers.Main.textDisconnect": "A conexão está perdida", @@ -660,6 +833,7 @@ "DE.Controllers.Main.textStrict": "Modo estrito", "DE.Controllers.Main.textTryUndoRedo": "As funções Desfazer/Refazer ficam desabilitadas no modo de Coedição Rápida.
    Selecione o modo 'Estrito' para editar o aquivo sem que outros usuários interfiram e envie suas mudanças somente ao salvar o documento. Você pode alternar entre os modos de coedição usando as Configurações Avançadas.\",", "DE.Controllers.Main.textTryUndoRedoWarn": "As funções Desfazer/Refazer estão desabilitadas para o modo de coedição rápido", + "DE.Controllers.Main.textUndo": "Desfazer", "DE.Controllers.Main.titleLicenseExp": "A licença expirou", "DE.Controllers.Main.titleServerVersion": "Editor atualizado", "DE.Controllers.Main.titleUpdateVersion": "Versão alterada", @@ -971,7 +1145,7 @@ "DE.Controllers.Toolbar.txtAccent_Bar": "Barra", "DE.Controllers.Toolbar.txtAccent_BarBot": "Barra inferior", "DE.Controllers.Toolbar.txtAccent_BarTop": "Barra superior", - "DE.Controllers.Toolbar.txtAccent_BorderBox": "Fórmula embalada (com Placeholder)", + "DE.Controllers.Toolbar.txtAccent_BorderBox": "Fórmula Emoldurada (com Espaço Reservado)", "DE.Controllers.Toolbar.txtAccent_BorderBoxCustom": "Fórmula embalada(Exemplo)", "DE.Controllers.Toolbar.txtAccent_Check": "Verificar", "DE.Controllers.Toolbar.txtAccent_CurveBracketBot": "Chave Inferior", @@ -1329,17 +1503,31 @@ "DE.Views.CellsAddDialog.textRow": "Linhas", "DE.Views.CellsAddDialog.textTitle": "Insira vários", "DE.Views.CellsAddDialog.textUp": "Acima do cursor", + "DE.Views.ChartSettings.text3dDepth": "Profundidade (% da base)", + "DE.Views.ChartSettings.text3dHeight": "Altura (% da base)", + "DE.Views.ChartSettings.text3dRotation": "Rotação 3D", "DE.Views.ChartSettings.textAdvanced": "Exibir configurações avançadas", "DE.Views.ChartSettings.textAutoscale": "Autoescala", "DE.Views.ChartSettings.textChartType": "Alterar tipo de gráfico", + "DE.Views.ChartSettings.textDefault": "Rotação padrão", + "DE.Views.ChartSettings.textDown": "Abaixo", "DE.Views.ChartSettings.textEditData": "Editar dados", "DE.Views.ChartSettings.textHeight": "Altura", + "DE.Views.ChartSettings.textLeft": "Esquerda", + "DE.Views.ChartSettings.textNarrow": "Campo de visão estreito", "DE.Views.ChartSettings.textOriginalSize": "Tamanho atual", + "DE.Views.ChartSettings.textPerspective": "Perspectiva", + "DE.Views.ChartSettings.textRight": "Direita", + "DE.Views.ChartSettings.textRightAngle": "Eixos de ângulo reto", "DE.Views.ChartSettings.textSize": "Tamanho", "DE.Views.ChartSettings.textStyle": "Estilo", "DE.Views.ChartSettings.textUndock": "Desencaixar do painel", + "DE.Views.ChartSettings.textUp": "Para cima", + "DE.Views.ChartSettings.textWiden": "Ampliar o campo de visão", "DE.Views.ChartSettings.textWidth": "Largura", "DE.Views.ChartSettings.textWrap": "Estilo da quebra automática", + "DE.Views.ChartSettings.textX": "Rotação X", + "DE.Views.ChartSettings.textY": "Rotação Y", "DE.Views.ChartSettings.txtBehind": "Atrás", "DE.Views.ChartSettings.txtInFront": "Em frente", "DE.Views.ChartSettings.txtInline": "Em linha", @@ -1429,14 +1617,24 @@ "DE.Views.DateTimeDialog.textLang": "Idioma", "DE.Views.DateTimeDialog.textUpdate": "Atualizar automaticamente", "DE.Views.DateTimeDialog.txtTitle": "Data e Hora", + "DE.Views.DocProtection.hintProtectDoc": "Proteger o Documento", + "DE.Views.DocProtection.txtDocProtectedComment": "O documento está protegido.
    Você só pode inserir comentários neste documento.", + "DE.Views.DocProtection.txtDocProtectedForms": "O documento está protegido.
    Você só pode preencher formulários neste documento.", + "DE.Views.DocProtection.txtDocProtectedTrack": "O documento está protegido.
    Você pode editar este documento, mas todas as alterações serão rastreadas.", + "DE.Views.DocProtection.txtDocProtectedView": "O documento está protegido.
    Você só pode visualizar este documento.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Digite uma senha para desproteger o documento", + "DE.Views.DocProtection.txtProtectDoc": "Proteger o documento", "DE.Views.DocumentHolder.aboveText": "Acima", "DE.Views.DocumentHolder.addCommentText": "Adicionar comentário", "DE.Views.DocumentHolder.advancedDropCapText": "Configurações de capitulação", + "DE.Views.DocumentHolder.advancedEquationText": "Definições de equações", "DE.Views.DocumentHolder.advancedFrameText": "Configurações avançadas de moldura", "DE.Views.DocumentHolder.advancedParagraphText": "Configurações avançadas de parágrafo", "DE.Views.DocumentHolder.advancedTableText": "Configurações avançadas de tabela", "DE.Views.DocumentHolder.advancedText": "Configurações avançadas", "DE.Views.DocumentHolder.alignmentText": "Alinhamento", + "DE.Views.DocumentHolder.allLinearText": "Tudo - Linear", + "DE.Views.DocumentHolder.allProfText": "Tudo - Profissional", "DE.Views.DocumentHolder.belowText": "Abaixo", "DE.Views.DocumentHolder.breakBeforeText": "Quebra de página antes", "DE.Views.DocumentHolder.bulletsText": "Marcadores e numeração", @@ -1445,6 +1643,8 @@ "DE.Views.DocumentHolder.centerText": "Centro", "DE.Views.DocumentHolder.chartText": "Configurações avançadas de gráfico", "DE.Views.DocumentHolder.columnText": "Coluna", + "DE.Views.DocumentHolder.currLinearText": "Atual - Linear", + "DE.Views.DocumentHolder.currProfText": "Atual - Profissional", "DE.Views.DocumentHolder.deleteColumnText": "Excluir coluna", "DE.Views.DocumentHolder.deleteRowText": "Excluir linha", "DE.Views.DocumentHolder.deleteTableText": "Excluir tabela", @@ -1457,6 +1657,7 @@ "DE.Views.DocumentHolder.editFooterText": "Editar rodapé", "DE.Views.DocumentHolder.editHeaderText": "Editar cabeçalho", "DE.Views.DocumentHolder.editHyperlinkText": "Editar hiperlink", + "DE.Views.DocumentHolder.eqToInlineText": "Alterar para em linha", "DE.Views.DocumentHolder.guestText": "Visitante", "DE.Views.DocumentHolder.hyperlinkText": "Hiperlink", "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignorar tudo", @@ -1471,6 +1672,7 @@ "DE.Views.DocumentHolder.insertText": "Inserir", "DE.Views.DocumentHolder.keepLinesText": "Manter as linhas juntas", "DE.Views.DocumentHolder.langText": "Selecionar idioma", + "DE.Views.DocumentHolder.latexText": "LaTex", "DE.Views.DocumentHolder.leftText": "Esquerda", "DE.Views.DocumentHolder.loadSpellText": "Carregando variantes...", "DE.Views.DocumentHolder.mergeCellsText": "Mesclar células", @@ -1578,7 +1780,7 @@ "DE.Views.DocumentHolder.txtAddTop": "Adicionar borda superior", "DE.Views.DocumentHolder.txtAddVer": "Adicionar linha vertical", "DE.Views.DocumentHolder.txtAlignToChar": "Alinhar à símbolo", - "DE.Views.DocumentHolder.txtBehind": "Atrás", + "DE.Views.DocumentHolder.txtBehind": "Atrás do texto", "DE.Views.DocumentHolder.txtBorderProps": "Propriedades de borda", "DE.Views.DocumentHolder.txtBottom": "Inferior", "DE.Views.DocumentHolder.txtColumnAlign": "Alinhamento de colunas", @@ -1615,7 +1817,7 @@ "DE.Views.DocumentHolder.txtHideVer": "Ocultar linha vertical", "DE.Views.DocumentHolder.txtIncreaseArg": "Aumentar o tamanho do argumento", "DE.Views.DocumentHolder.txtInFront": "Em frente", - "DE.Views.DocumentHolder.txtInline": "Em linha", + "DE.Views.DocumentHolder.txtInline": "Alinhado com o Texto", "DE.Views.DocumentHolder.txtInsertArgAfter": "Inserir argumento após", "DE.Views.DocumentHolder.txtInsertArgBefore": "Inserir argumento antes", "DE.Views.DocumentHolder.txtInsertBreak": "Inserir quebra manual", @@ -1658,6 +1860,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Barra abaixo de texto", "DE.Views.DocumentHolder.txtUngroup": "Desagrupar", "DE.Views.DocumentHolder.txtWarnUrl": "Clicar neste link pode ser prejudicial ao seu dispositivo e dados.
    Você tem certeza de que quer continuar?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "Update %1 style", "DE.Views.DocumentHolder.vertAlignText": "Alinhamento vertical", "DE.Views.DropcapSettingsAdvanced.strBorders": "Bordas e preenchimento", @@ -1666,7 +1869,7 @@ "DE.Views.DropcapSettingsAdvanced.textAlign": "Alinhamento", "DE.Views.DropcapSettingsAdvanced.textAtLeast": "Pelo menos", "DE.Views.DropcapSettingsAdvanced.textAuto": "Automático", - "DE.Views.DropcapSettingsAdvanced.textBackColor": "Cor do plano de fundo", + "DE.Views.DropcapSettingsAdvanced.textBackColor": "Cor de fundo", "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Cor da borda", "DE.Views.DropcapSettingsAdvanced.textBorderDesc": "Clique no diagrama ou use os botões para selecionar bordas", "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Tamanho da borda", @@ -1712,7 +1915,7 @@ "DE.Views.FileMenu.btnExitCaption": "Fechar", "DE.Views.FileMenu.btnFileOpenCaption": "Abrir", "DE.Views.FileMenu.btnHelpCaption": "Ajuda", - "DE.Views.FileMenu.btnHistoryCaption": "Histórico de Versão", + "DE.Views.FileMenu.btnHistoryCaption": "Histórico de versão", "DE.Views.FileMenu.btnInfoCaption": "Informações do documento", "DE.Views.FileMenu.btnPrintCaption": "Imprimir", "DE.Views.FileMenu.btnProtectCaption": "Proteger", @@ -1754,6 +1957,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Estatísticas", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Assunto", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Símbolos", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Etiquetas", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Título do documento", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Carregado", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Palavras", @@ -1762,7 +1966,7 @@ "DE.Views.FileMenuPanels.DocumentRights.txtRights": "Pessoas que têm direitos", "DE.Views.FileMenuPanels.ProtectDoc.notcriticalErrorTitle": "Aviso", "DE.Views.FileMenuPanels.ProtectDoc.strEncrypt": "Com senha", - "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Proteger o Documento", + "DE.Views.FileMenuPanels.ProtectDoc.strProtect": "Proteger o documento", "DE.Views.FileMenuPanels.ProtectDoc.strSignature": "Com assinatura", "DE.Views.FileMenuPanels.ProtectDoc.txtEdit": "Editar documento", "DE.Views.FileMenuPanels.ProtectDoc.txtEditWarning": "Editar excluirá as assinaturas do documento.
    Deseja continuar?", @@ -1772,7 +1976,7 @@ "DE.Views.FileMenuPanels.ProtectDoc.txtSignedInvalid": "Algumas das assinaturas digitais no documento estão inválidas ou não puderam ser verificadas. O documento está protegido para edição.", "DE.Views.FileMenuPanels.ProtectDoc.txtView": "Visualizar assinaturas", "DE.Views.FileMenuPanels.Settings.okButtonText": "Aplicar", - "DE.Views.FileMenuPanels.Settings.strCoAuthMode": "Modo de Coedição", + "DE.Views.FileMenuPanels.Settings.strCoAuthMode": "Modo de coedição", "DE.Views.FileMenuPanels.Settings.strFast": "Rápido", "DE.Views.FileMenuPanels.Settings.strFontRender": "Dicas de fonte", "DE.Views.FileMenuPanels.Settings.strIgnoreWordsInUPPERCASE": "Ignorar palavras MAIÚSCULAS", @@ -2055,9 +2259,9 @@ "DE.Views.ImageSettingsAdvanced.textWeightArrows": "Pesos e Setas", "DE.Views.ImageSettingsAdvanced.textWidth": "Largura", "DE.Views.ImageSettingsAdvanced.textWrap": "Estilo da quebra automática", - "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Atrás", + "DE.Views.ImageSettingsAdvanced.textWrapBehindTooltip": "Atrás do texto", "DE.Views.ImageSettingsAdvanced.textWrapInFrontTooltip": "Em frente", - "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "Em linha", + "DE.Views.ImageSettingsAdvanced.textWrapInlineTooltip": "Alinhado com o Texto", "DE.Views.ImageSettingsAdvanced.textWrapSquareTooltip": "Quadrado", "DE.Views.ImageSettingsAdvanced.textWrapThroughTooltip": "Através", "DE.Views.ImageSettingsAdvanced.textWrapTightTooltip": "Justo", @@ -2067,6 +2271,7 @@ "DE.Views.LeftMenu.tipComments": "Comentários", "DE.Views.LeftMenu.tipNavigation": "Navegação", "DE.Views.LeftMenu.tipOutline": "Cabeçalhos", + "DE.Views.LeftMenu.tipPageThumbnails": "Miniaturas de página", "DE.Views.LeftMenu.tipPlugins": "Plug-ins", "DE.Views.LeftMenu.tipSearch": "Pesquisar", "DE.Views.LeftMenu.tipSupport": "Feedback e Suporte", @@ -2088,9 +2293,9 @@ "DE.Views.LineNumbersDialog.textRestartEachSection": "Reiniciar cada uma das seções", "DE.Views.LineNumbersDialog.textSection": "Seção atual", "DE.Views.LineNumbersDialog.textStartAt": "Começar em", - "DE.Views.LineNumbersDialog.textTitle": "Números de Linhas", + "DE.Views.LineNumbersDialog.textTitle": "Números de linhas", "DE.Views.LineNumbersDialog.txtAutoText": "Automático", - "DE.Views.Links.capBtnAddText": "Adicionar Texto", + "DE.Views.Links.capBtnAddText": "Adicionar texto", "DE.Views.Links.capBtnBookmarks": "Favorito", "DE.Views.Links.capBtnCaption": "Legenda", "DE.Views.Links.capBtnContentsUpdate": "Atualizar tabela", @@ -2317,7 +2522,7 @@ "DE.Views.ParagraphSettingsAdvanced.textAll": "Tudo", "DE.Views.ParagraphSettingsAdvanced.textAtLeast": "Pelo menos", "DE.Views.ParagraphSettingsAdvanced.textAuto": "Múltiplo", - "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Cor do plano de fundo", + "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Cor de fundo", "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Texto Básico", "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Cor da borda", "DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Clique no diagrama ou use os botões para selecionar bordas e aplicar o estilo escolhido a elas", @@ -2374,6 +2579,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Definir apenas borda superior", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automático", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Sem bordas", + "DE.Views.ProtectDialog.textComments": "Comentários", + "DE.Views.ProtectDialog.textForms": "Preenchimento de formulários", + "DE.Views.ProtectDialog.textReview": "Mudanças rastreadas", + "DE.Views.ProtectDialog.textView": "Sem alterações (somente leitura)", + "DE.Views.ProtectDialog.txtAllow": "Permitir apenas este tipo de edição no documento", + "DE.Views.ProtectDialog.txtIncorrectPwd": "A confirmação da senha não é idêntica", + "DE.Views.ProtectDialog.txtOptional": "Opcional", + "DE.Views.ProtectDialog.txtPassword": "Senha", + "DE.Views.ProtectDialog.txtProtect": "Proteger", + "DE.Views.ProtectDialog.txtRepeat": "Repetir a senha", + "DE.Views.ProtectDialog.txtTitle": "Proteger", + "DE.Views.ProtectDialog.txtWarning": "Cuidado: se você perder ou esquecer a senha, não será possível recuperá-la. Guarde-o em local seguro.", "DE.Views.RightMenu.txtChartSettings": "Configurações de gráfico", "DE.Views.RightMenu.txtFormSettings": "Configurações do formulário", "DE.Views.RightMenu.txtHeaderFooterSettings": "Configurações de cabeçalho e rodapé", @@ -2506,8 +2723,8 @@ "DE.Views.TableOfContentsSettings.textStyle": "Estilo", "DE.Views.TableOfContentsSettings.textStyles": "Estilos", "DE.Views.TableOfContentsSettings.textTable": "Tabela", - "DE.Views.TableOfContentsSettings.textTitle": "Tabela de Conteúdo", - "DE.Views.TableOfContentsSettings.textTitleTOF": "Tabela de Figuras", + "DE.Views.TableOfContentsSettings.textTitle": "Tabela de conteúdo", + "DE.Views.TableOfContentsSettings.textTitleTOF": "Tabela de figuras", "DE.Views.TableOfContentsSettings.txtCentered": "Centralizado", "DE.Views.TableOfContentsSettings.txtClassic": "Clássico", "DE.Views.TableOfContentsSettings.txtCurrent": "Atual", @@ -2564,12 +2781,20 @@ "DE.Views.TableSettings.tipOuter": "Definir apenas borda externa", "DE.Views.TableSettings.tipRight": "Definir apenas borda direita externa", "DE.Views.TableSettings.tipTop": "Definir apenas borda superior externa", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Tabelas Contornadas e Alinhadas", + "DE.Views.TableSettings.txtGroupTable_Custom": "Personalizado", + "DE.Views.TableSettings.txtGroupTable_Grid": "Tabelas de grade", + "DE.Views.TableSettings.txtGroupTable_List": "Listar tabelas", + "DE.Views.TableSettings.txtGroupTable_Plain": "Tabelas simples", "DE.Views.TableSettings.txtNoBorders": "Sem bordas", "DE.Views.TableSettings.txtTable_Accent": "Destacar", + "DE.Views.TableSettings.txtTable_Bordered": "Delimitado", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Contornado e Alinhado", "DE.Views.TableSettings.txtTable_Colorful": "Colorido", "DE.Views.TableSettings.txtTable_Dark": "Escuro", "DE.Views.TableSettings.txtTable_GridTable": "Tabela de grade", "DE.Views.TableSettings.txtTable_Light": "Claro", + "DE.Views.TableSettings.txtTable_Lined": "Alinhado", "DE.Views.TableSettings.txtTable_ListTable": "Tabela de Lista", "DE.Views.TableSettings.txtTable_PlainTable": "Tabela Normal", "DE.Views.TableSettings.txtTable_TableGrid": "Grid da Tabela", @@ -2628,7 +2853,7 @@ "DE.Views.TableSettingsAdvanced.textWrap": "Disposição do texto", "DE.Views.TableSettingsAdvanced.textWrapNoneTooltip": "Tabela embutida", "DE.Views.TableSettingsAdvanced.textWrapParallelTooltip": "Tabela de fluxo", - "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Estilo da quebra", + "DE.Views.TableSettingsAdvanced.textWrappingStyle": "Estilo da quebra automática", "DE.Views.TableSettingsAdvanced.textWrapText": "Quebrar texto ", "DE.Views.TableSettingsAdvanced.tipAll": "Definir borda externa e todas as linhas internas", "DE.Views.TableSettingsAdvanced.tipCellAll": "Definir bordas para células internas apenas", @@ -2704,6 +2929,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Imagem", "DE.Views.Toolbar.capBtnInsPagebreak": "Quebras", "DE.Views.Toolbar.capBtnInsShape": "Forma", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Símbolo", "DE.Views.Toolbar.capBtnInsTable": "Tabela", "DE.Views.Toolbar.capBtnInsTextart": "Arte de texto", @@ -2850,13 +3076,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Aumentar recuo", "DE.Views.Toolbar.tipInsertChart": "Inserir gráfico", "DE.Views.Toolbar.tipInsertEquation": "Inserir equação", + "DE.Views.Toolbar.tipInsertHorizontalText": "Inserir caixa de texto horizontal", "DE.Views.Toolbar.tipInsertImage": "Inserir imagem", "DE.Views.Toolbar.tipInsertNum": "Inserir número da página", "DE.Views.Toolbar.tipInsertShape": "Inserir forma automática", + "DE.Views.Toolbar.tipInsertSmartArt": "Inserir SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Inserir símbolo", "DE.Views.Toolbar.tipInsertTable": "Inserir tabela", "DE.Views.Toolbar.tipInsertText": "Inserir caixa de texto", "DE.Views.Toolbar.tipInsertTextArt": "Inserir arte de texto", + "DE.Views.Toolbar.tipInsertVerticalText": "Inserir caixa de texto vertical", "DE.Views.Toolbar.tipLineNumbers": "Mostrar números de linha", "DE.Views.Toolbar.tipLineSpace": "Espaçamento entre linhas do parágrafo", "DE.Views.Toolbar.tipMailRecepients": "Select Recepients", @@ -2928,8 +3157,10 @@ "DE.Views.ViewTab.textFitToPage": "Ajustar a página", "DE.Views.ViewTab.textFitToWidth": "Ajustar largura", "DE.Views.ViewTab.textInterfaceTheme": "Tema de interface", + "DE.Views.ViewTab.textLeftMenu": "Painel esquerdo", "DE.Views.ViewTab.textNavigation": "Navegação", "DE.Views.ViewTab.textOutline": "Cabeçalhos", + "DE.Views.ViewTab.textRightMenu": "Painel direito", "DE.Views.ViewTab.textRulers": "Regras", "DE.Views.ViewTab.textStatusBar": "Barra de status", "DE.Views.ViewTab.textZoom": "Ampliação", diff --git a/apps/documenteditor/main/locale/ro.json b/apps/documenteditor/main/locale/ro.json index af60eaebd..f33203725 100644 --- a/apps/documenteditor/main/locale/ro.json +++ b/apps/documenteditor/main/locale/ro.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "Diagramă prin puncte cu linii netede și marcatori", "Common.define.chartData.textStock": "Bursiere", "Common.define.chartData.textSurface": "Suprafața", + "Common.define.smartArt.textAccentedPicture": "Imagine cu accent", + "Common.define.smartArt.textAccentProcess": "Proces accent", + "Common.define.smartArt.textAlternatingFlow": "Flux alternativ", + "Common.define.smartArt.textAlternatingHexagons": "Hexagoane alternante", + "Common.define.smartArt.textAlternatingPictureBlocks": "Blocuri de imagini alternative", + "Common.define.smartArt.textAlternatingPictureCircles": "Cercuri de imagini alternative", + "Common.define.smartArt.textArchitectureLayout": "Aspect arhitectură", + "Common.define.smartArt.textArrowRibbon": "Panglică săgeată", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Proces de imagini ascendent cu accent", + "Common.define.smartArt.textBalance": "Balanță", + "Common.define.smartArt.textBasicBendingProcess": "Proces de îndoire de bază", + "Common.define.smartArt.textBasicBlockList": "Listă de blocare de bază", + "Common.define.smartArt.textBasicChevronProcess": "Proces zigzag de bază", + "Common.define.smartArt.textBasicCycle": "Ciclu de bază", + "Common.define.smartArt.textBasicMatrix": "Matrice de bază", + "Common.define.smartArt.textBasicPie": "Structură radială de bază", + "Common.define.smartArt.textBasicProcess": "Proces de bază", + "Common.define.smartArt.textBasicPyramid": "Piramidă de bază", + "Common.define.smartArt.textBasicRadial": "Radială de bază", + "Common.define.smartArt.textBasicTarget": "Țintă de bază", + "Common.define.smartArt.textBasicTimeline": "Cronologie de bază", + "Common.define.smartArt.textBasicVenn": "Venn de bază", + "Common.define.smartArt.textBendingPictureAccentList": "Listă de accentuare imagini", + "Common.define.smartArt.textBendingPictureBlocks": "Blocuri de imagini cu îndoire", + "Common.define.smartArt.textBendingPictureCaption": "Legendă de imagini cu îndoire", + "Common.define.smartArt.textBendingPictureCaptionList": "Listă de legende de imagini cu îndoire", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Imagini cu îndoire și text semitransparent", + "Common.define.smartArt.textBlockCycle": "Ciclu în bloc", + "Common.define.smartArt.textBubblePictureList": "Listă de imagini cu bule", + "Common.define.smartArt.textCaptionedPictures": "Imagini cu legendă", + "Common.define.smartArt.textChevronAccentProcess": "Proces accent zigzag", + "Common.define.smartArt.textChevronList": "Listă zigzag", + "Common.define.smartArt.textCircleAccentTimeline": "Cronologie accent circular", + "Common.define.smartArt.textCircleArrowProcess": "Proces cu săgeți circular", + "Common.define.smartArt.textCirclePictureHierarchy": "Ierarhie cu imagini circulare", + "Common.define.smartArt.textCircleProcess": "Proces circular", + "Common.define.smartArt.textCircleRelationship": "Relație circulară", + "Common.define.smartArt.textCircularBendingProcess": "Proces de îndoire circulară", + "Common.define.smartArt.textCircularPictureCallout": "Explicație cu imagini circulare", + "Common.define.smartArt.textClosedChevronProcess": "Proces zigzag închis", + "Common.define.smartArt.textContinuousArrowProcess": "Săgeți de proces continuu", + "Common.define.smartArt.textContinuousBlockProcess": "Proces de blocare continuu", + "Common.define.smartArt.textContinuousCycle": "Ciclu continuu", + "Common.define.smartArt.textContinuousPictureList": "Listă continuă de imagini", + "Common.define.smartArt.textConvergingArrows": "Săgeți convergente", + "Common.define.smartArt.textConvergingRadial": "Radială convergentă", + "Common.define.smartArt.textConvergingText": "Text convergent", + "Common.define.smartArt.textCounterbalanceArrows": "Săgeți contrabalansate", + "Common.define.smartArt.textCycle": "Ciclu", + "Common.define.smartArt.textCycleMatrix": "Matrice ciclică", + "Common.define.smartArt.textDescendingBlockList": "Listă de blocuri descrescătoare", + "Common.define.smartArt.textDescendingProcess": "Proces descendent", + "Common.define.smartArt.textDetailedProcess": "Proces detaliat", + "Common.define.smartArt.textDivergingArrows": "Săgeți divergente", + "Common.define.smartArt.textDivergingRadial": "Radială divergentă", + "Common.define.smartArt.textEquation": "Ecuație", + "Common.define.smartArt.textFramedTextPicture": "Imagine cu text încadrat", + "Common.define.smartArt.textFunnel": "Extrage", + "Common.define.smartArt.textGear": "Roată dințată", + "Common.define.smartArt.textGridMatrix": "Matrice grilă", + "Common.define.smartArt.textGroupedList": "Listă grupată", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Organigramă semicirculară", + "Common.define.smartArt.textHexagonCluster": "Cluster hexagonal", + "Common.define.smartArt.textHexagonRadial": "Hexagoane radiale", + "Common.define.smartArt.textHierarchy": "Ierarhie", + "Common.define.smartArt.textHierarchyList": "Listă ierarhică", + "Common.define.smartArt.textHorizontalBulletList": "Listă orizontală cu marcatori", + "Common.define.smartArt.textHorizontalHierarchy": "Ierarhie orizontală", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Ierarhie orizontală etichetată", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Ierarhie orizontală pe mai multe niveluri", + "Common.define.smartArt.textHorizontalOrganizationChart": "Organigramă orizontală", + "Common.define.smartArt.textHorizontalPictureList": "Listă orizontală de imagini", + "Common.define.smartArt.textIncreasingArrowProcess": "Proces cu săgeți crescător", + "Common.define.smartArt.textIncreasingCircleProcess": "Proces circular crescător", + "Common.define.smartArt.textInterconnectedBlockProcess": "Proces cu blocuri interconectate", + "Common.define.smartArt.textInterconnectedRings": "Inele interconectate", + "Common.define.smartArt.textInvertedPyramid": "Piramidă inversată", + "Common.define.smartArt.textLabeledHierarchy": "Ierarhie etichetată", + "Common.define.smartArt.textLinearVenn": "Venn liniar", + "Common.define.smartArt.textLinedList": "Listă liniată", + "Common.define.smartArt.textList": "Listă", + "Common.define.smartArt.textMatrix": "Matrice", + "Common.define.smartArt.textMultidirectionalCycle": "Ciclu multidirecțional", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Organigramă nume și titlu", + "Common.define.smartArt.textNestedTarget": "Țintă imbricată", + "Common.define.smartArt.textNondirectionalCycle": "Ciclu nondirecțional", + "Common.define.smartArt.textOpposingArrows": "Săgeți opuse", + "Common.define.smartArt.textOpposingIdeas": "Idei opuse", + "Common.define.smartArt.textOrganizationChart": "Organigramă", + "Common.define.smartArt.textOther": "Altele", + "Common.define.smartArt.textPhasedProcess": "Proces în etape", + "Common.define.smartArt.textPicture": "Imagine", + "Common.define.smartArt.textPictureAccentBlocks": "Blocuri de imagini cu accent", + "Common.define.smartArt.textPictureAccentList": "Listă de accentuare imagini", + "Common.define.smartArt.textPictureAccentProcess": "Proces accent imagine", + "Common.define.smartArt.textPictureCaptionList": "Listă legendă imagine", + "Common.define.smartArt.textPictureFrame": "RamăDeFotografie", + "Common.define.smartArt.textPictureGrid": "Grilă de imagini", + "Common.define.smartArt.textPictureLineup": "Aliniere imagini", + "Common.define.smartArt.textPictureOrganizationChart": "Organigramă cu imagini", + "Common.define.smartArt.textPictureStrips": "Benzi cu imagini", + "Common.define.smartArt.textPieProcess": "Proces structură radială", + "Common.define.smartArt.textPlusAndMinus": "Plus și minus", + "Common.define.smartArt.textProcess": "Proces", + "Common.define.smartArt.textProcessArrows": "Săgeți proces", + "Common.define.smartArt.textProcessList": "Listă proces", + "Common.define.smartArt.textPyramid": "Piramidă", + "Common.define.smartArt.textPyramidList": "Listă piramidală", + "Common.define.smartArt.textRadialCluster": "Cluster radial", + "Common.define.smartArt.textRadialCycle": "Ciclu radial", + "Common.define.smartArt.textRadialList": "Listă radială", + "Common.define.smartArt.textRadialPictureList": "Listă radială de imagini", + "Common.define.smartArt.textRadialVenn": "Venn radială", + "Common.define.smartArt.textRandomToResultProcess": "Proces de idei aleatoare cu rezultat", + "Common.define.smartArt.textRelationship": "Relație", + "Common.define.smartArt.textRepeatingBendingProcess": "Proces de îndoire repetată", + "Common.define.smartArt.textReverseList": "Inversare listă", + "Common.define.smartArt.textSegmentedCycle": "Ciclu segmentat", + "Common.define.smartArt.textSegmentedProcess": "Proces segmentat", + "Common.define.smartArt.textSegmentedPyramid": "Piramidă segmentată", + "Common.define.smartArt.textSnapshotPictureList": "Listă imagini instantanee", + "Common.define.smartArt.textSpiralPicture": "Imagini în spirală", + "Common.define.smartArt.textSquareAccentList": "Listă accent pătrat", + "Common.define.smartArt.textStackedList": "Listă suprapusă", + "Common.define.smartArt.textStackedVenn": "Venn suprapus", + "Common.define.smartArt.textStaggeredProcess": "Proces decalat", + "Common.define.smartArt.textStepDownProcess": "Proces descendent", + "Common.define.smartArt.textStepUpProcess": "Proces ascendent", + "Common.define.smartArt.textSubStepProcess": "Proces cu subpași", + "Common.define.smartArt.textTabbedArc": "Arc cu file", + "Common.define.smartArt.textTableHierarchy": "Ierarhie tabel", + "Common.define.smartArt.textTableList": "Listă tabel", + "Common.define.smartArt.textTabList": "Listă file", + "Common.define.smartArt.textTargetList": "Listă ținte", + "Common.define.smartArt.textTextCycle": "Ciclu text", + "Common.define.smartArt.textThemePictureAccent": "Imagini cu accent și temă", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Imagini cu accent alternativ și temă", + "Common.define.smartArt.textThemePictureGrid": "Grilă de imagini cu temă", + "Common.define.smartArt.textTitledMatrix": "Matrice cu titlu", + "Common.define.smartArt.textTitledPictureAccentList": "Listă imagini cu titlu și accent", + "Common.define.smartArt.textTitledPictureBlocks": "Blocuri de imagini cu titlu", + "Common.define.smartArt.textTitlePictureLineup": "Imagini aliniate cu titlu", + "Common.define.smartArt.textTrapezoidList": "Listă trapezoidală", + "Common.define.smartArt.textUpwardArrow": "Săgeată ascendentă", + "Common.define.smartArt.textVaryingWidthList": "Listă de lățime variabilă", + "Common.define.smartArt.textVerticalAccentList": "Listă verticală cu accent", + "Common.define.smartArt.textVerticalArrowList": "Listă săgeți verticale", + "Common.define.smartArt.textVerticalBendingProcess": "Proces de îndoire verticală", + "Common.define.smartArt.textVerticalBlockList": "Listă bloc vertical", + "Common.define.smartArt.textVerticalBoxList": "Listă de blocuri verticală", + "Common.define.smartArt.textVerticalBracketList": "Listă paranteze verticale", + "Common.define.smartArt.textVerticalBulletList": "Listă verticală cu marcatori", + "Common.define.smartArt.textVerticalChevronList": "Listă zigzag verticală", + "Common.define.smartArt.textVerticalCircleList": "Listă cercuri verticale", + "Common.define.smartArt.textVerticalCurvedList": "Listă curbată verticală", + "Common.define.smartArt.textVerticalEquation": "Ecuație verticală", + "Common.define.smartArt.textVerticalPictureAccentList": "Listă accent imagine verticală", + "Common.define.smartArt.textVerticalPictureList": "Listă verticală imagine", + "Common.define.smartArt.textVerticalProcess": "Proces vertical", "Common.Translation.textMoreButton": "Mai multe", "Common.Translation.warnFileLocked": "Nu puteți edita fișierul deoarece el este editat într-o altă aplicație. ", "Common.Translation.warnFileLockedBtnEdit": "Crează o copie", @@ -288,6 +447,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Se incarca...", "Common.Views.DocumentAccessDialog.textTitle": "Setări partajare", "Common.Views.ExternalDiagramEditor.textTitle": "Editor diagramă", + "Common.Views.ExternalEditor.textClose": "Închidere", + "Common.Views.ExternalEditor.textSave": "Salvare și ieșire", "Common.Views.ExternalMergeEditor.textTitle": "Destinatari pentru îmbinare corespondență", "Common.Views.ExternalOleEditor.textTitle": "Editor de foi de calcul", "Common.Views.Header.labelCoUsersDescr": "Fișierul este editat de către:", @@ -307,7 +468,7 @@ "Common.Views.Header.tipRedo": "Refacere", "Common.Views.Header.tipSave": "Salvează", "Common.Views.Header.tipSearch": "Căutare", - "Common.Views.Header.tipUndo": "Anulează", + "Common.Views.Header.tipUndo": "Anulare", "Common.Views.Header.tipUsers": "Vizualizare utilizatori", "Common.Views.Header.tipViewSettings": "Setări vizualizare", "Common.Views.Header.tipViewUsers": "Vizualizare utilizatori și gestionare permisiuni de acces", @@ -341,11 +502,11 @@ "Common.Views.OpenDialog.txtTitle": "Selectare opțiuni %1", "Common.Views.OpenDialog.txtTitleProtected": "Fișierul protejat", "Common.Views.PasswordDialog.txtDescription": "Setați o parolă pentru protejarea documentului", - "Common.Views.PasswordDialog.txtIncorrectPwd": "Parolă introdusă pentru confirmare nu este indentică cu prima", + "Common.Views.PasswordDialog.txtIncorrectPwd": "Parola și Confirmare parola nu este indentice", "Common.Views.PasswordDialog.txtPassword": "Parola", "Common.Views.PasswordDialog.txtRepeat": "Reintroduceți parola", "Common.Views.PasswordDialog.txtTitle": "Setare parolă", - "Common.Views.PasswordDialog.txtWarning": "Atenție: Dacă pierdeți sau uitați parola, ea nu poate fi recuperată. Să îl păstrați într-un loc sigur.", + "Common.Views.PasswordDialog.txtWarning": "Atenție: Dacă pierdeți sau uitați parola, ea nu poate fi recuperată. Să o păstrați într-un loc sigur.", "Common.Views.PluginDlg.textLoading": "Încărcare", "Common.Views.Plugins.groupCaption": "Plugin-uri", "Common.Views.Plugins.strPlugins": "Plugin-uri", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "Pornire", "Common.Views.Plugins.textStop": "Oprire", "Common.Views.Protection.hintAddPwd": "Criptare utilizând o parolă", + "Common.Views.Protection.hintDelPwd": "Ștergere parola", "Common.Views.Protection.hintPwd": "Modificarea sau eliminarea parolei", "Common.Views.Protection.hintSignature": "Adăugarea semnăturii digitale sau liniei de semnătură", "Common.Views.Protection.txtAddPwd": "Adăugare parola", @@ -444,12 +606,13 @@ "Common.Views.ReviewChangesDialog.txtPrev": "Modificarea anterioară", "Common.Views.ReviewChangesDialog.txtReject": "Respingere", "Common.Views.ReviewChangesDialog.txtRejectAll": "Se resping toate modificările", - "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Respinge modificare", + "Common.Views.ReviewChangesDialog.txtRejectCurrent": "Se respinge modificarea curentă", "Common.Views.ReviewPopover.textAdd": "Adaugă", "Common.Views.ReviewPopover.textAddReply": "Adăugare răspuns", "Common.Views.ReviewPopover.textCancel": "Revocare", "Common.Views.ReviewPopover.textClose": "Închidere", "Common.Views.ReviewPopover.textEdit": "OK", + "Common.Views.ReviewPopover.textEnterComment": "Comentați aici", "Common.Views.ReviewPopover.textFollowMove": "Urmărirea mutării", "Common.Views.ReviewPopover.textMention": "+mentionare pentru a furniza accesul la document și a trimite un e-mail", "Common.Views.ReviewPopover.textMentionNotify": "+mentionare pentru a notifica utilizatorul prin e-mail", @@ -465,6 +628,7 @@ "Common.Views.SaveAsDlg.textTitle": "Folderul de salvare", "Common.Views.SearchPanel.textCaseSensitive": "Sensibil la litere mari și mici", "Common.Views.SearchPanel.textCloseSearch": "Închide căutare", + "Common.Views.SearchPanel.textContentChanged": "Documentul a fost modificat.", "Common.Views.SearchPanel.textFind": "Găsire", "Common.Views.SearchPanel.textFindAndReplace": "Găsire și înlocuire", "Common.Views.SearchPanel.textMatchUsingRegExp": "Potrivire expresie regulată", @@ -473,6 +637,7 @@ "Common.Views.SearchPanel.textReplace": "Înlocuire", "Common.Views.SearchPanel.textReplaceAll": "Înlocuire peste tot", "Common.Views.SearchPanel.textReplaceWith": "Înlocuire cu", + "Common.Views.SearchPanel.textSearchAgain": "{0}Efectuați o nouă căutare{1} pentru rezultate mai precise.", "Common.Views.SearchPanel.textSearchHasStopped": "Сăutarea s-a oprit", "Common.Views.SearchPanel.textSearchResults": "Rezultatele căutării: {0}/{1}", "Common.Views.SearchPanel.textTooManyResults": "Prea multe rezultate ca să fie afișate aici", @@ -480,7 +645,7 @@ "Common.Views.SearchPanel.tipNextResult": "Următorul rezultat", "Common.Views.SearchPanel.tipPreviousResult": "Rezultatul anterior", "Common.Views.SelectFileDlg.textLoading": "Încărcare", - "Common.Views.SelectFileDlg.textTitle": "Selectați sursa de date", + "Common.Views.SelectFileDlg.textTitle": "Selectare sursă de date", "Common.Views.SignDialog.textBold": "Aldin", "Common.Views.SignDialog.textCertificate": "Certificat", "Common.Views.SignDialog.textChange": "Modificare", @@ -489,7 +654,7 @@ "Common.Views.SignDialog.textNameError": "Numele semnatarului trebuie completat.", "Common.Views.SignDialog.textPurpose": "Scopul semnării acestui document", "Common.Views.SignDialog.textSelect": "Selectare", - "Common.Views.SignDialog.textSelectImage": "Selectați imaginea", + "Common.Views.SignDialog.textSelectImage": "Selectare imagine", "Common.Views.SignDialog.textSignature": "Semnătura arată ca", "Common.Views.SignDialog.textTitle": "Semnare document", "Common.Views.SignDialog.textUseImage": "sau faceți clic pe Selectare imagine pentru a selecta o imagine de utilizat ca semnătură", @@ -497,9 +662,10 @@ "Common.Views.SignDialog.tipFontName": "Denumire font", "Common.Views.SignDialog.tipFontSize": "Dimensiune font", "Common.Views.SignSettingsDialog.textAllowComment": "Se permite semnatarului să adauge comentarii în dialogul Semnare", - "Common.Views.SignSettingsDialog.textInfoEmail": "E-mail", - "Common.Views.SignSettingsDialog.textInfoName": "Nume", - "Common.Views.SignSettingsDialog.textInfoTitle": "Funcția semnatarului", + "Common.Views.SignSettingsDialog.textDefInstruction": "Înninte de semnarea documentului, verificați corectitudinea conținutului acestuia.", + "Common.Views.SignSettingsDialog.textInfoEmail": "Adresa e-mail a semnatarului sugerat", + "Common.Views.SignSettingsDialog.textInfoName": "Semnatar sugerat", + "Common.Views.SignSettingsDialog.textInfoTitle": "Funcția semnatarului sugerat", "Common.Views.SignSettingsDialog.textInstructions": "Sugestie pentru semnatar", "Common.Views.SignSettingsDialog.textShowDate": "Se afișează data semnării în linia semnăturii", "Common.Views.SignSettingsDialog.textTitle": "Configurare semnătură", @@ -550,6 +716,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} nu este un caracter special pe care îl puteți introduce în câmpul pentru înlocuire.", "DE.Controllers.Main.applyChangesTextText": "Încărcarea modificărilor...", "DE.Controllers.Main.applyChangesTitleText": "Încărcare modificări", + "DE.Controllers.Main.confirmMaxChangesSize": "Numărul comenzilor depășește limita prevăzută pentru serverul dvs.
    Apăsați butonul Anulare pentru a anula ultima comanda dvs. sau apăsați butonul Continuare pentru a executa comanda în mod local (încărcați fișierul sau copiați conținutul pentru a se asigura că nu se pierde nimic).", "DE.Controllers.Main.convertationTimeoutText": "Timpul de așteptare pentru conversie a expirat.", "DE.Controllers.Main.criticalErrorExtText": "Apăsați OK pentru a vă întoarce la lista cu documente", "DE.Controllers.Main.criticalErrorTitle": "Eroare", @@ -560,6 +727,7 @@ "DE.Controllers.Main.downloadTitleText": "Descărcarea fișierului", "DE.Controllers.Main.errorAccessDeny": "Nu aveți dreptul să efectuați acțiunea pe care doriți.
    Contactați administratorul dumneavoastră de Server Documente.", "DE.Controllers.Main.errorBadImageUrl": "URL-ul imaginii incorectă", + "DE.Controllers.Main.errorCannotPasteImg": "Imposibil de lipit imaginea din clipboardul, dar puteți să o salvați pe dispozitivul dvs și să o inserați de acolo, sau puteți să copiați imaginea fără text și să o lipiți în documentul.", "DE.Controllers.Main.errorCoAuthoringDisconnect": "Conexiunea la server a fost pierdută. Deocamdată, imposibil de editat documentul.", "DE.Controllers.Main.errorComboSeries": "Pentru a crea o diagramă combinație, trebuie să selectați cel puțin două serii de date.", "DE.Controllers.Main.errorCompare": "Opțiunea Comparare documente nu este disponibilă în timpul coeditării. ", @@ -576,12 +744,18 @@ "DE.Controllers.Main.errorFilePassProtect": "Fișierul este protejat cu parolă și deaceea nu poate fi deschis.", "DE.Controllers.Main.errorFileSizeExceed": "Dimensiunea fișierului depășește limita permisă de serverul Dvs.
    Pentru detalii, contactați administratorul dumneavoastră de Server Documente.", "DE.Controllers.Main.errorForceSave": "S-a produs o eroare în timpul salvării fișierului. Pentru copierea de rezervă pe PC utilizați opțiunea Descărcare ca... sau încercați din nou mai târziu.", + "DE.Controllers.Main.errorInconsistentExt": "Eroare la deschiderea fișierului.
    Conținutul fișierului nu corespunde cu extensia numelui de fișier.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Eroare la deschiderea fișierului.
    Conținutul fișierului corespunde unui format de document text (ex. docx), dar extensia numelui de fișier nu se potrivește: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "Eroare la deschiderea fișierului.
    Conținutul fișierului corespunde unuia dintre următoarele formate: pdf/djvu/xps/oxps, dar extensia numelui de fișier nu se potrivește: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "Eroare la deschiderea fișierului.
    Conținutul fișierului corespunde unui format de prezentare (ex. pptx), dar extensia numelui de fișier nu se potrivește: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "Eroare la deschiderea fișierului.
    Conținutul fișierului corespunde unui format de foaie de calcul (ex. xlsx), dar extensia numelui de fișier nu se potrivește: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Descriptor cheie nerecunoscut", "DE.Controllers.Main.errorKeyExpire": "Descriptor cheie a expirat", "DE.Controllers.Main.errorLoadingFont": "Fonturile nu sunt încărcate.
    Contactați administratorul dvs de Server Documente.", "DE.Controllers.Main.errorMailMergeLoadFile": "Încărcarea fișierului eșuată. Selectați un alt fișier.", "DE.Controllers.Main.errorMailMergeSaveFile": "Îmbinarea eșuată.", "DE.Controllers.Main.errorNoTOC": "Nu există niciun cuprins de actualizat. Accesați fila Referințe ca să puteți insera un cuprins.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "Parola introdusă este incorectă.
    Verificaţi dacă nu este activată tasta CAPS LOCK și vă asigurați că utilizați introducerea corectă a majusculelor.", "DE.Controllers.Main.errorProcessSaveResult": "Salvarea nu a reușit.", "DE.Controllers.Main.errorServerVersion": "Editorul a fost actualizat. Pagina va fi reîmprospătată pentru a aplica această actualizare.", "DE.Controllers.Main.errorSessionAbsolute": "Sesiunea de editare a expirat. Încercați să reîmprospătați pagina.", @@ -590,6 +764,7 @@ "DE.Controllers.Main.errorSetPassword": "Setarea parolei eșuată.", "DE.Controllers.Main.errorStockChart": "Sortarea rândurilor în ordinea incorectă. Pentru crearea unei diagrame de stoc, datele în foaie trebuie sortate în ordinea următoare:
    prețul de deschidere, prețul maxim, prețul minim, prețul de închidere.", "DE.Controllers.Main.errorSubmit": "Remiterea eșuată.", + "DE.Controllers.Main.errorTextFormWrongFormat": "Ați introdus o valoare care nu corespunde cu formatul câmpului.", "DE.Controllers.Main.errorToken": "Token de securitate din document este format în mod incorect.
    Contactați administratorul dvs. de Server Documente.", "DE.Controllers.Main.errorTokenExpire": "Token de securitate din document a expirat.
    Contactați administratorul dvs. de Server Documente.", "DE.Controllers.Main.errorUpdateVersion": "Versiunea fișierului s-a modificat. Pagina va fi reîmprospătată.", @@ -637,6 +812,7 @@ "DE.Controllers.Main.textClose": "Închidere", "DE.Controllers.Main.textCloseTip": "Faceți clic pentru a închide sfatul", "DE.Controllers.Main.textContactUs": "Contactați Departamentul de Vânzări", + "DE.Controllers.Main.textContinue": "Continuare", "DE.Controllers.Main.textConvertEquation": "Această ecuație a fost creată în versiunea mai veche a editorului de ecuații, care nu mai este acceptată. Dacă doriți să o editați, trebuie să o convertiți în formatul Office Math ML.
    Doriți să o convertiți acum?", "DE.Controllers.Main.textCustomLoader": "Vă rugăm să rețineți că conform termenilor de licență nu aveți dreptul să modificați programul de încărcare.
    Pentru obținerea unei cotații de preț vă rugăm să contactați Departamentul de Vânzari.", "DE.Controllers.Main.textDisconnect": "Conexiune pierdută", @@ -657,6 +833,7 @@ "DE.Controllers.Main.textStrict": "Modul strict", "DE.Controllers.Main.textTryUndoRedo": "Funcții Anulare/Refacere sunt dezactivate în modul Rapid de editare colaborativă.
    Faceți clic pe Modul strict ca să comutați la modul Strict de editare colaborativă și să nu intrați în conflict cu alte persoane. Toate modificările vor fi trimise numai după ce le salvați. Ulilizati Setări avansate ale editorului ca să comutați între moduri de editare colaborativă. ", "DE.Controllers.Main.textTryUndoRedoWarn": "Funcții Anulare/Refacere sunt dezactivate în modul Rapid de editare colaborativă.", + "DE.Controllers.Main.textUndo": "Anulare", "DE.Controllers.Main.titleLicenseExp": "Licența a expirat", "DE.Controllers.Main.titleServerVersion": "Editorul a fost actualizat", "DE.Controllers.Main.titleUpdateVersion": "Versiunea s-a modificat", @@ -736,7 +913,7 @@ "DE.Controllers.Main.txtShape_callout2": "Rând de explicație 2 (fără bordură)", "DE.Controllers.Main.txtShape_callout3": "Rând de explicație 3 (fără bordură)", "DE.Controllers.Main.txtShape_can": "Cilindru", - "DE.Controllers.Main.txtShape_chevron": "Chevron", + "DE.Controllers.Main.txtShape_chevron": "Zigzag", "DE.Controllers.Main.txtShape_chord": "Acord", "DE.Controllers.Main.txtShape_circularArrow": "Săgeată circulară", "DE.Controllers.Main.txtShape_cloud": "Nor", @@ -1246,7 +1423,7 @@ "DE.Controllers.Toolbar.txtSymbol_ni": "Conținut în", "DE.Controllers.Toolbar.txtSymbol_not": "Semn negativ", "DE.Controllers.Toolbar.txtSymbol_notexists": "Nu există", - "DE.Controllers.Toolbar.txtSymbol_nu": "Niu", + "DE.Controllers.Toolbar.txtSymbol_nu": "Nu", "DE.Controllers.Toolbar.txtSymbol_o": "Omicron", "DE.Controllers.Toolbar.txtSymbol_omega": "Omega", "DE.Controllers.Toolbar.txtSymbol_partial": "Diferențială parțială", @@ -1326,16 +1503,31 @@ "DE.Views.CellsAddDialog.textRow": "Rânduri", "DE.Views.CellsAddDialog.textTitle": "Inserare mai multe", "DE.Views.CellsAddDialog.textUp": "Deasupra cursorului", + "DE.Views.ChartSettings.text3dDepth": "Adâncime (% din bază)", + "DE.Views.ChartSettings.text3dHeight": "Înălțime (% din bază)", + "DE.Views.ChartSettings.text3dRotation": "Rotație 3D", "DE.Views.ChartSettings.textAdvanced": "Afișare setări avansate", + "DE.Views.ChartSettings.textAutoscale": "Autoscalare", "DE.Views.ChartSettings.textChartType": "Modificare tip diagramă", + "DE.Views.ChartSettings.textDefault": "Rotație implicită", + "DE.Views.ChartSettings.textDown": "În jos", "DE.Views.ChartSettings.textEditData": "Editare date", "DE.Views.ChartSettings.textHeight": "Înălțime", + "DE.Views.ChartSettings.textLeft": "Stânga", + "DE.Views.ChartSettings.textNarrow": "Unghi de vizualizare îngust", "DE.Views.ChartSettings.textOriginalSize": "Dimensiunea reală", + "DE.Views.ChartSettings.textPerspective": "Perspectivă", + "DE.Views.ChartSettings.textRight": "Dreapta", + "DE.Views.ChartSettings.textRightAngle": "Axe în unghi drept", "DE.Views.ChartSettings.textSize": "Dimensiune", "DE.Views.ChartSettings.textStyle": "Stil", "DE.Views.ChartSettings.textUndock": "Detașare de panou", + "DE.Views.ChartSettings.textUp": "În sus", + "DE.Views.ChartSettings.textWiden": "Unghi de vizualizare larg", "DE.Views.ChartSettings.textWidth": "Lățime", "DE.Views.ChartSettings.textWrap": "Stil de încadrare", + "DE.Views.ChartSettings.textX": "Axa de rotație X", + "DE.Views.ChartSettings.textY": "Axa de rotație Y", "DE.Views.ChartSettings.txtBehind": "În spatele textului", "DE.Views.ChartSettings.txtInFront": "În fața textului", "DE.Views.ChartSettings.txtInline": "În linie cu textul", @@ -1425,14 +1617,24 @@ "DE.Views.DateTimeDialog.textLang": "Limbă", "DE.Views.DateTimeDialog.textUpdate": "Actualizarea automată", "DE.Views.DateTimeDialog.txtTitle": "Dată și oră", + "DE.Views.DocProtection.hintProtectDoc": "Protejare document", + "DE.Views.DocProtection.txtDocProtectedComment": "Documentul a fost protejat.
    Puteți numai să-l comentați.", + "DE.Views.DocProtection.txtDocProtectedForms": "Documentul a fost protejat.
    Documentul este diponibil numai pentru completarea formularelor.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Documentul a fost protejat.
    Puteți modifica acest document, dar toate modificările vor fi urmărite.", + "DE.Views.DocProtection.txtDocProtectedView": "Documentul a fost protejat.
    Documentul este disponibil numai pentru vizualizare..", + "DE.Views.DocProtection.txtDocUnlockDescription": "Introduceți parola pentru anularea protecției documentului", + "DE.Views.DocProtection.txtProtectDoc": "Protejare document", "DE.Views.DocumentHolder.aboveText": "Deasupra", "DE.Views.DocumentHolder.addCommentText": "Adaugă comentariu", "DE.Views.DocumentHolder.advancedDropCapText": "Setări majusculă încorporată", + "DE.Views.DocumentHolder.advancedEquationText": "Setări ecuație", "DE.Views.DocumentHolder.advancedFrameText": "Setări avansate cadru", "DE.Views.DocumentHolder.advancedParagraphText": "Setări avansate paragraf ", "DE.Views.DocumentHolder.advancedTableText": "Setări avansate tabel", "DE.Views.DocumentHolder.advancedText": "Setări avansate", "DE.Views.DocumentHolder.alignmentText": "Aliniere", + "DE.Views.DocumentHolder.allLinearText": "Tot - Linear", + "DE.Views.DocumentHolder.allProfText": "Tot - Profesional", "DE.Views.DocumentHolder.belowText": "Dedesubt", "DE.Views.DocumentHolder.breakBeforeText": "Sfârsit pagină inainte", "DE.Views.DocumentHolder.bulletsText": "Marcatori și numerotare", @@ -1441,6 +1643,8 @@ "DE.Views.DocumentHolder.centerText": "La centru", "DE.Views.DocumentHolder.chartText": "Setări avansate diagrama", "DE.Views.DocumentHolder.columnText": "Coloană", + "DE.Views.DocumentHolder.currLinearText": "Curent - Linear", + "DE.Views.DocumentHolder.currProfText": "Curent - Profesional", "DE.Views.DocumentHolder.deleteColumnText": "Ștergere coloana", "DE.Views.DocumentHolder.deleteRowText": "Ștergere rând", "DE.Views.DocumentHolder.deleteTableText": "Ștergere tabel", @@ -1453,6 +1657,7 @@ "DE.Views.DocumentHolder.editFooterText": "Editare notă de subsol", "DE.Views.DocumentHolder.editHeaderText": "Editare antet", "DE.Views.DocumentHolder.editHyperlinkText": "Editare Hyperlink", + "DE.Views.DocumentHolder.eqToInlineText": "Modificăre pentru încadrare în linie", "DE.Views.DocumentHolder.guestText": "Invitat", "DE.Views.DocumentHolder.hyperlinkText": "Hyperlink", "DE.Views.DocumentHolder.ignoreAllSpellText": "Ignorare totală", @@ -1467,6 +1672,7 @@ "DE.Views.DocumentHolder.insertText": "Inserare", "DE.Views.DocumentHolder.keepLinesText": "Păstrare linii împreună", "DE.Views.DocumentHolder.langText": "Selectați limba", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "Stânga", "DE.Views.DocumentHolder.loadSpellText": "Încărcarea variantelor...", "DE.Views.DocumentHolder.mergeCellsText": "Îmbinare celule", @@ -1554,10 +1760,10 @@ "DE.Views.DocumentHolder.textShapeAlignTop": "Aliniere sus", "DE.Views.DocumentHolder.textStartNewList": "Pornire listă nouă", "DE.Views.DocumentHolder.textStartNumberingFrom": "Setare valoare de numerotare", - "DE.Views.DocumentHolder.textTitleCellsRemove": "Eliminarea celulelor", + "DE.Views.DocumentHolder.textTitleCellsRemove": "Ștergere celule", "DE.Views.DocumentHolder.textTOC": "Cuprins", "DE.Views.DocumentHolder.textTOCSettings": "Setări cuprins", - "DE.Views.DocumentHolder.textUndo": "Anulează", + "DE.Views.DocumentHolder.textUndo": "Anulare", "DE.Views.DocumentHolder.textUpdateAll": "Actualizare tabel întreg", "DE.Views.DocumentHolder.textUpdatePages": "Actualizare numai numere de pagină", "DE.Views.DocumentHolder.textUpdateTOC": "Actualizare cuprins", @@ -1628,7 +1834,7 @@ "DE.Views.DocumentHolder.txtOverwriteCells": "Suprascriere celule", "DE.Views.DocumentHolder.txtPasteSourceFormat": "Păstrare formatare sursă", "DE.Views.DocumentHolder.txtPressLink": "Apăsați {0} și faceți clic pe linkul", - "DE.Views.DocumentHolder.txtPrintSelection": "Imprimare selecție", + "DE.Views.DocumentHolder.txtPrintSelection": "Imprimarea selecției", "DE.Views.DocumentHolder.txtRemFractionBar": "Eliminare bară de fracție", "DE.Views.DocumentHolder.txtRemLimit": "Eliminare limită", "DE.Views.DocumentHolder.txtRemoveAccentChar": "Eliminare caracter cu accent", @@ -1654,6 +1860,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "Bară dedesubt textului", "DE.Views.DocumentHolder.txtUngroup": "Anularea grupării", "DE.Views.DocumentHolder.txtWarnUrl": "Un clic pe acest link ar putea căuza daune dispozitivului și datelor dvs.
    Sunteți sigur că doriți să continuați?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "Actualizare stil %1", "DE.Views.DocumentHolder.vertAlignText": "Aliniere verticală", "DE.Views.DropcapSettingsAdvanced.strBorders": "Borduri și umplere", @@ -1663,9 +1870,9 @@ "DE.Views.DropcapSettingsAdvanced.textAtLeast": "Cel puțin", "DE.Views.DropcapSettingsAdvanced.textAuto": "Auto", "DE.Views.DropcapSettingsAdvanced.textBackColor": "Culoare de fundal", - "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Culoare bordura", + "DE.Views.DropcapSettingsAdvanced.textBorderColor": "Culoare bordură", "DE.Views.DropcapSettingsAdvanced.textBorderDesc": "Faceți clic pe diagramă sau selectați borduri cu butoane", - "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Dimensiune bordura", + "DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Dimensiune bordură", "DE.Views.DropcapSettingsAdvanced.textBottom": "Jos", "DE.Views.DropcapSettingsAdvanced.textCenter": "La centru", "DE.Views.DropcapSettingsAdvanced.textColumn": "Coloană", @@ -1750,6 +1957,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistică", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Subiect", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Simboluri", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Etichete", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titlu", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "S-a încărcat", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Cuvinte", @@ -1837,26 +2045,34 @@ "DE.Views.FormSettings.textColor": "Culoare bordura", "DE.Views.FormSettings.textComb": "Câmp de pieptene", "DE.Views.FormSettings.textCombobox": "Casetă combo", + "DE.Views.FormSettings.textComplex": "Câmp complex", "DE.Views.FormSettings.textConnected": "Câmpurile conexe", "DE.Views.FormSettings.textDelete": "Ștergere", + "DE.Views.FormSettings.textDigits": "Cifre", "DE.Views.FormSettings.textDisconnect": "Deconectare", "DE.Views.FormSettings.textDropDown": "Derulant", "DE.Views.FormSettings.textExact": "Exact", "DE.Views.FormSettings.textField": "Câmp text", "DE.Views.FormSettings.textFixed": "Câmpul cu dimensiunea fixă ", + "DE.Views.FormSettings.textFormat": "Formatare", + "DE.Views.FormSettings.textFormatSymbols": "Simboluri permise", "DE.Views.FormSettings.textFromFile": "Din fișier", "DE.Views.FormSettings.textFromStorage": "Din serviciul stocare", "DE.Views.FormSettings.textFromUrl": "Prin URL-ul", "DE.Views.FormSettings.textGroupKey": "Cheie de grup", "DE.Views.FormSettings.textImage": "Imagine", "DE.Views.FormSettings.textKey": "Cheie", + "DE.Views.FormSettings.textLetters": "Litere", "DE.Views.FormSettings.textLock": "Blocare", + "DE.Views.FormSettings.textMask": "Mascare arbitrară", "DE.Views.FormSettings.textMaxChars": "Numărul limită de caractere", "DE.Views.FormSettings.textMulti": "Câmp cu mai multe linii de text", "DE.Views.FormSettings.textNever": "Niciodată", "DE.Views.FormSettings.textNoBorder": "Fără bordură", + "DE.Views.FormSettings.textNone": "Niciunul", "DE.Views.FormSettings.textPlaceholder": "Substituent", "DE.Views.FormSettings.textRadiobox": "Buton opțiune", + "DE.Views.FormSettings.textReg": "Expresie uzuală", "DE.Views.FormSettings.textRequired": "Obligatoriu", "DE.Views.FormSettings.textScale": "Scalare", "DE.Views.FormSettings.textSelectImage": "Selectați imaginea", @@ -1873,10 +2089,13 @@ "DE.Views.FormSettings.textWidth": "Lățimea celulei", "DE.Views.FormsTab.capBtnCheckBox": "Caseta de selectare", "DE.Views.FormsTab.capBtnComboBox": "Casetă combo", + "DE.Views.FormsTab.capBtnComplex": "Câmp complex", "DE.Views.FormsTab.capBtnDownloadForm": "Descărcare în formatul oform", "DE.Views.FormsTab.capBtnDropDown": "Derulant", + "DE.Views.FormsTab.capBtnEmail": "Adresă de e-mail", "DE.Views.FormsTab.capBtnImage": "Imagine", "DE.Views.FormsTab.capBtnNext": "Câmpul următor", + "DE.Views.FormsTab.capBtnPhone": "Număr de telefon", "DE.Views.FormsTab.capBtnPrev": "Câmpul anterior", "DE.Views.FormsTab.capBtnRadioBox": "Buton opțiune", "DE.Views.FormsTab.capBtnSaveForm": "Salvare ca un formular OFORM", @@ -1891,12 +2110,15 @@ "DE.Views.FormsTab.textNoHighlight": "Fără evidențiere", "DE.Views.FormsTab.textRequired": "Toate câmpurile din formular trebuie completate înainte de a-l trimite.", "DE.Views.FormsTab.textSubmited": "Formularul a fost remis cu succes", - "DE.Views.FormsTab.tipCheckBox": "Se inserează un control casetă de selectare", + "DE.Views.FormsTab.tipCheckBox": "Inserare casetă de selectare", "DE.Views.FormsTab.tipComboBox": "Se inserează un control casetă combo", + "DE.Views.FormsTab.tipComplexField": "Inserare câmp complex", "DE.Views.FormsTab.tipDownloadForm": "Descărcare ca un fișer OFORM spre completare", "DE.Views.FormsTab.tipDropDown": "Se inserează un control listă verticală", + "DE.Views.FormsTab.tipEmailField": "Inserare adresă e-mail", "DE.Views.FormsTab.tipImageField": "Se inserează un control imagine", "DE.Views.FormsTab.tipNextForm": "Salt la câmpul următor", + "DE.Views.FormsTab.tipPhoneField": "Inserare număr de telefon", "DE.Views.FormsTab.tipPrevForm": "Salt la câmpul anterior", "DE.Views.FormsTab.tipRadioBox": "Se inserează un control buton opțiune", "DE.Views.FormsTab.tipSaveForm": "Salvare ca un fișer OFORM spre completare", @@ -1993,7 +2215,7 @@ "DE.Views.ImageSettingsAdvanced.textColumn": "Coloană", "DE.Views.ImageSettingsAdvanced.textDistance": "Distanță de la text", "DE.Views.ImageSettingsAdvanced.textEndSize": "Dimensiune sfârșit", - "DE.Views.ImageSettingsAdvanced.textEndStyle": "Tip sfârșit", + "DE.Views.ImageSettingsAdvanced.textEndStyle": "Stil sfârșit", "DE.Views.ImageSettingsAdvanced.textFlat": "Plat", "DE.Views.ImageSettingsAdvanced.textFlipped": "Răsturnat", "DE.Views.ImageSettingsAdvanced.textHeight": "Înălțime", @@ -2019,11 +2241,11 @@ "DE.Views.ImageSettingsAdvanced.textRelativeWH": "Relativ", "DE.Views.ImageSettingsAdvanced.textResizeFit": "Redimensionare formă pentru a se portivi cu textul", "DE.Views.ImageSettingsAdvanced.textRight": "Dreapta", - "DE.Views.ImageSettingsAdvanced.textRightMargin": "Marginea dreapta", + "DE.Views.ImageSettingsAdvanced.textRightMargin": "Marginea dreaptă", "DE.Views.ImageSettingsAdvanced.textRightOf": "în partea dreapta a", "DE.Views.ImageSettingsAdvanced.textRotation": "Rotație", "DE.Views.ImageSettingsAdvanced.textRound": "Rotund", - "DE.Views.ImageSettingsAdvanced.textShape": "Setări forma", + "DE.Views.ImageSettingsAdvanced.textShape": "Setări formă", "DE.Views.ImageSettingsAdvanced.textSize": "Dimensiune", "DE.Views.ImageSettingsAdvanced.textSquare": "Pătrat", "DE.Views.ImageSettingsAdvanced.textTextBox": "Casetă text", @@ -2049,6 +2271,7 @@ "DE.Views.LeftMenu.tipComments": "Comentarii", "DE.Views.LeftMenu.tipNavigation": "Navigare", "DE.Views.LeftMenu.tipOutline": "Titluri", + "DE.Views.LeftMenu.tipPageThumbnails": "Miniaturi Pagini", "DE.Views.LeftMenu.tipPlugins": "Plugin-uri", "DE.Views.LeftMenu.tipSearch": "Căutare", "DE.Views.LeftMenu.tipSupport": "Feedback și asistența", @@ -2125,7 +2348,7 @@ "DE.Views.ListSettingsDialog.txtNone": "Niciunul", "DE.Views.ListSettingsDialog.txtSize": "Dimensiune", "DE.Views.ListSettingsDialog.txtSymbol": "Simbol", - "DE.Views.ListSettingsDialog.txtTitle": "Setări lista", + "DE.Views.ListSettingsDialog.txtTitle": "Setări listă", "DE.Views.ListSettingsDialog.txtType": "Tip", "DE.Views.MailMergeEmailDlg.filePlaceholder": "PDF", "DE.Views.MailMergeEmailDlg.okButtonText": "Trimitere", @@ -2301,9 +2524,9 @@ "DE.Views.ParagraphSettingsAdvanced.textAuto": "Multiplu", "DE.Views.ParagraphSettingsAdvanced.textBackColor": "Culoare de fundal", "DE.Views.ParagraphSettingsAdvanced.textBodyText": "Text de bază", - "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Culoare bordura", + "DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Culoare bordură", "DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Faceți clic pe diagramă sau selectați borduri cu butoane și aplicați stilul selectat", - "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Dimensiune bordura", + "DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Dimensiune bordură", "DE.Views.ParagraphSettingsAdvanced.textBottom": "Jos", "DE.Views.ParagraphSettingsAdvanced.textCentered": "Centrat", "DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Spațierea caracterelor", @@ -2356,6 +2579,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Adăugare numai bordură de sus", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Fără borduri", + "DE.Views.ProtectDialog.textComments": "Comentarii", + "DE.Views.ProtectDialog.textForms": "Completarea formularelor", + "DE.Views.ProtectDialog.textReview": "Modificări urmărite", + "DE.Views.ProtectDialog.textView": "Fără modificări (Doar în citire)", + "DE.Views.ProtectDialog.txtAllow": "Se permite numai acest tip de editare în document", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Parola și Confirmare parola nu este indentice", + "DE.Views.ProtectDialog.txtOptional": "opțional", + "DE.Views.ProtectDialog.txtPassword": "Parola", + "DE.Views.ProtectDialog.txtProtect": "Protejare", + "DE.Views.ProtectDialog.txtRepeat": "Reintroduceți parola", + "DE.Views.ProtectDialog.txtTitle": "Protejare", + "DE.Views.ProtectDialog.txtWarning": "Atenție: Dacă pierdeți sau uitați parola, ea nu poate fi recuperată. Să o păstrați într-un loc sigur.", "DE.Views.RightMenu.txtChartSettings": "Setări diagramă", "DE.Views.RightMenu.txtFormSettings": "Setări Formular", "DE.Views.RightMenu.txtHeaderFooterSettings": "Setări antet și subsol", @@ -2466,8 +2701,8 @@ "DE.Views.TableFormulaDialog.textBookmark": "Lipire marcaj", "DE.Views.TableFormulaDialog.textFormat": "Formatul de număr", "DE.Views.TableFormulaDialog.textFormula": "Formula", - "DE.Views.TableFormulaDialog.textInsertFunction": "Lipire funcție", - "DE.Views.TableFormulaDialog.textTitle": "Setări formula", + "DE.Views.TableFormulaDialog.textInsertFunction": "Funcție de lipire ", + "DE.Views.TableFormulaDialog.textTitle": "Setări formulă", "DE.Views.TableOfContentsSettings.strAlign": "Alinierea numărul de pagină la dreapta", "DE.Views.TableOfContentsSettings.strFullCaption": "Cu etichetă și număr", "DE.Views.TableOfContentsSettings.strLinks": "Formatare cuprins utilizând linkuri", @@ -2546,12 +2781,20 @@ "DE.Views.TableSettings.tipOuter": "Adăugare numai bordură exterioară", "DE.Views.TableSettings.tipRight": "Adăugare numai bordură exterioară dreapta", "DE.Views.TableSettings.tipTop": "Adăugare numai bordură exterioară de sus", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "Tqbele cu bordiră și liniate", + "DE.Views.TableSettings.txtGroupTable_Custom": "Particularizat", + "DE.Views.TableSettings.txtGroupTable_Grid": "Tabele grilă", + "DE.Views.TableSettings.txtGroupTable_List": "Tabele de tip listă", + "DE.Views.TableSettings.txtGroupTable_Plain": "Tabele simple", "DE.Views.TableSettings.txtNoBorders": "Fără borduri", "DE.Views.TableSettings.txtTable_Accent": "Accent", + "DE.Views.TableSettings.txtTable_Bordered": "Cu bordură", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "Cu bordură și liniat", "DE.Views.TableSettings.txtTable_Colorful": "Colorat", "DE.Views.TableSettings.txtTable_Dark": "Întunecat", "DE.Views.TableSettings.txtTable_GridTable": "Grilă de tabel", "DE.Views.TableSettings.txtTable_Light": "Luminozitate", + "DE.Views.TableSettings.txtTable_Lined": "Liniat", "DE.Views.TableSettings.txtTable_ListTable": "Listă tabel", "DE.Views.TableSettings.txtTable_PlainTable": "Tabel simplu", "DE.Views.TableSettings.txtTable_TableGrid": "Linii de grilă tabel", @@ -2566,14 +2809,14 @@ "DE.Views.TableSettingsAdvanced.textAutofit": "Redimensionarea automată cu potrivire conținut", "DE.Views.TableSettingsAdvanced.textBackColor": "Fundal celulă", "DE.Views.TableSettingsAdvanced.textBelow": "dedesubt", - "DE.Views.TableSettingsAdvanced.textBorderColor": "Culoare bordura", + "DE.Views.TableSettingsAdvanced.textBorderColor": "Culoare bordură", "DE.Views.TableSettingsAdvanced.textBorderDesc": "Faceți clic pe diagramă sau selectați borduri cu butoane și aplicați stilul selectat", "DE.Views.TableSettingsAdvanced.textBordersBackgroung": "Borduri și fundal", - "DE.Views.TableSettingsAdvanced.textBorderWidth": "Dimensiune bordura", + "DE.Views.TableSettingsAdvanced.textBorderWidth": "Dimensiune bordură", "DE.Views.TableSettingsAdvanced.textBottom": "Jos", - "DE.Views.TableSettingsAdvanced.textCellOptions": "Opțiuni celula", + "DE.Views.TableSettingsAdvanced.textCellOptions": "Opțiuni celulă", "DE.Views.TableSettingsAdvanced.textCellProps": "Celula", - "DE.Views.TableSettingsAdvanced.textCellSize": "Dimensiune celula", + "DE.Views.TableSettingsAdvanced.textCellSize": "Dimensiune celulă", "DE.Views.TableSettingsAdvanced.textCenter": "La centru", "DE.Views.TableSettingsAdvanced.textCenterTooltip": "La centru", "DE.Views.TableSettingsAdvanced.textCheckMargins": "Se aplică margini implicite", @@ -2686,6 +2929,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Imagine", "DE.Views.Toolbar.capBtnInsPagebreak": "Întreruperi", "DE.Views.Toolbar.capBtnInsShape": "Forma", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Simbol", "DE.Views.Toolbar.capBtnInsTable": "Tabel", "DE.Views.Toolbar.capBtnInsTextart": "TextArt", @@ -2832,13 +3076,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Creștere nivel indentare", "DE.Views.Toolbar.tipInsertChart": "Inserare diagramă", "DE.Views.Toolbar.tipInsertEquation": "Inserare ecuație", + "DE.Views.Toolbar.tipInsertHorizontalText": "Inserare casetă text orizontală", "DE.Views.Toolbar.tipInsertImage": "Inserare imagine", "DE.Views.Toolbar.tipInsertNum": "Inserare număr de pagină", "DE.Views.Toolbar.tipInsertShape": "Inserare formă automată", + "DE.Views.Toolbar.tipInsertSmartArt": "Inserare SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Inserare simbol", "DE.Views.Toolbar.tipInsertTable": "Inserare tabel", "DE.Views.Toolbar.tipInsertText": "Inserare casetă text", "DE.Views.Toolbar.tipInsertTextArt": "Inserare TextArt", + "DE.Views.Toolbar.tipInsertVerticalText": "Inserare casetă text verticală", "DE.Views.Toolbar.tipLineNumbers": "Afișare numere de linie", "DE.Views.Toolbar.tipLineSpace": "Spațiere interlinie paragraf ", "DE.Views.Toolbar.tipMailRecepients": "Îmbinare corespondență", @@ -2851,6 +3098,10 @@ "DE.Views.Toolbar.tipMarkersFSquare": "Listă cu marcatori pătrat umplut", "DE.Views.Toolbar.tipMarkersHRound": "Listă cu marcatori cerc gol ", "DE.Views.Toolbar.tipMarkersStar": "Listă cu marcatori stele", + "DE.Views.Toolbar.tipMultiLevelArticl": "Articole multinivel numerotate ", + "DE.Views.Toolbar.tipMultiLevelChapter": "Capitole multinivel numerotate ", + "DE.Views.Toolbar.tipMultiLevelHeadings": "Titluri multinivel numerotate ", + "DE.Views.Toolbar.tipMultiLevelHeadVarious": "Titluri multinivel cu numerotare diversă ", "DE.Views.Toolbar.tipMultiLevelNumbered": "Listă multinivel numerotată", "DE.Views.Toolbar.tipMultilevels": "Listă multinivel", "DE.Views.Toolbar.tipMultiLevelSymbols": "Listă multinivel cu marcatori", @@ -2862,7 +3113,7 @@ "DE.Views.Toolbar.tipPageSize": "Dimensiune pagină", "DE.Views.Toolbar.tipParagraphStyle": "Stil paragraf", "DE.Views.Toolbar.tipPaste": "Lipire", - "DE.Views.Toolbar.tipPrColor": "Culoare fundal paragraf", + "DE.Views.Toolbar.tipPrColor": "Umbrire", "DE.Views.Toolbar.tipPrint": "Imprimare", "DE.Views.Toolbar.tipRedo": "Refacere", "DE.Views.Toolbar.tipSave": "Salvează", @@ -2872,7 +3123,7 @@ "DE.Views.Toolbar.tipSendForward": "Aducere în plan apropiat", "DE.Views.Toolbar.tipShowHiddenChars": "Caractere neimprimate", "DE.Views.Toolbar.tipSynchronize": "Documentul a fost modificat de către un alt utilizator. Salvați modificările făcute de dumneavoastră și reîmprospătați documentul.", - "DE.Views.Toolbar.tipUndo": "Anulează", + "DE.Views.Toolbar.tipUndo": "Anulare", "DE.Views.Toolbar.tipWatermark": "Editare inscripționare", "DE.Views.Toolbar.txtDistribHor": "Distribuire pe orizontală", "DE.Views.Toolbar.txtDistribVert": "Distribuire pe verticală", @@ -2906,8 +3157,10 @@ "DE.Views.ViewTab.textFitToPage": "Portivire la pagina", "DE.Views.ViewTab.textFitToWidth": "Potrivire lățime", "DE.Views.ViewTab.textInterfaceTheme": "Tema interfeței", + "DE.Views.ViewTab.textLeftMenu": "Panou stânga", "DE.Views.ViewTab.textNavigation": "Navigare", "DE.Views.ViewTab.textOutline": "Titluri", + "DE.Views.ViewTab.textRightMenu": "Panou dreapta", "DE.Views.ViewTab.textRulers": "Rigle", "DE.Views.ViewTab.textStatusBar": "Bară de stare", "DE.Views.ViewTab.textZoom": "Zoom", @@ -2931,7 +3184,7 @@ "DE.Views.WatermarkSettingsDialog.textLayout": "Aspect", "DE.Views.WatermarkSettingsDialog.textNone": "Niciunul", "DE.Views.WatermarkSettingsDialog.textScale": "Scară", - "DE.Views.WatermarkSettingsDialog.textSelect": "Selectați imaginea", + "DE.Views.WatermarkSettingsDialog.textSelect": "Selectare imagine", "DE.Views.WatermarkSettingsDialog.textStrikeout": "Tăiere cu o linie", "DE.Views.WatermarkSettingsDialog.textText": "Text", "DE.Views.WatermarkSettingsDialog.textTextW": "Inscripționare text", diff --git a/apps/documenteditor/main/locale/ru.json b/apps/documenteditor/main/locale/ru.json index 661f63c6b..da0b114ed 100644 --- a/apps/documenteditor/main/locale/ru.json +++ b/apps/documenteditor/main/locale/ru.json @@ -125,7 +125,168 @@ "Common.define.chartData.textScatterSmoothMarker": "Точечная с гладкими кривыми и маркерами", "Common.define.chartData.textStock": "Биржевая", "Common.define.chartData.textSurface": "Поверхность", + "Common.define.smartArt.textAccentedPicture": "Акцентируемый рисунок", + "Common.define.smartArt.textAccentProcess": "Процесс со смещением", + "Common.define.smartArt.textAlternatingFlow": "Переменный поток", + "Common.define.smartArt.textAlternatingHexagons": "Чередующиеся шестиугольники", + "Common.define.smartArt.textAlternatingPictureBlocks": "Чередующиеся блоки рисунков", + "Common.define.smartArt.textAlternatingPictureCircles": "Чередующиеся круги рисунков", + "Common.define.smartArt.textArchitectureLayout": "Архитектурный макет", + "Common.define.smartArt.textArrowRibbon": "Лента со стрелками", + "Common.define.smartArt.textAscendingPictureAccentProcess": "Процесс со смещенными по возрастанию рисунками", + "Common.define.smartArt.textBalance": "Баланс", + "Common.define.smartArt.textBasicBendingProcess": "Простой ломаный процесс", + "Common.define.smartArt.textBasicBlockList": "Простой блочный список", + "Common.define.smartArt.textBasicChevronProcess": "Простой уголковый процесс", + "Common.define.smartArt.textBasicCycle": "Простой цикл", + "Common.define.smartArt.textBasicMatrix": "Простая матрица", + "Common.define.smartArt.textBasicPie": "Простая круговая", + "Common.define.smartArt.textBasicProcess": "Простой процесс", + "Common.define.smartArt.textBasicPyramid": "Простая пирамида", + "Common.define.smartArt.textBasicRadial": "Простая радиальная", + "Common.define.smartArt.textBasicTarget": "Простая целевая", + "Common.define.smartArt.textBasicTimeline": "Простая временная шкала", + "Common.define.smartArt.textBasicVenn": "Простая Венна", + "Common.define.smartArt.textBendingPictureAccentList": "Ломаный список со смещенными рисунками", + "Common.define.smartArt.textBendingPictureBlocks": "Нелинейные рисунки с блоками", + "Common.define.smartArt.textBendingPictureCaption": "Нелинейные рисунки с подписями", + "Common.define.smartArt.textBendingPictureCaptionList": "Ломаный список рисунков с подписями", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "Нелинейные рисунки с полупрозрачным текстом", + "Common.define.smartArt.textBlockCycle": "Блочный цикл", + "Common.define.smartArt.textBubblePictureList": "Список рисунков с выносками", + "Common.define.smartArt.textCaptionedPictures": "Подписанные рисунки", + "Common.define.smartArt.textChevronAccentProcess": "Уголковый процесс со смещением", + "Common.define.smartArt.textChevronList": "Уголковый список", + "Common.define.smartArt.textCircleAccentTimeline": "Круглая временная шкала", + "Common.define.smartArt.textCircleArrowProcess": "Стрелка процесса с кругами", + "Common.define.smartArt.textCirclePictureHierarchy": "Иерархия с круглыми рисунками", + "Common.define.smartArt.textCircleProcess": "Процесс с кругами", + "Common.define.smartArt.textCircleRelationship": "Круг связей", + "Common.define.smartArt.textCircularBendingProcess": "Круглый ломаный процесс", + "Common.define.smartArt.textCircularPictureCallout": "Выноска с круглыми рисунками", + "Common.define.smartArt.textClosedChevronProcess": "Закрытый уголковый процесс", + "Common.define.smartArt.textContinuousArrowProcess": "Стрелка непрерывного процесса", + "Common.define.smartArt.textContinuousBlockProcess": "Непрерывный блочный процесс", + "Common.define.smartArt.textContinuousCycle": "Непрерывный цикл", + "Common.define.smartArt.textContinuousPictureList": "Непрерывный список с рисунками", + "Common.define.smartArt.textConvergingArrows": "Сходящиеся стрелки", + "Common.define.smartArt.textConvergingRadial": "Сходящаяся радиальная", + "Common.define.smartArt.textConvergingText": "Сходящийся текст", + "Common.define.smartArt.textCounterbalanceArrows": "Уравновешивающие стрелки", + "Common.define.smartArt.textCycle": "Цикл", + "Common.define.smartArt.textCycleMatrix": "Циклическая матрица", + "Common.define.smartArt.textDescendingBlockList": "Нисходящий блочный список", + "Common.define.smartArt.textDescendingProcess": "Убывающий процесс", + "Common.define.smartArt.textDetailedProcess": "Подробный процесс", + "Common.define.smartArt.textDivergingArrows": "Расходящиеся стрелки", + "Common.define.smartArt.textDivergingRadial": "Расходящаяся радиальная", + "Common.define.smartArt.textEquation": "Уравнение", + "Common.define.smartArt.textFramedTextPicture": "Рисунок с текстом в рамке", + "Common.define.smartArt.textFunnel": "Воронка", + "Common.define.smartArt.textGear": "Шестеренка", + "Common.define.smartArt.textGridMatrix": "Сетчатая матрица", + "Common.define.smartArt.textGroupedList": "Сгруппированный список", + "Common.define.smartArt.textHalfCircleOrganizationChart": "Полукруглая организационная диаграмма", + "Common.define.smartArt.textHexagonCluster": "Кластер шестиугольников", + "Common.define.smartArt.textHexagonRadial": "Радиальный шестиугольник", + "Common.define.smartArt.textHierarchy": "Иерархия", + "Common.define.smartArt.textHierarchyList": "Иерархический список", + "Common.define.smartArt.textHorizontalBulletList": "Горизонтальный маркированный список", + "Common.define.smartArt.textHorizontalHierarchy": "Горизонтальная иерархия", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "Горизонтальная иерархия с подписями", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "Горизонтальная многоуровневая иерархия", + "Common.define.smartArt.textHorizontalOrganizationChart": "Горизонтальная организационная диаграмма", + "Common.define.smartArt.textHorizontalPictureList": "Горизонтальный список рисунков", + "Common.define.smartArt.textIncreasingArrowProcess": "Стрелка нарастающего процесса", + "Common.define.smartArt.textIncreasingCircleProcess": "Нарастающий процесс с кругами", + "Common.define.smartArt.textInterconnectedBlockProcess": "Процесс со взаимосвязанными блоками", + "Common.define.smartArt.textInterconnectedRings": "Взаимосвязанные кольца", + "Common.define.smartArt.textInvertedPyramid": "Инвертированная пирамида", + "Common.define.smartArt.textLabeledHierarchy": "Иерархия с подписями", + "Common.define.smartArt.textLinearVenn": "Линейная Венна", + "Common.define.smartArt.textLinedList": "Список с линиями", + "Common.define.smartArt.textList": "Список", + "Common.define.smartArt.textMatrix": "Матрица", + "Common.define.smartArt.textMultidirectionalCycle": "Разнонаправленный цикл", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "Организационная диаграмма с именами и должностями", + "Common.define.smartArt.textNestedTarget": "Вложенная целевая", + "Common.define.smartArt.textNondirectionalCycle": "Ненаправленный цикл", + "Common.define.smartArt.textOpposingArrows": "Противостоящие стрелки", + "Common.define.smartArt.textOpposingIdeas": "Противоположные идеи", + "Common.define.smartArt.textOrganizationChart": "Организационная диаграмма", + "Common.define.smartArt.textOther": "Другое", + "Common.define.smartArt.textPhasedProcess": "Поэтапный процесс", + "Common.define.smartArt.textPicture": "Рисунок", + "Common.define.smartArt.textPictureAccentBlocks": "Блоки со смещенными рисунками", + "Common.define.smartArt.textPictureAccentList": "Список со смещенными рисунками", + "Common.define.smartArt.textPictureAccentProcess": "Процесс со смещенными рисунками", + "Common.define.smartArt.textPictureCaptionList": "Список названий рисунков", + "Common.define.smartArt.textPictureFrame": "Фоторамка", + "Common.define.smartArt.textPictureGrid": "Сетка рисунков", + "Common.define.smartArt.textPictureLineup": "Линия рисунков", + "Common.define.smartArt.textPictureOrganizationChart": "Организационная диаграмма с рисунками", + "Common.define.smartArt.textPictureStrips": "Полосы рисунков", + "Common.define.smartArt.textPieProcess": "Процесс с круговой диаграммой", + "Common.define.smartArt.textPlusAndMinus": "Плюс и минус", + "Common.define.smartArt.textProcess": "Процесс", + "Common.define.smartArt.textProcessArrows": "Стрелки процесса", + "Common.define.smartArt.textProcessList": "Список процессов", + "Common.define.smartArt.textPyramid": "Пирамида", + "Common.define.smartArt.textPyramidList": "Пирамидальный список", + "Common.define.smartArt.textRadialCluster": "Радиальный кластер", + "Common.define.smartArt.textRadialCycle": "Радиальная циклическая", + "Common.define.smartArt.textRadialList": "Радиальный список", + "Common.define.smartArt.textRadialPictureList": "Радиальный список рисунков", + "Common.define.smartArt.textRadialVenn": "Радиальная Венна", + "Common.define.smartArt.textRandomToResultProcess": "Процесс от случайности к результату", + "Common.define.smartArt.textRelationship": "Связь", + "Common.define.smartArt.textRepeatingBendingProcess": "Повторяющийся ломаный процесс", + "Common.define.smartArt.textReverseList": "Обратный список", + "Common.define.smartArt.textSegmentedCycle": "Сегментированный цикл", + "Common.define.smartArt.textSegmentedProcess": "Сегментированный процесс", + "Common.define.smartArt.textSegmentedPyramid": "Сегментированная пирамида", + "Common.define.smartArt.textSnapshotPictureList": "Список со снимками", + "Common.define.smartArt.textSpiralPicture": "Спираль рисунков", + "Common.define.smartArt.textSquareAccentList": "Список с квадратиками", + "Common.define.smartArt.textStackedList": "Список в столбик", + "Common.define.smartArt.textStackedVenn": "Венна в столбик", + "Common.define.smartArt.textStaggeredProcess": "Ступенчатый процесс", + "Common.define.smartArt.textStepDownProcess": "Нисходящий процесс", + "Common.define.smartArt.textStepUpProcess": "Восходящий процесс", + "Common.define.smartArt.textSubStepProcess": "Процесс с вложенными шагами", + "Common.define.smartArt.textTabbedArc": "Дуга с вкладками", + "Common.define.smartArt.textTableHierarchy": "Табличная иерархия", + "Common.define.smartArt.textTableList": "Табличный список", + "Common.define.smartArt.textTabList": "Список вкладок", + "Common.define.smartArt.textTargetList": "Целевой список", + "Common.define.smartArt.textTextCycle": "Текстовый цикл", + "Common.define.smartArt.textThemePictureAccent": "Смещенные рисунки темы", + "Common.define.smartArt.textThemePictureAlternatingAccent": "Чередующиеся смещенные рисунки темы", + "Common.define.smartArt.textThemePictureGrid": "Сетка рисунков темы", + "Common.define.smartArt.textTitledMatrix": "Матрица с заголовками", + "Common.define.smartArt.textTitledPictureAccentList": "Список со смещенными рисунками и заголовком", + "Common.define.smartArt.textTitledPictureBlocks": "Блоки рисунков с названиями", + "Common.define.smartArt.textTitlePictureLineup": "Линия рисунков с названиями", + "Common.define.smartArt.textTrapezoidList": "Трапециевидный список", + "Common.define.smartArt.textUpwardArrow": "Восходящая стрелка", + "Common.define.smartArt.textVaryingWidthList": "Список переменной ширины", + "Common.define.smartArt.textVerticalAccentList": "Вертикальный список со смещением", + "Common.define.smartArt.textVerticalArrowList": "Вертикальный список со стрелкой", + "Common.define.smartArt.textVerticalBendingProcess": "Вертикальный ломаный процесс", + "Common.define.smartArt.textVerticalBlockList": "Вертикальный блочный список", + "Common.define.smartArt.textVerticalBoxList": "Вертикальный список", + "Common.define.smartArt.textVerticalBracketList": "Вертикальный список со скобками", + "Common.define.smartArt.textVerticalBulletList": "Вертикальный маркированный список", + "Common.define.smartArt.textVerticalChevronList": "Вертикальный уголковый список", + "Common.define.smartArt.textVerticalCircleList": "Вертикальный список с кругами", + "Common.define.smartArt.textVerticalCurvedList": "Вертикальный нелинейный список", + "Common.define.smartArt.textVerticalEquation": "Вертикальное уравнение", + "Common.define.smartArt.textVerticalPictureAccentList": "Вертикальный список со смещенными рисунками", + "Common.define.smartArt.textVerticalPictureList": "Вертикальный список рисунков", + "Common.define.smartArt.textVerticalProcess": "Вертикальный процесс", "Common.Translation.textMoreButton": "Ещё", + "Common.Translation.tipFileLocked": "Документ заблокирован на редактирование. Вы можете внести изменения и сохранить его как локальную копию позже.", + "Common.Translation.tipFileReadOnly": "Файл доступен только для чтения. Чтобы сохранить изменения, сохраните файл с новым названием или в другом месте.", "Common.Translation.warnFileLocked": "Вы не можете редактировать этот файл, потому что он уже редактируется в другом приложении.", "Common.Translation.warnFileLockedBtnEdit": "Создать копию", "Common.Translation.warnFileLockedBtnView": "Открыть на просмотр", @@ -232,6 +393,10 @@ "Common.Views.AutoCorrectDialog.textDoubleSpaces": "Добавлять точку двойным пробелом", "Common.Views.AutoCorrectDialog.textFLCells": "Делать первые буквы ячеек таблиц прописными", "Common.Views.AutoCorrectDialog.textFLSentence": "Делать первые буквы предложений прописными", + "Common.Views.AutoCorrectDialog.textForLangFL": "Исключения для языка:", + "Common.Views.AutoCorrectDialog.textFLDont": "Не писать прописными буквами после", + "Common.Views.AutoCorrectDialog.textWarnResetFL": "Все добавленные вами исключения будут удалены, а удаленные восстановлены. Вы хотите продолжить?", + "Common.Views.AutoCorrectDialog.textWarnAddFL": "Исключения должны содержать только прописные или строчные буквы.", "Common.Views.AutoCorrectDialog.textHyperlink": "Адреса в Интернете и сетевые пути гиперссылками", "Common.Views.AutoCorrectDialog.textHyphens": "Дефисы (--) на тире (—)", "Common.Views.AutoCorrectDialog.textMathCorrect": "Автозамена математическими символами", @@ -299,6 +464,7 @@ "Common.Views.Header.textCompactView": "Скрыть панель инструментов", "Common.Views.Header.textHideLines": "Скрыть линейки", "Common.Views.Header.textHideStatusBar": "Скрыть строку состояния", + "Common.Views.Header.textReadOnly": "Только чтение", "Common.Views.Header.textRemoveFavorite": "Удалить из избранного", "Common.Views.Header.textShare": "Доступ", "Common.Views.Header.textZoom": "Масштаб", @@ -306,6 +472,7 @@ "Common.Views.Header.tipDownload": "Скачать файл", "Common.Views.Header.tipGoEdit": "Редактировать текущий файл", "Common.Views.Header.tipPrint": "Напечатать файл", + "Common.Views.Header.tipPrintQuick": "Быстрая печать", "Common.Views.Header.tipRedo": "Повторить", "Common.Views.Header.tipSave": "Сохранить", "Common.Views.Header.tipSearch": "Поиск", @@ -455,6 +622,7 @@ "Common.Views.ReviewPopover.textCancel": "Отмена", "Common.Views.ReviewPopover.textClose": "Закрыть", "Common.Views.ReviewPopover.textEdit": "OK", + "Common.Views.ReviewPopover.textEnterComment": "Введите здесь свой комментарий", "Common.Views.ReviewPopover.textFollowMove": "Перейти на прежнее место", "Common.Views.ReviewPopover.textMention": "+упоминание предоставит доступ к документу и отправит оповещение по почте", "Common.Views.ReviewPopover.textMentionNotify": "+упоминание отправит пользователю оповещение по почте", @@ -505,9 +673,9 @@ "Common.Views.SignDialog.tipFontSize": "Размер шрифта", "Common.Views.SignSettingsDialog.textAllowComment": "Разрешить подписывающему добавлять примечания в окне подписи", "Common.Views.SignSettingsDialog.textDefInstruction": "Перед подписанием документа убедитесь, что подписываемое содержимое является правильным.", - "Common.Views.SignSettingsDialog.textInfoEmail": "Адрес электронной почты", - "Common.Views.SignSettingsDialog.textInfoName": "Имя", - "Common.Views.SignSettingsDialog.textInfoTitle": "Должность подписывающего", + "Common.Views.SignSettingsDialog.textInfoEmail": "Адрес электронной почты предложенного подписывающего", + "Common.Views.SignSettingsDialog.textInfoName": "Предложенный подписывающий", + "Common.Views.SignSettingsDialog.textInfoTitle": "Должность предложенного подписывающего", "Common.Views.SignSettingsDialog.textInstructions": "Инструкции для подписывающего", "Common.Views.SignSettingsDialog.textShowDate": "Показывать дату подписи в строке подписи", "Common.Views.SignSettingsDialog.textTitle": "Настройка подписи", @@ -558,6 +726,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0} нельзя использовать как специальный символ в поле замены.", "DE.Controllers.Main.applyChangesTextText": "Загрузка изменений...", "DE.Controllers.Main.applyChangesTitleText": "Загрузка изменений", + "DE.Controllers.Main.confirmMaxChangesSize": "Размер внесенных изменений превышает ограничение, установленное для вашего сервера.
    Нажмите \"Отменить\" для отмены последнего действия или нажмите \"Продолжить\", чтобы сохранить действие локально (потребуется скачать файл или скопировать его содержимое чтобы ничего не потерялось).", "DE.Controllers.Main.convertationTimeoutText": "Превышено время ожидания конвертации.", "DE.Controllers.Main.criticalErrorExtText": "Нажмите \"OK\", чтобы вернуться к списку документов.", "DE.Controllers.Main.criticalErrorTitle": "Ошибка", @@ -568,6 +737,7 @@ "DE.Controllers.Main.downloadTitleText": "Загрузка документа", "DE.Controllers.Main.errorAccessDeny": "Вы пытаетесь выполнить действие, на которое у вас нет прав.
    Пожалуйста, обратитесь к администратору Сервера документов.", "DE.Controllers.Main.errorBadImageUrl": "Неправильный URL-адрес изображения", + "DE.Controllers.Main.errorCannotPasteImg": "Не удается вставить это изображение из буфера обмена, но вы можете сохранить его на устройстве и вставить оттуда или вы можете скопировать изображение без текста и вставить его в документ.", "DE.Controllers.Main.errorCoAuthoringDisconnect": "Потеряно соединение с сервером. В данный момент нельзя отредактировать документ.", "DE.Controllers.Main.errorComboSeries": "Для создания комбинированной диаграммы выберите не менее двух рядов данных.", "DE.Controllers.Main.errorCompare": "Функция сравнения документов недоступна в режиме совместного редактирования.", @@ -584,12 +754,18 @@ "DE.Controllers.Main.errorFilePassProtect": "Файл защищен паролем и не может быть открыт.", "DE.Controllers.Main.errorFileSizeExceed": "Размер файла превышает ограничение, установленное для вашего сервера.
    Обратитесь к администратору Сервера документов для получения дополнительной информации.", "DE.Controllers.Main.errorForceSave": "При сохранении файла произошла ошибка. Используйте опцию 'Скачать как', чтобы сохранить файл на диск или повторите попытку позже.", + "DE.Controllers.Main.errorInconsistentExt": "При открытии файла произошла ошибка.
    Содержимое файла не соответствует расширению файла.", + "DE.Controllers.Main.errorInconsistentExtDocx": "При открытии файла произошла ошибка.
    Содержимое файла соответствует документам (например, docx), но файл имеет несоответствующее расширение: %1.", + "DE.Controllers.Main.errorInconsistentExtPdf": "При открытии файла произошла ошибка.
    Содержимое файла соответствует одному из следующих форматов: pdf/djvu/xps/oxps, но файл имеет несоответствующее расширение: %1.", + "DE.Controllers.Main.errorInconsistentExtPptx": "При открытии файла произошла ошибка.
    Содержимое файла соответствует презентациям (например, pptx), но файл имеет несоответствующее расширение: %1.", + "DE.Controllers.Main.errorInconsistentExtXlsx": "При открытии файла произошла ошибка.
    Содержимое файла соответствует электронным таблицам (например, xlsx), но файл имеет несоответствующее расширение: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Неизвестный дескриптор ключа", "DE.Controllers.Main.errorKeyExpire": "Срок действия дескриптора ключа истек", "DE.Controllers.Main.errorLoadingFont": "Шрифты не загружены.
    Пожалуйста, обратитесь к администратору Сервера документов.", "DE.Controllers.Main.errorMailMergeLoadFile": "Загрузка документа не удалась. Выберите другой файл.", "DE.Controllers.Main.errorMailMergeSaveFile": "Не удалось выполнить слияние.", "DE.Controllers.Main.errorNoTOC": "Нет оглавления, которое нужно обновить. Вы можете вставить его на вкладке Ссылки.", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "Неверный пароль.
    Убедитесь, что отключена клавиша CAPS LOCK и используется правильный регистр.", "DE.Controllers.Main.errorProcessSaveResult": "Сбой при сохранении.", "DE.Controllers.Main.errorServerVersion": "Версия редактора была обновлена. Страница будет перезагружена, чтобы применить изменения.", "DE.Controllers.Main.errorSessionAbsolute": "Время сеанса редактирования документа истекло. Пожалуйста, обновите страницу.", @@ -646,6 +822,7 @@ "DE.Controllers.Main.textClose": "Закрыть", "DE.Controllers.Main.textCloseTip": "Щелкните, чтобы закрыть эту подсказку", "DE.Controllers.Main.textContactUs": "Связаться с отделом продаж", + "DE.Controllers.Main.textContinue": "Продолжить", "DE.Controllers.Main.textConvertEquation": "Это уравнение создано в старой версии редактора уравнений, которая больше не поддерживается. Чтобы изменить это уравнение, его необходимо преобразовать в формат Office Math ML.
    Преобразовать сейчас?", "DE.Controllers.Main.textCustomLoader": "Обратите внимание, что по условиям лицензии у вас нет прав изменять экран, отображаемый при загрузке.
    Пожалуйста, обратитесь в наш отдел продаж, чтобы сделать запрос.", "DE.Controllers.Main.textDisconnect": "Соединение потеряно", @@ -664,8 +841,10 @@ "DE.Controllers.Main.textRequestMacros": "Макрос делает запрос на URL. Вы хотите разрешить запрос на %1?", "DE.Controllers.Main.textShape": "Фигура", "DE.Controllers.Main.textStrict": "Строгий режим", + "DE.Controllers.Main.textTryQuickPrint": "Вы выбрали быструю печать: весь документ будет напечатан на последнем выбранном принтере или на принтере по умолчанию.
    Вы хотите продолжить?", "DE.Controllers.Main.textTryUndoRedo": "Функции отмены и повтора действий отключены в Быстром режиме совместного редактирования.
    Нажмите на кнопку 'Строгий режим' для переключения в Строгий режим совместного редактирования, чтобы редактировать файл без вмешательства других пользователей и отправлять изменения только после того, как вы их сохраните. Переключаться между режимами совместного редактирования можно с помощью Дополнительных параметров редактора.", "DE.Controllers.Main.textTryUndoRedoWarn": "Функции отмены и повтора действий отключены в Быстром режиме совместного редактирования.", + "DE.Controllers.Main.textUndo": "Отменить", "DE.Controllers.Main.titleLicenseExp": "Истек срок действия лицензии", "DE.Controllers.Main.titleServerVersion": "Редактор обновлен", "DE.Controllers.Main.titleUpdateVersion": "Версия изменилась", @@ -936,6 +1115,10 @@ "DE.Controllers.Main.warnProcessRightsChange": "Вам было отказано в праве на редактирование этого файла.", "DE.Controllers.Navigation.txtBeginning": "Начало документа", "DE.Controllers.Navigation.txtGotoBeginning": "Перейти в начало документа", + "DE.Controllers.Print.textMarginsLast": "Последние настраиваемые", + "DE.Controllers.Print.txtCustom": "Пользовательское", + "DE.Controllers.Print.txtPrintRangeInvalid": "Неправильный диапазон печати", + "DE.Controllers.Print.txtPrintRangeSingleRange": "Введите или один номер страницы, или один диапазон страниц (например, 5-12). Или вы можете выбрать печать в PDF.", "DE.Controllers.Search.notcriticalErrorTitle": "Внимание", "DE.Controllers.Search.textNoTextFound": "Искомые данные не найдены. Пожалуйста, измените параметры поиска.", "DE.Controllers.Search.textReplaceSkipped": "Замена выполнена. Пропущено вхождений - {0}.", @@ -1449,6 +1632,13 @@ "DE.Views.DateTimeDialog.textLang": "Язык", "DE.Views.DateTimeDialog.textUpdate": "Обновлять автоматически", "DE.Views.DateTimeDialog.txtTitle": "Дата и время", + "DE.Views.DocProtection.hintProtectDoc": "Защитить документ", + "DE.Views.DocProtection.txtDocProtectedComment": "Документ защищен.
    Вы можете только добавлять комментарии к этому документу.", + "DE.Views.DocProtection.txtDocProtectedForms": "Документ защищен.
    Вы можете только заполнять формы в этом документе.", + "DE.Views.DocProtection.txtDocProtectedTrack": "Документ защищен.
    Вы можете редактировать этот документ, но все изменения будут отслеживаться.", + "DE.Views.DocProtection.txtDocProtectedView": "Документ защищен.
    Вы можете только просматривать этот документ.", + "DE.Views.DocProtection.txtDocUnlockDescription": "Введите пароль, чтобы снять защиту документа", + "DE.Views.DocProtection.txtProtectDoc": "Защитить документ", "DE.Views.DocumentHolder.aboveText": "Выше", "DE.Views.DocumentHolder.addCommentText": "Добавить комментарий", "DE.Views.DocumentHolder.advancedDropCapText": "Параметры буквицы", @@ -1647,6 +1837,7 @@ "DE.Views.DocumentHolder.txtInsertArgBefore": "Вставить аргумент перед", "DE.Views.DocumentHolder.txtInsertBreak": "Вставить принудительный разрыв", "DE.Views.DocumentHolder.txtInsertCaption": "Вставить название", + "DE.Views.DocumentHolder.textSaveAsPicture": "Сохранить как рисунок", "DE.Views.DocumentHolder.txtInsertEqAfter": "Вставить уравнение после", "DE.Views.DocumentHolder.txtInsertEqBefore": "Вставить уравнение перед", "DE.Views.DocumentHolder.txtKeepTextOnly": "Сохранить только текст", @@ -1782,6 +1973,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Статистика", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Тема", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Символы", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Теги", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Название", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Загружен", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Слова", @@ -1846,6 +2038,8 @@ "DE.Views.FileMenuPanels.Settings.txtNone": "Никакие", "DE.Views.FileMenuPanels.Settings.txtProofing": "Правописание", "DE.Views.FileMenuPanels.Settings.txtPt": "Пункт", + "DE.Views.FileMenuPanels.Settings.txtQuickPrint": "Показывать кнопку Быстрая печать в шапке редактора", + "DE.Views.FileMenuPanels.Settings.txtQuickPrintTip": "Документ будет напечатан на последнем выбранном принтере или на принтере по умолчанию", "DE.Views.FileMenuPanels.Settings.txtRunMacros": "Включить все", "DE.Views.FileMenuPanels.Settings.txtRunMacrosDesc": "Включить все макросы без уведомления", "DE.Views.FileMenuPanels.Settings.txtShowTrackChanges": "Показывать изменения при рецензировании", @@ -2403,6 +2597,45 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Задать только верхнюю границу", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Авто", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Без границ", + "DE.Views.ProtectDialog.textComments": "Комментарии", + "DE.Views.ProtectDialog.textForms": "Заполнение форм", + "DE.Views.ProtectDialog.textReview": "Отслеживаемые изменения", + "DE.Views.ProtectDialog.textView": "Только чтение", + "DE.Views.ProtectDialog.txtAllow": "Разрешить только указанный способ редактирования документа", + "DE.Views.ProtectDialog.txtIncorrectPwd": "Пароль и его подтверждение не совпадают", + "DE.Views.ProtectDialog.txtOptional": "необязательно", + "DE.Views.ProtectDialog.txtPassword": "Пароль", + "DE.Views.ProtectDialog.txtProtect": "Защитить", + "DE.Views.ProtectDialog.txtRepeat": "Повторить пароль", + "DE.Views.ProtectDialog.txtTitle": "Защитить", + "DE.Views.ProtectDialog.txtWarning": "Внимание: Если пароль забыт или утерян, его нельзя восстановить. Храните его в надежном месте.", + "DE.Views.PrintWithPreview.textMarginsLast": "Последние настраиваемые", + "DE.Views.PrintWithPreview.textMarginsModerate": "Средние", + "DE.Views.PrintWithPreview.textMarginsNarrow": "Узкие", + "DE.Views.PrintWithPreview.textMarginsNormal": "Обычные", + "DE.Views.PrintWithPreview.textMarginsUsNormal": "Обычные (американский стандарт)", + "DE.Views.PrintWithPreview.textMarginsWide": "Широкие", + "DE.Views.PrintWithPreview.txtAllPages": "Все страницы", + "DE.Views.PrintWithPreview.txtBottom": "Нижнее", + "DE.Views.PrintWithPreview.txtCurrentPage": "Текущая страница", + "DE.Views.PrintWithPreview.txtCustom": "Пользовательское", + "DE.Views.PrintWithPreview.txtCustomPages": "Настраиваемая печать", + "DE.Views.PrintWithPreview.txtLandscape": "Альбомная", + "DE.Views.PrintWithPreview.txtLeft": "Левое", + "DE.Views.PrintWithPreview.txtMargins": "Поля", + "DE.Views.PrintWithPreview.txtOf": "из {0}", + "DE.Views.PrintWithPreview.txtPage": "Страница", + "DE.Views.PrintWithPreview.txtPageNumInvalid": "Неправильный номер страницы", + "DE.Views.PrintWithPreview.txtPageOrientation": "Ориентация страницы", + "DE.Views.PrintWithPreview.txtPages": "Страницы", + "DE.Views.PrintWithPreview.txtPageSize": "Размер страницы", + "DE.Views.PrintWithPreview.txtPortrait": "Книжная", + "DE.Views.PrintWithPreview.txtPrint": "Печать", + "DE.Views.PrintWithPreview.txtPrintPdf": "Печать в PDF", + "DE.Views.PrintWithPreview.txtPrintRange": "Диапазон печати", + "DE.Views.PrintWithPreview.txtRight": "Правое", + "DE.Views.PrintWithPreview.txtSelection": "Выделенный фрагмент", + "DE.Views.PrintWithPreview.txtTop": "Верхнее", "DE.Views.RightMenu.txtChartSettings": "Параметры диаграммы", "DE.Views.RightMenu.txtFormSettings": "Параметры формы", "DE.Views.RightMenu.txtHeaderFooterSettings": "Параметры верхнего и нижнего колонтитулов", @@ -2741,6 +2974,7 @@ "DE.Views.Toolbar.capBtnInsImage": "Изображение", "DE.Views.Toolbar.capBtnInsPagebreak": "Разрывы", "DE.Views.Toolbar.capBtnInsShape": "Фигура", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "Символ", "DE.Views.Toolbar.capBtnInsTable": "Таблица", "DE.Views.Toolbar.capBtnInsTextart": "Text Art", @@ -2887,15 +3121,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "Увеличить отступ", "DE.Views.Toolbar.tipInsertChart": "Вставить диаграмму", "DE.Views.Toolbar.tipInsertEquation": "Вставить уравнение", + "DE.Views.Toolbar.tipInsertHorizontalText": "Вставить горизонтальную надпись", "DE.Views.Toolbar.tipInsertImage": "Вставить изображение", "DE.Views.Toolbar.tipInsertNum": "Вставить номер страницы", "DE.Views.Toolbar.tipInsertShape": "Вставить автофигуру", + "DE.Views.Toolbar.tipInsertSmartArt": "Вставить SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "Вставить символ", "DE.Views.Toolbar.tipInsertTable": "Вставить таблицу", - "DE.Views.Toolbar.tipInsertHorizontalText": "Вставить горизонтальную надпись", - "DE.Views.Toolbar.tipInsertVerticalText": "Вставить вертикальную надпись", "DE.Views.Toolbar.tipInsertText": "Вставить надпись", "DE.Views.Toolbar.tipInsertTextArt": "Вставить объект Text Art", + "DE.Views.Toolbar.tipInsertVerticalText": "Вставить вертикальную надпись", "DE.Views.Toolbar.tipLineNumbers": "Показывать номера строк", "DE.Views.Toolbar.tipLineSpace": "Междустрочный интервал в абзацах", "DE.Views.Toolbar.tipMailRecepients": "Слияние", @@ -2923,7 +3158,7 @@ "DE.Views.Toolbar.tipPageSize": "Размер страницы", "DE.Views.Toolbar.tipParagraphStyle": "Стиль абзаца", "DE.Views.Toolbar.tipPaste": "Вставить", - "DE.Views.Toolbar.tipPrColor": "Цвет фона абзаца", + "DE.Views.Toolbar.tipPrColor": "Заливка", "DE.Views.Toolbar.tipPrint": "Печать", "DE.Views.Toolbar.tipRedo": "Повторить", "DE.Views.Toolbar.tipSave": "Сохранить", @@ -2967,8 +3202,10 @@ "DE.Views.ViewTab.textFitToPage": "По размеру страницы", "DE.Views.ViewTab.textFitToWidth": "По ширине", "DE.Views.ViewTab.textInterfaceTheme": "Тема интерфейса", + "DE.Views.ViewTab.textLeftMenu": "Левая панель", "DE.Views.ViewTab.textNavigation": "Навигация", "DE.Views.ViewTab.textOutline": "Заголовки", + "DE.Views.ViewTab.textRightMenu": "Правая панель", "DE.Views.ViewTab.textRulers": "Линейки", "DE.Views.ViewTab.textStatusBar": "Строка состояния", "DE.Views.ViewTab.textZoom": "Масштаб", diff --git a/apps/documenteditor/main/locale/sk.json b/apps/documenteditor/main/locale/sk.json index d74a7bdad..acdc7974a 100644 --- a/apps/documenteditor/main/locale/sk.json +++ b/apps/documenteditor/main/locale/sk.json @@ -1377,6 +1377,8 @@ "DE.Views.DateTimeDialog.textLang": "Jazyk", "DE.Views.DateTimeDialog.textUpdate": "Aktualizovať automaticky", "DE.Views.DateTimeDialog.txtTitle": "Dátum a čas", + "DE.Views.DocProtection.hintProtectDoc": "Ochrániť dokument", + "DE.Views.DocProtection.txtProtectDoc": "Ochrániť dokument", "DE.Views.DocumentHolder.aboveText": "Nad", "DE.Views.DocumentHolder.addCommentText": "Pridať komentár", "DE.Views.DocumentHolder.advancedDropCapText": "Nastavenia kvapkového uzáveru", @@ -2250,6 +2252,8 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Nastaviť len horné orámovanie", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Automaticky", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Bez orámovania", + "DE.Views.ProtectDialog.txtProtect": "Ochrániť", + "DE.Views.ProtectDialog.txtTitle": "Ochrániť", "DE.Views.RightMenu.txtChartSettings": "Nastavenia grafu", "DE.Views.RightMenu.txtFormSettings": "Nastavenia formulára", "DE.Views.RightMenu.txtHeaderFooterSettings": "Nastavenie hlavičky a päty", diff --git a/apps/documenteditor/main/locale/sl.json b/apps/documenteditor/main/locale/sl.json index 84fcb125e..2011c5a85 100644 --- a/apps/documenteditor/main/locale/sl.json +++ b/apps/documenteditor/main/locale/sl.json @@ -61,7 +61,7 @@ "Common.Controllers.ReviewChanges.textParaMoveTo": "Premakni se:", "Common.Controllers.ReviewChanges.textPosition": "Position", "Common.Controllers.ReviewChanges.textRight": "Align right", - "Common.Controllers.ReviewChanges.textShape": "Shape", + "Common.Controllers.ReviewChanges.textShape": "Oblika", "Common.Controllers.ReviewChanges.textShd": "Background color", "Common.Controllers.ReviewChanges.textSmallCaps": "Small caps", "Common.Controllers.ReviewChanges.textSpacing": "Spacing", @@ -430,6 +430,7 @@ "DE.Controllers.Main.textLoadingDocument": "Nalaganje dokumenta", "DE.Controllers.Main.textNoLicenseTitle": "%1 omejitev povezave", "DE.Controllers.Main.textReconnect": "Povezava je obnovljena", + "DE.Controllers.Main.textShape": "Oblika", "DE.Controllers.Main.textStrict": "Strict mode", "DE.Controllers.Main.textTryUndoRedo": "The Undo/Redo functions are disabled for the Fast co-editing mode.
    Click the 'Strict mode' button to switch to the Strict co-editing mode to edit the file without other users interference and send your changes only after you save them. You can switch between the co-editing modes using the editor Advanced settings.", "DE.Controllers.Main.titleServerVersion": "Urednik je bil posodobljen", @@ -512,6 +513,7 @@ "DE.Controllers.Main.txtStyle_Heading_8": "Naslov 8", "DE.Controllers.Main.txtStyle_Heading_9": "Naslov 9", "DE.Controllers.Main.txtStyle_Normal": "Normalno", + "DE.Controllers.Main.txtTableOfContents": "Vsebina", "DE.Controllers.Main.txtTypeEquation": "Tukaj vnesite enačbo", "DE.Controllers.Main.txtXAxis": "X os", "DE.Controllers.Main.txtYAxis": "Y os", @@ -939,6 +941,7 @@ "DE.Views.CrossReferenceDialog.textEndNoteNum": "Številka končne opombe", "DE.Views.CrossReferenceDialog.textEquation": "Enačba", "DE.Views.CrossReferenceDialog.textFootnote": "Sprotna opomba", + "DE.Views.CrossReferenceDialog.textHeading": "Naslov", "DE.Views.CrossReferenceDialog.textNoteNum": "Številka sprotne opombe", "DE.Views.CustomColumnsDialog.textColumns": "Število stolpcev", "DE.Views.CustomColumnsDialog.textTitle": "Stolpci", @@ -947,6 +950,8 @@ "DE.Views.DateTimeDialog.textLang": "Jezik", "DE.Views.DateTimeDialog.textUpdate": "Samodejno posodobi", "DE.Views.DateTimeDialog.txtTitle": "Datum & Ura", + "DE.Views.DocProtection.hintProtectDoc": "Zaščiti dokument", + "DE.Views.DocProtection.txtProtectDoc": "Zaščiti dokument", "DE.Views.DocumentHolder.aboveText": "Nad", "DE.Views.DocumentHolder.addCommentText": "Dodaj komentar", "DE.Views.DocumentHolder.advancedFrameText": "Napredne nastavitve okvirja", @@ -1044,6 +1049,7 @@ "DE.Views.DocumentHolder.textShapeAlignRight": "Poravnaj desno", "DE.Views.DocumentHolder.textShapeAlignTop": "Poravnaj vrh", "DE.Views.DocumentHolder.textTitleCellsRemove": "Izbriši celice", + "DE.Views.DocumentHolder.textTOC": "Vsebina", "DE.Views.DocumentHolder.textUndo": "Razveljavi", "DE.Views.DocumentHolder.textWrap": "Slog zavijanja", "DE.Views.DocumentHolder.tipIsLocked": "Ta element trenutno ureja drug uporabnik.", @@ -1393,6 +1399,7 @@ "DE.Views.LeftMenu.tipChat": "Pogovor", "DE.Views.LeftMenu.tipComments": "Komentarji", "DE.Views.LeftMenu.tipNavigation": "Navigacija", + "DE.Views.LeftMenu.tipOutline": "Naslovi", "DE.Views.LeftMenu.tipPlugins": "Razširitve", "DE.Views.LeftMenu.tipSearch": "Iskanje", "DE.Views.LeftMenu.tipSupport": "Povratne informacije & Pomoč", @@ -1405,6 +1412,7 @@ "DE.Views.Links.capBtnAddText": "Dodaj besedilo", "DE.Views.Links.capBtnBookmarks": "Zaznamek", "DE.Views.Links.capBtnCaption": "Napis", + "DE.Views.Links.capBtnInsContents": "Vsebina", "DE.Views.Links.capBtnInsFootnote": "Sprotna opomba", "DE.Views.Links.capBtnInsLink": "Hiperpovezava", "DE.Views.Links.confirmReplaceTOF": "Ali želite zamenjati izbrano kazalo slik?", @@ -1478,6 +1486,7 @@ "DE.Views.MailMergeSettings.txtPrev": "To previous record", "DE.Views.MailMergeSettings.txtUntitled": "Untitled", "DE.Views.MailMergeSettings.warnProcessMailMerge": "Starting merge failed", + "DE.Views.Navigation.strNavigate": "Naslovi", "DE.Views.Navigation.txtEmpty": "V dokumentu ni naslovov.
    Z uporabo slogov v besedilu določite naslove, tako se bodo prikazali v kazalu in navigaciji.", "DE.Views.Navigation.txtEmptyViewer": "V dokumentu ni naslovov.", "DE.Views.Navigation.txtFontSize": "Velikost pisave", @@ -1595,6 +1604,8 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Nastavi le zgornjo mejo", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Samodejno", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Ni mej", + "DE.Views.ProtectDialog.txtProtect": "Zaščiti", + "DE.Views.ProtectDialog.txtTitle": "Zaščiti", "DE.Views.RightMenu.txtChartSettings": "Nastavitve grafa", "DE.Views.RightMenu.txtFormSettings": "Nastavitve obrazca", "DE.Views.RightMenu.txtHeaderFooterSettings": "Nastavitve glave in noge", @@ -1691,6 +1702,7 @@ "DE.Views.TableOfContentsSettings.textNone": "Nič", "DE.Views.TableOfContentsSettings.textRadioCaption": "Napis", "DE.Views.TableOfContentsSettings.textStyle": "Slog", + "DE.Views.TableOfContentsSettings.textTitle": "Vsebina", "DE.Views.TableOfContentsSettings.txtCentered": "Poravnano na sredino", "DE.Views.TableOfContentsSettings.txtClassic": "Klasično", "DE.Views.TableOfContentsSettings.txtOnline": "Vpisan", @@ -1842,6 +1854,7 @@ "DE.Views.Toolbar.capBtnInsHeader": "Glava/noga", "DE.Views.Toolbar.capBtnInsImage": "Slika", "DE.Views.Toolbar.capBtnInsPagebreak": "Prelomi", + "DE.Views.Toolbar.capBtnInsShape": "Oblika", "DE.Views.Toolbar.capBtnInsSymbol": "Simbol", "DE.Views.Toolbar.capBtnInsTable": "Tabela", "DE.Views.Toolbar.capBtnInsTextbox": "Polje z besedilom", @@ -1922,6 +1935,7 @@ "DE.Views.Toolbar.textTabLayout": "Postavitev", "DE.Views.Toolbar.textTabProtect": "Zaščita", "DE.Views.Toolbar.textTabReview": "Pregled", + "DE.Views.Toolbar.textTabView": "Pogled", "DE.Views.Toolbar.textTitleError": "Napaka", "DE.Views.Toolbar.textToCurrent": "Do trenutnega položaja", "DE.Views.Toolbar.textTop": "Top: ", @@ -2006,7 +2020,9 @@ "DE.Views.Toolbar.txtScheme9": "Livarna", "DE.Views.ViewTab.textAlwaysShowToolbar": "Vedno prikaži orodno vrstico", "DE.Views.ViewTab.textDarkDocument": "Temen način", + "DE.Views.ViewTab.textOutline": "Naslovi", "DE.Views.ViewTab.textZoom": "Povečaj", + "DE.Views.ViewTab.tipHeadings": "Naslovi", "DE.Views.WatermarkSettingsDialog.textAuto": "Samodejno", "DE.Views.WatermarkSettingsDialog.textBold": "Krepko", "DE.Views.WatermarkSettingsDialog.textColor": "Barva besedila", diff --git a/apps/documenteditor/main/locale/sv.json b/apps/documenteditor/main/locale/sv.json index 76315ee3a..73889d8a0 100644 --- a/apps/documenteditor/main/locale/sv.json +++ b/apps/documenteditor/main/locale/sv.json @@ -125,6 +125,9 @@ "Common.define.chartData.textScatterSmoothMarker": "Sprid med mjuka linjer och markeringar", "Common.define.chartData.textStock": "Lager", "Common.define.chartData.textSurface": "Yta", + "Common.define.smartArt.textList": "Lista", + "Common.define.smartArt.textPicture": "Bild", + "Common.define.smartArt.textRelationship": "Relation", "Common.Translation.textMoreButton": "Mer", "Common.Translation.warnFileLocked": "Du kan inte redigera den här filen eftersom den redigeras i en annan app.", "Common.Translation.warnFileLockedBtnEdit": "Skapa en kopia", @@ -181,7 +184,7 @@ "Common.UI.SearchBar.tipOpenAdvancedSettings": "Öppna avancerade inställningar", "Common.UI.SearchBar.tipPreviousResult": "Föregående resultat", "Common.UI.SearchDialog.textHighlight": "Markera resultat", - "Common.UI.SearchDialog.textMatchCase": "Skiftkänslig", + "Common.UI.SearchDialog.textMatchCase": "Skiftlägeskänslig", "Common.UI.SearchDialog.textReplaceDef": "Skriv in ersättningstext", "Common.UI.SearchDialog.textSearchStart": "Skriv din text här", "Common.UI.SearchDialog.textTitle": "Sök och ersätt", @@ -287,6 +290,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "Laddar...", "Common.Views.DocumentAccessDialog.textTitle": "Dela inställningar", "Common.Views.ExternalDiagramEditor.textTitle": "Diagram editor", + "Common.Views.ExternalEditor.textClose": "Stäng", + "Common.Views.ExternalEditor.textSave": "Spara & avsluta", "Common.Views.ExternalMergeEditor.textTitle": "Slå ihop mottagare", "Common.Views.Header.labelCoUsersDescr": "Användare som redigera filen:", "Common.Views.Header.textAddFavorite": "Markera som favorit", @@ -352,6 +357,7 @@ "Common.Views.Plugins.textStart": "Start", "Common.Views.Plugins.textStop": "Stanna", "Common.Views.Protection.hintAddPwd": "Kryptera med lösenord", + "Common.Views.Protection.hintDelPwd": "Radera lösenord", "Common.Views.Protection.hintPwd": "Ändra eller radera lösenord", "Common.Views.Protection.hintSignature": "Lägg till digital signatur eller rad", "Common.Views.Protection.txtAddPwd": "Lägg till lösenord", @@ -472,7 +478,9 @@ "Common.Views.SearchPanel.textReplace": "Ersätt", "Common.Views.SearchPanel.textReplaceAll": "Ersätt alla", "Common.Views.SearchPanel.textReplaceWith": "Ersätt med", + "Common.Views.SearchPanel.textSearchAgain": "{0}Gör en ny sökning{1} för korrekta resultat.", "Common.Views.SearchPanel.textSearchHasStopped": "Sökningen har stoppats", + "Common.Views.SearchPanel.textSearchResults": "Sökresultat: {0}/{1}", "Common.Views.SearchPanel.textTooManyResults": "Det finns för många resultat för att visa här", "Common.Views.SearchPanel.textWholeWords": "Endast hela ord", "Common.Views.SearchPanel.tipNextResult": "Nästa resultat", @@ -634,6 +642,7 @@ "DE.Controllers.Main.textClose": "Stäng", "DE.Controllers.Main.textCloseTip": "Klicka för att stänga tipset", "DE.Controllers.Main.textContactUs": "Kontakta säljare", + "DE.Controllers.Main.textContinue": "Fortsätt", "DE.Controllers.Main.textConvertEquation": "Denna ekvation skapades med en gammal version av ekvationsredigeraren som inte längre stöds. Om du vill redigera den konverterar du ekvationen till Office Math ML-format.
    Konvertera nu?", "DE.Controllers.Main.textCustomLoader": "Observera att enligt licensvillkoren har du inte rätt att byta laddaren.
    Kontakta vår försäljningsavdelning för att få en offert.", "DE.Controllers.Main.textDisconnect": "Anslutningen förlorades", @@ -653,6 +662,7 @@ "DE.Controllers.Main.textStrict": "Strikt läge", "DE.Controllers.Main.textTryUndoRedo": "Ångra/Återställ-funktionerna är inaktiva i snabbt samredigeringsläget.
    Klicka på knappen 'Strikt läge' för att växla till strikt samredigeringsläge och redigera filen utan andra användares påverkan och skicka dina ändringar först efter att du har sparat dem. Du kan växla mellan samredigeringslägena med hjälp av avancerade inställningar.", "DE.Controllers.Main.textTryUndoRedoWarn": "Ångra-funktionerna är inaktiverade för snabb samredigeringsläge.", + "DE.Controllers.Main.textUndo": "Ångra", "DE.Controllers.Main.titleLicenseExp": "Licensen har utgått", "DE.Controllers.Main.titleServerVersion": "Editorn är uppdaterad", "DE.Controllers.Main.titleUpdateVersion": "Version ändrad", @@ -1323,12 +1333,16 @@ "DE.Views.CellsAddDialog.textUp": "Ovanför markören", "DE.Views.ChartSettings.textAdvanced": "Visa avancerade inställningar", "DE.Views.ChartSettings.textChartType": "Ändra diagramtyp", + "DE.Views.ChartSettings.textDown": "Ner", "DE.Views.ChartSettings.textEditData": "Redigera data", "DE.Views.ChartSettings.textHeight": "Höjd", + "DE.Views.ChartSettings.textLeft": "Vänster", "DE.Views.ChartSettings.textOriginalSize": "Verklig storlek", + "DE.Views.ChartSettings.textRight": "Höger", "DE.Views.ChartSettings.textSize": "Storlek", "DE.Views.ChartSettings.textStyle": "Stil", "DE.Views.ChartSettings.textUndock": "Lossa från panelen", + "DE.Views.ChartSettings.textUp": "Upp", "DE.Views.ChartSettings.textWidth": "Bredd", "DE.Views.ChartSettings.textWrap": "Figursättning", "DE.Views.ChartSettings.txtBehind": "Bakom text", @@ -1745,6 +1759,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "Statistik", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "Ämne", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "Symboler", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "Etiketter", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titel", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "Uppladdad", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "Ord", @@ -2194,6 +2209,7 @@ "DE.Views.Navigation.txtPromote": "Befordra", "DE.Views.Navigation.txtSelect": "Välj innehåll", "DE.Views.Navigation.txtSettings": "Rubrikinställningar", + "DE.Views.Navigation.txtSmall": "Liten", "DE.Views.NoteSettingsDialog.textApply": "Tillämpa", "DE.Views.NoteSettingsDialog.textApplyTo": "Tillämpa ändringar", "DE.Views.NoteSettingsDialog.textContinue": "Kontinuerlig", @@ -2344,6 +2360,10 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "Ställ in endast övre ram", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "Auto", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "Inga ramar", + "DE.Views.ProtectDialog.textComments": "Kommentarer", + "DE.Views.ProtectDialog.txtOptional": "valfritt", + "DE.Views.ProtectDialog.txtProtect": "Skydda", + "DE.Views.ProtectDialog.txtRepeat": "Upprepa lösenord", "DE.Views.RightMenu.txtChartSettings": "Diagram inställningar", "DE.Views.RightMenu.txtFormSettings": "Inställningar formulär", "DE.Views.RightMenu.txtHeaderFooterSettings": "Inställningar för sidhuvud och sidfot", @@ -2534,6 +2554,8 @@ "DE.Views.TableSettings.tipOuter": "Ställ ytterkant endast", "DE.Views.TableSettings.tipRight": "Ställ yttre högra gränsen endast", "DE.Views.TableSettings.tipTop": "Ställ in endast yttre övre ram", + "DE.Views.TableSettings.txtGroupTable_Custom": "Anpassad", + "DE.Views.TableSettings.txtGroupTable_List": "Lista tabeller", "DE.Views.TableSettings.txtNoBorders": "Inga ramar", "DE.Views.TableSettings.txtTable_Accent": "Accent", "DE.Views.TableSettings.txtTable_Colorful": "Färgrik", diff --git a/apps/documenteditor/main/locale/tr.json b/apps/documenteditor/main/locale/tr.json index 41d7a90c4..2d34a9e04 100644 --- a/apps/documenteditor/main/locale/tr.json +++ b/apps/documenteditor/main/locale/tr.json @@ -565,6 +565,7 @@ "DE.Controllers.Main.errorFilePassProtect": "Dosya parola korumalıdır ve açılamaz.", "DE.Controllers.Main.errorFileSizeExceed": "Dosya boyutu, sunucunuz için belirlenen limiti aşıyor.
    Ayrıntılar için lütfen Doküman Sunucusu yöneticinizle iletişime geçin.", "DE.Controllers.Main.errorForceSave": "Dosya kaydedilirken bir hata oluştu. Dosyayı bilgisayarınızın sabit diskine kaydetmek için lütfen 'Farklı indir' seçeneğini kullanın veya daha sonra tekrar deneyin.", + "DE.Controllers.Main.errorInconsistentExtDocx": "Dosya açılırken bir hata oluştu.
    Dosya içeriği metin belgelerine (örn. docx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", "DE.Controllers.Main.errorKeyEncrypt": "Bilinmeyen anahtar tanımlayıcı", "DE.Controllers.Main.errorKeyExpire": "Anahtar tanımlayıcının süresi doldu", "DE.Controllers.Main.errorLoadingFont": "Yazı tipleri yüklenmedi.
    Lütfen Doküman Sunucusu yöneticinize başvurun.", @@ -905,7 +906,7 @@ "DE.Controllers.Main.uploadImageTitleText": "Resim Yükleniyor", "DE.Controllers.Main.waitText": "Lütfen bekleyin...", "DE.Controllers.Main.warnBrowserIE9": "Uygulama IE9'da düşük yeteneklere sahip. IE10 yada daha yükseğini kullanınız", - "DE.Controllers.Main.warnBrowserZoom": "Tarayıcınızın mevcut zum ayarı tam olarak desteklenmiyor. Ctrl+0'a basarak varsayılan zumu sıfırlayınız.", + "DE.Controllers.Main.warnBrowserZoom": "Tarayıcınızın mevcut yakınlaştırma ayarı tam olarak desteklenmiyor. Ctrl+0'a basarak varsayılan yakınlaştırmayı sıfırlayınız.", "DE.Controllers.Main.warnLicenseExceeded": "%1 düzenleyiciye eşzamanlı bağlantı sınırına ulaştınız. Bu doküman yalnızca görüntüleme için açılacaktır.
    Daha fazla bilgi için yöneticinizle iletişime geçin.", "DE.Controllers.Main.warnLicenseExp": "Lisansınızın süresi doldu.
    Lütfen lisansınızı güncelleyin ve sayfayı yenileyin.", "DE.Controllers.Main.warnLicenseLimitedNoAccess": "Lisansın süresi doldu.
    Belge düzenleme işlevine erişiminiz yok.
    Lütfen yöneticinizle iletişime geçin.", @@ -1697,7 +1698,7 @@ "DE.Views.FileMenu.btnHistoryCaption": "Versiyon geçmişi", "DE.Views.FileMenu.btnInfoCaption": "Döküman Bilgisi", "DE.Views.FileMenu.btnPrintCaption": "Yazdır", - "DE.Views.FileMenu.btnProtectCaption": "Koru", + "DE.Views.FileMenu.btnProtectCaption": "Belgeyi Şifre ile Koru", "DE.Views.FileMenu.btnRecentFilesCaption": "En sonunucuyu aç", "DE.Views.FileMenu.btnRenameCaption": "Yeniden adlandır", "DE.Views.FileMenu.btnReturnCaption": "Dökümana Geri Dön", @@ -1778,9 +1779,9 @@ "DE.Views.FileMenuPanels.Settings.textDisabled": "Devre Dışı", "DE.Views.FileMenuPanels.Settings.textForceSave": "Ara sürümleri kaydet", "DE.Views.FileMenuPanels.Settings.textMinute": "Her Dakika", - "DE.Views.FileMenuPanels.Settings.textOldVersions": "DOCX olarak kaydedildiğinde dosyaları eski MS Word sürümleriyle uyumlu hale getirin", + "DE.Views.FileMenuPanels.Settings.textOldVersions": ".docx olarak kaydedildiğinde dosyaları eski MS Word sürümleriyle uyumlu hale getirin", "DE.Views.FileMenuPanels.Settings.txtAll": "Tümünü göster", - "DE.Views.FileMenuPanels.Settings.txtAutoCorrect": "Otomatik Düzeltme seçenekleri", + "DE.Views.FileMenuPanels.Settings.txtAutoCorrect": "Otomatik Düzeltme Seçenekleri", "DE.Views.FileMenuPanels.Settings.txtCacheMode": "Varsayılan önbellek modu", "DE.Views.FileMenuPanels.Settings.txtChangesBalloons": "Balonlarda tıklayarak göster", "DE.Views.FileMenuPanels.Settings.txtChangesTip": "Araç ipuçlarında üzerine gelindiğinde göster ", diff --git a/apps/documenteditor/main/locale/zh.json b/apps/documenteditor/main/locale/zh.json index f694e3dfc..cf663d5c7 100644 --- a/apps/documenteditor/main/locale/zh.json +++ b/apps/documenteditor/main/locale/zh.json @@ -125,6 +125,165 @@ "Common.define.chartData.textScatterSmoothMarker": "带平滑线和数据标记的散点图", "Common.define.chartData.textStock": "股价图", "Common.define.chartData.textSurface": "平面", + "Common.define.smartArt.textAccentedPicture": "重音图片", + "Common.define.smartArt.textAccentProcess": "重点流程", + "Common.define.smartArt.textAlternatingFlow": "交替流", + "Common.define.smartArt.textAlternatingHexagons": "交替六边形", + "Common.define.smartArt.textAlternatingPictureBlocks": "交替图片块", + "Common.define.smartArt.textAlternatingPictureCircles": "交替图片圆形", + "Common.define.smartArt.textArchitectureLayout": "结构布局", + "Common.define.smartArt.textArrowRibbon": "带形箭头", + "Common.define.smartArt.textAscendingPictureAccentProcess": "升序图片重点流程", + "Common.define.smartArt.textBalance": "平衡", + "Common.define.smartArt.textBasicBendingProcess": "基本蛇形流程", + "Common.define.smartArt.textBasicBlockList": "基本列表", + "Common.define.smartArt.textBasicChevronProcess": "基本 V 形流程", + "Common.define.smartArt.textBasicCycle": "基本循环", + "Common.define.smartArt.textBasicMatrix": "基本矩阵", + "Common.define.smartArt.textBasicPie": "基本饼图", + "Common.define.smartArt.textBasicProcess": "基本流程", + "Common.define.smartArt.textBasicPyramid": "基本棱锥图", + "Common.define.smartArt.textBasicRadial": "基本射线图", + "Common.define.smartArt.textBasicTarget": "基本目标图", + "Common.define.smartArt.textBasicTimeline": "基本时间线", + "Common.define.smartArt.textBasicVenn": "基本维恩图", + "Common.define.smartArt.textBendingPictureAccentList": "蛇形图片重点列表", + "Common.define.smartArt.textBendingPictureBlocks": "蛇形图片块", + "Common.define.smartArt.textBendingPictureCaption": "蛇形图片题注", + "Common.define.smartArt.textBendingPictureCaptionList": "蛇形图片题注列表", + "Common.define.smartArt.textBendingPictureSemiTranparentText": "蛇形图片半透明文本", + "Common.define.smartArt.textBlockCycle": "块循环", + "Common.define.smartArt.textBubblePictureList": "气泡图片列表", + "Common.define.smartArt.textCaptionedPictures": "题注图片", + "Common.define.smartArt.textChevronAccentProcess": "V 形重点流程", + "Common.define.smartArt.textChevronList": "V 型列表", + "Common.define.smartArt.textCircleAccentTimeline": "圆形重点日程表", + "Common.define.smartArt.textCircleArrowProcess": "圆箭头流程", + "Common.define.smartArt.textCirclePictureHierarchy": "圆形图片层次结构", + "Common.define.smartArt.textCircleProcess": "循环流程", + "Common.define.smartArt.textCircleRelationship": "循环关系", + "Common.define.smartArt.textCircularBendingProcess": "环状蛇形流程", + "Common.define.smartArt.textCircularPictureCallout": "圆形图片标注", + "Common.define.smartArt.textClosedChevronProcess": "闭合 V 形流程", + "Common.define.smartArt.textContinuousArrowProcess": "连续箭头流程", + "Common.define.smartArt.textContinuousBlockProcess": "连续块状流程", + "Common.define.smartArt.textContinuousCycle": "连续循环", + "Common.define.smartArt.textContinuousPictureList": "连续图片列表", + "Common.define.smartArt.textConvergingArrows": "汇聚箭头", + "Common.define.smartArt.textConvergingRadial": "聚合射线", + "Common.define.smartArt.textConvergingText": "聚合文本", + "Common.define.smartArt.textCounterbalanceArrows": "平衡箭头", + "Common.define.smartArt.textCycle": "循环", + "Common.define.smartArt.textCycleMatrix": "循环矩阵", + "Common.define.smartArt.textDescendingBlockList": "降序块列表", + "Common.define.smartArt.textDescendingProcess": "降序流程", + "Common.define.smartArt.textDetailedProcess": "详细流程", + "Common.define.smartArt.textDivergingArrows": "分叉箭头", + "Common.define.smartArt.textDivergingRadial": "分离射线", + "Common.define.smartArt.textEquation": "公式", + "Common.define.smartArt.textFramedTextPicture": "带框架的文本图片", + "Common.define.smartArt.textFunnel": "漏斗", + "Common.define.smartArt.textGear": "齿轮", + "Common.define.smartArt.textGridMatrix": "网格矩阵", + "Common.define.smartArt.textGroupedList": "分组列表", + "Common.define.smartArt.textHalfCircleOrganizationChart": "半圆组织结构图", + "Common.define.smartArt.textHexagonCluster": "六边形群集", + "Common.define.smartArt.textHexagonRadial": "放射状六边形", + "Common.define.smartArt.textHierarchy": "层次结构", + "Common.define.smartArt.textHierarchyList": "层次结构列表", + "Common.define.smartArt.textHorizontalBulletList": "水平项目符号列表", + "Common.define.smartArt.textHorizontalHierarchy": "水平层次结构", + "Common.define.smartArt.textHorizontalLabeledHierarchy": "水平标记的层次结构", + "Common.define.smartArt.textHorizontalMultiLevelHierarchy": "水平多层层次结构", + "Common.define.smartArt.textHorizontalOrganizationChart": "水平组织结构图", + "Common.define.smartArt.textHorizontalPictureList": "水平图片列表", + "Common.define.smartArt.textIncreasingArrowProcess": "递增箭头流程", + "Common.define.smartArt.textIncreasingCircleProcess": "递增循环流程", + "Common.define.smartArt.textInterconnectedBlockProcess": "互联块流程", + "Common.define.smartArt.textInterconnectedRings": "互联环", + "Common.define.smartArt.textInvertedPyramid": "倒棱锥图", + "Common.define.smartArt.textLabeledHierarchy": "标记的层次结构", + "Common.define.smartArt.textLinearVenn": "线性维恩图", + "Common.define.smartArt.textLinedList": "线型列表", + "Common.define.smartArt.textList": "列表", + "Common.define.smartArt.textMatrix": "矩阵", + "Common.define.smartArt.textMultidirectionalCycle": "多向循环", + "Common.define.smartArt.textNameAndTitleOrganizationChart": "姓名和职务组织结构图", + "Common.define.smartArt.textNestedTarget": "嵌套目标图", + "Common.define.smartArt.textNondirectionalCycle": "不定向循环", + "Common.define.smartArt.textOpposingArrows": "反向箭头", + "Common.define.smartArt.textOpposingIdeas": "对立观点", + "Common.define.smartArt.textOrganizationChart": "组织结构图", + "Common.define.smartArt.textOther": "其他", + "Common.define.smartArt.textPhasedProcess": "分阶段流程", + "Common.define.smartArt.textPicture": "图片", + "Common.define.smartArt.textPictureAccentBlocks": "图片重点块", + "Common.define.smartArt.textPictureAccentList": "图片重点列表", + "Common.define.smartArt.textPictureAccentProcess": "图片重点流程", + "Common.define.smartArt.textPictureCaptionList": "图片题注列表", + "Common.define.smartArt.textPictureFrame": "图片框", + "Common.define.smartArt.textPictureGrid": "图片网格", + "Common.define.smartArt.textPictureLineup": "图片排列", + "Common.define.smartArt.textPictureOrganizationChart": "图片组织结构图", + "Common.define.smartArt.textPictureStrips": "图片条纹", + "Common.define.smartArt.textPieProcess": "饼图流程", + "Common.define.smartArt.textPlusAndMinus": "加号和减号", + "Common.define.smartArt.textProcess": "流程", + "Common.define.smartArt.textProcessArrows": "流程箭头", + "Common.define.smartArt.textProcessList": "流程列表", + "Common.define.smartArt.textPyramid": "棱锥型", + "Common.define.smartArt.textPyramidList": "棱锥型列表", + "Common.define.smartArt.textRadialCluster": "射线群集", + "Common.define.smartArt.textRadialCycle": "射线循环", + "Common.define.smartArt.textRadialList": "射线列表", + "Common.define.smartArt.textRadialPictureList": "放射状图片列表", + "Common.define.smartArt.textRadialVenn": "射线维恩图", + "Common.define.smartArt.textRandomToResultProcess": "随机至结果流程", + "Common.define.smartArt.textRelationship": "关系", + "Common.define.smartArt.textRepeatingBendingProcess": "重复蛇形流程", + "Common.define.smartArt.textReverseList": "反转列表", + "Common.define.smartArt.textSegmentedCycle": "分段循环", + "Common.define.smartArt.textSegmentedProcess": "分段流程", + "Common.define.smartArt.textSegmentedPyramid": "分段棱锥图", + "Common.define.smartArt.textSnapshotPictureList": "快照图片列表", + "Common.define.smartArt.textSpiralPicture": "螺旋图", + "Common.define.smartArt.textSquareAccentList": "方形重点列表", + "Common.define.smartArt.textStackedList": "堆叠列表", + "Common.define.smartArt.textStackedVenn": "堆叠维恩图", + "Common.define.smartArt.textStaggeredProcess": "交错流程", + "Common.define.smartArt.textStepDownProcess": "步骤下移流程", + "Common.define.smartArt.textStepUpProcess": "升级流程", + "Common.define.smartArt.textSubStepProcess": "子步骤流程", + "Common.define.smartArt.textTabbedArc": "拱状", + "Common.define.smartArt.textTableHierarchy": "表层次结构", + "Common.define.smartArt.textTableList": "表格列表", + "Common.define.smartArt.textTabList": "选项卡列表", + "Common.define.smartArt.textTargetList": "目标图列表", + "Common.define.smartArt.textTextCycle": "文本循环", + "Common.define.smartArt.textThemePictureAccent": "主题图片重点", + "Common.define.smartArt.textThemePictureAlternatingAccent": "主题图片交替重点", + "Common.define.smartArt.textThemePictureGrid": "主题图片网格", + "Common.define.smartArt.textTitledMatrix": "带标题的矩阵", + "Common.define.smartArt.textTitledPictureAccentList": "标题图片重点列表", + "Common.define.smartArt.textTitledPictureBlocks": "标题图片块", + "Common.define.smartArt.textTitlePictureLineup": "标题图片排列", + "Common.define.smartArt.textTrapezoidList": "梯形列表", + "Common.define.smartArt.textUpwardArrow": "向上箭头", + "Common.define.smartArt.textVaryingWidthList": "不同宽度列表", + "Common.define.smartArt.textVerticalAccentList": "垂直重点列表", + "Common.define.smartArt.textVerticalArrowList": "垂直箭头列表", + "Common.define.smartArt.textVerticalBendingProcess": "垂直蛇形流程", + "Common.define.smartArt.textVerticalBlockList": "垂直块列表", + "Common.define.smartArt.textVerticalBoxList": "垂直框列表", + "Common.define.smartArt.textVerticalBracketList": "垂直括弧列表", + "Common.define.smartArt.textVerticalBulletList": "垂直项目符号列表", + "Common.define.smartArt.textVerticalChevronList": "垂直 V 形列表", + "Common.define.smartArt.textVerticalCircleList": "垂直圆形列表", + "Common.define.smartArt.textVerticalCurvedList": "垂直曲形列表", + "Common.define.smartArt.textVerticalEquation": "垂直公式", + "Common.define.smartArt.textVerticalPictureAccentList": "垂直图片重点列表", + "Common.define.smartArt.textVerticalPictureList": "垂直图片列表", + "Common.define.smartArt.textVerticalProcess": "垂直流程", "Common.Translation.textMoreButton": "更多", "Common.Translation.warnFileLocked": "您不能编辑此文件,因为它正在另一个应用程序中被编辑。", "Common.Translation.warnFileLockedBtnEdit": "建立副本", @@ -186,7 +345,7 @@ "Common.UI.SearchDialog.textSearchStart": "在这里输入你的文字", "Common.UI.SearchDialog.textTitle": "查找和替换", "Common.UI.SearchDialog.textTitle2": "查找", - "Common.UI.SearchDialog.textWholeWords": "仅全字", + "Common.UI.SearchDialog.textWholeWords": "整词匹配", "Common.UI.SearchDialog.txtBtnHideReplace": "隐藏替换", "Common.UI.SearchDialog.txtBtnReplace": "替换", "Common.UI.SearchDialog.txtBtnReplaceAll": "全部替换", @@ -288,6 +447,8 @@ "Common.Views.DocumentAccessDialog.textLoading": "载入中……", "Common.Views.DocumentAccessDialog.textTitle": "共享设置", "Common.Views.ExternalDiagramEditor.textTitle": "图表编辑器", + "Common.Views.ExternalEditor.textClose": "关闭", + "Common.Views.ExternalEditor.textSave": "保存并退出", "Common.Views.ExternalMergeEditor.textTitle": "邮件合并收件人", "Common.Views.ExternalOleEditor.textTitle": "电子表格编辑器", "Common.Views.Header.labelCoUsersDescr": "正在编辑文件的用户:", @@ -354,6 +515,7 @@ "Common.Views.Plugins.textStart": "开始", "Common.Views.Plugins.textStop": "停止", "Common.Views.Protection.hintAddPwd": "使用密码加密", + "Common.Views.Protection.hintDelPwd": "删除密码", "Common.Views.Protection.hintPwd": "修改或删除密码", "Common.Views.Protection.hintSignature": "添加数字签名或签名行", "Common.Views.Protection.txtAddPwd": "添加密码", @@ -371,7 +533,7 @@ "Common.Views.ReviewChanges.mniFromStorage": " 存储中的文档", "Common.Views.ReviewChanges.mniFromUrl": "url中的文档", "Common.Views.ReviewChanges.mniSettings": "比较设置", - "Common.Views.ReviewChanges.strFast": "快速", + "Common.Views.ReviewChanges.strFast": "自动", "Common.Views.ReviewChanges.strFastDesc": "自动共同编辑模式,自动保存修改痕迹。", "Common.Views.ReviewChanges.strStrict": "手动", "Common.Views.ReviewChanges.strStrictDesc": "使用“保存”按钮同步你和其他人的修改。", @@ -478,7 +640,7 @@ "Common.Views.SearchPanel.textSearchHasStopped": "搜索已停止", "Common.Views.SearchPanel.textSearchResults": "搜索结果:{0}/{1}", "Common.Views.SearchPanel.textTooManyResults": "这里显示的结果太多了", - "Common.Views.SearchPanel.textWholeWords": "仅全字", + "Common.Views.SearchPanel.textWholeWords": "整词匹配", "Common.Views.SearchPanel.tipNextResult": "下一个", "Common.Views.SearchPanel.tipPreviousResult": "上一个", "Common.Views.SelectFileDlg.textLoading": "载入中", @@ -499,9 +661,10 @@ "Common.Views.SignDialog.tipFontName": "字体名称", "Common.Views.SignDialog.tipFontSize": "字体大小", "Common.Views.SignSettingsDialog.textAllowComment": "允许签名者在签名对话框中添加批注", - "Common.Views.SignSettingsDialog.textInfoEmail": "电子邮件", - "Common.Views.SignSettingsDialog.textInfoName": "名称", - "Common.Views.SignSettingsDialog.textInfoTitle": "签名者头衔", + "Common.Views.SignSettingsDialog.textDefInstruction": "在签署本文件之前,请确保您所签署的内容是正确。", + "Common.Views.SignSettingsDialog.textInfoEmail": "建议签署人电邮", + "Common.Views.SignSettingsDialog.textInfoName": "建议签署人", + "Common.Views.SignSettingsDialog.textInfoTitle": "建议签署人职务", "Common.Views.SignSettingsDialog.textInstructions": "给签名者的说明", "Common.Views.SignSettingsDialog.textShowDate": "在签名行中显示签名日期", "Common.Views.SignSettingsDialog.textTitle": "签名设置", @@ -552,6 +715,7 @@ "DE.Controllers.LeftMenu.warnReplaceString": "{0}不是可用于“替换字段”的有效特殊字符。", "DE.Controllers.Main.applyChangesTextText": "载入更改...", "DE.Controllers.Main.applyChangesTitleText": "加载更改", + "DE.Controllers.Main.confirmMaxChangesSize": "行动的大小超过了对您服务器设置的限制。
    按 \"撤消\"取消您的最后一次行动,或按\"继续\"在本地保留该行动(您需要下载文件或复制其内容以确保没有任何损失)。", "DE.Controllers.Main.convertationTimeoutText": "转换超时", "DE.Controllers.Main.criticalErrorExtText": "按“确定”返回该文件列表。", "DE.Controllers.Main.criticalErrorTitle": "错误:", @@ -584,6 +748,7 @@ "DE.Controllers.Main.errorMailMergeLoadFile": "加载文件失败了。请选择另一份文件。", "DE.Controllers.Main.errorMailMergeSaveFile": "合并失败", "DE.Controllers.Main.errorNoTOC": "没有目录要更新。你可以从引用标签插入一个目录。", + "DE.Controllers.Main.errorPasswordIsNotCorrect": "输入的密码不正确。
    请检查 CAPS LOCK 键的状态,确认输入密码的大小写正确。", "DE.Controllers.Main.errorProcessSaveResult": "保存失败", "DE.Controllers.Main.errorServerVersion": "该编辑版本已经更新。该页面将被重新加载以应用更改。", "DE.Controllers.Main.errorSessionAbsolute": "文档编辑会话已过期。请重新加载页面。", @@ -640,6 +805,7 @@ "DE.Controllers.Main.textClose": "关闭", "DE.Controllers.Main.textCloseTip": "点击关闭提示", "DE.Controllers.Main.textContactUs": "联系销售", + "DE.Controllers.Main.textContinue": "继续", "DE.Controllers.Main.textConvertEquation": "这个公式是由一个早期版本的公式编辑器创建的。这个版本现在不受支持了。要想编辑这个公式,你需要将其转换成 Office Math ML 格式.
    现在转换吗?", "DE.Controllers.Main.textCustomLoader": "请注意,根据许可条款您无权更改加载程序。
    请联系我们的销售部门获取报价。", "DE.Controllers.Main.textDisconnect": "网络连接失败", @@ -659,7 +825,8 @@ "DE.Controllers.Main.textShape": "形状", "DE.Controllers.Main.textStrict": "手动模式", "DE.Controllers.Main.textTryUndoRedo": "对于自动的协同编辑模式,取消/重做功能是禁用的。< br >单击“手动模式”按钮切换到手动协同编辑模式,这样,编辑该文件时只有您保存修改之后,其他用户才能访问这些修改。您可以使用编辑器高级设置易于切换编辑模式。", - "DE.Controllers.Main.textTryUndoRedoWarn": "快速共同编辑模式下,撤销/重做功能被禁用。", + "DE.Controllers.Main.textTryUndoRedoWarn": "自动共同编辑模式下,撤销/重做功能被禁用。", + "DE.Controllers.Main.textUndo": "撤消", "DE.Controllers.Main.titleLicenseExp": "许可证过期", "DE.Controllers.Main.titleServerVersion": "编辑器已更新", "DE.Controllers.Main.titleUpdateVersion": "版本已变化", @@ -1329,16 +1496,31 @@ "DE.Views.CellsAddDialog.textRow": "行", "DE.Views.CellsAddDialog.textTitle": "插入几个", "DE.Views.CellsAddDialog.textUp": "光标上方", + "DE.Views.ChartSettings.text3dDepth": "深度(原始深度百分比)", + "DE.Views.ChartSettings.text3dHeight": "高度(原始高度百分比)", + "DE.Views.ChartSettings.text3dRotation": "三维旋转", "DE.Views.ChartSettings.textAdvanced": "显示高级设置", + "DE.Views.ChartSettings.textAutoscale": "自动缩放", "DE.Views.ChartSettings.textChartType": "更改图表类型", + "DE.Views.ChartSettings.textDefault": "默认旋转", + "DE.Views.ChartSettings.textDown": "向下", "DE.Views.ChartSettings.textEditData": "编辑数据", "DE.Views.ChartSettings.textHeight": "高度", + "DE.Views.ChartSettings.textLeft": "向左", + "DE.Views.ChartSettings.textNarrow": "缩小视野", "DE.Views.ChartSettings.textOriginalSize": "实际大小", + "DE.Views.ChartSettings.textPerspective": "透视", + "DE.Views.ChartSettings.textRight": "向右", + "DE.Views.ChartSettings.textRightAngle": "直角坐标轴", "DE.Views.ChartSettings.textSize": "大小", "DE.Views.ChartSettings.textStyle": "类型", "DE.Views.ChartSettings.textUndock": "离开面板", + "DE.Views.ChartSettings.textUp": "向上", + "DE.Views.ChartSettings.textWiden": "扩大视野", "DE.Views.ChartSettings.textWidth": "宽度", "DE.Views.ChartSettings.textWrap": "包裹风格", + "DE.Views.ChartSettings.textX": "X 旋转", + "DE.Views.ChartSettings.textY": "Y 旋转", "DE.Views.ChartSettings.txtBehind": "衬于​​文字下方", "DE.Views.ChartSettings.txtInFront": "浮于文字上方", "DE.Views.ChartSettings.txtInline": "嵌入型​​", @@ -1428,14 +1610,24 @@ "DE.Views.DateTimeDialog.textLang": "语言", "DE.Views.DateTimeDialog.textUpdate": "自动更新", "DE.Views.DateTimeDialog.txtTitle": "日期、时间", + "DE.Views.DocProtection.hintProtectDoc": "保护文档", + "DE.Views.DocProtection.txtDocProtectedComment": "文件是受保护的。
    您仅能对这个文件添加评论。", + "DE.Views.DocProtection.txtDocProtectedForms": "文件是受保护的。
    您仅能填写本文件中的字段。", + "DE.Views.DocProtection.txtDocProtectedTrack": "文件是受保护的。
    您可以编辑这个文件,但所做的变化都会被跟踪。", + "DE.Views.DocProtection.txtDocProtectedView": "文件是受保护的。
    您仅能查看这个文件。", + "DE.Views.DocProtection.txtDocUnlockDescription": "输入密码以解除文件的保护", + "DE.Views.DocProtection.txtProtectDoc": "保护文档", "DE.Views.DocumentHolder.aboveText": "以上", "DE.Views.DocumentHolder.addCommentText": "添加批注", "DE.Views.DocumentHolder.advancedDropCapText": "首字下沉设置", + "DE.Views.DocumentHolder.advancedEquationText": "方程式设置", "DE.Views.DocumentHolder.advancedFrameText": "框架高级设置", "DE.Views.DocumentHolder.advancedParagraphText": "段落高级设置", "DE.Views.DocumentHolder.advancedTableText": "高级表设置", "DE.Views.DocumentHolder.advancedText": "高级设置", "DE.Views.DocumentHolder.alignmentText": "对齐", + "DE.Views.DocumentHolder.allLinearText": "全部 - 线性", + "DE.Views.DocumentHolder.allProfText": "全部 - 专业", "DE.Views.DocumentHolder.belowText": "下面", "DE.Views.DocumentHolder.breakBeforeText": "段前分页", "DE.Views.DocumentHolder.bulletsText": "符号和编号", @@ -1444,6 +1636,8 @@ "DE.Views.DocumentHolder.centerText": "中心", "DE.Views.DocumentHolder.chartText": "图表高级设置", "DE.Views.DocumentHolder.columnText": "列", + "DE.Views.DocumentHolder.currLinearText": "当前 - 线性", + "DE.Views.DocumentHolder.currProfText": "当前 - 专业", "DE.Views.DocumentHolder.deleteColumnText": "删除列", "DE.Views.DocumentHolder.deleteRowText": "删除行", "DE.Views.DocumentHolder.deleteTableText": "删除表", @@ -1456,6 +1650,7 @@ "DE.Views.DocumentHolder.editFooterText": "编辑页脚", "DE.Views.DocumentHolder.editHeaderText": "编辑页眉", "DE.Views.DocumentHolder.editHyperlinkText": "编辑超链接", + "DE.Views.DocumentHolder.eqToInlineText": "改成内联", "DE.Views.DocumentHolder.guestText": "游客", "DE.Views.DocumentHolder.hyperlinkText": "超链接", "DE.Views.DocumentHolder.ignoreAllSpellText": "忽略所有", @@ -1470,6 +1665,7 @@ "DE.Views.DocumentHolder.insertText": "插入", "DE.Views.DocumentHolder.keepLinesText": "保持同一行", "DE.Views.DocumentHolder.langText": "选择语言", + "DE.Views.DocumentHolder.latexText": "LaTeX", "DE.Views.DocumentHolder.leftText": "左", "DE.Views.DocumentHolder.loadSpellText": "加载变体...", "DE.Views.DocumentHolder.mergeCellsText": "合并单元格", @@ -1657,6 +1853,7 @@ "DE.Views.DocumentHolder.txtUnderbar": "在文本栏", "DE.Views.DocumentHolder.txtUngroup": "取消组合", "DE.Views.DocumentHolder.txtWarnUrl": "点击该链接可能会损害你的设备或数据。
    你确定要继续吗?", + "DE.Views.DocumentHolder.unicodeText": "Unicode", "DE.Views.DocumentHolder.updateStyleText": "更新%1样式", "DE.Views.DocumentHolder.vertAlignText": "垂直对齐", "DE.Views.DropcapSettingsAdvanced.strBorders": "边框和填充", @@ -1753,6 +1950,7 @@ "DE.Views.FileMenuPanels.DocumentInfo.txtStatistics": "统计", "DE.Views.FileMenuPanels.DocumentInfo.txtSubject": "主题", "DE.Views.FileMenuPanels.DocumentInfo.txtSymbols": "符号", + "DE.Views.FileMenuPanels.DocumentInfo.txtTags": "标签", "DE.Views.FileMenuPanels.DocumentInfo.txtTitle": "标题", "DE.Views.FileMenuPanels.DocumentInfo.txtUploaded": "上载", "DE.Views.FileMenuPanels.DocumentInfo.txtWords": "字幕", @@ -1772,7 +1970,7 @@ "DE.Views.FileMenuPanels.ProtectDoc.txtView": "查看签名", "DE.Views.FileMenuPanels.Settings.okButtonText": "应用", "DE.Views.FileMenuPanels.Settings.strCoAuthMode": "共同编辑模式", - "DE.Views.FileMenuPanels.Settings.strFast": "快速", + "DE.Views.FileMenuPanels.Settings.strFast": "自动", "DE.Views.FileMenuPanels.Settings.strFontRender": "字体微调方式", "DE.Views.FileMenuPanels.Settings.strIgnoreWordsInUPPERCASE": "忽略大写单词", "DE.Views.FileMenuPanels.Settings.strIgnoreWordsWithNumbers": "忽略带数字的单词", @@ -2066,6 +2264,7 @@ "DE.Views.LeftMenu.tipComments": "批注", "DE.Views.LeftMenu.tipNavigation": "导航", "DE.Views.LeftMenu.tipOutline": "标题", + "DE.Views.LeftMenu.tipPageThumbnails": "页面缩略图", "DE.Views.LeftMenu.tipPlugins": "插件", "DE.Views.LeftMenu.tipSearch": "搜索", "DE.Views.LeftMenu.tipSupport": "反馈和支持", @@ -2373,6 +2572,18 @@ "DE.Views.ParagraphSettingsAdvanced.tipTop": "仅限顶部边框", "DE.Views.ParagraphSettingsAdvanced.txtAutoText": "自动", "DE.Views.ParagraphSettingsAdvanced.txtNoBorders": "没有边框", + "DE.Views.ProtectDialog.textComments": "评论", + "DE.Views.ProtectDialog.textForms": "填写表单", + "DE.Views.ProtectDialog.textReview": "修订", + "DE.Views.ProtectDialog.textView": "不允许任何更改(只读)", + "DE.Views.ProtectDialog.txtAllow": "仅允许在文档中进行此类型的编辑", + "DE.Views.ProtectDialog.txtIncorrectPwd": "确认的密码与先前输入的不一致。", + "DE.Views.ProtectDialog.txtOptional": "可选", + "DE.Views.ProtectDialog.txtPassword": "密码", + "DE.Views.ProtectDialog.txtProtect": "保护", + "DE.Views.ProtectDialog.txtRepeat": "重复输入密码", + "DE.Views.ProtectDialog.txtTitle": "保护", + "DE.Views.ProtectDialog.txtWarning": "警告: 如果丢失或忘记密码,则无法将其恢复。请妥善保存。", "DE.Views.RightMenu.txtChartSettings": "图表设置", "DE.Views.RightMenu.txtFormSettings": "表单设置", "DE.Views.RightMenu.txtHeaderFooterSettings": "页眉和页脚设置", @@ -2563,12 +2774,20 @@ "DE.Views.TableSettings.tipOuter": "仅限外部边框", "DE.Views.TableSettings.tipRight": "仅设置外边界", "DE.Views.TableSettings.tipTop": "仅限外部边框", + "DE.Views.TableSettings.txtGroupTable_BorderedAndLined": "带边框及线条的表格", + "DE.Views.TableSettings.txtGroupTable_Custom": "自定义", + "DE.Views.TableSettings.txtGroupTable_Grid": "网格表", + "DE.Views.TableSettings.txtGroupTable_List": "清单表", + "DE.Views.TableSettings.txtGroupTable_Plain": "普通表格", "DE.Views.TableSettings.txtNoBorders": "没有边框", "DE.Views.TableSettings.txtTable_Accent": "强调", + "DE.Views.TableSettings.txtTable_Bordered": "带边框的", + "DE.Views.TableSettings.txtTable_BorderedAndLined": "带边框及线条的", "DE.Views.TableSettings.txtTable_Colorful": "多彩", "DE.Views.TableSettings.txtTable_Dark": "黑暗的", "DE.Views.TableSettings.txtTable_GridTable": "表格网格", "DE.Views.TableSettings.txtTable_Light": "光", + "DE.Views.TableSettings.txtTable_Lined": "带线条的", "DE.Views.TableSettings.txtTable_ListTable": "列表表", "DE.Views.TableSettings.txtTable_PlainTable": "简单的表", "DE.Views.TableSettings.txtTable_TableGrid": "表格的网格", @@ -2703,6 +2922,7 @@ "DE.Views.Toolbar.capBtnInsImage": "图片", "DE.Views.Toolbar.capBtnInsPagebreak": "分隔符", "DE.Views.Toolbar.capBtnInsShape": "形状", + "DE.Views.Toolbar.capBtnInsSmartArt": "SmartArt", "DE.Views.Toolbar.capBtnInsSymbol": "符号", "DE.Views.Toolbar.capBtnInsTable": "表格", "DE.Views.Toolbar.capBtnInsTextart": "艺术字", @@ -2849,13 +3069,16 @@ "DE.Views.Toolbar.tipIncPrLeft": "增加缩进", "DE.Views.Toolbar.tipInsertChart": "插入图表", "DE.Views.Toolbar.tipInsertEquation": "插入方程", + "DE.Views.Toolbar.tipInsertHorizontalText": "插入横排文本框", "DE.Views.Toolbar.tipInsertImage": "插入图片", "DE.Views.Toolbar.tipInsertNum": "插入页码", "DE.Views.Toolbar.tipInsertShape": "自动插入形状", + "DE.Views.Toolbar.tipInsertSmartArt": "插入 SmartArt", "DE.Views.Toolbar.tipInsertSymbol": "插入符号", "DE.Views.Toolbar.tipInsertTable": "插入表", "DE.Views.Toolbar.tipInsertText": "插入文字", "DE.Views.Toolbar.tipInsertTextArt": "插入艺术字", + "DE.Views.Toolbar.tipInsertVerticalText": "插入竖排文本框", "DE.Views.Toolbar.tipLineNumbers": "显示行号", "DE.Views.Toolbar.tipLineSpace": "段线间距", "DE.Views.Toolbar.tipMailRecepients": "邮件合并", diff --git a/apps/documenteditor/main/resources/help/de/HelpfulHints/Comparison.htm b/apps/documenteditor/main/resources/help/de/HelpfulHints/Comparison.htm index 7e21664be..49c3475f0 100644 --- a/apps/documenteditor/main/resources/help/de/HelpfulHints/Comparison.htm +++ b/apps/documenteditor/main/resources/help/de/HelpfulHints/Comparison.htm @@ -73,12 +73,12 @@

    Um alle Änderungen abzulehnen, klicken Sie den Abwärtspfeil unter der Schaltfläche Ablehnen an und wählen Sie die Option Alle Änderungen ablehnen aus.

    Zusatzinformation für die Vergleich-Funktion

    -
    Die Vergleichsmethode
    +

    Die Vergleichsmethode

    Dokumente werden wortweise verglichen. Wenn ein Wort eine Änderung von mindestens einem Zeichen enthält (z. B. wenn ein Zeichen entfernt oder ersetzt wurde), wird die Differenz im Ergebnis als Änderung des gesamten Wortes und nicht des Zeichens angezeigt.

    Das folgende Bild zeigt den Fall, dass die Originaldatei das Wort „Symbole“ und das Vergleichsdokument das Wort „Symbol“ enthält.

    Compare documents - method

    -
    Urheberschaft des Dokuments
    +

    Urheberschaft des Dokuments

    Wenn der Vergleichsprozess gestartet wird, wird das zweite Dokument zum Vergleichen hochgeladen und mit dem aktuellen verglichen.

    • Wenn das geladene Dokument einige Daten enthält, die nicht im Originaldokument enthalten sind, werden die Daten als von einem Überprüfer hinzugefügt markiert.
    • @@ -87,7 +87,7 @@

      Wenn die Autoren des Originaldokuments und des geladenen Dokuments dieselbe Person sind, ist der Überprüfer derselbe Benutzer. Sein/ihr Name wird in der Änderungssprechblase angezeigt.

      Wenn die Autoren zweier Dateien unterschiedliche Benutzer sind, dann ist der Autor der zweiten zum Vergleich geladenen Datei der Autor der hinzugefügten/entfernten Änderungen.

      -
      Die nachverfolgten Änderungen im verglichenen Dokument
      +

      Die nachverfolgten Änderungen im verglichenen Dokument

      Wenn das Originaldokument einige Änderungen enthält, die im Modus "Review" vorgenommen wurden, werden diese im Vergleichsprozess übernommen. Wenn Sie das zweite Dokument zum Vergleich auswählen, wird die entsprechende Warnmeldung angezeigt.

      In diesem Fall enthält das Dokument im Originalanzeigemodus keine Änderungen.

    diff --git a/apps/documenteditor/main/resources/help/de/UsageInstructions/AddTableofFigures.htm b/apps/documenteditor/main/resources/help/de/UsageInstructions/AddTableofFigures.htm index 72ca40b85..b011f4418 100644 --- a/apps/documenteditor/main/resources/help/de/UsageInstructions/AddTableofFigures.htm +++ b/apps/documenteditor/main/resources/help/de/UsageInstructions/AddTableofFigures.htm @@ -80,8 +80,7 @@
  • Nur Seitenzahlen aktualisieren - um Seitenzahlen zu aktualisieren, ohne Änderungen an den Überschriften vorzunehmen.
  • Gesamtes Verzeichnis aktualisieren - um alle geänderten Überschriften und Seitenzahlen zu aktualisieren.
  • -

    Klicken Sie auf OK

    -

    oder

    +

    Klicken Sie auf OK oder

    Klicken Sie mit der rechten Maustaste auf das Abbildungsverzeichnis in Ihrem Dokument, um das Kontextmenü zu öffnen, und wählen Sie die Option Feld aktualisieren, um das Abbildungsverzeichnis zu aktualisieren.

    diff --git a/apps/documenteditor/main/resources/help/de/UsageInstructions/AlignText.htm b/apps/documenteditor/main/resources/help/de/UsageInstructions/AlignText.htm index 812f1bbe2..7e4e57dc1 100644 --- a/apps/documenteditor/main/resources/help/de/UsageInstructions/AlignText.htm +++ b/apps/documenteditor/main/resources/help/de/UsageInstructions/AlignText.htm @@ -28,7 +28,7 @@ -

    Die Ausrichtungparameter sind im Absatz - Erweiterte Einstellungen verfügbar.

    +

    Die Ausrichtungparameter sind im Absatz - Erweiterte Einstellungen verfügbar:

    1. Drücken Sie die rechte Maustaste und wählen Sie die Option Absatz - Erweiterte Einstellungen von dem Rechts-Klick Menu oder benutzen Sie die Option Erweiterte Einstellungen anzeigen von der rechten Seitenleiste.
    2. Im Abschnitt Absatz - Erweiterte Einstellungen wechseln Sie zur Registerkarte Einzüg und Abstände.
    3. diff --git a/apps/documenteditor/main/resources/help/de/UsageInstructions/InsertCharts.htm b/apps/documenteditor/main/resources/help/de/UsageInstructions/InsertCharts.htm index c0a8ca843..67d7b5129 100644 --- a/apps/documenteditor/main/resources/help/de/UsageInstructions/InsertCharts.htm +++ b/apps/documenteditor/main/resources/help/de/UsageInstructions/InsertCharts.htm @@ -97,8 +97,8 @@
    4. Benutzerdefinierte Kombination
    5. - -

      ONLYOFFICE Dokumenteneditor unterstützt die folgenden Arten von Diagrammen, die mit Editoren von Drittanbietern erstellt wurden: Pyramide, Balken (Pyramide), horizontale/vertikale Zylinder, horizontale/vertikale Kegel. Sie können die Datei, die ein solches Diagramm enthält, öffnen und sie mit den verfügbaren Diagrammbearbeitungswerkzeugen ändern.

      +

      ONLYOFFICE Dokumenteneditor unterstützt die folgenden Arten von Diagrammen, die mit Editoren von Drittanbietern erstellt wurden: Pyramide, Balken (Pyramide), horizontale/vertikale Zylinder, horizontale/vertikale Kegel. Sie können die Datei, die ein solches Diagramm enthält, öffnen und sie mit den verfügbaren Diagrammbearbeitungswerkzeugen ändern.

      +
    6. Danach erscheint das Fenster Diagrammeditor, in dem Sie die erforderlichen Daten mit den folgenden Steuerelementen in die Zellen eingeben können:
        diff --git a/apps/documenteditor/main/resources/help/en/HelpfulHints/Comparison.htm b/apps/documenteditor/main/resources/help/en/HelpfulHints/Comparison.htm index 838cb2b40..db3d8dbac 100644 --- a/apps/documenteditor/main/resources/help/en/HelpfulHints/Comparison.htm +++ b/apps/documenteditor/main/resources/help/en/HelpfulHints/Comparison.htm @@ -73,12 +73,12 @@

        To quickly reject all the changes, click the downward arrow below the Reject button and select the Reject All Changes option.

        Additional info on the comparison feature

        -
        Method of comparison
        +

        Method of comparison

        Documents are compared by words. If a word contains a change of at least one character (e.g. if a character was removed or replaced), in the result, the difference will be displayed as the change of the entire word, not the character.

        The image below illustrates the case when the original file contains the word 'Characters' and the document for comparison contains the word 'Character'.

        Compare documents - method

        -
        Authorship of the document
        +

        Authorship of the document

        When the comparison process is launched, the second document for comparison is being loaded and compared to the current one.

        • If the loaded document contains some data which is not represented in the original document, the data will be marked as added by a reviewer.
        • @@ -87,7 +87,7 @@

          If the authors of the original and loaded documents are the same person, the reviewer is the same user. His/her name is displayed in the change balloon.

          If the authors of two files are different users, then the author of the second file loaded for comparison is the author of the added/removed changes.

          -
          Presence of the tracked changes in the compared document
          +

          Presence of the tracked changes in the compared document

          If the original document contains some changes made in the review mode, they will be accepted in the comparison process. When you choose the second file for comparison, you'll see the corresponding warning message.

          In this case, when you choose the Original display mode, the document will not contain any changes.

          diff --git a/apps/documenteditor/main/resources/help/en/ProgramInterface/LayoutTab.htm b/apps/documenteditor/main/resources/help/en/ProgramInterface/LayoutTab.htm index 7b12829b7..b92fe0146 100644 --- a/apps/documenteditor/main/resources/help/en/ProgramInterface/LayoutTab.htm +++ b/apps/documenteditor/main/resources/help/en/ProgramInterface/LayoutTab.htm @@ -21,7 +21,7 @@

          Layout tab

          -

          corresponding window of the Desktop Document Editor:

          +

          The corresponding window of the Desktop Document Editor:

          Layout tab

          Using this tab, you can:

          diff --git a/apps/documenteditor/main/resources/help/en/UsageInstructions/AddTableofFigures.htm b/apps/documenteditor/main/resources/help/en/UsageInstructions/AddTableofFigures.htm index d3b1735e7..d278e6d78 100644 --- a/apps/documenteditor/main/resources/help/en/UsageInstructions/AddTableofFigures.htm +++ b/apps/documenteditor/main/resources/help/en/UsageInstructions/AddTableofFigures.htm @@ -80,8 +80,7 @@
        • Refresh page numbers only - to update page numbers without applying changes to the headings.
        • Refresh entire table - to update all the headings that have been modified and page numbers.
        -

        Click OK to confirm your choice,

        -

        or

        +

        Click OK to confirm your choice or

        Right-click the Table of Figures in your document to open the contextual menu, then choose the Refresh field to update the Table of Figures.

        diff --git a/apps/documenteditor/main/resources/help/en/UsageInstructions/AlignText.htm b/apps/documenteditor/main/resources/help/en/UsageInstructions/AlignText.htm index 7b20e9bd4..0b6740e0f 100644 --- a/apps/documenteditor/main/resources/help/en/UsageInstructions/AlignText.htm +++ b/apps/documenteditor/main/resources/help/en/UsageInstructions/AlignText.htm @@ -28,7 +28,7 @@
    -

    The alignment parameters are also available in the Paragraph - Advanced Settings window.

    +

    The alignment parameters are also available in the Paragraph - Advanced Settings window:

    1. right-click the text and choose the Paragraph - Advanced Settings option from the contextual menu or use the Show advanced settings option on the right sidebar,
    2. open the Paragraph - Advanced Settings window, switch to the Indents & Spacing tab,
    3. diff --git a/apps/documenteditor/main/resources/help/en/UsageInstructions/InsertCharts.htm b/apps/documenteditor/main/resources/help/en/UsageInstructions/InsertCharts.htm index 6256e5f6c..0f27d6fea 100644 --- a/apps/documenteditor/main/resources/help/en/UsageInstructions/InsertCharts.htm +++ b/apps/documenteditor/main/resources/help/en/UsageInstructions/InsertCharts.htm @@ -18,11 +18,11 @@

      Insert a chart

      To insert a chart in the Document Editor,

        -
      1. place the cursor where the chart should be added,
      2. -
      3. switch to the Insert tab of the top toolbar,
      4. -
      5. click the
        Chart icon on the top toolbar,
      6. +
      7. Place the cursor where the chart should be added.
      8. +
      9. Switch to the Insert tab of the top toolbar.
      10. +
      11. Click the
        Chart icon on the top toolbar.
      12. - select the needed chart type from the available ones: + Select the needed chart type from the available ones:
        Column Charts
          @@ -97,10 +97,10 @@
        • Custom combination
        -
      13. -

        Note: ONLYOFFICE Document Editor supports the following types of charts that were created with third-party editors: Pyramid, Bar (Pyramid), Horizontal/Vertical Cylinders, Horizontal/Vertical Cones. You can open the file containing such a chart and modify it using the available chart editing tools.

        +

        Note: ONLYOFFICE Document Editor supports the following types of charts that were created with third-party editors: Pyramid, Bar (Pyramid), Horizontal/Vertical Cylinders, Horizontal/Vertical Cones. You can open the file containing such a chart and modify it using the available chart editing tools.

        +
      14. - after that the Chart Editor window will appear where you can enter the necessary data into the cells using the following controls: + After that the Chart Editor window will appear where you can enter the necessary data into the cells using the following controls:
        • and
          for copying and pasting the copied data
        • and
          for undoing and redoing actions
        • @@ -160,7 +160,7 @@

          Chart Type Combo

        • - change the chart settings by clicking the Edit Chart button situated in the Chart Editor window. The Chart - Advanced Settings window will open. + Change the chart settings by clicking the Edit Chart button situated in the Chart Editor window. The Chart - Advanced Settings window will open.

          Chart - Advanced Settings window

          The Layout tab allows you to change the layout of chart elements.

            @@ -188,7 +188,7 @@ Specify the Data Labels (i.e. text labels that represent exact values of data points) parameters:
            • - specify the Data Labels position relative to the data points selecting the necessary option from the drop-down list. The available options vary depending on the selected chart type. + Specify the Data Labels position relative to the data points selecting the necessary option from the drop-down list. The available options vary depending on the selected chart type.
              • For Column/Bar charts, you can choose the following options: None, Center, Inner Bottom, Inner Top, Outer Top.
              • For Line/XY (Scatter)/Stock charts, you can choose the following options: None, Center, Left, Right, Top, Bottom.
              • @@ -196,8 +196,8 @@
              • For Area charts as well as for 3D Column, Line, Bar and Combo charts, you can choose the following options: None, Center.
            • -
            • select the data you wish to include into your labels checking the corresponding boxes: Series Name, Category Name, Value,
            • -
            • enter a character (comma, semicolon etc.) you wish to use for separating several labels into the Data Labels Separator entry field.
            • +
            • Select the data you wish to include into your labels checking the corresponding boxes: Series Name, Category Name, Value,
            • +
            • Enter a character (comma, semicolon etc.) you wish to use for separating several labels into the Data Labels Separator entry field.
          • Lines - is used to choose a line style for Line/XY (Scatter) charts. You can choose one of the following options: Straight to use straight lines between data points, Smooth to use smooth curves between data points, or None to not display lines.
          • @@ -210,9 +210,9 @@

            The Vertical Axis tab allows you to change the parameters of the vertical axis also referred to as the values axis or y-axis which displays numeric values. Note that the vertical axis will be the category axis which displays text labels for the Bar charts, therefore in this case the Vertical Axis tab options will correspond to the ones described in the next section. For the XY (Scatter) charts, both axes are value axes.

            Note: the Axis Settings and Gridlines sections will be disabled for Pie charts since charts of this type have no axes and gridlines.

              -
            • select Hide to hide vertical axis in the chart, leave it unchecked to have vertical axis displayed.
            • +
            • Select Hide to hide vertical axis in the chart, leave it unchecked to have vertical axis displayed.
            • - specify Title orientation by selecting the necessary option from the drop-down list: + Specify Title orientation by selecting the necessary option from the drop-down list:
              • None to not display a vertical axis title
              • Rotated to display the title from bottom to top to the left of the vertical axis,
              • @@ -271,9 +271,9 @@

                Chart - Advanced Settings window

                The Horizontal Axis tab allows you to change the parameters of the horizontal axis also referred to as the categories axis or x-axis which displays text labels. Note that the horizontal axis will be the value axis which displays numeric values for the Bar charts, therefore in this case the Horizontal Axis tab options will correspond to the ones described in the previous section. For the XY (Scatter) charts, both axes are value axes.

                  -
                • select Hide to hide horizontal axis in the chart, leave it unchecked to have horizontal axis displayed.
                • +
                • Select Hide to hide horizontal axis in the chart, leave it unchecked to have horizontal axis displayed.
                • - specify Title orientation by selecting the necessary option from the drop-down list: + Specify Title orientation by selecting the necessary option from the drop-down list:
                  • None when you don’t want to display a horizontal axis title,
                  • No Overlay  to display the title below the horizontal axis,
                  • diff --git a/apps/documenteditor/main/resources/help/fr/HelpfulHints/Comparison.htm b/apps/documenteditor/main/resources/help/fr/HelpfulHints/Comparison.htm index e2952f308..932143ff4 100644 --- a/apps/documenteditor/main/resources/help/fr/HelpfulHints/Comparison.htm +++ b/apps/documenteditor/main/resources/help/fr/HelpfulHints/Comparison.htm @@ -73,12 +73,12 @@

                    Pour rejeter rapidement toutes les modifications, cliquez sur la flèche vers le bas au-dessous du bouton Rejeter et sélectionnez l'option Rejeter toutes les modifications.

                    Informations supplémentaires sur la fonction de comparaison

                    -
                    Méthode de comparaison
                    +

                    Méthode de comparaison

                    Les documents sont comparés par des mots. Si au moins un caractère dans un mot est modifié (par exemple, si un caractère a été supprimé ou remplacé), à la suite la différence sera affichée comme le changement du mot entier, pas du caractère.

                    L'image ci-dessous illustre le cas où le fichier d'origine contient le mot « caractères » et le document de comparaison contient le mot « Caractères ».

                    Comparer documents - méthode

                    -
                    Auteur du document
                    +

                    Auteur du document

                    Lors du lancement de la comparaison, le deuxième document de comparaison est chargé et comparé au document actuel.

                    • Si le document chargé contient des données qui ne sont pas représentées dans le document d'origine, les données seront marquées comme ajoutées par un réviseur.
                    • @@ -87,7 +87,7 @@

                      Si le document original et le document chargé sont du même auteur, le réviseur est le même utilisateur. Son nom s'affiche dans la bulle de modification.

                      Si les deux fichiers sont des auteurs différents, l'auteur du deuxième fichier chargé à des fins de comparaison est l'auteur des modifications ajoutées/supprimées.

                      -
                      Présence des modifications suivies dans le document comparé
                      +

                      Présence des modifications suivies dans le document comparé

                      Si le document d'origine contient des modifications apportées en mode révision, elles seront acceptées pendant la comparaison. Lorsque vous choisissez le deuxième fichier à comparer, vous verrez le message d'avertissement correspondant.

                      Dans ce cas, lorsque vous choisissez le mode d'affichage Original, il n'y aura aucune modification dans le document.

                      diff --git a/apps/documenteditor/main/resources/help/fr/UsageInstructions/AddTableofFigures.htm b/apps/documenteditor/main/resources/help/fr/UsageInstructions/AddTableofFigures.htm index 411834685..2caa98745 100644 --- a/apps/documenteditor/main/resources/help/fr/UsageInstructions/AddTableofFigures.htm +++ b/apps/documenteditor/main/resources/help/fr/UsageInstructions/AddTableofFigures.htm @@ -80,8 +80,7 @@
                    • Actualiser les numéros de page uniquement permet d'actualiser les numéros de page sans modifier les changements de titres.
                    • Actualiser le tableau entier permet de mettre en place toutes les modifications des titres et des numéros de pages.
                    -

                    Cliquez sur OK pour confirmer votre choix.

                    -

                    ou

                    +

                    Cliquez sur OK pour confirmer votre choix ou

                    Ouvrez le menu contextuel en cliquant avec le bouton droit de la souris sur le Tableaux des figures dans votre document, ensuite cliquez sur Actualiser dans le menu pour le mettre à jour.

                    diff --git a/apps/documenteditor/main/resources/help/fr/UsageInstructions/AlignText.htm b/apps/documenteditor/main/resources/help/fr/UsageInstructions/AlignText.htm index f9d1ac413..85ff3a6ae 100644 --- a/apps/documenteditor/main/resources/help/fr/UsageInstructions/AlignText.htm +++ b/apps/documenteditor/main/resources/help/fr/UsageInstructions/AlignText.htm @@ -27,7 +27,7 @@
      -

      Configuration des paramètres d'alignement est aussi disponible dans la fenêtre Paragraphe - Paramètres avancés.

      +

      Configuration des paramètres d'alignement est aussi disponible dans la fenêtre Paragraphe - Paramètres avancés:

      1. faites un clic droit sur le texte et sélectionnez Paragraphe - Paramètres avancés du menu contextuel ou utilisez l'option Afficher le paramètres avancée sur la barre d'outils à droite,
      2. ouvrez la fenêtre Paragraphe - Paramètres avancés, passez à l'onglet Retraits et espacement,
      3. diff --git a/apps/documenteditor/main/resources/help/fr/UsageInstructions/CreateFillableForms.htm b/apps/documenteditor/main/resources/help/fr/UsageInstructions/CreateFillableForms.htm index 49bd439f8..483a6d57f 100644 --- a/apps/documenteditor/main/resources/help/fr/UsageInstructions/CreateFillableForms.htm +++ b/apps/documenteditor/main/resources/help/fr/UsageInstructions/CreateFillableForms.htm @@ -3,7 +3,7 @@ Créer des formulaires à remplir - + @@ -37,9 +37,9 @@

      champ de texte ajouté

      -

      Un champ du formulaire apparaîtra à la point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

      +

      Un champ du formulaire apparaîtra au point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

      - paramètres champ de texte + Paramètres du champ de texte
      • Clé : une clé à grouper les champs afin de les remplir simultanément. Pour créer une nouvelle clé, saisissez le nom de celle-là et appuyez sur Entrée, ensuite attribuez cette clé à chaque champ texte en choisissant de la liste déroulante. Message Champs connectés : 2/3/... s'affiche. Pour déconnecter les champs, cliquez sur Déconnexion.
      • Espace réservé : saisissez le texte à afficher dans le champ de saisie. Le texte par défaut est Votre texte ici.
      • @@ -49,20 +49,26 @@
        Conseil ajouté
      • - Taille de champ fixe : activez cette option pour fixer la taille du champ. Lors de l'activation de cette option, les options Ajustement automatique et Champ de saisie à plusieurs lignes deviennent aussi disponibles.
        - Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster son position. + Format : choisissez le format de contenu du champ texte, c'est-à-dire que seul le format de caractère choisi sera autorisé : Aucun, Chiffres, Lettres, Masque arbitraire (le texte doit correspondre au masque personnalisé, par exemple (999) 999 99 99), Expression régulière (le texte doit correspondre à l'expression personnalisée). +

        Lorsque vous choisissez le format Masque arbitraire ou Expression régulière, un champ supplémentaire sous le champ Format apparaît.

      • +
      • Symboles autorisés : saisissez les symboles autorisés dans le champ texte.
      • +
      • + Taille de champ fixe : activez cette option pour fixer la taille du champ. Lors de l'activation de cette option, les options Ajustement automatique et Champ de saisie à plusieurs lignes deviennent aussi disponibles.
        + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position. +
      • +
      • Ajustement automatique : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour ajuster automatiquement la police en fonction de la taille du champ.
      • +
      • Champ de saisie à plusieurs lignes : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour créer un champ à plusieurs lignes, sinon le champ va contenir une seule ligne de texte.
      • Limite de caractères : le nombre de caractères n'est pas limité par défaut. Activez cette option pour indiquer le nombre maximum de caractères dans le champ à droite.
      • - Peigne de caractères : configurer l'aspect général pour une présentation claire et équilibré. Laissez cette case décoché pour garder les paramètres par défaut ou cochez-là et configurez les paramètres suivants : + Peigne de caractères : configurer l'aspect général pour une présentation claire et équilibrée. Laissez cette case décochée pour garder les paramètres par défaut ou cochez-là et configurez les paramètres suivants :
        • Largeur de cellule : choisissez si la valeur de largeur doit être Auto (la largeur est calculée automatiquement), Au moins (la largeur n'est pas inférieure à la valeur indiquée manuellement), ou Exactement (la largeur correspond à la valeur indiquée manuellement). Le texte sera justifié selon les paramètres.
      • Couleur de bordure : cliquez sur l'icône
        pour définir la couleur de bordure du champ texte. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
      • Couleur d'arrière-plan : cliquez sur l'icône
        pour ajouter la couleur d'arrière-plan au champ de texte. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
      • -
      • Ajustement automatique : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour ajuster automatiquement la police en fonction de la taille du champ.
      • -
      • Champ de saisie à plusieurs lignes : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour créer un champ à plusieurs lignes, sinon le champ va contenir une seule ligne de texte.
      • +
      • Requis : cochez cette case pour rendre le champ texte obligatoire à remplir.

      Peigne de caractères

      @@ -72,7 +78,7 @@

      Créer une zone de liste déroulante

      -

      Zone de liste déroulante comporte une liste déroulante avec un ensemble de choix modifiable.

      +

      Zone de liste déroulante comporte une liste déroulante avec un ensemble de choix modifiable.

      Pour ajouter une zone de liste déroulante, @@ -84,27 +90,28 @@

    Zone de liste déroulante ajoutée

    -

    Le champ de formulaire apparaîtra à la point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    +

    Le champ de formulaire apparaîtra au point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    - Paramètres de la zone de liste déroulante + Paramètres de la zone de liste déroulante
    • Clé : une clé à grouper les zones de liste déroulante afin de les remplir simultanément. Pour créer une nouvelle clé, saisissez le nom de celle-là et appuyez sur Entrée, ensuite attribuez cette clé à chaque zone de liste déroulante. Choisissez la clé de la liste déroulante. Message Champs connectés: 2/3/... s'affiche. Pour déconnecter les champs, cliquez sur Déconnexion.
    • -
    • Espace réservé : saisissez le texte à afficher dans zone de liste déroulante. Le texte par défaut est Choisir un élément.
    • +
    • Espace réservé : saisissez le texte à afficher dans la zone de liste déroulante. Le texte par défaut est Choisir un élément.
    • Tag : saisissez le texte à utiliser en tant que tag pour usage interne, c'est-à-dire à afficher aux coéditeurs uniquement.
    • Conseil : saisissez le texte à afficher quand l'utilisateur fait passer la souris sur le champ du formulaire.
      Conseil ajouté
    • -
    • Options de valeur : ajouter
      de nouvelles valeurs, supprimez-les
      , ou déplacez-les vers le haut
      et
      vers le bas de la liste.
    • +
    • Options de valeur : ajouter
      de nouvelles valeurs, supprimez-les
      ou déplacez-les vers le haut
      et
      vers le bas de la liste.
    • Taille de champ fixe : activez cette option pour fixer la taille du champ.
      - Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster son position. + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position.
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure de la zone de liste déroulante. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan à la zone de liste déroulante. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ de zone de liste déroulante obligatoire à remplir.
    -

    Cliquez sur la flèche dans la partie droite de la Zone de liste déroulante ajoutée pour accéder à la liste d'éléments disponibles et choisir un élément approprié. Lorsque vous avez choisi un élément, vous pouvez modifier le texte affiché partiellement ou entièrement ou le remplacer du texte.

    +

    Cliquez sur la flèche dans la partie droite de la Zone de liste déroulante ajoutée pour accéder à la liste d'éléments disponibles et choisir un élément approprié. Lorsque vous avez choisi un élément, vous pouvez modifier le texte affiché partiellement ou entièrement ou le remplacer du texte.

    La zone de liste déroulante ouverte

    Vous pouvez changer le style, la couleur et la taille de la police. Cliquez sur la zone de liste déroulante et suivez les instructions. La mise en forme sera appliquée à l'ensemble du texte dans le champ.

    @@ -124,9 +131,9 @@

    Liste déroulante ajoutée

    -

    Le champ de formulaire apparaîtra à la point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    +

    Le champ de formulaire apparaîtra au point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    Cliquez sur la flèche dans la partie droite de la Liste déroulante ajoutée pour accéder à la liste d'éléments disponibles et choisir un élément approprié.

    @@ -151,7 +159,7 @@

    Créer une case à cocher

    -

    Case à cocher fournit plusieurs options permettant à l'utilisateur de sélectionner autant de cases à cocher que nécessaire. Cases à cocher sont utilisées indépendamment, alors chaque case peut être coché et ou décoché.

    +

    Case à cocher fournit plusieurs options permettant à l'utilisateur de sélectionner autant de cases à cocher que nécessaire. Cases à cocher sont utilisées indépendamment, alors chaque case peut être cochée et ou décochée.

    Pour insérer une case à cocher, @@ -163,9 +171,9 @@

    -

    Le champ du formulaire apparaîtra à la point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    +

    Le champ du formulaire apparaîtra au point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    - Paramètres de case à cocher + Paramètres de la case à cocher
    • Clé : une clé à grouper les cases à cocher afin de les remplir simultanément. Pour créer une nouvelle clé, saisissez le titre de celle-là et appuyez sur Entrée, ensuite attribuez cette clé aux champs du formulaire en choisissant de la liste déroulante. Message Champs connectés : 2/3/... s'affiche. Pour déconnecter les champs, cliquez sur Déconnexion.
    • Tag : saisissez un texte à utiliser en tant que tag à usage interne, c'est-à-dire affiché uniquement pour les coéditeurs.
    • @@ -175,10 +183,11 @@
    • Taille de champ fixe : activez cette option pour fixer la taille du champ.
      - Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster son position. + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position.
    • -
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure de la case à cocher. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • +
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure de la case à cocher. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan à la case à cocher. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ de case à cocher obligatoire à remplir.

    Cliquez sur la case pour la cocher.

    @@ -188,7 +197,7 @@

    Créer un bouton radio

    -

    Bouton radio fournit plusieurs options permettant à l'utilisateur de choisir une seule option parmi plusieurs possibles. Boutons radio sont utilisés en groupe, alors on ne peut pat choisir plusieurs boutons de la même groupe.

    +

    Bouton radio fournit plusieurs options permettant à l'utilisateur de choisir une seule option parmi plusieurs possibles. Boutons radio sont utilisés en groupe, alors on ne peut pas choisir plusieurs boutons du même groupe.

    Pour ajouter un bouton radio, @@ -200,9 +209,9 @@

    -

    Le champ du formulaire apparaîtra à la point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    +

    Le champ du formulaire apparaîtra au point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    - Paramètres su bouton radio + Paramètres du bouton radio
    • Clé de groupe : pour créer un nouveau groupe de boutons radio, saisissez le nom du groupe et appuyez sur Entrée, ensuite attribuez le groupe approprié à chaque bouton radio.
    • Tag : saisissez un texte à utiliser en tant que tag à usage interne, c'est-à-dire affiché uniquement pour les coéditeurs.
    • @@ -212,10 +221,11 @@
    • Taille de champ fixe : activez cette option pour fixer la taille du champ.
      - Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster son position. + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position.
    • -
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure du bouton radio. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • +
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure du bouton radio. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan au bouton radio. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ bouton radio obligatoire à remplir.

    Cliquez sur le bouton radio pour le choisir.

    @@ -225,10 +235,10 @@

    Créer un champ image

    -

    Images sont les champs du formulaire permettant d'insérer une image selon des limites définies, c-à-d, la position et la taille de l'image.

    +

    Images sont les champs du formulaire permettant d'insérer une image selon des limites définies, c'est-à-dire, la position et la taille de l'image.

    - Pour ajouter un champ d'image, + Pour ajouter un champ image,
    1. positionnez le point d'insertion à la ligne du texte où vous souhaitez ajouter un champ,
    2. passez à l'onglet Formulaires de la barre d'outils supérieure,
    3. @@ -237,21 +247,22 @@

    -

    Le champ du formulaire apparaîtra à la point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    +

    Le champ du formulaire apparaîtra au point d'insertion de la ligne de texte existante. Le menu Paramètres du formulaire s'affiche à droite.

    - Paramètres du champ image + Paramètres du champ image
    • Clé : une clé à grouper les images afin de les remplir simultanément. Pour créer une nouvelle clé, saisissez le titre de celle-là et appuyez sur Entrée, ensuite attribuez cette clé aux champs du formulaire en choisissant de la liste déroulante. Message Champs connectés : 2/3/... s'affiche. Pour déconnecter les champs, cliquez sur Déconnexion.
    • -
    • Espace réservé : saisissez le texte à afficher dans le champ d'image. Le texte par défaut est Cliquer pour télécharger l'image.
    • +
    • Espace réservé : saisissez le texte à afficher dans le champ image. Le texte par défaut est Cliquer pour télécharger l'image.
    • Tag : saisissez un texte à utiliser en tant que tag à usage interne, c'est-à-dire affiché uniquement pour les coéditeurs.
    • Conseil : saisissez le texte à afficher quand l'utilisateur fait passer la souris sur la bordure inférieure de l'image.
    • -
    • Mise à l'échelle : cliquez sur la liste déroulante et sélectionnez l'option de dimensionnement de l'image appropriée : Toujours, Jamais, lorsque L'image semble trop grande ou L'image semble trop petite. L'image sélectionnée sera redimensionnée dans le champ en fonction de l'option choisie.
    • +
    • Mise à l'échelle : cliquez sur la liste déroulante et sélectionnez l'option de dimensionnement de l'image appropriée : Toujours, Jamais, lorsque L'image semble trop grande ou L'image semble trop petite. L'image sélectionnée sera redimensionnée dans le champ en fonction de l'option choisie.
    • Verrouiller les proportions : cochez cette case pour maintenir le rapport d'aspect de l'image sans la déformer. Lors l'activation de cette option, faites glisser le curseur vertical ou horizontal pour positionner l'image à l'intérieur du champ ajouté. Si la case n'est pas cochée, les curseurs de positionnement ne sont pas activés.
    • Sélectionnez une image : cliquez sur ce bouton pour télécharger une image Depuis un fichier, D'une URL ou A partir de l'espace de stockage.
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure du champ avec l'image. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan au champ avec l'image. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ image obligatoire à remplir.

    Pour remplacer une image, cliquez sur l'icône d'image au-dessus de la bordure de champ image et sélectionnez une autre image.

    @@ -259,6 +270,138 @@
    +

    Créer un champ adresse email

    +

    Le champ Adresse email est utilisé pour saisir une adresse email correspondante à une expression régulière \S+@\S+\.\S+.

    +
    +
    + Pour insérer un champ adresse email, +
      +
    1. positionnez le point d'insertion dans une ligne du texte à l'endroit où vous souhaitez ajouter le champ,
    2. +
    3. passez à l'onglet Formulaires sur la barre supérieure,
    4. +
    5. + cliquez sur l'icône
      Adresse email. +
    6. +
    +

    +

    Le champ de formulaire apparaîtra au point d'insertion dans la ligne de texte existante. Le menu Paramètres du formulaire s'ouvre à droite.

    +
    + Paramètres de l'adresse e-mail +
      +
    • Clé : pour créer un nouveau groupe d'adresses email, saisissez le nom du groupe et appuyez sur Entrée, ensuite attribuez le groupe approprié à chaque champ adresse email.
    • +
    • Espace réservé : saisissez le texte à afficher dans le champ adresse email ; Le texte par défaut est “user_name@email.com”.
    • +
    • Tag : saisissez un texte à utiliser en tant que tag à usage interne, c'est-à-dire affiché uniquement pour les coéditeurs.
    • +
    • + Conseil : saisissez le texte à afficher quand l'utilisateur fait passer la souris sur le champ adresse email. +
      conseil inséré +
    • +
    • Format : choisissez le format de contenu du champ, c'est-à-dire Aucun, Chiffres, Lettres, Masque arbitraire ou Expression régulière. Le champ est défini sur Expression régulière par défaut afin de conserver le format de l'adresse email \S+@\S+\.\S+.
    • +
    • Symboles autorisés : saisissez les symboles autorisés dans le champ adresse email.
    • +
    • + Taille de champ fixe : activez cette option pour fixer la taille du champ. Lorsque cette option est activée, vous pouvez utiliser les paramètres Ajustement automatique et/ou Champ de saisie à plusieurs lignes.
      + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position. +
    • +
    • Ajustement automatique : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour ajuster automatiquement la taille de la police en fonction de la taille du champ.
    • +
    • Champ de saisie à plusieurs lignes : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour créer un champ à plusieurs lignes, sinon le champ va contenir une seule ligne de texte.
    • +
    • Limite de caractères : le nombre de caractères n'est pas limité par défaut. Activez cette option pour indiquer le nombre maximum de caractères dans le champ à droite.
    • +
    • + Peigne de caractères : répartissez le texte uniformément dans le champ adresse e-mail et configurez son aspect général. Laissez cette case décochée pour garder les paramètres par défaut ou cochez-là et configurez les paramètres suivants : +
        +
      • Largeur de cellule : choisissez si la valeur de largeur doit être Auto (la largeur est calculée automatiquement), Au moins (la largeur n'est pas inférieure à la valeur indiquée manuellement), ou Exactement (la largeur correspond à la valeur indiquée manuellement). Le texte sera justifié selon les paramètres.
      • +
      +
    • +
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure du champ adresse email inséré. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • +
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan au champ adresse email. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ adresse email obligatoire à remplir.
    • +
    +
    +
    +
    + +

    Créer un champ numéro de téléphone

    +

    Champ Numéro de téléphone permet de saisir un numéro de téléphone correspondant à un masque arbitraire fourni par le créateur du formulaire. Le texte par défaut est (999)999-9999.

    +
    +
    + Pour insérer un champ numéro de téléphone, +
      +
    1. positionnez le point d'insertion dans une ligne du texte à l'endroit où vous souhaitez ajouter le champ,
    2. +
    3. passez à l'onglet Formulaires dans la barre d'outils supérieure,
    4. +
    5. + cliquez sur l'icône
      numéro de téléphone. +
    6. +
    +

    +

    Le champ de formulaire apparaîtra au point d'insertion dans la ligne de texte existante. Le menu Paramètres du formulaire s'ouvre à droite.

    +
    + Paramètres du numéro de téléphone +
      +
    • Clé : pour créer un nouveau groupe de numéros de téléphone, saisissez le nom du groupe et appuyez sur Entrée, ensuite attribuez le groupe approprié à chaque numéro de téléphone.
    • +
    • Espace réservé : saisissez le texte à afficher dans le champ numéro de téléphone ; Le texte par défaut est “(999)999-9999”.
    • +
    • Tag : saisissez un texte à utiliser en tant que tag à usage interne, c'est-à-dire affiché uniquement pour les coéditeurs.
    • +
    • + Conseil : saisissez le texte à afficher quand l'utilisateur fait passer la souris sur le champ numéro de téléphone. +
      conseil inséré +
    • +
    • Format : choisissez le format de contenu du champ, c'est-à-dire Aucun, Chiffres, Lettres, Masque arbitraire ou Expression régulière. Le format du champ par défaut est Masque arbitraire. Pour le changer, saisissez le masque requis dans le champ ci-dessous.
    • +
    • Symboles autorisés : saisissez les symboles autorisés dans le champ numéro de téléphone.
    • +
    • + Taille de champ fixe : activez cette option pour fixer la taille du champ. Lorsque cette option est activée, vous pouvez utiliser les paramètres Ajustement automatique et/ou Champ de saisie à plusieurs lignes.
      + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position. +
    • +
    • Ajustement automatique : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour ajuster automatiquement la taille de la police en fonction de la taille du champ.
    • +
    • Champ de saisie à plusieurs lignes : il est possible d'activer cette option lors l'activation de l'option Taille de champ fixe, cochez cette case pour créer un champ à plusieurs lignes, sinon le champ va contenir une seule ligne de texte.
    • +
    • Limite de caractères : le nombre de caractères n'est pas limité par défaut. Activez cette option pour indiquer le nombre maximum de caractères dans le champ à droite.
    • +
    • + Peigne de caractères : répartissez le texte uniformément dans le champ numéro de téléphone et configurez son aspect général. Laissez cette case décochée pour conserver les paramètres par défaut ou cochez-là et configurez les paramètres suivants : +
        +
      • Largeur de cellule : choisissez si la valeur de largeur doit être Auto (la largeur est calculée automatiquement), Au moins (la largeur n'est pas inférieure à la valeur indiquée manuellement), ou Exactement (la largeur correspond à la valeur indiquée manuellement). Le texte sera justifié selon les paramètres.
      • +
      +
    • +
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure du champ numéro de téléphone. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • +
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan au champ numéro de téléphone. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ numéro de téléphone obligatoire à remplir.
    • +
    +
    +
    +
    + +

    Créer un champ complexe

    +

    Champ complexe réunit plusieurs types de champs, par exemple, un champ texte et une liste déroulante. Vous pouvez combiner les champs en fonction de vos besoins.

    +
    +
    + Pour insérer un champ complexe, +
      +
    1. positionnez le point d'insertion dans une ligne du texte à l'endroit où vous souhaitez ajouter le champ,
    2. +
    3. passez à l'onglet Formulaires dans la barre d'outils supérieure,
    4. +
    5. + cliquez sur l'icône
      Champ complexe. +
    6. +
    +

    champ complexe inséré

    +

    Le champ de formulaire apparaîtra au point d'insertion dans la ligne de texte existante. Le menu Paramètres du formulaire s'ouvre à droite.

    +
    + Paramètres du champ complexe +
      +
    • Clé : pour créer un nouveau groupe de champs complexes, saisissez le nom du groupe et appuyez sur Entrée, ensuite attribuez le groupe approprié à chaque champ complexe.
    • +
    • Espace réservé : saisissez le texte à afficher dans le champ complexe; Le texte par défaut est “Votre texte ici”.
    • +
    • Tag : saisissez un texte à utiliser en tant que tag à usage interne, c'est-à-dire affiché uniquement pour les coéditeurs.
    • +
    • + Conseil : saisissez le texte à afficher quand l'utilisateur fait passer la souris sur le champ complexe. +
      conseil insérté +
    • +
    • + Taille de champ fixe : activez cette option pour fixer la taille du champ.
      + Un champ de taille fixe ressemble à une forme automatique. Vous pouvez définir le style d'habillage et ajuster sa position. +
    • +
    • Couleur de bordure : cliquez sur l'icône
      pour définir la couleur de bordure du champ complexe. Sélectionnez la couleur appropriée des bordures dans la palette. Le cas échéant, vous pouvez ajouter une couleur personnalisée.
    • +
    • Couleur d'arrière-plan : cliquez sur l'icône
      pour ajouter la couleur d'arrière-plan au champ complexe. Sélectionnez la couleur appropriée de la palette Couleurs du thème, Couleurs standard ou ajoutez une nouvelle couleur personnalisée, le cas échéant.
    • +
    • Requis : cochez cette case pour rendre le champ complexe obligatoire à remplir.
    • +
    +

    Pour insérer de divers champs de formulaire dans un champ complexe, cliquez dessus et choisissez le champ requis dans la barre d'outils supérieure de l'onglet Formulaires, puis configurez-le. Pour en savoir plus sur chaque type de champ, consultez la section appropriée ci-dessus.

    +

    Veuillez noter qu'il est impossible d'utiliser le champ de formulaire Image dans les champs complexes.

    +
    +
    +
    +

    Mettre le formulaire en surbrillance

    Vous pouvez mettre en surbrillance les champs du formulaire ajoutés avec une certaine couleur.

    @@ -268,15 +411,13 @@
    Paramètres de surbrillance
      -
    • accéder aux Paramètres de surbrillance sous l'onglet Formulaire de la barre d'outils supérieure,
    • +
    • accédez aux Paramètres de surbrillance sous l'onglet Formulaire de la barre d'outils supérieure,
    • choisissez une couleur de la palette de Couleurs standard. Le cas échéant, vous pouvez ajouter une couleur personnalisée,
    • pour supprimer la mise en surbrillance actuelle, utilisez l'option Pas de surbrillance.

    Les options de surbrillance activées seront appliquées à tous les champs du formulaire actuel.

    -

    - Remarque : La bordure du champ du formulaire n'est pas visible lorsque vous sélectionnez ce champ. Ces bordures sont non imprimables. -

    +

    La bordure du champ du formulaire n'est pas visible lorsque vous sélectionnez ce champ. Ces bordures sont non imprimables.

    @@ -286,7 +427,7 @@

    Cliquez sur le bouton Voir le formulaire sous l'onglet Formulaire de la barre d'outils supérieure, pour afficher un aperçu du formulaire sur un document.

    Voir le formulaire actif

    -

    Pour quitter le mode d'aperçu, cliquer sur la même icône encore une fois.

    +

    Pour quitter le mode d'aperçu, cliquez sur la même icône encore une fois.

    Déplacer les champs du formulaire

    Il est possible de déplacer les champs du formulaire vers un autre emplacement du document : cliquez sur le bouton à gauche de la bordure de contrôle et faites la glisser vers un autre emplacement sans relâcher le bouton de la souris.

    @@ -311,7 +452,7 @@

    When you are finished, click the

    Submit button at the top toolbar to send the form for further processing. Please note that this action cannot be undone.

    If you are using the server version of ONLYOFFICE Docs, the presence of the Submit button depends on the configuration. Read this article to learn more.

    -->

    Supprimer les champs du formulaire

    -

    Pour supprimer un champ du formulaire et garder tous son contenu, sélectionnez-le et cliquez sur l'icône Supprimer (assurez-vous que le champ n'est pas verrouillé) ou appuyez sur la touche Supprimer du clavier.

    +

    Pour supprimer un champ du formulaire et garder tout son contenu, sélectionnez-le et cliquez sur l'icône Supprimer (assurez-vous que le champ n'est pas verrouillé) ou appuyez sur la touche Supprimer du clavier.

    \ No newline at end of file diff --git a/apps/documenteditor/main/resources/help/fr/UsageInstructions/InsertCharts.htm b/apps/documenteditor/main/resources/help/fr/UsageInstructions/InsertCharts.htm index ebb1e4ce5..fcecf86cb 100644 --- a/apps/documenteditor/main/resources/help/fr/UsageInstructions/InsertCharts.htm +++ b/apps/documenteditor/main/resources/help/fr/UsageInstructions/InsertCharts.htm @@ -18,9 +18,9 @@

    Insérer un graphique

    Pour insérer un graphique dans l'Éditeur de Documents,

      -
    1. placez le curseur à l'endroit où vous voulez insérer un graphique,
    2. -
    3. passez à l'onglet Insertion de la barre d'outils supérieure,
    4. -
    5. cliquez sur l'icône Graphique
      de la barre d'outils supérieure,
    6. +
    7. Placez le curseur à l'endroit où vous voulez insérer un graphique.
    8. +
    9. Passez à l'onglet Insertion de la barre d'outils supérieure.
    10. +
    11. Cliquez sur l'icône Graphique
      de la barre d'outils supérieure.
    12. choisissez le type de graphique approprié :
      @@ -100,7 +100,7 @@

      Remarque : Éditeur de Documents ONLYOFFICE prend en charge des graphiques en pyramides, à barres (pyramides), horizontal/vertical à cylindre, horizontal/vertical à cônes qui étaient créés avec d’autres applications. Vous pouvez ouvrir le fichier comportant un tel graphique et le modifier.

    13. - lorsque la fenêtre Éditeur du graphique s'affiche, vous pouvez saisir les données à en utilisant des boutons suivants : + Lorsque la fenêtre Éditeur du graphique s'affiche, vous pouvez saisir les données à en utilisant des boutons suivants :
      • et
        pour copier et coller des données
      • et
        pour annuler et rétablir une action
      • @@ -160,7 +160,7 @@

        La fenêtre Type de graphique Combo

      • - paramétrer le graphique en cliquant sur Modifier le graphique dans la fenêtre Éditeur du graphique. La fenêtre Graphique - Paramètres avancés s'affiche. + Paramétrer le graphique en cliquant sur Modifier le graphique dans la fenêtre Éditeur du graphique. La fenêtre Graphique - Paramètres avancés s'affiche.

        La fenêtre Graphique - Paramètres avancés

        L'onglet Disposition vous permet de modifier la disposition des éléments de graphique.

          @@ -188,7 +188,7 @@ Spécifiez les paramètres des Étiquettes de données (c'est-à-dire les étiquettes de texte représentant les valeurs exactes des points de données) :
          • - spécifiez la position des Étiquettes de données par rapport aux points de données en sélectionnant l'option nécessaire dans la liste déroulante. Les options disponibles varient en fonction du type de graphique sélectionné. + Spécifiez la position des Étiquettes de données par rapport aux points de données en sélectionnant l'option nécessaire dans la liste déroulante. Les options disponibles varient en fonction du type de graphique sélectionné.
            • Pour les graphiques en Colonnes/Barres, vous pouvez choisir les options suivantes : Rien, Au centre, En haut à l'intérieur, En haut à l'intérieur, En haut à l'extérieur.
            • Pour les graphiques en Ligne/ Nuage de points (XY)/Boursier, vous pouvez choisir les options suivantes : Rien, Au centre, À gauche, À droite, En haut, En bas.
            • @@ -196,8 +196,8 @@
            • Pour les graphiques en Aire ainsi que pour les graphiques 3D en Colonnes, Ligne, Barres et Combo vous pouvez choisir les options suivantes : Rien, Au centre.
          • -
          • sélectionnez les données que vous souhaitez inclure dans vos étiquettes en cochant les cases correspondantes : Nom de la série, Nom de la catégorie, Valeur,
          • -
          • entrez un caractère (virgule, point-virgule, etc.) que vous souhaitez utiliser pour séparer plusieurs étiquettes dans le champ de saisie Séparateur d'étiquettes de données.
          • +
          • Sélectionnez les données que vous souhaitez inclure dans vos étiquettes en cochant les cases correspondantes : Nom de la série, Nom de la catégorie, Valeur,
          • +
          • Entrez un caractère (virgule, point-virgule, etc.) que vous souhaitez utiliser pour séparer plusieurs étiquettes dans le champ de saisie Séparateur d'étiquettes de données.
        • Lignes - permet de choisir un style de ligne pour les graphiques en Ligne/Nuage de points (XY). Vous pouvez choisir parmi les options suivantes : Droit pour utiliser des lignes droites entre les points de données, Lisse pour utiliser des courbes lisses entre les points de données, ou Rien pour ne pas afficher les lignes.
        • @@ -210,9 +210,9 @@

          L'onglet Axe vertical vous permet de modifier les paramètres de l'axe vertical, également appelés axe des valeurs ou axe y, qui affiche des valeurs numériques. Notez que l'axe vertical sera l'axe des catégories qui affiche des étiquettes de texte pour les Graphiques à barres. Dans ce cas, les options de l'onglet Axe vertical correspondront à celles décrites dans la section suivante. Pour les Graphiques Nuage de points (XY), les deux axes sont des axes de valeur.

          Remarque : les sections Paramètres des axes et Quadrillage seront désactivées pour les Graphiques à secteurs, car les graphiques de ce type n'ont ni axes ni lignes de quadrillage.

            -
          • sélectionnez Masquer l'axe pour masquer l'axe vertical du graphique, laissez cette option décochée pour afficher l'axe.
          • +
          • Sélectionnez Masquer l'axe pour masquer l'axe vertical du graphique, laissez cette option décochée pour afficher l'axe.
          • - définissez l'orientation du Titre en choisissant l'option appropriée de la liste déroulante : + Définissez l'orientation du Titre en choisissant l'option appropriée de la liste déroulante :
            • Rien pour ne pas afficher le titre de l'axe vertical
            • Incliné pour afficher le titre de bas en haut à gauche de l'axe vertical,
            • @@ -271,9 +271,9 @@

              La fenêtre Graphique - Paramètres avancés

              L'onglet Axe horizontal vous permet de modifier les paramètres de l'axe horizontal, également appelés axe des catégories ou axe x, qui affiche des étiquettes textuels. Notez que l'axe horizontal sera l'axe des valeurs qui affiche des valeurs numériques pour les Graphiques à barres. Dans ce cas, les options de l'onglet Axe horizontal correspondent à celles décrites dans la section précédente. Pour les Graphiques Nuage de points (XY), les deux axes sont des axes de valeur.

                -
              • sélectionnez Masquer l'axe pour masquer l'axe horizontal du graphique, laissez cette option décochée pour afficher l'axe.
              • +
              • Sélectionnez Masquer l'axe pour masquer l'axe horizontal du graphique, laissez cette option décochée pour afficher l'axe.
              • - définissez l'orientation du Titre en choisissant l'option appropriée de la liste déroulante : + Définissez l'orientation du Titre en choisissant l'option appropriée de la liste déroulante :
                • Rien pour ne pas afficher le titre de l'axe horizontal.
                • Sans superposition pour afficher le titre en-dessous de l'axe horizontal.
                • diff --git a/apps/documenteditor/main/resources/help/it/HelpfulHints/Comparison.htm b/apps/documenteditor/main/resources/help/it/HelpfulHints/Comparison.htm index 0108e2f30..412336a3a 100644 --- a/apps/documenteditor/main/resources/help/it/HelpfulHints/Comparison.htm +++ b/apps/documenteditor/main/resources/help/it/HelpfulHints/Comparison.htm @@ -73,12 +73,12 @@

                  To quickly reject all the changes, click the downward arrow below the Reject button and select the Reject All Changes option.

                  Additional info on the comparison feature

                  -
                  Method of the comparison
                  +

                  Method of the comparison

                  Documents are compared by words. If a word contains a change of at least one character (e.g. if a character was removed or replaced), in the result, the difference will be displayed as the change of the entire word, not the character.

                  The image below illustrates the case when the original file contains the word 'Characters' and the document for comparison contains the word 'Character'.

                  Compare documents - method

                  -
                  Authorship of the document
                  +

                  Authorship of the document

                  When the comparison process is launched, the second document for comparison is being loaded and compared to the current one.

                  • If the loaded document contains some data which is not represented in the original document, the data will be marked as added by a reviewer.
                  • @@ -87,7 +87,7 @@

                    If the authors of the original and loaded documents are the same person, the reviewer is the same user. His/her name is displayed in the change balloon.

                    If the authors of two files are different users, then the author of the second file loaded for comparison is the author of the added/removed changes.

                    -
                    Presence of the tracked changes in the compared document
                    +

                    Presence of the tracked changes in the compared document

                    If the original document contains some changes made in the review mode, they will be accepted in the comparison process. When you choose the second file for comparison, you'll see the corresponding warning message.

                    In this case, when you choose the Original display mode, the document will not contain any changes.

                    diff --git a/apps/documenteditor/main/resources/help/it/UsageInstructions/AlignText.htm b/apps/documenteditor/main/resources/help/it/UsageInstructions/AlignText.htm index c5b5d525a..c46ec066e 100644 --- a/apps/documenteditor/main/resources/help/it/UsageInstructions/AlignText.htm +++ b/apps/documenteditor/main/resources/help/it/UsageInstructions/AlignText.htm @@ -28,7 +28,7 @@
    -

    I parametri di allineamento sono disponibili anche nella finestra Paragrafo - Impostazioni avanzate.

    +

    I parametri di allineamento sono disponibili anche nella finestra Paragrafo - Impostazioni avanzate:

    1. fare clic con il pulsante destro del mouse sul testo e scegliere l'opzione Impostazioni avanzate del paragrafo dal menu contestuale o utilizzare l'opzione Mostra impostazioni avanzate nella barra laterale destra,
    2. aprire la finestra Paragrafo - Impostazioni avanzate, passare alla scheda Rientri e spaziatura
    3. diff --git a/apps/documenteditor/main/resources/help/ru/HelpfulHints/Comparison.htm b/apps/documenteditor/main/resources/help/ru/HelpfulHints/Comparison.htm index 0f859278d..47be9a59b 100644 --- a/apps/documenteditor/main/resources/help/ru/HelpfulHints/Comparison.htm +++ b/apps/documenteditor/main/resources/help/ru/HelpfulHints/Comparison.htm @@ -73,12 +73,12 @@

      Чтобы быстро отклонить все изменения, нажмите направленную вниз стрелку под кнопкой Отклонить и выберите опцию Отклонить все изменения.

      Дополнительные сведения о функции сравнения

      -
      Принцип сравнения
      +

      Принцип сравнения

      Сравнение документов ведется по словам. Если слово содержит изменение хотя бы на один символ (например, если символ был удален или заменен), в результате отличие будет отображено как изменение всего слова целиком, а не символа.

      Приведенное ниже изображение иллюстрирует случай, когда исходный файл содержит слово 'Символы', а документ для сравнения содержит слово 'Символ'.

      Сравнение документов - принцип

      -
      Авторство документа
      +

      Авторство документа

      При запуске процесса сравнения документов второй документ для сравнения загружается и сравнивается с текущим.

      • Если загруженный документ содержит данные, которые отсутствуют в исходном документе, они будут помечены как добавленные рецензентом.
      • @@ -87,7 +87,7 @@

        Если авторы исходного и загруженного документа совпадают, то рецензентом будет тот же пользователь. Его имя отображается во всплывающем окне с изменением.

        Если авторы двух файлов - разные пользователи, то автор второго файла, загруженного для сравнения, будет автором добавленных или удаленных изменений.

        -
        Наличие рецензирования в сравниваемом документе
        +

        Наличие рецензирования в сравниваемом документе

        Если исходный документ содержит изменения, внесенные в режиме рецензирования, то в результате сравнения документа они будут приняты. При выборе второго файла для сравнения вы увидите соответствующее предупреждение.

        В этом случае при выборе режима отображения Исходный документ документ не будет содержать изменений.

        diff --git a/apps/documenteditor/main/resources/help/ru/UsageInstructions/AlignText.htm b/apps/documenteditor/main/resources/help/ru/UsageInstructions/AlignText.htm index 72d578b6d..0c403d2a3 100644 --- a/apps/documenteditor/main/resources/help/ru/UsageInstructions/AlignText.htm +++ b/apps/documenteditor/main/resources/help/ru/UsageInstructions/AlignText.htm @@ -28,7 +28,7 @@
    -

    Параметры выравнивания также доступны в окне Абзац - дополнительные параметры.

    +

    Параметры выравнивания также доступны в окне Абзац - дополнительные параметры:

    1. щелкните по тексту правой кнопкой мыши и выберите в контекстном меню опцию Дополнительные параметры абзаца или используйте опцию Дополнительные параметры на правой боковой панели,
    2. откройте окно Абзац - дополнительные параметры, перейдите на вкладку Отступы и интервалы,
    3. diff --git a/apps/documenteditor/main/resources/help/ru/UsageInstructions/InsertCharts.htm b/apps/documenteditor/main/resources/help/ru/UsageInstructions/InsertCharts.htm index 7e4e76e35..37d6389a2 100644 --- a/apps/documenteditor/main/resources/help/ru/UsageInstructions/InsertCharts.htm +++ b/apps/documenteditor/main/resources/help/ru/UsageInstructions/InsertCharts.htm @@ -18,11 +18,11 @@

      Вставка диаграммы

      Для вставки диаграммы в документ:

        -
      1. установите курсор там, где требуется поместить диаграмму,
      2. -
      3. перейдите на вкладку Вставка верхней панели инструментов,
      4. -
      5. щелкните по значку
        Диаграмма на верхней панели инструментов,
      6. +
      7. Установите курсор там, где требуется поместить диаграмму.
      8. +
      9. Перейдите на вкладку Вставка верхней панели инструментов.
      10. +
      11. Щелкните по значку
        Диаграмма на верхней панели инструментов.
      12. - выберите из доступных типов диаграммы: + Выберите из доступных типов диаграммы:
        Гистограмма
          @@ -99,7 +99,7 @@

          Примечание: Редактор документов ONLYOFFICE поддерживает следующие типы диаграмм, созданных в сторонних редакторах: Пирамида, Гистограмма (пирамида), Горизонтальные/Вертикальные цилиндры, Горизонтальные/вертикальные конусы. Вы можете открыть файл, содержащий такую диаграмму, и изменить его, используя доступные инструменты редактирования диаграмм.

        • - после этого появится окно Редактор диаграмм, в котором можно ввести в ячейки необходимые данные при помощи следующих элементов управления: + После этого появится окно Редактор диаграмм, в котором можно ввести в ячейки необходимые данные при помощи следующих элементов управления:
          • и
            для копирования и вставки скопированных данных
          • и
            для отмены и повтора действий
          • @@ -153,13 +153,13 @@
    4. - измените параметры диаграммы, нажав на кнопку Изменить тип диаграммы в окне Редактор диаграмм, чтобы выбрать тип и стиль диаграммы. Выберите диаграмму из доступных разделов: гистограмма, график, круговая, линейчатая, с областями, биржевая, точечная, комбинированные. + Измените параметры диаграммы, нажав на кнопку Изменить тип диаграммы в окне Редактор диаграмм, чтобы выбрать тип и стиль диаграммы. Выберите диаграмму из доступных разделов: гистограмма, график, круговая, линейчатая, с областями, биржевая, точечная, комбинированные.

      Окно Тип диаграммы

      Когда вы выбираете Комбинированные диаграммы, в окне Тип диаграммы расположены ряды диаграмм, для которых можно выбрать типы диаграмм и данные для размещения на вторичной оси.

      Chart Type Combo

    5. - измените параметры диаграммы, нажав кнопку Редактировать диаграмму в окне Редактор диаграмм. Откроется окно Диаграмма - Дополнительные настройки. + Измените параметры диаграммы, нажав кнопку Редактировать диаграмму в окне Редактор диаграмм. Откроется окно Диаграмма - Дополнительные настройки.

      Окно Диаграмма - дополнительные параметры

      На вкладке Макет можно изменить расположение элементов диаграммы:

        @@ -187,7 +187,7 @@ Определите параметры Подписей данных (то есть текстовых подписей, показывающих точные значения элементов данных):
        • - укажите местоположение Подписей данных относительно элементов данных, выбрав нужную опцию из выпадающего списка. Доступные варианты зависят от выбранного типа диаграммы. + Укажите местоположение Подписей данных относительно элементов данных, выбрав нужную опцию из выпадающего списка. Доступные варианты зависят от выбранного типа диаграммы.
          • Для Гистограмм и Линейчатых диаграмм можно выбрать следующие варианты: Нет, По центру, Внутри снизу, Внутри сверху, Снаружи сверху.
          • Для Графиков и Точечных или Биржевых диаграмм можно выбрать следующие варианты: Нет, По центру, Слева, Справа, Сверху, Снизу.
          • @@ -195,8 +195,8 @@
          • Для диаграмм С областями, а также для Гистограмм, Графиков и Линейчатых диаграмм в формате 3D можно выбрать следующие варианты: Нет, По центру.
        • -
        • выберите данные, которые вы хотите включить в ваши подписи, поставив соответствующие флажки: Имя ряда, Название категории, Значение,
        • -
        • введите символ (запятая, точка с запятой и т.д.), который вы хотите использовать для разделения нескольких подписей, в поле Разделитель подписей данных.
        • +
        • Выберите данные, которые вы хотите включить в ваши подписи, поставив соответствующие флажки: Имя ряда, Название категории, Значение,
        • +
        • Введите символ (запятая, точка с запятой и т.д.), который вы хотите использовать для разделения нескольких подписей, в поле Разделитель подписей данных.
      • Линии - используется для выбора типа линий для линейчатых/точечных диаграмм. Можно выбрать одну из следующих опций: Прямые для использования прямых линий между элементами данных, Сглаженные для использования сглаженных кривых линий между элементами данных или Нет для того, чтобы линии не отображались.
      • @@ -209,9 +209,9 @@

        Вкладка Вертикальная ось позволяет изменять параметры вертикальной оси, также называемой осью значений или осью Y, которая отображает числовые значения. Обратите внимание, что вертикальная ось будет осью категорий, которая отображает подпись для Гистограмм, таким образом, параметры вкладки Вертикальная ось будут соответствовать параметрам, описанным в следующем разделе. Для Точечных диаграмм обе оси являются осями значений.

        Примечание: Параметры оси и Линии сетки недоступны для круговых диаграмм, так как у круговых диаграмм нет осей и линий сетки.

          -
        • нажмите Скрыть ось, чтобы скрыть вертикальную ось на диаграмме.
        • +
        • Нажмите Скрыть ось, чтобы скрыть вертикальную ось на диаграмме.
        • - укажите ориентацию Заголовка, выбрав нужный вариант из раскрывающегося списка: + Укажите ориентацию Заголовка, выбрав нужный вариант из раскрывающегося списка:
          • Нет - не отображать название вертикальной оси,
          • Повернутое - показать название снизу вверх слева от вертикальной оси,
          • @@ -290,9 +290,9 @@

            Диаграмма - окно дополнительные параметры

            Вкладка Горизонтальная ось позволяет изменять параметры горизонтальной оси, также называемой осью категорий или осью x, которая отображает текстовые метки. Обратите внимание, что горизонтальная ось будет осью значений, которая отображает числовые значения для Гистограмм, поэтому в этом случае параметры вкладки Горизонтальная ось будут соответствовать параметрам, описанным в предыдущем разделе. Для Точечных диаграмм обе оси являются осями значений.

              -
            • нажмите Скрыть ось, чтобы скрыть горизонтальную ось на диаграмме.
            • +
            • Нажмите Скрыть ось, чтобы скрыть горизонтальную ось на диаграмме.
            • - укажите ориентацию Заголовка, выбрав нужный вариант из раскрывающегося списка: + Укажите ориентацию Заголовка, выбрав нужный вариант из раскрывающегося списка:
              • Нет - не отображать заголовок горизонтальной оси,
              • Без наложения - отображать заголовок под горизонтальной осью,
              • diff --git a/apps/documenteditor/main/resources/less/app.less b/apps/documenteditor/main/resources/less/app.less index 1e428264b..b72de26d4 100644 --- a/apps/documenteditor/main/resources/less/app.less +++ b/apps/documenteditor/main/resources/less/app.less @@ -191,16 +191,38 @@ @huge-icon-background-image: var(--huge-icon-background-image); } +.font-size-tiny { + .fontsize(9px); // 9px + .fontsize(calc(@font-size-base-app - 2px)); // 9px +} + .font-size-small { - .fontsize(@font-size-small); + .fontsize(10px); // 10px + .fontsize(calc(@font-size-base-app - 1px)); // 10px } .font-size-normal { - .fontsize(@font-size-base); + .fontsize(@font-size-base-app); // 11px +} + +.font-size-medium { + .fontsize(12px); // 12px + .fontsize(calc(@font-size-base-app + 1px)); // 12px } .font-size-large { - .fontsize(@font-size-large); + .fontsize(13px); // 13px + .fontsize(calc(@font-size-base-app + 2px)); // 13px +} + +.font-size-huge { + .fontsize(14px); // 14px + .fontsize(calc(@font-size-base-app + 3px)); // 14px +} + +.font-size-very-huge { + .fontsize(16px); // 16px + .fontsize(calc(@font-size-base-app + 5px)); // 16px } // Skeleton of document diff --git a/apps/documenteditor/main/resources/less/filemenu.less b/apps/documenteditor/main/resources/less/filemenu.less index 289554ace..78a26633f 100644 --- a/apps/documenteditor/main/resources/less/filemenu.less +++ b/apps/documenteditor/main/resources/less/filemenu.less @@ -47,7 +47,7 @@ &:extend(.dropdown-menu > li > a); padding-top: 4px; cursor: pointer; - font-size: 13px; + .font-size-large(); &:hover { text-decoration: none; @@ -82,14 +82,38 @@ } } -#panel-saveas, #panel-savecopy { - table { - margin-left: auto; - margin-right: auto; - margin-bottom: 24px; +#file-menu-panel .panel-context { + #panel-saveas, #panel-savecopy { + &.content-box { + padding: 0 0 0 20px; + } - .btn-doc-format { - margin: 24px 12px 0px; + .content-container { + margin: 30px 0 0 10px; + + .header { + .font-size-very-huge(); + margin-bottom: 20px; + } + + .format-items { + .format-item { + float: left; + margin: 0 24px 34px 0; + + .btn-doc-format { + width: 70px; + height: 90px; + } + } + + .divider { + float: left; + width: 0; + height: 0; + } + + } } } } @@ -143,6 +167,21 @@ &epub { background: ~"url('@{common-image-const-path}/doc-formats/epub.svg') no-repeat center"; } + &xps { + background: ~"url('@{common-image-const-path}/doc-formats/xps.svg') no-repeat center"; + } + &oxps { + background: ~"url('@{common-image-const-path}/doc-formats/oxps.svg') no-repeat center"; + } + &djvu { + background: ~"url('@{common-image-const-path}/doc-formats/djvu.svg') no-repeat center"; + } + &png { + background: ~"url('@{common-image-const-path}/doc-formats/png.svg') no-repeat center"; + } + &jpg { + background: ~"url('@{common-image-const-path}/doc-formats/jpg.svg') no-repeat center"; + } } div { @@ -187,18 +226,26 @@ } #panel-settings { + .header { + margin: 30px 0 16px 30px; + .font-size-very-huge(); + } + table { width: auto !important; tr { td { + label{ + .font-size-normal(); + } + padding: 6px 10px; &.group-name label { - font-size: 14px; + .font-size-huge(); .font-weight-bold(); } &.subgroup-name label{ - font-size: 11px; .font-weight-bold(); } @@ -212,7 +259,7 @@ width: 30%; label { .font-weight-bold(); - font-size: 12px; + .font-size-medium(); } } @@ -234,31 +281,14 @@ } #panel-createnew { - h3 { - margin: 0; - font-size: 10pt; - color: @text-normal-ie; - color: @text-normal; - .font-weight-bold(); - padding: 0 0 10px 10px; + .header { + .font-size-very-huge(); + padding: 0 0 0 10px; white-space: nowrap; + margin-top: 30px; + margin-bottom: 20px; } - - - .blank-document-info { - vertical-align: top; - width: 445px; - display: inline-block; - - h3 { - padding-left: 0; - padding-top: 40px; - white-space: nowrap; - } - } - - hr { margin: 0; border-bottom: none; @@ -287,7 +317,7 @@ .title { width: 104px; - font-size: 12px; + .font-size-medium(); line-height: 14px; height: 28px; margin: 8px 8px 12px 8px; @@ -315,6 +345,15 @@ } #panel-recentfiles { + #id-recent-view { + margin: 0 0 20px 10px; + } + + .header { + margin: 30px 0 20px 10px; + .font-size-very-huge(); + } + .item { border: none; width: 100%; @@ -324,7 +363,7 @@ .recent-wrap { padding: 5px 10px; cursor: pointer; - font-size: 12px; + .font-size-medium(); &:hover, &.over { @@ -382,7 +421,7 @@ width: 100%; .box-shadow(none); margin: 0; - font-size: 12px; + .font-size-medium(); float: none; &:not(.header-name) { @@ -407,7 +446,7 @@ .header-name { padding: 16px 2px 4px 10px; - font-size: 12px; + .font-size-medium(); } } } @@ -416,6 +455,18 @@ #file-menu-panel & { padding: 0 30px; } + + .header { + margin: 30px 0 20px 0; + .font-size-very-huge(); + } +} + +#panel-info { + .header { + margin: 30px 0 20px 30px; + .font-size-very-huge(); + } } #panel-info, @@ -428,7 +479,7 @@ &.left { padding: 5px 10px; text-align: right; - width: 30%; + width: 200px; label { .font-weight-bold(); @@ -437,7 +488,7 @@ &.right { padding: 5px 10px; - width: 70%; + width: calc(100% - 200px); } } @@ -463,7 +514,7 @@ } label, span { - font-size: 12px; + .font-size-medium(); } .tool { @@ -506,22 +557,161 @@ } #panel-protect { -label { - font-size: 12px; -} + label { + .font-size-medium(); + } -#file-menu-panel & { - padding: 30px 30px; -} + #file-menu-panel & { + padding: 30px 30px; + } -.header { - .font-weight-bold(); - margin: 30px 0 10px; -} + .header { + .font-weight-bold(); + margin: 20px 0 4px 0; + } -table { - td { - padding: 5px 0; + .description { + color: @text-secondary-ie; + color: @text-secondary; + margin-bottom: 12px; + } + + .buttons { + display: flex; + } + + #fms-btn-delete-pwd { + margin-left: 16px; + } + + .signature-view-link { + margin-right: 20px; + } + + .signature-tip { + margin-bottom: 6px; + } + + #fms-btn-invisible-sign { + margin-bottom: 20px; + } + + #id-fms-lbl-protect-header { + .font-size-very-huge(); + } + + .btn-text-default.auto { + padding-left: 12px; + padding-right: 12px; + } +} + +#file-menu-panel { + #panel-print { + padding: 0; + .main-header { + .font-size-very-huge(); + margin: 18px 0 20px 0; + } + #id-print-settings { + position: absolute; + width:280px; + top: 0; + bottom: 0; + } + .print-settings { + width: 100%; + height: 100%; + overflow: hidden; + display: flex; + flex-direction: column; + border-right: @scaled-one-px-value-ie solid @border-toolbar-ie; + border-right: @scaled-one-px-value solid @border-toolbar; + label.header { + font-weight: 700; + } + .footer { + .btn.primary { + margin-right: 8px; + } + } + .settings-container { + width: 100%; + height: 100%; + overflow: hidden; + padding: 12px 16px; + .padding-small { + padding-bottom: 8px; + } + .padding-large { + padding-bottom: 16px; + } + + #print-apply-all { + margin-top: 5px; + } + .link { + margin-top: 9px; + } + .footer { + margin-top: 24px; + } + } + } + #print-navigation { + height: 50px; + padding-left: 20px; + padding-top: 10px; + display: flex; + .btn-prev-page, .btn-next-page { + background-color: transparent; + padding: 0; + height: 20px; + width: 20px; + i.arrow { + display: inline-block; + width: 10px; + height: 10px; + + border: solid @scaled-one-px-value-ie @icon-normal-ie; + border: solid @scaled-one-px-value @icon-normal; + border-bottom: none; + border-right: none; + } + &.disabled { + opacity: @component-disabled-opacity; + } + + &:hover:not(:disabled):not(.disabled) { + background-color: @highlight-button-hover-ie; + background-color: @highlight-button-hover; + } + } + .btn-prev-page { + i { + transform: rotate(-45deg) translate(-1px, 3px); + } + } + .btn-next-page { + i { + transform: rotate(135deg) translate(4px, 0px); + } + } + .page-number { + display: flex; + align-items: center; + height: 20px; + margin-left: 10px; + label { + .font-weight-bold(); + } + #print-count-page, #print-number-page { + margin-left: 4px; + } + } + } + #print-preview { + height: calc(100% - 50px); + } } } -} \ No newline at end of file diff --git a/apps/documenteditor/main/resources/less/navigation.less b/apps/documenteditor/main/resources/less/navigation.less index 9fd80ddb9..06f246f4d 100644 --- a/apps/documenteditor/main/resources/less/navigation.less +++ b/apps/documenteditor/main/resources/less/navigation.less @@ -14,7 +14,7 @@ border-bottom: @scaled-one-px-value-ie solid @border-toolbar-ie; border-bottom: @scaled-one-px-value solid @border-toolbar; label { - font-size: 12px; + .font-size-medium(); .font-weight-bold(); margin-top: 2px; } @@ -24,7 +24,7 @@ padding-top: 45px; height: 100%; overflow: hidden; - font-size: 12px; + .font-size-medium(); .treeview { padding: 8px 0; @@ -44,16 +44,16 @@ } } &.small{ - font-size: 10px; + .font-size-small(); } &.medium{ - font-size: 12px; + .font-size-medium(); .name { padding: 4px 0; } } &.large{ - font-size: 14px; + .font-size-huge(); } .name.not-header { font-style: italic; diff --git a/apps/documenteditor/main/resources/less/statusbar.less b/apps/documenteditor/main/resources/less/statusbar.less index b59016d5d..08ee47e55 100644 --- a/apps/documenteditor/main/resources/less/statusbar.less +++ b/apps/documenteditor/main/resources/less/statusbar.less @@ -122,7 +122,7 @@ margin-left: 137px; margin-bottom: 2px; width: 285px; - font-size: 12px; + .font-size-medium(); > label { white-space: normal; diff --git a/apps/documenteditor/main/resources/less/thumbnails.less b/apps/documenteditor/main/resources/less/thumbnails.less index 41bea7b02..4dc4b202d 100644 --- a/apps/documenteditor/main/resources/less/thumbnails.less +++ b/apps/documenteditor/main/resources/less/thumbnails.less @@ -18,7 +18,7 @@ border-bottom: @scaled-one-px-value solid @border-toolbar; label { - font-size: 12px; + .font-size-medium(); .font-weight-bold(); margin-top: 2px; } @@ -34,7 +34,7 @@ #thumbnails-size { label { - font-size: 11px; + .font-size-normal(); font-weight: normal; margin: 0; padding-left: 12px; diff --git a/apps/documenteditor/main/resources/less/toolbar.less b/apps/documenteditor/main/resources/less/toolbar.less index 8b9aa2dd0..bc9c166da 100644 --- a/apps/documenteditor/main/resources/less/toolbar.less +++ b/apps/documenteditor/main/resources/less/toolbar.less @@ -130,7 +130,7 @@ border-radius: 0; padding: 3px 10px; color: #ffffff; - font: 11px arial; + .font-size-normal(); white-space: nowrap; letter-spacing: 1px; overflow: hidden; @@ -163,7 +163,8 @@ margin-left: 2px; } -#special-paste-container { +#special-paste-container, +#equation-container { position: absolute; z-index: @zindex-dropdown - 20; @@ -173,6 +174,16 @@ border: @scaled-one-px-value solid @border-regular-control; } +#equation-container { + padding: 4px; + .separator { + height: 20px; + } + &.has-open-menu { + z-index: @zindex-navbar + 1; + } +} + .dropdown-menu.list-settings-level { .menu-list-preview { .box-shadow(0 0 0 @scaled-one-px-value-ie @border-regular-control-ie); @@ -193,4 +204,4 @@ display: none !important; } } -} +} \ No newline at end of file diff --git a/apps/documenteditor/mobile/locale/az.json b/apps/documenteditor/mobile/locale/az.json index ff2e9e39d..729f77c79 100644 --- a/apps/documenteditor/mobile/locale/az.json +++ b/apps/documenteditor/mobile/locale/az.json @@ -220,6 +220,7 @@ "textAlign": "Nizamlayın", "textAllCaps": "Bütün başlıqlar", "textAllowOverlap": "Üst-üstə düşməsinə icazə verin", + "textAugust": "avqust", "textAuto": "Avtomatik", "textAutomatic": "Avtomatik", "textBack": "Geriyə", @@ -232,7 +233,9 @@ "textBringToForeground": "Ön plana çıxarın", "textBullets": "Markerlər", "textBulletsAndNumbers": "Markerlər və Ədədlər", + "textCancel": "Ləğv", "textCellMargins": "Xanalardakı Kənar Boşluqlar", + "textCentered": "Mərkəzlənmiş", "textChart": "Diaqram", "textClose": "Bağlayın", "textColor": "Rəng", @@ -289,7 +292,6 @@ "textRemoveChart": "Diaqramı Silin", "textRemoveShape": "Formanı Silin", "textRemoveTable": "Cədvəli Silin", - "textReorder": "Yenidən sırala", "textRepeatAsHeaderRow": "Başlıq Sətri kimi təkrarlayın", "textReplace": "Əvəz edin", "textReplaceImage": "Təsviri Əvəz edin", @@ -320,13 +322,12 @@ "textWrap": "Keçirin", "textAmountOfLevels": "Amount of Levels", "textApril": "April", - "textAugust": "August", - "textCancel": "Cancel", - "textCentered": "Centered", + "textArrange": "Arrange", "textChangeShape": "Change Shape", "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDecember": "December", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", @@ -375,7 +376,6 @@ "textTitle": "Title", "textTu": "Tu", "textWe": "We", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -419,8 +419,15 @@ "uploadImageSizeMessage": "Təsvir çox böyükdür. Maksimum ölçü 25 MB-dır.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Məlumat yüklənir...", @@ -455,7 +462,10 @@ "txtEditingMode": "Redaktə rejimini təyin edin...", "uploadImageTextText": "Təsvir yüklənir...", "uploadImageTitleText": "Təsvir Yüklənir", - "waitText": "Lütfən, gözləyin..." + "waitText": "Lütfən, gözləyin...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Xəta", @@ -567,6 +577,7 @@ "textApplicationSettings": "Proqram Parametrləri", "textAuthor": "Müəllif", "textBack": "Geriyə", + "textBeginningDocument": "Sənədin başlanğıcı", "textBottom": "Aşağı", "textCancel": "Ləğv edin", "textCaseSensitive": "Böyük/Kiçik Hərfə Həssas", @@ -667,7 +678,6 @@ "txtScheme7": "Bərabər", "txtScheme8": "Axın", "txtScheme9": "Emalatxana", - "textBeginningDocument": "Beginning of document", "textDirection": "Direction", "textEmptyHeading": "Empty Heading", "textEmptyScreens": "There are no headings in the document. Apply a headings style to the text so that it appears in the table of contents.", diff --git a/apps/documenteditor/mobile/locale/be.json b/apps/documenteditor/mobile/locale/be.json index 8aa6bd9ff..5e916e711 100644 --- a/apps/documenteditor/mobile/locale/be.json +++ b/apps/documenteditor/mobile/locale/be.json @@ -301,7 +301,6 @@ "textRemoveChart": "Выдаліць дыяграму", "textRemoveShape": "Выдаліць фігуру", "textRemoveTable": "Выдаліць табліцу", - "textReorder": "Перапарадкаваць", "textRepeatAsHeaderRow": "Паўтараць як загаловак", "textReplace": "Замяніць", "textReplaceImage": "Замяніць выяву", @@ -335,6 +334,7 @@ "textWe": "Сер", "textWrap": "Абцяканне", "textAmountOfLevels": "Amount of Levels", + "textArrange": "Arrange", "textBehind": "Behind Text", "textBulletsAndNumbers": "Bullets & Numbers", "textCancel": "Cancel", @@ -343,6 +343,7 @@ "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textDistinctive": "Distinctive", @@ -375,7 +376,6 @@ "textTableOfCont": "TOC", "textTextWrapping": "Text Wrapping", "textTitle": "Title", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -407,6 +407,11 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorFilePassProtect": "The file is password protected and could not be opened.", "errorFileSizeExceed": "The file size exceeds your server limit.
                Please, contact your admin.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorLoadingFont": "Fonts are not loaded.
                Please contact your Document Server administrator.", "errorMailMergeLoadFile": "Loading failed", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", @@ -415,6 +420,8 @@ "errorSessionToken": "The connection to the server has been interrupted. Please, reload the page.", "errorStockChart": "Incorrect row order. To build a stock chart, place the data on the sheet in the following order:
                opening price, max price, min price, closing price.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator.", "errorUserDrop": "The file can't be accessed right now.", "errorViewerDisconnect": "Connection is lost. You can still view the document,
                but you won't be able to download or print it until the connection is restored and the page is reloaded.", "openErrorText": "An error has occurred while opening the file", @@ -455,7 +462,10 @@ "txtEditingMode": "Актывацыя рэжыму рэдагавання…", "uploadImageTextText": "Запампоўванне выявы…", "uploadImageTitleText": "Запампоўванне выявы", - "waitText": "Калі ласка, пачакайце..." + "waitText": "Калі ласка, пачакайце...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Памылка", diff --git a/apps/documenteditor/mobile/locale/bg.json b/apps/documenteditor/mobile/locale/bg.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/bg.json +++ b/apps/documenteditor/mobile/locale/bg.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/ca.json b/apps/documenteditor/mobile/locale/ca.json index 44b458f5c..13d523cfa 100644 --- a/apps/documenteditor/mobile/locale/ca.json +++ b/apps/documenteditor/mobile/locale/ca.json @@ -26,6 +26,7 @@ "textContinuousPage": "Pàgina contínua", "textCurrentPosition": "Posició actual", "textDisplay": "Visualització", + "textDone": "Fet", "textEmptyImgUrl": "Cal especificar l'URL de la imatge.", "textEvenPage": "Pàgina parell", "textFootnote": "Nota al peu de pàgina", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Imatge de la biblioteca", "textPictureFromURL": "Imatge de l'URL", "textPosition": "Posició", + "textRecommended": "Recomanat", + "textRequired": "Obligatori", "textRightBottom": "Dreta inferior", "textRightTop": "Dreta superior", "textRows": "Files", @@ -61,10 +64,7 @@ "textTableSize": "Mida de la taula", "textWithBlueLinks": "Amb enllaços blaus", "textWithPageNumbers": "Amb números de pàgina", - "txtNotUrl": "Aquest camp hauria de ser un URL amb el format \"http://www.exemple.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Aquest camp hauria de ser un URL amb el format \"http://www.exemple.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Revisa el canvi", "textRight": "Alineació a la dreta", "textShape": "Forma", + "textSharingSettings": "Configuració de l'ús compartit\n\t", "textShd": "Color de fons", "textSmallCaps": "Versaletes", "textSpacing": "Espaiat", @@ -163,8 +164,7 @@ "textTryUndoRedo": "S'han desactivat les funcions desfés/refés per al mode de coedició ràpida.", "textUnderline": "Subratllat", "textUsers": "Usuaris", - "textWidow": "Control de finestra", - "textSharingSettings": "Sharing Settings" + "textWidow": "Control de finestra" }, "HighlightColorPalette": { "textNoFill": "Sense emplenament" @@ -184,6 +184,7 @@ "menuDelete": "Suprimeix", "menuDeleteTable": "Suprimeix la taula", "menuEdit": "Edita", + "menuEditLink": "Edita l'enllaç", "menuJoinList": "Uneix-te a la llista anterior", "menuMerge": "Combina", "menuMore": "Més", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Actualitza la taula sencera", "textRefreshPageNumbersOnly": "Actualitza només els números de pàgina", "textRows": "Files", - "txtWarnUrl": "Fer clic en aquest enllaç pot ser perjudicial per al dispositiu i les dades.
                Segur que voleu continuar?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Fer clic en aquest enllaç pot ser perjudicial per al dispositiu i les dades.
                Segur que voleu continuar?" }, "Edit": { "notcriticalErrorTitle": "Advertiment", @@ -238,6 +238,7 @@ "textCancel": "Cancel·la", "textCellMargins": "Marges de la cel·la", "textCentered": "Centrat", + "textChangeShape": "Canvia la forma", "textChart": "Gràfic", "textClassic": "Clàssic", "textClose": "Tanca", @@ -246,7 +247,10 @@ "textCreateTextStyle": "Crea un nou estil de text", "textCurrent": "Actual", "textCustomColor": "Color personalitzat", + "textCustomStyle": "Estil personalitzat", "textDecember": "desembre", + "textDeleteImage": "Esborra la imatge", + "textDeleteLink": "Esborra l'enllaç", "textDesign": "Disseny", "textDifferentFirstPage": "Primera pàgina diferent", "textDifferentOddAndEvenPages": "Pàgines senars i parells diferents", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "Imatge de la biblioteca", "textPictureFromURL": "Imatge de l'URL", "textPt": "pt", + "textRecommended": "Recomanat", "textRefresh": "Actualitza", "textRefreshEntireTable": "Actualitza la taula sencera", "textRefreshPageNumbersOnly": "Actualitza només els números de pàgina", @@ -326,10 +331,10 @@ "textRemoveShape": "Suprimeix la forma", "textRemoveTable": "Suprimeix la taula", "textRemoveTableContent": "Suprimeix la taula de continguts", - "textReorder": "Torna a ordenar", "textRepeatAsHeaderRow": "Repeteix com a fila de capçalera", "textReplace": "Substitueix", "textReplaceImage": "Substitueix la imatge", + "textRequired": "Obligatori", "textResizeToFitContent": "Canvia la mida per ajustar el contingut", "textRightAlign": "Alinea a la dreta", "textSa": "ds.", @@ -359,6 +364,7 @@ "textTableOfCont": "IDC", "textTableOptions": "Opcions de la taula", "textText": "Text", + "textTextWrapping": "Ajustament del text", "textTh": "dj.", "textThrough": "A través", "textTight": "Estret", @@ -369,14 +375,8 @@ "textType": "Tipus", "textWe": "dc.", "textWrap": "Ajustament", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Estil d'ajustament", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "S'ha superat el temps de conversió.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "S'han rebut canvis xifrats, que no es poden desxifrar.", "errorDataRange": "L'interval de dades no és correcte.", "errorDefaultMessage": "Codi d'error: %1", + "errorDirectUrl": "Verifiqueu l'enllaç al document.
                Aquest enllaç ha de ser un enllaç directe al fitxer per baixar-lo.", "errorEditingDownloadas": "S'ha produït un error mentre es treballava amb el document.
                Baixa'l per desar la còpia de seguretat del fitxer localment.", "errorEmptyTOC": "Comenceu a crear una taula de continguts aplicant un estil d'encapçalament de la galeria d'Estils al text seleccionat.", "errorFilePassProtect": "El fitxer està protegit amb contrasenya i no s'ha pogut obrir.", "errorFileSizeExceed": "La mida del fitxer supera el límit del teu servidor.
                Contacteu amb el vostre administrador.", + "errorInconsistentExt": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer no es correspon amb la seva extensió.", + "errorInconsistentExtDocx": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a documents de text (per exemple, docx), però el fitxer té l'extensió incoherent: %1.", + "errorInconsistentExtPdf": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a un dels formats següents: pdf/djvu/xps/oxps, però el fitxer té l'extensió incoherent: %1.", + "errorInconsistentExtPptx": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a presentacions (per exemple, pptx), però el fitxer té l'extensió incongruent: %1.", + "errorInconsistentExtXlsx": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a full de càlcul (per exemple, xlsx), però el fitxer té l'extensió incoherent: %1.", "errorKeyEncrypt": "Descriptor de claus desconegut", "errorKeyExpire": "El descriptor de claus ha caducat", "errorLoadingFont": "No s'han carregat les famílies tipogràfiques.
                Contacteu amb l'administrador del servidor de documents.", @@ -405,6 +411,8 @@ "errorSessionToken": "S'ha interromput la connexió amb el servidor. Torneu a carregar la pàgina.", "errorStockChart": "L'ordre de la fila no és correcte. Per construir un gràfic de valors, poseu les dades al full de càlcul en l'ordre següent:
                preu d'obertura, preu màxim, preu mínim, preu de tancament.", "errorTextFormWrongFormat": "El valor introduït no es correspon amb el format del camp", + "errorToken": "El testimoni de seguretat del document no s'ha format correctament.
                Contacteu amb l'administrador del servidor de documents.", + "errorTokenExpire": "El testimoni de seguretat del document ha caducat.
                Contacteu amb l'administrador del servidor de documents.", "errorUpdateVersionOnDisconnect": "S'ha restaurat la connexió a internet i la versió del fitxer ha canviat.
                Abans de continuar treballant, heu de baixar el fitxer o copiar-ne el contingut per assegurar-vos que no es perdi res i, després, torneu a carregar aquesta pàgina.", "errorUserDrop": "Ara mateix no es pot accedir al fitxer.", "errorUsersExceed": "S'ha superat el nombre d’usuaris que permet el vostre pla", @@ -419,12 +427,12 @@ "unknownErrorText": "Error desconegut.", "uploadImageExtMessage": "Format d'imatge desconegut.", "uploadImageFileCountMessage": "No s'ha carregat cap imatge.", - "uploadImageSizeMessage": "La imatge és massa gran. La mida màxima és de 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "La imatge és massa gran. La mida màxima és de 25 MB." }, "LongActions": { "applyChangesTextText": "S'estan carregant les dades...", "applyChangesTitleText": "S'estan carregant les dades", + "confirmMaxChangesSize": "La mida de les accions excedeix el límit establert pel vostre servidor.
                Premeu «Desfés» per a cancel·lar la vostra última acció o premeu «Continua» per a mantenir l'acció localment (cal baixar el fitxer o copiar el seu contingut per a assegurar-vos que no es perd res).", "downloadMergeText": "S'està baixant...", "downloadMergeTitle": "S'està baixant", "downloadTextText": "S'està baixant el document...", @@ -451,7 +459,9 @@ "saveTitleText": "S'està desant el document", "sendMergeText": "S'està enviant la combinació...", "sendMergeTitle": "S'està enviant la combinació", + "textContinue": "Continua", "textLoadingDocument": "S'està carregant el document", + "textUndo": "Desfés", "txtEditingMode": "Estableix el mode d'edició ...", "uploadImageTextText": "S'està carregant la imatge...", "uploadImageTitleText": "S'està carregant la imatge", diff --git a/apps/documenteditor/mobile/locale/cs.json b/apps/documenteditor/mobile/locale/cs.json index 30c2f31ee..c1adf6ad2 100644 --- a/apps/documenteditor/mobile/locale/cs.json +++ b/apps/documenteditor/mobile/locale/cs.json @@ -26,6 +26,7 @@ "textContinuousPage": "Pokračovat na stránce", "textCurrentPosition": "Aktuální pozice", "textDisplay": "Zobrazit", + "textDone": "Hotovo", "textEmptyImgUrl": "Musíte upřesnit URL obrázku.", "textEvenPage": "Sudá stránka", "textFootnote": "Poznámka pod čarou", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Obrázek z knihovny", "textPictureFromURL": "Obrázek z adresy URL", "textPosition": "Pozice", + "textRecommended": "Doporučeno", + "textRequired": "Požadováno", "textRightBottom": "Vpravo dole", "textRightTop": "Vpravo nahoře", "textRows": "Řádky", @@ -61,10 +64,7 @@ "textTableSize": "Velikost tabulky", "textWithBlueLinks": "s modrými odkazy", "textWithPageNumbers": "s číslováním stránek", - "txtNotUrl": "Toto pole by mělo obsahovat adresu URL ve formátu \"http://www.example.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Toto pole by mělo obsahovat adresu URL ve formátu \"http://www.example.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Přehled změn", "textRight": "Zarovnat vpravo", "textShape": "Obrazec", + "textSharingSettings": "Nastavení sdílení", "textShd": "Barva pozadí", "textSmallCaps": "Malá písmena", "textSpacing": "Mezery", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Funkce Zpět/Znovu jsou vypnuty pro rychlý režim spolupráce.", "textUnderline": "Podtržení", "textUsers": "Uživatelé", - "textWidow": "Ovládací prvek okna", - "textSharingSettings": "Sharing Settings" + "textWidow": "Ovládací prvek okna" }, "HighlightColorPalette": { "textNoFill": "Bez výplně" @@ -184,6 +184,7 @@ "menuDelete": "Odstranit", "menuDeleteTable": "Odstranit tabulku", "menuEdit": "Upravit", + "menuEditLink": "Upravit odkaz", "menuJoinList": "Připojit k předchozímu seznamu", "menuMerge": "Sloučit", "menuMore": "Více", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Obnovit celou tabulku", "textRefreshPageNumbersOnly": "Obnovit pouze číslování stránek", "textRows": "Řádky", - "txtWarnUrl": "Kliknutí na tento odkaz může být škodlivé pro Vaše zařízení a Vaše data.
                Jste si jistí, že chcete pokračovat?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Kliknutí na tento odkaz může být škodlivé pro Vaše zařízení a Vaše data.
                Jste si jistí, že chcete pokračovat?" }, "Edit": { "notcriticalErrorTitle": "Varování", @@ -238,6 +238,7 @@ "textCancel": "Zrušit", "textCellMargins": "Okraje buňky", "textCentered": "Vycentrováno", + "textChangeShape": "Vlastní tvar", "textChart": "Graf", "textClassic": "Klasické", "textClose": "Zavřít", @@ -246,7 +247,10 @@ "textCreateTextStyle": "Vytvořit nový styl textu", "textCurrent": "Aktuální", "textCustomColor": "Vlastní barva", + "textCustomStyle": "Vlastní styl", "textDecember": "prosinec", + "textDeleteImage": "Smazat obrázek", + "textDeleteLink": "Smazat odkaz", "textDesign": "Vzhled", "textDifferentFirstPage": "Odlišná první stránka", "textDifferentOddAndEvenPages": "Rozdílné liché a sudé stránky", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "Obrázek z knihovny", "textPictureFromURL": "Obrázek z adresy URL", "textPt": "pt", + "textRecommended": "Doporučeno", "textRefresh": "Načíst znovu", "textRefreshEntireTable": "Obnovit celou tabulku", "textRefreshPageNumbersOnly": "Obnovit pouze číslování stránek", @@ -326,10 +331,10 @@ "textRemoveShape": "Odstranit obrazec", "textRemoveTable": "Odstranit tabulku", "textRemoveTableContent": "Odebrat obsah", - "textReorder": "Změnit řazení", "textRepeatAsHeaderRow": "Opakujte jako řádek záhlaví", "textReplace": "Nahradit", "textReplaceImage": "Nahradit obrázek", + "textRequired": "Požadováno", "textResizeToFitContent": "Změnit velikost pro přizpůsobení obsahu", "textRightAlign": "Zarovnat vpravo", "textSa": "so", @@ -359,6 +364,7 @@ "textTableOfCont": "Obsah", "textTableOptions": "Možnosti tabulky", "textText": "Text", + "textTextWrapping": "Obtékaní textu", "textTh": "čt", "textThrough": "Skrz", "textTight": "Těsné", @@ -369,14 +375,8 @@ "textType": "Typ", "textWe": "st", "textWrap": "Obtékání", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Obtékání textu", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Vypršel čas konverze.", @@ -390,6 +390,7 @@ "errorDataEncrypted": "Obdrženy šifrované změny – bez hesla je není možné zobrazit.", "errorDataRange": "Nesprávný datový rozsah.", "errorDefaultMessage": "Kód chyby: %1", + "errorDirectUrl": "Ověřte správnost odkazu na dokument.
                Je třeba, aby se jednalo o přímý odkaz pro stažení souboru.", "errorEditingDownloadas": "Při práci s dokumentem došlo k chybě.
                Stáhněte dokument pro vytvoření lokální zálohy souboru.", "errorEmptyTOC": "Začít vytvářet obsah aplikováním stylů pro nadpisy na vybraný text. ", "errorFilePassProtect": "Soubor je zabezpečen heslem a nemůže být otevřen.", @@ -419,8 +420,14 @@ "uploadImageExtMessage": "Neznámý formát obrázku.", "uploadImageFileCountMessage": "Nenahrány žádné obrázky.", "uploadImageSizeMessage": "Obrázek je příliš velký. Maximální velikost je 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Načítání dat...", @@ -451,11 +458,14 @@ "saveTitleText": "Ukládání dokumentu", "sendMergeText": "Odesílaní hromadné zprávy…", "sendMergeTitle": "Odesílaní hromadné zprávy", + "textContinue": "Pokračovat", "textLoadingDocument": "Načítání dokumentu", + "textUndo": "Zpět", "txtEditingMode": "Nastavit režim úprav…", "uploadImageTextText": "Nahrávání obrázku...", "uploadImageTitleText": "Nahrávání obrázku", - "waitText": "Čekejte prosím..." + "waitText": "Čekejte prosím...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost)." }, "Main": { "criticalErrorTitle": "Chyba", @@ -619,6 +629,7 @@ "textMargins": "Okraje", "textMarginsH": "Horní a spodní okraj je příliš velký vzhledem k dané výšce stránky", "textMarginsW": "Okraje vlevo a vpravo jsou příliš velké vzhledem k šířce stránky", + "textMobileView": "Mobilní zobrazení", "textNavigation": "Navigace", "textNo": "Ne", "textNoCharacters": "Netisknutelné znaky", @@ -682,8 +693,7 @@ "txtScheme6": "Hala", "txtScheme7": "Rovnost", "txtScheme8": "Tok", - "txtScheme9": "Slévárna", - "textMobileView": "Mobile View" + "txtScheme9": "Slévárna" }, "Toolbar": { "dlgLeaveMsgText": "V tomto dokumentu máte neuložené změny. Klikněte na 'Zůstat na této stránce'. Klikněte na 'Opustit tuto stránku' pro zahození neuložených změn.", @@ -691,7 +701,7 @@ "leaveButtonText": "Opustit tuto stránku", "stayButtonText": "Zůstat na této stránce", "textOk": "OK", - "textSwitchedMobileView": "Switched to Mobile view", - "textSwitchedStandardView": "Switched to Standard view" + "textSwitchedMobileView": "Přepnout na mobilní zobrazení", + "textSwitchedStandardView": "Přepnout na standartní zobrazení" } } \ No newline at end of file diff --git a/apps/documenteditor/mobile/locale/da.json b/apps/documenteditor/mobile/locale/da.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/da.json +++ b/apps/documenteditor/mobile/locale/da.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/de.json b/apps/documenteditor/mobile/locale/de.json index 1cd3e9aac..65c56eafe 100644 --- a/apps/documenteditor/mobile/locale/de.json +++ b/apps/documenteditor/mobile/locale/de.json @@ -26,6 +26,7 @@ "textContinuousPage": "Fortlaufende Seite", "textCurrentPosition": "Aktuelle Position", "textDisplay": "Anzeigen", + "textDone": "Fertig", "textEmptyImgUrl": "URL des Bildes erforderlich", "textEvenPage": "Gerade Seite", "textFootnote": "Fußnote", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Bild aus dem Verzeichnis", "textPictureFromURL": "Bild aus URL", "textPosition": "Position", + "textRecommended": "Empfohlen", + "textRequired": "Erforderlich", "textRightBottom": "Rechts unten", "textRightTop": "Rechts oben", "textRows": "Zeilen", @@ -61,10 +64,7 @@ "textTableSize": "Tabellengröße", "textWithBlueLinks": "Mit blauen Links", "textWithPageNumbers": "Mit Seitennummern", - "txtNotUrl": "Dieser Bereich soll eine URL im Format \"http://www.example.com\" sein.", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Dieser Bereich soll eine URL im Format \"http://www.example.com\" sein." }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Änderung überprüfen", "textRight": "Rechtsbündig ausrichten", "textShape": "Form", + "textSharingSettings": "Freigabeeinstellungen", "textShd": "Hintergrundfarbe", "textSmallCaps": "Kapitälchen", "textSpacing": "Abstand", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Die Optionen Rückgängig machen/Wiederholen sind für den Schnellmodus deaktiviert.", "textUnderline": "Unterstrichen", "textUsers": "Benutzer", - "textWidow": "Absatzkontrolle", - "textSharingSettings": "Sharing Settings" + "textWidow": "Absatzkontrolle" }, "HighlightColorPalette": { "textNoFill": "Keine Füllung" @@ -184,6 +184,7 @@ "menuDelete": "Löschen", "menuDeleteTable": "Tabelle löschen", "menuEdit": "Bearbeiten", + "menuEditLink": "Link bearbeiten", "menuJoinList": "Mit der vorherigen Liste verbinden", "menuMerge": "Verbinden", "menuMore": "Mehr", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Ganze Tabelle aktualisieren", "textRefreshPageNumbersOnly": "Nur Seitenzahlen aktualisieren", "textRows": "Zeilen", - "txtWarnUrl": "Dieser Link kann für Ihr Gerät und Daten gefährlich sein.
                Möchten Sie wirklich fortsetzen?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Dieser Link kann für Ihr Gerät und Daten gefährlich sein.
                Möchten Sie wirklich fortsetzen?" }, "Edit": { "notcriticalErrorTitle": "Warnung", @@ -222,6 +222,7 @@ "textAllowOverlap": "Überlappung zulassen", "textAmountOfLevels": "Anzahl der Ebenen", "textApril": "April", + "textArrange": "Arrangieren", "textAugust": "August", "textAuto": "Auto", "textAutomatic": "Automatisch", @@ -238,6 +239,7 @@ "textCancel": "Abbrechen", "textCellMargins": "Zellenränder", "textCentered": "Zentriert", + "textChangeShape": "Form ändern", "textChart": "Diagramm", "textClassic": "Klassisch", "textClose": "Schließen", @@ -246,7 +248,10 @@ "textCreateTextStyle": "Neuen Textstil erstellen", "textCurrent": "Aktuell", "textCustomColor": "Benutzerdefinierte Farbe", + "textCustomStyle": "Benutzerdefinierter Stil", "textDecember": "Dezember", + "textDeleteImage": "Bild löschen", + "textDeleteLink": "Link löschen", "textDesign": "Design", "textDifferentFirstPage": "Erste Seite anders", "textDifferentOddAndEvenPages": "Gerade und ungerade Seiten anders", @@ -319,6 +324,7 @@ "textPictureFromLibrary": "Bild aus dem Verzeichnis", "textPictureFromURL": "Bild aus URL", "textPt": "pt", + "textRecommended": "Empfohlen", "textRefresh": "Aktualisieren", "textRefreshEntireTable": "Ganze Tabelle aktualisieren", "textRefreshPageNumbersOnly": "Nur Seitenzahlen aktualisieren", @@ -326,10 +332,10 @@ "textRemoveShape": "Form entfernen", "textRemoveTable": "Tabelle entfernen", "textRemoveTableContent": "Inhaltsverzeichnis entfernen", - "textReorder": "Neu ordnen", "textRepeatAsHeaderRow": "Als Überschriftenzeile wiederholen", "textReplace": "Ersetzen", "textReplaceImage": "Bild ersetzen", + "textRequired": "Erforderlich", "textResizeToFitContent": "An die Größe des Inhalts anpassen", "textRightAlign": "Rechtsbündig", "textSa": "Sa", @@ -359,6 +365,7 @@ "textTableOfCont": "Inhaltsverzeichnis", "textTableOptions": "Tabellenoptionen", "textText": "Text", + "textTextWrapping": "Textumbruch", "textTh": "Do", "textThrough": "Durchgehend", "textTight": "Passend", @@ -369,14 +376,7 @@ "textType": "Typ", "textWe": "Mi", "textWrap": "Umbrechen", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Textumbruch" }, "Error": { "convertationTimeoutText": "Zeitüberschreitung bei der Konvertierung.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Verschlüsselte Änderungen wurden empfangen. Sie können nicht entschlüsselt werden.", "errorDataRange": "Falscher Datenbereich.", "errorDefaultMessage": "Fehlercode: %1", + "errorDirectUrl": "Bitte überprüfen Sie den Link zum Dokument.
                Dieser Link muss ein direkter Link zu der Datei zum Herunterladen sein.", "errorEditingDownloadas": "Fehler bei der Arbeit an diesem Dokument.
                Laden Sie die Datei herunter, um sie lokal zu speichern.", "errorEmptyTOC": "Beginnen Sie die Erstellung eines Inhaltsverzeichnisses, indem Sie eine Überschriftenvorlage aus der Galerie von Stilen auf den ausgewählten Text anwenden.", "errorFilePassProtect": "Die Datei ist mit Passwort geschützt und kann nicht geöffnet werden.", "errorFileSizeExceed": "Die Dateigröße ist zu hoch für Ihren Server.
                Bitte wenden Sie sich an Administratoren.", + "errorInconsistentExt": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei stimmt nicht mit der Dateierweiterung überein.", + "errorInconsistentExtDocx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Textdokumenten (z.B. docx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "errorInconsistentExtPdf": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht einem der folgenden Formate: pdf/djvu/xps/oxps, aber die Datei hat die inkonsistente Erweiterung: %1.", + "errorInconsistentExtPptx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Präsentationen (z.B. pptx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "errorInconsistentExtXlsx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Tabellenkalkulationen (z.B. xlsx), aber die Datei hat die inkonsistente Erweiterung: %1.", "errorKeyEncrypt": "Unbekannter Schlüsseldeskriptor", "errorKeyExpire": "Der Schlüsseldeskriptor ist abgelaufen", "errorLoadingFont": "Schriftarten nicht hochgeladen.
                Bitte wenden Sie sich an Administratoren von Ihrem Document Server.", @@ -405,6 +411,8 @@ "errorSessionToken": "Die Verbindung mit dem Server wurde unterbrochen. Bitte die Seite neu laden.", "errorStockChart": "Falsche Reihenfolge der Zeilen. Um ein Kursdiagramm zu erstellen, setzen Sie die Daten im Arbeitsblatt in dieser Reihenfolge:
                Eröffnungskurs, Maximaler Preis, Minimaler Preis, Schlusskurs.", "errorTextFormWrongFormat": "Der eingegebene Wert stimmt nicht mit dem Format des Feldes überein.", + "errorToken": "Sicherheitstoken des Dokuments ist nicht korrekt.
                Wenden Sie sich an Ihren Serveradministrator.", + "errorTokenExpire": "Sicherheitstoken des Dokuments ist abgelaufen.
                Wenden Sie sich an Ihren Serveradministrator.", "errorUpdateVersionOnDisconnect": "Die Internetverbindung wurde wiederhergestellt und die Dateiversion wurde geändert.
                Bevor Sie weiterarbeiten können, müssen Sie die Datei herunterladen oder den Inhalt kopieren, um sicherzustellen, dass nichts verloren geht, und diese Seite anschließend neu laden.", "errorUserDrop": "Die Datei ist gerade nicht verfügbar.", "errorUsersExceed": "Die nach dem Zahlungsplan erlaubte Anzahl der Benutzer ist überschritten", @@ -419,12 +427,12 @@ "unknownErrorText": "Unbekannter Fehler.", "uploadImageExtMessage": "Unbekanntes Bildformat.", "uploadImageFileCountMessage": "Keine Bilder hochgeladen.", - "uploadImageSizeMessage": "Die maximal zulässige Bildgröße von 25 MB ist überschritten.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "Die maximal zulässige Bildgröße von 25 MB ist überschritten." }, "LongActions": { "applyChangesTextText": "Daten werden geladen...", "applyChangesTitleText": "Daten werden geladen", + "confirmMaxChangesSize": "Die Anzahl der Aktionen überschreitet die für Ihren Server festgelegte Grenze.
                Drücken Sie \"Rückgängig\", um Ihre letzte Aktion abzubrechen, oder drücken Sie \"Weiter\", um die Aktion lokal fortzusetzen (Sie müssen die Datei herunterladen oder ihren Inhalt kopieren, um sicherzustellen, dass nichts verloren geht).", "downloadMergeText": "Ladevorgang...", "downloadMergeTitle": "Ladevorgang", "downloadTextText": "Dokument wird heruntergeladen...", @@ -451,7 +459,9 @@ "saveTitleText": "Dokument wird gespeichert...", "sendMergeText": "Merge wird versandt...", "sendMergeTitle": "Ergebnisse der Zusammenführung werden gesendet", + "textContinue": "Fortsetzen", "textLoadingDocument": "Dokument wird geladen", + "textUndo": "Rückgängig", "txtEditingMode": "Bearbeitungsmodul wird festgelegt...", "uploadImageTextText": "Bild wird hochgeladen...", "uploadImageTitleText": "Bild wird hochgeladen", diff --git a/apps/documenteditor/mobile/locale/el.json b/apps/documenteditor/mobile/locale/el.json index 37f127a3f..a2c624ade 100644 --- a/apps/documenteditor/mobile/locale/el.json +++ b/apps/documenteditor/mobile/locale/el.json @@ -326,7 +326,6 @@ "textRemoveShape": "Αφαίρεση Σχήματος", "textRemoveTable": "Αφαίρεση Πίνακα", "textRemoveTableContent": "Αφαίρεση πίνακα περιεχομένων", - "textReorder": "Αναδιάταξη", "textRepeatAsHeaderRow": "Επανάληψη ως Σειράς Κεφαλίδας", "textReplace": "Αντικατάσταση", "textReplaceImage": "Αντικατάσταση Εικόνας", @@ -369,13 +368,14 @@ "textType": "Τύπος", "textWe": "Τετ", "textWrap": "Αναδίπλωση", + "textArrange": "Arrange", "textChangeShape": "Change Shape", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textRecommended": "Recommended", "textRequired": "Required", "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -420,7 +420,14 @@ "uploadImageFileCountMessage": "Δεν μεταφορτώθηκαν εικόνες.", "uploadImageSizeMessage": "Η εικόνα είναι πολύ μεγάλη. Το μέγιστο μέγεθος είναι 25MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Φόρτωση δεδομένων...", @@ -455,7 +462,10 @@ "txtEditingMode": "Ορισμός κατάστασης επεξεργασίας...", "uploadImageTextText": "Μεταφόρτωση εικόνας...", "uploadImageTitleText": "Μεταφόρτωση Εικόνας", - "waitText": "Παρακαλούμε, περιμένετε..." + "waitText": "Παρακαλούμε, περιμένετε...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Σφάλμα", diff --git a/apps/documenteditor/mobile/locale/en.json b/apps/documenteditor/mobile/locale/en.json index 176a4963b..256d9cef3 100644 --- a/apps/documenteditor/mobile/locale/en.json +++ b/apps/documenteditor/mobile/locale/en.json @@ -222,6 +222,7 @@ "textAllowOverlap": "Allow overlap", "textAmountOfLevels": "Amount of Levels", "textApril": "April", + "textArrange": "Arrange", "textAugust": "August", "textAuto": "Auto", "textAutomatic": "Automatic", @@ -247,6 +248,7 @@ "textCreateTextStyle": "Create new text style", "textCurrent": "Current", "textCustomColor": "Custom Color", + "textCustomStyle": "Custom Style", "textDecember": "December", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", @@ -330,7 +332,6 @@ "textRemoveShape": "Remove Shape", "textRemoveTable": "Remove Table", "textRemoveTableContent": "Remove table of contents", - "textReorder": "Reorder", "textRepeatAsHeaderRow": "Repeat as Header Row", "textReplace": "Replace", "textReplaceImage": "Replace Image", @@ -375,7 +376,6 @@ "textType": "Type", "textWe": "We", "textWrap": "Wrap", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -395,6 +395,11 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorFilePassProtect": "The file is password protected and could not be opened.", "errorFileSizeExceed": "The file size exceeds your server limit.
                Please, contact your admin.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorKeyEncrypt": "Unknown key descriptor", "errorKeyExpire": "Key descriptor expired", "errorLoadingFont": "Fonts are not loaded.
                Please contact your Document Server administrator.", @@ -406,6 +411,8 @@ "errorSessionToken": "The connection to the server has been interrupted. Please, reload the page.", "errorStockChart": "Incorrect row order. To build a stock chart, place the data on the sheet in the following order:
                opening price, max price, min price, closing price.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator.", "errorUpdateVersionOnDisconnect": "Connection has been restored, and the file version has been changed.
                Before you can continue working, you need to download the file or copy its content to make sure nothing is lost, and then reload this page.", "errorUserDrop": "The file can't be accessed right now.", "errorUsersExceed": "The number of users allowed by the pricing plan was exceeded", @@ -425,6 +432,7 @@ "LongActions": { "applyChangesTextText": "Loading data...", "applyChangesTitleText": "Loading Data", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", "downloadMergeText": "Downloading...", "downloadMergeTitle": "Downloading", "downloadTextText": "Downloading document...", @@ -451,7 +459,9 @@ "saveTitleText": "Saving Document", "sendMergeText": "Sending Merge...", "sendMergeTitle": "Sending Merge", + "textContinue": "Continue", "textLoadingDocument": "Loading document", + "textUndo": "Undo", "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", diff --git a/apps/documenteditor/mobile/locale/es.json b/apps/documenteditor/mobile/locale/es.json index 07e533007..9d6e4ca32 100644 --- a/apps/documenteditor/mobile/locale/es.json +++ b/apps/documenteditor/mobile/locale/es.json @@ -26,6 +26,7 @@ "textContinuousPage": "Página continua", "textCurrentPosition": "Posición actual", "textDisplay": "Mostrar", + "textDone": "Hecho", "textEmptyImgUrl": "Hay que especificar URL de imagen.", "textEvenPage": "Página par", "textFootnote": "Nota a pie de página", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Imagen desde biblioteca", "textPictureFromURL": "Imagen desde URL", "textPosition": "Posición", + "textRecommended": "Recomendado", + "textRequired": "Necesario", "textRightBottom": "Abajo a la derecha", "textRightTop": "Arriba a la derecha", "textRows": "Filas", @@ -61,10 +64,7 @@ "textTableSize": "Tamaño de tabla", "textWithBlueLinks": "Con enlaces azules", "textWithPageNumbers": "Con números de página", - "txtNotUrl": "Este campo debe ser una dirección URL en el formato \"http://www.example.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Este campo debe ser una dirección URL en el formato \"http://www.example.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Revisar cambios", "textRight": "Alinear a la derecha", "textShape": "Forma", + "textSharingSettings": "Ajustes de uso compartido", "textShd": "Color de fondo", "textSmallCaps": "Versalitas", "textSpacing": "Espaciado", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Las funciones Deshacer/Rehacer están desactivadas en el modo de co-edición rápido.", "textUnderline": "Subrayar", "textUsers": "Usuarios", - "textWidow": "Control de viudas", - "textSharingSettings": "Sharing Settings" + "textWidow": "Control de viudas" }, "HighlightColorPalette": { "textNoFill": "Sin relleno" @@ -184,6 +184,7 @@ "menuDelete": "Eliminar", "menuDeleteTable": "Eliminar tabla", "menuEdit": "Editar", + "menuEditLink": "Editar enlace", "menuJoinList": "Unir a lista anterior", "menuMerge": "Combinar", "menuMore": "Más", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Actualizar toda la tabla", "textRefreshPageNumbersOnly": "Actualizar solamente los números de página", "textRows": "Filas", - "txtWarnUrl": "Hacer clic en este enlace puede ser perjudicial para su dispositivo y sus datos.
                ¿Está seguro de que quiere continuar?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Hacer clic en este enlace puede ser perjudicial para su dispositivo y sus datos.
                ¿Está seguro de que quiere continuar?" }, "Edit": { "notcriticalErrorTitle": "Advertencia", @@ -238,6 +238,7 @@ "textCancel": "Cancelar", "textCellMargins": "Márgenes de celda", "textCentered": "Centrado", + "textChangeShape": "Cambiar forma", "textChart": "Gráfico", "textClassic": "Clásico", "textClose": "Cerrar", @@ -246,7 +247,10 @@ "textCreateTextStyle": "Crear un nuevo estilo de texto", "textCurrent": "Actual", "textCustomColor": "Color personalizado", + "textCustomStyle": "Estilo personalizado", "textDecember": "diciembre", + "textDeleteImage": "Eliminar imagen", + "textDeleteLink": "Eliminar enlace", "textDesign": "Diseño", "textDifferentFirstPage": "Primera página diferente", "textDifferentOddAndEvenPages": "Páginas impares y pares diferentes", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "Imagen desde biblioteca", "textPictureFromURL": "Imagen desde URL", "textPt": "pt", + "textRecommended": "Recomendado", "textRefresh": "Actualizar", "textRefreshEntireTable": "Actualizar toda la tabla", "textRefreshPageNumbersOnly": "Actualizar solamente los números de página", @@ -326,10 +331,10 @@ "textRemoveShape": "Eliminar forma", "textRemoveTable": "Eliminar tabla", "textRemoveTableContent": "Eliminar la tabla de contenidos", - "textReorder": "Reordenar", "textRepeatAsHeaderRow": "Repetir como fila de encabezado", "textReplace": "Reemplazar", "textReplaceImage": "Reemplazar imagen", + "textRequired": "Necesario", "textResizeToFitContent": "Cambiar el tamaño para ajustar el contenido", "textRightAlign": "Alinear a la derecha", "textSa": "sá.", @@ -359,6 +364,7 @@ "textTableOfCont": "TDC", "textTableOptions": "Opciones de tabla", "textText": "Texto", + "textTextWrapping": "Ajuste de texto", "textTh": "ju.", "textThrough": "A través", "textTight": "Estrecho", @@ -369,14 +375,8 @@ "textType": "Tipo", "textWe": "mi.", "textWrap": "Ajuste", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Estilo de ajuste", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Tiempo de conversión está superado.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Se han recibido cambios cifrados, ellos no pueden ser descifrados.", "errorDataRange": "Rango de datos incorrecto.", "errorDefaultMessage": "Código de error: %1", + "errorDirectUrl": "Por favor, verifique el vínculo al documento.
                Este vínculo debe ser un vínculo directo al archivo para descargar.", "errorEditingDownloadas": "Se ha producido un error al trabajar con el documento.
                Descargue el documento para guardar la copia de seguridad del archivo localmente.", "errorEmptyTOC": "Empezar a crear una tabla de contenidos aplicando un estilo de encabezamiento de la galería de Estilos al texto seleccionado.", "errorFilePassProtect": "El archivo está protegido por contraseña y no se puede abrir.", "errorFileSizeExceed": "El tamaño del archivo excede el límite de su servidor.
                Por favor, contacte con su administrador.", + "errorInconsistentExt": "Se ha producido un error al abrir el archivo.
                El contenido del archivo no coincide con la extensión del mismo.", + "errorInconsistentExtDocx": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a documentos de texto (por ejemplo, docx), pero el archivo tiene extensión inconsistente: %1.", + "errorInconsistentExtPdf": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a uno de los siguientes formatos: pdf/djvu/xps/oxps, pero el archivo tiene extensión inconsistente: %1.", + "errorInconsistentExtPptx": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a presentaciones (por ejemplo, pptx), pero el archivo tiene extensión inconsistente: %1.", + "errorInconsistentExtXlsx": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a hojas de cálculo (por ejemplo, xlsx), pero el archivo tiene extensión inconsistente: %1.", "errorKeyEncrypt": "Descriptor de clave desconocido", "errorKeyExpire": "Descriptor de clave ha expirado", "errorLoadingFont": "Las fuentes no están cargadas.
                Por favor, póngase en contacto con el administrador del Document Server.", @@ -405,6 +411,8 @@ "errorSessionToken": "La conexión con el servidor se ha interrumpido. Por favor, vuelva a cargar la página.", "errorStockChart": "Orden incorrecto de las filas. Para construir un gráfico de cotizaciones, coloque los datos en la hoja en el siguiente orden:
                precio de apertura, precio máximo, precio mínimo, precio de cierre.", "errorTextFormWrongFormat": "El valor introducido no se corresponde con el formato del campo", + "errorToken": "El token de seguridad de documento tiene un formato incorrecto.
                Por favor, contacte con el administrador del Servidor de Documentos.", + "errorTokenExpire": "El token de seguridad del documento ha expirado.
                Por favor, póngase en contacto con el administrador del Servidor de Documentos.", "errorUpdateVersionOnDisconnect": "Se ha restablecido la conexión a Internet y se ha cambiado la versión del archivo.
                Para poder seguir trabajando, es necesario descargar el archivo o copiar su contenido para asegurarse de que no se ha perdido nada, y luego volver a cargar esta página.", "errorUserDrop": "No se puede acceder al archivo en este momento.", "errorUsersExceed": "El número de usuarios permitido según su plan de precios fue excedido", @@ -419,12 +427,12 @@ "unknownErrorText": "Error desconocido.", "uploadImageExtMessage": "Formato de imagen desconocido.", "uploadImageFileCountMessage": "No hay imágenes subidas.", - "uploadImageSizeMessage": "La imagen es demasiado grande. El tamaño máximo es de 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "La imagen es demasiado grande. El tamaño máximo es de 25 MB." }, "LongActions": { "applyChangesTextText": "Cargando datos...", "applyChangesTitleText": "Cargando datos", + "confirmMaxChangesSize": "El tamaño de las acciones excede la limitación establecida para su servidor.
                Pulse \"Deshacer\" para cancelar su última acción o pulse \"Continuar\" para mantener la acción localmente (debe descargar el archivo o copiar su contenido para asegurarse de que no se pierde nada).", "downloadMergeText": "Descargando...", "downloadMergeTitle": "Descargando", "downloadTextText": "Descargando documento...", @@ -451,7 +459,9 @@ "saveTitleText": "Guardando documento", "sendMergeText": "Envío de los resultados de la fusión...", "sendMergeTitle": "Envío de los resultados de la fusión", + "textContinue": "Continuar", "textLoadingDocument": "Cargando documento", + "textUndo": "Deshacer", "txtEditingMode": "Establecer el modo de edición...", "uploadImageTextText": "Cargando imagen...", "uploadImageTitleText": "Cargando imagen", diff --git a/apps/documenteditor/mobile/locale/eu.json b/apps/documenteditor/mobile/locale/eu.json index 1bb29d2a2..5341e891a 100644 --- a/apps/documenteditor/mobile/locale/eu.json +++ b/apps/documenteditor/mobile/locale/eu.json @@ -26,6 +26,7 @@ "textContinuousPage": "Orri jarraitua", "textCurrentPosition": "Uneko kokapena", "textDisplay": "Bistaratzea", + "textDone": "Eginda", "textEmptyImgUrl": "Irudiaren URLa zehaztu behar duzu.", "textEvenPage": "Orrialde bikoitia", "textFootnote": "Oin-oharra", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Irudia liburutegitik", "textPictureFromURL": "Irudia URL-tik", "textPosition": "Posizioa", + "textRecommended": "Gomendatua", + "textRequired": "Nahitaezkoa", "textRightBottom": "Behean eskuinean", "textRightTop": "Goian eskuinean", "textRows": "Errenkadak", @@ -61,10 +64,7 @@ "textTableSize": "Taularen tamaina", "textWithBlueLinks": "Esteka urdinekin", "textWithPageNumbers": "Orri-zenbakiekin", - "txtNotUrl": "Eremu hau URL helbide bat izan behar da \"http://www.adibidea.eus\" bezalakoa", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Eremu hau URL helbide bat izan behar da \"http://www.adibidea.eus\" bezalakoa" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Berrikusi aldaketa", "textRight": "Lerrokatu eskuinean", "textShape": "Forma", + "textSharingSettings": "Partekatzearen ezarpenak", "textShd": "Atzeko planoaren kolorea", "textSmallCaps": "Maiuskula txikiak", "textSpacing": "Tartea", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Desegin/Berregin funtzioak desgaituta daude batera azkar editatzeko moduan.", "textUnderline": "Azpimarra", "textUsers": "Erabiltzaileak", - "textWidow": "Lerro solteen kontrola", - "textSharingSettings": "Sharing Settings" + "textWidow": "Lerro solteen kontrola" }, "HighlightColorPalette": { "textNoFill": "Betegarririk ez" @@ -184,6 +184,7 @@ "menuDelete": "Ezabatu", "menuDeleteTable": "Ezabatu taula", "menuEdit": "Editatu", + "menuEditLink": "Editatu esteka", "menuJoinList": "Batu aurreko zerrendarekin", "menuMerge": "Konbinatu", "menuMore": "Gehiago", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Freskatu taula osoa", "textRefreshPageNumbersOnly": "Freskatu orri-zenbakiak soilik", "textRows": "Errenkadak", - "txtWarnUrl": "Esteka honetan klik egitea kaltegarria izan daiteke zure gailu eta datuentzat
                Ziur zaude jarraitu nahi duzula?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Esteka honetan klik egitea kaltegarria izan daiteke zure gailu eta datuentzat
                Ziur zaude jarraitu nahi duzula?" }, "Edit": { "notcriticalErrorTitle": "Abisua", @@ -222,6 +222,7 @@ "textAllowOverlap": "Onartu teilakatzea", "textAmountOfLevels": "Maila kopurua", "textApril": "Apirila", + "textArrange": "Antolatu", "textAugust": "Abuztua", "textAuto": "Auto", "textAutomatic": "Automatikoa", @@ -238,6 +239,7 @@ "textCancel": "Utzi", "textCellMargins": "Gelaxkaren marjinak", "textCentered": "Erdian", + "textChangeShape": "Aldatu forma", "textChart": "Diagrama", "textClassic": "Klasikoa", "textClose": "Itxi", @@ -246,7 +248,10 @@ "textCreateTextStyle": "Sortu testu-estilo berria", "textCurrent": "Unekoa", "textCustomColor": "Kolore pertsonalizatua", + "textCustomStyle": "Estilo pertsonalizatua", "textDecember": "Abendua", + "textDeleteImage": "Ezabatu irudia", + "textDeleteLink": "Ezabatu esteka", "textDesign": "Diseinua", "textDifferentFirstPage": "Lehen orri desberdina", "textDifferentOddAndEvenPages": "Orri bakoiti-bikoitiak desberdin", @@ -319,6 +324,7 @@ "textPictureFromLibrary": "Irudia liburutegitik", "textPictureFromURL": "Irudia URL-tik", "textPt": "pt", + "textRecommended": "Gomendatua", "textRefresh": "Freskatu", "textRefreshEntireTable": "Freskatu taula osoa", "textRefreshPageNumbersOnly": "Freskatu orri-zenbakiak soilik", @@ -326,10 +332,10 @@ "textRemoveShape": "Kendu forma", "textRemoveTable": "Kendu taula", "textRemoveTableContent": "Kendu aurkibidea", - "textReorder": "Berrordenatu", "textRepeatAsHeaderRow": "Errepikatu goiburuko lerro bezala", "textReplace": "Ordeztu", "textReplaceImage": "Ordeztu irudia", + "textRequired": "Nahitaezkoa", "textResizeToFitContent": "Aldatu tamaina edukira egokitzeko", "textRightAlign": "Lerrokatu eskuinean", "textSa": "lr.", @@ -359,6 +365,7 @@ "textTableOfCont": "Aurkibidea", "textTableOptions": "Taularen aukerak", "textText": "Testua", + "textTextWrapping": "Testu-egokitzea", "textTh": "og.", "textThrough": "Zeharkatu", "textTight": "Estua", @@ -369,14 +376,7 @@ "textType": "Mota", "textWe": "az.", "textWrap": "Doikuntza", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Egokitze-estiloa" }, "Error": { "convertationTimeoutText": "Bihurketaren denbora-muga gainditu da.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Enkriptatutako aldaketak jaso dira, ezin dira deszifratu.", "errorDataRange": "Datu-barruti okerra.", "errorDefaultMessage": "Errore-kodea: %1", + "errorDirectUrl": "Egiaztatu dokumenturako esteka.
                Esteka honek deskargarako esteka zuzen bat izan behar du.", "errorEditingDownloadas": "Errore bat gertatu da fitxategiarekin lan egitean.
                Deskargatu dokumentua fitxategiaren kopia lokalean gordetzeko.", "errorEmptyTOC": "Hasi aurkibide bat sortzen hautatutako testuari Estiloak galeriako goiburu-estilo bat aplikatuz.", "errorFilePassProtect": "Fitxategia pasahitzez babestua dago eta ezin izan da ireki.", "errorFileSizeExceed": "Fitxategiaren tamainak zerbitzariak onartzen duena gainditzen du.
                Mesedez, jarri harremanetan kudeatzailearekin.", + "errorInconsistentExt": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia eta luzapena ez datoz bat.", + "errorInconsistentExtDocx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia testu-dokumentu bati dagokio (adibidez, docx), baina fitxategiaren luzapena ez dator bat: %1.", + "errorInconsistentExtPdf": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia ondorengo formatuetako bati dagokio: pdf/djvu/xps/oxps, baina fitxategiaren luzapena ez dator bat: %1.", + "errorInconsistentExtPptx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia aurkezpen bati dagokio (adibidez, pptx), baina fitxategiaren luzapena ez dator bat: %1.", + "errorInconsistentExtXlsx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia kalkulu-orri bati dagokio (adibidez, xlsx), baina fitxategiaren luzapena ez dator bat: %1.", "errorKeyEncrypt": "Gako-deskriptore ezezaguna", "errorKeyExpire": "Gakoaren deskriptorea iraungi da", "errorLoadingFont": "Letra-tipoak ez dira kargatu.
                Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", @@ -405,6 +411,8 @@ "errorSessionToken": "Zerbitzarira konexioa eten egin da. Mesedez, kargatu berriro orria.", "errorStockChart": "Errenkaden ordena okerra. Kotizazio-diagrama bat sortzeko, sartu datuak orrian ordena honetan:
                irekierako prezioa, gehienezko prezioa, gutxieneko prezioa, itxierako prezioa.", "errorTextFormWrongFormat": "Sartutako balioa ez dator bat eremuaren formatuarekin.", + "errorToken": "Dokumentuaren segurtasun tokena ez dago ondo osatua.
                Jarri harremanetan zure zerbitzariaren administratzailearekin.", + "errorTokenExpire": "Dokumentuaren segurtasun-tokena iraungi da.
                Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "errorUpdateVersionOnDisconnect": "Konexioa berrezarri da eta fitxategiaren bertsioa aldatu da.
                Lanean jarraitu aurretik, beharrezkoa da fitxategia deskargatzea edo edukia kopiatzea, ezer ez dela galduko ziurtatzeko, eta gero orri hau berriro kargatzea.", "errorUserDrop": "Une honetan ezin da fitxategia eskuratu.", "errorUsersExceed": "Ordainketa planak onartzen duen erabiltzaile kopurua gainditu da", @@ -419,12 +427,12 @@ "unknownErrorText": "Errore ezezaguna.", "uploadImageExtMessage": "Irudi-formatu ezezaguna.", "uploadImageFileCountMessage": "Ez da irudirik kargatu.", - "uploadImageSizeMessage": "Irudia handiegia da. Gehienezko tamaina 25 MB da.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "Irudia handiegia da. Gehienezko tamaina 25 MB da." }, "LongActions": { "applyChangesTextText": "Datuak kargatzen...", "applyChangesTitleText": "Datuak kargatzen", + "confirmMaxChangesSize": "Ekintzen tamainak zure zerbitzariak ezarritako muga gainditzen du.
                Sakatu \"Desegin\" azken ekintza ezeztatzeko edo sakatu \"Jarraitu\" ekintza lokalki mantentzeko (fitxategia deskargatu edo bere edukia kopiatu behar duzu ezer ez dela galtzen ziurtatzeko).", "downloadMergeText": "Deskargatzen...", "downloadMergeTitle": "Deskargatzen", "downloadTextText": "Dokumentua deskargatzen...", @@ -451,7 +459,9 @@ "saveTitleText": "Dokumentua gordetzen", "sendMergeText": "Konbinazioa bidaltzen...", "sendMergeTitle": "Konbinazioa bidaltzen", + "textContinue": "Jarraitu", "textLoadingDocument": "Dokumentua kargatzen", + "textUndo": "Desegin", "txtEditingMode": "Ezarri edizio modua...", "uploadImageTextText": "Irudia kargatzen...", "uploadImageTitleText": "Irudia kargatzen", diff --git a/apps/documenteditor/mobile/locale/fi.json b/apps/documenteditor/mobile/locale/fi.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/fi.json +++ b/apps/documenteditor/mobile/locale/fi.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/fr.json b/apps/documenteditor/mobile/locale/fr.json index b9878f2b6..7eff0555f 100644 --- a/apps/documenteditor/mobile/locale/fr.json +++ b/apps/documenteditor/mobile/locale/fr.json @@ -26,6 +26,7 @@ "textContinuousPage": "Page continue", "textCurrentPosition": "Position actuelle", "textDisplay": "Afficher", + "textDone": "Terminé", "textEmptyImgUrl": "Spécifiez l'URL de l'image", "textEvenPage": "Page paire", "textFootnote": "Note de bas de page", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Image depuis la bibliothèque", "textPictureFromURL": "Image depuis URL", "textPosition": "Position", + "textRecommended": "Recommandés", + "textRequired": "Obligatoire", "textRightBottom": "À droite en bas", "textRightTop": "À droite en haut", "textRows": "Lignes", @@ -61,10 +64,7 @@ "textTableSize": "Taille du tableau", "textWithBlueLinks": "Avec les liens bleus", "textWithPageNumbers": "Avec les numéros de page", - "txtNotUrl": "Ce champ doit contenir une URL au format \"http://www.example.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Ce champ doit contenir une URL au format \"http://www.example.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Réviser modifications", "textRight": "Aligner à droite", "textShape": "Forme", + "textSharingSettings": "Paramètres de partage", "textShd": "Couleur d'arrière-plan", "textSmallCaps": "Petites majuscules", "textSpacing": "Espacement", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Les fonctions Annuler/Rétablir sont désactivées pour le mode de co-édition rapide.", "textUnderline": "Souligné", "textUsers": "Utilisateurs", - "textWidow": "Contrôle des veuves", - "textSharingSettings": "Sharing Settings" + "textWidow": "Contrôle des veuves" }, "HighlightColorPalette": { "textNoFill": "Pas de remplissage" @@ -184,6 +184,7 @@ "menuDelete": "Supprimer", "menuDeleteTable": "Supprimer le tableau", "menuEdit": "Modifier", + "menuEditLink": "Modifier le lien", "menuJoinList": "Joindre à la liste précédente", "menuMerge": "Fusionner", "menuMore": "Plus", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Actualiser le tableau entier", "textRefreshPageNumbersOnly": "Actualiser les numéros de page uniquement", "textRows": "Lignes", - "txtWarnUrl": "Cliquer sur ce lien peut être dangereux pour votre appareil et vos données.
                Êtes-vous sûr de vouloir continuer ?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Cliquer sur ce lien peut être dangereux pour votre appareil et vos données.
                Êtes-vous sûr de vouloir continuer ?" }, "Edit": { "notcriticalErrorTitle": "Avertissement", @@ -238,15 +238,19 @@ "textCancel": "Annuler", "textCellMargins": "Marges de la cellule", "textCentered": "Centré", + "textChangeShape": "Changer la forme", "textChart": "Graphique", "textClassic": "Classique", "textClose": "Fermer", "textColor": "Couleur", "textContinueFromPreviousSection": "Continuer à partir de la section précédente", - "textCreateTextStyle": "Créer un nouveau style de texte", + "textCreateTextStyle": "Créer un nouveau style", "textCurrent": "Actuel", "textCustomColor": "Couleur personnalisée", + "textCustomStyle": "Style personnalisé", "textDecember": "décembre", + "textDeleteImage": "Supprimer l’image", + "textDeleteLink": "Supprimer le lien", "textDesign": "Design", "textDifferentFirstPage": "Première page différente", "textDifferentOddAndEvenPages": "Pages paires et impaires différentes", @@ -259,7 +263,7 @@ "textEffects": "Effets", "textEmpty": "Vide", "textEmptyImgUrl": "Spécifiez l'URL de l'image", - "textEnterTitleNewStyle": "Saisissez le titre d'un nouveau style", + "textEnterTitleNewStyle": "Saisissez le titre du style", "textFebruary": "février", "textFill": "Remplissage", "textFirstColumn": "Première colonne", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "Image depuis la bibliothèque", "textPictureFromURL": "Image depuis URL", "textPt": "pt", + "textRecommended": "Recommandés", "textRefresh": "Actualiser", "textRefreshEntireTable": "Actualiser le tableau entier", "textRefreshPageNumbersOnly": "Actualiser les numéros de page uniquement", @@ -326,10 +331,10 @@ "textRemoveShape": "Supprimer la forme", "textRemoveTable": "Supprimer le tableau", "textRemoveTableContent": "Supprimer la table des matières", - "textReorder": "Réorganiser", "textRepeatAsHeaderRow": "Répéter la ligne d'en-tête", "textReplace": "Remplacer", "textReplaceImage": "Remplacer l’image", + "textRequired": "Obligatoire", "textResizeToFitContent": "Redimensionner pour adapter au contenu", "textRightAlign": "Aligner à droite", "textSa": "sam.", @@ -359,6 +364,7 @@ "textTableOfCont": "Table des matières", "textTableOptions": "Options du tableau", "textText": "Texte", + "textTextWrapping": "Habillage du texte", "textTh": "jeu.", "textThrough": "Au travers", "textTight": "Rapproché", @@ -369,14 +375,8 @@ "textType": "Type", "textWe": "mer.", "textWrap": "Renvoi à la ligne", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Style d'habillage", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Délai de conversion expiré.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Les modifications chiffrées ont été reçues, mais ne peuvent pas être déchiffrées.", "errorDataRange": "Plage de données incorrecte.", "errorDefaultMessage": "Code d'erreur: %1", + "errorDirectUrl": "Veuillez vérifier le lien vers le document.
                Ce lien doit être un lien direct vers le fichier à télécharger.", "errorEditingDownloadas": "Une erreure s'est produite lors du travail avec le document.
                Téléchargez le document pour enregistrer une copie locale de sauvegarde du fichier.", "errorEmptyTOC": "Commencez à créer une table des matières en appliquant un style de titres de la galerie Styles au texte sélectionné.", "errorFilePassProtect": "Le fichier est protégé par le mot de passe et ne peut être ouvert.", "errorFileSizeExceed": "La taille du fichier dépasse les limites établies sur votre serveur.
                Veuillez contacter votre administrateur. ", + "errorInconsistentExt": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier ne correspond pas à l'extension du fichier.", + "errorInconsistentExtDocx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des documents texte (par exemple docx), mais le fichier a une extension incohérente : %1.", + "errorInconsistentExtPdf": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à l'un des formats suivants : pdf/djvu/xps/oxps, mais le fichier a l'extension incohérente : %1.", + "errorInconsistentExtPptx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des présentations (par exemple pptx), mais le fichier a une extension incohérente : %1.", + "errorInconsistentExtXlsx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des feuilles de calcul (par exemple xlsx), mais le fichier a une extension incohérente : %1.", "errorKeyEncrypt": "Descripteur de clé inconnu", "errorKeyExpire": "Descripteur de clés expiré", "errorLoadingFont": "Les polices ne sont pas téléchargées.
                Veuillez contacter l'administrateur de Document Server.", @@ -405,6 +411,8 @@ "errorSessionToken": "La connexion au serveur a été interrompue. Veuillez recharger la page.", "errorStockChart": "Ordre des lignes est incorrect. Pour créer un graphique boursier organisez vos données sur la feuille de calcul dans l'ordre suivant:
                cours à l'ouverture, cours maximal, cours minimal, cours à la clôture.", "errorTextFormWrongFormat": "La valeur saisie ne correspond pas au format du champ.", + "errorToken": "Le jeton de sécurité du document n’était pas formé correctement.
                Veuillez contacter l'administrateur de Document Server.", + "errorTokenExpire": "Le jeton de sécurité du document a expiré.
                Veuillez contacter votre administrateur du Document Server.", "errorUpdateVersionOnDisconnect": "La connexion a été rétablie et la version du fichier a été modifiée.
                Avant de pouvoir continuer à travailler, vous devez télécharger le fichier ou copier son contenu pour vous assurer que rien n'est perdu, puis recharger cette page.", "errorUserDrop": "Le fichier ne peut pas être accédé tout de suite.", "errorUsersExceed": "Le nombre d'utilisateurs autorisés par le plan tarifaire a été dépassé", @@ -419,12 +427,12 @@ "unknownErrorText": "Erreur inconnue.", "uploadImageExtMessage": "Format d'image inconnu.", "uploadImageFileCountMessage": "Aucune image chargée.", - "uploadImageSizeMessage": "L'image est trop grande. La taille limite est de 25 Mo.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "L'image est trop grande. La taille limite est de 25 Mo." }, "LongActions": { "applyChangesTextText": "Chargement des données en cours...", "applyChangesTitleText": "Chargement des données", + "confirmMaxChangesSize": "La taille des actions dépasse la limitation fixée pour votre serveur.
                Appuyez sur \"Annuler\" pour annuler votre dernière action ou sur \"Continuer\" pour maintenir l'action en local (vous devez télécharger le fichier ou copier son contenu pour vous assurer que rien n'est perdu).", "downloadMergeText": "Téléchargement en cours...", "downloadMergeTitle": "Téléchargement en cours", "downloadTextText": "Téléchargement du document...", @@ -451,7 +459,9 @@ "saveTitleText": "Enregistrement du document", "sendMergeText": "Envoie du résultat de la fusion...", "sendMergeTitle": "Envoie du résultat de la fusion", + "textContinue": "Continuer", "textLoadingDocument": "Chargement du document", + "textUndo": "Annuler", "txtEditingMode": "Réglage mode d'édition...", "uploadImageTextText": "Chargement d'une image en cours...", "uploadImageTitleText": "Chargement d'une image", diff --git a/apps/documenteditor/mobile/locale/gl.json b/apps/documenteditor/mobile/locale/gl.json index 4bf07f18f..b18ea256b 100644 --- a/apps/documenteditor/mobile/locale/gl.json +++ b/apps/documenteditor/mobile/locale/gl.json @@ -326,7 +326,6 @@ "textRemoveShape": "Eliminar forma", "textRemoveTable": "Eliminar táboa", "textRemoveTableContent": "Elimine a táboa de contidos", - "textReorder": "Reordenar", "textRepeatAsHeaderRow": "Repetir como fila da cabeceira", "textReplace": "Substituír", "textReplaceImage": "Substituír imaxe", @@ -369,13 +368,14 @@ "textType": "Tipo", "textWe": "Me", "textWrap": "Axuste", + "textArrange": "Arrange", "textChangeShape": "Change Shape", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textRecommended": "Recommended", "textRequired": "Required", "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -420,7 +420,14 @@ "uploadImageFileCountMessage": "Non hai imaxes subidas.", "uploadImageSizeMessage": "A imaxe é demasiado grande. O tamaño máximo é de 25 MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Cargando datos...", @@ -455,7 +462,10 @@ "txtEditingMode": "Establecer o modo de edición...", "uploadImageTextText": "Cargando imaxe...", "uploadImageTitleText": "Cargando imaxe", - "waitText": "Agarde..." + "waitText": "Agarde...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Erro", diff --git a/apps/documenteditor/mobile/locale/hu.json b/apps/documenteditor/mobile/locale/hu.json index 5d66d7887..d17de7da3 100644 --- a/apps/documenteditor/mobile/locale/hu.json +++ b/apps/documenteditor/mobile/locale/hu.json @@ -26,6 +26,7 @@ "textContinuousPage": "Folytatólagos oldal", "textCurrentPosition": "Jelen pozíció", "textDisplay": "Megjelenít", + "textDone": "Kész", "textEmptyImgUrl": "Meg kell adni a kép URL linkjét.", "textEvenPage": "Páros oldal", "textFootnote": "Lábjegyzet", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Kép a galériából", "textPictureFromURL": "Kép URL-en keresztül", "textPosition": "Pozíció", + "textRecommended": "Ajánlott", + "textRequired": "Szükséges", "textRightBottom": "Jobb alsó", "textRightTop": "Jobb felső", "textRows": "Sorok", @@ -61,10 +64,7 @@ "textTableSize": "Táblázat mérete", "textWithBlueLinks": "Kék linkkel", "textWithPageNumbers": "Oldalszámokkal", - "txtNotUrl": "A mező URL-címének a \"http://www.example.com\" formátumban kell lennie", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "A mező URL-címének a \"http://www.example.com\" formátumban kell lennie" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Változások áttekintése", "textRight": "Jobbra igazít", "textShape": "Alakzat", + "textSharingSettings": "Megosztási beállítások", "textShd": "Háttérszín", "textSmallCaps": "Kisbetűk", "textSpacing": "Térköz", @@ -163,8 +164,7 @@ "textTryUndoRedo": "A visszavonás/visszaállítás funkciók a Gyors társszerkesztési módban le vannak tiltva.", "textUnderline": "Aláhúzott", "textUsers": "Felhasználók", - "textWidow": "Bekezdésbeállítás", - "textSharingSettings": "Sharing Settings" + "textWidow": "Bekezdésbeállítás" }, "HighlightColorPalette": { "textNoFill": "Nincs kitöltés" @@ -184,6 +184,7 @@ "menuDelete": "Töröl", "menuDeleteTable": "Táblázat törlése", "menuEdit": "Szerkeszt", + "menuEditLink": "Link szerkesztése", "menuJoinList": "Csatlakozás az előző listához", "menuMerge": "Egyesít", "menuMore": "Több", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Teljes táblázat frissítése", "textRefreshPageNumbersOnly": "Csak az oldalszámok frissítése", "textRows": "Sorok", - "txtWarnUrl": "A link megnyitása káros lehet az eszközére és adataira.
                Biztosan folytatja?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "A link megnyitása káros lehet az eszközére és adataira.
                Biztosan folytatja?" }, "Edit": { "notcriticalErrorTitle": "Figyelmeztetés", @@ -238,6 +238,7 @@ "textCancel": "Mégse", "textCellMargins": "Cellamargók", "textCentered": "Középre igazított", + "textChangeShape": "Forma módosítása", "textChart": "Diagram", "textClassic": "Klasszikus", "textClose": "Bezár", @@ -246,7 +247,10 @@ "textCreateTextStyle": "Új szövegstílus létrehozása", "textCurrent": "Jelenlegi", "textCustomColor": "Egyéni szín", + "textCustomStyle": "Egyedi stílus", "textDecember": "December", + "textDeleteImage": "Kép törlése", + "textDeleteLink": "Link törlése", "textDesign": "Dizájn", "textDifferentFirstPage": "Eltérő első oldal", "textDifferentOddAndEvenPages": "Páros és páratlan oldalak eltérőek", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "Kép a galériából", "textPictureFromURL": "Kép URL-en keresztül", "textPt": "pt", + "textRecommended": "Ajánlott", "textRefresh": "Frissít", "textRefreshEntireTable": "Teljes táblázat frissítése", "textRefreshPageNumbersOnly": "Csak az oldalszámok frissítése", @@ -326,10 +331,10 @@ "textRemoveShape": "Alakzat eltávolítása", "textRemoveTable": "Táblázat eltávolítása", "textRemoveTableContent": "Tartalomjegyzék eltávolítása", - "textReorder": "Újrarendez", "textRepeatAsHeaderRow": "Ismételje meg fejlécként", "textReplace": "Csere", "textReplaceImage": "Kép cseréje", + "textRequired": "Szükséges", "textResizeToFitContent": "Méret módosítása a tartalomhoz való illesztéshez", "textRightAlign": "Jobbra igazít", "textSa": "Szo", @@ -359,6 +364,7 @@ "textTableOfCont": "Tartalomjegyzék", "textTableOptions": "Táblázat beállítások", "textText": "Szöveg", + "textTextWrapping": "Szöveg tördelése", "textTh": "Csü", "textThrough": "Keresztül", "textTight": "Szűken", @@ -369,14 +375,8 @@ "textType": "Típus", "textWe": "Sze", "textWrap": "Tördel", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Tördelés stílus", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "A átalakítás időkorlátja lejárt.", @@ -390,6 +390,7 @@ "errorDataEncrypted": "Kódolt változások érkeztek, ezeket nem lehet visszafejteni.", "errorDataRange": "Hibás adattartomány.", "errorDefaultMessage": "Hibakód: %1", + "errorDirectUrl": "Kérjük, ellenőrizze a dokumentumra mutató hivatkozást.
                Ennek a hivatkozásnak a letöltéshez közvetlen hivatkozásnak kell lennie.", "errorEditingDownloadas": "Hiba történt a dokumentummal végzett munka során.
                Dokumentum letöltése a fájl biztonsági másolatának helyi mentéséhez.", "errorEmptyTOC": "Kezdje el a tartalomjegyzék létrehozását azzal, hogy a kiválasztott szöveghez a Stílusok galériából egy címsorstílust alkalmaz.", "errorFilePassProtect": "A fájl jelszóval védett, és nem lehetett megnyitni.", @@ -420,7 +421,13 @@ "uploadImageExtMessage": "Ismeretlen képformátum.", "uploadImageFileCountMessage": "Nincsenek feltöltött képek.", "uploadImageSizeMessage": "A kép túl nagy. A maximális méret 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Adatok betöltése...", @@ -455,7 +462,10 @@ "txtEditingMode": "Szerkesztési mód beállítása...", "uploadImageTextText": "Kép feltöltése...", "uploadImageTitleText": "Kép feltöltése", - "waitText": "Kérjük, várjon..." + "waitText": "Kérjük, várjon...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Hiba", @@ -542,7 +552,7 @@ "textRemember": "Választás megjegyzése", "textReplaceSkipped": "A csere megtörtént. {0} események kihagyásra kerültek.", "textReplaceSuccess": "A keresés megtörtént. Cseréltek: {0}", - "textRequestMacros": "A makró kérést intéz az URL-hez. Szeretné engedélyezni a kérést a %1-hoz?", + "textRequestMacros": "A makró URL-kérést indít. Engedélyezi a %1 lekérdezését?", "textYes": "Igen", "titleLicenseExp": "Lejárt licenc", "titleServerVersion": "Szerkesztő frissítve", diff --git a/apps/documenteditor/mobile/locale/hy.json b/apps/documenteditor/mobile/locale/hy.json index 1c9cdaed3..0d84a0520 100644 --- a/apps/documenteditor/mobile/locale/hy.json +++ b/apps/documenteditor/mobile/locale/hy.json @@ -26,6 +26,7 @@ "textContinuousPage": "Շարունակվող էջ", "textCurrentPosition": "Ընթացիկ դիրք", "textDisplay": "Ցուցադրել", + "textDone": "Պատրաստ է", "textEmptyImgUrl": "Պետք է նշել նկարի URL-ը։", "textEvenPage": "Զույգ էջ", "textFootnote": "Ծանոթագրություն", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Նկար գրադարանից", "textPictureFromURL": "Նկար URL-ից", "textPosition": "Դիրք", + "textRecommended": "Առաջարկվում է", + "textRequired": "Պարտադիր", "textRightBottom": "Աջ ներքև", "textRightTop": "Աջ վերև", "textRows": "Տողեր", @@ -61,10 +64,7 @@ "textTableSize": "Աղյուսակի չափ", "textWithBlueLinks": "Կապույտ հղումներով", "textWithPageNumbers": "Էջի համարներով", - "txtNotUrl": "Այս դաշտը պիտի լինի URL հասցե՝ \"http://www.example.com\" ձևաչափով։ ", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Այս դաշտը պիտի լինի URL հասցե՝ \"http://www.example.com\" ձևաչափով։ " }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Փոփոխումների վերանայում", "textRight": "Հավասարեցնել աջից", "textShape": "Պատկեր", + "textSharingSettings": "Համօգտագործման կարգավորումներ", "textShd": "Խորքի գույն", "textSmallCaps": "Փոքրատառեր", "textSpacing": "Միջատարածք", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Հետարկումն ու վերարկումն գործառույթներն անջատված են արագ համատեղ խմբագրման ռեժիմի համար:", "textUnderline": "Ընդգծված", "textUsers": "Օգտատերեր", - "textWidow": "Վերջակախ տողի կառավարում", - "textSharingSettings": "Sharing Settings" + "textWidow": "Վերջակախ տողի կառավարում" }, "HighlightColorPalette": { "textNoFill": "Առանց լցման" @@ -184,6 +184,7 @@ "menuDelete": "Ջնջել", "menuDeleteTable": "Ջնջել աղյուսակը", "menuEdit": "Խմբագրել", + "menuEditLink": "Խմբագրել հղումը", "menuJoinList": "Միացնել նախորդ ցուցակին", "menuMerge": "Միաձուլել", "menuMore": "Ավել", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Թարմացրել ամբողջ աղյուսակը", "textRefreshPageNumbersOnly": "Թարմացնել միայն էջերի համարները", "textRows": "Տողեր", - "txtWarnUrl": "Այս հղմանը հետևելը կարող է վնասել ձեր սարքավորումն ու տվյալները:
                Վստա՞հ եք, որ ցանկանում եք շարունակել:", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Այս հղմանը հետևելը կարող է վնասել ձեր սարքավորումն ու տվյալները:
                Վստա՞հ եք, որ ցանկանում եք շարունակել:" }, "Edit": { "notcriticalErrorTitle": "Զգուշացում", @@ -238,6 +238,7 @@ "textCancel": "Չեղարկել", "textCellMargins": "Վանդակի լուսանցքներ", "textCentered": "Կենտրոնացված", + "textChangeShape": "Փոխել ձևը", "textChart": "Գծապատկեր", "textClassic": "Դասական", "textClose": "Փակել", @@ -246,7 +247,10 @@ "textCreateTextStyle": "Ստեղծել նոր տեքստի ոճ", "textCurrent": "Ընթացիկ", "textCustomColor": "Հարմարեցված գույն", + "textCustomStyle": "Հարմարեցված ոճ", "textDecember": "Դեկտեմբեր", + "textDeleteImage": "Ջնջել պատկերը", + "textDeleteLink": "Ջնջել հղումը", "textDesign": "Ձևավորում", "textDifferentFirstPage": "Տարբեր առաջին էջ", "textDifferentOddAndEvenPages": "Կենտ ու զույգ էջերը՝ տարբեր", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "Նկար գրադարանից", "textPictureFromURL": "Նկար URL-ից", "textPt": "կտ", + "textRecommended": "Առաջարկվում է", "textRefresh": "Թարմացնել", "textRefreshEntireTable": "Թարմացրել ամբողջ աղյուսակը", "textRefreshPageNumbersOnly": "Թարմացնել միայն էջերի համարները", @@ -326,10 +331,10 @@ "textRemoveShape": "Հեռացնել պատկերը", "textRemoveTable": "Հեռացնել աղյուսակը", "textRemoveTableContent": "Հեռացնել բովանդակության ցանկը", - "textReorder": "Վերադասավորել", "textRepeatAsHeaderRow": "Կրկնել որպես գլխամասի տող", "textReplace": "Փոխարինել", "textReplaceImage": "Փոխարինել նկարը", + "textRequired": "Պարտադիր", "textResizeToFitContent": "Չափափոխել ըստ պարունակության", "textRightAlign": "Վերև-աջ հավասարեցում", "textSa": "ՈԱ", @@ -359,6 +364,7 @@ "textTableOfCont": "ԲՑ ", "textTableOptions": "Աղյուսակի ընտրանքներ", "textText": "Տեքստ", + "textTextWrapping": "Տեքստի ծալում", "textTh": "Հնգ", "textThrough": "Միջով", "textTight": "Ձիգ", @@ -369,14 +375,8 @@ "textType": "Տեսակ", "textWe": "Չրք", "textWrap": "Ծալում", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Ծալման ոճ", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Փոխարկման սպասման ժամանակը սպառվել է։", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Ընդունվել են գաղտնագրված փոփոխությունները, դրանք չեն կարող վերծանելվել։", "errorDataRange": "Տվյալների սխալ ընդգրկույթ։", "errorDefaultMessage": "Սխալի կոդ՝ %1", + "errorDirectUrl": "Խնդրում ենք ստուգել փաստաթղթի հղումը:
                Այս հղումը պետք է լինի ուղիղ հղում դեպի ներբեռնելու ֆայլը:", "errorEditingDownloadas": "Փաստաթղթի հետ աշխատանքի ընթացքում սխալ է տեղի ունեցել:
                Ներբեռնեք փաստաթուղթը՝ ֆայլի կրկնօրինակը տեղում պահելու համար:", "errorEmptyTOC": "Սկսել ստեղծել բովանդակության աղյուսակ՝ կիրառելով վերնագրի ոճը ոճերի սրահից ընտրված տեքստում:", "errorFilePassProtect": "Ֆայլը պաշտպանված է գաղտնաբառով և հնարավոր չէ բացել:", "errorFileSizeExceed": "Ֆայլի չափը գերազանցում է ձեր սերվերի սահմանաչափը:Խնդրում ենք կապվել Ձեր ադմինիստրատորի հետ:", + "errorInconsistentExt": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը չի համապատասխանում ֆայլի ընդլայնմանը:", + "errorInconsistentExtDocx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է տեքստային փաստաթղթերին (օրինակ՝ docx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում՝ %1:", + "errorInconsistentExtPdf": "Ֆայլը բացելիս սխալ է տեղի ունեցել:Ֆայլի բովանդակությունը համապատասխանում է հետևյալ ձևաչափերից մեկին՝pdf/djvu/xps/oxps,բայց ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "errorInconsistentExtPptx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է ներկայացումներին (օրինակ՝ pptx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "errorInconsistentExtXlsx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է աղյուսակներին (օր. xlsx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", "errorKeyEncrypt": "Բանալու անհայտ նկարագրիչ", "errorKeyExpire": "Բանալու նկարագրիչի ժամկետը սպառվել է", "errorLoadingFont": "Տառատեսակները բեռնված չեն:
                Խնդրում ենք կապվել ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", @@ -405,6 +411,8 @@ "errorSessionToken": "Սերվերի հետ կապն ընդհատվել է:Խնդրում ենք վերաբեռնել էջը:", "errorStockChart": "Սխալ տողերի հերթականություն:Տվյալների տատանման գծապատկեր կառուցելու համար տվյալները թերթիկի վրա տեղադրեք հետևյալ հաջորդականությամբ.
                Բացման գին,առավելագույն գին,նվազագույն գին, փակման գին։", "errorTextFormWrongFormat": "Մուտքագրված արժեքը չի համապատասխանում դաշտի ձևաչափին:", + "errorToken": "Փաստաթղթի անվտանգության կտրոնը ճիշտ չի ձևակերպված։
                Դիմեք փաստաթղթերի սպասարկիչի ձեր վարիչին։", + "errorTokenExpire": "Փաստաթղթի անվտանգության կտրոնի ժամկետն անցել է։
                Դիմեք փաստաթղթերի սպասարկիչի ձեր վարիչին։", "errorUpdateVersionOnDisconnect": "Կապը վերահաստատվել է,և ֆայլի տարբերակը փոխվել է։
                Նախքան աշխատանքը շարունակելը ներբեռնեք ֆայլը կամ պատճենեք դրա պարունակությունը՝ վստահ լինելու, որ ոչինչ չի կորել, և ապա նորից բեռնեք այս էջը։", "errorUserDrop": "Հնարավոր չէ մուտք գործել ֆայլ այս պահին:", "errorUsersExceed": "Օգտատերերի՝ սակագնային պլանով թույլատրված քանակը գերազանցվել է։", @@ -419,12 +427,12 @@ "unknownErrorText": "Անհայտ սխալ։", "uploadImageExtMessage": "Նկարի անհայտ ձևաչափ։", "uploadImageFileCountMessage": "Ոչ մի նկար չի բեռնվել։", - "uploadImageSizeMessage": "Պատկերը չափազանց մեծ է:Առավելագույն չափը 25 ՄԲ է:", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "Պատկերը չափազանց մեծ է:Առավելագույն չափը 25 ՄԲ է:" }, "LongActions": { "applyChangesTextText": "Տվյալների բեռնում...", "applyChangesTitleText": "Տվյալների բեռնում", + "confirmMaxChangesSize": "Գործողությունների չափը գերազանցում է Ձեր սերվերի համար սահմանված սահմանափակումը:
                Սեղմեք «Հետարկել»՝ Ձեր վերջին գործողությունը չեղարկելու համար կամ սեղմեք «Շարունակել»՝ գործողությունը տեղում պահելու համար (Դուք պետք է ներբեռնեք ֆայլը կամ պատճենեք դրա բովանդակությունը՝ համոզվելու համար, որ ոչինչ կորած չէ):", "downloadMergeText": "Ներբեռնում...", "downloadMergeTitle": "Ներբեռնում", "downloadTextText": "Փաստաթղթի ներբեռնում...", @@ -451,7 +459,9 @@ "saveTitleText": "Փաստաթղթի պահպանում", "sendMergeText": "Ձուլման ուղարկում․․․", "sendMergeTitle": "Ձուլման ուղարկում", + "textContinue": "Շարունակել", "textLoadingDocument": "Փաստաթղթի բեռնում", + "textUndo": "Հետարկել", "txtEditingMode": "Սահմանել ցուցակի խմբագրում․․․", "uploadImageTextText": "Նկարի վերբեռնում...", "uploadImageTitleText": "Նկարի վերբեռնում", diff --git a/apps/documenteditor/mobile/locale/id.json b/apps/documenteditor/mobile/locale/id.json index 712e734cf..94299fbbc 100644 --- a/apps/documenteditor/mobile/locale/id.json +++ b/apps/documenteditor/mobile/locale/id.json @@ -3,11 +3,11 @@ "textAbout": "Tentang", "textAddress": "Alamat", "textBack": "Kembali", + "textEditor": "Penyunting Dokumen", "textEmail": "Email", "textPoweredBy": "Didukung oleh", "textTel": "Tel", - "textVersion": "Versi", - "textEditor": "Document Editor" + "textVersion": "Versi" }, "Add": { "notcriticalErrorTitle": "Peringatan", @@ -26,6 +26,7 @@ "textContinuousPage": "Halaman Bersambung", "textCurrentPosition": "Posisi Saat Ini", "textDisplay": "Tampilan", + "textDone": "Selesai", "textEmptyImgUrl": "Anda harus menentukan URL gambar.", "textEvenPage": "Halaman Genap", "textFootnote": "Footnote", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Gambar dari Perpustakaan", "textPictureFromURL": "Gambar dari URL", "textPosition": "Posisi", + "textRecommended": "Direkomendasikan", + "textRequired": "Wajib Diisi", "textRightBottom": "Kanan Bawah", "textRightTop": "Kanan Atas", "textRows": "Baris", @@ -57,14 +60,11 @@ "textShape": "Warna Latar", "textStartAt": "Dimulai pada", "textTable": "Tabel", + "textTableContents": "Daftar Isi", "textTableSize": "Ukuran Tabel", - "txtNotUrl": "Area ini harus dalam format URL “http://www.contoh.com”", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTableContents": "Table of Contents", - "textWithBlueLinks": "With Blue Links", - "textWithPageNumbers": "With Page Numbers" + "textWithBlueLinks": "Dengan Tautan Warna Biru", + "textWithPageNumbers": "Dengan Nomor Halaman", + "txtNotUrl": "Ruas ini harus berupa sebuah URL dalam format “http://www.contoh.com”" }, "Common": { "Collaboration": { @@ -72,7 +72,7 @@ "textAccept": "Terima", "textAcceptAllChanges": "Terima semua perubahan", "textAddComment": "Tambahkan komentar", - "textAddReply": "Tambahkan Balasan", + "textAddReply": "Tambah balasan", "textAllChangesAcceptedPreview": "Semua perubahan diterima (Preview)", "textAllChangesEditing": "Semua perubahan (Editing)", "textAllChangesRejectedPreview": "Semua perubahan ditolak (Preview)", @@ -124,7 +124,7 @@ "textNoBreakBefore": "Tanpa break halaman sebelum", "textNoChanges": "Tidak ada perubahan.", "textNoComments": "Dokumen ini tidak memiliki komentar", - "textNoContextual": "Tambah jarak diantara", + "textNoContextual": "Tambah interval di antara paragraf dengan gaya sama", "textNoKeepLines": "Jangan satukan garis", "textNoKeepNext": "Jangan satukan dengan berikutnya", "textNot": "Tidak ", @@ -147,6 +147,7 @@ "textReviewChange": "Review Perubahan", "textRight": "Rata kanan", "textShape": "Warna Latar", + "textSharingSettings": "Pengaturan Berbagi", "textShd": "Warna latar", "textSmallCaps": "Huruf Ukuran Kecil", "textSpacing": "Spasi", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Fungsi Undo/Redo dinonaktifkan untuk mode Co-editing Cepat.", "textUnderline": "Garis bawah", "textUsers": "Pengguna", - "textWidow": "Kontrol widow", - "textSharingSettings": "Sharing Settings" + "textWidow": "Kontrol widow" }, "HighlightColorPalette": { "textNoFill": "Tanpa Isi" @@ -184,6 +184,7 @@ "menuDelete": "Hapus", "menuDeleteTable": "Hapus Tabel", "menuEdit": "Sunting", + "menuEditLink": "Sunting Tautan", "menuJoinList": "Gabung ke list sebelumnya", "menuMerge": "Merge", "menuMore": "Lainnya", @@ -201,15 +202,14 @@ "textDoNotShowAgain": "Jangan tampilkan lagi", "textNumberingValue": "Penomoran Nilai", "textOk": "OK", + "textRefreshEntireTable": "Segarkan keseluruhan tabel", + "textRefreshPageNumbersOnly": "Segarkan nomor halaman saja", "textRows": "Baris", - "menuEditLink": "Edit Link", - "textRefreshEntireTable": "Refresh entire table", - "textRefreshPageNumbersOnly": "Refresh page numbers only", - "txtWarnUrl": "Clicking this link can be harmful to your device and data.
                Are you sure you want to continue?" + "txtWarnUrl": "Mengklik tautan ini dapat membahayakan perangkat dan data Anda.
                Apakah Anda yakin untuk melanjutkan?" }, "Edit": { "notcriticalErrorTitle": "Peringatan", - "textActualSize": "Ukuran Sebenarnya", + "textActualSize": "Ukuran sebenarnya", "textAddCustomColor": "Tambah warna kustom", "textAdditional": "Tambahan", "textAdditionalFormatting": "Pemformatan tambahan", @@ -220,7 +220,9 @@ "textAlign": "Ratakan", "textAllCaps": "Huruf kapital semua", "textAllowOverlap": "Ijinkan menumpuk", + "textAmountOfLevels": "Jumlah Level", "textApril": "April", + "textArrange": "Atur", "textAugust": "Agustus", "textAuto": "Otomatis", "textAutomatic": "Otomatis", @@ -234,32 +236,45 @@ "textBringToForeground": "Tampilkan di Halaman Muka", "textBullets": "Butir", "textBulletsAndNumbers": "Butir & Angka", + "textCancel": "Batalkan", "textCellMargins": "Margin Sel", + "textCentered": "Tengah", + "textChangeShape": "Ubah Bentuk", "textChart": "Bagan", + "textClassic": "Klasik", "textClose": "Tutup", "textColor": "Warna", "textContinueFromPreviousSection": "Lanjut dari sesi sebelumnya", + "textCreateTextStyle": "Buat gaya teks baru", + "textCurrent": "Saat ini", "textCustomColor": "Custom Warna", + "textCustomStyle": "Gaya Kustom", "textDecember": "Desember", + "textDeleteImage": "Hapus Gambar", + "textDeleteLink": "Hapus Tautan", "textDesign": "Desain", "textDifferentFirstPage": "Halaman pertama yang berbeda", "textDifferentOddAndEvenPages": "Halaman ganjil dan genap yang berbeda", "textDisplay": "Tampilan", "textDistanceFromText": "Jarak dari teks", + "textDistinctive": "Tersendiri", + "textDone": "Selesai", "textDoubleStrikethrough": "Garis coret ganda", "textEditLink": "Edit Link", "textEffects": "Efek", "textEmpty": "Kosong", "textEmptyImgUrl": "Anda harus menentukan URL gambar.", + "textEnterTitleNewStyle": "Masukkan judul gaya baru", "textFebruary": "Februari", "textFill": "Isian", "textFirstColumn": "Kolom Pertama", - "textFirstLine": "Garis Pertama", + "textFirstLine": "Baris Pertama", "textFlow": "Alur", "textFontColor": "Warna Huruf", "textFontColors": "Warna Font", "textFonts": "Font", "textFooter": "Footer", + "textFormal": "Formal", "textFr": "Jum", "textHeader": "Header", "textHeaderRow": "Baris Header", @@ -275,7 +290,9 @@ "textKeepLinesTogether": "Tetap satukan garis", "textKeepWithNext": "Satukan dengan berikutnya", "textLastColumn": "Kolom Terakhir", + "textLeader": "Leader", "textLetterSpacing": "Letter Spacing", + "textLevels": "Level", "textLineSpacing": "Spasi Antar Baris", "textLink": "Tautan", "textLinkSettings": "Pengaturan Link", @@ -283,100 +300,83 @@ "textMarch": "Maret", "textMay": "Mei", "textMo": "Sen", + "textModern": "Modern", "textMoveBackward": "Pindah Kebelakang", "textMoveForward": "Majukan", "textMoveWithText": "Pindah bersama teks", + "textNextParagraphStyle": "Gaya paragraf selanjutnya", "textNone": "tidak ada", "textNoStyles": "Tanpa style untuk tipe grafik ini.", - "textNotUrl": "Area ini harus dalam format URL “http://www.contoh.com”", + "textNotUrl": "Ruas ini harus berupa sebuah URL dalam format “http://www.contoh.com”", "textNovember": "November", "textNumbers": "Nomor", "textOctober": "Oktober", "textOk": "OK", + "textOnline": "Online", "textOpacity": "Opasitas", "textOptions": "Pilihan", "textOrphanControl": "Kontrol Orphan", "textPageBreakBefore": "Jeda halaman sebelum", "textPageNumbering": "Penomoran Halaman", + "textPageNumbers": "Nomor Halaman", "textParagraph": "Paragraf", + "textParagraphStyle": "Gaya Paragraf", "textPictureFromLibrary": "Gambar dari Perpustakaan", "textPictureFromURL": "Gambar dari URL", "textPt": "pt", + "textRecommended": "Direkomendasikan", + "textRefresh": "Segarkan", + "textRefreshEntireTable": "Segarkan keseluruhan tabel", + "textRefreshPageNumbersOnly": "Segarkan nomor halaman saja", "textRemoveChart": "Hilangkan Grafik", "textRemoveShape": "Hilangkan Bentuk", "textRemoveTable": "Hilangkan Tabel", - "textReorder": "Reorder", + "textRemoveTableContent": "Hapus daftar isi", "textRepeatAsHeaderRow": "Ulangi sebagai Baris Header", "textReplace": "Ganti", "textReplaceImage": "Ganti Gambar", + "textRequired": "Wajib Diisi", "textResizeToFitContent": "Ubah Ukuran untuk Cocok ke Konten", + "textRightAlign": "Rata Kanan", "textSa": "Sab", + "textSameCreatedNewStyle": "Sama seperti gaya baru yang dibuat", "textScreenTip": "Tip Layar", "textSelectObjectToEdit": "Pilih objek untuk diedit", "textSendToBackground": "Jalankan di Background", "textSeptember": "September", "textSettings": "Pengaturan", "textShape": "Warna Latar", + "textSimple": "Sederhana", "textSize": "Ukuran", "textSmallCaps": "Huruf Ukuran Kecil", "textSpaceBetweenParagraphs": "Spasi Antara Paragraf", "textSquare": "Persegi", + "textStandard": "Standar", "textStartAt": "Dimulai pada", "textStrikethrough": "Coret ganda", + "textStructure": "Struktur", "textStyle": "Model", "textStyleOptions": "Opsi Style", + "textStyles": "Gaya", "textSu": "Min", "textSubscript": "Subskrip", "textSuperscript": "Superskrip", "textTable": "Tabel", + "textTableOfCont": "Daftar Isi", "textTableOptions": "Opsi Tabel", "textText": "Teks", + "textTextWrapping": "Pembungkusan Teks", "textTh": "Ka", "textThrough": "Tembus", "textTight": "Ketat", + "textTitle": "Judul", "textTopAndBottom": "Atas dan bawah", "textTotalRow": "Total Baris", "textTu": "Sel", "textType": "Ketik", "textWe": "Rab", "textWrap": "Wrap", - "textAmountOfLevels": "Amount of Levels", - "textCancel": "Cancel", - "textCentered": "Centered", - "textChangeShape": "Change Shape", - "textClassic": "Classic", - "textCreateTextStyle": "Create new text style", - "textCurrent": "Current", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textDistinctive": "Distinctive", - "textDone": "Done", - "textEnterTitleNewStyle": "Enter title of a new style", - "textFormal": "Formal", - "textLeader": "Leader", - "textLevels": "Levels", - "textModern": "Modern", - "textNextParagraphStyle": "Next paragraph style", - "textOnline": "Online", - "textPageNumbers": "Page Numbers", - "textParagraphStyle": "Paragraph Style", - "textRecommended": "Recommended", - "textRefresh": "Refresh", - "textRefreshEntireTable": "Refresh entire table", - "textRefreshPageNumbersOnly": "Refresh page numbers only", - "textRemoveTableContent": "Remove table of contents", - "textRequired": "Required", - "textRightAlign": "Right Align", - "textSameCreatedNewStyle": "Same as created new style", - "textSimple": "Simple", - "textStandard": "Standard", - "textStructure": "Structure", - "textStyles": "Styles", - "textTableOfCont": "TOC", - "textTextWrapping": "Text Wrapping", - "textTitle": "Title", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Gaya Pembungkusan" }, "Error": { "convertationTimeoutText": "Waktu konversi habis.", @@ -390,22 +390,33 @@ "errorDataEncrypted": "Perubahan enkripsi sudah diterima dan tidak bisa diuraikan.", "errorDataRange": "Rentang data salah.", "errorDefaultMessage": "Kode kesalahan: %1", + "errorDirectUrl": "Silakan verifikasi tautan ke dokumen.
                Tautan ini harus merupakan tautan langsung menuju file yang akan diunduh.", "errorEditingDownloadas": "Ada kesalahan saat bekerja dengan dokumen.
                Download dokumen untuk menyimpan file copy backup di lokal.", + "errorEmptyTOC": "Mulai membuat daftar isi dengan menerapkan gaya judul dari galeri Gaya kepada teks terpilih.", "errorFilePassProtect": "Password file diproteksi dan tidak bisa dibuka.", "errorFileSizeExceed": "Ukuran file melampaui limit server Anda.
                Silakan, hubungi admin.", + "errorInconsistentExt": "Terjadi kesalahan saat membuka file.
                Isi file tidak cocok dengan ekstensi file.", + "errorInconsistentExtDocx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan dokumen teks (mis. docx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "errorInconsistentExtPdf": "Sebuah kesalahan terjadi ketika membuka file.
                Isi file berhubungan dengan satu dari format berikut: pdf/djvu/xps/oxps, tapi file memiliki ekstensi yang tidak konsisten: %1.", + "errorInconsistentExtPptx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan presentasi (mis. pptx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "errorInconsistentExtXlsx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan spreadsheet (mis. xlsx), tapi file memiliki ekstensi yang tidak konsisten: %1.", "errorKeyEncrypt": "Deskriptor kunci tidak dikenal", "errorKeyExpire": "Deskriptor kunci tidak berfungsi", "errorLoadingFont": "Font tidak bisa dimuat.
                Silakan kontak admin Server Dokumen Anda.", "errorMailMergeLoadFile": "Loading gagal", "errorMailMergeSaveFile": "Merge gagal.", + "errorNoTOC": "Tidak ada daftar isi yang harus diperbarui. Anda dapat menyisipkan satu daftar isi dari tab Referensi.", "errorSessionAbsolute": "Waktu edit dokumen sudah selesai. Silakan muat ulang halaman.", "errorSessionIdle": "Dokumen sudah lama tidak diedit. Silakan muat ulang halaman.", "errorSessionToken": "Koneksi ke server terganggu. Silakan muat ulang halaman.", "errorStockChart": "Urutan baris salah. Untuk membuat diagram garis, masukkan data pada lembar kerja dengan urutan berikut ini:
                harga pembukaan, harga maksimal, harga minimal, harga penutupan.", - "errorUpdateVersionOnDisconnect": "Koneksi internet sudah kembali dan versi file sudah diganti.
                Sebelum Anda bisa melanjutkan kerja, Anda perlu download file atau copy konten untuk memastikan tidak ada yang hilang, dan muat ulang halaman ini.", + "errorTextFormWrongFormat": "Nilai yang dimasukkan tidak cocok dengan format ruas.", + "errorToken": "Token keamanan dokumen tidak dibentuk dengan benar.
                Silakan hubungi admin Server Dokumen Anda.", + "errorTokenExpire": "Token keamanan dokumen sudah kedaluwarsa.
                Silakan hubungi admin Server Dokumen Anda.", + "errorUpdateVersionOnDisconnect": "Koneksi internet sudah kembali dan versi file sudah diganti.
                Sebelum Anda bisa melanjutkan kerja, Anda perlu mengunduh file atau salin konten untuk memastikan tidak ada yang hilang, lalu muat ulang halaman ini.", "errorUserDrop": "File tidak bisa diakses sekarang.", "errorUsersExceed": "Jumlah pengguna telah melebihi jumlah yang diijinkan dalam paket harga.", - "errorViewerDisconnect": "Koneksi terputus. Anda tetap bisa melihat dokumen,
                tapi tidak bisa download atau print sampai koneksi terhubung dan halaman dimuat ulang.", + "errorViewerDisconnect": "Koneksi terputus. Anda tetap bisa melihat dokumen,
                tapi tidak bisa mengunduh atau mencetak sampai koneksi terhubung dan halaman dimuat ulang.", "notcriticalErrorTitle": "Peringatan", "openErrorText": "Eror ketika membuka file", "saveErrorText": "Eror ketika menyimpan file.", @@ -416,15 +427,12 @@ "unknownErrorText": "Kesalahan tidak diketahui.", "uploadImageExtMessage": "Format gambar tidak dikenal.", "uploadImageFileCountMessage": "Tidak ada gambar yang diunggah.", - "uploadImageSizeMessage": "Melebihi ukuran maksimal file. Ukuran maksimum adalah 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", - "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "uploadImageSizeMessage": "Melebihi ukuran maksimal file. Ukuran maksimum adalah 25 MB." }, "LongActions": { "applyChangesTextText": "Memuat data...", "applyChangesTitleText": "Memuat Data", + "confirmMaxChangesSize": "Ukuran tindakan melebihi batas yang ditetapkan untuk server Anda.
                Tekan \"Batalkan\" untuk membatalkan tindakan terakhir Anda atau tekan \"Lanjutkan\" untuk menyimpan tindakan secara lokal (Anda perlu mengunduh file atau menyalin isinya untuk memastikan tidak ada yang hilang).", "downloadMergeText": "Downloading...", "downloadMergeTitle": "Mengunduh", "downloadTextText": "Mengunduh dokumen...", @@ -451,7 +459,9 @@ "saveTitleText": "Menyimpan Dokumen", "sendMergeText": "Mengirim Merge...", "sendMergeTitle": "Mengirim Merge", + "textContinue": "Lanjutkan", "textLoadingDocument": "Memuat dokumen", + "textUndo": "Batalkan", "txtEditingMode": "Atur mode editing...", "uploadImageTextText": "Mengunggah gambar...", "uploadImageTitleText": "Mengunggah Gambar", @@ -467,8 +477,8 @@ "leavePageText": "Anda memiliki perubahan yang belum tersimpan. Klik 'Tetap di Halaman Ini' untuk menunggu simpan otomatis. Klik ‘Tinggalkan Halaman Ini’ untuk membatalkan semua perubahan yang belum disimpan.", "notcriticalErrorTitle": "Peringatan", "SDK": { - " -Section ": " -Sesi ", - "above": "Di atas", + " -Section ": "-Bagian", + "above": "di atas", "below": "di bawah", "Caption": "Caption", "Choose an item": "Pilih satu barang", @@ -542,6 +552,7 @@ "textRemember": "Ingat pilihan saya", "textReplaceSkipped": "Penggantian telah dilakukan. Ada {0} yang dilewatkan.", "textReplaceSuccess": "Pencarian telah dilakukan. Ada {0} yang diganti :", + "textRequestMacros": "Sebuah makro melakukan permintaan ke URL. Apakah Anda akan mengizinkan permintaan ke %1?", "textYes": "Ya", "titleLicenseExp": "Lisensi kadaluwarsa", "titleServerVersion": "Editor mengupdate", @@ -553,8 +564,7 @@ "warnLicenseUsersExceeded": "Anda sudah mencapai batas user untuk %1 editor. Hubungi admin Anda untuk mempelajari lebih lanjut.", "warnNoLicense": "Anda sudah mencapai batas untuk koneksi bersamaan ke %1 editor. Dokumen ini akan dibuka untuk dilihat saja. Hubungi %1 tim sales untuk syarat personal upgrade.", "warnNoLicenseUsers": "Anda sudah mencapai batas user untuk %1 editor. Hubungi %1 tim sales untuk syarat personal upgrade.", - "warnProcessRightsChange": "Anda tidak memiliki izin edit file ini.", - "textRequestMacros": "A macro makes a request to URL. Do you want to allow the request to the %1?" + "warnProcessRightsChange": "Anda tidak memiliki izin edit file ini." }, "Settings": { "advDRMOptions": "File yang Diproteksi", @@ -567,6 +577,7 @@ "textApplicationSettings": "Pengaturan Aplikasi", "textAuthor": "Penyusun", "textBack": "Kembali", + "textBeginningDocument": "Awal dokumen", "textBottom": "Bawah", "textCancel": "Batalkan", "textCaseSensitive": "Harus sama persis", @@ -580,6 +591,7 @@ "textCommentsDisplay": "Display Komentar", "textCreated": "Dibuat", "textCustomSize": "Custom Ukuran", + "textDirection": "Arah", "textDisableAll": "Nonaktifkan Semua", "textDisableAllMacrosWithNotification": "Nonaktifkan semua macros dengan notifikasi", "textDisableAllMacrosWithoutNotification": "Nonaktifkan semua macros tanpa notifikasi", @@ -591,9 +603,13 @@ "textDownloadAs": "Unduh sebagai", "textDownloadRtf": "Jika Anda lanjut simpan dengan format ini, beberapa format lain mungkin akan terhapus. Apakah Anda ingin melanjutkan?", "textDownloadTxt": "Jika Anda lanjut simpan dengan format ini, semua fitur kecuali teks akan hilang. Apakah Anda ingin melanjutkan?", + "textEmptyHeading": "Heading Kosong", + "textEmptyScreens": "Tidak terdapat heading pada dokumen. Terapkan gaya heading ke teks agar teks muncul di daftar isi.", "textEnableAll": "Aktifkan Semua", "textEnableAllMacrosWithoutNotification": "Aktifkan semua macros tanpa notifikasi", "textEncoding": "Enkoding", + "textFastWV": "Tampilan Web Cepat", + "textFeedback": "Masukan & Dukungan", "textFind": "Cari", "textFindAndReplace": "Cari dan Ganti", "textFindAndReplaceAll": "Temukan dan Ganti Semua", @@ -606,12 +622,15 @@ "textLastModified": "Terakhir Dimodifikasi", "textLastModifiedBy": "Terakhir Dimodifikasi Oleh", "textLeft": "Kiri", + "textLeftToRight": "Kiri Ke Kanan", "textLoading": "Memuat...", "textLocation": "Lokasi", "textMacrosSettings": "Pengaturan Macros", "textMargins": "Margin", "textMarginsH": "Margin atas dan bawah terlalu jauh untuk halaman setinggi ini", "textMarginsW": "Margin kiri dan kanan terlalu besar dengan lebar halaman yang ada", + "textMobileView": "Tampilan Seluler", + "textNavigation": "Navigasi", "textNo": "Tidak", "textNoCharacters": "Karakter Tidak Dicetak", "textNoTextFound": "Teks tidak ditemukan", @@ -622,6 +641,9 @@ "textPages": "Halaman", "textPageSize": "Ukuran Halaman", "textParagraphs": "Paragraf", + "textPdfProducer": "Pembuat PDF", + "textPdfTagged": "PDF Bertanda", + "textPdfVer": "Versi PDF", "textPoint": "Titik", "textPortrait": "Portrait", "textPrint": "Cetak", @@ -629,7 +651,9 @@ "textReplace": "Ganti", "textReplaceAll": "Ganti Semua", "textResolvedComments": "Selesaikan Komentar", + "textRestartApplication": "Silakan mulai ulang aplikasi untuk menerapkan perubahan", "textRight": "Kanan", + "textRightToLeft": "Kanan Ke Kiri", "textSearch": "Cari", "textSettings": "Pengaturan", "textShowNotification": "Tampilkan Notifikasi", @@ -669,21 +693,7 @@ "txtScheme6": "Himpunan", "txtScheme7": "Margin Sisa", "txtScheme8": "Alur", - "txtScheme9": "Cetakan", - "textBeginningDocument": "Beginning of document", - "textDirection": "Direction", - "textEmptyHeading": "Empty Heading", - "textEmptyScreens": "There are no headings in the document. Apply a headings style to the text so that it appears in the table of contents.", - "textFastWV": "Fast Web View", - "textFeedback": "Feedback & Support", - "textLeftToRight": "Left To Right", - "textMobileView": "Mobile View", - "textNavigation": "Navigation", - "textPdfProducer": "PDF Producer", - "textPdfTagged": "Tagged PDF", - "textPdfVer": "PDF Version", - "textRestartApplication": "Please restart the application for the changes to take effect", - "textRightToLeft": "Right To Left" + "txtScheme9": "Cetakan" }, "Toolbar": { "dlgLeaveMsgText": "Anda memiliki perubahan yang belum tersimpan. Klik 'Tetap di Halaman Ini' untuk menunggu simpan otomatis. Klik ‘Tinggalkan Halaman Ini’ untuk membatalkan semua perubahan yang belum disimpan.", @@ -691,7 +701,7 @@ "leaveButtonText": "Tinggalkan Halaman Ini", "stayButtonText": "Tetap di halaman ini", "textOk": "OK", - "textSwitchedMobileView": "Switched to Mobile view", - "textSwitchedStandardView": "Switched to Standard view" + "textSwitchedMobileView": "Beralih ke Tampilan seluler", + "textSwitchedStandardView": "Beralih ke Tampilan standar" } } \ No newline at end of file diff --git a/apps/documenteditor/mobile/locale/it.json b/apps/documenteditor/mobile/locale/it.json index 56ce35afc..53bf12e8f 100644 --- a/apps/documenteditor/mobile/locale/it.json +++ b/apps/documenteditor/mobile/locale/it.json @@ -26,6 +26,7 @@ "textContinuousPage": "Pagina continua", "textCurrentPosition": "Posizione attuale", "textDisplay": "Visualizzare", + "textDone": "Fatto", "textEmptyImgUrl": "Devi specificare l'URL dell'immagine.", "textEvenPage": "Pagina pari", "textFootnote": "Note a piè di pagina", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Immagine dalla libreria", "textPictureFromURL": "Immagine dall'URL", "textPosition": "Posizione", + "textRecommended": "Consigliato", + "textRequired": "Richiesto", "textRightBottom": "In basso a destra", "textRightTop": "In alto a destra", "textRows": "Righe", @@ -61,10 +64,7 @@ "textTableSize": "Dimensione di tabella", "textWithBlueLinks": "Con link blu", "textWithPageNumbers": "Con numeri di pagina", - "txtNotUrl": "Questo campo deve essere un URL nel formato \"http://www.example.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Questo campo deve essere un URL nel formato \"http://www.example.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Riesaminare le modifiche", "textRight": "Allineare a destra", "textShape": "Forma", + "textSharingSettings": "Impostazioni di condivisione", "textShd": "Colore di sfondo", "textSmallCaps": "Maiuscoletto", "textSpacing": "Spaziatura", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Le funzioni Annulla/Ripeti sono disattivate nella modalità rapida di modifica collaborativa.", "textUnderline": "Sottolineato", "textUsers": "Utenti", - "textWidow": "Controllo vedovo", - "textSharingSettings": "Sharing Settings" + "textWidow": "Controllo vedovo" }, "HighlightColorPalette": { "textNoFill": "Nessun riempimento" @@ -184,6 +184,7 @@ "menuDelete": "Eliminare", "menuDeleteTable": "Eliminare tabella", "menuEdit": "Modificare", + "menuEditLink": "Modifica collegamento", "menuJoinList": "Unire all'elenco precedente", "menuMerge": "Unire", "menuMore": "Di più", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Aggiorna intera tabella", "textRefreshPageNumbersOnly": "Aggiorna solo numeri di pagina", "textRows": "Righe", - "txtWarnUrl": "Fare clic su questo collegamento può danneggiare il tuo dispositivo e i tuoi dati.
                Sei sicuro che vuoi continuare?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Fare clic su questo collegamento può danneggiare il tuo dispositivo e i tuoi dati.
                Sei sicuro che vuoi continuare?" }, "Edit": { "notcriticalErrorTitle": "Avvertimento", @@ -247,6 +247,7 @@ "textCurrent": "Attuale", "textCustomColor": "Colore personalizzato", "textDecember": "Dicembre", + "textDeleteLink": "Elimina collegamento", "textDesign": "Design", "textDifferentFirstPage": "Prima pagina diversa", "textDifferentOddAndEvenPages": "Pagine pari e dispari diverse", @@ -319,6 +320,7 @@ "textPictureFromLibrary": "Immagine dalla libreria", "textPictureFromURL": "Immagine dall'URL", "textPt": "pt", + "textRecommended": "Consigliato", "textRefresh": "Aggiorna", "textRefreshEntireTable": "Aggiorna intera tabella", "textRefreshPageNumbersOnly": "Aggiorna solo numeri di pagina", @@ -326,10 +328,10 @@ "textRemoveShape": "Eliminare forma", "textRemoveTable": "Eliminare tabella", "textRemoveTableContent": "Elimina sommario", - "textReorder": "Riordinare", "textRepeatAsHeaderRow": "Ripetere come riga di intestazione", "textReplace": "Sostituire", "textReplaceImage": "Sostituire l'immagine", + "textRequired": "Richiesto", "textResizeToFitContent": "Ridimensionare per adattare il contenuto", "textRightAlign": "Allinea a destra", "textSa": "Sab", @@ -359,6 +361,7 @@ "textTableOfCont": "Indice", "textTableOptions": "Opzioni di tabella", "textText": "Testo", + "textTextWrapping": "Disposizione testo", "textTh": "Gio", "textThrough": "Attraverso", "textTight": "Stretto", @@ -369,14 +372,11 @@ "textType": "Tipo", "textWe": "Mer", "textWrap": "Avvolgere", + "textWrappingStyle": "Stile di disposizione testo", + "textArrange": "Arrange", "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textDeleteImage": "Delete Image" }, "Error": { "convertationTimeoutText": "È stato superato il tempo massimo della conversione.", @@ -390,6 +390,7 @@ "errorDataEncrypted": "Le modifiche crittografate sono state ricevute, non possono essere decifrate.", "errorDataRange": "Intervallo di dati non corretto.", "errorDefaultMessage": "Codice errore: %1", + "errorDirectUrl": "Si prega di verificare il link al documento.
                Questo collegamento deve essere un collegamento diretto al file da scaricare.", "errorEditingDownloadas": "Si è verificato un errore durante il lavoro con il documento.
                Scarica il documento per salvare il backup del file localmente.", "errorEmptyTOC": "Inizia a creare un sommario applicando uno stile di intestazione dalla galleria Stili al testo selezionato.", "errorFilePassProtect": "Il file è protetto da password e non può essere aperto.", @@ -404,6 +405,7 @@ "errorSessionIdle": "Il documento non è stato modificato per molto tempo. Ti preghiamo di ricaricare la pagina.", "errorSessionToken": "La connessione al server è stata interrotta. Ti preghiamo di ricaricare la pagina.", "errorStockChart": "Ordine delle righe incorretto. Per creare un grafico azionario, inserisci i dati sul foglio nel seguente ordine:
                prezzo di apertura, prezzo massimo, prezzo minimo, prezzo di chiusura.", + "errorTextFormWrongFormat": "Il valore inserito non corrisponde al formato del campo.", "errorUpdateVersionOnDisconnect": "La connessione Internet è stata ripristinata e la versione del file è stata modificata.
                Prima di poter continuare a lavorare, devi scaricare il file o copiarne il contenuto per assicurarti che nulla vada perso, quindi ricarica questa pagina.", "errorUserDrop": "Non si può accedere al file al momento.", "errorUsersExceed": "È stato superato il numero degli utenti consentito dalla tariffa", @@ -419,8 +421,13 @@ "uploadImageExtMessage": "Formato d'immagine sconosciuto.", "uploadImageFileCountMessage": "Nessuna immagine caricata.", "uploadImageSizeMessage": "L'immagine è troppo grande. La dimensione massima è 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Caricamento di dati...", @@ -451,11 +458,14 @@ "saveTitleText": "Salvataggio del documento", "sendMergeText": "Invio dei resultati della fusione...", "sendMergeTitle": "Invio dei resultati della fusione", + "textContinue": "Continua", "textLoadingDocument": "Caricamento di documento", + "textUndo": "Annulla", "txtEditingMode": "Impostare la modalità di modifica...", "uploadImageTextText": "Caricamento dell'immagine...", "uploadImageTitleText": "Caricamento dell'immagine", - "waitText": "Attendere prego..." + "waitText": "Attendere prego...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost)." }, "Main": { "criticalErrorTitle": "Errore", diff --git a/apps/documenteditor/mobile/locale/ja.json b/apps/documenteditor/mobile/locale/ja.json index 870a5a7ac..b136d45ac 100644 --- a/apps/documenteditor/mobile/locale/ja.json +++ b/apps/documenteditor/mobile/locale/ja.json @@ -1,6 +1,6 @@ { "About": { - "textAbout": "情報", + "textAbout": "詳細情報", "textAddress": "アドレス", "textBack": "戻る", "textEditor": "ドキュメントエディター", @@ -26,6 +26,7 @@ "textContinuousPage": "現在のページに", "textCurrentPosition": "現在位置", "textDisplay": "表示する", + "textDone": "完了", "textEmptyImgUrl": "イメージのURLを指定すべきです。", "textEvenPage": "偶数ページから開始", "textFootnote": "脚注", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "ライブラリからのイメージ", "textPictureFromURL": "URLからのイメージ", "textPosition": "場所", + "textRecommended": "おすすめ", + "textRequired": "必須", "textRightBottom": "右下", "textRightTop": "右上", "textRows": "行", @@ -61,10 +64,7 @@ "textTableSize": "表のサイズ", "textWithBlueLinks": "ブルーリンク付き", "textWithPageNumbers": "ページ番号付き", - "txtNotUrl": "このフィールドは、「http://www.example.com」の形式のURLである必要があります。", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "このフィールドは、「http://www.example.com」の形式のURLである必要があります。" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "変更の批評", "textRight": "右揃え", "textShape": "形", + "textSharingSettings": "共有設定", "textShd": "背景色", "textSmallCaps": "小型英大文字", "textSpacing": "間隔", @@ -163,8 +164,7 @@ "textTryUndoRedo": "高速で共同な編集モードでは、元に戻す/やり直し機能が無効になります。", "textUnderline": "下線", "textUsers": "ユーザー", - "textWidow": "改ページ時 1 行残して段落を区切らない", - "textSharingSettings": "Sharing Settings" + "textWidow": "改ページ時 1 行残して段落を区切らない" }, "HighlightColorPalette": { "textNoFill": "塗りつぶしなし" @@ -176,7 +176,7 @@ } }, "ContextMenu": { - "errorCopyCutPaste": "コンテキストメニューを使う中コピーしたり切り取り貼り付きたりするの操作がこのファイルだけに実行されます。", + "errorCopyCutPaste": "コンテキストメニューを使用したコピー、切り取り、貼り付けの操作は、現在のファイル内でのみ実行されます。", "menuAddComment": "コメントを追加", "menuAddLink": "リンクを追加", "menuCancel": "キャンセル", @@ -184,6 +184,7 @@ "menuDelete": "削除", "menuDeleteTable": "表を削除する", "menuEdit": "編集する", + "menuEditLink": "リンクの編集", "menuJoinList": "前のリストに結合する", "menuMerge": "結合", "menuMore": "もっと", @@ -197,15 +198,14 @@ "menuViewComment": "コメントを見る", "textCancel": "キャンセル", "textColumns": "列", - "textCopyCutPasteActions": "コピー,切り取り,貼り付けの操作", + "textCopyCutPasteActions": "コピー,切り取り,貼り付け", "textDoNotShowAgain": "再度表示しない", "textNumberingValue": "番号", "textOk": "OK", "textRefreshEntireTable": "テーブル全体を更新する", "textRefreshPageNumbersOnly": "ページ番号のみを更新する", "textRows": "行", - "txtWarnUrl": "このリンクをクリックすると、お使いの端末やデータに悪影響を与える可能性があります。
                本当に続けてよろしいですか?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "このリンクをクリックすると、お使いの端末やデータに悪影響を与える可能性があります。
                本当に続けてよろしいですか?" }, "Edit": { "notcriticalErrorTitle": " 警告", @@ -214,14 +214,15 @@ "textAdditional": "追加", "textAdditionalFormatting": "追加の書式設定", "textAddress": "アドレス", - "textAdvanced": "詳細", + "textAdvanced": "追加情報", "textAdvancedSettings": "詳細設定", - "textAfter": "後に", + "textAfter": "後", "textAlign": "並べる", "textAllCaps": "全ての大字", "textAllowOverlap": "オーバーラップさせる", "textAmountOfLevels": "レベル数", "textApril": "4月", + "textArrange": "整列", "textAugust": "8月", "textAuto": "自動", "textAutomatic": "自動", @@ -238,6 +239,7 @@ "textCancel": "キャンセル", "textCellMargins": "セルの余白", "textCentered": "中央揃え済み", + "textChangeShape": "図形の変更", "textChart": "グラフ", "textClassic": "クラシック", "textClose": "閉じる", @@ -246,7 +248,10 @@ "textCreateTextStyle": "新しいテキストスタイルを作成する", "textCurrent": "現在", "textCustomColor": "ユーザー設定の色", + "textCustomStyle": "カスタムスタイル", "textDecember": "12月", + "textDeleteImage": "画像の削除", + "textDeleteLink": "リンクの削除", "textDesign": "デザイン", "textDifferentFirstPage": "先頭ページのみ別指定", "textDifferentOddAndEvenPages": "奇数/偶数ページ別指定", @@ -319,6 +324,7 @@ "textPictureFromLibrary": "ライブラリからのイメージ", "textPictureFromURL": "URLからのイメージ", "textPt": "pt", + "textRecommended": "おすすめ", "textRefresh": "更新する", "textRefreshEntireTable": "テーブル全体を更新する", "textRefreshPageNumbersOnly": "ページ番号のみを更新する", @@ -326,10 +332,10 @@ "textRemoveShape": "形を削除する", "textRemoveTable": "表を削除する", "textRemoveTableContent": "目次を削除する", - "textReorder": "並べ替え", "textRepeatAsHeaderRow": "ヘッダー行として繰り返す", "textReplace": "置換する", "textReplaceImage": "イメージを置換する", + "textRequired": "必須", "textResizeToFitContent": "内容に合わせてサイズを変更する", "textRightAlign": "右揃え", "textSa": "土", @@ -359,6 +365,7 @@ "textTableOfCont": "目次", "textTableOptions": "表の設定", "textText": "テキスト", + "textTextWrapping": "テキストの折り返し\t", "textTh": "木", "textThrough": "スルー", "textTight": "外周", @@ -369,14 +376,7 @@ "textType": "タイプ", "textWe": "水", "textWrap": "折り返す", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "折り返しの種類" }, "Error": { "convertationTimeoutText": "変換のタイムアウトを超過しました。", @@ -390,10 +390,16 @@ "errorDataEncrypted": "暗号化された変更を受け取りましたが、解読できません。", "errorDataRange": "データの範囲は正しくありません。", "errorDefaultMessage": "エラー コード:%1", + "errorDirectUrl": "ドキュメントへのリンクを確認してください。
                このリンクは、ダウンロード用のファイルへの直接リンクである必要があります。", "errorEditingDownloadas": "文書を操作中にエラーがありました.
                ファイルのバックアップコピーを保存するように文書をダウンロードしてください。", "errorEmptyTOC": "スタイルギャラリーからの見出しスタイルを選択したテキストに適用して、目次の作成を開始します", "errorFilePassProtect": "ファイルはパスワードで保護されており、開けませんでした。", "errorFileSizeExceed": "ファイルのサイズがサーバの制限を超過します。アドミニストレータを連絡してください。", + "errorInconsistentExt": "ファイルを開くときにエラーが発生しました。
                ファイルの内容がファイルの拡張子と一致しません。", + "errorInconsistentExtDocx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はドキュメント (docx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "errorInconsistentExtPdf": "ファイルを開くときにエラーが発生しました。
                ファイルの内容は次のいずれかの形式に対応しています: pdf/djvu/xps/oxps が、ファイルの拡張子が一致していません: %1", + "errorInconsistentExtPptx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はプレゼンテーション (pptx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "errorInconsistentExtXlsx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はスプレッドシート (xlsx など) に対応していますが、ファイルの拡張子が一致していません: %1", "errorKeyEncrypt": "不明なキーの記述子", "errorKeyExpire": "キーの記述子の有効期間が満期した", "errorLoadingFont": "フォントがダウンロードしませんでした。
                文書のサーバのアドミ二ストレータを連絡してください。", @@ -405,6 +411,8 @@ "errorSessionToken": "サーバの接続が中断されました。ページを再びお読み込みしてください。", "errorStockChart": "行の順序が正しくありません。株価チャートを作るようにシートにこのようにデータを配置してください:
                始値、最高価格、最小価格、終値。", "errorTextFormWrongFormat": "入力された値がフィールドのフォーマットと一致しません。", + "errorToken": "ドキュメントセキュリティトークンが正しく形成されていません。
                ドキュメントサーバーの管理者にご連絡ください。", + "errorTokenExpire": "ドキュメントセキュリティトークンの有効期限が切れています。
                ドキュメントサーバーの管理者に連絡してください。", "errorUpdateVersionOnDisconnect": "インターネット接続が復旧し、ファイルのバージョンが更新されています。
                作業を継続する前に、ファイルをダウンロードするか内容をコピーして変更が失われていないことを確認してから、このページを再読み込みしてください。", "errorUserDrop": "今、ファイルにアクセスすることはできません。", "errorUsersExceed": "料金プランで許可されているユーザー数を超えました。", @@ -419,12 +427,12 @@ "unknownErrorText": "不明なエラー", "uploadImageExtMessage": "不明なイメージの形式", "uploadImageFileCountMessage": "アップロードしたイメージがない", - "uploadImageSizeMessage": "イメージのサイズの上限が超えさせました。サイズの上限が25MB。", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "イメージのサイズの上限が超えさせました。サイズの上限が25MB。" }, "LongActions": { "applyChangesTextText": "データの読み込み中...", "applyChangesTitleText": "データの読み込み中", + "confirmMaxChangesSize": "アクションのサイズがサーバーに設定された制限を超えています。
                「元に戻す」ボタンを押して最後のアクションをキャンセルするか、「続ける」を押してローカルにアクションを維持してください(何も失われないことを確認するために、ファイルをダウンロードするか、その内容をコピーする必要があります)。", "downloadMergeText": "ダウンロード中...", "downloadMergeTitle": "ダウンロード中", "downloadTextText": "文書のダウンロード中...", @@ -451,7 +459,9 @@ "saveTitleText": "文書を保存中", "sendMergeText": "結合の結果の送信中...", "sendMergeTitle": "結合の結果の送信中", + "textContinue": "続ける", "textLoadingDocument": "文書の読み込み中", + "textUndo": "元に戻す", "txtEditingMode": "編集モードを設定します...", "uploadImageTextText": "イメージのアップロード中...", "uploadImageTitleText": "イメージのアップロード中", @@ -468,7 +478,7 @@ "notcriticalErrorTitle": " 警告", "SDK": { " -Section ": "-セクション", - "above": "上に", + "above": "上", "below": "下に", "Caption": "標題", "Choose an item": "アイテムを選択してください", @@ -562,7 +572,7 @@ "advTxtOptions": "TXTオプションを選択する", "closeButtonText": "ファイルを閉じる", "notcriticalErrorTitle": " 警告", - "textAbout": "情報", + "textAbout": "詳細情報", "textApplication": "アプリ", "textApplicationSettings": "アプリ設定", "textAuthor": "作成者", diff --git a/apps/documenteditor/mobile/locale/ko.json b/apps/documenteditor/mobile/locale/ko.json index 2966ca58e..79c2247ae 100644 --- a/apps/documenteditor/mobile/locale/ko.json +++ b/apps/documenteditor/mobile/locale/ko.json @@ -305,7 +305,6 @@ "textRemoveChart": "차트 제거", "textRemoveShape": "도형 제거", "textRemoveTable": "표 제거", - "textReorder": "재정렬", "textRepeatAsHeaderRow": "헤더 행으로 반복", "textReplace": "바꾸기", "textReplaceImage": "이미지 바꾸기", @@ -341,12 +340,14 @@ "textWe": "수요일", "textWrap": "줄 바꾸기", "textAmountOfLevels": "Amount of Levels", + "textArrange": "Arrange", "textCancel": "Cancel", "textCentered": "Centered", "textChangeShape": "Change Shape", "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textDistinctive": "Distinctive", @@ -375,7 +376,6 @@ "textTableOfCont": "TOC", "textTextWrapping": "Text Wrapping", "textTitle": "Title", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -419,8 +419,15 @@ "uploadImageSizeMessage": "이미지 크기 제한을 초과했습니다.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "데이터로드 중 ...", @@ -455,7 +462,10 @@ "txtEditingMode": "편집 모드 설정 ...", "uploadImageTextText": "이미지 업로드 중 ...", "uploadImageTitleText": "이미지 업로드 중", - "waitText": "잠시만 기다려주세요..." + "waitText": "잠시만 기다려주세요...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "오류", diff --git a/apps/documenteditor/mobile/locale/lo.json b/apps/documenteditor/mobile/locale/lo.json index 1eaca229b..29fe14dcc 100644 --- a/apps/documenteditor/mobile/locale/lo.json +++ b/apps/documenteditor/mobile/locale/lo.json @@ -305,7 +305,6 @@ "textRemoveChart": "ລົບແຜນວາດ", "textRemoveShape": "ລົບຮ່າງ", "textRemoveTable": "ລົບຕາຕະລາງ", - "textReorder": "ຈັດຮຽງໃໝ່", "textRepeatAsHeaderRow": "ເຮັດລື້ມຄືນ ຕາມ ແຖວຫົວເລື່ອງ", "textReplace": "ປ່ຽນແທນ", "textReplaceImage": "ປ່ຽນແທນຮູບ", @@ -341,12 +340,14 @@ "textWe": "ພວກເຮົາ", "textWrap": "ຫໍ່", "textAmountOfLevels": "Amount of Levels", + "textArrange": "Arrange", "textCancel": "Cancel", "textCentered": "Centered", "textChangeShape": "Change Shape", "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textDistinctive": "Distinctive", @@ -375,7 +376,6 @@ "textTableOfCont": "TOC", "textTextWrapping": "Text Wrapping", "textTitle": "Title", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -419,8 +419,15 @@ "uploadImageSizeMessage": "ຮູບພາບໃຫຍ່ເກີນໄປ. ຂະຫນາດສູງສຸດແມ່ນ 25 MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "ກຳລັງດາວໂຫຼດຂໍ້ມູນ...", @@ -455,7 +462,10 @@ "txtEditingMode": "ຕັ້ງຄ່າຮູບແບບການແກ້ໄຂ...", "uploadImageTextText": "ກໍາລັງອັບໂຫລດຮູບພາບ...", "uploadImageTitleText": "ກໍາລັງອັບໂຫລດຮູບພາບ", - "waitText": "ກະລຸນາລໍຖ້າ..." + "waitText": "ກະລຸນາລໍຖ້າ...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "ຂໍ້ຜິດພາດ", diff --git a/apps/documenteditor/mobile/locale/lv.json b/apps/documenteditor/mobile/locale/lv.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/lv.json +++ b/apps/documenteditor/mobile/locale/lv.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/ms.json b/apps/documenteditor/mobile/locale/ms.json index 60a3a4f48..e523da3ae 100644 --- a/apps/documenteditor/mobile/locale/ms.json +++ b/apps/documenteditor/mobile/locale/ms.json @@ -326,7 +326,6 @@ "textRemoveShape": "Alih Keluar Bentuk", "textRemoveTable": "Alih Keluar Jadual", "textRemoveTableContent": "Alih keluar senarai kandungan", - "textReorder": "Order Semula", "textRepeatAsHeaderRow": "Ulang sebagai Baris Pengepala", "textReplace": "Gantikan", "textReplaceImage": "Gantikan Imej", @@ -368,14 +367,15 @@ "textType": "Jenis", "textWe": "Kami", "textWrap": "Balut", + "textArrange": "Arrange", "textChangeShape": "Change Shape", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textRecommended": "Recommended", "textRequired": "Required", "textTableOfCont": "TOC", "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -420,7 +420,14 @@ "uploadImageFileCountMessage": "Tiada Imej dimuat naik.", "uploadImageSizeMessage": "Imej terlalu besar. Saiz maksimum adalah 25 MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Data dimuatkan…", @@ -455,7 +462,10 @@ "txtEditingMode": "Tetapkan mod pengeditan…", "uploadImageTextText": "Imej dimuat naik…", "uploadImageTitleText": "Imej dimuat naik", - "waitText": "Sila, tunggu…" + "waitText": "Sila, tunggu…", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Ralat", diff --git a/apps/documenteditor/mobile/locale/nb.json b/apps/documenteditor/mobile/locale/nb.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/nb.json +++ b/apps/documenteditor/mobile/locale/nb.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/nl.json b/apps/documenteditor/mobile/locale/nl.json index 62ace6dde..5b7078f60 100644 --- a/apps/documenteditor/mobile/locale/nl.json +++ b/apps/documenteditor/mobile/locale/nl.json @@ -289,7 +289,6 @@ "textRemoveChart": "Grafiek verwijderen", "textRemoveShape": "Vorm verwijderen", "textRemoveTable": "Tabel verwijderen", - "textReorder": "Opnieuw ordenen", "textRepeatAsHeaderRow": "Als koprij herhalen", "textReplace": "Vervangen", "textReplaceImage": "Afbeelding vervangen", @@ -320,6 +319,7 @@ "textWrap": "Wikkel", "textAmountOfLevels": "Amount of Levels", "textApril": "April", + "textArrange": "Arrange", "textAugust": "August", "textCancel": "Cancel", "textCentered": "Centered", @@ -327,6 +327,7 @@ "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDecember": "December", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", @@ -375,7 +376,6 @@ "textTitle": "Title", "textTu": "Tu", "textWe": "We", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -419,8 +419,15 @@ "uploadImageSizeMessage": "De afbeelding is te groot. De maximale grootte is 25MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Gegevens worden geladen...", @@ -455,7 +462,10 @@ "txtEditingMode": "Bewerkmodus instellen...", "uploadImageTextText": "Afbeelding wordt geüpload...", "uploadImageTitleText": "Afbeelding wordt geüpload", - "waitText": "Een moment geduld..." + "waitText": "Een moment geduld...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Fout", diff --git a/apps/documenteditor/mobile/locale/pl.json b/apps/documenteditor/mobile/locale/pl.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/pl.json +++ b/apps/documenteditor/mobile/locale/pl.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/pt-pt.json b/apps/documenteditor/mobile/locale/pt-pt.json index 9279c69d4..7a99cdfa2 100644 --- a/apps/documenteditor/mobile/locale/pt-pt.json +++ b/apps/documenteditor/mobile/locale/pt-pt.json @@ -247,6 +247,7 @@ "textCreateTextStyle": "Criar novo estilo de texto", "textCurrent": "Atual", "textCustomColor": "Cor personalizada", + "textCustomStyle": "Estilo personalizado", "textDecember": "dezembro", "textDeleteImage": "Eliminar imagem", "textDeleteLink": "Eliminar ligação", @@ -330,7 +331,6 @@ "textRemoveShape": "Remover forma", "textRemoveTable": "Remover tabela", "textRemoveTableContent": "Remover índice remissivo", - "textReorder": "Reordenar", "textRepeatAsHeaderRow": "Repetir como linha de cabeçalho", "textReplace": "Substituir", "textReplaceImage": "Substituir imagem", @@ -376,7 +376,7 @@ "textWe": "qua", "textWrap": "Moldar", "textWrappingStyle": "Estilo de moldagem", - "textCustomStyle": "Custom Style" + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Excedeu o tempo limite de conversão.", @@ -420,7 +420,14 @@ "unknownErrorText": "Erro desconhecido.", "uploadImageExtMessage": "Formato de imagem desconhecido.", "uploadImageFileCountMessage": "Nenhuma imagem foi carregada.", - "uploadImageSizeMessage": "A imagem é muito grande. O tamanho máximo é de 25 MB." + "uploadImageSizeMessage": "A imagem é muito grande. O tamanho máximo é de 25 MB.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "A carregar dados...", @@ -455,7 +462,10 @@ "txtEditingMode": "Definir modo de edição…", "uploadImageTextText": "A carregar imagem...", "uploadImageTitleText": "A carregar imagem", - "waitText": "Aguarde..." + "waitText": "Aguarde...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Erro", diff --git a/apps/documenteditor/mobile/locale/pt.json b/apps/documenteditor/mobile/locale/pt.json index 5f03ead3a..47c113253 100644 --- a/apps/documenteditor/mobile/locale/pt.json +++ b/apps/documenteditor/mobile/locale/pt.json @@ -26,6 +26,7 @@ "textContinuousPage": "Página contínua", "textCurrentPosition": "Posição Atual", "textDisplay": "Exibir", + "textDone": "Concluído", "textEmptyImgUrl": "Você precisa especificar uma URL de imagem.", "textEvenPage": "Página par", "textFootnote": "Nota de rodapé", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Imagem da biblioteca", "textPictureFromURL": "Imagem da URL", "textPosition": "Posição", + "textRecommended": "Recomendado", + "textRequired": "Necessário", "textRightBottom": "Parte inferior direita", "textRightTop": "Parte superior direita", "textRows": "Linhas", @@ -61,10 +64,7 @@ "textTableSize": "Tamanho da tabela", "textWithBlueLinks": "Com links azuis", "textWithPageNumbers": "Com números de página", - "txtNotUrl": "Este campo deve ser uma URL no formato \"http://www.example.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Este campo deve ser uma URL no formato \"http://www.example.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Rever Alterações", "textRight": "Alinhar à direita", "textShape": "Forma", + "textSharingSettings": "Configurações de compartilhamento", "textShd": "Cor do plano de fundo", "textSmallCaps": "Versalete", "textSpacing": "Espaçamento", @@ -163,8 +164,7 @@ "textTryUndoRedo": "As funções Desfazer/Refazer estão desabilitadas para o modo de coedição rápido", "textUnderline": "Sublinhado", "textUsers": "Usuários", - "textWidow": "Controle de linhas órfãs/viúvas.", - "textSharingSettings": "Sharing Settings" + "textWidow": "Controle de linhas órfãs/viúvas." }, "HighlightColorPalette": { "textNoFill": "Sem preenchimento" @@ -184,6 +184,7 @@ "menuDelete": "Excluir", "menuDeleteTable": "Excluir tabela", "menuEdit": "Editar", + "menuEditLink": "Editar Link", "menuJoinList": "Junta-se à lista anterior", "menuMerge": "Mesclar", "menuMore": "Mais", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Atualizar tabela inteira", "textRefreshPageNumbersOnly": "Atualizar apenas números de página", "textRows": "Linhas", - "txtWarnUrl": "Clicar neste link pode ser prejudicial ao seu dispositivo e dados.
                Você tem certeza de que quer continuar?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Clicar neste link pode ser prejudicial ao seu dispositivo e dados.
                Você tem certeza de que quer continuar?" }, "Edit": { "notcriticalErrorTitle": "Aviso", @@ -222,6 +222,7 @@ "textAllowOverlap": "Permitir sobreposição", "textAmountOfLevels": "Quantidade de níveis", "textApril": "Abril", + "textArrange": "Organizar", "textAugust": "Agosto", "textAuto": "Automático", "textAutomatic": "Automático", @@ -238,6 +239,7 @@ "textCancel": "Cancelar", "textCellMargins": "Margens da célula", "textCentered": "Centralizado", + "textChangeShape": "Mudar forma", "textChart": "Gráfico", "textClassic": "Clássico", "textClose": "Fechar", @@ -246,7 +248,10 @@ "textCreateTextStyle": "Criar um novo estilo de texto", "textCurrent": "Atual", "textCustomColor": "Cor personalizada", + "textCustomStyle": "Estilo personalizado", "textDecember": "Dezembro", + "textDeleteImage": "Eliminar imagem", + "textDeleteLink": "Excluir Link", "textDesign": "Design", "textDifferentFirstPage": "Primeira página diferente", "textDifferentOddAndEvenPages": "Páginas pares e ímpares diferentes", @@ -319,6 +324,7 @@ "textPictureFromLibrary": "Imagem da biblioteca", "textPictureFromURL": "Imagem da URL", "textPt": "Pt", + "textRecommended": "Recomendado", "textRefresh": "Atualizar", "textRefreshEntireTable": "Atualizar tabela inteira", "textRefreshPageNumbersOnly": "Atualizar apenas números de página", @@ -326,10 +332,10 @@ "textRemoveShape": "Remover forma", "textRemoveTable": "Remover tabela", "textRemoveTableContent": "Excluir tabela de conteúdo", - "textReorder": "Reordenar", "textRepeatAsHeaderRow": "Repetir como linha de cabeçalho", "textReplace": "Substituir", "textReplaceImage": "Substituir imagem", + "textRequired": "Necessário", "textResizeToFitContent": "Redimensionar para ajustar o conteúdo", "textRightAlign": "Alinhar à direita", "textSa": "Sáb", @@ -359,6 +365,7 @@ "textTableOfCont": "Índice", "textTableOptions": "Opções de tabela", "textText": "Тexto", + "textTextWrapping": "Disposição do texto", "textTh": "Qui.", "textThrough": "Através", "textTight": "Justo", @@ -369,14 +376,7 @@ "textType": "Tipo", "textWe": "Qua", "textWrap": "Encapsulamento", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Estilo da quebra" }, "Error": { "convertationTimeoutText": "Tempo limite de conversão excedido.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Alteração criptografadas foram recebidas, e não podem ser decifradas.", "errorDataRange": "Intervalo de dados incorreto.", "errorDefaultMessage": "Código do erro: %1", + "errorDirectUrl": "Por favor, verifique o link para o documento.
                Este link deve ser o link direto para baixar o arquivo.", "errorEditingDownloadas": "Ocorreu um erro durante o trabalho com o documento.
                Baixe o documento para salvar a cópia de backup do arquivo localmente.", "errorEmptyTOC": "Comece a criar um sumário aplicando um estilo de título da galeria Estilos ao texto selecionado.", "errorFilePassProtect": "O arquivo é protegido por senha e não pôde ser aberto.", "errorFileSizeExceed": "O tamanho do arquivo excede o limite de seu servidor.
                Por favor, contate seu administrador.", + "errorInconsistentExt": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo não corresponde à extensão do arquivo.", + "errorInconsistentExtDocx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a documentos de texto (por exemplo, docx), mas o arquivo tem a extensão inconsistente: %1.", + "errorInconsistentExtPdf": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas o arquivo tem a extensão inconsistente: %1.", + "errorInconsistentExtPptx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a apresentações (por exemplo, pptx), mas o arquivo tem a extensão inconsistente: %1.", + "errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a planilhas (por exemplo, xlsx), mas o arquivo tem a extensão inconsistente: %1.", "errorKeyEncrypt": "Descritor de chave desconhecido", "errorKeyExpire": "Descritor de chave expirado", "errorLoadingFont": "As fontes não foram carregadas.
                Entre em contato com o administrador do Document Server.", @@ -405,6 +411,8 @@ "errorSessionToken": "A conexão com o servidor foi interrompida. Por favor recarregue a página.", "errorStockChart": "Ordem incorreta das linhas. Para construir um gráfico de ações, coloque os dados na folha na seguinte ordem:
                preço de abertura, preço máximo, preço mínimo, preço de fechamento.", "errorTextFormWrongFormat": "O valor inserido não corresponde ao formato do campo.", + "errorToken": "O token de segurança do documento não foi formado corretamente.
                Entre em contato com o administrador do Document Server.", + "errorTokenExpire": "O token de segurança do documento expirou.
                Entre em contato com o administrador do Document Server.", "errorUpdateVersionOnDisconnect": "A conexão à internet foi restabelecida, e a versão do arquivo foi alterada.
                Antes de continuar seu trabalho, transfira o arquivo ou copie seu conteúdo para assegurar que nada seja perdido, e então, recarregue esta página.", "errorUserDrop": "O arquivo não pode ser acessado no momento.", "errorUsersExceed": "O número de usuários permitidos pelo plano de preços foi excedido", @@ -419,12 +427,12 @@ "unknownErrorText": "Erro desconhecido.", "uploadImageExtMessage": "Formato de imagem desconhecido.", "uploadImageFileCountMessage": "Sem imagens carregadas.", - "uploadImageSizeMessage": "Tamanho limite máximo da imagem excedido. O tamanho máximo é de 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "uploadImageSizeMessage": "Tamanho limite máximo da imagem excedido. O tamanho máximo é de 25 MB." }, "LongActions": { "applyChangesTextText": "Carregando dados...", "applyChangesTitleText": "Carregando dados", + "confirmMaxChangesSize": "O tamanho das ações excede a limitação definida para seu servidor.
                Pressione \"Desfazer\" para cancelar sua última ação ou pressione \"Continue\" para manter a ação localmente (você precisa baixar o arquivo ou copiar seu conteúdo para garantir que nada seja perdido).", "downloadMergeText": "Baixando...", "downloadMergeTitle": "Baixando", "downloadTextText": "Baixando documento...", @@ -451,7 +459,9 @@ "saveTitleText": "Salvando documento", "sendMergeText": "Enviando mesclar...", "sendMergeTitle": "Enviando Mesclar", + "textContinue": "Continuar", "textLoadingDocument": "Carregando documento", + "textUndo": "Desfazer", "txtEditingMode": "Definir modo de edição...", "uploadImageTextText": "Carregando imagem...", "uploadImageTitleText": "Carregando imagem", diff --git a/apps/documenteditor/mobile/locale/ro.json b/apps/documenteditor/mobile/locale/ro.json index b5afbb8eb..850488bce 100644 --- a/apps/documenteditor/mobile/locale/ro.json +++ b/apps/documenteditor/mobile/locale/ro.json @@ -26,6 +26,7 @@ "textContinuousPage": "Continuu", "textCurrentPosition": "Poziția curentă", "textDisplay": "Afișare", + "textDone": "Gata", "textEmptyImgUrl": "Trebuie specificată adresa URL a imaginii.", "textEvenPage": "Pagină pară", "textFootnote": "Notă de subsol", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Imagine dintr-o bibliotecă ", "textPictureFromURL": "Imaginea prin URL", "textPosition": "Poziție", + "textRecommended": "Recomandate", + "textRequired": "Obligatoriu", "textRightBottom": "Dreapta jos", "textRightTop": "Dreapta sus", "textRows": "Rânduri", @@ -61,10 +64,7 @@ "textTableSize": "Dimensiune tabel", "textWithBlueLinks": "Cu linkuri albastre", "textWithPageNumbers": "Cu numere de pagină", - "txtNotUrl": "Câmpul trebuie să conțină adresa URL in format \"http://www.example.com\"", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "Câmpul trebuie să conțină adresa URL in format \"http://www.example.com\"" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "Revizuire modificări", "textRight": "Aliniere la dreapta", "textShape": "Forma", + "textSharingSettings": "Setări partajare", "textShd": "Culoare de fundal", "textSmallCaps": "Majuscule reduse", "textSpacing": "Spațiere", @@ -163,8 +164,7 @@ "textTryUndoRedo": "Funcții Anulare/Refacere sunt dezactivate în modul Rapid de editare colaborativă.", "textUnderline": "Subliniat", "textUsers": "Utilizatori", - "textWidow": "Control văduvă", - "textSharingSettings": "Sharing Settings" + "textWidow": "Control văduvă" }, "HighlightColorPalette": { "textNoFill": "Fără umplere" @@ -184,6 +184,7 @@ "menuDelete": "Șterge", "menuDeleteTable": "Ștergere tabel", "menuEdit": "Editare", + "menuEditLink": "Editare link", "menuJoinList": "Continuare de la lista precedentă", "menuMerge": "Îmbinare", "menuMore": "Mai multe", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "Reîmprospătarea întregului tabel", "textRefreshPageNumbersOnly": "Actualizare numai numere de pagină", "textRows": "Rânduri", - "txtWarnUrl": "Un clic pe acest link ar putea căuza daune dispozitivului și datelor dvs.
                Sunteți sigur că doriți să continuați?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "Un clic pe acest link ar putea căuza daune dispozitivului și datelor dvs.
                Sunteți sigur că doriți să continuați?" }, "Edit": { "notcriticalErrorTitle": "Avertisment", @@ -222,6 +222,7 @@ "textAllowOverlap": "Se permite suprapunerea", "textAmountOfLevels": "Număr de niveluri", "textApril": "Aprilie", + "textArrange": "Aranjare", "textAugust": "August", "textAuto": "Auto", "textAutomatic": "Automat", @@ -238,6 +239,7 @@ "textCancel": "Anulare", "textCellMargins": "Margini de celulă", "textCentered": "Centrat", + "textChangeShape": "Modificare formă", "textChart": "Diagramă", "textClassic": "Clasic", "textClose": "Închide", @@ -246,7 +248,10 @@ "textCreateTextStyle": "Crearea unui nou stil de text", "textCurrent": "Curent", "textCustomColor": "Culoare particularizată", + "textCustomStyle": "Stil particularizat", "textDecember": "Decembrie", + "textDeleteImage": "Ștergere imagine", + "textDeleteLink": "Ștergere link", "textDesign": "Proiectare", "textDifferentFirstPage": "Prima pagina diferită", "textDifferentOddAndEvenPages": "Pagini pare și impare diferite", @@ -319,6 +324,7 @@ "textPictureFromLibrary": "Imagine dintr-o bibliotecă ", "textPictureFromURL": "Imaginea prin URL", "textPt": "pt", + "textRecommended": "Recomandate", "textRefresh": "Actualizare", "textRefreshEntireTable": "Reîmprospătarea întregului tabel", "textRefreshPageNumbersOnly": "Actualizare numai numere de pagină", @@ -326,10 +332,10 @@ "textRemoveShape": "Stergere forma", "textRemoveTable": "Ștergere tabel", "textRemoveTableContent": "Eliminare cuprins", - "textReorder": "Reordonare", "textRepeatAsHeaderRow": "Repetare rânduri antet", "textReplace": "Înlocuire", "textReplaceImage": "Înlocuire imagine", + "textRequired": "Obligatoriu", "textResizeToFitContent": "Potrivire conținut", "textRightAlign": "Aliniere la dreapta", "textSa": "S", @@ -359,6 +365,7 @@ "textTableOfCont": "TOC", "textTableOptions": "Opțiuni tabel", "textText": "Text", + "textTextWrapping": "Incadrare text", "textTh": "J", "textThrough": "Printre", "textTight": "Strâns", @@ -369,14 +376,7 @@ "textType": "Tip", "textWe": "Mi", "textWrap": "Încadrare", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Stil de încadrare" }, "Error": { "convertationTimeoutText": "Timpul de așteptare pentru conversie a expirat.", @@ -390,10 +390,16 @@ "errorDataEncrypted": "Modificările primite sunt criptate, decriptarea este imposibilă.", "errorDataRange": "Zonă de date incorectă.", "errorDefaultMessage": "Codul de eroare: %1", + "errorDirectUrl": "Verificați linkul la document.
                Trebuie să fie un link direct spre fișierul de încărcat.", "errorEditingDownloadas": "S-a produs o eroare în timpul editării documentului.
                Încărcați documentul pentru copierea de rezervă locală. ", "errorEmptyTOC": "Începeți să creați un cuprins prin aplicarea stilurilor de titlu din Galeria de stiluri la textul selectat.", "errorFilePassProtect": "Fișierul este protejat cu parolă și deaceea nu poate fi deschis.", "errorFileSizeExceed": "Dimensiunea fișierului depășește limita permisă de serverul Dvs.
                Pentru detalii, contactați administratorul dvs.", + "errorInconsistentExt": "Eroare la deschiderea fișierului.
                Conținutul fișierului nu corespunde cu extensia numelui de fișier.", + "errorInconsistentExtDocx": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unui format de document text (ex. docx), dar extensia numelui de fișier nu se potrivește: %1.", + "errorInconsistentExtPdf": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unuia dintre următoarele formate: pdf/djvu/xps/oxps, dar extensia numelui de fișier nu se potrivește: %1.", + "errorInconsistentExtPptx": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unui format de prezentare (ex. pptx), dar extensia numelui de fișier nu se potrivește: %1.", + "errorInconsistentExtXlsx": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unui format de foaie de calcul (ex. xlsx), dar extensia numelui de fișier nu se potrivește: %1.", "errorKeyEncrypt": "Descriptor cheie nerecunoscut", "errorKeyExpire": "Descriptor cheie a expirat", "errorLoadingFont": "Fonturile nu sunt încărcate.
                Contactați administratorul dvs de Server Documente.", @@ -404,6 +410,9 @@ "errorSessionIdle": "Acțiunile de editare a documentului nu s-au efectuat de ceva timp. Încercați să reîmprospătați pagina.", "errorSessionToken": "Conexeunea la server s-a întrerupt. Încercați să reîmprospătati pagina.", "errorStockChart": "Sortarea rândurilor în ordinea incorectă. Pentru crearea unei diagrame de stoc, datele în foaie trebuie sortate în ordinea următoare:
                prețul de deschidere, prețul maxim, prețul minim, prețul de închidere.", + "errorTextFormWrongFormat": "Ați introdus o valoare care nu corespunde cu formatul câmpului.", + "errorToken": "Token de securitate din document este format în mod incorect.
                Contactați administratorul dvs. de Server Documente.", + "errorTokenExpire": "Token de securitate din document a expirat.
                Contactați administratorul dvs. de Server Documente.", "errorUpdateVersionOnDisconnect": "Conexiunea s-a restabilit și versiunea fișierului s-a schimbat.
                Înainte de a continua, fișierul trebuie descărcat sau conținutul fișierului copiat ca să vă asigurați că nimic nu e pierdut, apoi reîmprospătați această pagină.", "errorUserDrop": "Fișierul nu poate fi accesat deocamdată.", "errorUsersExceed": "Limita de utilizatori stipulată de planul tarifar a fost depășită", @@ -418,13 +427,12 @@ "unknownErrorText": "Eroare necunoscută.", "uploadImageExtMessage": "Format de imagine nerecunoscut.", "uploadImageFileCountMessage": "Nicio imagine nu a fost încărcată.", - "uploadImageSizeMessage": "Imaginea este prea mare. Limita de dimensiune este de 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "uploadImageSizeMessage": "Imaginea este prea mare. Limita de dimensiune este de 25 MB." }, "LongActions": { "applyChangesTextText": "Încărcarea datelor...", "applyChangesTitleText": "Încărcare date", + "confirmMaxChangesSize": "Numărul comenzilor depășește limita prevăzută pentru serverul dvs.
                Apăsați butonul Anulare pentru a anula ultima comanda dvs. sau apăsați butonul Continuare pentru a executa comanda în mod local (încărcați fișierul sau copiați conținutul pentru a se asigura că nu se pierde nimic).", "downloadMergeText": "Progres descărcare...", "downloadMergeTitle": "Progres descărcare", "downloadTextText": "Descărcarea documentului...", @@ -451,7 +459,9 @@ "saveTitleText": "Salvare document", "sendMergeText": "Trimitere îmbinare a corespondenței...", "sendMergeTitle": "Trimitere îmbinare a corespondenței ", + "textContinue": "Continuare", "textLoadingDocument": "Încărcare document", + "textUndo": "Anulare", "txtEditingMode": "Setare modul de editare...", "uploadImageTextText": "Încărcarea imaginii...", "uploadImageTitleText": "Încărcarea imaginii", @@ -619,6 +629,7 @@ "textMargins": "Margini", "textMarginsH": "Marginile sus și jos sunt prea ridicate pentru această pagină", "textMarginsW": "Marginile stânga și dreapta sunt prea late pentru această pagină", + "textMobileView": "Vizualizare mobilă", "textNavigation": "Navigare", "textNo": "Nu", "textNoCharacters": "Caractere neimprimate", @@ -682,8 +693,7 @@ "txtScheme6": "Concurență", "txtScheme7": "Echilibru", "txtScheme8": "Flux", - "txtScheme9": "Forjă", - "textMobileView": "Mobile View" + "txtScheme9": "Forjă" }, "Toolbar": { "dlgLeaveMsgText": "Nu ați salvat modificările din documentul. Faceți clic pe Rămâi în pagină și așteptați la salvare automată. Faceți clic pe Părăsește aceasta pagina ca să renunțați la toate modificările nesalvate.", @@ -691,7 +701,7 @@ "leaveButtonText": "Părăsește această pagina", "stayButtonText": "Rămâi în pagină", "textOk": "OK", - "textSwitchedMobileView": "Switched to Mobile view", - "textSwitchedStandardView": "Switched to Standard view" + "textSwitchedMobileView": "Comutat la vizualizarea mobilă", + "textSwitchedStandardView": "Comutat la vizualizarea standard" } } \ No newline at end of file diff --git a/apps/documenteditor/mobile/locale/ru.json b/apps/documenteditor/mobile/locale/ru.json index 10cdb36ad..d2a328f30 100644 --- a/apps/documenteditor/mobile/locale/ru.json +++ b/apps/documenteditor/mobile/locale/ru.json @@ -222,6 +222,7 @@ "textAllowOverlap": "Разрешить перекрытие", "textAmountOfLevels": "Количество уровней", "textApril": "Апрель", + "textArrange": "Порядок", "textAugust": "Август", "textAuto": "Авто", "textAutomatic": "Автоматический", @@ -247,6 +248,7 @@ "textCreateTextStyle": "Создать новый стиль текста", "textCurrent": "Текущий", "textCustomColor": "Пользовательский цвет", + "textCustomStyle": "Пользовательский стиль", "textDecember": "Декабрь", "textDeleteImage": "Удалить рисунок", "textDeleteLink": "Удалить ссылку", @@ -330,7 +332,6 @@ "textRemoveShape": "Удалить фигуру", "textRemoveTable": "Удалить таблицу", "textRemoveTableContent": "Удалить оглавление", - "textReorder": "Порядок", "textRepeatAsHeaderRow": "Повторять как заголовок", "textReplace": "Заменить", "textReplaceImage": "Заменить рисунок", @@ -375,8 +376,7 @@ "textType": "Тип", "textWe": "Ср", "textWrap": "Стиль обтекания", - "textWrappingStyle": "Стиль обтекания", - "textCustomStyle": "Custom Style" + "textWrappingStyle": "Стиль обтекания" }, "Error": { "convertationTimeoutText": "Превышено время ожидания конвертации.", @@ -395,6 +395,11 @@ "errorEmptyTOC": "Начните создавать оглавление, применив к выделенному тексту стиль заголовка из галереи Стилей.", "errorFilePassProtect": "Файл защищен паролем и не может быть открыт.", "errorFileSizeExceed": "Размер файла превышает ограничение, установленное для вашего сервера.
                Пожалуйста, обратитесь к администратору.", + "errorInconsistentExt": "При открытии файла произошла ошибка.
                Содержимое файла не соответствует расширению файла.", + "errorInconsistentExtDocx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует документам (например, docx), но файл имеет несоответствующее расширение: %1.", + "errorInconsistentExtPdf": "При открытии файла произошла ошибка.
                Содержимое файла соответствует одному из следующих форматов: pdf/djvu/xps/oxps, но файл имеет несоответствующее расширение: %1.", + "errorInconsistentExtPptx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует презентациям (например, pptx), но файл имеет несоответствующее расширение: %1.", + "errorInconsistentExtXlsx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует электронным таблицам (например, xlsx), но файл имеет несоответствующее расширение: %1.", "errorKeyEncrypt": "Неизвестный дескриптор ключа", "errorKeyExpire": "Срок действия дескриптора ключа истек", "errorLoadingFont": "Шрифты не загружены.
                Пожалуйста, обратитесь к администратору Сервера документов.", @@ -406,6 +411,8 @@ "errorSessionToken": "Подключение к серверу было прервано. Пожалуйста, обновите страницу.", "errorStockChart": "Неверный порядок строк. Чтобы создать биржевую диаграмму, расположите данные на листе в следующем порядке:
                цена открытия, максимальная цена, минимальная цена, цена закрытия.", "errorTextFormWrongFormat": "Введенное значение не соответствует формату поля.", + "errorToken": "Токен безопасности документа имеет неправильный формат.
                Пожалуйста, обратитесь к администратору Сервера документов.", + "errorTokenExpire": "Истек срок действия токена безопасности документа.
                Пожалуйста, обратитесь к администратору Сервера документов.", "errorUpdateVersionOnDisconnect": "Соединение было восстановлено, и версия файла изменилась.
                Прежде чем продолжить работу, надо скачать файл или скопировать его содержимое, чтобы обеспечить сохранность данных, а затем перезагрузить страницу.", "errorUserDrop": "В настоящий момент файл недоступен.", "errorUsersExceed": "Превышено количество пользователей, разрешенных согласно тарифному плану", @@ -425,6 +432,7 @@ "LongActions": { "applyChangesTextText": "Загрузка данных...", "applyChangesTitleText": "Загрузка данных", + "confirmMaxChangesSize": "Размер внесенных изменений превышает ограничение, установленное для вашего сервера.
                Нажмите \"Отменить\" для отмены последнего действия или нажмите \"Продолжить\", чтобы сохранить действие локально (потребуется скачать файл или скопировать его содержимое чтобы ничего не потерялось).", "downloadMergeText": "Загрузка...", "downloadMergeTitle": "Загрузка", "downloadTextText": "Загрузка документа...", @@ -451,7 +459,9 @@ "saveTitleText": "Сохранение документа", "sendMergeText": "Отправка результатов слияния...", "sendMergeTitle": "Отправка результатов слияния", + "textContinue": "Продолжить", "textLoadingDocument": "Загрузка документа", + "textUndo": "Отменить", "txtEditingMode": "Установка режима редактирования...", "uploadImageTextText": "Загрузка рисунка...", "uploadImageTitleText": "Загрузка рисунка", diff --git a/apps/documenteditor/mobile/locale/sk.json b/apps/documenteditor/mobile/locale/sk.json index 97cb0127c..d90ae9b88 100644 --- a/apps/documenteditor/mobile/locale/sk.json +++ b/apps/documenteditor/mobile/locale/sk.json @@ -305,7 +305,6 @@ "textRemoveChart": "Odstrániť graf", "textRemoveShape": "Odstrániť tvar", "textRemoveTable": "Odstrániť tabuľku", - "textReorder": "Znovu usporiadať/zmena poradia", "textRepeatAsHeaderRow": "Opakovať ako riadok hlavičky", "textReplace": "Nahradiť", "textReplaceImage": "Nahradiť obrázok", @@ -341,12 +340,14 @@ "textWe": "st", "textWrap": "Zabaliť", "textAmountOfLevels": "Amount of Levels", + "textArrange": "Arrange", "textCancel": "Cancel", "textCentered": "Centered", "textChangeShape": "Change Shape", "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textDistinctive": "Distinctive", @@ -375,7 +376,6 @@ "textTableOfCont": "TOC", "textTextWrapping": "Text Wrapping", "textTitle": "Title", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -419,8 +419,15 @@ "uploadImageSizeMessage": "Obrázok je príliš veľký. Maximálna veľkosť je 25 MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Načítavanie dát...", @@ -455,7 +462,10 @@ "txtEditingMode": "Nastaviť režim úprav ...", "uploadImageTextText": "Nahrávanie obrázku...", "uploadImageTitleText": "Nahrávanie obrázku", - "waitText": "Čakajte, prosím..." + "waitText": "Čakajte, prosím...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Chyba", diff --git a/apps/documenteditor/mobile/locale/sl.json b/apps/documenteditor/mobile/locale/sl.json index 295f04ab8..a94973c92 100644 --- a/apps/documenteditor/mobile/locale/sl.json +++ b/apps/documenteditor/mobile/locale/sl.json @@ -231,6 +231,7 @@ "textAllCaps": "All caps", "textAllowOverlap": "Allow overlap", "textAmountOfLevels": "Amount of Levels", + "textArrange": "Arrange", "textBandedColumn": "Banded column", "textBandedRow": "Banded row", "textBefore": "Before", @@ -250,6 +251,7 @@ "textCreateTextStyle": "Create new text style", "textCurrent": "Current", "textCustomColor": "Custom Color", + "textCustomStyle": "Custom Style", "textDecember": "December", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", @@ -330,7 +332,6 @@ "textRemoveShape": "Remove Shape", "textRemoveTable": "Remove Table", "textRemoveTableContent": "Remove table of contents", - "textReorder": "Reorder", "textRepeatAsHeaderRow": "Repeat as Header Row", "textReplace": "Replace", "textReplaceImage": "Replace Image", @@ -375,7 +376,6 @@ "textType": "Type", "textWe": "We", "textWrap": "Wrap", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Main": { @@ -623,6 +623,11 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorFilePassProtect": "The file is password protected and could not be opened.", "errorFileSizeExceed": "The file size exceeds your server limit.
                Please, contact your admin.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorKeyEncrypt": "Unknown key descriptor", "errorKeyExpire": "Key descriptor expired", "errorLoadingFont": "Fonts are not loaded.
                Please contact your Document Server administrator.", @@ -634,6 +639,8 @@ "errorSessionToken": "The connection to the server has been interrupted. Please, reload the page.", "errorStockChart": "Incorrect row order. To build a stock chart, place the data on the sheet in the following order:
                opening price, max price, min price, closing price.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator.", "errorUpdateVersionOnDisconnect": "Connection has been restored, and the file version has been changed.
                Before you can continue working, you need to download the file or copy its content to make sure nothing is lost, and then reload this page.", "errorUserDrop": "The file can't be accessed right now.", "errorUsersExceed": "The number of users allowed by the pricing plan was exceeded", @@ -653,6 +660,7 @@ "LongActions": { "applyChangesTextText": "Loading data...", "applyChangesTitleText": "Loading Data", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", "downloadMergeText": "Downloading...", "downloadMergeTitle": "Downloading", "downloadTextText": "Downloading document...", @@ -679,7 +687,9 @@ "saveTitleText": "Saving Document", "sendMergeText": "Sending Merge...", "sendMergeTitle": "Sending Merge", + "textContinue": "Continue", "textLoadingDocument": "Loading document", + "textUndo": "Undo", "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", diff --git a/apps/documenteditor/mobile/locale/sv.json b/apps/documenteditor/mobile/locale/sv.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/sv.json +++ b/apps/documenteditor/mobile/locale/sv.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/tr.json b/apps/documenteditor/mobile/locale/tr.json index ef0c74fc2..c8e6df9b4 100644 --- a/apps/documenteditor/mobile/locale/tr.json +++ b/apps/documenteditor/mobile/locale/tr.json @@ -1,18 +1,18 @@ { "About": { "textAbout": "Hakkında", - "textAddress": "adres", + "textAddress": "Adres", "textBack": "Geri", + "textEditor": "\nBelge Düzenleyici", "textEmail": "E-posta", "textPoweredBy": "Tarafından", "textTel": "Telefon", - "textVersion": "Sürüm", - "textEditor": "Document Editor" + "textVersion": "Sürüm" }, "Add": { "notcriticalErrorTitle": "Dikkat", "textAddLink": "Bağlantı Ekle", - "textAddress": "adres", + "textAddress": "Adres", "textBack": "Geri", "textBelowText": "Alt Metin", "textBottomOfPage": "Sayfanın alt kısmı", @@ -26,6 +26,7 @@ "textContinuousPage": "Devam Eden Sayfa", "textCurrentPosition": "Mevcut Pozisyon", "textDisplay": "Görünüm", + "textDone": "Tamamlandı", "textEmptyImgUrl": "Resim URL'si belirtmelisiniz.", "textEvenPage": "Çift Sayfa", "textFootnote": "Dipnot", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "Kütüphaneden Resim", "textPictureFromURL": "URL'den resim", "textPosition": "Pozisyon", + "textRecommended": "Tavsiye edilen", + "textRequired": "Gerekli", "textRightBottom": "Sağ Alt", "textRightTop": "Sağ Üst", "textRows": "Satırlar", @@ -57,12 +60,9 @@ "textShape": "Şekil", "textStartAt": "Başlangıç", "textTable": "Tablo", + "textTableContents": "İçindekiler Tablosu", "textTableSize": "Tablo Boyutu", "txtNotUrl": "Bu alan \"http://www.example.com\" formatında bir URL olmak zorundadır", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTableContents": "Table of Contents", "textWithBlueLinks": "With Blue Links", "textWithPageNumbers": "With Page Numbers" }, @@ -147,6 +147,7 @@ "textReviewChange": "Değişikliği İncele", "textRight": "Sağa Hizala", "textShape": "Şekil", + "textSharingSettings": "Paylaşım Ayarları", "textShd": "Arka plan rengi", "textSmallCaps": "Küçük harfler", "textSpacing": "Aralık", @@ -163,16 +164,15 @@ "textTryUndoRedo": "Hızlı birlikte düzenleme modunda geri al/ileri al fonksiyonları devre dışıdır.", "textUnderline": "Altı çizili", "textUsers": "Kullanıcılar", - "textSharingSettings": "Sharing Settings", "textWidow": "Widow control" }, + "HighlightColorPalette": { + "textNoFill": "Dolgu Yok" + }, "ThemeColorPalette": { "textCustomColors": "Özel Renkler", "textStandartColors": "Standart Renkler", "textThemeColors": "Tema Renkleri" - }, - "HighlightColorPalette": { - "textNoFill": "No Fill" } }, "ContextMenu": { @@ -184,6 +184,7 @@ "menuDelete": "Sil", "menuDeleteTable": "Tabloyu Sil", "menuEdit": "Düzenle", + "menuEditLink": "Bağlantıyı Düzenle", "menuJoinList": "Bir önceki listeye bağlan", "menuMerge": "Birleştir", "menuMore": "Daha fazla", @@ -201,11 +202,10 @@ "textDoNotShowAgain": "Tekrar gösterme", "textNumberingValue": "Numaralandırma değeri", "textOk": "Tamam", + "textRefreshEntireTable": "Tüm tabloyu yenile", + "textRefreshPageNumbersOnly": "Yalnızca sayfa numaralarını yenile", "textRows": "Satırlar", - "menuEditLink": "Edit Link", - "textRefreshEntireTable": "Refresh entire table", - "textRefreshPageNumbersOnly": "Refresh page numbers only", - "txtWarnUrl": "Clicking this link can be harmful to your device and data.
                Are you sure you want to continue?" + "txtWarnUrl": "Bu bağlantıyı tıklamak cihazınıza ve verilerinize zarar verebilir.
                Devam etmek istediğinizden emin misiniz?" }, "Edit": { "notcriticalErrorTitle": "Dikkat", @@ -213,14 +213,16 @@ "textAddCustomColor": "Özel Renk Ekle", "textAdditional": "Ek", "textAdditionalFormatting": "Ek biçimlendirme", - "textAddress": "adres", + "textAddress": "Adres", "textAdvanced": "Gelişmiş", "textAdvancedSettings": "Gelişmiş Ayarlar", "textAfter": "sonra", "textAlign": "Hizala", "textAllCaps": "Tümü büyük harf", "textAllowOverlap": "Çakışmaya izin ver", + "textAmountOfLevels": "Seviye Miktarı", "textApril": "Nisan", + "textArrange": "Düzenle", "textAugust": "Ağustos", "textAuto": "Otomatik", "textAutomatic": "Otomatik", @@ -234,22 +236,35 @@ "textBringToForeground": "Önplana Getir", "textBullets": "İmler", "textBulletsAndNumbers": "madde imleri ve numaralandırma", + "textCancel": "İptal", "textCellMargins": "Hücre Kenar Boşluğu", + "textCentered": "Ortalanmış", + "textChangeShape": "Şekli değiştir", "textChart": "Grafik", + "textClassic": "Klasik", "textClose": "Kapat", "textColor": "Renk", "textContinueFromPreviousSection": "Önceki bölümden devam et", + "textCreateTextStyle": "Yeni metin stili oluştur", + "textCurrent": "Mevcut", "textCustomColor": "Özel Renk", "textDecember": "Aralık", + "textDeleteImage": "Resmi Sil", + "textDeleteLink": "Bağlantıyı Sil", "textDesign": "Tasarım", "textDifferentFirstPage": "Farklı ilk sayfa", "textDifferentOddAndEvenPages": "Farklı tek ve çift sayfalar", "textDisplay": "Görüntüle", "textDistanceFromText": "Metinden mesafe", + "textDistinctive": "Belirgin", + "textDone": "Tamamlandı", "textDoubleStrikethrough": "Üstü çift çizili", "textEditLink": "Bağlantıyı Düzenle", "textEffects": "Efektler", + "textEmpty": "Boş", "textEmptyImgUrl": "Resim URL'si belirtmelisiniz.", + "textEnterTitleNewStyle": "Yeni stilin başlığını girin", + "textFebruary": "Şubat", "textFill": "Doldur", "textFirstColumn": "İlk Sütun", "textFirstLine": "İlk Satır", @@ -258,6 +273,8 @@ "textFontColors": "Yazı Tipi Renkleri", "textFonts": "Yazı Tipleri", "textFooter": "Altbilgi", + "textFormal": "Resmi", + "textFr": "Cum", "textHeader": "Üst Başlık", "textHeaderRow": "Üstbilgi Satırı", "textHighlightColor": "Vurgu Rengi", @@ -266,116 +283,99 @@ "textImageURL": "Resim URL'si", "textInFront": "Önde", "textInline": "Satıriçi", + "textJanuary": "Ocak", + "textJuly": "Temmuz", + "textJune": "Haziran", "textKeepLinesTogether": "Satırları birlikte tut", "textKeepWithNext": "Sonrakiyle tut", "textLastColumn": "Son Sütun", + "textLeader": "Lider", "textLetterSpacing": "Harf Boşlukları", + "textLevels": "Seviyeler", "textLineSpacing": "Satır Aralığı", "textLink": "Bağlantı", "textLinkSettings": "Bağlantı Ayarları", "textLinkToPrevious": "Öncekine bağlantıla", + "textMarch": "Mart", + "textMay": "May", + "textMo": "Pzt", + "textModern": "Modern", "textMoveBackward": "Geri Taşı", "textMoveForward": "İleri Taşı", "textMoveWithText": "Metinle taşı", + "textNextParagraphStyle": "Sonraki paragraf stili", "textNone": "Hiçbiri", "textNoStyles": "Bu tip çizelge için stil yok!", "textNotUrl": "Bu alan \"http://www.example.com\" formatında bir URL olmak zorundadır", + "textNovember": "Kasım", "textNumbers": "Sayılar", + "textOctober": "Ekim", "textOk": "Tamam", + "textOnline": "Çevrimiçi", "textOpacity": "Opaklık", "textOptions": "Seçenekler", "textOrphanControl": "Tek satır denetimi", "textPageBreakBefore": "Sayfa Sonu Öncesi", "textPageNumbering": "Sayfa Numaralandırma", + "textPageNumbers": "Sayfa numaraları", "textParagraph": "Paragraf", + "textParagraphStyle": "Paragraf Stili", "textPictureFromLibrary": "Kütüphaneden Resim", "textPictureFromURL": "URL'den resim", "textPt": "pt", + "textRecommended": "Tavsiye edilen", + "textRefresh": "Yenile", + "textRefreshEntireTable": "Tüm tabloyu yenile", + "textRefreshPageNumbersOnly": "Yalnızca sayfa numaralarını yenile", "textRemoveChart": "Grafiği Kaldır", "textRemoveShape": "Şekli Kaldır", "textRemoveTable": "Tabloyu Kaldır", - "textReorder": "Yeniden Sırala", + "textRemoveTableContent": "İçindekiler tablosunu kaldır", "textRepeatAsHeaderRow": "Başlık Satır olarak Tekrarla", "textReplace": "Değiştir", "textReplaceImage": "Resmi Değiştir", + "textRequired": "Gerekli", "textResizeToFitContent": "İçereğe Göre Yeniden Boyutlandır", + "textRightAlign": "Sağa Hizala", + "textSa": "Cmt", + "textSameCreatedNewStyle": "Oluşturulan yeni stil ile aynı", "textScreenTip": "Ekran İpucu", "textSelectObjectToEdit": "Düzenlenecek nesneyi seçin", "textSendToBackground": "Arkaplana gönder", + "textSeptember": "Eylül", "textSettings": "Ayarlar", "textShape": "Şekil", + "textSimple": "Basit", "textSize": "Boyut", "textSmallCaps": "Küçük harfler", "textSpaceBetweenParagraphs": "Paragraf Arası Boşluklar", "textSquare": "Kare", + "textStandard": "Standart", "textStartAt": "Başlangıç", "textStrikethrough": "Üstü çizili", + "textStructure": "Yapı", "textStyle": "Stil", "textStyleOptions": "Stil Seçenekleri", + "textStyles": "Stiller", + "textSu": "Paz", "textSubscript": "Alt Simge", "textSuperscript": "Üst Simge", "textTable": "Tablo", "textTableOptions": "Tablo Seçenekleri", "textText": "Metin", + "textTextWrapping": "Metin Kaydırma", + "textTh": "Pe", "textThrough": "Aracılığıyla", "textTight": "Sıkı", "textTopAndBottom": "Üst ve alt", "textTotalRow": "Toplam Satır", "textType": "Tip", "textWrap": "Metni Kaydır", - "textAmountOfLevels": "Amount of Levels", - "textCancel": "Cancel", - "textCentered": "Centered", - "textChangeShape": "Change Shape", - "textClassic": "Classic", - "textCreateTextStyle": "Create new text style", - "textCurrent": "Current", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textDistinctive": "Distinctive", - "textDone": "Done", - "textEmpty": "Empty", - "textEnterTitleNewStyle": "Enter title of a new style", - "textFebruary": "February", - "textFormal": "Formal", - "textFr": "Fr", - "textJanuary": "January", - "textJuly": "July", - "textJune": "June", - "textLeader": "Leader", - "textLevels": "Levels", - "textMarch": "March", - "textMay": "May", - "textMo": "Mo", - "textModern": "Modern", - "textNextParagraphStyle": "Next paragraph style", - "textNovember": "November", - "textOctober": "October", - "textOnline": "Online", - "textPageNumbers": "Page Numbers", - "textParagraphStyle": "Paragraph Style", - "textRecommended": "Recommended", - "textRefresh": "Refresh", - "textRefreshEntireTable": "Refresh entire table", - "textRefreshPageNumbersOnly": "Refresh page numbers only", - "textRemoveTableContent": "Remove table of contents", - "textRequired": "Required", - "textRightAlign": "Right Align", - "textSa": "Sa", - "textSameCreatedNewStyle": "Same as created new style", - "textSeptember": "September", - "textSimple": "Simple", - "textStandard": "Standard", - "textStructure": "Structure", - "textStyles": "Styles", - "textSu": "Su", + "textCustomStyle": "Custom Style", "textTableOfCont": "TOC", - "textTextWrapping": "Text Wrapping", - "textTh": "Th", "textTitle": "Title", "textTu": "Tu", "textWe": "We", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -390,9 +390,16 @@ "errorDataEncrypted": "Şifreli değişiklikler algılandı, çözülemiyor.", "errorDataRange": "Yanlış veri aralığı.", "errorDefaultMessage": "Hata kodu: %1", + "errorDirectUrl": "Lütfen belgenin bağlantısını doğrulayın.
                Bu bağlantı, indirilecek dosyaya doğrudan bir bağlantı olmalıdır.", "errorEditingDownloadas": "Dokümanla çalışma sırasında hata oluştu.
                Lokal olarak dosyayı kaydetmek için dokümanı indirin.", + "errorEmptyTOC": "Seçilen metne Stiller galerisinden bir başlık stili uygulayarak içindekiler tablosu oluşturmaya başlayın.", "errorFilePassProtect": "Dosya parola korumalı ve açılamadı.", "errorFileSizeExceed": "Dosya boyutu sunucu sınırınızı aşıyor.
                Lütfen yöneticinizle iletişime geçin.", + "errorInconsistentExt": "Dosya açılırken bir hata oluştu.
                Dosya içeriği, dosya uzantısıyla eşleşmiyor.", + "errorInconsistentExtDocx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği metin belgelerine (örn. docx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", + "errorInconsistentExtPdf": "Dosya açılırken bir hata oluştu.
                Dosya içeriği şu biçimlerden birine karşılık geliyor: pdf/djvu/xps/oxps, ancak dosyanın uzantısı tutarsız: %1.", + "errorInconsistentExtPptx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği sunumlara karşılık geliyor (örn. pptx), ancak dosyanın uzantısı tutarsız: %1.", + "errorInconsistentExtXlsx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği e-tablolara (örn. xlsx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", "errorKeyEncrypt": "Bilinmeyen anahtar tanımlayıcı", "errorKeyExpire": "Anahtar tanımlayıcının süresi doldu", "errorLoadingFont": "Yazı tipleri yüklenmedi.
                Lütfen Doküman Sunucusu yöneticinize başvurun.", @@ -402,6 +409,8 @@ "errorSessionIdle": "Belge uzun süredir düzenlenmemiştir. Lütfen sayfayı yenileyin.", "errorSessionToken": "Sunucuyla bağlantı kesildi. Lütfen sayfayı yenileyin.", "errorStockChart": "Yanlış satır sırası. Stok çizelgesi oluşturmak içi, verilen sıralamada veriyi yerleştirmek gereklidir:
                ücret açma, max ücret, minimum ücret ve ücret kapama", + "errorToken": "Belge güvenlik belirteci doğru şekilde oluşturulmamış

                Lütfen Document Server yöneticinize başvurun.", + "errorTokenExpire": "Belge güvenlik belirteci doldu.
                Lütfen Document Server yöneticinize başvurun.", "errorUpdateVersionOnDisconnect": "Internet bağlantısı sağlandı, dosya versiyonu değiştirildi.
                Çalışmaya devam etmeden önce, dosyayı indirin veya içeriğini kopyalayıp herhangi bir kayıp olmadığından emin olun ve sayfayı yenileyin.", "errorUserDrop": "Dosyaya şu anda erişilemiyor.", "errorUsersExceed": "Fiyat planının izin verdiği kullanıcı sayısı aşıldı", @@ -417,8 +426,6 @@ "uploadImageExtMessage": "Bilinmeyen resim formatı.", "uploadImageFileCountMessage": "Resim yüklenmedi.", "uploadImageSizeMessage": "Görüntü çok büyük. Maksimum boyut 25 MB'dir.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field." }, @@ -451,11 +458,14 @@ "saveTitleText": "Belge Kaydediliyor", "sendMergeText": "Birleştirme Gönderiliyor...", "sendMergeTitle": "Birleştirme Gönderiliyor", + "textContinue": "Devam", "textLoadingDocument": "Belge yükleniyor", "txtEditingMode": "Düzenleme modunu belirle...", "uploadImageTextText": "Resim yükleniyor...", "uploadImageTitleText": "Resim Yükleniyor", - "waitText": "Lütfen bekleyin..." + "waitText": "Lütfen bekleyin...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Hata", @@ -537,8 +547,12 @@ "textHasMacros": "Dosya otomatik makrolar içeriyor.
                Makroları çalıştırmak istiyor musunuz?", "textNo": "Hayır", "textNoLicenseTitle": "Lisans limitine ulaşıldı.", + "textNoTextFound": "Metin Bulunamadı", "textPaidFeature": "Ücretli Özellik", "textRemember": "Seçimimi hatırla", + "textReplaceSkipped": "Değiştirme yapıldı. {0} olay atlandı.", + "textReplaceSuccess": "Arama yapıldı. {0} olay değiştirildi.", + "textRequestMacros": "Bir makro, URL'ye istekte bulunur. %1 isteğine izin vermek istiyor musunuz?", "textYes": "Evet", "titleLicenseExp": "Lisans süresi doldu", "titleServerVersion": "Editör güncellendi", @@ -550,11 +564,7 @@ "warnLicenseUsersExceeded": "%1 düzenleyici için kullanıcı sınırına ulaştınız. Daha fazla bilgi edinmek için yöneticinizle iletişime geçin.", "warnNoLicense": "%1 düzenleyiciye eşzamanlı bağlantı sınırına ulaştınız. Bu belge yalnızca görüntüleme için açılacaktır. Kişisel yükseltme koşulları için %1 satış ekibiyle iletişime geçin.", "warnNoLicenseUsers": "%1 düzenleyici için kullanıcı sınırına ulaştınız. Kişisel yükseltme koşulları için %1 satış ekibiyle iletişime geçin.", - "warnProcessRightsChange": "Bu dosyayı düzenleme izniniz yok.", - "textNoTextFound": "Text not found", - "textReplaceSkipped": "The replacement has been made. {0} occurrences were skipped.", - "textReplaceSuccess": "The search has been done. Occurrences replaced: {0}", - "textRequestMacros": "A macro makes a request to URL. Do you want to allow the request to the %1?" + "warnProcessRightsChange": "Bu dosyayı düzenleme izniniz yok." }, "Settings": { "advDRMOptions": "Korumalı dosya", @@ -567,6 +577,7 @@ "textApplicationSettings": "Uygulama Ayarları", "textAuthor": "Sahibi", "textBack": "Geri", + "textBeginningDocument": "Döküman başlangıcı", "textBottom": "Alt", "textCancel": "İptal Et", "textCaseSensitive": "Büyük küçük harfe duyarlı", @@ -580,6 +591,7 @@ "textCommentsDisplay": "Yorum Görünümü", "textCreated": "Olusturuldu", "textCustomSize": "Özel Boyut", + "textDirection": "Yön", "textDisableAll": "Tümünü Devre Dışı Bırak", "textDisableAllMacrosWithNotification": "Makroları bildirim ile pasifleştir", "textDisableAllMacrosWithoutNotification": "Tüm makroları bildirimsiz devre dışı bırak", @@ -591,9 +603,12 @@ "textDownloadAs": "Olarak indir", "textDownloadRtf": "Bu biçimde kaydetmeye devam ederseniz, bazı biçimler kaybolabilir. Devam etmek istediğinize emin misiniz?", "textDownloadTxt": "Bu biçimde kayıt etmeye devam ederseniz, metin dışında tüm özellikler kaybolacaktır. Devam etmek istediğinize emin misiniz?", + "textEmptyHeading": "Boş Başlık", "textEnableAll": "Hepsini Etkinleştir", "textEnableAllMacrosWithoutNotification": "Tüm makroları bildirimsiz etkinleştir", "textEncoding": "Kodlama", + "textFastWV": "Hızlı Web Görünümü", + "textFeedback": "Geri Bildirim & Destek", "textFind": "Bul", "textFindAndReplace": "Bul ve Değiştir", "textFindAndReplaceAll": " Bul ve Hepsini Değiştir", @@ -606,12 +621,16 @@ "textLastModified": "Son Düzenleme", "textLastModifiedBy": "Son Düzenleyen", "textLeft": "Sol", + "textLeftToRight": "Soldan sağa", "textLoading": "Yükleniyor...", "textLocation": "Konum", "textMacrosSettings": "Makro Ayarları", "textMargins": "Kenar Boşlukları", "textMarginsH": "Belirli bir sayfa yüksekliği için üst ve alt kenar boşlukları çok yüksek", "textMarginsW": "Sağ ve Sol çizelgeler verilen sayfa genişliği için çok geniş", + "textMobileView": "Mobil Görünüm", + "textNavigation": "Gezinti", + "textNo": "Hayır", "textNoCharacters": "Basılmaz Karakterler", "textNoTextFound": "Metin Bulunamadı", "textOk": "Tamam", @@ -619,7 +638,11 @@ "textOrientation": "Oryantasyon", "textOwner": "Sahip", "textPages": "Sayfalar", + "textPageSize": "Sayfa Boyutu", "textParagraphs": "Paragraflar", + "textPdfProducer": "PDF Üreticisi", + "textPdfTagged": "Etiketli PDF", + "textPdfVer": "PDF Sürümü", "textPoint": "Nokta", "textPortrait": "Dikey", "textPrint": "Yazdır", @@ -627,7 +650,9 @@ "textReplace": "Değiştir", "textReplaceAll": "Tümünü Değiştir", "textResolvedComments": "Çözümlenmiş Yorumlar", + "textRestartApplication": "Değişikliklerin geçerli olması için lütfen uygulamayı yeniden başlatın", "textRight": "Sağ", + "textRightToLeft": "Sağdan Sola", "textSearch": "Ara", "textSettings": "Ayarlar", "textShowNotification": "Bildirim Göster", @@ -650,6 +675,7 @@ "txtScheme11": "Metro", "txtScheme12": "Modül", "txtScheme13": "Zengin", + "txtScheme14": "Sıkma", "txtScheme15": "Orjin", "txtScheme16": "Kağıt", "txtScheme17": "Gündönümü", @@ -665,24 +691,8 @@ "txtScheme7": "Net Değer", "txtScheme8": "Yayılma", "txtScheme9": "Döküm", - "textBeginningDocument": "Beginning of document", - "textDirection": "Direction", - "textEmptyHeading": "Empty Heading", "textEmptyScreens": "There are no headings in the document. Apply a headings style to the text so that it appears in the table of contents.", - "textFastWV": "Fast Web View", - "textFeedback": "Feedback & Support", - "textLeftToRight": "Left To Right", - "textMobileView": "Mobile View", - "textNavigation": "Navigation", - "textNo": "No", - "textPageSize": "Page Size", - "textPdfProducer": "PDF Producer", - "textPdfTagged": "Tagged PDF", - "textPdfVer": "PDF Version", - "textRestartApplication": "Please restart the application for the changes to take effect", - "textRightToLeft": "Right To Left", "textYes": "Yes", - "txtScheme14": "Oriel", "txtScheme19": "Trek" }, "Toolbar": { @@ -690,8 +700,8 @@ "dlgLeaveTitleText": "Uygulamadan çıktınız", "leaveButtonText": "Bu Sayfadan Ayrıl", "stayButtonText": "Bu Sayfada Kal", - "textOk": "OK", - "textSwitchedMobileView": "Switched to Mobile view", - "textSwitchedStandardView": "Switched to Standard view" + "textOk": "Tamam", + "textSwitchedMobileView": "Mobil görünüme geçildi", + "textSwitchedStandardView": "Standart görünüme geçildi" } } \ No newline at end of file diff --git a/apps/documenteditor/mobile/locale/uk.json b/apps/documenteditor/mobile/locale/uk.json index 45760c1e0..3b07ef0e2 100644 --- a/apps/documenteditor/mobile/locale/uk.json +++ b/apps/documenteditor/mobile/locale/uk.json @@ -305,7 +305,6 @@ "textRemoveChart": "Видалити діаграму", "textRemoveShape": "Видалити форму", "textRemoveTable": "Видалити таблицю", - "textReorder": "Порядок", "textRepeatAsHeaderRow": "Повторювати як заголовок", "textReplace": "Замінити", "textReplaceImage": "Замінити зображення", @@ -341,12 +340,14 @@ "textWe": "Ср", "textWrap": "Стиль обтікання", "textAmountOfLevels": "Amount of Levels", + "textArrange": "Arrange", "textCancel": "Cancel", "textCentered": "Centered", "textChangeShape": "Change Shape", "textClassic": "Classic", "textCreateTextStyle": "Create new text style", "textCurrent": "Current", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textDistinctive": "Distinctive", @@ -375,7 +376,6 @@ "textTableOfCont": "TOC", "textTextWrapping": "Text Wrapping", "textTitle": "Title", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -419,8 +419,15 @@ "uploadImageSizeMessage": "Занадто велике зображення. Максимальний розмір – 25 MB.", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Завантаження даних...", @@ -455,7 +462,10 @@ "txtEditingMode": "Встановити режим редагування ...", "uploadImageTextText": "Завантаження зображення...", "uploadImageTitleText": "Завантаження зображення", - "waitText": "Будь ласка, зачекайте..." + "waitText": "Будь ласка, зачекайте...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "Помилка", diff --git a/apps/documenteditor/mobile/locale/vi.json b/apps/documenteditor/mobile/locale/vi.json index e7d2796f4..c8d85260c 100644 --- a/apps/documenteditor/mobile/locale/vi.json +++ b/apps/documenteditor/mobile/locale/vi.json @@ -379,7 +379,8 @@ "textRequired": "Required", "textTextWrapping": "Text Wrapping", "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "Wrapping Style", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "Conversion timeout exceeded.", @@ -423,7 +424,14 @@ "errorEmptyTOC": "Start creating a table of contents by applying a heading style from the Styles gallery to the selected text.", "errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.", "errorTextFormWrongFormat": "The value entered does not match the format of the field.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "Loading data...", @@ -458,7 +466,10 @@ "txtEditingMode": "Set editing mode...", "uploadImageTextText": "Uploading image...", "uploadImageTitleText": "Uploading Image", - "waitText": "Please, wait..." + "waitText": "Please, wait...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textUndo": "Undo", + "textContinue": "Continue" }, "Main": { "criticalErrorTitle": "Error", diff --git a/apps/documenteditor/mobile/locale/zh-tw.json b/apps/documenteditor/mobile/locale/zh-tw.json index 01f04f9c7..27c812475 100644 --- a/apps/documenteditor/mobile/locale/zh-tw.json +++ b/apps/documenteditor/mobile/locale/zh-tw.json @@ -326,7 +326,6 @@ "textRemoveShape": "刪除形狀", "textRemoveTable": "刪除表格", "textRemoveTableContent": "刪除目錄", - "textReorder": "重新排序", "textRepeatAsHeaderRow": "重複作為標題行", "textReplace": "取代", "textReplaceImage": "取代圖片", @@ -369,13 +368,14 @@ "textType": "類型", "textWe": "We", "textWrap": "包覆", + "textArrange": "Arrange", "textChangeShape": "Change Shape", + "textCustomStyle": "Custom Style", "textDeleteImage": "Delete Image", "textDeleteLink": "Delete Link", "textRecommended": "Recommended", "textRequired": "Required", "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", "textWrappingStyle": "Wrapping Style" }, "Error": { @@ -420,7 +420,14 @@ "uploadImageFileCountMessage": "無上傳圖片。", "uploadImageSizeMessage": "圖像超出最大大小限制。最大為25MB。", "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading.", - "errorTextFormWrongFormat": "The value entered does not match the format of the field." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorTextFormWrongFormat": "The value entered does not match the format of the field.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "載入資料中...", @@ -455,7 +462,10 @@ "txtEditingMode": "設定編輯模式...", "uploadImageTextText": "正在上傳圖片...", "uploadImageTitleText": "上傳圖片中", - "waitText": "請耐心等待..." + "waitText": "請耐心等待...", + "confirmMaxChangesSize": "The size of actions exceeds the limitation set for your server.
                Press \"Undo\" to cancel your last action or press \"Continue\" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).", + "textContinue": "Continue", + "textUndo": "Undo" }, "Main": { "criticalErrorTitle": "錯誤", diff --git a/apps/documenteditor/mobile/locale/zh.json b/apps/documenteditor/mobile/locale/zh.json index f01237b3e..a932c5fc5 100644 --- a/apps/documenteditor/mobile/locale/zh.json +++ b/apps/documenteditor/mobile/locale/zh.json @@ -26,6 +26,7 @@ "textContinuousPage": "连续页", "textCurrentPosition": "当前位置", "textDisplay": "展示", + "textDone": "完成", "textEmptyImgUrl": "您需要指定图像URL。", "textEvenPage": "偶数页", "textFootnote": "脚注", @@ -49,6 +50,8 @@ "textPictureFromLibrary": "图库", "textPictureFromURL": "来自网络的图片", "textPosition": "位置", + "textRecommended": "推荐", + "textRequired": "必填", "textRightBottom": "右下", "textRightTop": "右上", "textRows": "行", @@ -61,10 +64,7 @@ "textTableSize": "表格大小", "textWithBlueLinks": "带蓝色链接", "textWithPageNumbers": "带页号", - "txtNotUrl": "该字段应为“http://www.example.com”格式的URL", - "textDone": "Done", - "textRecommended": "Recommended", - "textRequired": "Required" + "txtNotUrl": "该字段应为“http://www.example.com”格式的URL" }, "Common": { "Collaboration": { @@ -147,6 +147,7 @@ "textReviewChange": "审查变更", "textRight": "右对齐", "textShape": "形状", + "textSharingSettings": "共享设置", "textShd": "背景颜色", "textSmallCaps": "小型大写字母", "textSpacing": "间距", @@ -160,11 +161,10 @@ "textTableRowsDel": "行被删除", "textTabs": "更改选项卡", "textTrackChanges": "跟踪变化", - "textTryUndoRedo": "快速共同编辑模式下,撤销/重做功能被禁用。", + "textTryUndoRedo": "自动共同编辑模式下,撤销/重做功能被禁用。", "textUnderline": "下划线", "textUsers": "用户", - "textWidow": "单独控制", - "textSharingSettings": "Sharing Settings" + "textWidow": "单独控制" }, "HighlightColorPalette": { "textNoFill": "无填充" @@ -184,6 +184,7 @@ "menuDelete": "删除", "menuDeleteTable": "删除表", "menuEdit": "编辑", + "menuEditLink": "编辑链接", "menuJoinList": "联接上一个列表", "menuMerge": "合并", "menuMore": "更多", @@ -204,8 +205,7 @@ "textRefreshEntireTable": "刷新整个表格", "textRefreshPageNumbersOnly": "仅刷新页号", "textRows": "行", - "txtWarnUrl": "点击该链接可能会损害您的设备或数据。
                您确定要继续吗?", - "menuEditLink": "Edit Link" + "txtWarnUrl": "点击该链接可能会损害您的设备或数据。
                您确定要继续吗?" }, "Edit": { "notcriticalErrorTitle": "警告", @@ -238,6 +238,7 @@ "textCancel": "取消", "textCellMargins": "单元格边距", "textCentered": "居中", + "textChangeShape": "改变形状", "textChart": "图表", "textClassic": "经典", "textClose": "关闭", @@ -246,7 +247,10 @@ "textCreateTextStyle": "创建新样式", "textCurrent": "当前", "textCustomColor": "自定义颜色", + "textCustomStyle": "自定义样式", "textDecember": "十二月", + "textDeleteImage": "删除图像", + "textDeleteLink": "删除链接", "textDesign": "设计", "textDifferentFirstPage": "不同的第一页", "textDifferentOddAndEvenPages": "不同的奇数页和偶数页", @@ -319,6 +323,7 @@ "textPictureFromLibrary": "图库", "textPictureFromURL": "来自网络的图片", "textPt": "像素", + "textRecommended": "推荐", "textRefresh": "刷新", "textRefreshEntireTable": "刷新整个表格", "textRefreshPageNumbersOnly": "仅刷新页号", @@ -326,10 +331,10 @@ "textRemoveShape": "删除图形", "textRemoveTable": "删除表", "textRemoveTableContent": "删除目录", - "textReorder": "重新订购", "textRepeatAsHeaderRow": "重复标题行", "textReplace": "替换", "textReplaceImage": "替换图像", + "textRequired": "必填", "textResizeToFitContent": "调整大小以适应内容", "textRightAlign": "右对齐", "textSa": "周六", @@ -359,6 +364,7 @@ "textTableOfCont": "目录", "textTableOptions": "表格选项", "textText": "文本", + "textTextWrapping": "文字环绕", "textTh": "周四", "textThrough": "穿越型环绕", "textTight": "紧", @@ -369,14 +375,8 @@ "textType": "类型", "textWe": "周三", "textWrap": "包裹", - "textChangeShape": "Change Shape", - "textDeleteImage": "Delete Image", - "textDeleteLink": "Delete Link", - "textRecommended": "Recommended", - "textRequired": "Required", - "textTextWrapping": "Text Wrapping", - "textCustomStyle": "Custom Style", - "textWrappingStyle": "Wrapping Style" + "textWrappingStyle": "环绕样式", + "textArrange": "Arrange" }, "Error": { "convertationTimeoutText": "转换超时", @@ -390,6 +390,7 @@ "errorDataEncrypted": "加密更改已收到,无法对其解密。", "errorDataRange": "数据范围不正确", "errorDefaultMessage": "错误代码:%1", + "errorDirectUrl": "请验证指向文档的链接。
                此链接必须是指向要下载的文件的直接链接。", "errorEditingDownloadas": "处理文档时发生错误.
                请将文件备份保存到本地。", "errorEmptyTOC": "开始创建一个目录并应用样式库中的标题样式到选择的文本。", "errorFilePassProtect": "该文件已启动密码保护,无法打开。", @@ -420,11 +421,18 @@ "uploadImageExtMessage": "未知图像格式。", "uploadImageFileCountMessage": "没有图片上传", "uploadImageSizeMessage": "图片太大了。最大允许的大小是 25 MB.", - "errorDirectUrl": "Please verify the link to the document.
                This link must be a direct link to the file for downloading." + "errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", + "errorToken": "The document security token is not correctly formed.
                Please contact your Document Server administrator.", + "errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator." }, "LongActions": { "applyChangesTextText": "数据加载中…", "applyChangesTitleText": "数据加载中", + "confirmMaxChangesSize": "行动的大小超过了对您服务器设置的限制。
                按 \"撤消\"取消您的最后一次行动,或按\"继续\"在本地保留该行动(您需要下载文件或复制其内容以确保没有任何损失)。", "downloadMergeText": "下载中…", "downloadMergeTitle": "下载中", "downloadTextText": "正在下载文件...", @@ -451,7 +459,9 @@ "saveTitleText": "保存文件", "sendMergeText": "任务合并", "sendMergeTitle": "任务合并", + "textContinue": "发送", "textLoadingDocument": "文件加载中…", + "textUndo": "复原", "txtEditingMode": "设置编辑模式..", "uploadImageTextText": "上传图片...", "uploadImageTitleText": "图片上传中", diff --git a/apps/documenteditor/mobile/src/app.js b/apps/documenteditor/mobile/src/app.js index 69b8ca7a6..d7621a7ff 100644 --- a/apps/documenteditor/mobile/src/app.js +++ b/apps/documenteditor/mobile/src/app.js @@ -4,7 +4,7 @@ import { createRoot } from 'react-dom/client'; // Import Framework7 import Framework7 from 'framework7/lite-bundle'; -import { Dom7 } from 'framework7'; +import { Dom7 } from 'framework7/lite-bundle'; window.$$ = Dom7; // Import Framework7-React Plugin @@ -22,19 +22,19 @@ import('./less/app.less'); // Import App Component -import App from './view/app'; import { I18nextProvider } from 'react-i18next'; -import i18n from './lib/i18n'; +import i18n from './lib/i18n.js'; +import App from './view/app.jsx'; -import { Provider } from 'mobx-react' -import { stores } from './store/mainStore' -import { LocalStorage } from '../../../common/mobile/utils/LocalStorage'; +import { Provider } from 'mobx-react'; +import { stores } from './store/mainStore.js'; +// import { LocalStorage } from '../../../common/mobile/utils/LocalStorage'; const container = document.getElementById('app'); const root = createRoot(container); // Init F7 React Plugin -Framework7.use(Framework7React) +Framework7.use(Framework7React); // Mount React App root.render( diff --git a/apps/documenteditor/mobile/src/controller/ContextMenu.jsx b/apps/documenteditor/mobile/src/controller/ContextMenu.jsx index 546d3e169..bf43216aa 100644 --- a/apps/documenteditor/mobile/src/controller/ContextMenu.jsx +++ b/apps/documenteditor/mobile/src/controller/ContextMenu.jsx @@ -2,7 +2,7 @@ import React, { useContext } from 'react'; import { f7 } from 'framework7-react'; import { inject, observer } from "mobx-react"; import { withTranslation} from 'react-i18next'; -import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs'; import ContextMenuController from '../../../../common/mobile/lib/controller/ContextMenu'; import { idContextMenuElement } from '../../../../common/mobile/lib/view/ContextMenu'; diff --git a/apps/documenteditor/mobile/src/controller/Error.jsx b/apps/documenteditor/mobile/src/controller/Error.jsx index f06fbce0c..8fe766a05 100644 --- a/apps/documenteditor/mobile/src/controller/Error.jsx +++ b/apps/documenteditor/mobile/src/controller/Error.jsx @@ -3,7 +3,7 @@ import { inject } from 'mobx-react'; import { f7 } from 'framework7-react'; import { useTranslation } from 'react-i18next'; -const ErrorController = inject('storeAppOptions')(({storeAppOptions, LoadingDocument}) => { +const ErrorController = inject('storeAppOptions','storeDocumentInfo')(({storeAppOptions, storeDocumentInfo, LoadingDocument}) => { const { t } = useTranslation(); const _t = t("Error", { returnObjects: true }); @@ -88,11 +88,11 @@ const ErrorController = inject('storeAppOptions')(({storeAppOptions, LoadingDocu break; case Asc.c_oAscError.ID.VKeyEncrypt: - config.msg = _t.errorKeyEncrypt; + config.msg = _t.errorToken; break; case Asc.c_oAscError.ID.KeyExpire: - config.msg = _t.errorKeyExpire; + config.msg = _t.errorTokenExpire; break; case Asc.c_oAscError.ID.UserCountExceed: @@ -197,6 +197,20 @@ const ErrorController = inject('storeAppOptions')(({storeAppOptions, LoadingDocu config.msg = _t.errorDirectUrl; break; + case Asc.c_oAscError.ID.ConvertationOpenFormat: + let docExt = storeDocumentInfo.dataDoc ? storeDocumentInfo.dataDoc.fileType || '' : ''; + if (errData === 'pdf') + config.msg = _t.errorInconsistentExtPdf.replace('%1', docExt); + else if (errData === 'docx') + config.msg = _t.errorInconsistentExtDocx.replace('%1', docExt); + else if (errData === 'xlsx') + config.msg = _t.errorInconsistentExtXlsx.replace('%1', docExt); + else if (errData === 'pptx') + config.msg = _t.errorInconsistentExtPptx.replace('%1', docExt); + else + config.msg = _t.errorInconsistentExt; + break; + default: config.msg = _t.errorDefaultMessage.replace('%1', id); break; diff --git a/apps/documenteditor/mobile/src/controller/LongActions.jsx b/apps/documenteditor/mobile/src/controller/LongActions.jsx index 28b2ad789..4162dc5f1 100644 --- a/apps/documenteditor/mobile/src/controller/LongActions.jsx +++ b/apps/documenteditor/mobile/src/controller/LongActions.jsx @@ -29,6 +29,7 @@ const LongActionsController = inject('storeAppOptions')(({storeAppOptions}) => { api.asc_registerCallback('asc_onStartAction', onLongActionBegin); api.asc_registerCallback('asc_onEndAction', onLongActionEnd); api.asc_registerCallback('asc_onOpenDocumentProgress', onOpenDocument); + api.asc_registerCallback('asc_onConfirmAction', onConfirmAction); }; const api = Common.EditorApi.get(); @@ -45,6 +46,7 @@ const LongActionsController = inject('storeAppOptions')(({storeAppOptions}) => { api.asc_unregisterCallback('asc_onStartAction', onLongActionBegin); api.asc_unregisterCallback('asc_onEndAction', onLongActionEnd); api.asc_unregisterCallback('asc_onOpenDocumentProgress', onOpenDocument); + api.asc_unregisterCallback('asc_onConfirmAction', onConfirmAction); } Common.Notifications.off('engineCreated', on_engine_created); @@ -194,6 +196,29 @@ const LongActionsController = inject('storeAppOptions')(({storeAppOptions}) => { }; + const onConfirmAction = (id, apiCallback, data) => { + const api = Common.EditorApi.get(); + + if (id === Asc.c_oAscConfirm.ConfirmMaxChangesSize) { + f7.dialog.create({ + title: _t.notcriticalErrorTitle, + text: _t.confirmMaxChangesSize, + buttons: [ + {text: _t.textUndo, + onClick: () => { + if (apiCallback) apiCallback(true); + } + }, + {text: _t.textContinue, + onClick: () => { + if (apiCallback) apiCallback(false); + } + } + ], + }).open(); + } + }; + const onOpenDocument = (progress) => { if (loadMask && loadMask.el) { const $title = loadMask.el.getElementsByClassName('dialog-title')[0]; diff --git a/apps/documenteditor/mobile/src/controller/Main.jsx b/apps/documenteditor/mobile/src/controller/Main.jsx index 3706d958b..984c289ed 100644 --- a/apps/documenteditor/mobile/src/controller/Main.jsx +++ b/apps/documenteditor/mobile/src/controller/Main.jsx @@ -3,7 +3,7 @@ import React, {Component, Fragment} from 'react'; import {inject} from "mobx-react"; import { f7 } from "framework7-react"; import { withTranslation } from 'react-i18next'; -import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs'; import CollaborationController from '../../../../common/mobile/lib/controller/collaboration/Collaboration.jsx'; import {InitReviewController as ReviewController} from '../../../../common/mobile/lib/controller/collaboration/Review.jsx'; import { onAdvancedOptions } from './settings/Download.jsx'; @@ -61,7 +61,7 @@ class MainController extends Component { !window.sdk_scripts && (window.sdk_scripts = ['../../../../sdkjs/common/AllFonts.js', '../../../../sdkjs/word/sdk-all-min.js']); let dep_scripts = ['../../../vendor/xregexp/xregexp-all-min.js', - '../../../vendor/sockjs/sockjs.min.js']; + '../../../vendor/socketio/socket.io.min.js']; dep_scripts.push(...window.sdk_scripts); const promise_get_script = (scriptpath) => { @@ -256,8 +256,6 @@ class MainController extends Component { this.updateWindowTitle(true); - this.api.SetTextBoxInputMode(LocalStorage.getBool("de-settings-inputmode")); - value = LocalStorage.getBool("de-mobile-no-characters"); appSettings.changeNoCharacters(value); this.api.put_ShowParaMarks(value); diff --git a/apps/documenteditor/mobile/src/controller/Search.jsx b/apps/documenteditor/mobile/src/controller/Search.jsx index a337ac6a4..412a7d774 100644 --- a/apps/documenteditor/mobile/src/controller/Search.jsx +++ b/apps/documenteditor/mobile/src/controller/Search.jsx @@ -1,7 +1,6 @@ import React, { useEffect } from 'react'; -import { List, ListItem, Toggle, Page, Navbar, NavRight, Link } from 'framework7-react'; +import { List, ListItem, Toggle, Page, Navbar, NavRight, Link, f7 } from 'framework7-react'; import { SearchController, SearchView, SearchSettingsView } from '../../../../common/mobile/lib/controller/Search'; -import { f7 } from 'framework7-react'; import { withTranslation } from 'react-i18next'; import { Device } from '../../../../common/mobile/utils/device'; import { observer, inject } from "mobx-react"; @@ -96,12 +95,12 @@ const Search = withTranslation()(props => { const _t = t('Settings', {returnObjects: true}); useEffect(() => { - if (f7.searchbar.get('.searchbar')?.enabled && Device.phone) { + if(f7.searchbar.get('.searchbar')?.enabled && Device.phone) { const api = Common.EditorApi.get(); $$('.searchbar-input').focus(); api.asc_enableKeyEvents(false); } - }); + }, []); const onSearchQuery = params => { const api = Common.EditorApi.get(); diff --git a/apps/documenteditor/mobile/src/controller/Toolbar.jsx b/apps/documenteditor/mobile/src/controller/Toolbar.jsx index e863f8922..e896757d8 100644 --- a/apps/documenteditor/mobile/src/controller/Toolbar.jsx +++ b/apps/documenteditor/mobile/src/controller/Toolbar.jsx @@ -3,7 +3,7 @@ import { inject, observer } from 'mobx-react'; import { f7 } from 'framework7-react'; import { useTranslation } from 'react-i18next'; import ToolbarView from "../view/Toolbar"; -import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage"; +import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage.mjs"; const ToolbarController = inject('storeAppOptions', 'users', 'storeReview', 'storeFocusObjects', 'storeToolbarSettings','storeDocumentInfo')(observer(props => { const {t} = useTranslation(); diff --git a/apps/documenteditor/mobile/src/controller/add/AddLink.jsx b/apps/documenteditor/mobile/src/controller/add/AddLink.jsx index 8b80b1488..3c337e851 100644 --- a/apps/documenteditor/mobile/src/controller/add/AddLink.jsx +++ b/apps/documenteditor/mobile/src/controller/add/AddLink.jsx @@ -15,7 +15,7 @@ class AddLinkController extends Component { closeModal () { if ( Device.phone ) { - f7.popup.close('#add-link-popup'); + f7.popup.close('.add-popup'); } else { f7.popover.close('#add-link-popover'); } @@ -59,7 +59,7 @@ class AddLinkController extends Component { props.put_ToolTip(tip); api.add_Hyperlink(props); - this.props.isNavigate ? f7.views.current.router.back() : this.closeModal(); + this.props.isNavigate && !Device.phone ? f7.views.current.router.back() : this.closeModal(); } componentDidMount() { diff --git a/apps/documenteditor/mobile/src/controller/settings/ApplicationSettings.jsx b/apps/documenteditor/mobile/src/controller/settings/ApplicationSettings.jsx index a57ec57e1..1d2f86028 100644 --- a/apps/documenteditor/mobile/src/controller/settings/ApplicationSettings.jsx +++ b/apps/documenteditor/mobile/src/controller/settings/ApplicationSettings.jsx @@ -1,6 +1,6 @@ import React, { Component } from "react"; import { ApplicationSettings } from "../../view/settings/ApplicationSettings"; -import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs'; import {observer, inject} from "mobx-react"; import { Themes } from '../../../../../common/mobile/lib/controller/Themes.js'; diff --git a/apps/documenteditor/mobile/src/controller/settings/Settings.jsx b/apps/documenteditor/mobile/src/controller/settings/Settings.jsx index 809bd1e28..8a319d35b 100644 --- a/apps/documenteditor/mobile/src/controller/settings/Settings.jsx +++ b/apps/documenteditor/mobile/src/controller/settings/Settings.jsx @@ -5,7 +5,7 @@ import { observer, inject } from "mobx-react"; import {Device} from '../../../../../common/mobile/utils/device'; import SettingsView from "../../view/settings/Settings"; -import {LocalStorage} from "../../../../../common/mobile/utils/LocalStorage"; +import {LocalStorage} from "../../../../../common/mobile/utils/LocalStorage.mjs"; const Settings = props => { useEffect(() => { diff --git a/apps/documenteditor/mobile/src/index_dev.html b/apps/documenteditor/mobile/src/index_dev.html index 939932bab..131c5e153 100644 --- a/apps/documenteditor/mobile/src/index_dev.html +++ b/apps/documenteditor/mobile/src/index_dev.html @@ -25,6 +25,7 @@ <% if ( htmlWebpackPlugin.options.skeleton.htmlscript ) { %> <% } %> diff --git a/apps/documenteditor/mobile/src/less/app.less b/apps/documenteditor/mobile/src/less/app.less index dbf4e46fe..7487acd10 100644 --- a/apps/documenteditor/mobile/src/less/app.less +++ b/apps/documenteditor/mobile/src/less/app.less @@ -252,16 +252,7 @@ } } -// Picker - -.row-picker { - .col-50 { - color: @text-secondary; - } -} - // Calendar - .calendar { background-color: @background-secondary; .toolbar { diff --git a/apps/documenteditor/mobile/src/page/main.jsx b/apps/documenteditor/mobile/src/page/main.jsx index 3a48f88e1..0930ea82d 100644 --- a/apps/documenteditor/mobile/src/page/main.jsx +++ b/apps/documenteditor/mobile/src/page/main.jsx @@ -33,6 +33,12 @@ class MainPage extends Component { }; } + componentDidMount() { + if ( $$('.skl-container').length ) { + $$('.skl-container').remove(); + } + } + handleClickToOpenOptions = (opts, showOpts) => { f7.popover.close('.document-menu.modal-in', false); @@ -135,12 +141,14 @@ class MainPage extends Component { const disabledSettings = storeToolbarSettings.disabledSettings; const config = appOptions.config; - let showLogo = !(appOptions.canBrandingExt && (config.customization && (config.customization.loaderName || config.customization.loaderLogo))); + let showLogo = !(config.customization && (config.customization.loaderName || config.customization.loaderLogo)); if (!Object.keys(config).length) { showLogo = !/&(?:logo)=/.test(window.location.search); } const showPlaceholder = !appOptions.isDocReady && (!config.customization || !(config.customization.loaderName || config.customization.loaderLogo)); + const isBranding = appOptions.canBranding || appOptions.canBrandingExt; + if ($$('.skl-container').length) { $$('.skl-container').remove(); } @@ -148,16 +156,20 @@ class MainPage extends Component { return ( {/* Top Navbar */} - - {showLogo && appOptions.canBranding !== undefined &&
                { - window.open(`${__PUBLISHER_URL__}`, "_blank"); - }}>
                } - - - - -
                + {config?.customization && + + {(!isBranding && showLogo) && +
                { + window.open(`${__PUBLISHER_URL__}`, "_blank"); + }}>
                } + + + + +
                + } {/* Page content */} diff --git a/apps/documenteditor/mobile/src/store/appOptions.js b/apps/documenteditor/mobile/src/store/appOptions.js index b71e1ccce..307a41afd 100644 --- a/apps/documenteditor/mobile/src/store/appOptions.js +++ b/apps/documenteditor/mobile/src/store/appOptions.js @@ -1,5 +1,5 @@ import {makeObservable, action, observable} from 'mobx'; -import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs'; export class storeAppOptions { constructor() { @@ -95,6 +95,7 @@ export class storeAppOptions { this.lang = config.lang; this.location = (typeof (config.location) == 'string') ? config.location.toLowerCase() : ''; this.sharingSettingsUrl = config.sharingSettingsUrl; + this.canRequestSharingSettings = config.canRequestSharingSettings; this.fileChoiceUrl = config.fileChoiceUrl; this.mergeFolderUrl = config.mergeFolderUrl; this.canAnalytics = false; diff --git a/apps/documenteditor/mobile/src/store/applicationSettings.js b/apps/documenteditor/mobile/src/store/applicationSettings.js index 16649d877..724084f0e 100644 --- a/apps/documenteditor/mobile/src/store/applicationSettings.js +++ b/apps/documenteditor/mobile/src/store/applicationSettings.js @@ -1,5 +1,5 @@ import {makeObservable, action, observable} from 'mobx'; -import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs'; export class storeApplicationSettings { constructor() { diff --git a/apps/documenteditor/mobile/src/view/Toolbar.jsx b/apps/documenteditor/mobile/src/view/Toolbar.jsx index 0e8025401..4f6978bd6 100644 --- a/apps/documenteditor/mobile/src/view/Toolbar.jsx +++ b/apps/documenteditor/mobile/src/view/Toolbar.jsx @@ -1,4 +1,4 @@ -import React, {Fragment} from 'react'; +import React, {Fragment, useEffect} from 'react'; import { useTranslation } from 'react-i18next'; import {NavLeft, NavRight, NavTitle, Link, Icon} from 'framework7-react'; import { Device } from '../../../../common/mobile/utils/device'; @@ -12,20 +12,35 @@ const ToolbarView = props => { const disableEditBtn = props.isObjectLocked || props.stateDisplayMode || props.disabledEditControls || isDisconnected; const isViewer = props.isViewer; const isMobileView = props.isMobileView; + const docTitle = props.docTitle; + const docTitleLength = docTitle.length; - const shortTitle = (title) => { - const arrDocTitle = title.split('.'); - const ext = arrDocTitle[1]; - const name = arrDocTitle[0]; + const correctOverflowedText = el => { + if(el) { + el.innerText = docTitle; - if(name.length > 7 && Device.phone) { - let shortName = name.substring(0, 7); - return `${shortName}...${ext}`; + if(el.scrollWidth > el.clientWidth) { + const arrDocTitle = docTitle.split('.'); + const ext = arrDocTitle[1]; + const name = arrDocTitle[0]; + const diff = Math.floor(docTitleLength * el.clientWidth / el.scrollWidth - ext.length - 6); + const shortName = name.substring(0, diff).trim(); + + return `${shortName}...${ext}`; + } + + return docTitle; } - - return title; }; + useEffect(() => { + const elemTitle = document.querySelector('.subnavbar .title'); + + if (elemTitle) { + elemTitle.innerText = correctOverflowedText(elemTitle); + } + }, [docTitle, isViewer]); + return ( @@ -38,7 +53,7 @@ const ToolbarView = props => { onRedoClick: props.onRedo })} - {(!Device.phone || isViewer) && {shortTitle(props.docTitle)}} + {(!Device.phone || isViewer) &&
                {docTitle}
                } {(Device.android && props.isEdit && !isViewer) && EditorUIController.getUndoRedo && EditorUIController.getUndoRedo({ disabledUndo: !props.isCanUndo, @@ -46,7 +61,8 @@ const ToolbarView = props => { onUndoClick: props.onUndo, onRedoClick: props.onRedo })} - {(isViewer || !Device.phone) && isAvailableExt && !props.disabledControls && { + {/*isAvailableExt && !props.disabledControls &&*/} + {(isViewer || !Device.phone) && { await props.changeMobileView(); await props.openOptions('snackbar'); setTimeout(() => { @@ -61,8 +77,9 @@ const ToolbarView = props => { onEditClick: e => props.openOptions('edit'), onAddClick: e => props.openOptions('add') })} + {/*props.displayCollaboration &&*/} {Device.phone ? null : } - {props.displayCollaboration && window.matchMedia("(min-width: 360px)").matches ? props.openOptions('coauth')}> : null} + {window.matchMedia("(min-width: 360px)").matches ? props.openOptions('coauth')}> : null} props.openOptions('settings')}>
                diff --git a/apps/documenteditor/mobile/src/view/edit/Edit.jsx b/apps/documenteditor/mobile/src/view/edit/Edit.jsx index a27b4b229..d28625b46 100644 --- a/apps/documenteditor/mobile/src/view/edit/Edit.jsx +++ b/apps/documenteditor/mobile/src/view/edit/Edit.jsx @@ -339,13 +339,6 @@ const EditTabs = props => { component: }) } - if (settings.indexOf('paragraph') > -1) { - editors.push({ - caption: _t.textParagraph, - id: 'edit-paragraph', - component: - }) - } if (settings.indexOf('text') > -1) { editors.push({ caption: _t.textText, @@ -353,6 +346,13 @@ const EditTabs = props => { component: }) } + if (settings.indexOf('paragraph') > -1) { + editors.push({ + caption: _t.textParagraph, + id: 'edit-paragraph', + component: + }) + } } return ( @@ -378,7 +378,7 @@ const EditView = props => { props.onClosed()}> : - props.onClosed()}> + props.onClosed()}> ) diff --git a/apps/documenteditor/mobile/src/view/edit/EditChart.jsx b/apps/documenteditor/mobile/src/view/edit/EditChart.jsx index 297c8550f..67f0b7350 100644 --- a/apps/documenteditor/mobile/src/view/edit/EditChart.jsx +++ b/apps/documenteditor/mobile/src/view/edit/EditChart.jsx @@ -456,7 +456,7 @@ const PageReorder = props => { } return ( - + {Device.phone && @@ -503,7 +503,7 @@ const EditChart = props => { onOverlap: props.onOverlap, onWrapDistance: props.onWrapDistance }}> - diff --git a/apps/documenteditor/mobile/src/view/edit/EditImage.jsx b/apps/documenteditor/mobile/src/view/edit/EditImage.jsx index bed313844..019156676 100644 --- a/apps/documenteditor/mobile/src/view/edit/EditImage.jsx +++ b/apps/documenteditor/mobile/src/view/edit/EditImage.jsx @@ -281,7 +281,7 @@ const PageReorder = props => { } return ( - + {Device.phone && @@ -330,7 +330,7 @@ const EditImage = props => { onReplaceByFile: props.onReplaceByFile, onReplaceByUrl: props.onReplaceByUrl }}> - { wrapType !== 'inline' && } diff --git a/apps/documenteditor/mobile/src/view/edit/EditShape.jsx b/apps/documenteditor/mobile/src/view/edit/EditShape.jsx index 1e1ddcca3..077dd7143 100644 --- a/apps/documenteditor/mobile/src/view/edit/EditShape.jsx +++ b/apps/documenteditor/mobile/src/view/edit/EditShape.jsx @@ -477,7 +477,7 @@ const PageReorder = props => { return ( - + {Device.phone && @@ -530,7 +530,7 @@ const EditShape = props => { if (controlProps) { let spectype = controlProps.get_SpecificType(); - fixedSize = (spectype == Asc.c_oAscContentControlSpecificType.CheckBox || spectype == Asc. c_oAscContentControlSpecificType.ComboBox || spectype == Asc.c_oAscContentControlSpecificType.DropDownList || spectype == Asc.c_oAscContentControlSpecificType.None || spectype == Asc.c_oAscContentControlSpecificType.Picture) && controlProps.get_FormPr() && controlProps.get_FormPr().get_Fixed(); + fixedSize = (spectype == Asc.c_oAscContentControlSpecificType.CheckBox || spectype == Asc. c_oAscContentControlSpecificType.ComboBox || spectype == Asc.c_oAscContentControlSpecificType.DropDownList || spectype == Asc.c_oAscContentControlSpecificType.None || spectype == Asc.c_oAscContentControlSpecificType.Picture || spectype == Asc.c_oAscContentControlSpecificType.Complex) && controlProps.get_FormPr() && controlProps.get_FormPr().get_Fixed(); } let disableRemove = !!props.storeFocusObjects.paragraphObject || (lockType == Asc.c_oAscSdtLockType.SdtContentLocked || lockType == Asc.c_oAscSdtLockType.SdtLocked); @@ -565,7 +565,7 @@ const EditShape = props => { onReplace: props.onReplace }}> } - {(wrapType !== 'inline' && !isSmartArtInternal && settings.indexOf('image') === -1) && } diff --git a/apps/documenteditor/mobile/src/view/edit/EditText.jsx b/apps/documenteditor/mobile/src/view/edit/EditText.jsx index 0a5506da0..01897e754 100644 --- a/apps/documenteditor/mobile/src/view/edit/EditText.jsx +++ b/apps/documenteditor/mobile/src/view/edit/EditText.jsx @@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'; import {Device} from '../../../../../common/mobile/utils/device'; import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.jsx'; import HighlightColorPalette from '../../../../../common/mobile/lib/component/HighlightColorPalette.jsx'; -import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs'; const PageFonts = props => { const isAndroid = Device.android; diff --git a/apps/documenteditor/mobile/src/view/settings/Settings.jsx b/apps/documenteditor/mobile/src/view/settings/Settings.jsx index 32ed242c6..2533eace1 100644 --- a/apps/documenteditor/mobile/src/view/settings/Settings.jsx +++ b/apps/documenteditor/mobile/src/view/settings/Settings.jsx @@ -191,9 +191,6 @@ const SettingsList = inject("storeAppOptions", "storeReview")(observer(props => onClick={onoptionclick.bind(this, "/application-settings/")}> - - - {_canDownload && diff --git a/apps/presentationeditor/embed/index.html b/apps/presentationeditor/embed/index.html index c39744115..c0f34d399 100644 --- a/apps/presentationeditor/embed/index.html +++ b/apps/presentationeditor/embed/index.html @@ -279,7 +279,7 @@ - + diff --git a/apps/presentationeditor/embed/index.html.deploy b/apps/presentationeditor/embed/index.html.deploy index 9bc17c3b2..0f2e9e779 100644 --- a/apps/presentationeditor/embed/index.html.deploy +++ b/apps/presentationeditor/embed/index.html.deploy @@ -273,7 +273,7 @@ - + - + diff --git a/apps/presentationeditor/embed/index_loader.html.deploy b/apps/presentationeditor/embed/index_loader.html.deploy index 574297d38..372df0eee 100644 --- a/apps/presentationeditor/embed/index_loader.html.deploy +++ b/apps/presentationeditor/embed/index_loader.html.deploy @@ -320,7 +320,7 @@ - + diff --git a/apps/presentationeditor/embed/js/ApplicationController.js b/apps/presentationeditor/embed/js/ApplicationController.js index 1ef42abb2..28e6fe5c3 100644 --- a/apps/presentationeditor/embed/js/ApplicationController.js +++ b/apps/presentationeditor/embed/js/ApplicationController.js @@ -614,6 +614,19 @@ PE.ApplicationController = new(function(){ message = me.errorTokenExpire; break; + case Asc.c_oAscError.ID.ConvertationOpenFormat: + if (errData === 'pdf') + message = me.errorInconsistentExtPdf.replace('%1', docConfig.fileType || ''); + else if (errData === 'docx') + message = me.errorInconsistentExtDocx.replace('%1', docConfig.fileType || ''); + else if (errData === 'xlsx') + message = me.errorInconsistentExtXlsx.replace('%1', docConfig.fileType || ''); + else if (errData === 'pptx') + message = me.errorInconsistentExtPptx.replace('%1', docConfig.fileType || ''); + else + message = me.errorInconsistentExt; + break; + default: message = me.errorDefaultMessage.replace('%1', id); break; @@ -782,6 +795,11 @@ PE.ApplicationController = new(function(){ errorForceSave: "An error occurred while saving the file. Please use the 'Download as' option to save the file to your computer hard drive or try again later.", errorLoadingFont: 'Fonts are not loaded.
                Please contact your Document Server administrator.', errorTokenExpire: 'The document security token has expired.
                Please contact your Document Server administrator.', - openErrorText: 'An error has occurred while opening the file' + openErrorText: 'An error has occurred while opening the file', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
                The file content does not match the file extension.' } })(); diff --git a/apps/presentationeditor/embed/locale/de.json b/apps/presentationeditor/embed/locale/de.json index 135a9b429..321553e99 100644 --- a/apps/presentationeditor/embed/locale/de.json +++ b/apps/presentationeditor/embed/locale/de.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Das Dokument ist kennwortgeschützt und kann nicht geöffnet werden.", "PE.ApplicationController.errorFileSizeExceed": "Die Dateigröße überschreitet die für Ihren Server festgelegte Einschränkung.
                Weitere Informationen können Sie von Ihrem Document Server-Administrator erhalten.", "PE.ApplicationController.errorForceSave": "Beim Speichern der Datei ist ein Fehler aufgetreten. Verwenden Sie die Option \"Herunterladen als\", um die Datei auf Ihrer Computerfestplatte zu speichern oder versuchen Sie es später erneut.", + "PE.ApplicationController.errorInconsistentExt": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei stimmt nicht mit der Dateierweiterung überein.", + "PE.ApplicationController.errorInconsistentExtDocx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Textdokumenten (z.B. docx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht einem der folgenden Formate: pdf/djvu/xps/oxps, aber die Datei hat die inkonsistente Erweiterung: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Präsentationen (z.B. pptx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Tabellenkalkulationen (z.B. xlsx), aber die Datei hat die inkonsistente Erweiterung: %1.", "PE.ApplicationController.errorLoadingFont": "Schriftarten nicht hochgeladen.
                Bitte wenden Sie sich an Administratoren von Ihrem Document Server.", "PE.ApplicationController.errorTokenExpire": "Sicherheitstoken des Dokuments ist abgelaufen.
                Wenden Sie sich an Ihren Serveradministrator.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Die Internetverbindung wurde wiederhergestellt und die Dateiversion wurde geändert.
                Bevor Sie weiterarbeiten können, müssen Sie die Datei herunterladen oder den Inhalt kopieren, um sicherzustellen, dass nichts verloren geht, und diese Seite anschließend neu laden.", diff --git a/apps/presentationeditor/embed/locale/en.json b/apps/presentationeditor/embed/locale/en.json index a53e47c3b..0ce46bf0b 100644 --- a/apps/presentationeditor/embed/locale/en.json +++ b/apps/presentationeditor/embed/locale/en.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "The file is password protected and cannot be opened.", "PE.ApplicationController.errorFileSizeExceed": "The file size exceeds the limitation set for your server.
                Please contact your Document Server administrator for details.", "PE.ApplicationController.errorForceSave": "An error occurred while saving the file. Please use the 'Download as' option to save the file to your computer hard drive or try again later.", + "PE.ApplicationController.errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "PE.ApplicationController.errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "PE.ApplicationController.errorLoadingFont": "Fonts are not loaded.
                Please contact your Document Server administrator.", "PE.ApplicationController.errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Connection has been restored, and the file version has been changed.
                Before you can continue working, you need to download the file or copy its content to make sure nothing is lost, and then reload this page.", diff --git a/apps/presentationeditor/embed/locale/es.json b/apps/presentationeditor/embed/locale/es.json index a02c0c207..484a46578 100644 --- a/apps/presentationeditor/embed/locale/es.json +++ b/apps/presentationeditor/embed/locale/es.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "El archivo está protegido por una contraseña y no se puede abrir.", "PE.ApplicationController.errorFileSizeExceed": "El tamaño del archivo supera el límiete establecido por su servidor.
                Contacte con el administrador del servidor de documentos para obtener más detalles.", "PE.ApplicationController.errorForceSave": "Se ha producido un error al guardar el archivo. Utilice la opción \"Descargar como\" para guardar el archivo en el disco duro de su ordenador o inténtelo más tarde.", + "PE.ApplicationController.errorInconsistentExt": "Se ha producido un error al abrir el archivo.
                El contenido del archivo no coincide con la extensión del mismo.", + "PE.ApplicationController.errorInconsistentExtDocx": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a documentos de texto (por ejemplo, docx), pero el archivo tiene extensión inconsistente: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a uno de los siguientes formatos: pdf/djvu/xps/oxps, pero el archivo tiene extensión inconsistente: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a presentaciones (por ejemplo, pptx), pero el archivo tiene extensión inconsistente: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Se ha producido un error al abrir el archivo.
                El contenido del archivo corresponde a hojas de cálculo (por ejemplo, xlsx), pero el archivo tiene extensión inconsistente: %1.", "PE.ApplicationController.errorLoadingFont": "Los tipos de letra no están cargados.
                Contacte con el administrador del servidor de documentos.", "PE.ApplicationController.errorTokenExpire": "El token de seguridad del documento ha expirado.
                Contacte con el administrador del servidor de documentos", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Se ha restablecido la conexión a Internet y se ha cambiado la versión del archivo.
                Para poder seguir trabajando, es necesario descargar el archivo o copiar su contenido para asegurarse de que no se ha perdido nada, y luego volver a cargar esta página.", diff --git a/apps/presentationeditor/embed/locale/eu.json b/apps/presentationeditor/embed/locale/eu.json index 50d3684b4..2d04be0f4 100644 --- a/apps/presentationeditor/embed/locale/eu.json +++ b/apps/presentationeditor/embed/locale/eu.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Fitxategia pasahitzez babestua dago eta ezin da ireki.", "PE.ApplicationController.errorFileSizeExceed": "Fitxategiaren tamainak zure zerbitzarirako ezarritako muga gainditzen du.
                Jarri harremanetan dokumentu-zerbitzariaren administratzailearekin informazio gehiago lortzeko.", "PE.ApplicationController.errorForceSave": "Errore bat gertatu da dokumentua gordetzean.
                Erabili 'Deskargatu honela' aukera fitxategia zure ordenagailuko disko gogorrean gordetzeko edo saiatu berriro geroago.", + "PE.ApplicationController.errorInconsistentExt": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia eta luzapena ez datoz bat.", + "PE.ApplicationController.errorInconsistentExtDocx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia testu-dokumentu bati dagokio (adibidez, docx), baina fitxategiaren luzapena ez dator bat: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia ondorengo formatuetako bati dagokio: pdf/djvu/xps/oxps, baina fitxategiaren luzapena ez dator bat: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia aurkezpen bati dagokio (adibidez, pptx), baina fitxategiaren luzapena ez dator bat: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia kalkulu-orri bati dagokio (adibidez, xlsx), baina fitxategiaren luzapena ez dator bat: %1.", "PE.ApplicationController.errorLoadingFont": "Letra-tipoak ez dira kargatu.
                Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "PE.ApplicationController.errorTokenExpire": "Dokumentuaren segurtasun-tokena iraungi da.
                Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Konexioa berrezarri da eta fitxategiaren bertsioa aldatu da.
                Lanean jarraitu aurretik, beharrezkoa da fitxategia deskargatzea edo edukia kopiatzea, ezer ez dela galduko ziurtatzeko, eta gero orri hau berriro kargatzea.", diff --git a/apps/presentationeditor/embed/locale/fr.json b/apps/presentationeditor/embed/locale/fr.json index 623d4cf98..85e1e3062 100644 --- a/apps/presentationeditor/embed/locale/fr.json +++ b/apps/presentationeditor/embed/locale/fr.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Le fichier est protégé par un mot de passe et ne peut pas être ouvert.", "PE.ApplicationController.errorFileSizeExceed": "La taille du fichier dépasse les limites établies sur votre serveur.
                Veuillez contacter votre administrateur de Document Server pour obtenir plus d'information. ", "PE.ApplicationController.errorForceSave": "Une erreur est survenue lors de l'enregistrement du fichier. Veuillez utiliser l'option «Télécharger en tant que» pour enregistrer le fichier sur le disque dur de votre ordinateur ou réessayer plus tard.", + "PE.ApplicationController.errorInconsistentExt": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier ne correspond pas à l'extension du fichier.", + "PE.ApplicationController.errorInconsistentExtDocx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des documents texte (par exemple docx), mais le fichier a une extension incohérente : %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à l'un des formats suivants : pdf/djvu/xps/oxps, mais le fichier a l'extension incohérente : %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des présentations (par exemple pptx), mais le fichier a une extension incohérente : %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des feuilles de calcul (par exemple xlsx), mais le fichier a une extension incohérente : %1.", "PE.ApplicationController.errorLoadingFont": "Les polices ne sont pas téléchargées.
                Veuillez contacter l'administrateur de Document Server.", "PE.ApplicationController.errorTokenExpire": "Le jeton de sécurité du document a expiré.
                Veuillez contactez l'administrateur de Document Server.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "La connexion a été rétablie et la version du fichier a été modifiée.
                Avant de pouvoir continuer à travailler, vous devez télécharger le fichier ou copier son contenu pour vous assurer que rien n'est perdu, puis recharger cette page.", diff --git a/apps/presentationeditor/embed/locale/hy.json b/apps/presentationeditor/embed/locale/hy.json index 52a9e9d34..7497a56e6 100644 --- a/apps/presentationeditor/embed/locale/hy.json +++ b/apps/presentationeditor/embed/locale/hy.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Ֆայլն ունի գաղտնաբառ և չի կարող բացվել։", "PE.ApplicationController.errorFileSizeExceed": "Նիշքի չափը գերազանցում է ձեր սպասարկիչի համար եղած սահմանափակումը։
                Մանրամասների համար դիմեք ձեր սպասարկիչի վարիչին։", "PE.ApplicationController.errorForceSave": "Սխալ է տեղի ունեցել ֆայլը պահելիս:Խնդրում ենք օգտագործել «Ներբեռնել որպես» տարբերակը՝ ֆայլը ձեր համակարգչի կոշտ սկավառակում պահելու համար կամ ավելի ուշ նորից փորձեք:", + "PE.ApplicationController.errorInconsistentExt": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը չի համապատասխանում ֆայլի ընդլայնմանը:", + "PE.ApplicationController.errorInconsistentExtDocx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է տեքստային փաստաթղթերին (օրինակ՝ docx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում՝ %1:", + "PE.ApplicationController.errorInconsistentExtPdf": "Ֆայլը բացելիս սխալ է տեղի ունեցել:Ֆայլի բովանդակությունը համապատասխանում է հետևյալ ձևաչափերից մեկին՝pdf/djvu/xps/oxps,բայց ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "PE.ApplicationController.errorInconsistentExtPptx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է ներկայացումներին (օրինակ՝ pptx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "PE.ApplicationController.errorInconsistentExtXlsx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է աղյուսակներին (օր. xlsx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", "PE.ApplicationController.errorLoadingFont": "Տառատեսակները բեռնված չեն:
                Խնդրում ենք կապվել ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "PE.ApplicationController.errorTokenExpire": "Փաստաթղթի անվտանգության կտրոնի ժամկետն անցել է։
                Դիմեք փաստաթղթերի սպասարկիչի ձեր վարիչին։", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Կապը վերահաստատվել է,և ֆայլի տարբերակը փոխվել է։
                Նախքան աշխատանքը շարունակելը ներբեռնեք ֆայլը կամ պատճենեք դրա պարունակությունը՝ վստահ լինելու, որ ոչինչ չի կորել, և ապա նորից բեռնեք այս էջը։", diff --git a/apps/presentationeditor/embed/locale/id.json b/apps/presentationeditor/embed/locale/id.json index 118391fdd..b0d71f1c8 100644 --- a/apps/presentationeditor/embed/locale/id.json +++ b/apps/presentationeditor/embed/locale/id.json @@ -15,12 +15,17 @@ "PE.ApplicationController.errorFilePassProtect": "File diproteksi kata sandi", "PE.ApplicationController.errorFileSizeExceed": "Ukuran file melebihi", "PE.ApplicationController.errorForceSave": "Ada kesalahan saat menyimpan file. Silakan gunakan opsi 'Download sebagai' untuk menyimpan file ke komputer Anda dan coba lagi.", + "PE.ApplicationController.errorInconsistentExt": "Terjadi kesalahan saat membuka file.
                Isi file tidak cocok dengan ekstensi file.", + "PE.ApplicationController.errorInconsistentExtDocx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan dokumen teks (mis. docx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Sebuah kesalahan terjadi ketika membuka file.
                Isi file berhubungan dengan satu dari format berikut: pdf/djvu/xps/oxps, tapi file memiliki ekstensi yang tidak konsisten: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan presentasi (mis. pptx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan spreadsheet (mis. xlsx), tapi file memiliki ekstensi yang tidak konsisten: %1.", "PE.ApplicationController.errorLoadingFont": "Font tidak bisa dimuat.
                Silakan kontak admin Server Dokumen Anda.", "PE.ApplicationController.errorTokenExpire": "Token keamanan dokumen sudah kadaluwarsa.
                Silakan hubungi admin Server Dokumen Anda.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Koneksi internet sudah kembali dan versi file sudah diganti.
                Sebelum Anda bisa melanjutkan kerja, Anda perlu mengunduh file atau salin konten untuk memastikan tidak ada yang hilang, lalu muat ulang halaman ini.", "PE.ApplicationController.errorUserDrop": "File tidak dapat di akses", "PE.ApplicationController.notcriticalErrorTitle": "Peringatan", - "PE.ApplicationController.openErrorText": "Eror ketika membuka file.", + "PE.ApplicationController.openErrorText": "Kesalahan terjadi ketika membuka file.", "PE.ApplicationController.scriptLoadError": "Koneksi terlalu lambat,", "PE.ApplicationController.textAnonymous": "Anonim", "PE.ApplicationController.textGuest": "Tamu", diff --git a/apps/presentationeditor/embed/locale/ja.json b/apps/presentationeditor/embed/locale/ja.json index 54f69a487..49bdbb7b6 100644 --- a/apps/presentationeditor/embed/locale/ja.json +++ b/apps/presentationeditor/embed/locale/ja.json @@ -15,8 +15,13 @@ "PE.ApplicationController.errorFilePassProtect": "ドキュメントがパスワードで保護されているため開くことができません", "PE.ApplicationController.errorFileSizeExceed": "ファイルサイズがサーバーで設定された制限を超過しています。
                Documentサーバー管理者に詳細をお問い合わせください。", "PE.ApplicationController.errorForceSave": "ファイルを保存中にエラーがありました。ファイルをPCに保存するように「としてダウンロード」と言うオプションを使い、または後でもう一度してみてください。", + "PE.ApplicationController.errorInconsistentExt": "ファイルを開くときにエラーが発生しました。
                ファイルの内容がファイルの拡張子と一致しません。", + "PE.ApplicationController.errorInconsistentExtDocx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はドキュメント (docx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "PE.ApplicationController.errorInconsistentExtPdf": "ファイルを開くときにエラーが発生しました。
                ファイルの内容は次のいずれかの形式に対応しています: pdf/djvu/xps/oxps が、ファイルの拡張子が一致していません: %1", + "PE.ApplicationController.errorInconsistentExtPptx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はプレゼンテーション (pptx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "PE.ApplicationController.errorInconsistentExtXlsx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はスプレッドシート (xlsx など) に対応していますが、ファイルの拡張子が一致していません: %1", "PE.ApplicationController.errorLoadingFont": "フォントがダウンロードされませんでした。
                文書サーバのアドミニストレータを連絡してください。", - "PE.ApplicationController.errorTokenExpire": "ドキュメント・セキュリティ・トークンの有効期限が切れています。
                ドキュメントサーバーの管理者に連絡してください。", + "PE.ApplicationController.errorTokenExpire": "ドキュメントセキュリティトークンの有効期限が切れています。
                ドキュメントサーバーの管理者に連絡してください。", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "インターネット接続が復旧し、ファイルのバージョンが更新されています。
                作業を継続する前に、ファイルをダウンロードするか内容をコピーして変更が失われていないことを確認してから、このページを再読み込みしてください。", "PE.ApplicationController.errorUserDrop": "今、ファイルにアクセスすることはできません。", "PE.ApplicationController.notcriticalErrorTitle": "警告", diff --git a/apps/presentationeditor/embed/locale/pt-pt.json b/apps/presentationeditor/embed/locale/pt-pt.json index 4dc251e70..4de5d3708 100644 --- a/apps/presentationeditor/embed/locale/pt-pt.json +++ b/apps/presentationeditor/embed/locale/pt-pt.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "O documento está protegido por palavra-passe e não pode ser aberto.", "PE.ApplicationController.errorFileSizeExceed": "O tamanho do documento excede o limite permitido pelo servidor.
                Contacte o administrador do servidor de documentos para mais informações.", "PE.ApplicationController.errorForceSave": "Ocorreu um erro ao guardar o ficheiro. Utilize a opção 'Descarregar como' para guardar o ficheiro no computador ou tente novamente mais tarde.", + "PE.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro não coincide com a sua extensão.", + "PE.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a um documento de texto (doc, docx...), mas a extensão de ficheiro não é consistente: %1", + "PE.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas a extensão de ficheiro não é consistente: %1", + "PE.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a uma apresentação (ppt, pptx...), mas a extensão de ficheiro não é consistente: %1", + "PE.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a uma folha de cálculo (xls, xlsx...), mas a extensão de ficheiro não é consistente: %1", "PE.ApplicationController.errorLoadingFont": "Tipos de letra não carregados.
                Por favor contacte o administrador do servidor de documentos.", "PE.ApplicationController.errorTokenExpire": "O 'token' de segurança do documento expirou.
                Entre em contacto com o administrador do servidor de documentos.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "A ligação foi restaurada e a versão do ficheiro foi alterada.
                Antes de poder continuar a trabalhar, é necessário descarregar o ficheiro ou copiar o seu conteúdo para garantir que nada se perde e depois voltar a carregar esta página.", diff --git a/apps/presentationeditor/embed/locale/pt.json b/apps/presentationeditor/embed/locale/pt.json index 4ba342222..f68346f3c 100644 --- a/apps/presentationeditor/embed/locale/pt.json +++ b/apps/presentationeditor/embed/locale/pt.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "O documento está protegido por senha e não pode ser aberto.", "PE.ApplicationController.errorFileSizeExceed": "O tamanho do arquivo excede o limite de seu servidor.
                Por favor, contate seu administrador de Servidor de Documentos para detalhes.", "PE.ApplicationController.errorForceSave": "Ocorreu um erro na gravação. Favor utilizar a opção 'Baixar como' para gravar o arquivo em seu computador ou tente novamente mais tarde.", + "PE.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo não corresponde à extensão do arquivo.", + "PE.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a documentos de texto (por exemplo, docx), mas o arquivo tem a extensão inconsistente: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas o arquivo tem a extensão inconsistente: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a apresentações (por exemplo, pptx), mas o arquivo tem a extensão inconsistente: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a planilhas (por exemplo, xlsx), mas o arquivo tem a extensão inconsistente: %1.", "PE.ApplicationController.errorLoadingFont": "As fontes não foram carregadas.
                Entre em contato com o administrador do Document Server.", "PE.ApplicationController.errorTokenExpire": "O token de segurança do documento expirou.
                Entre em contato com o administrador do Document Server.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "A conexão à internet foi restabelecida, e a versão do arquivo foi alterada.
                Antes de continuar seu trabalho, transfira o arquivo ou copie seu conteúdo para assegurar que nada seja perdido, e recarregue esta página.", diff --git a/apps/presentationeditor/embed/locale/ro.json b/apps/presentationeditor/embed/locale/ro.json index 2ab325de5..eabf36aee 100644 --- a/apps/presentationeditor/embed/locale/ro.json +++ b/apps/presentationeditor/embed/locale/ro.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Fișierul este protejat cu parolă și deaceea nu poate fi deschis.", "PE.ApplicationController.errorFileSizeExceed": "Dimensiunea fișierului depășește limita permisă de serverul Dvs.
                Pentru detalii, contactați administratorul dumneavoastră de Server Documente.", "PE.ApplicationController.errorForceSave": "S-a produs o eroare în timpul salvării fișierului. Pentru copierea de rezervă pe PC utilizați opțiunea Descărcare ca... sau încercați din nou mai târziu.", + "PE.ApplicationController.errorInconsistentExt": "Eroare la deschiderea fișierului.
                Conținutul fișierului nu corespunde cu extensia numelui de fișier.", + "PE.ApplicationController.errorInconsistentExtDocx": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unui format de document text (ex. docx), dar extensia numelui de fișier nu se potrivește: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unuia dintre următoarele formate: pdf/djvu/xps/oxps, dar extensia numelui de fișier nu se potrivește: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unui format de prezentare (ex. pptx), dar extensia numelui de fișier nu se potrivește: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Eroare la deschiderea fișierului.
                Conținutul fișierului corespunde unui format de foaie de calcul (ex. xlsx), dar extensia numelui de fișier nu se potrivește: %1.", "PE.ApplicationController.errorLoadingFont": "Fonturile nu sunt încărcate.
                Contactați administratorul dvs de Server Documente.", "PE.ApplicationController.errorTokenExpire": "Token de securitate din document a expirat.
                Contactați administratorul dvs. de Server Documente.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Conexiunea s-a restabilit și versiunea fișierului s-a schimbat.
                Înainte de a continua, fișierul trebuie descărcat sau conținutul fișierului copiat ca să vă asigurați că nimic nu e pierdut, apoi reîmprospătați această pagină.", diff --git a/apps/presentationeditor/embed/locale/ru.json b/apps/presentationeditor/embed/locale/ru.json index 4c40a4746..cba990ea9 100644 --- a/apps/presentationeditor/embed/locale/ru.json +++ b/apps/presentationeditor/embed/locale/ru.json @@ -15,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Файл защищен паролем и не может быть открыт.", "PE.ApplicationController.errorFileSizeExceed": "Размер файла превышает ограничение, установленное для вашего сервера.
                Обратитесь к администратору Сервера документов для получения дополнительной информации.", "PE.ApplicationController.errorForceSave": "При сохранении файла произошла ошибка. Используйте опцию 'Скачать как', чтобы сохранить файл на жестком диске компьютера или повторите попытку позже.", + "PE.ApplicationController.errorInconsistentExt": "При открытии файла произошла ошибка.
                Содержимое файла не соответствует расширению файла.", + "PE.ApplicationController.errorInconsistentExtDocx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует документам (например, docx), но файл имеет несоответствующее расширение: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "При открытии файла произошла ошибка.
                Содержимое файла соответствует одному из следующих форматов: pdf/djvu/xps/oxps, но файл имеет несоответствующее расширение: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует презентациям (например, pptx), но файл имеет несоответствующее расширение: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует электронным таблицам (например, xlsx), но файл имеет несоответствующее расширение: %1.", "PE.ApplicationController.errorLoadingFont": "Шрифты не загружены.
                Пожалуйста, обратитесь к администратору Сервера документов.", "PE.ApplicationController.errorTokenExpire": "Истек срок действия токена безопасности документа.
                Пожалуйста, обратитесь к администратору Сервера документов.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "Соединение было восстановлено, и версия файла изменилась.
                Прежде чем продолжить работу, надо скачать файл или скопировать его содержимое, чтобы обеспечить сохранность данных, а затем перезагрузить страницу.", diff --git a/apps/presentationeditor/embed/locale/tr.json b/apps/presentationeditor/embed/locale/tr.json index 83b0847f2..2f28c68ae 100644 --- a/apps/presentationeditor/embed/locale/tr.json +++ b/apps/presentationeditor/embed/locale/tr.json @@ -4,6 +4,7 @@ "common.view.modals.txtHeight": "Yükseklik", "common.view.modals.txtShare": "Bağlantıyı Paylaş", "common.view.modals.txtWidth": "Genişlik", + "common.view.SearchBar.textFind": "Bulmak", "PE.ApplicationController.convertationErrorText": "Değişim başarısız oldu.", "PE.ApplicationController.convertationTimeoutText": "Değişim süresi aşıldı.", "PE.ApplicationController.criticalErrorTitle": "Hata", @@ -14,6 +15,11 @@ "PE.ApplicationController.errorFilePassProtect": "Döküman şifre korumalı ve açılamadı", "PE.ApplicationController.errorFileSizeExceed": "Dosya boyutu, sunucunuz için belirlenen limiti aşıyor.
                Ayrıntılar için lütfen Doküman Sunucusu yöneticinizle iletişime geçin.", "PE.ApplicationController.errorForceSave": "Dosya kaydedilirken bir hata oluştu. Dosyayı bilgisayarınıza kaydetmek için lütfen 'Farklı Kaydet' seçeneğini kullanın veya daha sonra tekrar deneyin.", + "PE.ApplicationController.errorInconsistentExt": "Dosya açılırken bir hata oluştu.
                Dosya içeriği, dosya uzantısıyla eşleşmiyor.", + "PE.ApplicationController.errorInconsistentExtDocx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği metin belgelerine (örn. docx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", + "PE.ApplicationController.errorInconsistentExtPdf": "Dosya açılırken bir hata oluştu.
                Dosya içeriği şu biçimlerden birine karşılık geliyor: pdf/djvu/xps/oxps, ancak dosyanın uzantısı tutarsız: %1.", + "PE.ApplicationController.errorInconsistentExtPptx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği sunumlara karşılık geliyor (ör. pptx), ancak dosyanın uzantısı tutarsız: %1.", + "PE.ApplicationController.errorInconsistentExtXlsx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği e-tablolara (örn. xlsx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", "PE.ApplicationController.errorLoadingFont": "Yazı tipleri yüklenmedi.
                Lütfen Doküman Sunucusu yöneticinize başvurun.", "PE.ApplicationController.errorTokenExpire": "Belge güvenlik belirtecinin süresi doldu.
                Lütfen Belge Sunucusu yöneticinize başvurun.", "PE.ApplicationController.errorUpdateVersionOnDisconnect": "İnternet bağlantısı tekrar sağlandı, ve dosya versiyon değişti.
                Çalışmanıza devam etmeden önce, veri kaybını önlemeniz için dosyasının bir kopyasını indirmeniz ya da dosya içeriğini kopyalamanız ve sonrasında sayfayı yenilemeniz gerekmektedir.", @@ -34,5 +40,6 @@ "PE.ApplicationView.txtFileLocation": "Dosya konumunu aç", "PE.ApplicationView.txtFullScreen": "Tam Ekran", "PE.ApplicationView.txtPrint": "Yazdır", + "PE.ApplicationView.txtSearch": "Arama", "PE.ApplicationView.txtShare": "Paylaş" } \ No newline at end of file diff --git a/apps/presentationeditor/main/app.js b/apps/presentationeditor/main/app.js index b34a9cd72..8cba9cd5b 100644 --- a/apps/presentationeditor/main/app.js +++ b/apps/presentationeditor/main/app.js @@ -53,7 +53,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', allfonts : '../../sdkjs/common/AllFonts', sdk : '../../sdkjs/slide/sdk-all-min', api : 'api/documents/api', @@ -106,7 +106,7 @@ require.config({ 'underscore', 'allfonts', 'xregexp', - 'sockjs' + 'socketio' ] }, gateway: { @@ -127,7 +127,6 @@ require([ 'bootstrap', 'core', 'sdk', - 'api', 'analytics', 'gateway', 'locale' @@ -152,6 +151,7 @@ require([ 'Main', 'ViewTab', 'Search', + 'Print', 'Common.Controllers.Fonts', 'Common.Controllers.History' /** coauthoring begin **/ @@ -182,6 +182,7 @@ require([ 'presentationeditor/main/app/controller/Main', 'presentationeditor/main/app/controller/ViewTab', 'presentationeditor/main/app/controller/Search', + 'presentationeditor/main/app/controller/Print', 'presentationeditor/main/app/view/FileMenuPanels', 'presentationeditor/main/app/view/ParagraphSettings', 'presentationeditor/main/app/view/ImageSettings', diff --git a/apps/presentationeditor/main/app.reporter.js b/apps/presentationeditor/main/app.reporter.js index 1c5efdb6b..e06d14850 100644 --- a/apps/presentationeditor/main/app.reporter.js +++ b/apps/presentationeditor/main/app.reporter.js @@ -48,7 +48,7 @@ require.config({ jquery : '../vendor/jquery/jquery.min', underscore : '../vendor/underscore/underscore-min', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', allfonts : '../../sdkjs/common/AllFonts', sdk : '../../sdkjs/slide/sdk-all-min' }, @@ -62,7 +62,7 @@ require.config({ 'underscore', 'allfonts', 'xregexp', - 'sockjs' + 'socketio' ] } } diff --git a/apps/presentationeditor/main/app/controller/DocumentHolder.js b/apps/presentationeditor/main/app/controller/DocumentHolder.js index 9ec97e84c..d53668081 100644 --- a/apps/presentationeditor/main/app/controller/DocumentHolder.js +++ b/apps/presentationeditor/main/app/controller/DocumentHolder.js @@ -221,6 +221,10 @@ define([ me.api.asc_registerPlaceholderCallback(AscCommon.PlaceholderButtonType.Video, _.bind(me.onClickPlaceholder, me, AscCommon.PlaceholderButtonType.Video)); me.api.asc_registerPlaceholderCallback(AscCommon.PlaceholderButtonType.Audio, _.bind(me.onClickPlaceholder, me, AscCommon.PlaceholderButtonType.Audio)); me.api.asc_registerCallback('asc_onTrackGuide', _.bind(me.onTrackGuide, me)); + me.api.asc_registerCallback('asc_onShowMathTrack', _.bind(me.onShowMathTrack, me)); + me.api.asc_registerCallback('asc_onHideMathTrack', _.bind(me.onHideMathTrack, me)); + me.api.asc_registerCallback('asc_onLockViewProps', _.bind(me.onLockViewProps, me, true)); + me.api.asc_registerCallback('asc_onUnLockViewProps', _.bind(me.onLockViewProps, me, false)); } me.api.asc_registerCallback('asc_onCoAuthoringDisconnect', _.bind(me.onCoAuthoringDisconnect, me)); Common.NotificationCenter.on('api:disconnect', _.bind(me.onCoAuthoringDisconnect, me)); @@ -370,6 +374,8 @@ define([ view.menuRemoveHyperlinkPara.on('click', _.bind(me.removeHyperlink, me)); view.menuRemoveHyperlinkTable.on('click', _.bind(me.removeHyperlink, me)); view.menuChartEdit.on('click', _.bind(me.editChartClick, me, undefined)); + view.menuImgSaveAsPicture.on('click', _.bind(me.saveAsPicture, me)); + view.menuTableSaveAsPicture.on('click', _.bind(me.saveAsPicture, me)); view.menuAddCommentPara.on('click', _.bind(me.addComment, me)); view.menuAddCommentTable.on('click', _.bind(me.addComment, me)); view.menuAddCommentImg.on('click', _.bind(me.addComment, me)); @@ -427,6 +433,8 @@ define([ view.mnuGuides.menu.on('item:click', _.bind(me.onGuidesClick, me)); view.mnuGridlines.menu.on('item:click', _.bind(me.onGridlinesClick, me)); view.mnuRulers.on('click', _.bind(me.onRulersClick, me)); + view.menuTableEquationSettings.menu.on('item:click', _.bind(me.convertEquation, me)); + view.menuParagraphEquation.menu.on('item:click', _.bind(me.convertEquation, me)); }, getView: function (name) { @@ -446,7 +454,7 @@ define([ showPoint[0] -= 3; showPoint[1] -= 3; } else { - value && (value.guideId = event.get_Guide()); + value && (value.guide = {guideId: event.get_Guide()}); } if (!menu.rendered) { @@ -625,6 +633,28 @@ define([ } } } + + if (this.mode && this.mode.isEdit) { + var i = -1, + in_equation = false, + locked = false; + while (++i < selectedElements.length) { + var type = selectedElements[i].get_ObjectType(); + if (type === Asc.c_oAscTypeSelectElement.Math) { + in_equation = true; + } else if (type === Asc.c_oAscTypeSelectElement.Slide) { + var value = selectedElements[i].get_ObjectValue(); + value && (locked = locked || value.get_LockDelete()); + } else if (type === Asc.c_oAscTypeSelectElement.Paragraph) { + var value = selectedElements[i].get_ObjectValue(); + value && (locked = locked || value.get_Locked()); + } + } + if (in_equation) { + this._state.equationLocked = locked; + this.disableEquationBar(); + } + } }, handleDocumentWheel: function(event){ @@ -1178,7 +1208,7 @@ define([ pasteContainer = $('
                '); - documentHolder.cmpEl.find('#id_main_view').append(pasteContainer); + documentHolder.cmpEl.append(pasteContainer); me.btnSpecialPaste = new Common.UI.Button({ parentEl: $('#id-document-holder-btn-special-paste'), @@ -1218,10 +1248,6 @@ define([ if (sdkPanelLeft.length) offsetLeft += (sdkPanelLeft.css('display') !== 'none') ? sdkPanelLeft.width() : 0; - var sdkPanelThumbs = documentHolder.cmpEl.find('#id_panel_thumbnails'); - if (sdkPanelThumbs.length) - offsetLeft += (sdkPanelThumbs.css('display') !== 'none') ? sdkPanelThumbs.width() : 0; - var showPoint = [Math.max(0, coord.asc_getX() + coord.asc_getWidth() + 3 - offsetLeft), coord.asc_getY() + coord.asc_getHeight() + 3]; pasteContainer.css({left: showPoint[0], top : showPoint[1]}); pasteContainer.show(); @@ -1276,7 +1302,7 @@ define([ }, onChangeCropState: function(state) { - this.documentHolder.menuImgCrop.menu.items[0].setChecked(state, true); + this.documentHolder.menuImgCrop && this.documentHolder.menuImgCrop.menu.items[0].setChecked(state, true); }, onDoubleClickOnTableOleObject: function(chart) { @@ -1355,6 +1381,12 @@ define([ }, + saveAsPicture: function() { + if(this.api) { + this.api.asc_SaveDrawingAsPicture(); + } + }, + /** coauthoring begin **/ addComment: function(item, e, eOpt){ if (this.api && this.mode.canCoAuthoring && this.mode.canComments) { @@ -2132,7 +2164,7 @@ define([ onGuidesClick: function(menu, item) { if (item.value == 'del-guide' && item.options.guideId) - this.api.asc_deleteGuide(item.options.guideId); + this.documentHolder.fireEvent('guides:delete', [item.options.guideId]); else if (item.value === 'add-vert' || item.value === 'add-hor') this.documentHolder.fireEvent('guides:add', [item.value]); else if (item.value === 'clear') @@ -2168,6 +2200,16 @@ define([ tip.isHidden = true; } } else { + if (_.isUndefined(this._XY)) { + this._XY = [ + this.documentHolder.cmpEl.offset().left - $(window).scrollLeft(), + this.documentHolder.cmpEl.offset().top - $(window).scrollTop() + ]; + this._Width = this.documentHolder.cmpEl.width(); + this._Height = this.documentHolder.cmpEl.height(); + this._BodyWidth = $('body').width(); + } + if (!tip.parentEl) { tip.parentEl = $('
                '); this.documentHolder.cmpEl.append(tip.parentEl); @@ -2208,9 +2250,178 @@ define([ } }, + onShowMathTrack: function(bounds) { + if (bounds[3] < 0) { + this.onHideMathTrack(); + return; + } + var me = this, + documentHolder = me.documentHolder, + eqContainer = documentHolder.cmpEl.find('#equation-container'); + + // Prepare menu container + if (eqContainer.length < 1) { + var equationsStore = me.getApplication().getCollection('EquationGroups'), + eqStr = '
                '; + + me.getApplication().getController('Toolbar').onMathTypes(); + + me.equationBtns = []; + for (var i = 0; i < equationsStore.length; ++i) { + var style = 'margin-right: 8px;' + (i==0 ? 'margin-left: 5px;' : ''); + eqStr += ''; + } + eqStr += '
                '; + eqStr += ''; + eqStr += '
                '; + eqContainer = $(eqStr); + documentHolder.cmpEl.append(eqContainer); + var onShowBefore = function (menu) { + var index = menu.options.value, + group = equationsStore.at(index); + var equationPicker = new Common.UI.DataViewSimple({ + el: $('#id-document-holder-btn-equation-menu-' + index, menu.cmpEl), + parentMenu: menu, + store: group.get('groupStore'), + scrollAlwaysVisible: true, + showLast: false, + restoreHeight: 450, + itemTemplate: _.template( + '
                ' + + '
                ' + + '
                ') + }); + equationPicker.on('item:click', function(picker, item, record, e) { + if (me.api) { + if (record) + me.api.asc_AddMath(record.get('data').equationType); + } + }); + menu.off('show:before', onShowBefore); + }; + var bringForward = function (menu) { + eqContainer.addClass('has-open-menu'); + }; + var sendBackward = function (menu) { + eqContainer.removeClass('has-open-menu'); + }; + for (var i = 0; i < equationsStore.length; ++i) { + var equationGroup = equationsStore.at(i); + var btn = new Common.UI.Button({ + parentEl: $('#id-document-holder-btn-equation-' + i, documentHolder.cmpEl), + cls : 'btn-toolbar no-caret', + iconCls : 'svgicon ' + equationGroup.get('groupIcon'), + hint : equationGroup.get('groupName'), + menu : new Common.UI.Menu({ + cls: 'menu-shapes', + value: i, + items: [ + { template: _.template('') } + ] + }) + }); + btn.menu.on('show:before', onShowBefore); + btn.menu.on('show:before', bringForward); + btn.menu.on('hide:after', sendBackward); + me.equationBtns.push(btn); + } + + me.equationSettingsBtn = new Common.UI.Button({ + parentEl: $('#id-document-holder-btn-equation-settings', documentHolder.cmpEl), + cls : 'btn-toolbar no-caret', + iconCls : 'toolbar__icon more-vertical', + hint : me.documentHolder.advancedEquationText, + menu : me.documentHolder.createEquationMenu('popuptbeqinput', 'tl-bl') + }); + me.equationSettingsBtn.menu.options.initMenu = function() { + var eq = me.api.asc_GetMathInputType(); + var menu = me.equationSettingsBtn.menu; + menu.items[0].setChecked(eq===Asc.c_oAscMathInputType.Unicode); + menu.items[1].setChecked(eq===Asc.c_oAscMathInputType.LaTeX); + }; + me.equationSettingsBtn.menu.on('item:click', _.bind(me.convertEquation, me)); + me.equationSettingsBtn.menu.on('show:before', function(menu) { + menu.options.initMenu(); + }); + } + + var showPoint = [(bounds[0] + bounds[2])/2 - eqContainer.outerWidth()/2, bounds[1] - eqContainer.outerHeight() - 10]; + if (showPoint[1]<0) { + showPoint[1] = bounds[3] + 10; + } + showPoint[1] = Math.min(me._Height - eqContainer.outerHeight(), Math.max(0, showPoint[1])); + eqContainer.css({left: showPoint[0], top : showPoint[1]}); + + var menuAlign = (me._Height - showPoint[1] - eqContainer.outerHeight() < 220) ? 'bl-tl' : 'tl-bl'; + me.equationBtns.forEach(function(item){ + item && (item.menu.menuAlign = menuAlign); + }); + me.equationSettingsBtn.menu.menuAlign = menuAlign; + if (eqContainer.is(':visible')) { + if (me.equationSettingsBtn.menu.isVisible()) { + me.equationSettingsBtn.menu.options.initMenu(); + me.equationSettingsBtn.menu.alignPosition(); + } + } else { + eqContainer.show(); + } + me.disableEquationBar(); + }, + + onHideMathTrack: function() { + var eqContainer = this.documentHolder.cmpEl.find('#equation-container'); + if (eqContainer.is(':visible')) { + eqContainer.hide(); + } + }, + + disableEquationBar: function() { + var eqContainer = this.documentHolder.cmpEl.find('#equation-container'), + disabled = this._isDisabled || this._state.equationLocked; + + if (eqContainer.length>0 && eqContainer.is(':visible')) { + this.equationBtns.forEach(function(item){ + item && item.setDisabled(!!disabled); + }); + this.equationSettingsBtn.setDisabled(!!disabled); + } + }, + + convertEquation: function(menu, item, e) { + if (this.api) { + if (item.options.type=='input') + this.api.asc_SetMathInputType(item.value); + else if (item.options.type=='view') + this.api.asc_ConvertMathView(item.value.linear, item.value.all); + } + }, + + onLockViewProps: function(lock) { + Common.Utils.InternalSettings.set("pe-lock-view-props", lock); + + var me = this, + currentMenu = me.documentHolder.currentMenu; + if (currentMenu && currentMenu.isVisible() && me.documentHolder.slideMenu===currentMenu){ + if (me.api.asc_getCurrentFocusObject() !== 0 ){ // not thumbnails + if (!me._isDisabled && me.mode.isEdit) { // update slide menu items + var obj = me.fillMenuProps(me.api.getSelectedElements()); + if (obj) { + if (obj.menu_to_show===currentMenu) { + currentMenu.options.initMenu(obj.menu_props); + currentMenu.alignPosition(); + } + } + } + } + } + }, + SetDisabled: function(state) { this._isDisabled = state; this.documentHolder.SetDisabled(state); + this.disableEquationBar(); }, editComplete: function() { diff --git a/apps/presentationeditor/main/app/controller/LeftMenu.js b/apps/presentationeditor/main/app/controller/LeftMenu.js index e8fb6d79b..a0a351eb2 100644 --- a/apps/presentationeditor/main/app/controller/LeftMenu.js +++ b/apps/presentationeditor/main/app/controller/LeftMenu.js @@ -100,6 +100,9 @@ define([ }, 'SearchBar': { 'search:show': _.bind(this.onShowHideSearch, this) + }, + 'ViewTab': { + 'leftmenu:hide': _.bind(this.onLeftMenuHide, this) } }); Common.NotificationCenter.on('leftmenu:change', _.bind(this.onMenuChange, this)); @@ -107,12 +110,12 @@ define([ if ( !this.leftMenu.panelHistory.isVisible() ) this.clickMenuFileItem(null, 'history'); }, this)); + Common.NotificationCenter.on('file:print', _.bind(this.clickToolbarPrint, this)); }, onLaunch: function() { this.leftMenu = this.createView('LeftMenu').render(); this.leftMenu.btnThumbs.on('toggle', _.bind(this.onShowTumbnails, this)); - this.isThumbsShown = true; this.leftMenu.btnSearchBar.on('toggle', _.bind(this.onMenuSearchBar, this)); Common.util.Shortcuts.delegateShortcuts({ @@ -162,7 +165,11 @@ define([ this.leftMenu.getMenu('file').setApi(api); if (this.mode.canUseHistory) this.getApplication().getController('Common.Controllers.History').setApi(this.api).setMode(this.mode); - this.leftMenu.btnThumbs.toggle(true); + + var value = Common.UI.LayoutManager.getInitValue('leftMenu'); + value = (value!==undefined) ? !value : false; + this.isThumbsShown = !Common.localStorage.getBool("pe-hidden-leftmenu", value); + this.leftMenu.btnThumbs.toggle(this.isThumbsShown); this.getApplication().getController('Search').setApi(this.api).setMode(this.mode); this.leftMenu.setOptionsPanel('advancedsearch', this.getApplication().getController('Search').getView('Common.Views.SearchPanel')); return this; @@ -271,6 +278,7 @@ define([ this.showHistory(); } break; + case 'external-help': close_menu = true; break; default: close_menu = false; } @@ -332,10 +340,6 @@ define([ }, applySettings: function(menu) { - var value = Common.localStorage.getBool("pe-settings-inputmode"); - Common.Utils.InternalSettings.set("pe-settings-inputmode", value); - this.api.SetTextBoxInputMode(value); - var fast_coauth = Common.Utils.InternalSettings.get("pe-settings-coauthmode"); /** coauthoring begin **/ if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring) { @@ -351,7 +355,7 @@ define([ } /** coauthoring end **/ - value = Common.localStorage.getBool("pe-settings-cachemode", true); + var value = Common.localStorage.getBool("pe-settings-cachemode", true); Common.Utils.InternalSettings.set("pe-settings-cachemode", value); this.api.asc_setDefaultBlitMode(value); @@ -668,6 +672,7 @@ define([ onPluginOpen: function(panel, type, action) { if (type == 'onboard') { if (action == 'open') { + this.tryToShowLeftMenu(); this.leftMenu.close(); this.leftMenu.btnThumbs.toggle(false, false); this.leftMenu.panelPlugins.show(); @@ -701,6 +706,7 @@ define([ if (this.mode.canCoAuthoring && this.mode.canChat && !this.mode.isLightVersion) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('chat'); } else { this.leftMenu.btnChat.toggle(false, true); @@ -712,6 +718,7 @@ define([ onShowHideSearch: function (state, findText) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('advancedsearch', undefined, true); this.leftMenu.fireEvent('search:aftershow', this.leftMenu, findText); } else { @@ -769,7 +776,37 @@ define([ isCommentsVisible: function() { return this.leftMenu && this.leftMenu.panelComments && this.leftMenu.panelComments.isVisible(); }, - + + onLeftMenuHide: function (view, status) { + if (this.leftMenu) { + if (status) { + this.leftMenu.show(); + } else { + this.menuExpand(this, 'thumbs', false); + this.leftMenu.close(); + this.leftMenu.hide(); + } + Common.localStorage.setBool('pe-hidden-leftmenu', !status); + + !view && this.leftMenu.fireEvent('view:hide', [this, !status]); + } + + Common.NotificationCenter.trigger('layout:changed', 'main'); + Common.NotificationCenter.trigger('edit:complete', this.leftMenu); + }, + + tryToShowLeftMenu: function() { + if ((!this.mode.canBrandingExt || !this.mode.customization || this.mode.customization.leftMenu !== false) && Common.UI.LayoutManager.isElementVisible('leftMenu')) + this.onLeftMenuHide(null, true); + }, + + clickToolbarPrint: function () { + if (this.mode.canPreviewPrint) + this.leftMenu.showMenu('file:printpreview'); + else if (this.mode.canPrint) + this.clickMenuFileItem(null, 'print'); + }, + textNoTextFound : 'Text not found', newDocumentTitle : 'Unnamed document', requestEditRightsText : 'Requesting editing rights...', diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js index 577819fc7..339b9692f 100644 --- a/apps/presentationeditor/main/app/controller/Main.js +++ b/apps/presentationeditor/main/app/controller/Main.js @@ -339,6 +339,23 @@ define([ Common.Utils.InternalSettings.set("guest-username", value); Common.Utils.InternalSettings.set("save-guest-username", !!value); } + if (this.appOptions.customization.font) { + if (this.appOptions.customization.font.name && typeof this.appOptions.customization.font.name === 'string') { + var arr = this.appOptions.customization.font.name.split(','); + for (var i=0; i86)); // if isChrome or isOpera == true use asc_onPrintUrl event + Common.NotificationCenter.trigger('file:print'); Common.component.Analytics.trackEvent('Print'); }, @@ -2227,6 +2268,39 @@ define([ if (url) this.iframePrint.src = url; }, + onPrintQuick: function() { + if (!this.appOptions.canQuickPrint) return; + + var value = Common.localStorage.getBool("pe-hide-quick-print-warning"), + me = this, + handler = function () { + var printopt = new Asc.asc_CAdjustPrint(); + printopt.asc_setNativeOptions({quickPrint: true}); + var opts = new Asc.asc_CDownloadOptions(); + opts.asc_setAdvancedOptions(printopt); + me.api.asc_Print(opts); + Common.component.Analytics.trackEvent('Print'); + }; + + if (value) { + handler.call(this); + } else { + Common.UI.warning({ + msg: this.textTryQuickPrint, + buttons: ['yes', 'no'], + primary: 'yes', + dontshow: true, + maxwidth: 500, + callback: function(btn, dontshow){ + dontshow && Common.localStorage.setBool("pe-hide-quick-print-warning", true); + if (btn === 'yes') { + setTimeout(handler, 1); + } + } + }); + } + }, + onAdvancedOptions: function(type, advOptions) { if (this._state.openDlg) return; @@ -2379,18 +2453,37 @@ define([ Common.Utils.InternalSettings.set("pe-settings-autoformat-hyphens", value); me.api.asc_SetAutoCorrectHyphensWithDash(value); - value = Common.localStorage.getBool("pe-settings-autoformat-fl-sentence", true); - Common.Utils.InternalSettings.set("pe-settings-autoformat-fl-sentence", value); + value = Common.localStorage.getItem("pe-settings-letter-exception-sentence"); + value = value !== null ? parseInt(value) != 0 : Common.localStorage.getBool("pe-settings-autoformat-fl-sentence", true); + Common.Utils.InternalSettings.set("pe-settings-letter-exception-sentence", value); me.api.asc_SetAutoCorrectFirstLetterOfSentences(value); + value = Common.localStorage.getItem("pe-settings-letter-exceptionl-cells", true); + value = value !== null ? parseInt(value) != 0 : Common.localStorage.getBool("pe-settings-autoformat-fl-cells", true); + Common.Utils.InternalSettings.set("pe-settings-letter-exception-cells", value); + me.api.asc_SetAutoCorrectFirstLetterOfCells && me.api.asc_SetAutoCorrectFirstLetterOfCells(value); + + [0x0409, 0x0419].forEach(function(lang) { + var apiFlManager = me.api.asc_GetAutoCorrectSettings().get_FirstLetterExceptionManager(); + + value = Common.localStorage.getItem("pe-settings-letter-exception-add-" + lang); + Common.Utils.InternalSettings.set("pe-settings-letter-exception-add-" + lang, value); + arrAdd = value ? JSON.parse(value) : []; + + value = Common.localStorage.getItem("pe-settings-letter-exception-rem-" + lang); + Common.Utils.InternalSettings.set("pe-settings-letter-exception-rem-" + lang, value); + arrRem = value ? JSON.parse(value) : []; + + var arrRes = _.union(apiFlManager.get_Exceptions(lang), arrAdd); + arrRes = _.difference(arrRes, arrRem); + arrRes.sort(); + apiFlManager.put_Exceptions(arrRes, lang); + }); + value = Common.localStorage.getBool("pe-settings-autoformat-hyperlink", true); Common.Utils.InternalSettings.set("pe-settings-autoformat-hyperlink", value); me.api.asc_SetAutoCorrectHyperlinks(value); - value = Common.localStorage.getBool("pe-settings-autoformat-fl-cells", true); - Common.Utils.InternalSettings.set("pe-settings-autoformat-fl-cells", value); - me.api.asc_SetAutoCorrectFirstLetterOfCells && me.api.asc_SetAutoCorrectFirstLetterOfCells(value); - value = Common.localStorage.getBool("pe-settings-autoformat-double-space", Common.Utils.isMac); // add period with double-space in MacOs by default Common.Utils.InternalSettings.set("pe-settings-autoformat-double-space", value); me.api.asc_SetAutoCorrectDoubleSpaceWithPeriod(value); @@ -2624,6 +2717,24 @@ define([ }) }, + onConfirmAction: function(id, apiCallback, data) { + var me = this; + if (id == Asc.c_oAscConfirm.ConfirmMaxChangesSize) { + Common.UI.warning({ + title: this.notcriticalErrorTitle, + msg: this.confirmMaxChangesSize, + buttons: [{value: 'ok', caption: this.textUndo, primary: true}, {value: 'cancel', caption: this.textContinue}], + maxwidth: 600, + callback: _.bind(function(btn) { + if (apiCallback) { + apiCallback(btn === 'ok'); + } + me.onEditComplete(); + }, this) + }); + } + }, + // Translation 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.', criticalErrorTitle: 'Error', @@ -2997,7 +3108,17 @@ define([ textLearnMore: 'Learn More', textReconnect: 'Connection is restored', textRequestMacros: 'A macro makes a request to URL. Do you want to allow the request to the %1?', - textRememberMacros: 'Remember my choice for all macros' + textRememberMacros: 'Remember my choice for all macros', + confirmMaxChangesSize: 'The size of actions exceeds the limitation set for your server.
                Press "Undo" to cancel your last action or press "Continue" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).', + textUndo: 'Undo', + textContinue: 'Continue', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
                The file content does not match the file extension.', + errorCannotPasteImg: 'We can\'t paste this image from the Clipboard, but you can save it to your device and \ninsert it from there, or you can copy the image without text and paste it into the presentation.', + textTryQuickPrint: 'You have selected Quick print: the entire document will be printed on the last selected or default printer.
                Do you want to continue?' } })(), PE.Controllers.Main || {})) }); diff --git a/apps/presentationeditor/main/app/controller/Print.js b/apps/presentationeditor/main/app/controller/Print.js new file mode 100644 index 000000000..2fc123f63 --- /dev/null +++ b/apps/presentationeditor/main/app/controller/Print.js @@ -0,0 +1,348 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2022 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ +define([ + 'core', + 'presentationeditor/main/app/view/FileMenuPanels' +], function () { + 'use strict'; + + PE.Controllers.Print = Backbone.Controller.extend(_.extend({ + views: [ + 'PrintWithPreview' + ], + + initialize: function() { + this.adjPrintParams = new Asc.asc_CAdjustPrint(); + + this._state = {}; + this._paperSize = undefined; + this._navigationPreview = { + pageCount: false, + currentPage: 0, + currentPreviewPage: 0 + }; + + this._isPreviewVisible = false; + + this.addListeners({ + 'PrintWithPreview': { + 'show': _.bind(this.onShowMainSettingsPrint, this), + 'render:after': _.bind(this.onAfterRender, this) + } + }); + }, + + onLaunch: function() { + this.printSettings = this.createView('PrintWithPreview'); + }, + + onAfterRender: function(view) { + var me = this; + this.printSettings.menu.on('menu:hide', _.bind(this.onHidePrintMenu, this)); + this.printSettings.btnPrint.on('click', _.bind(this.onBtnPrint, this, true)); + this.printSettings.btnPrintPdf.on('click', _.bind(this.onBtnPrint, this, false)); + this.printSettings.btnPrevPage.on('click', _.bind(this.onChangePreviewPage, this, false)); + this.printSettings.btnNextPage.on('click', _.bind(this.onChangePreviewPage, this, true)); + this.printSettings.txtNumberPage.on({ + 'keypress:after': _.bind(this.onKeypressPageNumber, this), + 'keyup:after': _.bind(this.onKeyupPageNumber, this) + }); + this.printSettings.txtNumberPage.cmpEl.find('input').on('blur', _.bind(this.onBlurPageNumber, this)); + this.printSettings.cmbRange.on('selected', _.bind(this.comboRangeChange, this)); + this.printSettings.inputPages.on('changing', _.bind(this.inputPagesChanging, this)); + this.printSettings.inputPages.validation = function(value) { + if (!_.isEmpty(value) && /[0-9,\-]/.test(value)) { + var res = [], + arr = value.split(','); + if (me._isPrint && arr.length>1) + return me.txtPrintRangeSingleRange; + + for (var i=0; i1) // more than 1 symbol '-' + return me.txtPrintRangeInvalid; + if (!str) {// one number + var num = parseInt(item)-1; + (num>=0) && res.push(num); + } else { // range + var pages = item.split('-'), + start = (pages[0] ? parseInt(pages[0])-1 : 0), + end = (pages[1] ? parseInt(pages[1])-1 : me._navigationPreview.pageCount-1); + if (start>end) { + var num = start; + start = end; + end = num; + } + for (var j=start; j<=end; j++) { + (j>=0) && res.push(j); + } + } + } + if (res.length>0) { + return true; + } + } + + return me.txtPrintRangeInvalid; + }; + this.printSettings.cmbPaperSize.on('selected', _.bind(this.onPaperSizeSelect, this)); + this._paperSize = this.printSettings.cmbPaperSize.getSelectedRecord().size; + + Common.NotificationCenter.on('window:resize', _.bind(function () { + if (this._isPreviewVisible) { + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage, this._paperSize); + } + }, this)); + + var eventname = (/Firefox/i.test(navigator.userAgent))? 'DOMMouseScroll' : 'mousewheel'; + this.printSettings.$previewBox.on(eventname, _.bind(this.onPreviewWheel, this)); + }, + + setMode: function (mode) { + this.mode = mode; + this.printSettings && this.printSettings.setMode(mode); + }, + + setApi: function(o) { + this.api = o; + this.api.asc_registerCallback('asc_onCountPages', _.bind(this.onCountPages, this)); + this.api.asc_registerCallback('asc_onCurrentPage', _.bind(this.onCurrentPage, this)); + + return this; + }, + + comboRangeChange: function(combo, record) { + if (record.value === -1) { + var me = this; + setTimeout(function(){ + me.printSettings.inputPages.focus(); + }, 50); + } else { + this.printSettings.inputPages.setValue(''); + } + this.printSettings.inputPages.showError(); + }, + + onCountPages: function(count) { + this._navigationPreview.pageCount = count; + + if (this.printSettings.isVisible()) { + this.printSettings.$previewBox.toggleClass('hidden', !this._navigationPreview.pageCount); + this.printSettings.$previewEmpty.toggleClass('hidden', !!this._navigationPreview.pageCount); + } + if (!!this._navigationPreview.pageCount) { + if (this._navigationPreview.currentPreviewPage > count - 1) + this._navigationPreview.currentPreviewPage = Math.max(0, count - 1); + if (this.printSettings.isVisible()) { + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage, this._paperSize); + this.updateNavigationButtons(this._navigationPreview.currentPreviewPage, count); + } + } + }, + + onCurrentPage: function(number) { + this._navigationPreview.currentPreviewPage = number; + if (this.printSettings.isVisible()) { + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage, this._paperSize); + this.updateNavigationButtons(this._navigationPreview.currentPreviewPage, this._navigationPreview.pageCount); + } + }, + + onShowMainSettingsPrint: function() { + var me = this; + this.printSettings.$previewBox.removeClass('hidden'); + + var opts = new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_initPrintPreview('print-preview', opts); + + this.printSettings.$previewBox.toggleClass('hidden', !this._navigationPreview.pageCount); + this.printSettings.$previewEmpty.toggleClass('hidden', !!this._navigationPreview.pageCount); + if (!!this._navigationPreview.pageCount) { + this._navigationPreview.currentPreviewPage = this._navigationPreview.currentPage = this.api.getCurrentPage(); + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage, this._paperSize); + this.updateNavigationButtons(this._navigationPreview.currentPreviewPage, this._navigationPreview.pageCount); + this.SetDisabled(); + } + this._isPreviewVisible = true; + }, + + getPrintParams: function() { + return this.adjPrintParams; + }, + + onHidePrintMenu: function () { + if (this._isPreviewVisible) { + this.api.asc_closePrintPreview && this.api.asc_closePrintPreview(); + this._isPreviewVisible = false; + } + }, + + onChangePreviewPage: function (next) { + var index = this._navigationPreview.currentPreviewPage; + if (next) { + index++; + index = Math.min(index, this._navigationPreview.pageCount - 1); + } else { + index--; + index = Math.max(index, 0); + } + this.api.goToPage(index); + }, + + onKeypressPageNumber: function (input, e) { + if (e.keyCode === Common.UI.Keys.RETURN) { + var box = this.printSettings.$el.find('#print-number-page'), + edit = box.find('input[type=text]'), page = parseInt(edit.val()); + if (!page || page > this._navigationPreview.pageCount || page < 0) { + edit.select(); + this.printSettings.txtNumberPage.setValue(this._navigationPreview.currentPreviewPage + 1); + this.printSettings.txtNumberPage.checkValidate(); + return false; + } + + box.focus(); // for IE + + this.api.goToPage(page-1); + this.api.asc_enableKeyEvents(true); + return false; + } + }, + + onKeyupPageNumber: function (input, e) { + if (e.keyCode === Common.UI.Keys.ESC) { + var box = this.printSettings.$el.find('#print-number-page'); + box.focus(); // for IE + this.api.asc_enableKeyEvents(true); + return false; + } + }, + + onBlurPageNumber: function () { + if (this.printSettings.txtNumberPage.getValue() != this._navigationPreview.currentPreviewPage + 1) { + this.printSettings.txtNumberPage.setValue(this._navigationPreview.currentPreviewPage + 1); + this.printSettings.txtNumberPage.checkValidate(); + } + }, + + onPreviewWheel: function (e) { + if (e.ctrlKey) { + e.preventDefault(); + e.stopImmediatePropagation(); + } + var forward = (e.deltaY || (e.detail && -e.detail) || e.wheelDelta) < 0; + this.onChangePreviewPage(forward); + }, + + updateNavigationButtons: function (page, count) { + this._navigationPreview.currentPage = page; + this.printSettings.updateCurrentPage(page); + this._navigationPreview.pageCount = count; + this.printSettings.updateCountOfPages(count); + this.disableNavButtons(); + }, + + disableNavButtons: function (force) { + if (force) { + this.printSettings.btnPrevPage.setDisabled(true); + this.printSettings.btnNextPage.setDisabled(true); + return; + } + var curPage = this._navigationPreview.currentPage, + pageCount = this._navigationPreview.pageCount; + this.printSettings.btnPrevPage.setDisabled(curPage < 1); + this.printSettings.btnNextPage.setDisabled(curPage > pageCount - 2); + }, + + onBtnPrint: function(print) { + this._isPrint = print; + if (this.printSettings.cmbRange.getValue()===-1 && this.printSettings.inputPages.checkValidate() !== true) { + this.printSettings.inputPages.focus(); + this.isInputFirstChange = true; + return; + } + if (this._navigationPreview.pageCount<1) + return; + + var rec = this.printSettings.cmbPaperSize.getSelectedRecord(); + this.adjPrintParams.asc_setNativeOptions({ + pages: this.printSettings.cmbRange.getValue()===-1 ? this.printSettings.inputPages.getValue() : this.printSettings.cmbRange.getValue(), + paperSize: { + w: rec ? rec.size[0] : undefined, + h: rec ? rec.size[1] : undefined, + preset: rec ? rec.caption : undefined + } + }); + + if ( print ) { + var opts = new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_Print(opts); + } else { + var opts = new Asc.asc_CDownloadOptions(Asc.c_oAscFileType.PDF); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_DownloadAs(opts); + } + this.printSettings.menu.hide(); + }, + + inputPagesChanging: function (input, value) { + this.isInputFirstChange && this.printSettings.inputPages.showError(); + this.isInputFirstChange = false; + + if (value.length<1) + this.printSettings.cmbRange.setValue('all'); + else if (this.printSettings.cmbRange.getValue()!==-1) + this.printSettings.cmbRange.setValue(-1); + }, + + onPaperSizeSelect: function(combo, record) { + if (record) { + this._paperSize = record.size; + this.api.asc_drawPrintPreview(this._navigationPreview.currentPreviewPage, this._paperSize); + } + }, + + SetDisabled: function() { + if (this.printSettings.isVisible()) { + var disable = !this.mode.isEdit; + } + }, + + txtPrintRangeInvalid: 'Invalid print range', + txtPrintRangeSingleRange: 'Enter either a single slide number or a single slide range (for example, 5-12). Or you can Print to PDF.' + }, PE.Controllers.Print || {})); +}); \ No newline at end of file diff --git a/apps/presentationeditor/main/app/controller/RightMenu.js b/apps/presentationeditor/main/app/controller/RightMenu.js index f1f3a69f7..4e5c5a0ba 100644 --- a/apps/presentationeditor/main/app/controller/RightMenu.js +++ b/apps/presentationeditor/main/app/controller/RightMenu.js @@ -61,6 +61,9 @@ define([ this.addListeners({ 'RightMenu': { 'rightmenuclick': this.onRightMenuClick + }, + 'ViewTab': { + 'rightmenu:hide': _.bind(this.onRightMenuHide, this) } }); }, @@ -384,6 +387,17 @@ define([ case Asc.c_oAscTypeSelectElement.Chart: return Common.Utils.documentSettingsType.Chart; } + }, + + onRightMenuHide: function (view, status) { + if (this.rightmenu) { + !status && this.rightmenu.clearSelection(); + status ? this.rightmenu.show() : this.rightmenu.hide(); + Common.localStorage.setBool('pe-hidden-rightmenu', !status); + } + + Common.NotificationCenter.trigger('layout:changed', 'main'); + Common.NotificationCenter.trigger('edit:complete', this.rightmenu); } }); }); \ No newline at end of file diff --git a/apps/presentationeditor/main/app/controller/Search.js b/apps/presentationeditor/main/app/controller/Search.js index 5ef890f18..bc4ca16a4 100644 --- a/apps/presentationeditor/main/app/controller/Search.js +++ b/apps/presentationeditor/main/app/controller/Search.js @@ -138,7 +138,7 @@ define([ for (var l = 0; l < text.length; l++) { var charCode = text.charCodeAt(l), char = text.charAt(l); - if (AscCommon.g_aPunctuation[charCode] !== undefined || char.trim() === '') { + if (AscCommon.IsPunctuation(charCode) !== undefined || char.trim() === '') { isPunctuation = true; break; } diff --git a/apps/presentationeditor/main/app/controller/Toolbar.js b/apps/presentationeditor/main/app/controller/Toolbar.js index 4bf594f3d..37c7f482b 100644 --- a/apps/presentationeditor/main/app/controller/Toolbar.js +++ b/apps/presentationeditor/main/app/controller/Toolbar.js @@ -138,7 +138,9 @@ define([ 'duplicate:check' : this.onDuplicateCheck.bind(this), 'change:slide' : this.onChangeSlide.bind(this), 'change:compact' : this.onClickChangeCompact, - 'add:chart' : this.onSelectChart + 'add:chart' : this.onSelectChart, + 'generate:smartart' : this.generateSmartArt, + 'insert:smartart' : this.onInsertSmartArt }, 'FileMenu': { 'menu:hide': this.onFileMenu.bind(this, 'hide'), @@ -149,6 +151,10 @@ define([ var _main = this.getApplication().getController('Main'); _main.onPrint(); }, + 'print-quick': function (opts) { + var _main = this.getApplication().getController('Main'); + _main.onPrintQuick(); + }, 'save': function (opts) { this.api.asc_Save(); }, @@ -412,6 +418,9 @@ define([ Common.NotificationCenter.on('storage:image-load', _.bind(this.openImageFromStorage, this)); Common.NotificationCenter.on('storage:image-insert', _.bind(this.insertImageFromStorage, this)); this.api.asc_registerCallback('asc_onCanCopyCut', _.bind(this.onApiCanCopyCut, this)); + this.api.asc_registerCallback('asc_onBeginSmartArtPreview', _.bind(this.onApiBeginSmartArtPreview, this)); + this.api.asc_registerCallback('asc_onAddSmartArtPreview', _.bind(this.onApiAddSmartArtPreview, this)); + this.api.asc_registerCallback('asc_onEndSmartArtPreview', _.bind(this.onApiEndSmartArtPreview, this)); } else if (this.mode.isRestrictedEdit) { this.api.asc_registerCallback('asc_onCountPages', _.bind(this.onApiCountPagesRestricted, this)); } @@ -735,7 +744,7 @@ define([ this.toolbar.lockToolbar(Common.enumLock.noSlides, this._state.no_slides, {array: this.toolbar.paragraphControls}); this.toolbar.lockToolbar(Common.enumLock.noSlides, this._state.no_slides, {array: [ this.toolbar.btnChangeSlide, this.toolbar.btnPreview, this.toolbar.btnPrint, this.toolbar.btnCopy, this.toolbar.btnCut, this.toolbar.btnSelectAll, this.toolbar.btnPaste, - this.toolbar.btnCopyStyle, this.toolbar.btnInsertTable, this.toolbar.btnInsertChart, + this.toolbar.btnCopyStyle, this.toolbar.btnInsertTable, this.toolbar.btnInsertChart, this.toolbar.btnInsertSmartArt, this.toolbar.btnColorSchemas, this.toolbar.btnShapeAlign, this.toolbar.btnShapeArrange, this.toolbar.btnSlideSize, this.toolbar.listTheme, this.toolbar.btnEditHeader, this.toolbar.btnInsDateTime, this.toolbar.btnInsSlideNum ]}); @@ -827,7 +836,7 @@ define([ if (this._state.activated) this._state.prcontrolsdisable = paragraph_locked; if (paragraph_locked!==undefined) this.toolbar.lockToolbar(Common.enumLock.paragraphLock, paragraph_locked, {array: me.toolbar.paragraphControls}); - this.toolbar.lockToolbar(Common.enumLock.paragraphLock, paragraph_locked===true, {array: [me.toolbar.btnInsDateTime, me.toolbar.btnInsSlideNum]}); + this.toolbar.lockToolbar(Common.enumLock.paragraphLock, paragraph_locked===true, {array: [me.toolbar.btnInsDateTime, me.toolbar.btnInsSlideNum, me.toolbar.btnInsertEquation]}); } if (this._state.no_paragraph !== no_paragraph) { @@ -1074,9 +1083,7 @@ define([ }, onPrint: function(e) { - if (this.api) - this.api.asc_Print(new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86)); // if isChrome or isOpera == true use asc_onPrintUrl event - + Common.NotificationCenter.trigger('file:print', this.toolbar); Common.NotificationCenter.trigger('edit:complete', this.toolbar); Common.component.Analytics.trackEvent('Print'); @@ -2282,7 +2289,7 @@ define([ items: [ { template: _.template('') } + equationGroup.get('groupHeightStr') + 'margin-left:5px;">') } ] }) }); @@ -2329,16 +2336,21 @@ define([ var me = this; var onShowBefore = function(menu) { me.onMathTypes(me._equationTemp); + if (me._equationTemp && me._equationTemp.get_Data().length>0) + me.fillEquations(); me.toolbar.btnInsertEquation.menu.off('show:before', onShowBefore); }; me.toolbar.btnInsertEquation.menu.on('show:before', onShowBefore); }, onMathTypes: function(equation) { + equation = equation || this._equationTemp; + var equationgrouparray = [], equationsStore = this.getCollection('EquationGroups'); - equationsStore.reset(); + if (equationsStore.length>0) + return; // equations groups @@ -2346,18 +2358,18 @@ define([ // [translate, count cells, scroll] - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Symbol ] = [this.textSymbols, 11]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Fraction ] = [this.textFraction, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Script ] = [this.textScript, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Radical ] = [this.textRadical, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Integral ] = [this.textIntegral, 3, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LargeOperator] = [this.textLargeOperator, 5, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Bracket ] = [this.textBracket, 4, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Function ] = [this.textFunction, 3, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Accent ] = [this.textAccent, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LimitLog ] = [this.textLimitAndLog, 3]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Operator ] = [this.textOperator, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Matrix ] = [this.textMatrix, 4, true]; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Symbol ] = [this.textSymbols, 11, false, 'svg-icon-symbols']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Fraction ] = [this.textFraction, 4, false, 'svg-icon-fraction']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Script ] = [this.textScript, 4, false, 'svg-icon-script']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Radical ] = [this.textRadical, 4, false, 'svg-icon-radical']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Integral ] = [this.textIntegral, 3, true, 'svg-icon-integral']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LargeOperator] = [this.textLargeOperator, 5, true, 'svg-icon-largeOperator']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Bracket ] = [this.textBracket, 4, true, 'svg-icon-bracket']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Function ] = [this.textFunction, 3, true, 'svg-icon-function']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Accent ] = [this.textAccent, 4, false, 'svg-icon-accent']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LimitLog ] = [this.textLimitAndLog, 3, false, 'svg-icon-limAndLog']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Operator ] = [this.textOperator, 4, false, 'svg-icon-operator']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Matrix ] = [this.textMatrix, 4, true, 'svg-icon-matrix']; // equations sub groups @@ -2427,12 +2439,14 @@ define([ groupName : c_oAscMathMainTypeStrings[id][0], groupStore : store, groupWidth : width, - groupHeight : c_oAscMathMainTypeStrings[id][2] ? ' height:'+ normHeight +'px!important; ' : '' + groupHeight : normHeight, + groupHeightStr : c_oAscMathMainTypeStrings[id][2] ? ' height:'+ normHeight +'px!important; ' : '', + groupIcon: c_oAscMathMainTypeStrings[id][3] }); } } equationsStore.add(equationgrouparray); - this.fillEquations(); + // this.fillEquations(); } } }, @@ -2726,6 +2740,51 @@ define([ } }, + generateSmartArt: function (groupName) { + this.api.asc_generateSmartArtPreviews(groupName); + }, + + onApiBeginSmartArtPreview: function () { + this.smartArtGroups = this.toolbar.btnInsertSmartArt.menu.items; + this.smartArtData = Common.define.smartArt.getSmartArtData(); + }, + + onApiAddSmartArtPreview: function (previews) { + previews.forEach(_.bind(function (preview) { + var image = preview.asc_getImage(), + sectionId = preview.asc_getSectionId(), + section = _.findWhere(this.smartArtData, {sectionId: sectionId}), + item = _.findWhere(section.items, {type: image.asc_getName()}), + menu = _.findWhere(this.smartArtGroups, {value: sectionId}), + menuPicker = menu.menuPicker; + if (item) { + var arr = [{ + tip: item.tip, + value: item.type, + imageUrl: image.asc_getImage() + }]; + if (menuPicker.store.length < 1) { + menuPicker.store.reset(arr); + } else { + menuPicker.store.add(arr); + } + } + this.currentSmartArtMenu = menu; + }, this)); + }, + + onApiEndSmartArtPreview: function () { + if (this.currentSmartArtMenu) { + this.currentSmartArtMenu.menu.alignPosition(); + } + }, + + onInsertSmartArt: function (value) { + if (this.api) { + this.api.asc_createSmartArt(value); + } + }, + textEmptyImgUrl : 'You need to specify image URL.', textWarning : 'Warning', textFontSizeErr : 'The entered value is incorrect.
                Please enter a numeric value between 1 and 300', diff --git a/apps/presentationeditor/main/app/controller/ViewTab.js b/apps/presentationeditor/main/app/controller/ViewTab.js index 40122de89..9cc92668f 100644 --- a/apps/presentationeditor/main/app/controller/ViewTab.js +++ b/apps/presentationeditor/main/app/controller/ViewTab.js @@ -61,7 +61,8 @@ define([ this._state = { zoom_type: undefined, zoom_percent: undefined, - unitsChanged: true + unitsChanged: true, + lock_viewProps: false }; Common.NotificationCenter.on('uitheme:changed', this.onThemeChanged.bind(this)); Common.NotificationCenter.on('document:ready', _.bind(this.onDocumentReady, this)); @@ -75,6 +76,8 @@ define([ this.api.asc_registerCallback('asc_onNotesShow', _.bind(this.onNotesShow, this)); this.api.asc_registerCallback('asc_onCoAuthoringDisconnect', _.bind(this.onCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onCoAuthoringDisconnect, this)); + this.api.asc_registerCallback('asc_onLockViewProps', _.bind(this.onLockViewProps, this, true)); + this.api.asc_registerCallback('asc_onUnLockViewProps', _.bind(this.onLockViewProps, this, false)); } return this; }, @@ -120,6 +123,7 @@ define([ 'DocumentHolder': { 'guides:show': _.bind(this.onGuidesShow, this), 'guides:add': _.bind(this.onGuidesAdd, this), + 'guides:delete': _.bind(this.onGuidesDelete, this), 'guides:clear': _.bind(this.onGuidesClear, this), 'guides:smart': _.bind(this.onGuidesSmartShow, this), 'gridlines:show': _.bind(this.onGridlinesShow, this), @@ -127,6 +131,11 @@ define([ 'gridlines:spacing': _.bind(this.onGridlinesSpacing, this), 'gridlines:custom': _.bind(this.onGridlinesCustom, this), 'rulers:change': _.bind(this.onChangeRulers, this) + }, + 'LeftMenu': { + 'view:hide': _.bind(function (leftmenu, state) { + this.view.chLeftMenu.setValue(!state, true); + }, this) } }); }, @@ -249,7 +258,10 @@ define([ onGuidesAfterShow: function() { if (this.view) { - this.view.btnGuides.menu.items[6].setDisabled(!this.api.asc_canClearGuides()); + this.view.btnGuides.menu.items[2].setDisabled(this._state.lock_viewProps); // add v guides + this.view.btnGuides.menu.items[3].setDisabled(this._state.lock_viewProps); // add h guides + this.view.btnGuides.menu.items[6].setDisabled(this._state.lock_viewProps || !this.api.asc_canClearGuides()); // clear guides + this.view.btnGuides.menu.items[0].setChecked(this.api.asc_getShowGuides(), true); this.view.btnGuides.menu.items[5].setChecked(this.api.asc_getShowSmartGuides(), true); } @@ -266,8 +278,17 @@ define([ Common.NotificationCenter.trigger('edit:complete', this.view); }, + onGuidesDelete: function(id) { + this.api.asc_deleteGuide(id); + this.api.asc_getShowGuides() && (this.api.asc_getGuidesCount()<1) && this.onGuidesShow(false); + + Common.NotificationCenter.trigger('edit:complete', this.view); + }, + onGuidesClear: function() { this.api.asc_clearGuides(); + this.api.asc_getShowGuides() && this.onGuidesShow(false); + Common.NotificationCenter.trigger('edit:complete', this.view); }, @@ -345,7 +366,21 @@ define([ item.setChecked(true); else item.setChecked(false); + item.setDisabled(this._state.lock_viewProps); } + menu.items[1].setDisabled(this._state.lock_viewProps); // snap to grid + menu.items[items.length-1].setDisabled(this._state.lock_viewProps); // custom + } + }, + + onLockViewProps: function(lock) { + this._state.lock_viewProps = lock; + Common.Utils.InternalSettings.set("pe-lock-view-props", lock); + if (this.view) { + if (this.view.btnGridlines && (typeof this.view.btnGridlines.menu === 'object') && this.view.btnGridlines.menu.isVisible()) + this.onGridlinesAfterShow(); + if (this.view.btnGuides && (typeof this.view.btnGuides.menu === 'object') && this.view.btnGuides.menu.isVisible()) + this.onGuidesAfterShow(); } }, diff --git a/apps/presentationeditor/main/app/controller/Viewport.js b/apps/presentationeditor/main/app/controller/Viewport.js index 50500ed56..11dab34ef 100644 --- a/apps/presentationeditor/main/app/controller/Viewport.js +++ b/apps/presentationeditor/main/app/controller/Viewport.js @@ -72,7 +72,8 @@ define([ this.addListeners({ 'FileMenu': { 'menu:hide': me.onFileMenu.bind(me, 'hide'), - 'menu:show': me.onFileMenu.bind(me, 'show') + 'menu:show': me.onFileMenu.bind(me, 'show'), + 'settings:apply': me.applySettings.bind(me) }, 'Toolbar': { 'render:before' : function (toolbar) { @@ -80,6 +81,10 @@ define([ toolbar.setExtra('right', me.header.getPanel('right', config)); if (!config.isEdit || config.customization && !!config.customization.compactHeader) toolbar.setExtra('left', me.header.getPanel('left', config)); + var value = Common.localStorage.getBool("pe-settings-quick-print-button", true); + Common.Utils.InternalSettings.set("pe-settings-quick-print-button", value); + if (me.header && me.header.btnPrintQuick) + me.header.btnPrintQuick[value ? 'show' : 'hide'](); }, 'view:compact' : function (toolbar, state) { me.viewport.vlayout.getItem('toolbar').height = state ? @@ -102,6 +107,8 @@ define([ 'print:disabled' : function (state) { if ( me.header.btnPrint ) me.header.btnPrint.setDisabled(state); + if ( me.header.btnPrintQuick ) + me.header.btnPrintQuick.setDisabled(state); }, 'save:disabled' : function (state) { if ( me.header.btnSave ) @@ -312,6 +319,13 @@ define([ me.header.lockHeaderBtns( 'users', _need_disable ); }, + applySettings: function () { + var value = Common.localStorage.getBool("pe-settings-quick-print-button", true); + Common.Utils.InternalSettings.set("pe-settings-quick-print-button", value); + if (this.header && this.header.btnPrintQuick) + this.header.btnPrintQuick[value ? 'show' : 'hide'](); + }, + onApiCoAuthoringDisconnect: function(enableDownload) { if (this.header) { if (this.header.btnDownload && !enableDownload) @@ -320,6 +334,8 @@ define([ this.header.btnPrint.hide(); if (this.header.btnEdit) this.header.btnEdit.hide(); + if (this.header.btnPrintQuick && !enableDownload) + this.header.btnPrintQuick.hide(); this.header.lockHeaderBtns( 'rename-user', true); } }, @@ -345,8 +361,9 @@ define([ return; } if (!this.searchBar) { - var isVisible = leftMenu && leftMenu.leftMenu && leftMenu.leftMenu.isVisible(); - this.searchBar = new Common.UI.SearchBar( !isVisible ? { + var hideLeftPanel = this.appConfig.canBrandingExt && + (!Common.UI.LayoutManager.isElementVisible('leftMenu') || this.appConfig.customization && this.appConfig.customization.leftMenu === false); + this.searchBar = new Common.UI.SearchBar( hideLeftPanel ? { showOpenPanel: false, width: 303 } : {}); diff --git a/apps/presentationeditor/main/app/template/FileMenu.template b/apps/presentationeditor/main/app/template/FileMenu.template index 3ad620221..ba1e7d69d 100644 --- a/apps/presentationeditor/main/app/template/FileMenu.template +++ b/apps/presentationeditor/main/app/template/FileMenu.template @@ -8,6 +8,7 @@
              • +
              • @@ -34,4 +35,5 @@
                +
                \ No newline at end of file diff --git a/apps/presentationeditor/main/app/template/Toolbar.template b/apps/presentationeditor/main/app/template/Toolbar.template index 983f8d965..837d0642f 100644 --- a/apps/presentationeditor/main/app/template/Toolbar.template +++ b/apps/presentationeditor/main/app/template/Toolbar.template @@ -127,6 +127,7 @@ +
                diff --git a/apps/presentationeditor/main/app/view/DateTimeDialog.js b/apps/presentationeditor/main/app/view/DateTimeDialog.js index e170cb6d1..3e5f3072e 100644 --- a/apps/presentationeditor/main/app/view/DateTimeDialog.js +++ b/apps/presentationeditor/main/app/view/DateTimeDialog.js @@ -90,7 +90,7 @@ define([ var data = [{ value: 0x042C }, { value: 0x0402 }, { value: 0x0405 }, { value: 0x0C07 }, { value: 0x0407 }, {value: 0x0807}, { value: 0x0408 }, { value: 0x0C09 }, { value: 0x0809 }, { value: 0x0409 }, { value: 0x0C0A }, { value: 0x080A }, { value: 0x040B }, { value: 0x040C }, { value: 0x100C }, { value: 0x0410 }, { value: 0x0810 }, { value: 0x0411 }, { value: 0x0412 }, { value: 0x0426 }, { value: 0x040E }, { value: 0x0413 }, { value: 0x0415 }, { value: 0x0416 }, - { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }]; + { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }, { value: 0x0404 }]; data.forEach(function(item) { var langinfo = Common.util.LanguageInfo.getLocalLanguageName(item.value); item.displayValue = langinfo[1]; diff --git a/apps/presentationeditor/main/app/view/DocumentHolder.js b/apps/presentationeditor/main/app/view/DocumentHolder.js index 49d6c7132..cf0c5ebe0 100644 --- a/apps/presentationeditor/main/app/view/DocumentHolder.js +++ b/apps/presentationeditor/main/app/view/DocumentHolder.js @@ -1030,10 +1030,17 @@ define([ if (!value.fromThumbs) { me.mnuGuides.menu.items[0].setChecked(me.api.asc_getShowGuides(), true); - me.mnuGuides.menu.items[4].setVisible(!!value.guideId); - me.mnuGuides.menu.items[4].options.guideId = value.guideId; + if (value.guide) { // change visibility only on asc_onContextMenu event + me.mnuGuides.menu.items[4].setVisible(!!value.guide.guideId); + me.mnuGuides.menu.items[4].options.guideId = value.guide.guideId; + } me.mnuGuides.menu.items[6].setChecked(me.api.asc_getShowSmartGuides(), true); - me.mnuGuides.menu.items[7].setDisabled(!me.api.asc_canClearGuides()); + + var viewPropsLock = !!Common.Utils.InternalSettings.get("pe-lock-view-props"); + me.mnuGuides.menu.items[2].setDisabled(viewPropsLock); + me.mnuGuides.menu.items[3].setDisabled(viewPropsLock); + me.mnuGuides.menu.items[4].setDisabled(viewPropsLock); + me.mnuGuides.menu.items[7].setDisabled(viewPropsLock || !me.api.asc_canClearGuides()); me.mnuGridlines.menu.items[0].setChecked(me.api.asc_getShowGridlines(), true); me.mnuGridlines.menu.items[1].setChecked(me.api.asc_getSnapToGrid(), true); @@ -1066,7 +1073,10 @@ define([ item.setChecked(true); else item.setChecked(false); + item.setDisabled(viewPropsLock); } + me.mnuGridlines.menu.items[1].setDisabled(viewPropsLock); + me.mnuGridlines.menu.items[items.length-1].setDisabled(viewPropsLock); me.mnuRulers.setChecked(!Common.Utils.InternalSettings.get("pe-hidden-rulers")); } @@ -1239,6 +1249,14 @@ define([ }) }); + me.menuTableSaveAsPicture = new Common.UI.MenuItem({ + caption : me.textSaveAsPicture + }); + + var menuTableSaveAsPictureSeparator = new Common.UI.MenuItem({ + caption : '--' + }); + me.menuTableDistRows = new Common.UI.MenuItem({ caption : me.textDistributeRows }); @@ -1455,6 +1473,10 @@ define([ caption : me.advancedTableText }); + var menuTableSettingsSeparator = new Common.UI.MenuItem({ + caption : '--' + }); + me.menuImageAdvanced = new Common.UI.MenuItem({ iconCls: 'menu__icon btn-menu-image', caption : me.advancedImageText @@ -1475,6 +1497,10 @@ define([ caption : me.advancedChartText }); + var menuAdvancedSettingsSeparator = new Common.UI.MenuItem({ + caption : '--' + }); + var menuCommentParaSeparator = new Common.UI.MenuItem({ caption : '--' }); @@ -1795,6 +1821,14 @@ define([ }) }); + me.menuImgSaveAsPicture = new Common.UI.MenuItem({ + caption : me.textSaveAsPicture + }); + + var menuImgSaveAsPictureSeparator = new Common.UI.MenuItem({ + caption : '--' + }); + /** coauthoring begin **/ me.menuAddCommentPara = new Common.UI.MenuItem({ iconCls: 'menu__icon btn-menu-comments', @@ -1882,10 +1916,24 @@ define([ caption : '--' }); - var menuEquationSeparatorInTable = new Common.UI.MenuItem({ + var menuTableEquationSeparator = new Common.UI.MenuItem({ caption : '--' }); + var menuTableEquationSettingsSeparator = new Common.UI.MenuItem({ + caption : '--' + }); + + me.menuParagraphEquation = new Common.UI.MenuItem({ + caption : me.advancedEquationText, + menu : me.createEquationMenu('popupparaeqinput', 'tl-tr') + }); + + me.menuTableEquationSettings = new Common.UI.MenuItem({ + caption : me.advancedEquationText, + menu : me.createEquationMenu('popuptableeqinput', 'tl-tr') + }); + me.menuAddToLayoutTable = new Common.UI.MenuItem({ caption : me.addToLayoutText }); @@ -1894,10 +1942,6 @@ define([ caption: me.textEditPoints }); - var menuImgEditPointsSeparator = new Common.UI.MenuItem({ - caption : '--' - }); - me.textMenu = new Common.UI.Menu({ cls: 'shifted-right', initMenu: function(value){ @@ -2020,6 +2064,14 @@ define([ } else me.clearEquationMenu(true, 12); menuEquationSeparator.setVisible(isEquation && eqlen>0); + + me.menuParagraphEquation.setVisible(isEquation); + me.menuParagraphEquation.setDisabled(disabled); + if (isEquation) { + var eq = me.api.asc_GetMathInputType(); + me.menuParagraphEquation.menu.items[0].setChecked(eq===Asc.c_oAscMathInputType.Unicode); + me.menuParagraphEquation.menu.items[1].setChecked(eq===Asc.c_oAscMathInputType.LaTeX); + } }, items: [ me.menuSpellPara, @@ -2038,6 +2090,7 @@ define([ me.menuParagraphVAlign, me.menuParagraphDirection, me.menuParagraphAdvanced, + me.menuParagraphEquation, menuCommentParaSeparator, /** coauthoring begin **/ me.menuAddCommentPara, @@ -2064,7 +2117,7 @@ define([ return; var isEquation= (value.mathProps && value.mathProps.value); - for (var i = 6; i < 19; i++) { + for (var i = 6; i < 18; i++) { me.tableMenu.items[i].setVisible(!isEquation); } @@ -2099,7 +2152,13 @@ define([ me.tableMenu.items[8].setDisabled(value.tableProps.locked || disabled); me.menuTableCellAlign.setDisabled(value.tableProps.locked || disabled); + + me.menuTableSaveAsPicture.setVisible(!isEquation); + menuTableSaveAsPictureSeparator.setVisible(!isEquation); + + me.menuTableAdvanced.setVisible(!isEquation); me.menuTableAdvanced.setDisabled(value.tableProps.locked || disabled); + menuTableSettingsSeparator.setVisible(me.menuTableAdvanced.isVisible()); var cancopy = me.api && me.api.can_CopyCut(); me.menuTableCopy.setDisabled(!cancopy); @@ -2115,6 +2174,7 @@ define([ me.menuAddHyperlinkTable.setVisible(!_.isUndefined(value.paraProps) && _.isUndefined(value.hyperProps) && text!==false); menuHyperlinkTable.setVisible(!_.isUndefined(value.paraProps) && !_.isUndefined(value.hyperProps)); + menuHyperlinkSeparator.setVisible(me.menuAddHyperlinkTable.isVisible() || menuHyperlinkTable.isVisible()); me.menuEditHyperlinkTable.hyperProps = value.hyperProps; @@ -2132,8 +2192,8 @@ define([ /** coauthoring begin **/ me.menuAddCommentTable.setVisible(me.api.can_AddQuotedComment()!==false && me.mode.canCoAuthoring && me.mode.canComments); me.menuAddCommentTable.setDisabled(!_.isUndefined(value.paraProps) && value.paraProps.locked || disabled); + menuHyperlinkSeparator.setVisible(menuHyperlinkSeparator.isVisible() || me.menuAddCommentTable.isVisible()); /** coauthoring end **/ - menuHyperlinkSeparator.setVisible(me.menuAddHyperlinkTable.isVisible() || menuHyperlinkTable.isVisible() /** coauthoring begin **/|| me.menuAddCommentTable.isVisible()/** coauthoring end **/); me.menuSpellCheckTable.setVisible(value.spellProps!==undefined && value.spellProps.value.get_Checked()===false); me.menuToDictionaryTable.setVisible(me.mode.isDesktopApp); @@ -2157,38 +2217,52 @@ define([ var eqlen = 0; if (isEquation) { eqlen = me.addEquationMenu(false, 6); - menuHyperlinkSeparator.setVisible(menuHyperlinkSeparator.isVisible() && eqlen>0); } else me.clearEquationMenu(false, 6); + + menuTableEquationSeparator.setVisible(eqlen>0); + me.menuTableEquationSettings.setVisible(isEquation); + menuTableEquationSettingsSeparator.setVisible(isEquation); + me.menuTableEquationSettings.setDisabled(disabled); + if (isEquation) { + var eq = me.api.asc_GetMathInputType(); + me.menuTableEquationSettings.menu.items[0].setChecked(eq===Asc.c_oAscMathInputType.Unicode); + me.menuTableEquationSettings.menu.items[1].setChecked(eq===Asc.c_oAscMathInputType.LaTeX); + } }, items: [ - me.menuSpellCheckTable, - menuSpellcheckTableSeparator, - me.menuTableCut, - me.menuTableCopy, - me.menuTablePaste, - { caption: '--' }, - me.menuTableSelectText, - me.menuTableInsertText, - me.menuTableDeleteText, - { caption: '--' }, - me.mnuTableMerge, - me.mnuTableSplit, - { caption: '--' }, - me.menuTableDistRows, - me.menuTableDistCols, - { caption: '--' }, - me.menuTableCellAlign, - { caption: '--' }, - me.menuTableAdvanced, - menuHyperlinkSeparator, + me.menuSpellCheckTable, //0 + menuSpellcheckTableSeparator, //1 + me.menuTableCut, //2 + me.menuTableCopy, //3 + me.menuTablePaste, //4 + { caption: '--' }, //5 + me.menuTableSelectText, //6 + me.menuTableInsertText, //7 + me.menuTableDeleteText, //8 + { caption: '--' }, //9 + me.mnuTableMerge, //10 + me.mnuTableSplit, //11 + { caption: '--' }, //12 + me.menuTableDistRows, //13 + me.menuTableDistCols, //14 + { caption: '--' }, //15 + me.menuTableCellAlign, //16 + { caption: '--'}, //17 + menuTableEquationSeparator, //18 + me.menuTableSaveAsPicture, //19 + menuTableSaveAsPictureSeparator,//20 + me.menuTableAdvanced, //21 + menuTableSettingsSeparator, //22 + me.menuTableEquationSettings, //23 + menuTableEquationSettingsSeparator, //24 /** coauthoring begin **/ - me.menuAddCommentTable, + me.menuAddCommentTable, //25 /** coauthoring end **/ - me.menuAddHyperlinkTable, - menuHyperlinkTable, - { caption: '--' }, - me.menuAddToLayoutTable + me.menuAddHyperlinkTable, //26 + menuHyperlinkTable, //27 + menuHyperlinkSeparator, //28 + me.menuAddToLayoutTable //29 ] }).on('hide:after', function(menu, e, isFromInputControl) { if (me.suppressEditComplete) { @@ -2245,7 +2319,6 @@ define([ var canEditPoints = me.api && me.api.asc_canEditGeometry(); me.menuImgEditPoints.setVisible(canEditPoints); - menuImgEditPointsSeparator.setVisible(canEditPoints); canEditPoints && me.menuImgEditPoints.setDisabled(disabled); me.menuImageAdvanced.setVisible(isimage); @@ -2253,6 +2326,13 @@ define([ me.menuChartEdit.setVisible(_.isUndefined(value.imgProps) && !_.isUndefined(value.chartProps) && (_.isUndefined(value.shapeProps) || value.shapeProps.isChart)); me.menuChartAdvanced.setVisible(_.isUndefined(value.imgProps) && !_.isUndefined(value.chartProps) && (_.isUndefined(value.shapeProps) || value.shapeProps.isChart)); menuImgShapeSeparator.setVisible(me.menuImageAdvanced.isVisible() || me.menuShapeAdvanced.isVisible() || me.menuChartEdit.isVisible() || me.menuChartAdvanced.isVisible()); + menuAdvancedSettingsSeparator.setVisible( + me.menuImgCrop.isVisible() || me.menuImgOriginalSize.isVisible() || + me.menuImgReplace.isVisible() || me.menuImageAdvanced.isVisible() || + me.menuImgEditPoints.isVisible() || me.menuShapeAdvanced.isVisible() || + me.menuChartEdit.isVisible() || me.menuChartAdvanced.isVisible() + ); + /** coauthoring begin **/ me.menuAddCommentImg.setVisible(me.api.can_AddQuotedComment()!==false && me.mode.canCoAuthoring && me.mode.canComments); menuCommentSeparatorImg.setVisible(me.menuAddCommentImg.isVisible()); @@ -2271,6 +2351,7 @@ define([ if (me.menuChartEdit.isVisible()) me.menuChartEdit.setDisabled(disabled); + var cancopy = me.api && me.api.can_CopyCut(); me.menuImgCopy.setDisabled(!cancopy); me.menuImgCut.setDisabled(disabled || !cancopy); @@ -2282,25 +2363,26 @@ define([ me.menuImgCut, me.menuImgCopy, me.menuImgPaste, - { caption: '--' }, - me.menuImgEditPoints, - menuImgEditPointsSeparator, + { caption: '--' }, //Separator menuImgShapeArrange, me.menuImgShapeAlign, me.menuImgShapeRotate, - menuImgShapeSeparator, + menuImgShapeSeparator, //Separator + me.menuImgSaveAsPicture, + menuImgSaveAsPictureSeparator, //Separator me.menuImgCrop, me.menuImgOriginalSize, me.menuImgReplace, me.menuImageAdvanced, - me.menuShapeAdvanced - ,me.menuChartEdit - ,me.menuChartAdvanced + me.menuImgEditPoints, + me.menuShapeAdvanced, + me.menuChartEdit, + me.menuChartAdvanced, + menuAdvancedSettingsSeparator, //Separator /** coauthoring begin **/ - ,menuCommentSeparatorImg, me.menuAddCommentImg, + menuCommentSeparatorImg, //Separator /** coauthoring end **/ - { caption: '--' }, me.menuAddToLayoutImg ] }).on('hide:after', function(menu, e, isFromInputControl) { @@ -2350,6 +2432,60 @@ define([ } }, + createEquationMenu: function(toggleGroup, menuAlign) { + return new Common.UI.Menu({ + cls: 'ppm-toolbar shifted-right', + menuAlign: menuAlign, + items : [ + new Common.UI.MenuItem({ + caption : this.unicodeText, + iconCls : 'menu__icon unicode', + checkable : true, + checkmark : false, + checked : false, + toggleGroup : toggleGroup, + type : 'input', + value : Asc.c_oAscMathInputType.Unicode + }), + new Common.UI.MenuItem({ + caption : this.latexText, + iconCls : 'menu__icon latex', + checkable : true, + checkmark : false, + checked : false, + toggleGroup : toggleGroup, + type : 'input', + value : Asc.c_oAscMathInputType.LaTeX + }), + { caption : '--' }, + new Common.UI.MenuItem({ + caption : this.currProfText, + iconCls : 'menu__icon professional-equation', + type : 'view', + value : {all: false, linear: false} + }), + new Common.UI.MenuItem({ + caption : this.currLinearText, + iconCls : 'menu__icon linear-equation', + type : 'view', + value : {all: false, linear: true} + }), + new Common.UI.MenuItem({ + caption : this.allProfText, + iconCls : 'menu__icon professional-equation', + type : 'view', + value : {all: true, linear: false} + }), + new Common.UI.MenuItem({ + caption : this.allLinearText, + iconCls : 'menu__icon linear-equation', + type : 'view', + value : {all: true, linear: true} + }) + ] + }); + }, + unitsChanged: function(m) { this._state.unitsChanged = true; }, @@ -2411,6 +2547,7 @@ define([ txtSlide : 'Slide', cellAlignText : 'Cell Vertical Alignment', advancedShapeText : 'Shape Advanced Settings', + textSaveAsPicture : 'Save as picture', /** coauthoring begin **/ addCommentText : 'Add Comment', /** coauthoring end **/ @@ -2554,7 +2691,14 @@ define([ textCm: 'cm', textCustom: 'Custom', textRulers: 'Rulers', - textDeleteGuide: 'Delete Guide' + textDeleteGuide: 'Delete Guide', + advancedEquationText: 'Equation Settings', + unicodeText: 'Unicode', + latexText: 'LaTeX', + currProfText: 'Current - Professional', + currLinearText: 'Current - Linear', + allProfText: 'All - Professional', + allLinearText: 'All - Linear' }, PE.Views.DocumentHolder || {})); }); \ No newline at end of file diff --git a/apps/presentationeditor/main/app/view/FileMenu.js b/apps/presentationeditor/main/app/view/FileMenu.js index 867189ab9..134a7625c 100644 --- a/apps/presentationeditor/main/app/view/FileMenu.js +++ b/apps/presentationeditor/main/app/view/FileMenu.js @@ -69,6 +69,13 @@ define([ var item = _.findWhere(this.items, {el: event.currentTarget}); if (item) { var panel = this.panels[item.options.action]; + if (item.options.action === 'help') { + if ( panel.noHelpContents === true && navigator.onLine ) { + this.fireEvent('item:click', [this, 'external-help', true]); + !!panel.urlHelpCenter && window.open(panel.urlHelpCenter, '_blank'); + return; + } + } this.fireEvent('item:click', [this, item.options.action, !!panel]); if (panel) { @@ -164,6 +171,17 @@ define([ dataHintTitle: 'P' }); + this.miPrintWithPreview = new Common.UI.MenuItem({ + el : $markup.elementById('#fm-btn-print-with-preview'), + action : 'printpreview', + caption : this.btnPrintCaption, + canFocused: false, + dataHint: 1, + dataHintDirection: 'left-top', + dataHintOffset: [2, 14], + dataHintTitle: 'P' + }); + this.miRename = new Common.UI.MenuItem({ el : $markup.elementById('#fm-btn-rename'), action : 'rename', @@ -285,6 +303,7 @@ define([ this.miSaveCopyAs, this.miSaveAs, this.miPrint, + this.miPrintWithPreview, this.miRename, this.miProtect, this.miRecent, @@ -374,7 +393,8 @@ define([ this.miSaveAs[(this.mode.canDownload && this.mode.isDesktopApp && this.mode.isOffline)?'show':'hide'](); this.miSave[this.mode.isEdit && Common.UI.LayoutManager.isElementVisible('toolbar-file-save') ?'show':'hide'](); this.miEdit[!this.mode.isEdit && this.mode.canEdit && this.mode.canRequestEditRights ?'show':'hide'](); - this.miPrint[this.mode.canPrint?'show':'hide'](); + this.miPrint[this.mode.canPrint && !this.mode.canPreviewPrint ?'show':'hide'](); + this.miPrintWithPreview[this.mode.canPreviewPrint?'show':'hide'](); this.miRename[(this.mode.canRename && !this.mode.isDesktopApp) ?'show':'hide'](); this.miProtect[this.mode.canProtect ?'show':'hide'](); separatorVisible = (this.mode.canDownload || this.mode.isEdit && Common.UI.LayoutManager.isElementVisible('toolbar-file-save') || this.mode.canPrint || this.mode.canProtect || @@ -455,6 +475,12 @@ define([ this.panels['help'].setLangConfig(this.mode.lang); } + if (this.mode.canPreviewPrint) { + var printPanel = PE.getController('Print').getView('PrintWithPreview'); + printPanel.menu = this; + !this.panels['printpreview'] && (this.panels['printpreview'] = printPanel.render(this.$el.find('#panel-print'))); + } + if ( Common.Controllers.Desktop.isActive() ) { $('
              • ').insertAfter($('#fm-btn-recent', this.$el)); this.items.push( diff --git a/apps/presentationeditor/main/app/view/FileMenuPanels.js b/apps/presentationeditor/main/app/view/FileMenuPanels.js index a78f6fbbf..98a257219 100644 --- a/apps/presentationeditor/main/app/view/FileMenuPanels.js +++ b/apps/presentationeditor/main/app/view/FileMenuPanels.js @@ -55,35 +55,36 @@ define([ formats: [[ {name: 'PPTX', imgCls: 'pptx', type: Asc.c_oAscFileType.PPTX}, + {name: 'PPSX', imgCls: 'ppsx', type: Asc.c_oAscFileType.PPSX}, {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF}, {name: 'ODP', imgCls: 'odp', type: Asc.c_oAscFileType.ODP} ],[ {name: 'POTX', imgCls: 'potx', type: Asc.c_oAscFileType.POTX}, + {name: 'PPTM', imgCls: 'pptm', type: Asc.c_oAscFileType.PPTM}, {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA}, {name: 'OTP', imgCls: 'otp', type: Asc.c_oAscFileType.OTP} ], [ - {name: 'PPSX', imgCls: 'ppsx', type: Asc.c_oAscFileType.PPSX}, - {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG}, - {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG} - ], [ - {name: 'PPTM', imgCls: 'pptm', type: Asc.c_oAscFileType.PPTM} + {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG}, + {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG} ]], template: _.template([ - '', - '<% _.each(rows, function(row) { %>', - '', + '
                ', + '
                <%= header %>
                ', + '
                ', + '<% _.each(rows, function(row) { %>', '<% _.each(row, function(item) { %>', - '<% if (item.type!==Asc.c_oAscFileType.PPTM || fileType=="pptm") { %>', - '
                ', + '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', + '
                ', + '
                ', + '
                ', '<% } %>', '<% }) %>', - '', - '<% }) %>', - '
                ', - '
                ', - '
                ' + '
                ', + '<% }) %>', + '', + '' ].join('')), initialize: function(options) { @@ -91,10 +92,20 @@ define([ this.menu = options.menu; this.fileType = options.fileType; + + Common.NotificationCenter.on({ + 'window:resize': _.bind(function() { + var divided = Common.Utils.innerWidth() >= this.maxWidth; + if (this.isDivided !== divided) { + this.$el.find('.divider').css('width', divided ? '100%' : '0'); + this.isDivided = divided; + } + }, this) + }); }, render: function() { - this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'pptx').toLowerCase()})); + this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'pptx').toLowerCase(), header: this.textDownloadAs})); $('.btn-doc-format',this.el).on('click', _.bind(this.onFormatClick,this)); if (_.isUndefined(this.scroller)) { @@ -105,6 +116,21 @@ define([ }); } + var itemWidth = 70 + 24, // width + margin + maxCount = 0; + this.formats.forEach(_.bind(function (item, index) { + var count = item.length; + if (count > maxCount) { + maxCount = count; + } + }, this)); + this.maxWidth = $('#file-menu-panel .panel-menu').outerWidth() + 20 + 10 + itemWidth * maxCount; // menu + left padding + margin + + if (Common.Utils.innerWidth() >= this.maxWidth) { + this.$el.find('.divider').css('width', '100%'); + this.isDivided = true; + } + return this; }, @@ -118,7 +144,9 @@ define([ if (!_.isUndefined(type) && this.menu) { this.menu.fireEvent('saveas:format', [this.menu, parseInt(type.value)]); } - } + }, + + textDownloadAs: "Download as" }); PE.Views.FileMenuPanels.ViewSaveCopy = Common.UI.BaseView.extend({ @@ -126,35 +154,36 @@ define([ menu: undefined, formats: [[ - {name: 'PPTX', imgCls: 'pptx', type: Asc.c_oAscFileType.PPTX, ext: '.pptx'}, - {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF, ext: '.pdf'}, - {name: 'ODP', imgCls: 'odp', type: Asc.c_oAscFileType.ODP, ext: '.odp'} + {name: 'PPTX', imgCls: 'pptx', type: Asc.c_oAscFileType.PPTX}, + {name: 'PPSX', imgCls: 'ppsx', type: Asc.c_oAscFileType.PPSX}, + {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF}, + {name: 'ODP', imgCls: 'odp', type: Asc.c_oAscFileType.ODP} ],[ - {name: 'POTX', imgCls: 'potx', type: Asc.c_oAscFileType.POTX, ext: '.potx'}, - {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA, ext: '.pdf'}, - {name: 'OTP', imgCls: 'otp', type: Asc.c_oAscFileType.OTP, ext: '.otp'} + {name: 'POTX', imgCls: 'potx', type: Asc.c_oAscFileType.POTX}, + {name: 'PPTM', imgCls: 'pptm', type: Asc.c_oAscFileType.PPTM}, + {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA}, + {name: 'OTP', imgCls: 'otp', type: Asc.c_oAscFileType.OTP} ], [ - {name: 'PPSX', imgCls: 'ppsx', type: Asc.c_oAscFileType.PPSX, ext: '.ppsx'}, - {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG, ext: '.zip'}, - {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG, ext: '.zip'} - ], [ - {name: 'PPTM', imgCls: 'pptm', type: Asc.c_oAscFileType.PPTM, ext: '.pptm'} + {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG}, + {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG} ]], template: _.template([ - '', - '<% _.each(rows, function(row) { %>', - '', + '
                ', + '
                <%= header %>
                ', + '
                ', + '<% _.each(rows, function(row) { %>', '<% _.each(row, function(item) { %>', - '<% if (item.type!==Asc.c_oAscFileType.PPTM || fileType=="pptm") { %>', - '
                ', + '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', + '
                ', + '
                ', + '
                ', '<% } %>', '<% }) %>', - '', - '<% }) %>', - '
                ', - '
                ', - '
                ' + '
                ', + '<% }) %>', + '', + '' ].join('')), initialize: function(options) { @@ -162,10 +191,20 @@ define([ this.menu = options.menu; this.fileType = options.fileType; + + Common.NotificationCenter.on({ + 'window:resize': _.bind(function() { + var divided = Common.Utils.innerWidth() >= this.maxWidth; + if (this.isDivided !== divided) { + this.$el.find('.divider').css('width', divided ? '100%' : '0'); + this.isDivided = divided; + } + }, this) + }); }, render: function() { - this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'pptx').toLowerCase()})); + this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'pptx').toLowerCase(), header: this.textSaveCopyAs})); $('.btn-doc-format',this.el).on('click', _.bind(this.onFormatClick,this)); if (_.isUndefined(this.scroller)) { @@ -176,6 +215,21 @@ define([ }); } + var itemWidth = 70 + 24, // width + margin + maxCount = 0; + this.formats.forEach(_.bind(function (item, index) { + var count = item.length; + if (count > maxCount) { + maxCount = count; + } + }, this)); + this.maxWidth = $('#file-menu-panel .panel-menu').outerWidth() + 20 + 10 + itemWidth * maxCount; // menu + left padding + margin + + if (Common.Utils.innerWidth() >= this.maxWidth) { + this.$el.find('.divider').css('width', '100%'); + this.isDivided = true; + } + return this; }, @@ -190,7 +244,9 @@ define([ if (!_.isUndefined(type) && !_.isUndefined(ext) && this.menu) { this.menu.fireEvent('savecopy:format', [this.menu, parseInt(type.value), ext.value]); } - } + }, + + textSaveCopyAs: "Save Copy as" }); PE.Views.FileMenuPanels.Settings = Common.UI.BaseView.extend(_.extend({ @@ -199,7 +255,8 @@ define([ template: _.template([ '
                ', - '', + '
                <%= scope.txtAdvancedSettings %>
                ', + '
                ', '', '', '', @@ -263,13 +320,15 @@ define([ '', '', '', - '', - '', - '', '', '', '', - + '', + '', + '', '', '', '', @@ -344,14 +403,6 @@ define([ dataHintOffset: 'small' }); - this.chInputMode = new Common.UI.CheckBox({ - el: $markup.findById('#fms-chb-input-mode'), - labelText: this.txtHieroglyphs, - dataHint: '2', - dataHintDirection: 'left', - dataHintOffset: 'small' - }); - this.chUseAltKey = new Common.UI.CheckBox({ el: $markup.findById('#fms-chb-use-alt-key'), labelText: Common.Utils.isMac ? this.txtUseOptionKey : this.txtUseAltKey, @@ -547,6 +598,17 @@ define([ })).on('click', _.bind(me.applySettings, me)); }); + this.chQuickPrint = new Common.UI.CheckBox({ + el: $markup.findById('#fms-chb-quick-print'), + labelText: '', + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.chQuickPrint.$el.parent().on('click', function (){ + me.chQuickPrint.setValue(!me.chQuickPrint.isChecked()); + }); + this.pnlSettings = $markup.find('.flex-settings').addBack().filter('.flex-settings'); this.pnlApply = $markup.find('.fms-flex-apply').addBack().filter('.fms-flex-apply'); this.pnlTable = this.pnlSettings.find('table'); @@ -581,7 +643,7 @@ define([ updateScroller: function() { if (this.scroller) { Common.UI.Menu.Manager.hideAll(); - var scrolled = this.$el.height()< this.pnlTable.height() + 25 + this.pnlApply.height(); + var scrolled = this.$el.height()< this.pnlTable.height() + 25 + this.pnlApply.height() + this.$el.find('.header').outerHeight(true); this.pnlApply.toggleClass('hidden', !scrolled); this.trApply.toggleClass('hidden', scrolled); this.pnlSettings.css('overflow', scrolled ? 'hidden' : 'visible'); @@ -608,6 +670,7 @@ define([ $('tr.live-viewer', this.el)[mode.canLiveView && !mode.isOffline && mode.canChangeCoAuthoring ? 'show' : 'hide'](); $('tr.macros', this.el)[(mode.customization && mode.customization.macros===false) ? 'hide' : 'show'](); $('tr.spellcheck', this.el)[mode.isEdit && Common.UI.FeaturesManager.canChange('spellcheck') ? 'show' : 'hide'](); + $('tr.quick-print', this.el)[mode.canQuickPrint ? 'show' : 'hide'](); if ( !Common.UI.Themes.available() ) { $('tr.themes, tr.themes + tr.divider', this.el).hide(); @@ -626,8 +689,6 @@ define([ this.chIgnoreNumbers.setValue(Common.Utils.InternalSettings.get("pe-spellcheck-ignore-numbers-words")); } - this.chInputMode.setValue(Common.Utils.InternalSettings.get("pe-settings-inputmode")); - this.chUseAltKey.setValue(Common.Utils.InternalSettings.get("pe-settings-show-alt-hints")); var value = Common.Utils.InternalSettings.get("pe-settings-zoom"); @@ -671,6 +732,7 @@ define([ this.lblMacrosDesc.text(item ? item.get('descValue') : this.txtWarnMacrosDesc); this.chPaste.setValue(Common.Utils.InternalSettings.get("pe-settings-paste-button")); + this.chQuickPrint.setValue(Common.Utils.InternalSettings.get("pe-settings-quick-print-button")); var data = []; for (var t in Common.UI.Themes.map()) { @@ -691,7 +753,6 @@ define([ Common.localStorage.setBool("pe-spellcheck-ignore-uppercase-words", this.chIgnoreUppercase.isChecked()); Common.localStorage.setBool("pe-spellcheck-ignore-numbers-words", this.chIgnoreNumbers.isChecked()); } - Common.localStorage.setItem("pe-settings-inputmode", this.chInputMode.isChecked() ? 1 : 0); Common.localStorage.setItem("pe-settings-show-alt-hints", this.chUseAltKey.isChecked() ? 1 : 0); Common.Utils.InternalSettings.set("pe-settings-show-alt-hints", Common.localStorage.getBool("pe-settings-show-alt-hints")); Common.localStorage.setItem("pe-settings-zoom", this.cmbZoom.getValue()); @@ -718,6 +779,7 @@ define([ Common.Utils.InternalSettings.set("pe-macros-mode", this.cmbMacros.getValue()); Common.localStorage.setItem("pe-settings-paste-button", this.chPaste.isChecked() ? 1 : 0); + Common.localStorage.setBool("pe-settings-quick-print-button", this.chQuickPrint.isChecked()); Common.localStorage.save(); @@ -793,7 +855,10 @@ define([ txtStrictTip: 'Use the \'Save\' button to sync the changes you and others make', strIgnoreWordsInUPPERCASE: 'Ignore words in UPPERCASE', strIgnoreWordsWithNumbers: 'Ignore words with numbers', - strShowOthersChanges: 'Show changes from other users' + strShowOthersChanges: 'Show changes from other users', + txtAdvancedSettings: 'Advanced Settings', + txtQuickPrint: 'Show the Quick Print button in the editor header', + txtQuickPrintTip: 'The document will be printed on the last selected or default printer' }, PE.Views.FileMenuPanels.Settings || {})); PE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ @@ -801,7 +866,8 @@ define([ menu: undefined, template: _.template([ - '
                ' + '
                <%= scope.txtOpenRecent %>
                ', + '
                ' ].join('')), initialize: function(options) { @@ -812,7 +878,7 @@ define([ }, render: function() { - this.$el.html(this.template()); + this.$el.html(this.template({scope: this})); this.viewRecentPicker = new Common.UI.DataView({ el: $('#id-recent-view'), @@ -851,7 +917,9 @@ define([ onRecentFileClick: function(view, itemview, record){ if ( this.menu ) this.menu.fireEvent('recent:open', [this.menu, record.get('url')]); - } + }, + + txtOpenRecent: 'Open Recent' }); PE.Views.FileMenuPanels.CreateNew = Common.UI.BaseView.extend(_.extend({ @@ -866,7 +934,7 @@ define([ }, template: _.template([ - '

                <%= scope.txtCreateNew %>

                ', + '
                <%= scope.txtCreateNew %>
                ', '
                ', '<% if (blank) { %> ', '
                ', @@ -954,7 +1022,8 @@ define([ this.template = _.template([ '
                ', - '
                ', + '', + '
                ', + '
                ', + '
                ' + this.txtPresentationInfo + '
                ', + '
                ', '', '', '', @@ -977,6 +1046,10 @@ define([ '', '', '', + '', + '', + '', + '', '', '', '', @@ -1064,6 +1137,15 @@ define([ dataHintDirection: 'left', dataHintOffset: 'small' }).on('keydown:before', keyDownBefore); + this.inputTags = new Common.UI.InputField({ + el : $markup.findById('#id-info-tags'), + style : 'width: 200px;', + placeHolder : this.txtAddText, + validateOnBlur: false, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }).on('keydown:before', keyDownBefore); this.inputSubject = new Common.UI.InputField({ el : $markup.findById('#id-info-subject'), style : 'width: 200px;', @@ -1268,6 +1350,8 @@ define([ value = props.asc_getTitle(); this.inputTitle.setValue(value || ''); + value = props.asc_getKeywords(); + this.inputTags.setValue(value || ''); value = props.asc_getSubject(); this.inputSubject.setValue(value || ''); value = props.asc_getDescription(); @@ -1306,6 +1390,7 @@ define([ this.tblAuthor.find('.close').toggleClass('hidden', !mode.isEdit); if (!mode.isEdit) { this.inputTitle._input.attr('placeholder', ''); + this.inputTags._input.attr('placeholder', ''); this.inputSubject._input.attr('placeholder', ''); this.inputComment._input.attr('placeholder', ''); this.inputAuthor._input.attr('placeholder', ''); @@ -1329,6 +1414,7 @@ define([ SetDisabled: function() { var disable = !this.mode.isEdit || this._locked; this.inputTitle.setDisabled(disable); + this.inputTags.setDisabled(disable); this.inputSubject.setDisabled(disable); this.inputComment.setDisabled(disable); this.inputAuthor.setDisabled(disable); @@ -1340,6 +1426,7 @@ define([ applySettings: function() { if (this.coreProps && this.api) { this.coreProps.asc_putTitle(this.inputTitle.getValue()); + this.coreProps.asc_putKeywords(this.inputTags.getValue()); this.coreProps.asc_putSubject(this.inputSubject.getValue()); this.coreProps.asc_putDescription(this.inputComment.getValue()); this.coreProps.asc_putCreator(this.authors.join(';')); @@ -1354,6 +1441,7 @@ define([ txtAppName: 'Application', txtEditTime: 'Total Editing time', txtTitle: 'Title', + txtTags: 'Tags', txtSubject: 'Subject', txtComment: 'Comment', txtModifyDate: 'Last Modified', @@ -1363,7 +1451,8 @@ define([ txtAddAuthor: 'Add Author', txtAddText: 'Add Text', txtMinutes: 'min', - okButtonText: 'Apply' + okButtonText: 'Apply', + txtPresentationInfo: 'Presentation Info' }, PE.Views.FileMenuPanels.DocumentInfo || {})); PE.Views.FileMenuPanels.DocumentRights = Common.UI.BaseView.extend(_.extend({ @@ -1375,7 +1464,8 @@ define([ this.rendered = false; this.template = _.template([ - '
                ', + '
                ' + this.txtAccessRights + '
                ', + '
                ', '', '', '', @@ -1487,7 +1577,8 @@ define([ }, txtRights: 'Persons who have rights', - txtBtnAccessRights: 'Change access rights' + txtBtnAccessRights: 'Change access rights', + txtAccessRights: 'Access Rights' }, PE.Views.FileMenuPanels.DocumentRights || {})); PE.Views.FileMenuPanels.Help = Common.UI.BaseView.extend({ @@ -1508,6 +1599,14 @@ define([ this.urlPref = 'resources/help/{{DEFAULT_LANG}}/'; this.openUrl = null; + if ( !Common.Utils.isIE ) { + if ( /^https?:\/\//.test('{{HELP_CENTER_WEB_PE}}') ) { + const _url_obj = new URL('{{HELP_CENTER_WEB_PE}}'); + _url_obj.searchParams.set('lang', Common.Locale.getCurrentLanguage()); + this.urlHelpCenter = _url_obj.toString(); + } + } + this.en_data = [ {"src": "ProgramInterface/ProgramInterface.htm", "name": "Introducing Presentation Editor user interface", "headername": "Program Interface"}, {"src": "ProgramInterface/FileTab.htm", "name": "File tab"}, @@ -1580,16 +1679,17 @@ define([ this.iFrame.frameBorder = "0"; this.iFrame.width = "100%"; this.iFrame.height = "100%"; + if (Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86) + this.iFrame.onload = function() { + try { + me.findUrl(me.iFrame.contentWindow.location.href); + } catch (e) { + } + }; + Common.Gateway.on('internalcommand', function(data) { if (data.type == 'help:hyperlink') { - var src = data.data; - var rec = me.viewHelpPicker.store.find(function(record){ - return (src.indexOf(record.get('src'))>0); - }); - if (rec) { - me.viewHelpPicker.selectRecord(rec, true); - me.viewHelpPicker.scrollToRecord(rec); - } + me.findUrl(data.data); } }); @@ -1612,9 +1712,10 @@ define([ store.fetch(config); } else { if ( Common.Controllers.Desktop.isActive() ) { - if ( store.contentLang === '{{DEFAULT_LANG}}' || !Common.Controllers.Desktop.helpUrl() ) + if ( store.contentLang === '{{DEFAULT_LANG}}' || !Common.Controllers.Desktop.helpUrl() ) { + me.noHelpContents = true; me.iFrame.src = '../../common/main/resources/help/download.html'; - else { + } else { store.contentLang = store.contentLang === lang ? '{{DEFAULT_LANG}}' : lang; me.urlPref = Common.Controllers.Desktop.helpUrl() + '/' + store.contentLang + '/'; store.url = me.urlPref + 'Contents.json'; @@ -1651,13 +1752,7 @@ define([ } if (url) { if (this.viewHelpPicker.store.length>0) { - var rec = this.viewHelpPicker.store.find(function(record){ - return (url.indexOf(record.get('src'))>=0); - }); - if (rec) { - this.viewHelpPicker.selectRecord(rec, true); - this.viewHelpPicker.scrollToRecord(rec); - } + this.findUrl(url); this.onSelectItem(url); } else this.openUrl = url; @@ -1666,6 +1761,16 @@ define([ onSelectItem: function(src) { this.iFrame.src = this.urlPref + src; + }, + + findUrl: function(src) { + var rec = this.viewHelpPicker.store.find(function(record){ + return (src.indexOf(record.get('src'))>=0); + }); + if (rec) { + this.viewHelpPicker.selectRecord(rec, true); + this.viewHelpPicker.scrollToRecord(rec); + } } }); @@ -1674,23 +1779,30 @@ define([ menu: undefined, template: _.template([ - '', + '', '
                ', '', - '
                ', - '
                ', - '', - '', - '', - '', - '', - '', - '', - '
                ', + '
                ', + '
                <%= scope.txtProtectPresentation %>
                ', + '
                ', + '
                ', + '
                ', + '
                <%= scope.txtEncrypted %>
                ', + '
                ', + '
                ', + '
                ', + '
                ', + '
                ', '
                ', '
                ', '', - '
                ', + '
                ', + '
                <%= scope.txtAddSignature %>
                ', + '
                ', + '
                ', + '
                ', + '
                <%= scope.txtAddedSignature %>
                ', + '
                ', '
                ', '
                ' ].join('')), @@ -1702,15 +1814,13 @@ define([ var me = this; this.templateSignature = _.template([ - '', - '', - '', - '', - '', - '', - '', - '', - '
                ' + '
                ', + '
                <%= tipText %>
                ', + '
                ', + '', + '', + '
                ', + '
                ' ].join('')); }, @@ -1732,7 +1842,8 @@ define([ this.btnDeletePwd.on('click', _.bind(this.closeMenu, this)); this.cntPassword = $('#id-fms-password'); - this.cntPasswordView = $('#id-fms-view-pwd'); + this.cntEncryptBlock = this.$el.find('.encrypt-block'); + this.cntEncryptedBlock = this.$el.find('.encrypted-block'); this.btnAddInvisibleSign = protection.getButton('signature'); this.btnAddInvisibleSign.render(this.$el.find('#fms-btn-invisible-sign')); @@ -1740,6 +1851,10 @@ define([ this.cntSignature = $('#id-fms-signature'); this.cntSignatureView = $('#id-fms-signature-view'); + + this.cntAddSignature = this.$el.find('.add-signature-block'); + this.cntAddedSignature = this.$el.find('.added-signature-block'); + if (_.isUndefined(this.scroller)) { this.scroller = new Common.UI.Scroller({ el: this.$el, @@ -1816,10 +1931,16 @@ define([ var tipText = (hasInvalid) ? this.txtSignedInvalid : (hasValid ? this.txtSigned : ""); this.cntSignatureView.html(this.templateSignature({tipText: tipText, hasSigned: (hasValid || hasInvalid)})); + + var isAddedSignature = this.btnAddInvisibleSign.$el.find('button').hasClass('hidden'); + this.cntAddSignature.toggleClass('hidden', isAddedSignature); + this.cntAddedSignature.toggleClass('hidden', !isAddedSignature); }, updateEncrypt: function() { - this.cntPasswordView.toggleClass('hidden', this.btnAddPwd.isVisible()); + var isProtected = this.btnAddPwd.$el.find('button').hasClass('hidden'); + this.cntEncryptBlock.toggleClass('hidden', isProtected); + this.cntEncryptedBlock.toggleClass('hidden', !isProtected); }, strProtect: 'Protect Presentation', @@ -1831,8 +1952,288 @@ define([ notcriticalErrorTitle: 'Warning', txtEditWarning: 'Editing will remove the signatures from the presentation.
                Are you sure you want to continue?', strEncrypt: 'With Password', - txtEncrypted: 'This presentation has been protected by password' + txtProtectPresentation: 'Encrypt this presentation with a password', + txtEncrypted: 'A password is required to open this presentation', + txtAddSignature: 'Ensure the integrity of the presentation by adding an
                invisible digital signature', + txtAddedSignature: 'Valid signatures have been added to the presentation.
                The presentation is protected from editing.' }, PE.Views.FileMenuPanels.ProtectDoc || {})); + PE.Views.PrintWithPreview = Common.UI.BaseView.extend(_.extend({ + el: '#panel-print', + menu: undefined, + + template: _.template([ + '
                ', + '
                ', + '', + '
                ', + '', + '', + '
                ' + ].join('')), + + initialize: function(options) { + Common.UI.BaseView.prototype.initialize.call(this,arguments); + + this.menu = options.menu; + + this._initSettings = true; + }, + + render: function(node) { + var me = this; + + var $markup = $(this.template({scope: this})); + + this.cmbRange = new Common.UI.ComboBox({ + el: $markup.findById('#print-combo-range'), + menuStyle: 'min-width: 248px;max-height: 280px;', + editable: false, + takeFocusOnClose: true, + cls: 'input-group-nr', + data: [ + { value: 'all', displayValue: this.txtAllPages }, + { value: 'current', displayValue: this.txtCurrentPage }, + { value: -1, displayValue: this.txtCustomPages } + ], + dataHint: '2', + dataHintDirection: 'bottom', + dataHintOffset: 'big' + }); + this.cmbRange.setValue('all'); + + this.inputPages = new Common.UI.InputField({ + el: $markup.findById('#print-txt-pages'), + allowBlank: true, + validateOnChange: true, + validateOnBlur: false, + maskExp: /[0-9,\-]/, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + + this.cmbPaperSize = new Common.UI.ComboBox({ + el: $markup.findById('#print-combo-pages'), + menuStyle: 'max-height: 280px; min-width: 248px;', + editable: false, + takeFocusOnClose: true, + cls: 'input-group-nr', + data: [ + { value: 0, displayValue:'US Letter (21,59cm x 27,94cm)', caption: 'US Letter', size: [215.9, 279.4]}, + { value: 1, displayValue:'US Legal (21,59cm x 35,56cm)', caption: 'US Legal', size: [215.9, 355.6]}, + { value: 2, displayValue:'A4 (21cm x 29,7cm)', caption: 'A4', size: [210, 297]}, + { value: 3, displayValue:'A5 (14,8cm x 21cm)', caption: 'A5', size: [148, 210]}, + { value: 4, displayValue:'B5 (17,6cm x 25cm)', caption: 'B5', size: [176, 250]}, + { value: 5, displayValue:'Envelope #10 (10,48cm x 24,13cm)', caption: 'Envelope #10', size: [104.8, 241.3]}, + { value: 6, displayValue:'Envelope DL (11cm x 22cm)', caption: 'Envelope DL', size: [110, 220]}, + { value: 7, displayValue:'Tabloid (27,94cm x 43,18cm)', caption: 'Tabloid', size: [279.4, 431.8]}, + { value: 8, displayValue:'A3 (29,7cm x 42cm)', caption: 'A3', size: [297, 420]}, + { value: 9, displayValue:'Tabloid Oversize (30,48cm x 45,71cm)', caption: 'Tabloid Oversize', size: [304.8, 457.1]}, + { value: 10, displayValue:'ROC 16K (19,68cm x 27,3cm)', caption: 'ROC 16K', size: [196.8, 273]}, + { value: 11, displayValue:'Envelope Choukei 3 (11,99cm x 23,49cm)', caption: 'Envelope Choukei 3', size: [119.9, 234.9]}, + { value: 12, displayValue:'Super B/A3 (33,02cm x 48,25cm)', caption: 'Super B/A3', size: [330.2, 482.5]}, + { value: 13, displayValue:'A4 (84,1cm x 118,9cm)', caption: 'A0', size: [841, 1189]}, + { value: 14, displayValue:'A4 (59,4cm x 84,1cm)', caption: 'A1', size: [594, 841]}, + { value: 16, displayValue:'A4 (42cm x 59,4cm)', caption: 'A2', size: [420, 594]}, + { value: 17, displayValue:'A4 (10,5cm x 14,8cm)', caption: 'A6', size: [105, 148]} + ], + dataHint: '2', + dataHintDirection: 'bottom', + dataHintOffset: 'big' + }); + this.cmbPaperSize.setValue(2); + + this.pnlSettings = $markup.find('.flex-settings').addBack().filter('.flex-settings'); + this.pnlTable = $(this.pnlSettings.find('table')[0]); + this.trApply = $markup.find('.fms-btn-apply'); + + this.btnPrint = new Common.UI.Button({ + el: $markup.findById('#print-btn-print') + }); + this.btnPrintPdf = new Common.UI.Button({ + el: $markup.findById('#print-btn-print-pdf') + }); + + this.btnPrevPage = new Common.UI.Button({ + parentEl: $markup.findById('#print-prev-page'), + cls: 'btn-prev-page', + iconCls: 'arrow', + dataHint: '2', + dataHintDirection: 'top' + }); + + this.btnNextPage = new Common.UI.Button({ + parentEl: $markup.findById('#print-next-page'), + cls: 'btn-next-page', + iconCls: 'arrow', + dataHint: '2', + dataHintDirection: 'top' + }); + + this.countOfPages = $markup.findById('#print-count-page'); + + this.txtNumberPage = new Common.UI.InputField({ + el: $markup.findById('#print-number-page'), + allowBlank: true, + validateOnChange: true, + style: 'width: 50px;', + maskExp: /[0-9]/, + validation: function(value) { + if (/(^[0-9]+$)/.test(value)) { + value = parseInt(value); + if (undefined !== value && value > 0 && value <= me.pageCount) + return true; + } + + return me.txtPageNumInvalid; + }, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + + this.$el = $(node).html($markup); + this.$previewBox = $('#print-preview-box'); + this.$previewEmpty = $('#print-preview-empty'); + + if (_.isUndefined(this.scroller)) { + this.scroller = new Common.UI.Scroller({ + el: this.pnlSettings, + suppressScrollX: true, + alwaysVisibleY: true + }); + } + + Common.NotificationCenter.on({ + 'window:resize': function() { + me.isVisible() && me.updateScroller(); + } + }); + + this.updateMetricUnit(); + + this.fireEvent('render:after', this); + + return this; + }, + + show: function() { + Common.UI.BaseView.prototype.show.call(this,arguments); + if (this._initSettings) { + this.updateMetricUnit(); + this._initSettings = false; + } + this.updateScroller(); + this.fireEvent('show', this); + }, + + updateScroller: function() { + if (this.scroller) { + Common.UI.Menu.Manager.hideAll(); + var scrolled = this.$el.height()< this.pnlTable.height() + 25 + this.$el.find('.main-header').outerHeight(true); + this.pnlSettings.css('overflow', scrolled ? 'hidden' : 'visible'); + this.scroller.update(); + } + }, + + setMode: function(mode) { + this.mode = mode; + }, + + setApi: function(api) { + + }, + + isVisible: function() { + return (this.$el || $(this.el)).is(":visible"); + }, + + setRange: function(value) { + this.cmbRange.setValue(value); + }, + + getRange: function() { + return this.cmbRange.getValue(); + }, + + updateCountOfPages: function (count) { + this.countOfPages.text( + Common.Utils.String.format(this.txtOf, count) + ); + this.pageCount = count; + }, + + updateCurrentPage: function (index) { + this.txtNumberPage.setValue(index + 1); + }, + + updateMetricUnit: function() { + if (!this.cmbPaperSize) return; + var store = this.cmbPaperSize.store; + for (var i=0; i SCALE_MIN) { - Common.localStorage.setItem('pe-mainmenu-width',this.$el.width()); + var width = this.$el.width(); + if (width > SCALE_MIN) { + Common.localStorage.setItem('pe-mainmenu-width',width); this.$el.width(SCALE_MIN); } if (this._state.pluginIsRunning) // hide comments or chat panel when plugin is running @@ -195,7 +196,8 @@ define([ this.$el.width(Common.localStorage.getItem('pe-mainmenu-width') || MENU_SCALE_PART); } } else if (!this._state.pluginIsRunning){ - this.isVisible() && Common.localStorage.setItem('pe-mainmenu-width',this.$el.width()); + var width = this.$el.width(); + this.isVisible() && (width>SCALE_MIN) && Common.localStorage.setItem('pe-mainmenu-width',width); this.$el.width(SCALE_MIN); } this.onCoauthOptions(); diff --git a/apps/presentationeditor/main/app/view/ShapeSettingsAdvanced.js b/apps/presentationeditor/main/app/view/ShapeSettingsAdvanced.js index cad1f7e97..148355ab1 100644 --- a/apps/presentationeditor/main/app/view/ShapeSettingsAdvanced.js +++ b/apps/presentationeditor/main/app/view/ShapeSettingsAdvanced.js @@ -378,18 +378,18 @@ define([ 'text!presentationeditor/main/app/template/ShapeSettingsAdvanced.tem var _arrStyles = [], _arrSize = []; - for ( var i=0; i<6; i++ ) - _arrStyles.push({value: i, offsetx: 80*i+10, offsety: 0}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.None, idsvg: 'no-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Triangle, idsvg: ''}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Arrow, idsvg: 'open-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Stealth, idsvg: 'stealth-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Diamond, idsvg: 'dimond-'}); + _arrStyles.push({type: Asc.c_oAscLineBeginType.Oval, idsvg: 'oval-'}); - _arrStyles[0].type = Asc.c_oAscLineBeginType.None; - _arrStyles[1].type = Asc.c_oAscLineBeginType.Triangle; - _arrStyles[2].type = Asc.c_oAscLineBeginType.Arrow; - _arrStyles[3].type = Asc.c_oAscLineBeginType.Stealth; - _arrStyles[4].type = Asc.c_oAscLineBeginType.Diamond; - _arrStyles[5].type = Asc.c_oAscLineBeginType.Oval; + for ( var i=0; i<6; i++ ) + _arrStyles[i].value = i; for ( i=0; i<9; i++ ) - _arrSize.push({value: i, offsetx: 80+10, offsety: 20*(i+1)}); + _arrSize.push({value: i, typearrow:''}); _arrSize[0].type = Asc.c_oAscLineBeginSize.small_small; _arrSize[1].type = Asc.c_oAscLineBeginSize.small_mid; @@ -407,7 +407,7 @@ define([ 'text!presentationeditor/main/app/template/ShapeSettingsAdvanced.tem template: _.template([ '' + + '
                ' + + '
                ' + + '' + + '
                ' + + '
                ' + + '' + + '
                ' + + '
                ' + ''; return { options: {}, @@ -159,6 +167,12 @@ define([ me.btnGridlines.menu.on('show:after', _.bind(function(btn, state) { me.fireEvent('gridlines:aftershow'); }, me)); + me.chLeftMenu.on('change', _.bind(function (checkbox, state) { + me.fireEvent('leftmenu:hide', [me.chLeftMenu, state === 'checked']); + }, me)); + me.chRightMenu.on('change', _.bind(function (checkbox, state) { + me.fireEvent('rightmenu:hide', [me.chRightMenu, state === 'checked']); + }, me)); }, initialize: function (options) { @@ -280,7 +294,7 @@ define([ lock: [_set.disableOnStart], enableToggle: true, allowDepress: true, - pressed: Common.localStorage.getBool("pe-settings-showguides", true), + pressed: Common.localStorage.getBool("pe-settings-showguides"), split: true, menu: true, dataHint: '1', @@ -296,7 +310,7 @@ define([ lock: [_set.disableOnStart], enableToggle: true, allowDepress: true, - pressed: Common.localStorage.getBool("pe-settings-showgrid", true), + pressed: Common.localStorage.getBool("pe-settings-showgrid"), split: true, menu: true, dataHint: '1', @@ -305,6 +319,24 @@ define([ }); this.lockedControls.push(this.btnGridlines); + this.chRightMenu = new Common.UI.CheckBox({ + lock: [_set.disableOnStart], + labelText: this.textRightMenu, + dataHint : '1', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.lockedControls.push(this.chRightMenu); + + this.chLeftMenu = new Common.UI.CheckBox({ + lock: [_set.disableOnStart], + labelText: this.textLeftMenu, + dataHint : '1', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.lockedControls.push(this.chLeftMenu); + Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); }, @@ -329,6 +361,8 @@ define([ this.chNotes.render($host.find('#slot-chk-notes')); this.btnGuides.render($host.find('#slot-btn-guides')); this.btnGridlines.render($host.find('#slot-btn-gridlines')); + this.chLeftMenu.render($host.find('#slot-chk-leftmenu')); + this.chRightMenu.render($host.find('#slot-chk-rightmenu')); return this.$el; }, @@ -371,18 +405,33 @@ define([ me.btnInterfaceTheme.$el.closest('.group').remove(); me.$el.find('.separator-theme').remove(); } - if (config.canBrandingExt && config.customization && config.customization.statusBar === false || !Common.UI.LayoutManager.isElementVisible('statusBar')) { - me.chStatusbar.$el.remove(); - if (!config.isEdit) { - var slotChkNotes = me.chNotes.$el, - groupRulers = slotChkNotes.closest('.group'), - groupToolbar = me.chToolbar.$el.closest('.group'); - groupToolbar.find('.elset')[1].append(slotChkNotes[0]); - groupRulers.remove(); - me.$el.find('.separator-rulers').remove(); - } - } else if (!config.isEdit) { + var emptyGroup = []; + if (config.canBrandingExt && config.customization && config.customization.statusBar === false || !Common.UI.LayoutManager.isElementVisible('statusBar')) { + emptyGroup.push(me.chStatusbar.$el.closest('.elset')); + me.chStatusbar.$el.remove(); + } + + if (config.canBrandingExt && config.customization && config.customization.leftMenu === false || !Common.UI.LayoutManager.isElementVisible('leftMenu')) { + emptyGroup.push(me.chLeftMenu.$el.closest('.elset')); + me.chLeftMenu.$el.remove(); + } else if (emptyGroup.length>0) { + emptyGroup.push(me.chLeftMenu.$el.closest('.elset')); + emptyGroup.shift().append(me.chLeftMenu.$el[0]); + } + + if (!config.isEdit || config.canBrandingExt && config.customization && config.customization.rightMenu === false || !Common.UI.LayoutManager.isElementVisible('rightMenu')) { + emptyGroup.push(me.chRightMenu.$el.closest('.elset')); + me.chRightMenu.$el.remove(); + } else if (emptyGroup.length>0) { + emptyGroup.push(me.chRightMenu.$el.closest('.elset')); + emptyGroup.shift().append(me.chRightMenu.$el[0]); + } + if (emptyGroup.length>1) { // remove empty group + emptyGroup[emptyGroup.length-1].closest('.group').remove(); + } + + if (!config.isEdit) { me.chRulers.hide(); } if (!config.isEdit) { @@ -418,6 +467,14 @@ define([ } } + var value = Common.UI.LayoutManager.getInitValue('leftMenu'); + value = (value!==undefined) ? !value : false; + me.chLeftMenu.setValue(!Common.localStorage.getBool("pe-hidden-leftmenu", value)); + + value = Common.UI.LayoutManager.getInitValue('rightMenu'); + value = (value!==undefined) ? !value : false; + me.chRightMenu.setValue(!Common.localStorage.getBool("pe-hidden-rightmenu", value)); + me.setEvents(); }); }, @@ -472,7 +529,9 @@ define([ textShowGridlines: 'Show Gridlines', textSnapObjects: 'Snap Object to Grid', textCm: 'cm', - textCustom: 'Custom' + textCustom: 'Custom', + textLeftMenu: 'Left panel', + textRightMenu: 'Right panel' } }()), PE.Views.ViewTab || {})); diff --git a/apps/presentationeditor/main/app/view/Viewport.js b/apps/presentationeditor/main/app/view/Viewport.js index 5593db8bd..3e2a288a1 100644 --- a/apps/presentationeditor/main/app/view/Viewport.js +++ b/apps/presentationeditor/main/app/view/Viewport.js @@ -138,10 +138,22 @@ define([ }, applyEditorMode: function() { - PE.getController('RightMenu').getView('RightMenu').render(this.mode); + var me = this, + rightMenuView = PE.getController('RightMenu').getView('RightMenu'); + me._rightMenu = rightMenuView.render(this.mode); + var value = Common.UI.LayoutManager.getInitValue('rightMenu'); + value = (value!==undefined) ? !value : false; + Common.localStorage.getBool("pe-hidden-rightmenu", value) && me._rightMenu.hide(); + }, + + applyCommonMode: function() { if ( Common.localStorage.getBool('pe-hidden-status') ) PE.getController('Statusbar').getView('Statusbar').setVisible(false); + + var value = Common.UI.LayoutManager.getInitValue('leftMenu'); + value = (value!==undefined) ? !value : false; + Common.localStorage.getBool("pe-hidden-leftmenu", value) && PE.getController('LeftMenu').getView('LeftMenu').hide(); }, setMode: function(mode, delay) { diff --git a/apps/presentationeditor/main/app_dev.js b/apps/presentationeditor/main/app_dev.js index 8d7c9c55e..b9afd0994 100644 --- a/apps/presentationeditor/main/app_dev.js +++ b/apps/presentationeditor/main/app_dev.js @@ -53,7 +53,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', api : 'api/documents/api', core : 'common/main/lib/core/application', notification : 'common/main/lib/core/NotificationCenter', @@ -115,11 +115,10 @@ require([ 'backbone', 'bootstrap', 'core', - 'api', 'analytics', 'gateway', 'locale', - 'sockjs', + 'socketio', 'xregexp', 'underscore' ], function (Backbone, Bootstrap, Core) { @@ -143,6 +142,7 @@ require([ 'Main', 'ViewTab', 'Search', + 'Print', 'Common.Controllers.Fonts', 'Common.Controllers.History' /** coauthoring begin **/ @@ -173,6 +173,7 @@ require([ 'presentationeditor/main/app/controller/Main', 'presentationeditor/main/app/controller/ViewTab', 'presentationeditor/main/app/controller/Search', + 'presentationeditor/main/app/controller/Print', 'presentationeditor/main/app/view/FileMenuPanels', 'presentationeditor/main/app/view/ParagraphSettings', 'presentationeditor/main/app/view/ImageSettings', diff --git a/apps/presentationeditor/main/app_dev.reporter.js b/apps/presentationeditor/main/app_dev.reporter.js index 04aac16cf..9334926a1 100644 --- a/apps/presentationeditor/main/app_dev.reporter.js +++ b/apps/presentationeditor/main/app_dev.reporter.js @@ -48,7 +48,7 @@ require.config({ jquery : '../vendor/jquery/jquery', underscore : '../vendor/underscore/underscore', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', allfonts : '../../sdkjs/common/AllFonts' }, shim: { @@ -61,14 +61,14 @@ require.config({ 'underscore', 'allfonts', 'xregexp', - 'sockjs' + 'socketio' ] } } }); require([ - 'sockjs', + 'socketio', 'xregexp', 'underscore' ], function () { diff --git a/apps/presentationeditor/main/index.html b/apps/presentationeditor/main/index.html index 5edfda4b2..73e1eb6f1 100644 --- a/apps/presentationeditor/main/index.html +++ b/apps/presentationeditor/main/index.html @@ -345,6 +345,8 @@ + + diff --git a/apps/presentationeditor/main/index_loader.html b/apps/presentationeditor/main/index_loader.html index 6279967a3..ff89165c9 100644 --- a/apps/presentationeditor/main/index_loader.html +++ b/apps/presentationeditor/main/index_loader.html @@ -261,6 +261,8 @@ + + <% } %> diff --git a/apps/presentationeditor/mobile/src/page/main.jsx b/apps/presentationeditor/mobile/src/page/main.jsx index d3012f5c7..f063d3584 100644 --- a/apps/presentationeditor/mobile/src/page/main.jsx +++ b/apps/presentationeditor/mobile/src/page/main.jsx @@ -13,6 +13,7 @@ import ContextMenu from '../controller/ContextMenu'; import { Toolbar } from "../controller/Toolbar"; import { AddLinkController } from '../controller/add/AddLink'; import { EditLinkController } from '../controller/edit/EditLink'; + class MainPage extends Component { constructor(props) { super(props); @@ -112,23 +113,27 @@ class MainPage extends Component { const appOptions = this.props.storeAppOptions; const config = appOptions.config; - let showLogo = !(appOptions.canBrandingExt && (config.customization && (config.customization.loaderName || config.customization.loaderLogo))); + let showLogo = !(config.customization && (config.customization.loaderName || config.customization.loaderLogo)); if ( !Object.keys(config).length ) { showLogo = !/&(?:logo)=/.test(window.location.search); } const showPlaceholder = !appOptions.isDocReady && (!config.customization || !(config.customization.loaderName || config.customization.loaderLogo)); + const isBranding = appOptions.canBranding || appOptions.canBrandingExt; + return ( {!this.state.previewVisible ? null : } {/* Top Navbar */} - - {showLogo && appOptions.canBranding !== undefined &&
                { + + {(!isBranding && showLogo) &&
                { window.open(`${__PUBLISHER_URL__}`, "_blank"); }}>
                } - +
                diff --git a/apps/presentationeditor/mobile/src/store/appOptions.js b/apps/presentationeditor/mobile/src/store/appOptions.js index a79235abd..91c0077cb 100644 --- a/apps/presentationeditor/mobile/src/store/appOptions.js +++ b/apps/presentationeditor/mobile/src/store/appOptions.js @@ -1,5 +1,5 @@ import {action, observable, makeObservable} from 'mobx'; -import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; +import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs'; export class storeAppOptions { constructor() { diff --git a/apps/presentationeditor/mobile/src/view/Toolbar.jsx b/apps/presentationeditor/mobile/src/view/Toolbar.jsx index df37c212f..3fadc06ee 100644 --- a/apps/presentationeditor/mobile/src/view/Toolbar.jsx +++ b/apps/presentationeditor/mobile/src/view/Toolbar.jsx @@ -1,10 +1,41 @@ -import React, {Fragment} from 'react'; +import React, {Fragment, useEffect} from 'react'; import {NavLeft, NavRight, NavTitle, Link, Icon} from 'framework7-react'; import { Device } from '../../../../common/mobile/utils/device'; import EditorUIController from '../lib/patch' const ToolbarView = props => { const isDisconnected = props.isDisconnected; + const docTitle = props.docTitle; + const docTitleLength = docTitle.length; + + const correctOverflowedText = el => { + if(el) { + el.innerText = docTitle; + + if(el.scrollWidth > el.clientWidth) { + const arrDocTitle = docTitle.split('.'); + const ext = arrDocTitle[1]; + const name = arrDocTitle[0]; + const diff = Math.floor(docTitleLength * el.clientWidth / el.scrollWidth - ext.length - 6); + const shortName = name.substring(0, diff).trim(); + + return `${shortName}...${ext}`; + } + + return docTitle; + } + }; + + useEffect(() => { + if(!Device.phone) { + const elemTitle = document.querySelector('.subnavbar .title'); + + if (elemTitle) { + elemTitle.innerText = correctOverflowedText(elemTitle); + } + } + }, [docTitle]); + return ( @@ -16,7 +47,7 @@ const ToolbarView = props => { onRedoClick: props.onRedo })} - {!Device.phone && {props.docTitle}} + {!Device.phone && {props.docTitle}} {Device.android && props.isEdit && EditorUIController.getUndoRedo && EditorUIController.getUndoRedo({ disabledUndo: !props.isCanUndo || isDisconnected, diff --git a/apps/presentationeditor/mobile/src/view/edit/EditChart.jsx b/apps/presentationeditor/mobile/src/view/edit/EditChart.jsx index 83d1bb389..a3b620335 100644 --- a/apps/presentationeditor/mobile/src/view/edit/EditChart.jsx +++ b/apps/presentationeditor/mobile/src/view/edit/EditChart.jsx @@ -350,7 +350,7 @@ const PageReorder = props => { return ( - + {Device.phone && @@ -443,7 +443,7 @@ const EditChart = props => { onBorderColor: props.onBorderColor, onBorderSize: props.onBorderSize }}> - { return ( - + {Device.phone && diff --git a/apps/presentationeditor/mobile/src/view/edit/EditShape.jsx b/apps/presentationeditor/mobile/src/view/edit/EditShape.jsx index 211abf3c2..72dccc9d2 100644 --- a/apps/presentationeditor/mobile/src/view/edit/EditShape.jsx +++ b/apps/presentationeditor/mobile/src/view/edit/EditShape.jsx @@ -358,7 +358,7 @@ const PageReorder = props => { return ( - + {Device.phone && diff --git a/apps/presentationeditor/mobile/src/view/edit/EditTable.jsx b/apps/presentationeditor/mobile/src/view/edit/EditTable.jsx index cb73c5d26..f2e6bd451 100644 --- a/apps/presentationeditor/mobile/src/view/edit/EditTable.jsx +++ b/apps/presentationeditor/mobile/src/view/edit/EditTable.jsx @@ -393,7 +393,7 @@ const PageReorder = props => { return ( - + {Device.phone && @@ -524,7 +524,7 @@ const EditTable = props => { onFillColor: props.onFillColor, onBorderTypeClick: props.onBorderTypeClick }}> - { diff --git a/apps/presentationeditor/mobile/src/view/settings/ApplicationSettings.jsx b/apps/presentationeditor/mobile/src/view/settings/ApplicationSettings.jsx index 1133fd74a..d16ad8151 100644 --- a/apps/presentationeditor/mobile/src/view/settings/ApplicationSettings.jsx +++ b/apps/presentationeditor/mobile/src/view/settings/ApplicationSettings.jsx @@ -3,7 +3,7 @@ import { observer, inject } from "mobx-react"; import {f7, Page, Navbar, List, ListItem, BlockTitle, Toggle } from "framework7-react"; import { useTranslation } from "react-i18next"; import { Themes } from '../../../../../common/mobile/lib/controller/Themes.js'; -import { LocalStorage } from "../../../../../common/mobile/utils/LocalStorage.js"; +import { LocalStorage } from "../../../../../common/mobile/utils/LocalStorage.mjs"; const PageApplicationSettings = props => { const { t } = useTranslation(); diff --git a/apps/presentationeditor/mobile/src/view/settings/Settings.jsx b/apps/presentationeditor/mobile/src/view/settings/Settings.jsx index 2f2615383..d302d6ae5 100644 --- a/apps/presentationeditor/mobile/src/view/settings/Settings.jsx +++ b/apps/presentationeditor/mobile/src/view/settings/Settings.jsx @@ -47,13 +47,6 @@ const routes = [ path: '/about/', component: About }, - - // Sharing Settings - - { - path: '/sharing-settings/', - component: SharingSettings - } /*{ path: '/presentation-settings/', component: PresentationSettingsController, @@ -186,9 +179,6 @@ const SettingsList = inject("storeAppOptions", "storeToolbarSettings")(observer( - - - {_canDownload && diff --git a/apps/spreadsheeteditor/embed/index.html b/apps/spreadsheeteditor/embed/index.html index 01aae5619..63222e9ba 100644 --- a/apps/spreadsheeteditor/embed/index.html +++ b/apps/spreadsheeteditor/embed/index.html @@ -252,7 +252,7 @@ - + diff --git a/apps/spreadsheeteditor/embed/index.html.deploy b/apps/spreadsheeteditor/embed/index.html.deploy index 3bf4b42b7..cc75bed5b 100644 --- a/apps/spreadsheeteditor/embed/index.html.deploy +++ b/apps/spreadsheeteditor/embed/index.html.deploy @@ -244,7 +244,7 @@ - + diff --git a/apps/spreadsheeteditor/embed/index_loader.html b/apps/spreadsheeteditor/embed/index_loader.html index 3c4f5a914..5777a43a0 100644 --- a/apps/spreadsheeteditor/embed/index_loader.html +++ b/apps/spreadsheeteditor/embed/index_loader.html @@ -326,7 +326,7 @@ - + diff --git a/apps/spreadsheeteditor/embed/index_loader.html.deploy b/apps/spreadsheeteditor/embed/index_loader.html.deploy index dc420fead..9857c016e 100644 --- a/apps/spreadsheeteditor/embed/index_loader.html.deploy +++ b/apps/spreadsheeteditor/embed/index_loader.html.deploy @@ -318,7 +318,7 @@ - + diff --git a/apps/spreadsheeteditor/embed/js/ApplicationController.js b/apps/spreadsheeteditor/embed/js/ApplicationController.js index a479d3b58..474a9220e 100644 --- a/apps/spreadsheeteditor/embed/js/ApplicationController.js +++ b/apps/spreadsheeteditor/embed/js/ApplicationController.js @@ -526,6 +526,19 @@ SSE.ApplicationController = new(function(){ message = me.errorTokenExpire; break; + case Asc.c_oAscError.ID.ConvertationOpenFormat: + if (errData === 'pdf') + message = me.errorInconsistentExtPdf.replace('%1', docConfig.fileType || ''); + else if (errData === 'docx') + message = me.errorInconsistentExtDocx.replace('%1', docConfig.fileType || ''); + else if (errData === 'xlsx') + message = me.errorInconsistentExtXlsx.replace('%1', docConfig.fileType || ''); + else if (errData === 'pptx') + message = me.errorInconsistentExtPptx.replace('%1', docConfig.fileType || ''); + else + message = me.errorInconsistentExt; + break; + default: message = me.errorDefaultMessage.replace('%1', id); break; @@ -732,6 +745,11 @@ SSE.ApplicationController = new(function(){ errorForceSave: "An error occurred while saving the file. Please use the 'Download as' option to save the file to your computer hard drive or try again later.", errorLoadingFont: 'Fonts are not loaded.
                Please contact your Document Server administrator.', errorTokenExpire: 'The document security token has expired.
                Please contact your Document Server administrator.', - openErrorText: 'An error has occurred while opening the file' + openErrorText: 'An error has occurred while opening the file', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
                The file content does not match the file extension.' } })(); \ No newline at end of file diff --git a/apps/spreadsheeteditor/embed/locale/ca.json b/apps/spreadsheeteditor/embed/locale/ca.json index d9f7eca84..658bed50c 100644 --- a/apps/spreadsheeteditor/embed/locale/ca.json +++ b/apps/spreadsheeteditor/embed/locale/ca.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "El fitxer està protegit amb contrasenya i no es pot obrir.", "SSE.ApplicationController.errorFileSizeExceed": "La mida del fitxer supera el límit establert per al servidor.
                Contacteu amb l'administrador del servidor de documents per a obtenir més informació.", "SSE.ApplicationController.errorForceSave": "S'ha produït un error en desar el fitxer. Utilitzeu l'opció «Anomena i baixa» per a desar el fitxer al disc dur de l’ordinador o torneu-ho a provar més endavant.", + "SSE.ApplicationController.errorInconsistentExt": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer no es correspon amb la seva extensió.", + "SSE.ApplicationController.errorInconsistentExtDocx": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a documents de text (per exemple, docx), però el fitxer té l'extensió incoherent: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a un dels formats següents: pdf/djvu/xps/oxps, però el fitxer té l'extensió incoherent: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a presentacions (per exemple, pptx), però el fitxer té l'extensió incongruent: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "S'ha produït un error en obrir el fitxer.
                El contingut del fitxer correspon a full de càlcul (per exemple, xlsx), però el fitxer té l'extensió incoherent: %1.", "SSE.ApplicationController.errorLoadingFont": "No s'han carregat les lletres tipogràfiques.
                Contacteu amb l'administrador del Servidor de Documents.", "SSE.ApplicationController.errorTokenExpire": "El testimoni de seguretat del document ha caducat.
                Contacteu amb l'administrador del servidor de documents.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "S'ha restaurat la connexió a internet i la versió del fitxer ha canviat.
                Abans de continuar treballant, heu de baixar el fitxer o copiar-ne el contingut per a assegurar-vos que no es perdi res i, després, torneu a carregar la pàgina.", diff --git a/apps/spreadsheeteditor/embed/locale/de.json b/apps/spreadsheeteditor/embed/locale/de.json index 1088ab59e..2ae1305d3 100644 --- a/apps/spreadsheeteditor/embed/locale/de.json +++ b/apps/spreadsheeteditor/embed/locale/de.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "Das Dokument ist kennwortgeschützt und kann nicht geöffnet werden.", "SSE.ApplicationController.errorFileSizeExceed": "Die Dateigröße überschreitet die für Ihren Server festgelegte Größe.
                Weitere Informationen können Sie von Ihrem Document Server-Administrator erhalten.", "SSE.ApplicationController.errorForceSave": "Beim Speichern der Datei ist ein Fehler aufgetreten. Verwenden Sie die Option \"Herunterladen als\", um die Datei auf Ihrer Computerfestplatte zu speichern oder versuchen Sie es später erneut.", + "SSE.ApplicationController.errorInconsistentExt": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei stimmt nicht mit der Dateierweiterung überein.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Textdokumenten (z.B. docx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht einem der folgenden Formate: pdf/djvu/xps/oxps, aber die Datei hat die inkonsistente Erweiterung: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Präsentationen (z.B. pptx), aber die Datei hat die inkonsistente Erweiterung: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Beim Öffnen der Datei ist ein Fehler aufgetreten.
                Der Inhalt der Datei entspricht Tabellenkalkulationen (z.B. xlsx), aber die Datei hat die inkonsistente Erweiterung: %1.", "SSE.ApplicationController.errorLoadingFont": "Schriftarten nicht hochgeladen.
                Bitte wenden Sie sich an Administratoren von Ihrem Document Server.", "SSE.ApplicationController.errorTokenExpire": "Sicherheitstoken des Dokuments ist abgelaufen.
                Wenden Sie sich an Ihren Serveradministrator.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "Die Internetverbindung wurde wiederhergestellt und die Dateiversion wurde geändert.
                Bevor Sie weiterarbeiten können, müssen Sie die Datei herunterladen oder den Inhalt kopieren, um sicherzustellen, dass nichts verloren geht, und diese Seite anschließend neu laden.", diff --git a/apps/spreadsheeteditor/embed/locale/en.json b/apps/spreadsheeteditor/embed/locale/en.json index 1a99fee2a..29a9aed10 100644 --- a/apps/spreadsheeteditor/embed/locale/en.json +++ b/apps/spreadsheeteditor/embed/locale/en.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "The file is password protected and cannot be opened.", "SSE.ApplicationController.errorFileSizeExceed": "The file size exceeds the limitation set for your server.
                Please contact your Document Server administrator for details.", "SSE.ApplicationController.errorForceSave": "An error occurred while saving the file. Please use the 'Download as' option to save the file to your computer hard drive or try again later.", + "SSE.ApplicationController.errorInconsistentExt": "An error has occurred while opening the file.
                The file content does not match the file extension.", + "SSE.ApplicationController.errorInconsistentExtDocx": "An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.", "SSE.ApplicationController.errorLoadingFont": "Fonts are not loaded.
                Please contact your Document Server administrator.", "SSE.ApplicationController.errorTokenExpire": "The document security token has expired.
                Please contact your Document Server administrator.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "Connection has been restored, and the file version has been changed.
                Before you can continue working, you need to download the file or copy its content to make sure nothing is lost, and then reload this page.", diff --git a/apps/spreadsheeteditor/embed/locale/eu.json b/apps/spreadsheeteditor/embed/locale/eu.json index 0b32879b4..f4b57ae40 100644 --- a/apps/spreadsheeteditor/embed/locale/eu.json +++ b/apps/spreadsheeteditor/embed/locale/eu.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "Fitxategia pasahitzez babestua dago eta ezin da ireki.", "SSE.ApplicationController.errorFileSizeExceed": "Fitxategiaren tamainak zure zerbitzarirako ezarritako muga gainditzen du.
                Jarri harremanetan dokumentu-zerbitzariaren administratzailearekin informazio gehiago lortzeko.", "SSE.ApplicationController.errorForceSave": "Errore bat gertatu da dokumentua gordetzean.
                Erabili 'Deskargatu honela' aukera fitxategia zure ordenagailuko disko gogorrean gordetzeko edo saiatu berriro geroago.", + "SSE.ApplicationController.errorInconsistentExt": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia eta luzapena ez datoz bat.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia testu-dokumentu bati dagokio (adibidez, docx), baina fitxategiaren luzapena ez dator bat: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia ondorengo formatuetako bati dagokio: pdf/djvu/xps/oxps, baina fitxategiaren luzapena ez dator bat: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia aurkezpen bati dagokio (adibidez, pptx), baina fitxategiaren luzapena ez dator bat: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Errore bat gertatu da fitxategia irekitzean.
                Fitxategiaren edukia kalkulu-orri bati dagokio (adibidez, xlsx), baina fitxategiaren luzapena ez dator bat: %1.", "SSE.ApplicationController.errorLoadingFont": "Letra-tipoak ez dira kargatu.
                Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "SSE.ApplicationController.errorTokenExpire": "Dokumentuaren segurtasun-tokena iraungi da.
                Jarri zure dokumentu-zerbitzariaren administratzailearekin harremanetan.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "Konexioa berrezarri da eta fitxategiaren bertsioa aldatu da.
                Lanean jarraitu aurretik, beharrezkoa da fitxategia deskargatzea edo edukia kopiatzea, ezer ez dela galduko ziurtatzeko, eta gero orri hau berriro kargatzea.", diff --git a/apps/spreadsheeteditor/embed/locale/fr.json b/apps/spreadsheeteditor/embed/locale/fr.json index 5d535da79..2e9ad3090 100644 --- a/apps/spreadsheeteditor/embed/locale/fr.json +++ b/apps/spreadsheeteditor/embed/locale/fr.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "Le fichier est protégé par un mot de passe et ne peut pas être ouvert.", "SSE.ApplicationController.errorFileSizeExceed": "La taille du fichier dépasse les limites paramétrées sur votre serveur.
                Veuillez contacter votre administrateur de Document Server pour obtenir plus d'informations. ", "SSE.ApplicationController.errorForceSave": "Une erreur est survenue lors de l'enregistrement du fichier. Veuillez utiliser l'option «Télécharger en tant que» pour enregistrer le fichier sur le disque dur de votre ordinateur ou réessayer plus tard.", + "SSE.ApplicationController.errorInconsistentExt": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier ne correspond pas à l'extension du fichier.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des documents texte (par exemple docx), mais le fichier a une extension incohérente : %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à l'un des formats suivants : pdf/djvu/xps/oxps, mais le fichier a l'extension incohérente : %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des présentations (par exemple pptx), mais le fichier a une extension incohérente : %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Une erreur s'est produite lors de l'ouverture du fichier.
                Le contenu du fichier correspond à des feuilles de calcul (par exemple xlsx), mais le fichier a une extension incohérente : %1.", "SSE.ApplicationController.errorLoadingFont": "Les polices ne sont pas téléchargées.
                Veuillez contacter l'administrateur de Document Server.", "SSE.ApplicationController.errorTokenExpire": "Le jeton de sécurité du document a expiré.
                Veuillez contactez l'administrateur de Document Server.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "La connexion a été rétablie et la version du fichier a été modifiée.
                Avant de pouvoir continuer à travailler, vous devez télécharger le fichier ou copier son contenu pour vous assurer que rien n'est perdu, puis recharger cette page.", diff --git a/apps/spreadsheeteditor/embed/locale/hu.json b/apps/spreadsheeteditor/embed/locale/hu.json index 03c9f32ed..dad638371 100644 --- a/apps/spreadsheeteditor/embed/locale/hu.json +++ b/apps/spreadsheeteditor/embed/locale/hu.json @@ -22,7 +22,7 @@ "SSE.ApplicationController.notcriticalErrorTitle": "Figyelmeztetés", "SSE.ApplicationController.openErrorText": "Hiba történt a fájl megnyitása során.", "SSE.ApplicationController.scriptLoadError": "A kapcsolat túl lassú, néhány komponens nem töltődött be. Frissítse az oldalt.", - "SSE.ApplicationController.textAnonymous": "Anonim", + "SSE.ApplicationController.textAnonymous": "Névtelen", "SSE.ApplicationController.textGuest": "Vendég", "SSE.ApplicationController.textLoadingDocument": "Munkafüzet betöltése", "SSE.ApplicationController.textOf": "-nak/-nek a ", diff --git a/apps/spreadsheeteditor/embed/locale/hy.json b/apps/spreadsheeteditor/embed/locale/hy.json index a951b5ebf..f3544ae7c 100644 --- a/apps/spreadsheeteditor/embed/locale/hy.json +++ b/apps/spreadsheeteditor/embed/locale/hy.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "Ֆայլն ունի գաղտնաբառ և չի կարող բացվել։", "SSE.ApplicationController.errorFileSizeExceed": "Ֆայլի չափը գերազանցում է ձեր սերվերի համար սահմանված սահմանափակումը:
                Մանրամասների համար խնդրում ենք կապվել Ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "SSE.ApplicationController.errorForceSave": "Սխալ է տեղի ունեցել ֆայլը պահելիս:Խնդրում ենք օգտագործել «Ներբեռնել որպես» տարբերակը՝ ֆայլը ձեր համակարգչի կոշտ սկավառակում պահելու համար կամ ավելի ուշ նորից փորձեք:", + "SSE.ApplicationController.errorInconsistentExt": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը չի համապատասխանում ֆայլի ընդլայնմանը:", + "SSE.ApplicationController.errorInconsistentExtDocx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է տեքստային փաստաթղթերին (օրինակ՝ docx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում՝ %1:", + "SSE.ApplicationController.errorInconsistentExtPdf": "Ֆայլը բացելիս սխալ է տեղի ունեցել:Ֆայլի բովանդակությունը համապատասխանում է հետևյալ ձևաչափերից մեկին՝pdf/djvu/xps/oxps,բայց ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "SSE.ApplicationController.errorInconsistentExtPptx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է ներկայացումներին (օրինակ՝ pptx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Ֆայլը բացելիս սխալ է տեղի ունեցել:
                Ֆայլի բովանդակությունը համապատասխանում է աղյուսակներին (օր. xlsx), սակայն ֆայլն ունի անհամապատասխան ընդլայնում. %1:", "SSE.ApplicationController.errorLoadingFont": "Տառատեսակները բեռնված չեն:
                Խնդրում ենք կապվել ձեր փաստաթղթերի սերվերի ադմինիստրատորի հետ:", "SSE.ApplicationController.errorTokenExpire": "Փաստաթղթի անվտանգության կտրոնի ժամկետն անցել է։
                Դիմեք փաստաթղթերի սպասարկիչի ձեր վարիչին։", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "Կապը վերահաստատվել է,և ֆայլի տարբերակը փոխվել է։
                Նախքան աշխատանքը շարունակելը ներբեռնեք ֆայլը կամ պատճենեք դրա պարունակությունը՝ վստահ լինելու, որ ոչինչ չի կորել, և ապա նորից բեռնեք այս էջը։", diff --git a/apps/spreadsheeteditor/embed/locale/id.json b/apps/spreadsheeteditor/embed/locale/id.json index e3a20482e..626e17f2e 100644 --- a/apps/spreadsheeteditor/embed/locale/id.json +++ b/apps/spreadsheeteditor/embed/locale/id.json @@ -15,12 +15,17 @@ "SSE.ApplicationController.errorFilePassProtect": "Dokumen dilindungi dengan kata sandi dan tidak dapat dibuka.", "SSE.ApplicationController.errorFileSizeExceed": "Dokumen melebihi ukuran ", "SSE.ApplicationController.errorForceSave": "Ada kesalahan saat menyimpan file. Silakan gunakan opsi 'Download sebagai' untuk menyimpan file ke komputer Anda dan coba lagi.", + "SSE.ApplicationController.errorInconsistentExt": "Terjadi kesalahan saat membuka file.
                Isi file tidak cocok dengan ekstensi file.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan dokumen teks (mis. docx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "Sebuah kesalahan terjadi ketika membuka file.
                Isi file berhubungan dengan satu dari format berikut: pdf/djvu/xps/oxps, tapi file memiliki ekstensi yang tidak konsisten: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan presentasi (mis. pptx), tapi file memiliki ekstensi yang tidak konsisten: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Terjadi kesalahan saat membuka file.
                Isi file berhubungan dengan spreadsheet (mis. xlsx), tapi file memiliki ekstensi yang tidak konsisten: %1.", "SSE.ApplicationController.errorLoadingFont": "Font tidak bisa dimuat.
                Silakan kontak admin Server Dokumen Anda.", "SSE.ApplicationController.errorTokenExpire": "Token keamanan dokumen sudah kadaluwarsa.
                Silakan hubungi admin Server Dokumen Anda.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "Koneksi internet sudah kembali dan versi file sudah diganti.
                Sebelum Anda bisa melanjutkan kerja, Anda perlu mengunduh file atau salin konten untuk memastikan tidak ada yang hilang, lalu muat ulang halaman ini.", "SSE.ApplicationController.errorUserDrop": "File tidak dapat di akses", "SSE.ApplicationController.notcriticalErrorTitle": "Peringatan", - "SSE.ApplicationController.openErrorText": "Eror ketika membuka file.", + "SSE.ApplicationController.openErrorText": "Kesalahan terjadi ketika membuka file.", "SSE.ApplicationController.scriptLoadError": "Hubungan terlalu lambat", "SSE.ApplicationController.textAnonymous": "Anonim", "SSE.ApplicationController.textGuest": "Tamu", diff --git a/apps/spreadsheeteditor/embed/locale/ja.json b/apps/spreadsheeteditor/embed/locale/ja.json index 90d39fc71..d7616e4ac 100644 --- a/apps/spreadsheeteditor/embed/locale/ja.json +++ b/apps/spreadsheeteditor/embed/locale/ja.json @@ -15,8 +15,13 @@ "SSE.ApplicationController.errorFilePassProtect": "ドキュメントがパスワードで保護されているため開くことができません", "SSE.ApplicationController.errorFileSizeExceed": "ファイルサイズがサーバーで設定された制限を超過しています。
                Documentサーバー管理者に詳細をお問い合わせください。", "SSE.ApplicationController.errorForceSave": "ファイルを保存中にエラーがありました。ファイルをPCに保存するように「としてダウンロード」と言うオプションを使い、または後でもう一度してみてください。", + "SSE.ApplicationController.errorInconsistentExt": "ファイルを開くときにエラーが発生しました。
                ファイルの内容がファイルの拡張子と一致しません。", + "SSE.ApplicationController.errorInconsistentExtDocx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はドキュメント (docx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "SSE.ApplicationController.errorInconsistentExtPdf": "ファイルを開くときにエラーが発生しました。
                ファイルの内容は次のいずれかの形式に対応しています: pdf/djvu/xps/oxps が、ファイルの拡張子が一致していません: %1", + "SSE.ApplicationController.errorInconsistentExtPptx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はプレゼンテーション (pptx など) に対応していますが、ファイルの拡張子が一致していません: %1", + "SSE.ApplicationController.errorInconsistentExtXlsx": "ファイルを開くときにエラーが発生しました。
                ファイルの内容はスプレッドシート (xlsx など) に対応していますが、ファイルの拡張子が一致していません: %1", "SSE.ApplicationController.errorLoadingFont": "フォントがダウンロードされませんでした。
                文書サーバのアドミニストレータを連絡してください。", - "SSE.ApplicationController.errorTokenExpire": "ドキュメント・セキュリティ・トークンの有効期限が切れています。
                ドキュメントサーバーの管理者に連絡してください。", + "SSE.ApplicationController.errorTokenExpire": "ドキュメントセキュリティトークンの有効期限が切れています。
                ドキュメントサーバーの管理者に連絡してください。", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "インターネット接続が復旧し、ファイルのバージョンが更新されています。
                作業を継続する前に、ファイルをダウンロードするか内容をコピーして変更が失われていないことを確認してから、このページを再読み込みしてください。", "SSE.ApplicationController.errorUserDrop": "今、ファイルにアクセスすることはできません。", "SSE.ApplicationController.notcriticalErrorTitle": "警告", diff --git a/apps/spreadsheeteditor/embed/locale/pt-pt.json b/apps/spreadsheeteditor/embed/locale/pt-pt.json index 2163a5c0f..7cadc5bb2 100644 --- a/apps/spreadsheeteditor/embed/locale/pt-pt.json +++ b/apps/spreadsheeteditor/embed/locale/pt-pt.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "O documento está protegido por palavra-passe e não pode ser aberto.", "SSE.ApplicationController.errorFileSizeExceed": "O tamanho do documento excede o limite permitido pelo servidor.
                Contacte o administrador do servidor de documentos para mais informações.", "SSE.ApplicationController.errorForceSave": "Ocorreu um erro ao guardar o ficheiro. Utilize a opção 'Descarregar como' para guardar o ficheiro no computador ou tente mais tarde.", + "SSE.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro não coincide com a sua extensão.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a um documento de texto (doc, docx...), mas a extensão de ficheiro não é consistente: %1", + "SSE.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas a extensão de ficheiro não é consistente: %1", + "SSE.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a uma apresentação (ppt, pptx...), mas a extensão de ficheiro não é consistente: %1", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o ficheiro.
                O conteúdo do ficheiro corresponde a uma folha de cálculo (xls, xlsx...), mas a extensão de ficheiro não é consistente: %1", "SSE.ApplicationController.errorLoadingFont": "Tipos de letra não carregados.
                Por favor contacte o administrador do servidor de documentos.", "SSE.ApplicationController.errorTokenExpire": "O 'token' de segurança do documento expirou.
                Entre em contacto com o administrador do servidor de documentos.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "A ligação foi restaurada e a versão do ficheiro foi alterada.
                Antes de poder continuar a trabalhar, é necessário descarregar o ficheiro ou copiar o seu conteúdo para garantir que nada se perde e depois voltar a carregar esta página.", diff --git a/apps/spreadsheeteditor/embed/locale/pt.json b/apps/spreadsheeteditor/embed/locale/pt.json index 4292965d0..f9d21b111 100644 --- a/apps/spreadsheeteditor/embed/locale/pt.json +++ b/apps/spreadsheeteditor/embed/locale/pt.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "O documento está protegido por senha e não pode ser aberto.", "SSE.ApplicationController.errorFileSizeExceed": "O tamanho do arquivo excede o limite de seu servidor.
                Por favor, contate seu administrador de Servidor de Documentos para detalhes.", "SSE.ApplicationController.errorForceSave": "Ocorreu um erro na gravação. Favor utilizar a opção 'Baixar como' para gravar o arquivo em seu computador ou tente novamente mais tarde.", + "SSE.ApplicationController.errorInconsistentExt": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo não corresponde à extensão do arquivo.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a documentos de texto (por exemplo, docx), mas o arquivo tem a extensão inconsistente: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a um dos seguintes formatos: pdf/djvu/xps/oxps, mas o arquivo tem a extensão inconsistente: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a apresentações (por exemplo, pptx), mas o arquivo tem a extensão inconsistente: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Ocorreu um erro ao abrir o arquivo.
                O conteúdo do arquivo corresponde a planilhas (por exemplo, xlsx), mas o arquivo tem a extensão inconsistente: %1.", "SSE.ApplicationController.errorLoadingFont": "As fontes não foram carregadas.
                Entre em contato com o administrador do Document Server.", "SSE.ApplicationController.errorTokenExpire": "O token de segurança do documento expirou.
                Entre em contato com o administrador do Document Server.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "A conexão à internet foi restabelecida, e a versão do arquivo foi alterada.
                Antes de continuar seu trabalho, transfira o arquivo ou copie seu conteúdo para assegurar que nada seja perdido, e recarregue esta página.", diff --git a/apps/spreadsheeteditor/embed/locale/ru.json b/apps/spreadsheeteditor/embed/locale/ru.json index a9b157c5b..dc0d8d88a 100644 --- a/apps/spreadsheeteditor/embed/locale/ru.json +++ b/apps/spreadsheeteditor/embed/locale/ru.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "Файл защищен паролем и не может быть открыт.", "SSE.ApplicationController.errorFileSizeExceed": "Размер файла превышает ограничение, установленное для вашего сервера.
                Обратитесь к администратору Сервера документов для получения дополнительной информации.", "SSE.ApplicationController.errorForceSave": "При сохранении файла произошла ошибка. Используйте опцию 'Скачать как', чтобы сохранить файл на жестком диске компьютера или повторите попытку позже.", + "SSE.ApplicationController.errorInconsistentExt": "При открытии файла произошла ошибка.
                Содержимое файла не соответствует расширению файла.", + "SSE.ApplicationController.errorInconsistentExtDocx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует документам (например, docx), но файл имеет несоответствующее расширение: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "При открытии файла произошла ошибка.
                Содержимое файла соответствует одному из следующих форматов: pdf/djvu/xps/oxps, но файл имеет несоответствующее расширение: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует презентациям (например, pptx), но файл имеет несоответствующее расширение: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "При открытии файла произошла ошибка.
                Содержимое файла соответствует электронным таблицам (например, xlsx), но файл имеет несоответствующее расширение: %1.", "SSE.ApplicationController.errorLoadingFont": "Шрифты не загружены.
                Пожалуйста, обратитесь к администратору Сервера документов.", "SSE.ApplicationController.errorTokenExpire": "Истек срок действия токена безопасности документа.
                Пожалуйста, обратитесь к администратору Сервера документов.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "Соединение было восстановлено, и версия файла изменилась.
                Прежде чем продолжить работу, надо скачать файл или скопировать его содержимое, чтобы обеспечить сохранность данных, а затем перезагрузить страницу.", diff --git a/apps/spreadsheeteditor/embed/locale/tr.json b/apps/spreadsheeteditor/embed/locale/tr.json index 41f132c99..e7b485f02 100644 --- a/apps/spreadsheeteditor/embed/locale/tr.json +++ b/apps/spreadsheeteditor/embed/locale/tr.json @@ -15,6 +15,11 @@ "SSE.ApplicationController.errorFilePassProtect": "Döküman şifre korumalı ve açılamadı", "SSE.ApplicationController.errorFileSizeExceed": "Dosya boyutu, sunucunuz için belirlenen limiti aşıyor.
                Ayrıntılar için lütfen Doküman Sunucusu yöneticinizle iletişime geçin.", "SSE.ApplicationController.errorForceSave": "Dosya kaydedilirken bir hata oluştu. Dosyayı bilgisayarınıza kaydetmek için lütfen 'Farklı Kaydet' seçeneğini kullanın veya daha sonra tekrar deneyin.", + "SSE.ApplicationController.errorInconsistentExt": "Dosya açılırken bir hata oluştu.
                Dosya içeriği, dosya uzantısıyla eşleşmiyor.", + "SSE.ApplicationController.errorInconsistentExtDocx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği metin belgelerine (örn. docx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", + "SSE.ApplicationController.errorInconsistentExtPdf": "Dosya açılırken bir hata oluştu.
                Dosya içeriği şu biçimlerden birine karşılık geliyor: pdf/djvu/xps/oxps, ancak dosyanın uzantısı tutarsız: %1.", + "SSE.ApplicationController.errorInconsistentExtPptx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği sunumlara karşılık geliyor (ör. pptx), ancak dosyanın uzantısı tutarsız: %1.", + "SSE.ApplicationController.errorInconsistentExtXlsx": "Dosya açılırken bir hata oluştu.
                Dosya içeriği e-tablolara (örn. xlsx) karşılık geliyor, ancak dosyanın uzantısı tutarsız: %1.", "SSE.ApplicationController.errorLoadingFont": "Yazı tipleri yüklenmedi.
                Lütfen Doküman Sunucusu yöneticinize başvurun.", "SSE.ApplicationController.errorTokenExpire": "Belge güvenlik belirtecinin süresi doldu.
                Lütfen Belge Sunucusu yöneticinize başvurun.", "SSE.ApplicationController.errorUpdateVersionOnDisconnect": "İnternet bağlantısı tekrar sağlandı, ve dosya versiyon değişti.
                Çalışmanıza devam etmeden önce, veri kaybını önlemeniz için dosyasının bir kopyasını indirmeniz ya da dosya içeriğini kopyalamanız ve sonrasında sayfayı yenilemeniz gerekmektedir.", diff --git a/apps/spreadsheeteditor/main/app.js b/apps/spreadsheeteditor/main/app.js index 74c701ad7..9ebd906c7 100644 --- a/apps/spreadsheeteditor/main/app.js +++ b/apps/spreadsheeteditor/main/app.js @@ -53,7 +53,7 @@ require.config({ perfectscrollbar: 'common/main/lib/mods/perfect-scrollbar', jmousewheel : '../vendor/perfect-scrollbar/src/jquery.mousewheel', xregexp : '../vendor/xregexp/xregexp-all-min', - sockjs : '../vendor/sockjs/sockjs.min', + socketio : '../vendor/socketio/socket.io.min', allfonts : '../../sdkjs/common/AllFonts', sdk : '../../sdkjs/cell/sdk-all-min', api : 'api/documents/api', @@ -106,7 +106,7 @@ require.config({ 'underscore', 'allfonts', 'xregexp', - 'sockjs' + 'socketio' ] }, gateway: { @@ -127,7 +127,6 @@ require([ 'bootstrap', 'core', 'sdk', - 'api', 'analytics', 'gateway', 'locale' diff --git a/apps/spreadsheeteditor/main/app/controller/CellEditor.js b/apps/spreadsheeteditor/main/app/controller/CellEditor.js index b79e41345..27389b535 100644 --- a/apps/spreadsheeteditor/main/app/controller/CellEditor.js +++ b/apps/spreadsheeteditor/main/app/controller/CellEditor.js @@ -153,7 +153,7 @@ define([ }, onApiSelectionChanged: function(info) { - if (this.viewmode) return; // signed file + if (this.viewmode || !info) return; // signed file var seltype = info.asc_getSelectionType(), coauth_disable = (!this.mode.isEditMailMerge && !this.mode.isEditDiagram && !this.mode.isEditOle) ? (info.asc_getLocked() === true || info.asc_getLockedTable() === true || info.asc_getLockedPivotTable()===true) : false; diff --git a/apps/spreadsheeteditor/main/app/controller/DataTab.js b/apps/spreadsheeteditor/main/app/controller/DataTab.js index d1b023d43..0e36b5a07 100644 --- a/apps/spreadsheeteditor/main/app/controller/DataTab.js +++ b/apps/spreadsheeteditor/main/app/controller/DataTab.js @@ -63,6 +63,13 @@ define([ this._state = { CSVOptions: new Asc.asc_CTextOptions(0, 4, '') }; + this.externalData = { + stackRequests: [], + stackResponse: [], + callback: undefined, + isUpdating: false, + linkStatus: {} + }; }, onLaunch: function () { }, @@ -106,6 +113,13 @@ define([ }); Common.NotificationCenter.on('data:remduplicates', _.bind(this.onRemoveDuplicates, this)); Common.NotificationCenter.on('data:sortcustom', _.bind(this.onCustomSort, this)); + if (this.toolbar.mode.canRequestReferenceData && this.api) { + // this.api.asc_registerCallback('asc_onNeedUpdateExternalReferenceOnOpen', _.bind(this.onNeedUpdateExternalReferenceOnOpen, this)); + this.api.asc_registerCallback('asc_onStartUpdateExternalReference', _.bind(this.onStartUpdateExternalReference, this)); + this.api.asc_registerCallback('asc_onUpdateExternalReference', _.bind(this.onUpdateExternalReference, this)); + this.api.asc_registerCallback('asc_onErrorUpdateExternalReference', _.bind(this.onErrorUpdateExternalReference, this)); + Common.Gateway.on('setreferencedata', _.bind(this.setReferenceData, this)); + } }, SetDisabled: function(state) { @@ -432,12 +446,91 @@ define([ }, onExternalLinks: function() { - (new SSE.Views.ExternalLinksDlg({ + var me = this; + this.externalLinksDlg = (new SSE.Views.ExternalLinksDlg({ api: this.api, + isUpdating: this.externalData.isUpdating, handler: function(result) { Common.NotificationCenter.trigger('edit:complete'); } - })).show(); + })); + this.externalLinksDlg.on('close', function(win){ + me.externalLinksDlg = null; + }) + this.externalLinksDlg.show() + }, + + onUpdateExternalReference: function(arr, callback) { + if (this.toolbar.mode.isEdit && this.toolbar.editMode) { + var me = this; + me.externalData = { + stackRequests: [], + stackResponse: [], + callback: undefined, + isUpdating: false, + linkStatus: {} + }; + arr && arr.length>0 && arr.forEach(function(item) { + var data; + switch (item.asc_getType()) { + case Asc.c_oAscExternalReferenceType.link: + data = {link: item.asc_getData()}; + break; + case Asc.c_oAscExternalReferenceType.path: + data = {path: item.asc_getData()}; + break; + case Asc.c_oAscExternalReferenceType.referenceData: + data = {referenceData: item.asc_getData()}; + break; + } + data && me.externalData.stackRequests.push({data: data, id: item.asc_getId(), isExternal: item.asc_isExternalLink()}); + }); + me.externalData.callback = callback; + me.requestReferenceData(); + } + }, + + requestReferenceData: function() { + if (this.externalData.stackRequests.length>0) { + var item = this.externalData.stackRequests.shift(); + this.externalData.linkStatus.id = item.id; + this.externalData.linkStatus.isExternal = item.isExternal; + Common.Gateway.requestReferenceData(item.data); + } + }, + + setReferenceData: function(data) { + if (this.toolbar.mode.isEdit && this.toolbar.editMode) { + if (data) { + this.externalData.stackResponse.push(data); + this.externalData.linkStatus.result = this.externalData.linkStatus.isExternal ? '' : data.error || ''; + if (this.externalLinksDlg) { + this.externalLinksDlg.setLinkStatus(this.externalData.linkStatus.id, this.externalData.linkStatus.result); + } + } + if (this.externalData.stackRequests.length>0) + this.requestReferenceData(); + else if (this.externalData.callback) + this.externalData.callback(this.externalData.stackResponse); + } + }, + + onStartUpdateExternalReference: function(status) { + this.externalData.isUpdating = status; + if (this.externalLinksDlg) { + this.externalLinksDlg.setIsUpdating(status); + } + }, + + onNeedUpdateExternalReferenceOnOpen: function() { + var links = this.api.asc_getExternalReferences(); + links && (links.length>0) && this.api.asc_updateExternalReferences(links); + }, + + onErrorUpdateExternalReference: function(id) { + if (this.externalLinksDlg) { + this.externalLinksDlg.setLinkStatus(id, this.txtErrorExternalLink); + } }, onWorksheetLocked: function(index,locked) { @@ -481,7 +574,8 @@ define([ txtRemoveDataValidation: 'The selection contains more than one type of validation.
                Erase current settings and continue?', textEmptyUrl: 'You need to specify URL.', txtImportWizard: 'Text Import Wizard', - txtUrlTitle: 'Paste a data URL' + txtUrlTitle: 'Paste a data URL', + txtErrorExternalLink: 'Error: updating is failed' }, SSE.Controllers.DataTab || {})); }); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js index e26c5b81e..38d3c5578 100644 --- a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js +++ b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js @@ -119,11 +119,7 @@ define([ me._state = {wsLock: false, wsProps: []}; me.fastcoauthtips = []; me._TtHeight = 20; - me.externalData = { - stackRequests: [], - stackResponse: [], - callback: undefined - }; + /** coauthoring begin **/ this.wrapEvents = { apiHideComment: _.bind(this.onApiHideComment, this), @@ -216,6 +212,7 @@ define([ view.pmiFilterCells.menu.on('item:click', _.bind(me.onFilterCells, me)); view.pmiReapply.on('click', _.bind(me.onReapply, me)); view.pmiCondFormat.on('click', _.bind(me.onCondFormat, me)); + view.mnuRefreshPivot.on('click', _.bind(me.onRefreshPivot, me)); view.mnuGroupPivot.on('click', _.bind(me.onGroupPivot, me)); view.mnuUnGroupPivot.on('click', _.bind(me.onGroupPivot, me)); view.pmiClear.menu.on('item:click', _.bind(me.onClear, me)); @@ -267,6 +264,9 @@ define([ view.menuImgMacro.on('click', _.bind(me.onImgMacro, me)); view.menuImgEditPoints.on('click', _.bind(me.onImgEditPoints, me)); view.pmiGetRangeList.on('click', _.bind(me.onGetLink, me)); + view.menuParagraphEquation.menu.on('item:click', _.bind(me.convertEquation, me)); + view.menuSaveAsPicture.on('click', _.bind(me.saveAsPicture, me)); + if (!me.permissions.isEditMailMerge && !me.permissions.isEditDiagram && !me.permissions.isEditOle) { var oleEditor = me.getApplication().getController('Common.Controllers.ExternalOleEditor').getView('Common.Views.ExternalOleEditor'); @@ -378,10 +378,8 @@ define([ this.api.asc_registerCallback('asc_onShowPivotGroupDialog', _.bind(this.onShowPivotGroupDialog, this)); if (!this.permissions.isEditMailMerge && !this.permissions.isEditDiagram && !this.permissions.isEditOle) this.api.asc_registerCallback('asc_doubleClickOnTableOleObject', _.bind(this.onDoubleClickOnTableOleObject, this)); - if (this.permissions.canRequestReferenceData) { - this.api.asc_registerCallback('asc_onUpdateExternalReference', _.bind(this.onUpdateExternalReference, this)); - Common.Gateway.on('setreferencedata', _.bind(this.setReferenceData, this)); - } + this.api.asc_registerCallback('asc_onShowMathTrack', _.bind(this.onShowMathTrack, this)); + this.api.asc_registerCallback('asc_onHideMathTrack', _.bind(this.onHideMathTrack, this)); } this.api.asc_registerCallback('asc_onShowForeignCursorLabel', _.bind(this.onShowForeignCursorLabel, this)); this.api.asc_registerCallback('asc_onHideForeignCursorLabel', _.bind(this.onHideForeignCursorLabel, this)); @@ -576,6 +574,12 @@ define([ })).show(); }, + onRefreshPivot: function(){ + if (this.api) { + this.propsPivot.asc_refresh(this.api); + } + }, + onGroupPivot: function(item) { item.value=='grouping' ? this.api.asc_groupPivot() : this.api.asc_ungroupPivot(); }, @@ -692,7 +696,7 @@ define([ win.setSettings({ sheets : items, ranges : me.api.asc_getDefinedNames(Asc.c_oAscGetDefinedNamesList.All, true), - currentSheet: me.api.asc_getWorksheetName(me.api.asc_getActiveWorksheetIndex()), + currentSheet: me.api.asc_getActiveWorksheetIndex(), props : props, text : cell.asc_getText(), isLock : cell.asc_getLockText(), @@ -1848,6 +1852,7 @@ define([ me.documentHolder.cmpEl.offset().top - $(window).scrollTop() ]; me.tooltips.coauth.apiHeight = me.documentHolder.cmpEl.height(); + me.tooltips.coauth.apiWidth = me.documentHolder.cmpEl.width(); var rightMenu = $('#right-menu'); me.tooltips.coauth.rightMenuWidth = rightMenu.is(':visible') ? rightMenu.width() : 0; me.tooltips.coauth.bodyWidth = $(window).width(); @@ -1977,9 +1982,32 @@ define([ this.currentMenu && this.currentMenu.isVisible()){ (this.permissions.isEdit && !this._isDisabled) ? this.fillMenuProps(info, true) : this.fillViewMenuProps(info, true); } + + if (!this.mouse.isLeftButtonDown) return; + + if (this.permissions && this.permissions.isEdit) { + var selectedObjects = this.api.asc_getGraphicObjectProps(), + i = -1, + in_equation = false, + locked = false; + while (++i < selectedObjects.length) { + var type = selectedObjects[i].asc_getObjectType(); + if (type === Asc.c_oAscTypeSelectElement.Math) { + in_equation = true; + } else if (type === Asc.c_oAscTypeSelectElement.Paragraph) { + var value = selectedObjects[i].asc_getObjectValue(); + value && (locked = locked || value.asc_getLocked()); + } + } + if (in_equation) { + this._state.equationLocked = locked; + this.disableEquationBar(); + } + } }, fillMenuProps: function(cellinfo, showMenu, event){ + if (!cellinfo) return; var iscellmenu, isrowmenu, iscolmenu, isallmenu, ischartmenu, isimagemenu, istextshapemenu, isshapemenu, istextchartmenu, isimageonly, isslicermenu, documentHolder = this.documentHolder, seltype = cellinfo.asc_getSelectionType(), @@ -2114,7 +2142,6 @@ define([ var canEditPoints = this.api && this.api.asc_canEditGeometry(); documentHolder.menuImgEditPoints.setVisible(canEditPoints); - documentHolder.menuImgEditPointsSeparator.setVisible(canEditPoints); canEditPoints && documentHolder.menuImgEditPoints.setDisabled(isObjLocked); if (showMenu) this.showPopupMenu(documentHolder.imgMenu, {}, event); @@ -2259,6 +2286,14 @@ define([ } else this.clearEquationMenu(4); + documentHolder.menuParagraphEquation.setVisible(isEquation); + documentHolder.menuParagraphEquation.setDisabled(isObjLocked); + if (isEquation) { + var eq = this.api.asc_GetMathInputType(); + documentHolder.menuParagraphEquation.menu.items[0].setChecked(eq===Asc.c_oAscMathInputType.Unicode); + documentHolder.menuParagraphEquation.menu.items[1].setChecked(eq===Asc.c_oAscMathInputType.LaTeX); + } + if (showMenu) this.showPopupMenu(documentHolder.textInShapeMenu, {}, event); documentHolder.menuParagraphBullets.setDisabled(isSmartArt || isSmartArtInternal); @@ -2267,13 +2302,13 @@ define([ seltype !== Asc.c_oAscSelectionType.RangeChart && seltype !== Asc.c_oAscSelectionType.RangeChartText && seltype !== Asc.c_oAscSelectionType.RangeShapeText && seltype !== Asc.c_oAscSelectionType.RangeSlicer)) { if (!documentHolder.ssMenu || !showMenu && !documentHolder.ssMenu.isVisible()) return; - + this.propsPivot = cellinfo.asc_getPivotTableInfo(); var iscelledit = this.api.isCellEdited, formatTableInfo = cellinfo.asc_getFormatTableInfo(), isinsparkline = (cellinfo.asc_getSparklineInfo()!==null), isintable = (formatTableInfo !== null), ismultiselect = cellinfo.asc_getMultiselect(), - inPivot = !!cellinfo.asc_getPivotTableInfo(); + inPivot = !!this.propsPivot; documentHolder.ssMenu.formatTableName = (isintable) ? formatTableInfo.asc_getTableName() : null; documentHolder.ssMenu.cellColor = xfs.asc_getFillColor(); documentHolder.ssMenu.fontColor = xfs.asc_getFontColor(); @@ -2294,6 +2329,7 @@ define([ documentHolder.pmiFilterCells.setVisible(iscellmenu && !iscelledit && !diagramOrMergeEditor && !inPivot); documentHolder.pmiReapply.setVisible((iscellmenu||isallmenu) && !iscelledit && !diagramOrMergeEditor && !inPivot); documentHolder.pmiCondFormat.setVisible(!iscelledit && !diagramOrMergeEditor); + documentHolder.mnuRefreshPivot.setVisible(iscellmenu && !iscelledit && !diagramOrMergeEditor && inPivot); documentHolder.mnuGroupPivot.setVisible(iscellmenu && !iscelledit && !diagramOrMergeEditor && inPivot); documentHolder.mnuUnGroupPivot.setVisible(iscellmenu && !iscelledit && !diagramOrMergeEditor && inPivot); documentHolder.ssMenu.items[12].setVisible((iscellmenu||isallmenu||isinsparkline) && !iscelledit); @@ -2325,7 +2361,7 @@ define([ /** coauthoring begin **/ var celcomments = cellinfo.asc_getComments(); // celcomments===null - has comment, but no permissions to view it - documentHolder.ssMenu.items[19].setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments && celcomments && (celcomments.length < 1)); + documentHolder.ssMenu.items[20].setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments && celcomments && (celcomments.length < 1)); documentHolder.pmiAddComment.setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments && celcomments && (celcomments.length < 1)); /** coauthoring end **/ documentHolder.pmiCellMenuSeparator.setVisible(iscellmenu && !iscelledit || isrowmenu || iscolmenu || isallmenu); @@ -2394,6 +2430,7 @@ define([ var canGroup = this.api.asc_canGroupPivot(); documentHolder.mnuGroupPivot.setDisabled(isPivotLocked || !canGroup || this._state.wsLock); documentHolder.mnuUnGroupPivot.setDisabled(isPivotLocked || !canGroup || this._state.wsLock); + documentHolder.mnuRefreshPivot.setDisabled(isPivotLocked || this._state.wsLock); } if (showMenu) this.showPopupMenu(documentHolder.ssMenu, {}, event); @@ -2412,6 +2449,7 @@ define([ documentHolder.menuParagraphVAlign.setVisible(false); // убрать после того, как заголовок можно будет растягивать по вертикали!! documentHolder.menuParagraphDirection.setVisible(false); // убрать после того, как заголовок можно будет растягивать по вертикали!! documentHolder.pmiTextAdvanced.setVisible(false); + documentHolder.menuParagraphEquation.setVisible(false); documentHolder.textInShapeMenu.items[9].setVisible(false); documentHolder.menuParagraphBullets.setVisible(false); documentHolder.textInShapeMenu.items[3].setVisible(false); @@ -2421,6 +2459,7 @@ define([ }, fillViewMenuProps: function(cellinfo, showMenu, event){ + if (!cellinfo) return; var documentHolder = this.documentHolder, seltype = cellinfo.asc_getSelectionType(), isCellLocked = cellinfo.asc_getLocked(), @@ -3326,7 +3365,7 @@ define([ }, onChangeCropState: function(state) { - this.documentHolder.menuImgCrop.menu.items[0].setChecked(state, true); + this.documentHolder.menuImgCrop && this.documentHolder.menuImgCrop.menu.items[0].setChecked(state, true); }, initEquationMenu: function() { @@ -4222,48 +4261,160 @@ define([ } }, - onUpdateExternalReference: function(arr, callback) { - if (this.permissions.isEdit && !this._isDisabled) { - var me = this; - me.externalData = { - stackRequests: [], - stackResponse: [], - callback: undefined + onShowMathTrack: function(bounds) { + if (bounds[3] < 0) { + this.onHideMathTrack(); + return; + } + var me = this, + documentHolder = me.documentHolder, + eqContainer = documentHolder.cmpEl.find('#equation-container'); + + // Prepare menu container + if (eqContainer.length < 1) { + var equationsStore = me.getApplication().getCollection('EquationGroups'), + eqStr = '
                '; + + me.getApplication().getController('Toolbar').onMathTypes(); + + me.equationBtns = []; + for (var i = 0; i < equationsStore.length; ++i) { + var style = 'margin-right: 8px;' + (i==0 ? 'margin-left: 5px;' : ''); + eqStr += ''; + } + eqStr += '
                '; + eqStr += ''; + eqStr += '
                '; + eqContainer = $(eqStr); + documentHolder.cmpEl.append(eqContainer); + var onShowBefore = function (menu) { + var index = menu.options.value, + group = equationsStore.at(index); + var equationPicker = new Common.UI.DataViewSimple({ + el: $('#id-document-holder-btn-equation-menu-' + index, menu.cmpEl), + parentMenu: menu, + store: group.get('groupStore'), + scrollAlwaysVisible: true, + showLast: false, + restoreHeight: 450, + itemTemplate: _.template( + '
                ' + + '
                ' + + '
                ') + }); + equationPicker.on('item:click', function(picker, item, record, e) { + if (me.api) { + if (record) + me.api.asc_AddMath(record.get('data').equationType); + } + }); + menu.off('show:before', onShowBefore); }; - arr && arr.length>0 && arr.forEach(function(item) { - var data; - switch (item.asc_getType()) { - case Asc.c_oAscExternalReferenceType.link: - data = {link: item.asc_getData()}; - break; - case Asc.c_oAscExternalReferenceType.path: - data = {path: item.asc_getData()}; - break; - case Asc.c_oAscExternalReferenceType.referenceData: - data = {referenceData: item.asc_getData()}; - break; - } - data && me.externalData.stackRequests.push(data); + var bringForward = function (menu) { + eqContainer.addClass('has-open-menu'); + }; + var sendBackward = function (menu) { + eqContainer.removeClass('has-open-menu'); + }; + for (var i = 0; i < equationsStore.length; ++i) { + var equationGroup = equationsStore.at(i); + var btn = new Common.UI.Button({ + parentEl: $('#id-document-holder-btn-equation-' + i, documentHolder.cmpEl), + cls : 'btn-toolbar no-caret', + iconCls : 'svgicon ' + equationGroup.get('groupIcon'), + hint : equationGroup.get('groupName'), + menu : new Common.UI.Menu({ + cls: 'menu-shapes', + value: i, + items: [ + { template: _.template('') } + ] + }) + }); + btn.menu.on('show:before', onShowBefore); + btn.menu.on('show:before', bringForward); + btn.menu.on('hide:after', sendBackward); + me.equationBtns.push(btn); + } + + me.equationSettingsBtn = new Common.UI.Button({ + parentEl: $('#id-document-holder-btn-equation-settings', documentHolder.cmpEl), + cls : 'btn-toolbar no-caret', + iconCls : 'toolbar__icon more-vertical', + hint : me.documentHolder.advancedEquationText, + menu : me.documentHolder.createEquationMenu('popuptbeqinput', 'tl-bl') }); - me.externalData.callback = callback; - me.requestReferenceData(); + me.equationSettingsBtn.menu.options.initMenu = function() { + var eq = me.api.asc_GetMathInputType(); + var menu = me.equationSettingsBtn.menu; + menu.items[0].setChecked(eq===Asc.c_oAscMathInputType.Unicode); + menu.items[1].setChecked(eq===Asc.c_oAscMathInputType.LaTeX); + }; + me.equationSettingsBtn.menu.on('item:click', _.bind(me.convertEquation, me)); + me.equationSettingsBtn.menu.on('show:before', function(menu) { + menu.options.initMenu(); + }); + } + + if (!me.tooltips.coauth.XY) + me.onDocumentResize(); + + var showPoint = [(bounds[0] + bounds[2])/2 - eqContainer.outerWidth()/2, bounds[1] - eqContainer.outerHeight() - 10]; + if (showPoint[1]<0) { + showPoint[1] = bounds[3] + 10; + } + showPoint[1] = Math.min(me.tooltips.coauth.apiHeight - eqContainer.outerHeight(), Math.max(0, showPoint[1])); + eqContainer.css({left: showPoint[0], top : showPoint[1]}); + + var menuAlign = (me.tooltips.coauth.apiHeight - showPoint[1] - eqContainer.outerHeight() < 220) ? 'bl-tl' : 'tl-bl'; + me.equationBtns.forEach(function(item){ + item && (item.menu.menuAlign = menuAlign); + }); + me.equationSettingsBtn.menu.menuAlign = menuAlign; + if (eqContainer.is(':visible')) { + if (me.equationSettingsBtn.menu.isVisible()) { + me.equationSettingsBtn.menu.options.initMenu(); + me.equationSettingsBtn.menu.alignPosition(); + } + } else { + eqContainer.show(); + } + me.disableEquationBar(); + }, + + onHideMathTrack: function() { + var eqContainer = this.documentHolder.cmpEl.find('#equation-container'); + if (eqContainer.is(':visible')) { + eqContainer.hide(); } }, - requestReferenceData: function() { - if (this.externalData.stackRequests.length>0) { - var data = this.externalData.stackRequests.shift(); - Common.Gateway.requestReferenceData(data); + disableEquationBar: function() { + var eqContainer = this.documentHolder.cmpEl.find('#equation-container'), + disabled = this._isDisabled || this._state.equationLocked; + + if (eqContainer.length>0 && eqContainer.is(':visible')) { + this.equationBtns.forEach(function(item){ + item && item.setDisabled(!!disabled); + }); + this.equationSettingsBtn.setDisabled(!!disabled); } }, - setReferenceData: function(data) { - if (this.permissions.isEdit && !this._isDisabled) { - data && this.externalData.stackResponse.push(data); - if (this.externalData.stackRequests.length>0) - this.requestReferenceData(); - else if (this.externalData.callback) - this.externalData.callback(this.externalData.stackResponse); + convertEquation: function(menu, item, e) { + if (this.api) { + if (item.options.type=='input') + this.api.asc_SetMathInputType(item.value); + else if (item.options.type=='view') + this.api.asc_ConvertMathView(item.value.linear, item.value.all); + } + }, + + saveAsPicture: function() { + if(this.api) { + this.api.asc_SaveDrawingAsPicture(); } }, @@ -4290,6 +4441,7 @@ define([ SetDisabled: function(state, canProtect) { this._isDisabled = state; this._canProtect = canProtect; + this.disableEquationBar(); }, guestText : 'Guest', diff --git a/apps/spreadsheeteditor/main/app/controller/LeftMenu.js b/apps/spreadsheeteditor/main/app/controller/LeftMenu.js index af93c8954..188023360 100644 --- a/apps/spreadsheeteditor/main/app/controller/LeftMenu.js +++ b/apps/spreadsheeteditor/main/app/controller/LeftMenu.js @@ -93,6 +93,9 @@ define([ }, 'SearchBar': { 'search:show': _.bind(this.onShowHideSearch, this) + }, + 'ViewTab': { + 'leftmenu:hide': _.bind(this.onLeftMenuHide, this) } }); Common.NotificationCenter.on('app:comment:add', _.bind(this.onAppAddComment, this)); @@ -314,6 +317,7 @@ define([ this.showHistory(); } break; + case 'external-help': close_menu = true; break; default: close_menu = false; } @@ -805,8 +809,8 @@ define([ this.leftMenu.btnSearchBar.setDisabled(isRangeSelection); this.leftMenu.btnSpellcheck.setDisabled(isRangeSelection); if (this.mode.canPlugins && this.leftMenu.panelPlugins) { + Common.Utils.lockControls(Common.enumLock.selRangeEdit, isRangeSelection, {array: this.leftMenu.panelPlugins.lockedControls}); this.leftMenu.panelPlugins.setLocked(isRangeSelection); - this.leftMenu.panelPlugins.disableControls(isRangeSelection); } }, @@ -817,14 +821,15 @@ define([ this.leftMenu.btnSearchBar.setDisabled(isEditFormula); this.leftMenu.btnSpellcheck.setDisabled(isEditFormula); if (this.mode.canPlugins && this.leftMenu.panelPlugins) { + Common.Utils.lockControls(Common.enumLock.editFormula, isEditFormula, {array: this.leftMenu.panelPlugins.lockedControls}); this.leftMenu.panelPlugins.setLocked(isEditFormula); - this.leftMenu.panelPlugins.disableControls(isEditFormula); } }, onPluginOpen: function(panel, type, action) { if (type == 'onboard') { if (action == 'open') { + this.tryToShowLeftMenu(); this.leftMenu.close(); this.leftMenu.panelPlugins.show(); this.leftMenu.onBtnMenuClick({pressed: true, options: {action: 'plugins'}}); @@ -840,6 +845,7 @@ define([ if (this.mode.canCoAuthoring && this.mode.canChat && !this.mode.isLightVersion) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('chat'); } else { this.leftMenu.btnChat.toggle(false, true); @@ -851,6 +857,7 @@ define([ onShowHideSearch: function (state, findText) { if (state) { Common.UI.Menu.Manager.hideAll(); + this.tryToShowLeftMenu(); this.leftMenu.showMenu('advancedsearch'); this.leftMenu.fireEvent('search:aftershow', [findText]); } else { @@ -903,6 +910,24 @@ define([ return this.leftMenu && this.leftMenu.panelComments && this.leftMenu.panelComments.isVisible(); }, + onLeftMenuHide: function (view, status) { + if (this.leftMenu) { + !status && this.leftMenu.close(); + status ? this.leftMenu.show() : this.leftMenu.hide(); + Common.localStorage.setBool('sse-hidden-leftmenu', !status); + + !view && this.leftMenu.fireEvent('view:hide', [this, !status]); + } + + Common.NotificationCenter.trigger('layout:changed', 'main'); + Common.NotificationCenter.trigger('edit:complete', this.leftMenu); + }, + + tryToShowLeftMenu: function() { + if ((!this.mode.canBrandingExt || !this.mode.customization || this.mode.customization.leftMenu !== false) && Common.UI.LayoutManager.isElementVisible('leftMenu')) + this.onLeftMenuHide(null, true); + }, + textNoTextFound : 'Text not found', newDocumentTitle : 'Unnamed document', textItemEntireCell : 'Entire cell contents', diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 2b811a1ac..31b7ffe58 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -377,6 +377,23 @@ define([ Common.Utils.InternalSettings.set("guest-username", value); Common.Utils.InternalSettings.set("save-guest-username", !!value); } + if (this.appOptions.customization.font) { + if (this.appOptions.customization.font.name && typeof this.appOptions.customization.font.name === 'string') { + var arr = this.appOptions.customization.font.name.split(','); + for (var i=0; i canRequestEditRights must be defined this.appOptions.isEdit = (this.appOptions.canLicense || this.appOptions.isEditDiagram || this.appOptions.isEditMailMerge || this.appOptions.isEditOle) && this.permissions.edit !== false && this.editorConfig.mode !== 'view'; this.appOptions.canDownload = (this.permissions.download !== false); - this.appOptions.canPrint = (this.permissions.print !== false); + this.appOptions.canPrint = (this.permissions.print !== false) && !(this.appOptions.isEditDiagram || this.appOptions.isEditMailMerge || this.appOptions.isEditOle); + this.appOptions.canQuickPrint = this.appOptions.canPrint && !Common.Utils.isMac && this.appOptions.isDesktopApp && + !(this.editorConfig.customization && this.editorConfig.customization.compactHeader); this.appOptions.canForcesave = this.appOptions.isEdit && !this.appOptions.isOffline && !(this.appOptions.isEditDiagram || this.appOptions.isEditMailMerge || this.appOptions.isEditOle) && (typeof (this.editorConfig.customization) == 'object' && !!this.editorConfig.customization.forcesave); this.appOptions.forcesave = this.appOptions.canForcesave; @@ -1320,7 +1342,7 @@ define([ if (!this.appOptions.isEditDiagram && !this.appOptions.isEditMailMerge && !this.appOptions.isEditOle) { this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object' || this.editorConfig.plugins); this.getApplication().getController('Common.Controllers.Plugins').setMode(this.appOptions); - this.appOptions.canBrandingExt && this.editorConfig.customization && Common.UI.LayoutManager.init(this.editorConfig.customization.layout); + this.editorConfig.customization && Common.UI.LayoutManager.init(this.editorConfig.customization.layout, this.appOptions.canBrandingExt); this.editorConfig.customization && Common.UI.FeaturesManager.init(this.editorConfig.customization.features, this.appOptions.canBrandingExt); } @@ -1412,6 +1434,8 @@ define([ app.getController('Toolbar').setMode(this.appOptions); app.getController('DocumentHolder').setMode(this.appOptions); + viewport && viewport.applyCommonMode(); + if (this.appOptions.isEditMailMerge || this.appOptions.isEditDiagram) { statusbarView.hide(); } @@ -1454,6 +1478,7 @@ define([ commentsController.setConfig({ config : this.editorConfig, sdkviewname : '#ws-canvas-outer', + fullInfoHintMode : true, hintmode : true}, this.api); } @@ -1553,6 +1578,9 @@ define([ this.showTips([this.scriptLoadError]); this.tooltip && this.tooltip.getBSTip().$tip.css('z-index', 10000); return; + } else if (id == Asc.c_oAscError.ID.CanNotPasteImage) { + this.showTips([this.errorCannotPasteImg], {timeout: 7000, hideCloseTip: true}); + return; } this.hidePreloader(); @@ -1976,6 +2004,20 @@ define([ config.msg = this.errorDirectUrl; break; + case Asc.c_oAscError.ID.ConvertationOpenFormat: + config.maxwidth = 600; + if (errData === 'pdf') + config.msg = this.errorInconsistentExtPdf.replace('%1', this.appOptions.spreadsheet.fileType || ''); + else if (errData === 'docx') + config.msg = this.errorInconsistentExtDocx.replace('%1', this.appOptions.spreadsheet.fileType || ''); + else if (errData === 'xlsx') + config.msg = this.errorInconsistentExtXlsx.replace('%1', this.appOptions.spreadsheet.fileType || ''); + else if (errData === 'pptx') + config.msg = this.errorInconsistentExtPptx.replace('%1', this.appOptions.spreadsheet.fileType || ''); + else + config.msg = this.errorInconsistentExt; + break; + default: config.msg = (typeof id == 'string') ? id : this.errorDefaultMessage.replace('%1', id); break; @@ -2230,7 +2272,9 @@ define([ onServerVersion: function(buildVersion) { if (this.changeServerVersion) return true; - if (DocsAPI.DocEditor.version() !== buildVersion && !window.compareVersions) { + const cur_version = this.getApplication().getController('LeftMenu').leftMenu.getMenu('about').txtVersionNum; + const cropped_version = cur_version.match(/^(\d+.\d+.\d+)/); + if (!window.compareVersions && (!cropped_version || cropped_version[1] !== buildVersion)) { this.changeServerVersion = true; Common.UI.warning({ title: this.titleServerVersion, @@ -2381,6 +2425,19 @@ define([ } }, this) }); + } else if (id == Asc.c_oAscConfirm.ConfirmMaxChangesSize) { + Common.UI.warning({ + title: this.notcriticalErrorTitle, + msg: this.confirmMaxChangesSize, + buttons: [{value: 'ok', caption: this.textUndo, primary: true}, {value: 'cancel', caption: this.textContinue}], + maxwidth: 600, + callback: _.bind(function(btn) { + if (apiCallback) { + apiCallback(btn === 'ok'); + } + me.onEditComplete(me.application.getController('DocumentHolder').getView('DocumentHolder')); + }, this) + }); } }, @@ -2881,6 +2938,39 @@ define([ if (url) this.iframePrint.src = url; }, + onPrintQuick: function() { + if (!this.appOptions.canQuickPrint) return; + + var value = Common.localStorage.getBool("sse-hide-quick-print-warning"), + me = this, + handler = function () { + var printopt = new Asc.asc_CAdjustPrint(); + printopt.asc_setNativeOptions({quickPrint: true}); + var opts = new Asc.asc_CDownloadOptions(); + opts.asc_setAdvancedOptions(printopt); + me.api.asc_Print(opts); + Common.component.Analytics.trackEvent('Print'); + }; + + if (value) { + handler.call(this); + } else { + Common.UI.warning({ + msg: this.textTryQuickPrint, + buttons: ['yes', 'no'], + primary: 'yes', + dontshow: true, + maxwidth: 500, + callback: function(btn, dontshow){ + dontshow && Common.localStorage.setBool("sse-hide-quick-print-warning", true); + if (btn === 'yes') { + setTimeout(handler, 1); + } + } + }); + } + }, + warningDocumentIsLocked: function() { var me = this; Common.Utils.warningDocumentIsLocked({ @@ -3660,8 +3750,17 @@ define([ textRequestMacros: 'A macro makes a request to URL. Do you want to allow the request to the %1?', textRememberMacros: 'Remember my choice for all macros', confirmAddCellWatches: 'This action will add {0} cell watches.
                Do you want to continue?', - confirmAddCellWatchesMax: 'This action will add only {0} cell watches by memory save reason.
                Do you want to continue?' - + confirmAddCellWatchesMax: 'This action will add only {0} cell watches by memory save reason.
                Do you want to continue?', + confirmMaxChangesSize: 'The size of actions exceeds the limitation set for your server.
                Press "Undo" to cancel your last action or press "Continue" to keep action locally (you need to download the file or copy its content to make sure nothing is lost).', + textUndo: 'Undo', + textContinue: 'Continue', + errorInconsistentExtDocx: 'An error has occurred while opening the file.
                The file content corresponds to text documents (e.g. docx), but the file has the inconsistent extension: %1.', + errorInconsistentExtXlsx: 'An error has occurred while opening the file.
                The file content corresponds to spreadsheets (e.g. xlsx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPptx: 'An error has occurred while opening the file.
                The file content corresponds to presentations (e.g. pptx), but the file has the inconsistent extension: %1.', + errorInconsistentExtPdf: 'An error has occurred while opening the file.
                The file content corresponds to one of the following formats: pdf/djvu/xps/oxps, but the file has the inconsistent extension: %1.', + errorInconsistentExt: 'An error has occurred while opening the file.
                The file content does not match the file extension.', + errorCannotPasteImg: 'We can\'t paste this image from the Clipboard, but you can save it to your device and \ninsert it from there, or you can copy the image without text and paste it into the spreadsheet.', + textTryQuickPrint: 'You have selected Quick print: the entire document will be printed on the last selected or default printer.
                Do you want to continue?' } })(), SSE.Controllers.Main || {})) }); diff --git a/apps/spreadsheeteditor/main/app/controller/Print.js b/apps/spreadsheeteditor/main/app/controller/Print.js index d2a21bd82..41b8f6a34 100644 --- a/apps/spreadsheeteditor/main/app/controller/Print.js +++ b/apps/spreadsheeteditor/main/app/controller/Print.js @@ -91,11 +91,16 @@ define([ } }, this)); this.printSettings.btnsSave.forEach(function (btn) { - btn.on('click', _.bind(me.querySavePrintSettings, me, false)); + btn.on('click', _.bind(me.querySavePrintSettings, me, 'save')); }); this.printSettings.btnsPrint.forEach(function (btn) { - btn.on('click', _.bind(me.querySavePrintSettings, me, true)); + btn.on('click', _.bind(me.querySavePrintSettings, me, 'print')); }); + if (this.mode.isDesktopApp) { + this.printSettings.btnsPrintPDF.forEach(function (btn) { + btn.on('click', _.bind(me.querySavePrintSettings, me, 'print-pdf')); + }); + } this.printSettings.btnPrevPage.on('click', _.bind(this.onChangePreviewPage, this, false)); this.printSettings.btnNextPage.on('click', _.bind(this.onChangePreviewPage, this, true)); this.printSettings.txtNumberPage.on({ @@ -147,21 +152,30 @@ define([ this.isFillSheets = false; } }, - - updateSettings: function(panel) { + + resetSheets: function (panel) { var wc = this.api.asc_getWorksheetsCount(), i = -1; var items = []; + var rangeRecord = panel.cmbRange.getSelectedRecord(), + rangeValue = rangeRecord && rangeRecord.value, + selectedTabs = SSE.getController('Statusbar').getSelectTabs(); while (++i < wc) { if (!this.api.asc_isWorksheetHidden(i)) { - items.push({ - displayValue:this.api.asc_getWorksheetName(i), - value: i - }); + if ((rangeRecord && rangeValue !== Asc.c_oAscPrintType.ActiveSheets) || selectedTabs.indexOf(i) !== -1) { + items.push({ + displayValue: this.api.asc_getWorksheetName(i), + value: i + }); + } } } panel.cmbSheet.store.reset(items); + }, + + updateSettings: function(panel) { + this.resetSheets(panel); var item = panel.cmbSheet.store.findWhere({value: panel.cmbSheet.getValue()}) || panel.cmbSheet.store.findWhere({value: this.api.asc_getActiveWorksheetIndex()}); if (item) { @@ -256,15 +270,16 @@ define([ }, onChangeRange: function(isDlg) { - var menu = isDlg ? this.printSettingsDlg : this.printSettings; - var printtype = menu.getRange(), - store = menu.cmbSheet.store, + var menu = isDlg ? this.printSettingsDlg : this.printSettings, + printtype = menu.getRange(); + this.resetSheets(menu); + var store = menu.cmbSheet.store, item = (printtype !== Asc.c_oAscPrintType.EntireWorkbook) ? store.findWhere({value: this.api.asc_getActiveWorksheetIndex()}) : store.at(0); if (item) { menu.cmbSheet.setValue(item.get('value')); this.comboSheetsChange(menu, menu.cmbSheet, item.toJSON()); } - menu.cmbSheet.setDisabled(printtype !== Asc.c_oAscPrintType.EntireWorkbook); + menu.cmbSheet.setDisabled(printtype === Asc.c_oAscPrintType.Selection || printtype === Asc.c_oAscPrintType.ActiveSheets && menu.cmbSheet.store.length < 2); menu.chIgnorePrintArea.setDisabled(printtype == Asc.c_oAscPrintType.Selection); if (!isDlg) { @@ -335,6 +350,8 @@ define([ if (!this.isFillSheets) { this.isFillSheets = true; this.updateSettings(this.printSettings); + } else { + this.resetSheets(this.printSettings); } this.printSettings.cmbSheet.store.each(function (item) { var sheetIndex = item.get('value'); @@ -394,6 +411,16 @@ define([ this.adjPrintParams.asc_setPrintType(printtype); this.adjPrintParams.asc_setPageOptionsMap(this._changedProps); this.adjPrintParams.asc_setIgnorePrintArea(this.printSettingsDlg.getIgnorePrintArea()); + this.adjPrintParams.asc_setActiveSheetsArray(printtype === Asc.c_oAscPrintType.ActiveSheets ? SSE.getController('Statusbar').getSelectTabs() : null); + var pageFrom = this.printSettingsDlg.getPagesFrom(), + pageTo = this.printSettingsDlg.getPagesTo(); + if (pageFrom > pageTo) { + var t = pageFrom; + pageFrom = pageTo; + pageTo = t; + } + this.adjPrintParams.asc_setStartPageIndex(pageFrom > 0 ? pageFrom - 1 : null); + this.adjPrintParams.asc_setEndPageIndex(pageTo > 0 ? pageTo - 1 : null); Common.localStorage.setItem("sse-print-settings-range", printtype); if ( this.printSettingsDlg.type=='print' ) { @@ -420,23 +447,37 @@ define([ querySavePrintSettings: function(print) { if ( this.checkMargins(this.printSettings) ) { this.savePageOptions(this.printSettings); - this._isPrint = print; + this._isPrint = print === 'print'; this.printSettings.applySettings(); - if (print) { - var printType = this.printSettings.getRange(); - this.adjPrintParams.asc_setPrintType(printType); - this.adjPrintParams.asc_setPageOptionsMap(this._changedProps); - this.adjPrintParams.asc_setIgnorePrintArea(this.printSettings.getIgnorePrintArea()); - Common.localStorage.setItem("sse-print-settings-range", printType); + var view = SSE.getController('Toolbar').getView('Toolbar'); + var printType = this.printSettings.getRange(); + this.adjPrintParams.asc_setPrintType(printType); + this.adjPrintParams.asc_setPageOptionsMap(this._changedProps); + this.adjPrintParams.asc_setIgnorePrintArea(this.printSettings.getIgnorePrintArea()); + this.adjPrintParams.asc_setActiveSheetsArray(printType === Asc.c_oAscPrintType.ActiveSheets ? SSE.getController('Statusbar').getSelectTabs() : null); + var pageFrom = this.printSettings.getPagesFrom(), + pageTo = this.printSettings.getPagesTo(); + if (pageFrom > pageTo) { + var t = pageFrom; + pageFrom = pageTo; + pageTo = t; + } + this.adjPrintParams.asc_setStartPageIndex(pageFrom > 0 ? pageFrom - 1 : null); + this.adjPrintParams.asc_setEndPageIndex(pageTo > 0 ? pageTo - 1 : null); + Common.localStorage.setItem("sse-print-settings-range", printType); + if (print === 'print') { var opts = new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86); opts.asc_setAdvancedOptions(this.adjPrintParams); this.api.asc_Print(opts); - Common.NotificationCenter.trigger('edit:complete', view); - this._isPrint = false; + } else if (print === 'print-pdf') { + var opts = new Asc.asc_CDownloadOptions(Asc.c_oAscFileType.PDF); + opts.asc_setAdvancedOptions(this.adjPrintParams); + this.api.asc_DownloadAs(opts); } + Common.NotificationCenter.trigger('edit:complete', view); } }, @@ -736,6 +777,16 @@ define([ adjPrintParams.asc_setPrintType(printType); adjPrintParams.asc_setPageOptionsMap(this._changedProps); adjPrintParams.asc_setIgnorePrintArea(this.printSettings.getIgnorePrintArea()); + adjPrintParams.asc_setActiveSheetsArray(printType === Asc.c_oAscPrintType.ActiveSheets ? SSE.getController('Statusbar').getSelectTabs() : null); + var pageFrom = this.printSettings.getPagesFrom(), + pageTo = this.printSettings.getPagesTo(); + if (pageFrom > pageTo) { + var t = pageFrom; + pageFrom = pageTo; + pageTo = t; + } + adjPrintParams.asc_setStartPageIndex(pageFrom > 0 ? pageFrom - 1 : null); + adjPrintParams.asc_setEndPageIndex(pageTo > 0 ? pageTo - 1 : null); var opts = new Asc.asc_CDownloadOptions(null, Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86); opts.asc_setAdvancedOptions(adjPrintParams); diff --git a/apps/spreadsheeteditor/main/app/controller/RightMenu.js b/apps/spreadsheeteditor/main/app/controller/RightMenu.js index 56d68c611..a406c4875 100644 --- a/apps/spreadsheeteditor/main/app/controller/RightMenu.js +++ b/apps/spreadsheeteditor/main/app/controller/RightMenu.js @@ -69,6 +69,9 @@ define([ }, 'PivotTable': { 'insertpivot': this.onInsertPivot + }, + 'ViewTab': { + 'rightmenu:hide': this.onRightMenuHide.bind(this) } }); @@ -145,7 +148,7 @@ define([ }, onSelectionChanged: function(info) { - if (this.rangeSelectionMode) return; + if (this.rangeSelectionMode || !info) return; var SelectedObjects = [], selectType = info.asc_getSelectionType(), @@ -466,6 +469,17 @@ define([ this._state.wsLock = props.wsLock; } this.onSelectionChanged(this.api.asc_getCellInfo()); + }, + + onRightMenuHide: function (view, status) { + if (this.rightmenu) { + !status && this.rightmenu.clearSelection(); + status ? this.rightmenu.show() : this.rightmenu.hide(); + Common.localStorage.setBool('sse-hidden-rightmenu', !status); + } + + Common.NotificationCenter.trigger('layout:changed', 'main'); + Common.NotificationCenter.trigger('edit:complete', this.rightmenu); } }); }); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/controller/Search.js b/apps/spreadsheeteditor/main/app/controller/Search.js index f830b7c41..b327d9820 100644 --- a/apps/spreadsheeteditor/main/app/controller/Search.js +++ b/apps/spreadsheeteditor/main/app/controller/Search.js @@ -367,6 +367,7 @@ define([ }, onApiRemoveTextAroundSearch: function (arr) { + if (!this.resultItems) return; var me = this; arr.forEach(function (id) { var ind = _.findIndex(me.resultItems, {id: id}); diff --git a/apps/spreadsheeteditor/main/app/controller/Statusbar.js b/apps/spreadsheeteditor/main/app/controller/Statusbar.js index 1e12a7b68..239e07876 100644 --- a/apps/spreadsheeteditor/main/app/controller/Statusbar.js +++ b/apps/spreadsheeteditor/main/app/controller/Statusbar.js @@ -840,6 +840,15 @@ define([ this.disconnectTip = null; }, + getSelectTabs: function () { + var selectTabs = this.statusbar.tabbar.selectTabs, + tabIndArr = []; + selectTabs.forEach(function (item) { + tabIndArr.push(item.sheetindex); + }); + return tabIndArr; + }, + zoomText : 'Zoom {0}%', errorLastSheet : 'Workbook must have at least one visible worksheet.', errorRemoveSheet: 'Can\'t delete the worksheet.', diff --git a/apps/spreadsheeteditor/main/app/controller/Toolbar.js b/apps/spreadsheeteditor/main/app/controller/Toolbar.js index 199067419..30ed0b784 100644 --- a/apps/spreadsheeteditor/main/app/controller/Toolbar.js +++ b/apps/spreadsheeteditor/main/app/controller/Toolbar.js @@ -85,7 +85,9 @@ define([ 'insert:textart': this.onInsertTextart, 'change:scalespn': this.onClickChangeScaleInMenu.bind(me), 'click:customscale': this.onScaleClick.bind(me), - 'home:open' : this.onHomeOpen + 'home:open' : this.onHomeOpen, + 'generate:smartart' : this.generateSmartArt, + 'insert:smartart' : this.onInsertSmartArt }, 'FileMenu': { 'menu:hide': me.onFileMenu.bind(me, 'hide'), @@ -99,6 +101,10 @@ define([ var _main = this.getApplication().getController('Main'); _main.onPrint(); }, + 'print-quick': function (opts) { + var _main = this.getApplication().getController('Main'); + _main.onPrintQuick(); + }, 'save': function (opts) { this.api.asc_Save(); }, @@ -493,6 +499,9 @@ define([ this.api.asc_registerCallback('asc_onUnLockCFManager', _.bind(this.onUnLockCFManager, this)); this.api.asc_registerCallback('asc_onZoomChanged', _.bind(this.onApiZoomChange, this)); Common.NotificationCenter.on('fonts:change', _.bind(this.onApiChangeFont, this)); + this.api.asc_registerCallback('asc_onBeginSmartArtPreview', _.bind(this.onApiBeginSmartArtPreview, this)); + this.api.asc_registerCallback('asc_onAddSmartArtPreview', _.bind(this.onApiAddSmartArtPreview, this)); + this.api.asc_registerCallback('asc_onEndSmartArtPreview', _.bind(this.onApiEndSmartArtPreview, this)); } else if (config.isEditOle) { Common.NotificationCenter.on('fonts:change', _.bind(this.onApiChangeFont, this)); } else if (config.isRestrictedEdit) { @@ -1038,7 +1047,7 @@ define([ win.setSettings({ sheets : items, ranges : me.api.asc_getDefinedNames(Asc.c_oAscGetDefinedNamesList.All, true), - currentSheet: me.api.asc_getWorksheetName(me.api.asc_getActiveWorksheetIndex()), + currentSheet: me.api.asc_getActiveWorksheetIndex(), props : props, text : cell.asc_getText(), isLock : cell.asc_getLockText(), @@ -2048,8 +2057,8 @@ define([ return false; } }; - shortcuts['command+shift+=,ctrl+shift+=' + (Common.Utils.isGecko ? ',command+shift+ff=,ctrl+shift+ff=' : '')] = function(e) { - if (me.editMode && !me.toolbar.btnAddCell.isDisabled()) { + shortcuts['command+shift+=,ctrl+shift+=,command+shift+numplus,ctrl+shift+numplus' + (Common.Utils.isGecko ? ',command+shift+ff=,ctrl+shift+ff=' : '')] = function(e) { + if (me.editMode && !me.toolbar.mode.isEditMailMerge && !me.toolbar.mode.isEditDiagram && !me.toolbar.mode.isEditOle && !me.toolbar.btnAddCell.isDisabled()) { var cellinfo = me.api.asc_getCellInfo(), selectionType = cellinfo.asc_getSelectionType(); if (selectionType === Asc.c_oAscSelectionType.RangeRow || selectionType === Asc.c_oAscSelectionType.RangeCol) { @@ -2079,8 +2088,8 @@ define([ return false; }; - shortcuts['command+shift+-,ctrl+shift+-' + (Common.Utils.isGecko ? ',command+shift+ff-,ctrl+shift+ff-' : '')] = function(e) { - if (me.editMode && !me.toolbar.btnDeleteCell.isDisabled()) { + shortcuts['command+shift+-,ctrl+shift+-,command+shift+numminus,ctrl+shift+numminus' + (Common.Utils.isGecko ? ',command+shift+ff-,ctrl+shift+ff-' : '')] = function(e) { + if (me.editMode && !me.toolbar.mode.isEditMailMerge && !me.toolbar.mode.isEditDiagram && !me.toolbar.mode.isEditOle && !me.toolbar.btnDeleteCell.isDisabled()) { var cellinfo = me.api.asc_getCellInfo(), selectionType = cellinfo.asc_getSelectionType(); if (selectionType === Asc.c_oAscSelectionType.RangeRow || selectionType === Asc.c_oAscSelectionType.RangeCol) { @@ -2809,7 +2818,7 @@ define([ }, onApiSelectionChanged: function(info) { - if (!this.editMode || $('.asc-window.enable-key-events:visible').length>0) return; + if (!this.editMode || $('.asc-window.enable-key-events:visible').length>0 || !info) return; if ( this.toolbar.mode.isEditDiagram ) return this.onApiSelectionChanged_DiagramEditor(info); else if ( this.toolbar.mode.isEditMailMerge ) @@ -2874,6 +2883,12 @@ define([ toolbar.lockToolbar(Common.enumLock['Objects'], !!this._state.wsProps['Objects']); toolbar.lockToolbar(Common.enumLock['FormatCells'], !!this._state.wsProps['FormatCells']); + // info.asc_getComments()===null - has comment, but no permissions to view it + toolbar.lockToolbar(Common.enumLock.commentLock, + (selectionType == Asc.c_oAscSelectionType.RangeCells) && (!info.asc_getComments() || info.asc_getComments().length>0 || info.asc_getLocked()) + || selectionType != Asc.c_oAscSelectionType.RangeCells, + { array: this.btnsComment }); + if (editOptionsDisabled) return; /* read font params */ @@ -3229,26 +3244,23 @@ define([ } toolbar.lockToolbar(Common.enumLock.itemsDisabled, !enabled, {array: [toolbar.btnDeleteCell]}); - // info.asc_getComments()===null - has comment, but no permissions to view it - toolbar.lockToolbar(Common.enumLock.commentLock, (selectionType == Asc.c_oAscSelectionType.RangeCells) && (!info.asc_getComments() || info.asc_getComments().length>0 || info.asc_getLocked()) || - this.toolbar.mode.compatibleFeatures && (selectionType != Asc.c_oAscSelectionType.RangeCells), - { array: this.btnsComment }); toolbar.lockToolbar(Common.enumLock.headerLock, info.asc_getLockedHeaderFooter(), {array: this.toolbar.btnsEditHeader}); }, onApiSelectionChangedRestricted: function(info) { - if (!this.appConfig.isRestrictedEdit) return; + if (!this.appConfig.isRestrictedEdit || !info) return; var selectionType = info.asc_getSelectionType(); - this.toolbar.lockToolbar(Common.enumLock.commentLock, (selectionType == Asc.c_oAscSelectionType.RangeCells) && (!info.asc_getComments() || info.asc_getComments().length>0 || info.asc_getLocked()) || - this.appConfig && this.appConfig.compatibleFeatures && (selectionType != Asc.c_oAscSelectionType.RangeCells), - { array: this.btnsComment }); + this.toolbar.lockToolbar(Common.enumLock.commentLock, + (selectionType == Asc.c_oAscSelectionType.RangeCells) && (!info.asc_getComments() || info.asc_getComments().length>0 || info.asc_getLocked()) + || selectionType != Asc.c_oAscSelectionType.RangeCells, + { array: this.btnsComment }); this.toolbar.lockToolbar(Common.enumLock['Objects'], !!this._state.wsProps['Objects'], { array: this.btnsComment }); }, onApiSelectionChanged_DiagramEditor: function(info) { - if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection) return; + if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection || !info) return; var me = this; var _disableEditOptions = function(seltype, coauth_disable) { @@ -3318,7 +3330,7 @@ define([ }, onApiSelectionChanged_MailMergeEditor: function(info) { - if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection) return; + if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection || !info) return; var me = this; var _disableEditOptions = function(seltype, coauth_disable) { @@ -3375,7 +3387,7 @@ define([ }, onApiSelectionChanged_OleEditor: function(info) { - if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection) return; + if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection || !info) return; var me = this; var _disableEditOptions = function(seltype, coauth_disable) { @@ -3976,7 +3988,7 @@ define([ items: [ { template: _.template('') } + equationGroup.get('groupHeightStr') + 'margin-left:5px;">
                ') } ] }) }); @@ -4043,16 +4055,21 @@ define([ var me = this; var onShowBefore = function(menu) { me.onMathTypes(me._equationTemp); + if (me._equationTemp && me._equationTemp.get_Data().length>0) + me.fillEquations(); me.toolbar.btnInsertEquation.menu.off('show:before', onShowBefore); }; me.toolbar.btnInsertEquation.menu.on('show:before', onShowBefore); }, onMathTypes: function(equation) { + equation = equation || this._equationTemp; + var equationgrouparray = [], equationsStore = this.getCollection('EquationGroups'); - equationsStore.reset(); + if (equationsStore.length>0) + return; // equations groups @@ -4060,18 +4077,18 @@ define([ // [translate, count cells, scroll] - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Symbol ] = [this.textSymbols, 11]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Fraction ] = [this.textFraction, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Script ] = [this.textScript, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Radical ] = [this.textRadical, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Integral ] = [this.textIntegral, 3, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LargeOperator] = [this.textLargeOperator, 5, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Bracket ] = [this.textBracket, 4, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Function ] = [this.textFunction, 3, true]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Accent ] = [this.textAccent, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LimitLog ] = [this.textLimitAndLog, 3]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Operator ] = [this.textOperator, 4]; - c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Matrix ] = [this.textMatrix, 4, true]; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Symbol ] = [this.textSymbols, 11, false, 'svg-icon-symbols']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Fraction ] = [this.textFraction, 4, false, 'svg-icon-fraction']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Script ] = [this.textScript, 4, false, 'svg-icon-script']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Radical ] = [this.textRadical, 4, false, 'svg-icon-radical']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Integral ] = [this.textIntegral, 3, true, 'svg-icon-integral']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LargeOperator] = [this.textLargeOperator, 5, true, 'svg-icon-largeOperator']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Bracket ] = [this.textBracket, 4, true, 'svg-icon-bracket']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Function ] = [this.textFunction, 3, true, 'svg-icon-function']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Accent ] = [this.textAccent, 4, false, 'svg-icon-accent']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.LimitLog ] = [this.textLimitAndLog, 3, false, 'svg-icon-limAndLog']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Operator ] = [this.textOperator, 4, false, 'svg-icon-operator']; + c_oAscMathMainTypeStrings[Common.define.c_oAscMathMainType.Matrix ] = [this.textMatrix, 4, true, 'svg-icon-matrix']; // equations sub groups @@ -4141,12 +4158,14 @@ define([ groupName : c_oAscMathMainTypeStrings[id][0], groupStore : store, groupWidth : width, - groupHeight : c_oAscMathMainTypeStrings[id][2] ? ' height:'+ normHeight +'px!important; ' : '' + groupHeight : normHeight, + groupHeightStr : c_oAscMathMainTypeStrings[id][2] ? ' height:'+ normHeight +'px!important; ' : '', + groupIcon: c_oAscMathMainTypeStrings[id][3] }); } } equationsStore.add(equationgrouparray); - this.fillEquations(); + // this.fillEquations(); } } }, @@ -4928,6 +4947,51 @@ define([ Common.component.Analytics.trackEvent('ToolBar', 'Vertical align'); }, + generateSmartArt: function (groupName) { + this.api.asc_generateSmartArtPreviews(groupName); + }, + + onApiBeginSmartArtPreview: function () { + this.smartArtGroups = this.toolbar.btnInsertSmartArt.menu.items; + this.smartArtData = Common.define.smartArt.getSmartArtData(); + }, + + onApiAddSmartArtPreview: function (previews) { + previews.forEach(_.bind(function (preview) { + var image = preview.asc_getImage(), + sectionId = preview.asc_getSectionId(), + section = _.findWhere(this.smartArtData, {sectionId: sectionId}), + item = _.findWhere(section.items, {type: image.asc_getName()}), + menu = _.findWhere(this.smartArtGroups, {value: sectionId}), + menuPicker = menu.menuPicker; + if (item) { + var arr = [{ + tip: item.tip, + value: item.type, + imageUrl: image.asc_getImage() + }]; + if (menuPicker.store.length < 1) { + menuPicker.store.reset(arr); + } else { + menuPicker.store.add(arr); + } + } + this.currentSmartArtMenu = menu; + }, this)); + }, + + onApiEndSmartArtPreview: function () { + if (this.currentSmartArtMenu) { + this.currentSmartArtMenu.menu.alignPosition(); + } + }, + + onInsertSmartArt: function (value) { + if (this.api) { + this.api.asc_createSmartArt(value); + } + }, + textEmptyImgUrl : 'You need to specify image URL.', warnMergeLostData : 'Operation can destroy data in the selected cells.
                Continue?', textWarning : 'Warning', diff --git a/apps/spreadsheeteditor/main/app/controller/ViewTab.js b/apps/spreadsheeteditor/main/app/controller/ViewTab.js index 1102f5284..7a211b90c 100644 --- a/apps/spreadsheeteditor/main/app/controller/ViewTab.js +++ b/apps/spreadsheeteditor/main/app/controller/ViewTab.js @@ -111,6 +111,11 @@ define([ 'view:compact': _.bind(function (toolbar, state) { this.view.chToolbar.setValue(!state, true); }, this) + }, + 'LeftMenu': { + 'view:hide': _.bind(function (leftmenu, state) { + this.view.chLeftMenu.setValue(!state, true); + }, this) } }); Common.NotificationCenter.on('layout:changed', _.bind(this.onLayoutChanged, this)); diff --git a/apps/spreadsheeteditor/main/app/controller/Viewport.js b/apps/spreadsheeteditor/main/app/controller/Viewport.js index 90b38270e..c85618494 100644 --- a/apps/spreadsheeteditor/main/app/controller/Viewport.js +++ b/apps/spreadsheeteditor/main/app/controller/Viewport.js @@ -70,7 +70,8 @@ define([ this.addListeners({ 'FileMenu': { 'menu:hide': me.onFileMenu.bind(me, 'hide'), - 'menu:show': me.onFileMenu.bind(me, 'show') + 'menu:show': me.onFileMenu.bind(me, 'show'), + 'settings:apply': me.applySettings.bind(me) }, 'Statusbar': { 'view:compact': function (statusbar, state) { @@ -89,6 +90,10 @@ define([ if ( me.appConfig && me.appConfig.isEdit && !(config.customization && config.customization.compactHeader) && toolbar.btnCollabChanges ) toolbar.btnCollabChanges = me.header.btnSave; + var value = Common.localStorage.getBool("sse-settings-quick-print-button", true); + Common.Utils.InternalSettings.set("sse-settings-quick-print-button", value); + if (me.header && me.header.btnPrintQuick) + me.header.btnPrintQuick[value ? 'show' : 'hide'](); }, 'view:compact' : function (toolbar, state) { me.viewport.vlayout.getItem('toolbar').height = state ? @@ -111,6 +116,8 @@ define([ 'print:disabled' : function (state) { if ( me.header.btnPrint ) me.header.btnPrint.setDisabled(state); + if ( me.header.btnPrintQuick ) + me.header.btnPrintQuick.setDisabled(state); }, 'save:disabled' : function (state) { if ( me.header.btnSave ) @@ -285,6 +292,13 @@ define([ me.header.lockHeaderBtns( 'users', _need_disable ); }, + applySettings: function () { + var value = Common.localStorage.getBool("sse-settings-quick-print-button", true); + Common.Utils.InternalSettings.set("sse-settings-quick-print-button", value); + if (this.header && this.header.btnPrintQuick) + this.header.btnPrintQuick[value ? 'show' : 'hide'](); + }, + onApiCoAuthoringDisconnect: function(enableDownload) { if (this.header) { if (this.header.btnDownload && !enableDownload) @@ -293,6 +307,8 @@ define([ this.header.btnPrint.hide(); if (this.header.btnEdit) this.header.btnEdit.hide(); + if (this.header.btnPrintQuick && !enableDownload) + this.header.btnPrintQuick.hide(); } }, @@ -311,8 +327,9 @@ define([ return; } if (!this.searchBar) { - var isVisible = leftMenu && leftMenu.leftMenu && leftMenu.leftMenu.isVisible(); - this.searchBar = new Common.UI.SearchBar( !isVisible ? { + var hideLeftPanel = this.appConfig.canBrandingExt && + (!Common.UI.LayoutManager.isElementVisible('leftMenu') || this.appConfig.customization && this.appConfig.customization.leftMenu === false); + this.searchBar = new Common.UI.SearchBar( hideLeftPanel ? { showOpenPanel: false, width: 303 } : {}); diff --git a/apps/spreadsheeteditor/main/app/controller/WBProtection.js b/apps/spreadsheeteditor/main/app/controller/WBProtection.js index 1cda5211a..6c5d400e3 100644 --- a/apps/spreadsheeteditor/main/app/controller/WBProtection.js +++ b/apps/spreadsheeteditor/main/app/controller/WBProtection.js @@ -329,7 +329,7 @@ define([ }, onApiSelectionChanged: function(info) { - if (!this.view) return; + if (!this.view || !info) return; if ($('.asc-window.enable-key-events:visible').length>0) return; var selectionType = info.asc_getSelectionType(); diff --git a/apps/spreadsheeteditor/main/app/template/PrintSettings.template b/apps/spreadsheeteditor/main/app/template/PrintSettings.template index f64b909a1..da93aaeb0 100644 --- a/apps/spreadsheeteditor/main/app/template/PrintSettings.template +++ b/apps/spreadsheeteditor/main/app/template/PrintSettings.template @@ -2,8 +2,13 @@
                +
                + +
                + +
                +
                -
                diff --git a/apps/spreadsheeteditor/main/app/template/Toolbar.template b/apps/spreadsheeteditor/main/app/template/Toolbar.template index bc63edc42..ae91b33b1 100644 --- a/apps/spreadsheeteditor/main/app/template/Toolbar.template +++ b/apps/spreadsheeteditor/main/app/template/Toolbar.template @@ -140,6 +140,7 @@ +
                diff --git a/apps/spreadsheeteditor/main/app/view/AutoFilterDialog.js b/apps/spreadsheeteditor/main/app/view/AutoFilterDialog.js index 218ced987..2e57fae71 100644 --- a/apps/spreadsheeteditor/main/app/view/AutoFilterDialog.js +++ b/apps/spreadsheeteditor/main/app/view/AutoFilterDialog.js @@ -179,8 +179,8 @@ define([ isN2 = n2!==undefined; if (isN1 !== isN2) return (isN1) ? -1 : 1; !isN1 && (n1 = item1.get('value').toLowerCase()) && (n2 = item2.get('value').toLowerCase()); - if (n1==n2) return 0; - return (n2=='' || n1!=='' && n1', - '
                ', + '
                ', '
                ', '', '
                ', @@ -1328,8 +1328,8 @@ define([ isN2 = n2!==undefined; if (isN1 !== isN2) return (isN1) ? -1 : 1; !isN1 && (n1 = item1.get('cellvalue').toLowerCase()) && (n2 = item2.get('cellvalue').toLowerCase()); - if (n1==n2) return 0; - return (n2=='' || n1!=='' && n1', '
    ', - '', + '', + '', '', '
    ', - '<% _.each(rows, function(row) { %>', - '', + '
    ', + '
    <%= header %>
    ', + '
    ', + '<% _.each(rows, function(row) { %>', '<% _.each(row, function(item) { %>', - '<% if (item.type!==Asc.c_oAscFileType.XLSM || fileType=="xlsm") { %>', - '
    ', + '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', + '
    ', + '
    ', + '
    ', '<% } %>', '<% }) %>', - '', - '<% }) %>', - '
    ', - '
    ', - '
    ' + '
    ', + '<% }) %>', + '
    ', + '
    ' ].join('')), initialize: function(options) { @@ -80,10 +81,20 @@ define([ this.menu = options.menu; this.fileType = options.fileType; + + Common.NotificationCenter.on({ + 'window:resize': _.bind(function() { + var divided = Common.Utils.innerWidth() >= this.maxWidth; + if (this.isDivided !== divided) { + this.$el.find('.divider').css('width', divided ? '100%' : '0'); + this.isDivided = divided; + } + }, this) + }); }, render: function() { - this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'xlsx').toLowerCase()})); + this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'xlsx').toLowerCase(), header: this.textDownloadAs})); $('.btn-doc-format',this.el).on('click', _.bind(this.onFormatClick,this)); if (_.isUndefined(this.scroller)) { @@ -94,6 +105,21 @@ define([ }); } + var itemWidth = 70 + 24, // width + margin + maxCount = 0; + this.formats.forEach(_.bind(function (item, index) { + var count = item.length; + if (count > maxCount) { + maxCount = count; + } + }, this)); + this.maxWidth = $('#file-menu-panel .panel-menu').outerWidth() + 20 + 10 + itemWidth * maxCount; // menu + left padding + margin + + if (Common.Utils.innerWidth() >= this.maxWidth) { + this.$el.find('.divider').css('width', '100%'); + this.isDivided = true; + } + return this; }, @@ -107,7 +133,9 @@ define([ if (!_.isUndefined(type) && this.menu) { this.menu.fireEvent('saveas:format', [this.menu, parseInt(type.value)]); } - } + }, + + textDownloadAs: "Download as" }); SSE.Views.FileMenuPanels.ViewSaveCopy = Common.UI.BaseView.extend({ @@ -115,35 +143,36 @@ define([ menu: undefined, formats: [[ - {name: 'XLSX', imgCls: 'xlsx', type: Asc.c_oAscFileType.XLSX, ext: '.xlsx'}, - {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF, ext: '.pdf'}, - {name: 'ODS', imgCls: 'ods', type: Asc.c_oAscFileType.ODS, ext: '.ods'}, - {name: 'CSV', imgCls: 'csv', type: Asc.c_oAscFileType.CSV, ext: '.csv'} + {name: 'XLSX', imgCls: 'xlsx', type: Asc.c_oAscFileType.XLSX}, + {name: 'ODS', imgCls: 'ods', type: Asc.c_oAscFileType.ODS}, + {name: 'CSV', imgCls: 'csv', type: Asc.c_oAscFileType.CSV}, + {name: 'PDF', imgCls: 'pdf', type: Asc.c_oAscFileType.PDF} ],[ - {name: 'XLTX', imgCls: 'xltx', type: Asc.c_oAscFileType.XLTX, ext: '.xltx'}, - {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA, ext: '.pdf'}, - {name: 'OTS', imgCls: 'ots', type: Asc.c_oAscFileType.OTS, ext: '.ots'}, - {name: 'XLSM', imgCls: 'xlsm', type: Asc.c_oAscFileType.XLSM, ext: '.xlsm'} - ] -// ,[ -// {name: 'HTML', imgCls: 'html', type: Asc.c_oAscFileType.HTML, ext: '.html'} -// ] - ], + {name: 'XLTX', imgCls: 'xltx', type: Asc.c_oAscFileType.XLTX}, + {name: 'OTS', imgCls: 'ots', type: Asc.c_oAscFileType.OTS}, + {name: 'XLSM', imgCls: 'xlsm', type: Asc.c_oAscFileType.XLSM}, + {name: 'PDFA', imgCls: 'pdfa', type: Asc.c_oAscFileType.PDFA} + ], [ + {name: 'JPG', imgCls: 'jpg', type: Asc.c_oAscFileType.JPG}, + {name: 'PNG', imgCls: 'png', type: Asc.c_oAscFileType.PNG} + ]], template: _.template([ - '', - '<% _.each(rows, function(row) { %>', - '', + '
    ', + '
    <%= header %>
    ', + '
    ', + '<% _.each(rows, function(row) { %>', '<% _.each(row, function(item) { %>', - '<% if (item.type!==Asc.c_oAscFileType.XLSM || fileType=="xlsm") { %>', - '
    ', + '<% if (item.type!==Asc.c_oAscFileType.DOCM || fileType=="docm") { %>', + '
    ', + '
    ', + '
    ', '<% } %>', '<% }) %>', - '', - '<% }) %>', - '
    ', - '
    ', - '
    ' + '
    ', + '<% }) %>', + '
    ', + '
    ' ].join('')), initialize: function(options) { @@ -151,10 +180,20 @@ define([ this.menu = options.menu; this.fileType = options.fileType; + + Common.NotificationCenter.on({ + 'window:resize': _.bind(function() { + var divided = Common.Utils.innerWidth() >= this.maxWidth; + if (this.isDivided !== divided) { + this.$el.find('.divider').css('width', divided ? '100%' : '0'); + this.isDivided = divided; + } + }, this) + }); }, render: function() { - this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'xlsx').toLowerCase()})); + this.$el.html(this.template({rows:this.formats, fileType: (this.fileType || 'xlsx').toLowerCase(), header: this.textSaveCopyAs})); $('.btn-doc-format',this.el).on('click', _.bind(this.onFormatClick,this)); if (_.isUndefined(this.scroller)) { @@ -165,6 +204,21 @@ define([ }); } + var itemWidth = 70 + 24, // width + margin + maxCount = 0; + this.formats.forEach(_.bind(function (item, index) { + var count = item.length; + if (count > maxCount) { + maxCount = count; + } + }, this)); + this.maxWidth = $('#file-menu-panel .panel-menu').outerWidth() + 20 + 10 + itemWidth * maxCount; // menu + left padding + margin + + if (Common.Utils.innerWidth() >= this.maxWidth) { + this.$el.find('.divider').css('width', '100%'); + this.isDivided = true; + } + return this; }, @@ -179,7 +233,9 @@ define([ if (!_.isUndefined(type) && !_.isUndefined(ext) && this.menu) { this.menu.fireEvent('savecopy:format', [this.menu, parseInt(type.value), ext.value]); } - } + }, + + textSaveCopyAs: "Save Copy as" }); SSE.Views.FileMenuPanels.MainSettingsGeneral = Common.UI.BaseView.extend(_.extend({ @@ -188,7 +244,8 @@ define([ template: _.template([ '
    ', - '', + '
    <%= scope.txtAdvancedSettings %>
    ', + '
    ', '', '', '', @@ -244,6 +301,12 @@ define([ '', '', '', + '', + '', + '', '', '', '', @@ -529,7 +592,7 @@ define([ var regdata = [{ value: 0x042C }, { value: 0x0402 }, { value: 0x0405 }, { value: 0x0C07 }, { value: 0x0407 }, {value: 0x0807}, { value: 0x0408 }, { value: 0x0C09 }, { value: 0x0809 }, { value: 0x0409 }, { value: 0x0C0A }, { value: 0x080A }, { value: 0x040B }, { value: 0x040C }, { value: 0x100C }, { value: 0x0410 }, { value: 0x0810 }, { value: 0x0411 }, { value: 0x0412 }, { value: 0x0426 }, { value: 0x040E }, { value: 0x0413 }, { value: 0x0415 }, { value: 0x0416 }, - { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }]; + { value: 0x0816 }, { value: 0x0419 }, { value: 0x041B }, { value: 0x0424 }, { value: 0x081D }, { value: 0x041D }, { value: 0x041F }, { value: 0x0422 }, { value: 0x042A }, { value: 0x0804 }, { value: 0x0404 }]; regdata.forEach(function(item) { var langinfo = Common.util.LanguageInfo.getLocalLanguageName(item.value); item.displayValue = langinfo[1]; @@ -719,6 +782,17 @@ define([ })).on('click', _.bind(me.applySettings, me)); }); + this.chQuickPrint = new Common.UI.CheckBox({ + el: $markup.findById('#fms-chb-quick-print'), + labelText: '', + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }); + this.chQuickPrint.$el.parent().on('click', function (){ + me.chQuickPrint.setValue(!me.chQuickPrint.isChecked()); + }); + this.pnlSettings = $markup.find('.flex-settings').addBack().filter('.flex-settings'); this.pnlApply = $markup.find('.fms-flex-apply').addBack().filter('.fms-flex-apply'); this.pnlTable = this.pnlSettings.find('table'); @@ -757,7 +831,7 @@ define([ updateScroller: function() { if (this.scroller) { Common.UI.Menu.Manager.hideAll(); - var scrolled = this.$el.height()< this.pnlTable.height() + 25 + this.pnlApply.height(); + var scrolled = this.$el.height()< this.pnlTable.height() + 25 + this.pnlApply.height() + this.$el.find('.header').outerHeight(true); this.pnlApply.toggleClass('hidden', !scrolled); this.trApply.toggleClass('hidden', scrolled); this.pnlSettings.css('overflow', scrolled ? 'hidden' : 'visible'); @@ -783,6 +857,7 @@ define([ $('tr.coauth.changes', this.el)[mode.isEdit && !mode.isOffline && mode.canCoAuthoring && mode.canChangeCoAuthoring ? 'show' : 'hide'](); $('tr.live-viewer', this.el)[mode.canLiveView && !mode.isOffline && mode.canChangeCoAuthoring ? 'show' : 'hide'](); $('tr.macros', this.el)[(mode.customization && mode.customization.macros===false) ? 'hide' : 'show'](); + $('tr.quick-print', this.el)[mode.canQuickPrint ? 'show' : 'hide'](); if ( !Common.UI.Themes.available() ) { $('tr.themes, tr.themes + tr.divider', this.el).hide(); @@ -878,6 +953,7 @@ define([ this.cmbMacros.setValue(item ? item.get('value') : 0); this.chPaste.setValue(Common.Utils.InternalSettings.get("sse-settings-paste-button")); + this.chQuickPrint.setValue(Common.Utils.InternalSettings.get("sse-settings-quick-print-button")); var data = []; for (var t in Common.UI.Themes.map()) { @@ -893,6 +969,7 @@ define([ if (Common.UI.FeaturesManager.canChange('spellcheck') && this.mode.isEdit) { var arrLang = SSE.getController('Spellcheck').loadLanguages(), + defaultShortName = "en-US", allLangs = arrLang[0], langs = arrLang[1], change = arrLang[2]; @@ -912,6 +989,8 @@ define([ item = this.cmbDictionaryLanguage.store.find(function (model) { return model.get('shortName').indexOf(value) == 0; }); + if(!item) + item = this.cmbDictionaryLanguage.store.findWhere({shortName: defaultShortName}) } this.cmbDictionaryLanguage.setValue(item ? item.get('value') : langs[0].value); value = this.cmbDictionaryLanguage.getValue(); @@ -978,6 +1057,7 @@ define([ Common.Utils.InternalSettings.set("sse-macros-mode", this.cmbMacros.getValue()); Common.localStorage.setItem("sse-settings-paste-button", this.chPaste.isChecked() ? 1 : 0); + Common.localStorage.setBool("sse-settings-quick-print-button", this.chQuickPrint.isChecked()); Common.localStorage.save(); if (this.menu) { @@ -1170,7 +1250,10 @@ define([ txtStrictTip: 'Use the \'Save\' button to sync the changes you and others make', strShowOthersChanges: 'Show changes from other users', txtCalculating: 'Calculating', - strDateFormat1904: 'Use 1904 date system' + strDateFormat1904: 'Use 1904 date system', + txtAdvancedSettings: 'Advanced Settings', + txtQuickPrint: 'Show the Quick Print button in the editor header', + txtQuickPrintTip: 'The document will be printed on the last selected or default printer' }, SSE.Views.FileMenuPanels.MainSettingsGeneral || {})); @@ -1179,7 +1262,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ menu: undefined, template: _.template([ - '
    ' + '
    <%= scope.txtOpenRecent %>
    ', + '
    ' ].join('')), initialize: function(options) { @@ -1190,7 +1274,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ }, render: function() { - this.$el.html(this.template()); + this.$el.html(this.template({scope: this})); this.viewRecentPicker = new Common.UI.DataView({ el: $('#id-recent-view'), @@ -1229,7 +1313,9 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ onRecentFileClick: function(view, itemview, record){ if ( this.menu ) this.menu.fireEvent('recent:open', [this.menu, record.get('url')]); - } + }, + + txtOpenRecent: 'Open Recent' }); SSE.Views.FileMenuPanels.CreateNew = Common.UI.BaseView.extend(_.extend({ @@ -1244,7 +1330,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ }, template: _.template([ - '

    <%= scope.txtCreateNew %>

    ', + '
    <%= scope.txtCreateNew %>
    ', '
    ', '<% if (blank) { %> ', '
    ', @@ -1332,7 +1418,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.template = _.template([ '
    ', - '
    ', + '', + '
    ', + '
    ', + '
    ' + this.txtSpreadsheetInfo + '
    ', + '
    ', '', '', '', @@ -1351,6 +1438,10 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ '', '', '', + '', + '', + '', + '', '', '', '', @@ -1438,6 +1529,15 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ dataHintDirection: 'left', dataHintOffset: 'small' }).on('keydown:before', keyDownBefore); + this.inputTags = new Common.UI.InputField({ + el : $markup.findById('#id-info-tags'), + style : 'width: 200px;', + placeHolder : this.txtAddText, + validateOnBlur: false, + dataHint: '2', + dataHintDirection: 'left', + dataHintOffset: 'small' + }).on('keydown:before', keyDownBefore); this.inputSubject = new Common.UI.InputField({ el : $markup.findById('#id-info-subject'), style : 'width: 200px;', @@ -1642,6 +1742,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ value = props.asc_getTitle(); this.inputTitle.setValue(value || ''); + value = props.asc_getKeywords(); + this.inputTags.setValue(value || ''); value = props.asc_getSubject(); this.inputSubject.setValue(value || ''); value = props.asc_getDescription(); @@ -1680,6 +1782,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.tblAuthor.find('.close').toggleClass('hidden', !mode.isEdit); if (!mode.isEdit) { this.inputTitle._input.attr('placeholder', ''); + this.inputTags._input.attr('placeholder', ''); this.inputSubject._input.attr('placeholder', ''); this.inputComment._input.attr('placeholder', ''); this.inputAuthor._input.attr('placeholder', ''); @@ -1703,6 +1806,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ SetDisabled: function() { var disable = !this.mode.isEdit || this._locked; this.inputTitle.setDisabled(disable); + this.inputTags.setDisabled(disable); this.inputSubject.setDisabled(disable); this.inputComment.setDisabled(disable); this.inputAuthor.setDisabled(disable); @@ -1714,6 +1818,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ applySettings: function() { if (this.coreProps && this.api) { this.coreProps.asc_putTitle(this.inputTitle.getValue()); + this.coreProps.asc_putKeywords(this.inputTags.getValue()); this.coreProps.asc_putSubject(this.inputSubject.getValue()); this.coreProps.asc_putDescription(this.inputComment.getValue()); this.coreProps.asc_putCreator(this.authors.join(';')); @@ -1727,6 +1832,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ txtUploaded: 'Uploaded', txtAppName: 'Application', txtTitle: 'Title', + txtTags: 'Tags', txtSubject: 'Subject', txtComment: 'Comment', txtModifyDate: 'Last Modified', @@ -1736,7 +1842,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ txtAddAuthor: 'Add Author', txtAddText: 'Add Text', txtMinutes: 'min', - okButtonText: 'Apply' + okButtonText: 'Apply', + txtSpreadsheetInfo: 'Spreadsheet Info' }, SSE.Views.FileMenuPanels.DocumentInfo || {})); SSE.Views.FileMenuPanels.DocumentRights = Common.UI.BaseView.extend(_.extend({ @@ -1748,7 +1855,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.rendered = false; this.template = _.template([ - '
    ', + '
    ' + this.txtAccessRights + '
    ', + '
    ', '', '', '', @@ -1858,7 +1966,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ }, txtRights: 'Persons who have rights', - txtBtnAccessRights: 'Change access rights' + txtBtnAccessRights: 'Change access rights', + txtAccessRights: 'Access Rights' }, SSE.Views.FileMenuPanels.DocumentRights || {})); SSE.Views.FileMenuPanels.Help = Common.UI.BaseView.extend({ @@ -1879,6 +1988,14 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.urlPref = 'resources/help/{{DEFAULT_LANG}}/'; this.openUrl = null; + if ( !Common.Utils.isIE ) { + if ( /^https?:\/\//.test('{{HELP_CENTER_WEB_SSE}}') ) { + const _url_obj = new URL('{{HELP_CENTER_WEB_SSE}}'); + _url_obj.searchParams.set('lang', Common.Locale.getCurrentLanguage()); + this.urlHelpCenter = _url_obj.toString(); + } + } + this.en_data = [ {"src": "ProgramInterface/ProgramInterface.htm", "name": "Introducing Spreadsheet Editor user interface", "headername": "Program Interface"}, {"src": "ProgramInterface/FileTab.htm", "name": "File tab"}, @@ -1953,16 +2070,17 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.iFrame.frameBorder = "0"; this.iFrame.width = "100%"; this.iFrame.height = "100%"; + if (Common.Utils.isChrome || Common.Utils.isOpera || Common.Utils.isGecko && Common.Utils.firefoxVersion>86) + this.iFrame.onload = function() { + try { + me.findUrl(me.iFrame.contentWindow.location.href); + } catch (e) { + } + }; + Common.Gateway.on('internalcommand', function(data) { if (data.type == 'help:hyperlink') { - var src = data.data; - var rec = me.viewHelpPicker.store.find(function(record){ - return (src.indexOf(record.get('src'))>0); - }); - if (rec) { - me.viewHelpPicker.selectRecord(rec, true); - me.viewHelpPicker.scrollToRecord(rec); - } + me.findUrl(data.data); } }); @@ -1985,9 +2103,10 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ store.fetch(config); } else { if ( Common.Controllers.Desktop.isActive() ) { - if ( store.contentLang === '{{DEFAULT_LANG}}' || !Common.Controllers.Desktop.helpUrl() ) + if ( store.contentLang === '{{DEFAULT_LANG}}' || !Common.Controllers.Desktop.helpUrl() ) { + me.noHelpContents = true; me.iFrame.src = '../../common/main/resources/help/download.html'; - else { + } else { store.contentLang = store.contentLang === lang ? '{{DEFAULT_LANG}}' : lang; me.urlPref = Common.Controllers.Desktop.helpUrl() + '/' + store.contentLang + '/'; store.url = me.urlPref + 'Contents.json'; @@ -2024,13 +2143,7 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ } if (url) { if (this.viewHelpPicker.store.length>0) { - var rec = this.viewHelpPicker.store.find(function(record){ - return (url.indexOf(record.get('src'))>=0); - }); - if (rec) { - this.viewHelpPicker.selectRecord(rec, true); - this.viewHelpPicker.scrollToRecord(rec); - } + this.findUrl(url); this.onSelectItem(url); } else this.openUrl = url; @@ -2039,6 +2152,16 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ onSelectItem: function(src) { this.iFrame.src = this.urlPref + src; + }, + + findUrl: function(src) { + var rec = this.viewHelpPicker.store.find(function(record){ + return (src.indexOf(record.get('src'))>=0); + }); + if (rec) { + this.viewHelpPicker.selectRecord(rec, true); + this.viewHelpPicker.scrollToRecord(rec); + } } }); @@ -2047,23 +2170,30 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ menu: undefined, template: _.template([ - '', + '', '
    ', '', - '
    ', - '
    ', - '', - '', - '', - '', - '', - '', - '', - '
    ', + '
    ', + '
    <%= scope.txtProtectSpreadsheet %>
    ', + '
    ', + '
    ', + '
    ', + '
    <%= scope.txtEncrypted %>
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', '
    ', '
    ', '', - '
    ', + '
    ', + '
    <%= scope.txtAddSignature %>
    ', + '
    ', + '
    ', + '
    ', + '
    <%= scope.txtAddedSignature %>
    ', + '
    ', '
    ', '
    ' ].join('')), @@ -2075,15 +2205,13 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ var me = this; this.templateSignature = _.template([ - '', - '', - '', - '', - '', - '', - '', - '', - '
    ' + '
    ', + '
    <%= tipText %>
    ', + '
    ', + '', + '', + '
    ', + '
    ' ].join('')); }, @@ -2105,7 +2233,8 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.btnDeletePwd.on('click', _.bind(this.closeMenu, this)); this.cntPassword = $('#id-fms-password'); - this.cntPasswordView = $('#id-fms-view-pwd'); + this.cntEncryptBlock = this.$el.find('.encrypt-block'); + this.cntEncryptedBlock = this.$el.find('.encrypted-block'); this.btnAddInvisibleSign = protection.getButton('signature'); this.btnAddInvisibleSign.render(this.$el.find('#fms-btn-invisible-sign')); @@ -2113,6 +2242,10 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ this.cntSignature = $('#id-fms-signature'); this.cntSignatureView = $('#id-fms-signature-view'); + + this.cntAddSignature = this.$el.find('.add-signature-block'); + this.cntAddedSignature = this.$el.find('.added-signature-block'); + if (_.isUndefined(this.scroller)) { this.scroller = new Common.UI.Scroller({ el: this.$el, @@ -2195,10 +2328,16 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ tipText = this.txtRequestedSignatures + (tipText!="" ? "

    " : "")+ tipText; this.cntSignatureView.html(this.templateSignature({tipText: tipText, hasSigned: (hasValid || hasInvalid), hasRequested: hasRequested})); + + var isAddedSignature = this.btnAddInvisibleSign.$el.find('button').hasClass('hidden'); + this.cntAddSignature.toggleClass('hidden', isAddedSignature); + this.cntAddedSignature.toggleClass('hidden', !isAddedSignature); }, updateEncrypt: function() { - this.cntPasswordView.toggleClass('hidden', this.btnAddPwd.isVisible()); + var isProtected = this.btnAddPwd.$el.find('button').hasClass('hidden'); + this.cntEncryptBlock.toggleClass('hidden', isProtected); + this.cntEncryptedBlock.toggleClass('hidden', !isProtected); }, strProtect: 'Protect Workbook', @@ -2211,7 +2350,10 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ notcriticalErrorTitle: 'Warning', txtEditWarning: 'Editing will remove the signatures from the workbook.
    Are you sure you want to continue?', strEncrypt: 'With Password', - txtEncrypted: 'This workbook has been protected by password' + txtProtectSpreadsheet: 'Encrypt this spreadsheet with a password', + txtEncrypted: 'A password is required to open this spreadsheet', + txtAddSignature: 'Ensure the integrity of the spreadsheet by adding an
    invisible digital signature', + txtAddedSignature: 'Valid signatures have been added to the spreadsheet.
    The spreadsheet is protected from editing.' }, SSE.Views.FileMenuPanels.ProtectDoc || {})); @@ -2224,11 +2366,20 @@ SSE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({ '
    ', '