Merge branch 'develop' into feature/de-margins

This commit is contained in:
Julia Svinareva 2019-11-15 15:25:56 +03:00
commit e2740de370
39 changed files with 3434 additions and 114 deletions

View file

@ -710,7 +710,7 @@ define([
this.caption = caption;
if (this.rendered) {
var captionNode = this.cmpEl.find('button:first > .caption').addBack().filter('button > .caption');
var captionNode = this.cmpEl.find('.caption');
if (captionNode.length > 0) {
captionNode.text(caption);

View file

@ -348,20 +348,11 @@ define([
maxwidth = (this.initConfig.maxwidth) ? this.initConfig.maxwidth : main_width,
maxheight = (this.initConfig.maxheight) ? this.initConfig.maxheight : main_height;
if (this.resizing.type[0]>0) {
this.resizing.maxx = Math.min(main_width, left+maxwidth);
this.resizing.minx = left+this.initConfig.minwidth;
} else if (this.resizing.type[0]<0) {
this.resizing.maxx = left+this.resizing.initw-this.initConfig.minwidth;
this.resizing.minx = Math.max(0, left+this.resizing.initw-maxwidth);
}
if (this.resizing.type[1]>0) {
this.resizing.maxy = Math.min(main_height, top+maxheight);
this.resizing.miny = top+this.initConfig.minheight;
} else if (this.resizing.type[1]<0) {
this.resizing.maxy = top+this.resizing.inith-this.initConfig.minheight;
this.resizing.miny = Math.max(0, top+this.resizing.inith-maxheight);
}
this.resizing.minw = this.initConfig.minwidth;
this.resizing.maxw = (this.resizing.type[0]>0) ? Math.min(main_width-left, maxwidth) : Math.min(left+this.resizing.initw, maxwidth);
this.resizing.minh = this.initConfig.minheight;
this.resizing.maxh = (this.resizing.type[1]>0) ? Math.min(main_height-top, maxheight) : Math.min(top+this.resizing.inith, maxheight);
$(document.body).css('cursor', el.css('cursor'));
this.$window.find('.resize-border').addClass('resizing');
@ -378,16 +369,34 @@ define([
zoom = (event instanceof jQuery.Event) ? Common.Utils.zoom() : 1,
pageX = event.pageX*zoom,
pageY = event.pageY*zoom;
if (this.resizing.type[0] && pageX<this.resizing.maxx && pageX>this.resizing.minx) {
if (this.resizing.type[0]) {
var new_width = this.resizing.initw + (pageX - this.resizing.initpage_x) * this.resizing.type[0];
if (new_width>this.resizing.maxw) {
pageX = pageX - (new_width-this.resizing.maxw) * this.resizing.type[0];
new_width = this.resizing.maxw;
} else if (new_width<this.resizing.minw) {
pageX = pageX - (new_width-this.resizing.minw) * this.resizing.type[0];
new_width = this.resizing.minw;
}
if (this.resizing.type[0]<0)
this.$window.css({left: pageX - this.resizing.initx});
this.setWidth(this.resizing.initw + (pageX - this.resizing.initpage_x) * this.resizing.type[0]);
this.setWidth(new_width);
resized = true;
}
if (this.resizing.type[1] && pageY<this.resizing.maxy && pageY>this.resizing.miny) {
if (this.resizing.type[1]) {
var new_height = this.resizing.inith + (pageY - this.resizing.initpage_y) * this.resizing.type[1];
if (new_height>this.resizing.maxh) {
pageY = pageY - (new_height-this.resizing.maxh) * this.resizing.type[1];
new_height = this.resizing.maxh;
} else if (new_height<this.resizing.minh) {
pageY = pageY - (new_height-this.resizing.minh) * this.resizing.type[1];
new_height = this.resizing.minh;
}
if (this.resizing.type[1]<0)
this.$window.css({top: pageY - this.resizing.inity});
this.setHeight(this.resizing.inith + (pageY - this.resizing.initpage_y) * this.resizing.type[1]);
this.setHeight(new_height);
resized = true;
}
if (resized) this.fireEvent('resizing');

View file

@ -126,6 +126,9 @@ define([
'comment:closeEditing': _.bind(this.closeEditing, this),
'comment:disableHint': _.bind(this.disableHint, this),
'comment:addDummyComment': _.bind(this.onAddDummyComment, this)
},
'Common.Views.ReviewChanges': {
'comment:removeComments': _.bind(this.onRemoveComments, this)
}
});
@ -180,7 +183,7 @@ define([
this.api.asc_registerCallback('asc_onAddComments', _.bind(this.onApiAddComments, this));
this.api.asc_registerCallback('asc_onRemoveComment', _.bind(this.onApiRemoveComment, this));
this.api.asc_registerCallback('asc_onChangeComments', _.bind(this.onChangeComments, this));
this.api.asc_registerCallback('asc_onRemoveComments', _.bind(this.onRemoveComments, this));
this.api.asc_registerCallback('asc_onRemoveComments', _.bind(this.onApiRemoveComments, this));
this.api.asc_registerCallback('asc_onChangeCommentData', _.bind(this.onApiChangeCommentData, this));
this.api.asc_registerCallback('asc_onLockComment', _.bind(this.onApiLockComment, this));
this.api.asc_registerCallback('asc_onUnLockComment', _.bind(this.onApiUnLockComment, this));
@ -233,6 +236,11 @@ define([
this.api.asc_removeComment(id);
}
},
onRemoveComments: function (type) {
if (this.api) {
this.api.asc_RemoveAllComments(type=='my' || !this.mode.canEditComments, type=='current');// 1 param = true if remove only my comments, 2 param - remove current comments
}
},
onResolveComment: function (uid) {
var t = this,
reply = null,
@ -725,7 +733,7 @@ define([
this.updateComments(true);
},
onRemoveComments: function (data) {
onApiRemoveComments: function (data) {
for (var i = 0; i < data.length; ++i) {
this.onApiRemoveComment(data[i], true);
}
@ -821,6 +829,7 @@ define([
}
},
onApiShowComment: function (uids, posX, posY, leftX, opts, hint) {
var apihint = hint;
var same_uids = (0 === _.difference(this.uids, uids).length) && (0 === _.difference(uids, this.uids).length);
if (hint && this.isSelectedComment && same_uids && !this.isModeChanged) {
@ -886,7 +895,7 @@ define([
this.animate = false;
}
this.isSelectedComment = !hint || !this.hintmode;
this.isSelectedComment = !apihint || !this.hintmode;
this.uids = _.clone(uids);
comments.push(comment);

View file

@ -69,6 +69,10 @@ define([
'FileMenu': {
'settings:apply': this.applySettings.bind(this)
},
'LeftMenu': {
'comments:show': _.bind(this.commentsShowHide, this, 'show'),
'comments:hide': _.bind(this.commentsShowHide, this, 'hide')
},
'Common.Views.ReviewChanges': {
'reviewchange:accept': _.bind(this.onAcceptClick, this),
'reviewchange:reject': _.bind(this.onRejectClick, this),
@ -695,7 +699,9 @@ define([
if (state !== me.view.btnChat.pressed)
me.view.turnChat(state);
});
}
if (me.view && me.view.btnCommentRemove) {
me.view.btnCommentRemove.setDisabled(!Common.localStorage.getBool(me.view.appPrefix + "settings-livecomment", true));
}
},
@ -774,6 +780,12 @@ define([
});
},
commentsShowHide: function(mode) {
if (!this.view) return;
var value = Common.Utils.InternalSettings.get(this.view.appPrefix + "settings-livecomment");
(value!==undefined) && this.view.btnCommentRemove && this.view.btnCommentRemove.setDisabled(mode != 'show' && !value);
},
textInserted: '<b>Inserted:</b>',
textDeleted: '<b>Deleted:</b>',
textParaInserted: '<b>Paragraph Inserted</b> ',

File diff suppressed because it is too large Load diff

View file

@ -64,6 +64,7 @@ define([
'<div class="separator long sharing"/>' +
'<div class="group">' +
'<span class="btn-slot text x-huge slot-comment"></span>' +
'<span class="btn-slot text x-huge" id="slot-comment-remove"></span>' +
'</div>' +
'<div class="separator long comments"/>' +
'<div class="group">' +
@ -161,6 +162,16 @@ define([
this.btnChat && this.btnChat.on('click', function (btn, e) {
me.fireEvent('collaboration:chat', [btn.pressed]);
});
if (this.btnCommentRemove) {
this.btnCommentRemove.on('click', function (e) {
me.fireEvent('comment:removeComments', ['current']);
});
this.btnCommentRemove.menu.on('item:click', function (menu, item, e) {
me.fireEvent('comment:removeComments', [item.value]);
});
}
}
return {
@ -291,6 +302,15 @@ define([
});
}
if ( this.appConfig.canCoAuthoring && this.appConfig.canComments ) {
this.btnCommentRemove = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
caption: this.txtCommentRemove,
split: true,
iconCls: 'btn-rem-comment'
});
}
var filter = Common.localStorage.getKeysFilter();
this.appPrefix = (filter && filter.length) ? filter.split(',')[0] : '';
@ -397,6 +417,28 @@ define([
me.turnCoAuthMode((value===null || parseInt(value) == 1) && !(config.isDesktopApp && config.isOffline) && config.canCoAuthoring);
}
if (me.btnCommentRemove) {
var items = [
{
caption: config.canEditComments ? me.txtCommentRemCurrent : me.txtCommentRemMyCurrent,
value: 'current'
},
{
caption: me.txtCommentRemMy,
value: 'my'
}
];
if (config.canEditComments)
items.push({
caption: me.txtCommentRemAll,
value: 'all'
});
me.btnCommentRemove.setMenu(
new Common.UI.Menu({items: items})
);
me.btnCommentRemove.updateHint([me.tipCommentRemCurrent, me.tipCommentRem]);
}
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_review = !(config.canReview || config.canViewReview) ? me.$el.find('.separator.review') : '.separator.review',
@ -426,7 +468,7 @@ define([
if (!me.btnHistory && separator_last)
me.$el.find(separator_last).hide();
Common.NotificationCenter.trigger('tab:visible', 'review', config.isEdit || config.canViewReview);
Common.NotificationCenter.trigger('tab:visible', 'review', config.isEdit || config.canViewReview || config.canCoAuthoring && config.canComments);
setEvents.call(me);
});
@ -448,6 +490,7 @@ define([
this.btnCoAuthMode && this.btnCoAuthMode.render(this.$el.find('#slot-btn-coauthmode'));
this.btnHistory && this.btnHistory.render(this.$el.find('#slot-btn-history'));
this.btnChat && this.btnChat.render(this.$el.find('#slot-btn-chat'));
this.btnCommentRemove && this.btnCommentRemove.render(this.$el.find('#slot-comment-remove'));
return this.$el;
},
@ -561,6 +604,7 @@ define([
}
}, this);
this.btnChat && this.btnChat.setDisabled(state);
this.btnCommentRemove && this.btnCommentRemove.setDisabled(state);
},
onLostEditRights: function() {
@ -609,7 +653,14 @@ define([
txtFinalCap: 'Final',
txtOriginalCap: 'Original',
strFastDesc: 'Real-time co-editing. All changes are saved automatically.',
strStrictDesc: 'Use the \'Save\' button to sync the changes you and others make.'
strStrictDesc: 'Use the \'Save\' button to sync the changes you and others make.',
txtCommentRemove: 'Remove',
tipCommentRemCurrent: 'Remove current comments',
tipCommentRem: 'Remove comments',
txtCommentRemCurrent: 'Remove Current Comments',
txtCommentRemMyCurrent: 'Remove My Current Comments',
txtCommentRemMy: 'Remove My Comments',
txtCommentRemAll: 'Remove All Comments'
}
}()), Common.Views.ReviewChanges || {}));

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View file

@ -0,0 +1,54 @@
#symbol-table-scrollable-div, #symbol-table-recent {
div{
display: inline-block;
vertical-align: top;
}
.cell{
width: 31px;
height: 33px;
border-right: 1px solid @gray-soft;
border-bottom: 1px solid @gray-soft;
background: #ffffff;
align-content: center;
vertical-align: middle;
text-align: center;
font-size: 22px;
-khtml-user-select: none;
user-select: none;
-moz-user-select: none;
-webkit-user-select: none;
cursor: default;
overflow:hidden;
display: inline-block;
}
.cell-selected{
background-color: @gray-darker;
color: white;
}
}
#symbol-table-recent {
width: 100%;
height: 32px;
overflow: hidden;
border: @gray-soft solid 1px;
}
#symbol-table-scrollable-div {
#id-preview {
width: 100%;
height: 132px;
position:relative;
overflow:hidden;
border: @gray-soft solid 1px;
}
#id-preview-data {
width: 100%;
height: 132px;
position:relative;
overflow:hidden;
}
}

View file

@ -533,6 +533,8 @@
.button-normal-icon(btn-caption, 76, @toolbar-big-icon-size);
.button-normal-icon(btn-calculation, 80, @toolbar-big-icon-size);
.button-normal-icon(btn-scale, 81, @toolbar-big-icon-size);
.button-normal-icon(btn-rem-comment, 83, @toolbar-big-icon-size);
.button-normal-icon(btn-symbol, 84, @toolbar-big-icon-size);
[applang=ru] {
.btn-toolbar {

View file

@ -0,0 +1,275 @@
{
"Basic Latin": "Основная латиница",
"Latin 1 Supplement": "Дополнительная латиница-1",
"Latin Extended A": "Расширенная латиница-A",
"Latin Extended B": "Расширенная латиница-B",
"IPA Extensions": "Международный фонетический алфавит",
"Spacing Modifier Letters": "Некомбинируемые протяжённые символы-модификаторы",
"Combining Diacritical Marks": "Комбинируемые диакритические знаки",
"Greek and Coptic": "Греческий и коптский алфавиты",
"Cyrillic": "Кириллица",
"Cyrillic Supplement": "Кириллица. Дополнительные символы",
"Armenian": "Армянский алфавит",
"Hebrew": "Иврит",
"Arabic": "Арабский",
"Syriac": "Сирийский",
"Arabic Supplement": "Дополнительные символы арабского письма",
"Thaana": "Тана",
"NKo": "Нко",
"Samaritan": "Самаритянское письмо",
"Mandaic": "Мандейский алфавит",
"Arabic Extended A": "Расширенный набор символов арабского письма-A",
"Devanagari": "Деванагари",
"Bengali": "Бенгальский",
"Gurmukhi": "Гурмукхи",
"Gujarati": "Гуджарати",
"Oriya": "Ория",
"Tamil": "Тамильская письменность",
"Telugu": "Телугу",
"Kannada": "Каннада",
"Malayalam": "Малаялам",
"Sinhala": "Сингальская письменность",
"Thai": "Тайская письменность",
"Lao": "Лаосская письменность",
"Tibetan": "Тибетская письменность",
"Myanmar": "Бирманский",
"Georgian": "Грузинский",
"Hangul Jamo": "Хангыль чамо",
"Ethiopic": "Эфиопская слоговая письменность",
"Ethiopic Supplement": "Дополнительные символы эфиопской письменности",
"Cherokee": "Письменность чероки",
"Unified Canadian Aboriginal Syllabics": "Канадское слоговое письмо",
"Ogham": "Огамическое письмо",
"Runic": "Руническая письменность",
"Tagalog": "Тагальская письменность. Байбайин",
"Hanunoo": "Хануноо",
"Buhid": "Бухид",
"Tagbanwa": "Тагбанва",
"Khmer": "Кхмерская письменность",
"Mongolian": "Старомонгольская письменность",
"Unified Canadian Aboriginal Syllabics Extended": "Расширенный набор символов канадского слогового письма",
"Limbu": "Письменность лимбу",
"Tai Le": "Письменность тай лы",
"New Tai Lue": "Новый алфавит тай лы",
"Khmer Symbols": "Кхмерские символы",
"Buginese": "Бугийская письменность. Лонтара",
"Tai Tham": "Тай Тхам",
"Combining Diacritical Marks Extended": "Комбинируемые диакритические знаки (расширение)",
"Balinese": "Балийское письмо",
"Sundanese": "Сунданское письмо",
"Batak": "Батакское письмо",
"Lepcha": "Письмо лепча",
"Ol Chiki": "Письменность Ол-чики",
"Cyrillic Extended C": "Расширенная кириллица C",
"Sundanese Supplement": "Сунданское расширенное письмо",
"Vedic Extensions": "Ведические символы",
"Phonetic Extensions": "Фонетические расширения",
"Phonetic Extensions Supplement": "Дополнительные фонетические расширения",
"Combining Diacritical Marks Supplement": "Дополнительные комбинируемые диакритические знаки",
"Latin Extended Additional": "Дополнительная расширенная латиница",
"Greek Extended": "Расширенный набор символов греческого алфавита",
"General Punctuation": "Знаки пунктуации",
"Superscripts and Subscripts": "Надстрочные и подстрочные знаки",
"Currency Symbols": "Символы валют",
"Combining Diacritical Marks for Symbols": "Комбинируемые диакритические знаки для символов",
"Letterlike Symbols": "Буквоподобные символы",
"Number Forms": "Числовые формы",
"Arrows": "Стрелки",
"Mathematical Operators": "Математические операторы",
"Miscellaneous Technical": "Разнообразные технические символы",
"Control Pictures": "Значки управляющих кодов",
"Optical Character Recognition": "Символы оптического распознавания",
"Enclosed Alphanumerics": "Вложенные буквы и цифры",
"Box Drawing": "Символы для рисования рамок",
"Block Elements": "Символы заполнения",
"Geometric Shapes": "Геометрические фигуры",
"Miscellaneous Symbols": "Разнообразные символы",
"Dingbats": "Дингбаты",
"Miscellaneous Mathematical Symbols A": "Разнообразные математические символы-A",
"Supplemental Arrows A": "Дополнительные стрелки-A",
"Braille Patterns": "Азбука Брайля",
"Supplemental Arrows B": "Дополнительные стрелки-B",
"Miscellaneous Mathematical Symbols B": "Разнообразные математические символы-B",
"Supplemental Mathematical Operators": "Дополнительные математические операторы",
"Miscellaneous Symbols and Arrows": "Разнообразные символы и стрелки",
"Glagolitic": "Глаголица",
"Latin Extended C": "Расширенная латиница C",
"Coptic": "Коптский алфавит",
"Georgian Supplement": "Дополнительные символы грузинского алфавита",
"Tifinagh": "Тифинаг (Древнеливийское письмо)",
"Ethiopic Extended": "Расширенный набор символов эфиопского письма",
"Cyrillic Extended A": "Расширенная кириллица A",
"Supplemental Punctuation": "Дополнительные знаки пунктуации",
"CJK Radicals Supplement": "Дополнительные иероглифические ключи ККЯ",
"Kangxi Radicals": "Иероглифические ключи словаря Канси",
"Ideographic Description Characters": "Символы описания иероглифов",
"CJK Symbols and Punctuation": "Символы и пунктуация ККЯ",
"Hiragana": "Хирагана",
"Katakana": "Катакана",
"Bopomofo": "Чжуинь. Бопомофо",
"Hangul Compatibility Jamo": "Комбинируемые чамо Хангыля",
"Kanbun": "Канбун(китайский)",
"Bopomofo Extended": "Расширенный набор символов бопомофо, чжуинь",
"CJK Strokes": "Черты ККЯ",
"Katakana Phonetic Extensions": "Фонетические расширения катаканы",
"Enclosed CJK Letters and Months": "Вложенные буквы и месяцы ККЯ",
"CJK Compatibility": "Знаки совместимости ККЯ",
"CJK Unified Ideographs Extension": "Унифицированные иероглифы ККЯ. Расширение А",
"Yijing Hexagram Symbols": "Гексаграммы И-Цзин",
"CJK Unified Ideographs": "Унифицированные иероглифы ККЯ",
"Yi Syllables": "Слоги. Письмо И",
"Yi Radicals": "Радикалы. Письмо И",
"Lisu": "Лису",
"Vai": "Слоговая письменность ваи",
"Cyrillic Extended B": "Расширенная кириллица-B",
"Bamum": "Письмо бамум",
"Modifier Tone Letters": "Символы изменения тона",
"Latin Extended D": "Расширенная латиница-D",
"Syloti Nagri": "Силоти нагри",
"Common Indic Number Forms": "Индийские числовые символы",
"Phags pa": "Квадратное письмо Пагба-ламы",
"Saurashtra": "Саураштра",
"Devanagari Extended": "Расширенный набор символов деванагари",
"Kayah Li": "Кайях Ли",
"Rejang": "Реджанг",
"Hangul Jamo Extended A": "Хангыль",
"Javanese": "Яванская письменность",
"Myanmar Extended B": "Расширенный бирманский-B",
"Cham": "Чамское письмо",
"Myanmar Extended A": "Мьянманская письменность. Расширение A",
"Tai Viet": "Письменность Тай Вьет",
"Meetei Mayek Extensions": "Мейтей расширенная",
"Ethiopic Extended A": "Набор расширенных символов эфиопского письма-А",
"Latin Extended E": "Расширенная латиница-E",
"Cherokee Supplement": "Письменность чероки (дополнение)",
"Meetei Mayek": "Мейтей (Манипури)",
"Hangul Syllables": "Слоги Хангыля",
"Hangul Jamo Extended B": "Расширенные хангыль чамо B",
"High Surrogates": "Верхняя часть суррогатных пар",
"High Private Use Surrogates": "Верхняя часть суррогатных пар для частного использования",
"Low Surrogates": "Нижняя часть суррогатных пар",
"Private Use Area": "Область для частного использования",
"CJK Compatibility Ideographs": "Совместимые иероглифы ККЯ",
"Alphabetic Presentation Forms": "Алфавитные формы представления",
"Arabic Presentation Forms A": "Формы представления арабских букв-A",
"Variation Selectors": "Селекторы вариантов начертания",
"Vertical Forms": "Вертикальные формы",
"Combining Half Marks": "Комбинируемые половинки символов",
"CJK Compatibility Forms": "Формы совместимости ККЯ",
"Small Form Variants": "Варианты малого размера",
"Arabic Presentation Forms B": "Формы представления арабских букв-B",
"Halfwidth and Fullwidth Forms": "Полуширинные и полноширинные формы",
"Specials": "Специальные символы",
"Linear B Syllabary": "Слоги линейного письма Б",
"Linear B Ideograms": "Идеограммы линейного письма Б",
"Aegean Numbers": "Эгейские цифры",
"Ancient Greek Numbers": "Древнегреческие единицы измерения",
"Ancient Symbols": "Древние символы",
"Phaistos Disc": "Символы фестского диска",
"Lycian": "Ликийский алфавит",
"Carian": "Алфавит карийского языка",
"Coptic Epact Numbers": "Коптские числа епакты",
"Old Italic": "Этрусский (староитальянский) алфавит",
"Gothic": "Готский алфавит",
"Old Permic": "Древнепермское письмо",
"Ugaritic": "Угаритский алфавит",
"Old Persian": "Древнеперсидский клинописный алфавит",
"Deseret": "Дезеретский алфавит",
"Shavian": "Алфавит Бернарда Шоу",
"Osmanya": "Османья (сомалийский алфавит)",
"Osage": "Оседж",
"Elbasan": "Эльбасанское письмо",
"Caucasian Albanian": "Агванское письмо (Кавказская Албания)",
"Linear A": "Линейное письмо А",
"Cypriot Syllabary": "Слоговая письменность острова Кипр",
"Imperial Aramaic": "Имперское арамейское письмо",
"Palmyrene": "Пальмирский алфавит",
"Nabataean": "Набатейское письмо",
"Hatran": "Хатран",
"Phoenician": "Финикийское письмо",
"Lydian": "Лидийский алфавит",
"Meroitic Hieroglyphs": "Лидийский алфавит",
"Meroitic Cursive": "Курсивное мероитское письмо",
"Kharoshthi": "Кхароштхи",
"Old South Arabian": "Старый южноаравийский алфавит",
"Old North Arabian": "Старый североаравийский алфавит",
"Manichaean": "Манихейское письмо",
"Avestan": "Авестийский алфавит",
"Inscriptional Parthian": "Пехлевийское письмо для парфянского языка",
"Inscriptional Pahlavi": "Эпиграфическое пехлевийское письмо",
"Psalter Pahlavi": "Псалтырь пехлеви",
"Old Turkic": "Древнетюркское руническое письмо",
"Old Hungarian": "Венгерские руны",
"Rumi Numeral Symbols": "Цифры системы руми",
"Brahmi": "Брахмическая письменность",
"Kaithi": "Кайтхи",
"Sora Sompeng": "Соранг сомпенг",
"Chakma": "Чакма",
"Mahajani": "Махаяни",
"Sharada": "Шарада",
"Sinhala Archaic Numbers": "Сингальские архаические цифры",
"Khojki": "Кходжики",
"Multani": "Мултани",
"Khudawadi": "Кхудабади",
"Grantha": "Грантха",
"Newa": "Нева",
"Tirhuta": "Тирхута",
"Siddham": "Сиддхаматрика",
"Modi": "Моди",
"Mongolian Supplement": "Монгольский (дополнение)",
"Takri": "Такри",
"Ahom": "Письмо ахом",
"Warang Citi": "Варанг-кшити",
"Pau Cin Hau": "Пау Цин Хау",
"Bhaiksuki": "Байсаки",
"Marchen": "Марчен",
"Cuneiform": "Клинопись",
"Cuneiform Numbers and Punctuation": "Клинописные цифры и знаки препинания",
"Early Dynastic Cuneiform": "Ранняя династическая клинопись",
"Egyptian Hieroglyphs": "Египетские иероглифы",
"Anatolian Hieroglyphs": "Анатолийские иероглифы",
"Bamum Supplement": "Письмо бамум (дополнение)",
"Mro": "Мру",
"Bassa Vah": "Письмо басса",
"Pahawh Hmong": "Пахау хмонг",
"Miao": "Письмо Полларда (миао)",
"Ideographic Symbols and Punctuation": "Идеографические символы и знаки препинания",
"Tangut": "Тангутское письмо",
"Tangut Components": "Компоненты тангутского письма",
"Kana Supplement": "Кана (дополнение)",
"Duployan": "Дюплойе",
"Shorthand Format Controls": "Форматирующие символы стенографии",
"Byzantine Musical Symbols": "Византийские музыкальные символы",
"Musical Symbols": "Музыкальные символы",
"Ancient Greek Musical Notation": "Древнегреческие музыкальные символы",
"Tai Xuan Jing Symbols": "Символы Тай Сюань Цзин",
"Counting Rod Numerals": "Счётные палочки",
"Mathematical Alphanumeric Symbols": "Математические буквенно-цифровые символы",
"Sutton SignWriting": "Жестовая письменность Саттон",
"Glagolitic Supplement": "Глаголица (расширение)",
"Mende Kikakui": "Письмо кикакуи для языка менде",
"Adlam": "Адлам",
"Arabic Mathematical Alphabetic Symbols": "Арабские математические буквенно-цифровые символы",
"Mahjong Tiles": "Кости для маджонга",
"Domino Tiles": "Кости для домино",
"Playing Cards": "Игральные карты",
"Enclosed Alphanumeric Supplement": "Вложенные буквенно-цифровые символы (дополнение)",
"Enclosed Ideographic Supplement": "Вложенные идеографические символы (дополнение)",
"Miscellaneous Symbols and Pictographs": "Различные символы и пиктограммы",
"Emoticons": "Эмотикон (эмоджи)",
"Ornamental Dingbats": "Элементы орнамента",
"Transport and Map Symbols": "Транспортные и картографические символы",
"Alchemical Symbols": "Алхимические символы",
"Geometric Shapes Extended": "Геометрические фигуры (расширение)",
"Supplemental Arrows C": "Дополнительные стрелки-С",
"Supplemental Symbols and Pictographs": "Символы и пиктограммы (дополнение)",
"CJK Unified Ideographs Extension B": "Унифицированные иероглифы ККЯ. Расширение B",
"CJK Unified Ideographs Extension C": "Унифицированные иероглифы ККЯ. Расширение C",
"CJK Unified Ideographs Extension D": "Унифицированные иероглифы ККЯ. Расширение D",
"CJK Unified Ideographs Extension E": "Унифицированные иероглифы ККЯ. Расширение E",
"CJK Compatibility Ideographs Supplement": "Унифицированные иероглифы ККЯ (дополнение)",
"Tags": "Теги",
"Variation Selectors Supplement": "Селекторы вариантов начертания (дополнение)",
"Supplementary Private Use Area A": "Дополнительная область для частного использования — A",
"Supplementary Private Use Area B": "Дополнительная область для частного использования — B"
}

View file

@ -467,6 +467,7 @@ define([
if (this.mode.canViewComments && this.leftMenu.panelComments.isVisible())
value = resolved = true;
(value) ? this.api.asc_showComments(resolved) : this.api.asc_hideComments();
this.getApplication().getController('Common.Controllers.ReviewChanges').commentsShowHide(value ? 'show' : 'hide');
/** coauthoring end **/
value = Common.localStorage.getItem("de-settings-fontrender");

View file

@ -1269,7 +1269,7 @@ define([
var toolbarController = application.getController('Toolbar');
toolbarController && toolbarController.setApi(me.api);
if (this.appOptions.isRestrictedEdit) return;
if (!this.appOptions.isEdit) return;
var rightmenuController = application.getController('RightMenu'),
fontsControllers = application.getController('Common.Controllers.Fonts');

View file

@ -47,6 +47,7 @@ define([
'common/main/lib/view/ImageFromUrlDialog',
'common/main/lib/view/InsertTableDialog',
'common/main/lib/view/SelectFileDlg',
'common/main/lib/view/SymbolTableDialog',
'common/main/lib/util/define',
'documenteditor/main/app/view/Toolbar',
'documenteditor/main/app/view/DropcapSettingsAdvanced',
@ -324,6 +325,7 @@ define([
toolbar.listStyles.on('contextmenu', _.bind(this.onListStyleContextMenu, this));
toolbar.styleMenu.on('hide:before', _.bind(this.onListStyleBeforeHide, this));
toolbar.btnInsertEquation.on('click', _.bind(this.onInsertEquationClick, this));
toolbar.btnInsertSymbol.on('click', _.bind(this.onInsertSymbolClick, this));
toolbar.mnuNoControlsColor.on('click', _.bind(this.onNoControlsColor, this));
toolbar.mnuControlsColorPicker.on('select', _.bind(this.onSelectControlsColor, this));
Common.Gateway.on('insertimage', _.bind(this.insertImage, this));
@ -820,6 +822,8 @@ define([
need_disable = paragraph_locked || header_locked || in_chart || !can_add_image&&!in_equation || control_plain;
toolbar.btnInsertEquation.setDisabled(need_disable);
toolbar.btnInsertSymbol.setDisabled(!in_para || paragraph_locked || header_locked);
need_disable = paragraph_locked || header_locked || in_equation;
toolbar.btnSuperscript.setDisabled(need_disable);
toolbar.btnSubscript.setDisabled(need_disable);
@ -2470,6 +2474,31 @@ define([
Common.NotificationCenter.trigger('edit:complete', this.toolbar, this.toolbar.btnInsertEquation);
},
onInsertSymbolClick: function() {
if (this.dlgSymbolTable && this.dlgSymbolTable.isVisible()) return;
if (this.api) {
var me = this;
me.dlgSymbolTable = new Common.Views.SymbolTableDialog({
api: me.api,
lang: me.mode.lang,
modal: false,
type: 1,
buttons: [{value: 'ok', caption: this.textInsert}, 'close'],
handler: function(dlg, result, settings) {
if (result == 'ok') {
me.api.pluginMethod_PasteHtml("<span style=\"font-family:'" + settings.font + "'\">" + settings.symbol + "</span>");
} else
Common.NotificationCenter.trigger('edit:complete', me.toolbar);
}
});
me.dlgSymbolTable.show();
me.dlgSymbolTable.on('symbol:dblclick', function(cmp, settings) {
me.api.pluginMethod_PasteHtml("<span style=\"font-family:'" + settings.font + "'\">" + settings.symbol + "</span>");
});
}
},
onApiMathTypes: function(equation) {
this._equationTemp = equation;
var me = this;
@ -2887,6 +2916,8 @@ define([
btn.on('click', function (btn, e) {
Common.NotificationCenter.trigger('app:comment:add', 'toolbar');
});
if (btn.cmpEl.closest('#review-changes-panel').length>0)
btn.setCaption(me.toolbar.capBtnAddComment);
}, this);
}
}
@ -3268,7 +3299,8 @@ define([
confirmAddFontName: 'The font you are going to save is not available on the current device.<br>The text style will be displayed using one of the device fonts, the saved font will be used when it is available.<br>Do you want to continue?',
notcriticalErrorTitle: 'Warning',
txtMarginsW: 'Left and right margins are too high for a given page wight',
txtMarginsH: 'Top and bottom margins are too high for a given page height'
txtMarginsH: 'Top and bottom margins are too high for a given page height',
textInsert: 'Insert'
}, DE.Controllers.Toolbar || {}));
});

View file

@ -108,6 +108,7 @@
<div class="separator long"></div>
<div class="group">
<span class="btn-slot text x-huge" id="slot-btn-insequation"></span>
<span class="btn-slot text x-huge" id="slot-btn-inssymbol"></span>
</div>
<div class="separator long"></div>
<div class="group">

View file

@ -583,6 +583,14 @@ define([
});
this.paragraphControls.push(this.btnInsertEquation);
this.btnInsertSymbol = new Common.UI.Button({
id: 'tlbtn-insertsymbol',
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'btn-symbol',
caption: me.capBtnInsSymbol
});
this.paragraphControls.push(this.btnInsertSymbol);
this.btnDropCap = new Common.UI.Button({
id: 'tlbtn-dropcap',
cls: 'btn-toolbar x-huge icon-top',
@ -1309,6 +1317,7 @@ define([
_injectComponent('#slot-btn-blankpage', this.btnBlankPage);
_injectComponent('#slot-btn-insshape', this.btnInsertShape);
_injectComponent('#slot-btn-insequation', this.btnInsertEquation);
_injectComponent('#slot-btn-inssymbol', this.btnInsertSymbol);
_injectComponent('#slot-btn-pageorient', this.btnPageOrient);
_injectComponent('#slot-btn-pagemargins', this.btnPageMargins);
_injectComponent('#slot-btn-pagesize', this.btnPageSize);
@ -1579,6 +1588,7 @@ define([
this.btnBlankPage.updateHint(this.tipBlankPage);
this.btnInsertShape.updateHint(this.tipInsertShape);
this.btnInsertEquation.updateHint(this.tipInsertEquation);
this.btnInsertSymbol.updateHint(this.tipInsertSymbol);
this.btnDropCap.updateHint(this.tipDropCap);
this.btnContentControls.updateHint(this.tipControls);
this.btnColumns.updateHint(this.tipColumns);
@ -2324,7 +2334,10 @@ define([
capBtnWatermark: 'Watermark',
textEditWatermark: 'Custom Watermark',
textRemWatermark: 'Remove Watermark',
tipWatermark: 'Edit watermark'
tipWatermark: 'Edit watermark',
capBtnAddComment: 'Add Comment',
capBtnInsSymbol: 'Symbol',
tipInsertSymbol: 'Insert symbol'
}
})(), DE.Views.Toolbar || {}));
});

View file

@ -253,6 +253,13 @@
"Common.Views.ReviewChanges.txtSpelling": "Spell Checking",
"Common.Views.ReviewChanges.txtTurnon": "Track Changes",
"Common.Views.ReviewChanges.txtView": "Display Mode",
"Common.Views.ReviewChanges.txtCommentRemove": "Remove",
"Common.Views.ReviewChanges.tipCommentRemCurrent": "Remove current comments",
"Common.Views.ReviewChanges.tipCommentRem": "Remove comments",
"Common.Views.ReviewChanges.txtCommentRemCurrent": "Remove Current Comments",
"Common.Views.ReviewChanges.txtCommentRemMyCurrent": "Remove My Current Comments",
"Common.Views.ReviewChanges.txtCommentRemMy": "Remove My Comments",
"Common.Views.ReviewChanges.txtCommentRemAll": "Remove All Comments",
"Common.Views.ReviewChangesDialog.textTitle": "Review Changes",
"Common.Views.ReviewChangesDialog.txtAccept": "Accept",
"Common.Views.ReviewChangesDialog.txtAcceptAll": "Accept All Changes",
@ -299,6 +306,11 @@
"Common.Views.SignSettingsDialog.textShowDate": "Show sign date in signature line",
"Common.Views.SignSettingsDialog.textTitle": "Signature Setup",
"Common.Views.SignSettingsDialog.txtEmpty": "This field is required",
"Common.Views.SymbolTableDialog.textTitle": "Symbol",
"Common.Views.SymbolTableDialog.textFont": "Font",
"Common.Views.SymbolTableDialog.textRange": "Range",
"Common.Views.SymbolTableDialog.textRecent": "Recently used symbols",
"Common.Views.SymbolTableDialog.textCode": "Unicode HEX value",
"DE.Controllers.LeftMenu.leavePageText": "All unsaved changes in this document will be lost.<br> Click \"Cancel\" then \"Save\" to save them. Click \"OK\" to discard all the unsaved changes.",
"DE.Controllers.LeftMenu.newDocumentTitle": "Unnamed document",
"DE.Controllers.LeftMenu.notcriticalErrorTitle": "Warning",
@ -992,6 +1004,7 @@
"DE.Controllers.Toolbar.txtSymbol_vdots": "Vertical ellipsis",
"DE.Controllers.Toolbar.txtSymbol_xsi": "Xi",
"DE.Controllers.Toolbar.txtSymbol_zeta": "Zeta",
"DE.Controllers.Toolbar.textInsert": "Insert",
"DE.Controllers.Viewport.textFitPage": "Fit to Page",
"DE.Controllers.Viewport.textFitWidth": "Fit to Width",
"DE.Views.AddNewCaptionLabelDialog.textLabel": "Label:",
@ -2050,6 +2063,7 @@
"DE.Views.TextArtSettings.textTemplate": "Template",
"DE.Views.TextArtSettings.textTransform": "Transform",
"DE.Views.TextArtSettings.txtNoBorders": "No Line",
"DE.Views.Toolbar.capBtnAddComment": "Add Comment",
"DE.Views.Toolbar.capBtnBlankPage": "Blank Page",
"DE.Views.Toolbar.capBtnColumns": "Columns",
"DE.Views.Toolbar.capBtnComment": "Comment",
@ -2239,6 +2253,8 @@
"DE.Views.Toolbar.txtScheme7": "Equity",
"DE.Views.Toolbar.txtScheme8": "Flow",
"DE.Views.Toolbar.txtScheme9": "Foundry",
"DE.Views.Toolbar.capBtnInsSymbol": "Symbol",
"DE.Views.Toolbar.tipInsertSymbol": "Insert symbol",
"DE.Views.WatermarkSettingsDialog.textAuto": "Auto",
"DE.Views.WatermarkSettingsDialog.textBold": "Bold",
"DE.Views.WatermarkSettingsDialog.textColor": "Text color",

View file

@ -299,6 +299,11 @@
"Common.Views.SignSettingsDialog.textShowDate": "Показывать дату подписи в строке подписи",
"Common.Views.SignSettingsDialog.textTitle": "Настройка подписи",
"Common.Views.SignSettingsDialog.txtEmpty": "Это поле необходимо заполнить",
"Common.Views.SymbolTableDialog.textTitle": "Symbol",
"Common.Views.SymbolTableDialog.textFont": "Шрифт",
"Common.Views.SymbolTableDialog.textRange": "Набор",
"Common.Views.SymbolTableDialog.textRecent": "Ранее использовавшиеся символы",
"Common.Views.SymbolTableDialog.textCode": "Код знака из Юникод (шестн.)",
"DE.Controllers.LeftMenu.leavePageText": "Все несохраненные изменения в этом документе будут потеряны.<br> Нажмите кнопку \"Отмена\", а затем нажмите кнопку \"Сохранить\", чтобы сохранить их. Нажмите кнопку \"OK\", чтобы сбросить все несохраненные изменения.",
"DE.Controllers.LeftMenu.newDocumentTitle": "Документ без имени",
"DE.Controllers.LeftMenu.notcriticalErrorTitle": "Внимание",

View file

@ -118,6 +118,7 @@
@import "../../../../common/main/resources/less/toolbar.less";
@import "../../../../common/main/resources/less/language-dialog.less";
@import "../../../../common/main/resources/less/winxp_fix.less";
@import "../../../../common/main/resources/less/symboltable.less";
// App
// --------------------------------------------------

View file

@ -976,14 +976,17 @@ define([
reviewController = application.getController('Common.Controllers.ReviewChanges');
reviewController.setMode(me.appOptions).setConfig({config: me.editorConfig}, me.api).loadDocument({doc:me.document});
if (this.appOptions.isEdit) {
var toolbarController = application.getController('Toolbar'),
rightmenuController = application.getController('RightMenu'),
if (this.appOptions.isEdit || this.appOptions.isRestrictedEdit) { // set api events for toolbar in the Restricted Editing mode)
var toolbarController = application.getController('Toolbar');
toolbarController && toolbarController.setApi(me.api);
if (!this.appOptions.isEdit) return;
var rightmenuController = application.getController('RightMenu'),
fontsControllers = application.getController('Common.Controllers.Fonts');
// me.getStore('SlideLayouts');
fontsControllers && fontsControllers.setApi(me.api);
toolbarController && toolbarController.setApi(me.api);
rightmenuController && rightmenuController.setApi(me.api);
if (me.appOptions.canProtect)

View file

@ -49,6 +49,7 @@ define([
'common/main/lib/view/InsertTableDialog',
'common/main/lib/view/SelectFileDlg',
'common/main/lib/view/ListSettingsDialog',
'common/main/lib/view/SymbolTableDialog',
'common/main/lib/util/define',
'presentationeditor/main/app/collection/SlideThemes',
'presentationeditor/main/app/view/Toolbar',
@ -310,6 +311,7 @@ define([
toolbar.btnSlideSize.menu.on('item:click', _.bind(this.onSlideSize, this));
toolbar.listTheme.on('click', _.bind(this.onListThemeSelect, this));
toolbar.btnInsertEquation.on('click', _.bind(this.onInsertEquationClick, this));
toolbar.btnInsertSymbol.on('click', _.bind(this.onInsertSymbolClick, this));
toolbar.btnEditHeader.on('click', _.bind(this.onEditHeaderClick, this, 'header'));
toolbar.btnInsDateTime.on('click', _.bind(this.onEditHeaderClick, this, 'datetime'));
toolbar.btnInsSlideNum.on('click', _.bind(this.onEditHeaderClick, this, 'slidenum'));
@ -321,6 +323,7 @@ define([
setApi: function(api) {
this.api = api;
if (this.mode.isEdit) {
this.toolbar.setApi(api);
this.api.asc_registerCallback('asc_onFontSize', _.bind(this.onApiFontSize, this));
@ -363,6 +366,9 @@ define([
this.api.asc_registerCallback('asc_onMathTypes', _.bind(this.onApiMathTypes, this));
this.api.asc_registerCallback('asc_onContextMenu', _.bind(this.onContextMenu, this));
this.api.asc_registerCallback('asc_onTextLanguage', _.bind(this.onTextLanguage, this));
} else if (this.mode.isRestrictedEdit) {
this.api.asc_registerCallback('asc_onCountPages', _.bind(this.onApiCountPagesRestricted, this));
}
},
onChangeCompactView: function(view, compact) {
@ -473,7 +479,7 @@ define([
case 0:
this.toolbar.btnMarkers.toggle(true, true);
this.toolbar.mnuMarkersPicker.selectByIndex(this._state.bullets.subtype, true);
this.toolbar.mnuMarkerSettings.setDisabled(this._state.bullets.subtype<0);
this.toolbar.mnuMarkerSettings && this.toolbar.mnuMarkerSettings.setDisabled(this._state.bullets.subtype<0);
break;
case 1:
var idx = 0;
@ -502,7 +508,7 @@ define([
}
this.toolbar.btnNumbers.toggle(true, true);
this.toolbar.mnuNumbersPicker.selectByIndex(idx, true);
this.toolbar.mnuNumberSettings.setDisabled(idx==0);
this.toolbar.mnuNumberSettings && this.toolbar.mnuNumberSettings.setDisabled(idx==0);
break;
}
}
@ -636,6 +642,14 @@ define([
}
},
onApiCountPagesRestricted: function(count) {
if (this._state.no_slides !== (count<=0)) {
this._state.no_slides = (count<=0);
if (this.btnsComment)
this.toolbar.lockToolbar(PE.enumLock.noSlides, this._state.no_slides, { array: this.btnsComment });
}
},
onApiFocusObject: function(selectedObjects) {
if (!this.editMode) return;
@ -1668,8 +1682,8 @@ define([
this.toolbar.mnuMarkersPicker.selectByIndex(0, true);
this.toolbar.mnuNumbersPicker.selectByIndex(0, true);
this.toolbar.mnuMarkerSettings.setDisabled(true);
this.toolbar.mnuNumberSettings.setDisabled(true);
this.toolbar.mnuMarkerSettings && this.toolbar.mnuMarkerSettings.setDisabled(true);
this.toolbar.mnuNumberSettings && this.toolbar.mnuNumberSettings.setDisabled(true);
},
_getApiTextSize: function () {
@ -1825,6 +1839,28 @@ define([
Common.NotificationCenter.trigger('edit:complete', this.toolbar, this.toolbar.btnInsertEquation);
},
onInsertSymbolClick: function() {
if (this.api) {
var me = this,
win = new Common.Views.SymbolTableDialog({
api: me.api,
lang: me.toolbar.mode.lang,
type: 1,
buttons: [{value: 'ok', caption: this.textInsert}, 'close'],
handler: function(dlg, result, settings) {
if (result == 'ok') {
me.api.pluginMethod_PasteHtml("<span style=\"font-family:'" + settings.font + "'\">" + settings.symbol + "</span>");
} else
Common.NotificationCenter.trigger('edit:complete', me.toolbar);
}
});
win.show();
win.on('symbol:dblclick', function(cmp, settings) {
me.api.pluginMethod_PasteHtml("<span style=\"font-family:'" + settings.font + "'\">" + settings.symbol + "</span>");
});
}
},
onApiMathTypes: function(equation) {
this._equationTemp = equation;
var me = this;
@ -2115,13 +2151,14 @@ define([
me.toolbar.render(_.extend({compactview: compactview}, config));
if ( config.isEdit ) {
me.toolbar.setMode(config);
var tab = {action: 'review', caption: me.toolbar.textTabCollaboration};
var $panel = me.getApplication().getController('Common.Controllers.ReviewChanges').createToolbarPanel();
if ( $panel )
me.toolbar.addTab(tab, $panel, 3);
if ( config.isEdit ) {
me.toolbar.setMode(config);
me.toolbar.btnSave.on('disabled', _.bind(me.onBtnChangeState, me, 'save:disabled'));
if (!(config.customization && config.customization.compactHeader)) {
@ -2164,6 +2201,8 @@ define([
btn.on('click', function (btn, e) {
Common.NotificationCenter.trigger('app:comment:add', 'toolbar');
});
if (btn.cmpEl.closest('#review-changes-panel').length>0)
btn.setCaption(me.toolbar.capBtnAddComment);
}, this);
this.toolbar.lockToolbar(PE.enumLock.noSlides, this._state.no_slides, { array: this.btnsComment });
}
@ -2528,7 +2567,8 @@ define([
txtMatrix_2_2_LineBracket : 'Empty Matrix with Brackets',
txtMatrix_2_2_DLineBracket : 'Empty Matrix with Brackets',
txtMatrix_Flat_Round : 'Sparse Matrix',
txtMatrix_Flat_Square : 'Sparse Matrix'
txtMatrix_Flat_Square : 'Sparse Matrix',
textInsert: 'Insert'
}, PE.Controllers.Toolbar || {}));
});

View file

@ -129,6 +129,7 @@
<div class="separator long"></div>
<div class="group">
<span class="btn-slot text x-huge" id="slot-btn-insertequation"></span>
<span class="btn-slot text x-huge" id="slot-btn-inssymbol"></span>
</div>
</section>
</section>

View file

@ -121,7 +121,7 @@ define([
applyLayout: function (config) {
var me = this;
me.lockControls = [];
if ( config.isEdit ) {
Common.UI.Mixtbar.prototype.initialize.call(this, {
template: _.template(template),
@ -543,6 +543,15 @@ define([
});
me.slideOnlyControls.push(this.btnInsertEquation);
me.btnInsertSymbol = new Common.UI.Button({
id: 'tlbtn-insertsymbol',
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'btn-symbol',
caption: me.capBtnInsSymbol,
lock: [_set.slideDeleted, _set.paragraphLock, _set.lostConnect, _set.noSlides, _set.noParagraphSelected]
});
me.paragraphControls.push(me.btnInsertSymbol);
me.btnInsertHyperlink = new Common.UI.Button({
id: 'tlbtn-insertlink',
cls: 'btn-toolbar x-huge icon-top',
@ -815,7 +824,7 @@ define([
this.btnSubscript, this.btnFontColor, this.btnClearStyle, this.btnCopyStyle, this.btnMarkers,
this.btnNumbers, this.btnDecLeftOffset, this.btnIncLeftOffset, this.btnLineSpace, this.btnHorizontalAlign,
this.btnVerticalAlign, this.btnShapeArrange, this.btnShapeAlign, this.btnInsertTable, this.btnInsertChart,
this.btnInsertEquation, this.btnInsertHyperlink, this.btnColorSchemas, this.btnSlideSize, this.listTheme, this.mnuShowSettings
this.btnInsertEquation, this.btnInsertSymbol, this.btnInsertHyperlink, this.btnColorSchemas, this.btnSlideSize, this.listTheme, this.mnuShowSettings
];
// Disable all components before load document
@ -933,6 +942,7 @@ define([
_injectComponent('#slot-btn-arrange-shape', this.btnShapeArrange);
_injectComponent('#slot-btn-align-shape', this.btnShapeAlign);
_injectComponent('#slot-btn-insertequation', this.btnInsertEquation);
_injectComponent('#slot-btn-inssymbol', this.btnInsertSymbol);
_injectComponent('#slot-btn-insertlink', this.btnInsertHyperlink);
_injectComponent('#slot-btn-inserttable', this.btnInsertTable);
_injectComponent('#slot-btn-insertchart', this.btnInsertChart);
@ -1044,6 +1054,7 @@ define([
this.btnInsertTable.updateHint(this.tipInsertTable);
this.btnInsertChart.updateHint(this.tipInsertChart);
this.btnInsertEquation.updateHint(this.tipInsertEquation);
this.btnInsertSymbol.updateHint(this.tipInsertSymbol);
this.btnInsertHyperlink.updateHint(this.tipInsertHyperlink + Common.Utils.String.platformKey('Ctrl+K'));
this.btnInsertTextArt.updateHint(this.tipInsertTextArt);
this.btnColorSchemas.updateHint(this.tipColorSchemas);
@ -1676,7 +1687,10 @@ define([
capBtnInsHeader: 'Header/Footer',
capBtnSlideNum: 'Slide Number',
capBtnDateTime: 'Date & Time',
textListSettings: 'List Settings'
textListSettings: 'List Settings',
capBtnAddComment: 'Add Comment',
capBtnInsSymbol: 'Symbol',
tipInsertSymbol: 'Insert symbol'
}
}()), PE.Views.Toolbar || {}));
});

View file

@ -184,6 +184,13 @@
"Common.Views.ReviewChanges.txtSpelling": "Spell Checking",
"Common.Views.ReviewChanges.txtTurnon": "Track Changes",
"Common.Views.ReviewChanges.txtView": "Display Mode",
"Common.Views.ReviewChanges.txtCommentRemove": "Remove",
"Common.Views.ReviewChanges.tipCommentRemCurrent": "Remove current comments",
"Common.Views.ReviewChanges.tipCommentRem": "Remove comments",
"Common.Views.ReviewChanges.txtCommentRemCurrent": "Remove Current Comments",
"Common.Views.ReviewChanges.txtCommentRemMyCurrent": "Remove My Current Comments",
"Common.Views.ReviewChanges.txtCommentRemMy": "Remove My Comments",
"Common.Views.ReviewChanges.txtCommentRemAll": "Remove All Comments",
"Common.Views.ReviewPopover.textAdd": "Add",
"Common.Views.ReviewPopover.textAddReply": "Add Reply",
"Common.Views.ReviewPopover.textCancel": "Cancel",
@ -220,6 +227,11 @@
"Common.Views.SignSettingsDialog.textShowDate": "Show sign date in signature line",
"Common.Views.SignSettingsDialog.textTitle": "Signature Setup",
"Common.Views.SignSettingsDialog.txtEmpty": "This field is required",
"Common.Views.SymbolTableDialog.textTitle": "Symbol",
"Common.Views.SymbolTableDialog.textFont": "Font",
"Common.Views.SymbolTableDialog.textRange": "Range",
"Common.Views.SymbolTableDialog.textRecent": "Recently used symbols",
"Common.Views.SymbolTableDialog.textCode": "Unicode HEX value",
"PE.Controllers.LeftMenu.newDocumentTitle": "Unnamed presentation",
"PE.Controllers.LeftMenu.notcriticalErrorTitle": "Warning",
"PE.Controllers.LeftMenu.requestEditRightsText": "Requesting editing rights...",
@ -908,6 +920,7 @@
"PE.Controllers.Toolbar.txtSymbol_vdots": "Vertical ellipsis",
"PE.Controllers.Toolbar.txtSymbol_xsi": "Xi",
"PE.Controllers.Toolbar.txtSymbol_zeta": "Zeta",
"PE.Controllers.Toolbar.textInsert": "Insert",
"PE.Controllers.Viewport.textFitPage": "Fit to Slide",
"PE.Controllers.Viewport.textFitWidth": "Fit to Width",
"PE.Views.ChartSettings.textAdvanced": "Show advanced settings",
@ -1666,6 +1679,7 @@
"PE.Views.TextArtSettings.txtPapyrus": "Papyrus",
"PE.Views.TextArtSettings.txtWood": "Wood",
"PE.Views.Toolbar.capAddSlide": "Add Slide",
"PE.Views.Toolbar.capBtnAddComment": "Add Comment",
"PE.Views.Toolbar.capBtnComment": "Comment",
"PE.Views.Toolbar.capBtnDateTime": "Date & Time",
"PE.Views.Toolbar.capBtnInsHeader": "Header/Footer",
@ -1798,5 +1812,7 @@
"PE.Views.Toolbar.txtScheme8": "Flow",
"PE.Views.Toolbar.txtScheme9": "Foundry",
"PE.Views.Toolbar.txtSlideAlign": "Align to Slide",
"PE.Views.Toolbar.txtUngroup": "Ungroup"
"PE.Views.Toolbar.txtUngroup": "Ungroup",
"PE.Views.Toolbar.capBtnInsSymbol": "Symbol",
"PE.Views.Toolbar.tipInsertSymbol": "Insert symbol"
}

View file

@ -114,6 +114,7 @@
@import "../../../../common/main/resources/less/toolbar.less";
@import "../../../../common/main/resources/less/language-dialog.less";
@import "../../../../common/main/resources/less/winxp_fix.less";
@import "../../../../common/main/resources/less/symboltable.less";
// App
// --------------------------------------------------

View file

@ -367,6 +367,7 @@ define([
if (this.mode.canViewComments && this.leftMenu.panelComments.isVisible())
value = resolved = true;
(value) ? this.api.asc_showComments(resolved) : this.api.asc_hideComments();
this.getApplication().getController('Common.Controllers.ReviewChanges').commentsShowHide(value ? 'show' : 'hide');
value = Common.localStorage.getBool("sse-settings-r1c1");
Common.Utils.InternalSettings.set("sse-settings-r1c1", value);

View file

@ -1050,14 +1050,17 @@ define([
reviewController = application.getController('Common.Controllers.ReviewChanges');
reviewController.setMode(me.appOptions).setConfig({config: me.editorConfig}, me.api).loadDocument({doc:me.appOptions.spreadsheet});
if (this.appOptions.isEdit) {
var toolbarController = application.getController('Toolbar'),
statusbarController = application.getController('Statusbar'),
if (this.appOptions.isEdit || this.appOptions.isRestrictedEdit) { // set api events for toolbar in the Restricted Editing mode
var toolbarController = application.getController('Toolbar');
toolbarController && toolbarController.setApi(me.api);
if (!this.appOptions.isEdit) return;
var statusbarController = application.getController('Statusbar'),
rightmenuController = application.getController('RightMenu'),
fontsControllers = application.getController('Common.Controllers.Fonts');
fontsControllers && fontsControllers.setApi(me.api);
toolbarController && toolbarController.setApi(me.api);
// statusbarController && statusbarController.setApi(me.api);
rightmenuController && rightmenuController.setApi(me.api);

View file

@ -676,9 +676,9 @@ define([
if (color.length) {
if (!tab.isActive()) {
color = '0px 3px 0 ' + Common.Utils.RGBColor(color).toRGBA(0.7) + ' inset';
color = '0px 4px 0 ' + Common.Utils.RGBColor(color).toRGBA(1) + ' inset';
} else {
color = '0px 3px 0 ' + color + ' inset';
color = '0px 4px 0 ' + color + ' inset';
}
tab.$el.find('a').css('box-shadow', color);

View file

@ -44,6 +44,7 @@ define([
'common/main/lib/view/CopyWarningDialog',
'common/main/lib/view/ImageFromUrlDialog',
'common/main/lib/view/SelectFileDlg',
'common/main/lib/view/SymbolTableDialog',
'common/main/lib/util/define',
'spreadsheeteditor/main/app/view/Toolbar',
'spreadsheeteditor/main/app/collection/TableTemplates',
@ -323,6 +324,7 @@ define([
toolbar.btnInsertText.on('click', _.bind(this.onBtnInsertTextClick, this));
toolbar.btnInsertShape.menu.on('hide:after', _.bind(this.onInsertShapeHide, this));
toolbar.btnInsertEquation.on('click', _.bind(this.onInsertEquationClick, this));
toolbar.btnInsertSymbol.on('click', _.bind(this.onInsertSymbolClick, this));
toolbar.btnTableTemplate.menu.on('show:after', _.bind(this.onTableTplMenuOpen, this));
toolbar.btnPercentStyle.on('click', _.bind(this.onNumberFormat, this));
toolbar.btnCurrencyStyle.on('click', _.bind(this.onNumberFormat, this));
@ -387,18 +389,21 @@ define([
this.api = api;
var config = SSE.getController('Main').appOptions;
if (config.isEdit) {
if ( !config.isEditDiagram && !config.isEditMailMerge ) {
this.api.asc_registerCallback('asc_onSendThemeColors', _.bind(this.onSendThemeColors, this));
this.api.asc_registerCallback('asc_onMathTypes', _.bind(this.onApiMathTypes, this));
this.api.asc_registerCallback('asc_onContextMenu', _.bind(this.onContextMenu, this));
}
this.api.asc_registerCallback('asc_onInitEditorStyles', _.bind(this.onApiInitEditorStyles, this));
this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onApiCoAuthoringDisconnect, this));
Common.NotificationCenter.on('api:disconnect', _.bind(this.onApiCoAuthoringDisconnect, this));
this.api.asc_registerCallback('asc_onLockDefNameManager', _.bind(this.onLockDefNameManager, this));
this.api.asc_registerCallback('asc_onZoomChanged', _.bind(this.onApiZoomChange, this));
Common.NotificationCenter.on('fonts:change', _.bind(this.onApiChangeFont, this));
} else if (config.isRestrictedEdit)
this.api.asc_registerCallback('asc_onSelectionChanged', _.bind(this.onApiSelectionChangedRestricted, this));
},
// onNewDocument: function(btn, e) {
@ -2427,6 +2432,13 @@ define([
toolbar.lockToolbar(SSE.enumLock.headerLock, info.asc_getLockedHeaderFooter(), {array: this.toolbar.btnsEditHeader});
},
onApiSelectionChangedRestricted: function(info) {
var selectionType = info.asc_getFlags().asc_getSelectionType();
this.toolbar.lockToolbar(SSE.enumLock.commentLock, (selectionType == Asc.c_oAscSelectionType.RangeCells) && (info.asc_getComments().length>0 || info.asc_getLocked()) ||
this.appConfig && this.appConfig.compatibleFeatures && (selectionType != Asc.c_oAscSelectionType.RangeCells),
{ array: this.btnsComment });
},
onApiSelectionChanged_DiagramEditor: function(info) {
if ( !this.editMode || this.api.isCellEdited || this.api.isRangeSelection) return;
@ -2763,6 +2775,28 @@ define([
Common.NotificationCenter.trigger('edit:complete', this.toolbar, this.toolbar.btnInsertEquation);
},
onInsertSymbolClick: function() {
if (this.api) {
var me = this,
win = new Common.Views.SymbolTableDialog({
api: me.api,
lang: me.toolbar.mode.lang,
type: 1,
buttons: [{value: 'ok', caption: this.textInsert}, 'close'],
handler: function(dlg, result, settings) {
if (result == 'ok') {
me.api.pluginMethod_PasteHtml("<span style=\"font-family:'" + settings.font + "'\">" + settings.symbol + "</span>");
} else
Common.NotificationCenter.trigger('edit:complete', me.toolbar);
}
});
win.show();
win.on('symbol:dblclick', function(cmp, settings) {
me.api.pluginMethod_PasteHtml("<span style=\"font-family:'" + settings.font + "'\">" + settings.symbol + "</span>");
});
}
},
onApiMathTypes: function(equation) {
this._equationTemp = equation;
var me = this;
@ -3153,6 +3187,13 @@ define([
me.toolbar.render(_.extend({isCompactView: compactview}, config));
if ( !config.isEditDiagram && !config.isEditMailMerge ) {
var tab = {action: 'review', caption: me.toolbar.textTabCollaboration};
var $panel = me.getApplication().getController('Common.Controllers.ReviewChanges').createToolbarPanel();
if ($panel)
me.toolbar.addTab(tab, $panel, 6);
}
if ( config.isEdit ) {
me.toolbar.setMode(config);
@ -3180,19 +3221,14 @@ define([
Array.prototype.push.apply(me.toolbar.lockControls, formulatab.getButtons());
if ( !config.isOffline ) {
tab = {action: 'pivot', caption: me.textPivot};
$panel = me.getApplication().getController('PivotTable').createToolbarPanel();
var tab = {action: 'pivot', caption: me.textPivot};
var $panel = me.getApplication().getController('PivotTable').createToolbarPanel();
if ($panel) {
me.toolbar.addTab(tab, $panel, 5);
me.toolbar.setVisible('pivot', true);
}
}
var tab = {action: 'review', caption: me.toolbar.textTabCollaboration};
var $panel = me.getApplication().getController('Common.Controllers.ReviewChanges').createToolbarPanel();
if ( $panel )
me.toolbar.addTab(tab, $panel, 6);
if (!(config.customization && config.customization.compactHeader)) {
// hide 'print' and 'save' buttons group and next separator
me.toolbar.btnPrint.$el.parents('.group').hide().next().hide();
@ -3207,8 +3243,8 @@ define([
if ( config.isDesktopApp ) {
if ( config.canProtect ) {
tab = {action: 'protect', caption: me.toolbar.textTabProtect};
$panel = me.getApplication().getController('Common.Controllers.Protection').createToolbarPanel();
var tab = {action: 'protect', caption: me.toolbar.textTabProtect};
var $panel = me.getApplication().getController('Common.Controllers.Protection').createToolbarPanel();
if ($panel)
me.toolbar.addTab(tab, $panel, 7);
}
@ -3234,6 +3270,8 @@ define([
btn.on('click', function (btn, e) {
Common.NotificationCenter.trigger('app:comment:add', 'toolbar', me.api.asc_getCellInfo().asc_getFlags().asc_getSelectionType() != Asc.c_oAscSelectionType.RangeCells);
});
if (btn.cmpEl.closest('#review-changes-panel').length>0)
btn.setCaption(me.toolbar.capBtnAddComment);
}, this);
}
}
@ -3811,7 +3849,8 @@ define([
textPivot: 'Pivot Table',
txtTable_TableStyleMedium: 'Table Style Medium',
txtTable_TableStyleDark: 'Table Style Dark',
txtTable_TableStyleLight: 'Table Style Light'
txtTable_TableStyleLight: 'Table Style Light',
textInsert: 'Insert'
}, SSE.Controllers.Toolbar || {}));
});

View file

@ -142,6 +142,7 @@
<div class="separator long"></div>
<div class="group">
<span class="btn-slot text x-huge" id="slot-btn-insequation"></span>
<span class="btn-slot text x-huge" id="slot-btn-inssymbol"></span>
</div>
</section>
<section class="panel" data-tab="layout">

View file

@ -714,6 +714,14 @@ define([
menu : new Common.UI.Menu({cls: 'menu-shapes'})
});
me.btnInsertSymbol = new Common.UI.Button({
id: 'tlbtn-insertsymbol',
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'btn-symbol',
caption: me.capBtnInsSymbol,
lock: [_set.selImage, _set.selChart, _set.selShape, _set.editFormula, _set.selRangeEdit, _set.coAuth, _set.coAuthText, _set.lostConnect]
});
me.btnTableTemplate = new Common.UI.Button({
id : 'id-toolbar-btn-ttempl',
cls : 'btn-toolbar',
@ -1452,14 +1460,14 @@ define([
}
);
}
me.lockControls = [];
if (config.isEdit) {
me.lockControls = [
me.cmbFontName, me.cmbFontSize, me.btnIncFontSize, me.btnDecFontSize, me.btnBold,
me.btnItalic, me.btnUnderline, me.btnStrikeout, me.btnSubscript, me.btnTextColor, me.btnHorizontalAlign, me.btnAlignLeft,
me.btnAlignCenter,me.btnAlignRight,me.btnAlignJust, me.btnVerticalAlign, me.btnAlignTop,
me.btnAlignMiddle, me.btnAlignBottom, me.btnWrap, me.btnTextOrient, me.btnBackColor, me.btnInsertTable,
me.btnMerge, me.btnInsertFormula, me.btnNamedRange, me.btnIncDecimal, me.btnInsertShape, me.btnInsertEquation,
me.btnMerge, me.btnInsertFormula, me.btnNamedRange, me.btnIncDecimal, me.btnInsertShape, me.btnInsertEquation, me.btnInsertSymbol,
me.btnInsertText, me.btnInsertTextArt, me.btnSortUp, me.btnSortDown, me.btnSetAutofilter, me.btnClearAutofilter,
me.btnTableTemplate, me.btnPercentStyle, me.btnCurrencyStyle, me.btnDecDecimal, me.btnAddCell, me.btnDeleteCell,
me.cmbNumberFormat, me.btnBorders, me.btnInsertImage, me.btnInsertHyperlink,
@ -1635,6 +1643,7 @@ define([
_injectComponent('#slot-btn-instext', this.btnInsertText);
_injectComponent('#slot-btn-instextart', this.btnInsertTextArt);
_injectComponent('#slot-btn-insequation', this.btnInsertEquation);
_injectComponent('#slot-btn-inssymbol', this.btnInsertSymbol);
_injectComponent('#slot-btn-sortdesc', this.btnSortDown);
_injectComponent('#slot-btn-sortasc', this.btnSortUp);
_injectComponent('#slot-btn-setfilter', this.btnSetAutofilter);
@ -1717,6 +1726,7 @@ define([
_updateHint(this.btnInsertHyperlink, this.tipInsertHyperlink + Common.Utils.String.platformKey('Ctrl+K'));
_updateHint(this.btnInsertShape, this.tipInsertShape);
_updateHint(this.btnInsertEquation, this.tipInsertEquation);
_updateHint(this.btnInsertSymbol, this.tipInsertSymbol);
_updateHint(this.btnSortDown, this.txtSortAZ);
_updateHint(this.btnSortUp, this.txtSortZA);
_updateHint(this.btnSetAutofilter, this.txtFilter + ' (Ctrl+Shift+L)');
@ -2520,6 +2530,9 @@ define([
textManyPages: 'pages',
textHeight: 'Height',
textWidth: 'Width',
textMorePages: 'More pages'
textMorePages: 'More pages',
capBtnAddComment: 'Add Comment',
capBtnInsSymbol: 'Symbol',
tipInsertSymbol: 'Insert symbol'
}, SSE.Views.Toolbar || {}));
});

View file

@ -178,6 +178,13 @@
"Common.Views.ReviewChanges.txtSpelling": "Spell Checking",
"Common.Views.ReviewChanges.txtTurnon": "Track Changes",
"Common.Views.ReviewChanges.txtView": "Display Mode",
"Common.Views.ReviewChanges.txtCommentRemove": "Remove",
"Common.Views.ReviewChanges.tipCommentRemCurrent": "Remove current comments",
"Common.Views.ReviewChanges.tipCommentRem": "Remove comments",
"Common.Views.ReviewChanges.txtCommentRemCurrent": "Remove Current Comments",
"Common.Views.ReviewChanges.txtCommentRemMyCurrent": "Remove My Current Comments",
"Common.Views.ReviewChanges.txtCommentRemMy": "Remove My Comments",
"Common.Views.ReviewChanges.txtCommentRemAll": "Remove All Comments",
"Common.Views.ReviewPopover.textAdd": "Add",
"Common.Views.ReviewPopover.textAddReply": "Add Reply",
"Common.Views.ReviewPopover.textCancel": "Cancel",
@ -214,6 +221,11 @@
"Common.Views.SignSettingsDialog.textShowDate": "Show sign date in signature line",
"Common.Views.SignSettingsDialog.textTitle": "Signature Setup",
"Common.Views.SignSettingsDialog.txtEmpty": "This field is required",
"Common.Views.SymbolTableDialog.textTitle": "Symbol",
"Common.Views.SymbolTableDialog.textFont": "Font",
"Common.Views.SymbolTableDialog.textRange": "Range",
"Common.Views.SymbolTableDialog.textRecent": "Recently used symbols",
"Common.Views.SymbolTableDialog.textCode": "Unicode HEX value",
"SSE.Controllers.DataTab.textWizard": "Text to Columns",
"SSE.Controllers.DocumentHolder.alignmentText": "Alignment",
"SSE.Controllers.DocumentHolder.centerText": "Center",
@ -1098,6 +1110,7 @@
"SSE.Controllers.Toolbar.txtTable_TableStyleMedium": "Table Style Medium",
"SSE.Controllers.Toolbar.warnLongOperation": "The operation you are about to perform might take rather much time to complete.<br>Are you sure you want to continue?",
"SSE.Controllers.Toolbar.warnMergeLostData": "Only the data from the upper-left cell will remain in the merged cell. <br>Are you sure you want to continue?",
"SSE.Controllers.Toolbar.textInsert": "Insert",
"SSE.Controllers.Viewport.textFreezePanes": "Freeze Panes",
"SSE.Controllers.Viewport.textHideFBar": "Hide Formula Bar",
"SSE.Controllers.Viewport.textHideGridlines": "Hide Gridlines",
@ -2200,6 +2213,7 @@
"SSE.Views.TextArtSettings.txtNoBorders": "No Line",
"SSE.Views.TextArtSettings.txtPapyrus": "Papyrus",
"SSE.Views.TextArtSettings.txtWood": "Wood",
"SSE.Views.Toolbar.capBtnAddComment": "Add Comment",
"SSE.Views.Toolbar.capBtnComment": "Comment",
"SSE.Views.Toolbar.capBtnInsHeader": "Header/Footer",
"SSE.Views.Toolbar.capBtnMargins": "Margins",
@ -2437,6 +2451,8 @@
"SSE.Views.Toolbar.txtTime": "Time",
"SSE.Views.Toolbar.txtUnmerge": "Unmerge Cells",
"SSE.Views.Toolbar.txtYen": "¥ Yen",
"SSE.Views.Toolbar.capBtnInsSymbol": "Symbol",
"SSE.Views.Toolbar.tipInsertSymbol": "Insert symbol",
"SSE.Views.Top10FilterDialog.textType": "Show",
"SSE.Views.Top10FilterDialog.txtBottom": "Bottom",
"SSE.Views.Top10FilterDialog.txtItems": "Item",

View file

@ -115,6 +115,7 @@
@import "../../../../common/main/resources/less/toolbar.less";
@import "../../../../common/main/resources/less/language-dialog.less";
@import "../../../../common/main/resources/less/winxp_fix.less";
@import "../../../../common/main/resources/less/symboltable.less";
// App
// --------------------------------------------------

View file

@ -188,7 +188,7 @@
background-color: @body-bg;
outline: none;
box-shadow: 0px 2px 0 @gray-deep inset;
box-shadow: 0px 4px 0 #49795d inset;
border-top-width: 0;
font-weight: bold;
}
@ -198,7 +198,7 @@
> a {
border-bottom-color: @body-bg;
background-color: @body-bg;
box-shadow: 0px 2px 0 @gray-deep inset;
box-shadow: 0px 4px 0 #49795d inset;
}
}

View file

@ -16,6 +16,8 @@
"cwd": "../../sdkjs/common/",
"src": [
"Images/*",
"Images/placeholders/*",
"Images/content_controls/*",
"Native/*.js",
"libfont/js/fonts.*",
"libfont/wasm/fonts.*"

View file

@ -151,6 +151,12 @@
"cwd": "../apps/documenteditor/main/resources/watermark",
"src": "*",
"dest": "../deploy/web-apps/apps/documenteditor/main/resources/watermark"
},
{
"expand": true,
"cwd": "../apps/common/main/resources/symboltable",
"src": "*",
"dest": "../deploy/web-apps/apps/documenteditor/main/resources/symboltable"
}
],
"help": [

View file

@ -145,6 +145,12 @@
"cwd": "../apps/presentationeditor/main/locale/",
"src": "*",
"dest": "../deploy/web-apps/apps/presentationeditor/main/locale/"
},
{
"expand": true,
"cwd": "../apps/common/main/resources/symboltable",
"src": "*",
"dest": "../deploy/web-apps/apps/presentationeditor/main/resources/symboltable"
}
],
"help": [

View file

@ -159,6 +159,12 @@
"cwd": "../apps/spreadsheeteditor/main/resources/formula-lang",
"src": "*",
"dest": "../deploy/web-apps/apps/spreadsheeteditor/main/resources/formula-lang"
},
{
"expand": true,
"cwd": "../apps/common/main/resources/symboltable",
"src": "*",
"dest": "../deploy/web-apps/apps/spreadsheeteditor/main/resources/symboltable"
}
],
"help": [