35077 lines
1.3 MiB
35077 lines
1.3 MiB
/*
|
||
* Copyright (C) Ascensio System SIA 2012-2019. All rights reserved
|
||
*
|
||
* https://www.onlyoffice.com/
|
||
*
|
||
* Version: 0.0.0 (build:0)
|
||
*/
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
(
|
||
/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function (window, undefined) {
|
||
var AscBrowser = {
|
||
userAgent : "",
|
||
isIE : false,
|
||
isMacOs : false,
|
||
isSafariMacOs : false,
|
||
isAppleDevices : false,
|
||
isAndroid : false,
|
||
isMobile : false,
|
||
isGecko : false,
|
||
isChrome : false,
|
||
isOpera : false,
|
||
isWebkit : false,
|
||
isSafari : false,
|
||
isArm : false,
|
||
isMozilla : false,
|
||
isRetina : false,
|
||
isLinuxOS : false,
|
||
retinaPixelRatio : 1,
|
||
isVivaldiLinux : false
|
||
};
|
||
|
||
// user agent lower case
|
||
AscBrowser.userAgent = navigator.userAgent.toLowerCase();
|
||
|
||
// ie detect
|
||
AscBrowser.isIE = (AscBrowser.userAgent.indexOf("msie") > -1 ||
|
||
AscBrowser.userAgent.indexOf("trident") > -1 ||
|
||
AscBrowser.userAgent.indexOf("edge") > -1);
|
||
|
||
AscBrowser.isIeEdge = (AscBrowser.userAgent.indexOf("edge/") > -1);
|
||
|
||
AscBrowser.isIE9 = (AscBrowser.userAgent.indexOf("msie9") > -1 || AscBrowser.userAgent.indexOf("msie 9") > -1);
|
||
AscBrowser.isIE10 = (AscBrowser.userAgent.indexOf("msie10") > -1 || AscBrowser.userAgent.indexOf("msie 10") > -1);
|
||
|
||
// macOs detect
|
||
AscBrowser.isMacOs = (AscBrowser.userAgent.indexOf('mac') > -1);
|
||
|
||
// chrome detect
|
||
AscBrowser.isChrome = !AscBrowser.isIE && (AscBrowser.userAgent.indexOf("chrome") > -1);
|
||
|
||
// safari detect
|
||
AscBrowser.isSafari = !AscBrowser.isIE && !AscBrowser.isChrome && (AscBrowser.userAgent.indexOf("safari") > -1);
|
||
|
||
// macOs safari detect
|
||
AscBrowser.isSafariMacOs = (AscBrowser.isSafari && AscBrowser.isMacOs);
|
||
|
||
// apple devices detect
|
||
AscBrowser.isAppleDevices = (AscBrowser.userAgent.indexOf("ipad") > -1 ||
|
||
AscBrowser.userAgent.indexOf("iphone") > -1 ||
|
||
AscBrowser.userAgent.indexOf("ipod") > -1);
|
||
|
||
// android devices detect
|
||
AscBrowser.isAndroid = (AscBrowser.userAgent.indexOf("android") > -1);
|
||
|
||
// mobile detect
|
||
AscBrowser.isMobile = /android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent || navigator.vendor || window.opera);
|
||
|
||
// gecko detect
|
||
AscBrowser.isGecko = (AscBrowser.userAgent.indexOf("gecko/") > -1);
|
||
|
||
// opera detect
|
||
AscBrowser.isOpera = (!!window.opera || AscBrowser.userAgent.indexOf("opr/") > -1);
|
||
|
||
// webkit detect
|
||
AscBrowser.isWebkit = !AscBrowser.isIE && (AscBrowser.userAgent.indexOf("webkit") > -1);
|
||
|
||
// arm detect
|
||
AscBrowser.isArm = (AscBrowser.userAgent.indexOf("arm") > -1);
|
||
|
||
AscBrowser.isMozilla = !AscBrowser.isIE && (AscBrowser.userAgent.indexOf("firefox") > -1);
|
||
|
||
AscBrowser.isLinuxOS = (AscBrowser.userAgent.indexOf(" linux ") > -1);
|
||
|
||
AscBrowser.isVivaldiLinux = AscBrowser.isLinuxOS && (AscBrowser.userAgent.indexOf("vivaldi") > -1);
|
||
|
||
AscBrowser.zoom = 1;
|
||
|
||
AscBrowser.checkZoom = function()
|
||
{
|
||
if (AscBrowser.isAndroid)
|
||
{
|
||
AscBrowser.isRetina = (window.devicePixelRatio >= 1.9);
|
||
AscBrowser.retinaPixelRatio = window.devicePixelRatio;
|
||
return;
|
||
}
|
||
|
||
AscBrowser.zoom = 1.0;
|
||
AscBrowser.isRetina = false;
|
||
AscBrowser.retinaPixelRatio = 1;
|
||
|
||
if (AscBrowser.isChrome && !AscBrowser.isOpera && !AscBrowser.isMobile && document && document.firstElementChild && document.body)
|
||
{
|
||
if (false)
|
||
{
|
||
// этот код - рабочий, но только если этот ифрейм открыт на весь размер браузера
|
||
// (window.outerWidth и window.innerWidth зависимы)
|
||
if (window.innerWidth > 300)
|
||
AscBrowser.zoom = window.outerWidth / window.innerWidth;
|
||
|
||
if (Math.abs(AscBrowser.zoom - 1) < 0.1)
|
||
AscBrowser.zoom = 1;
|
||
|
||
AscBrowser.zoom = window.outerWidth / window.innerWidth;
|
||
|
||
var _devicePixelRatio = window.devicePixelRatio / AscBrowser.zoom;
|
||
|
||
// device pixel ratio: кратно 0.5
|
||
_devicePixelRatio = (5 * (((2.5 + 10 * _devicePixelRatio) / 5) >> 0)) / 10;
|
||
|
||
AscBrowser.zoom = window.devicePixelRatio / _devicePixelRatio;
|
||
if (2 == _devicePixelRatio)
|
||
AscBrowser.isRetina = true;
|
||
|
||
// chrome 54.x: zoom = "reset" - clear retina zoom (windows)
|
||
//document.firstElementChild.style.zoom = "reset";
|
||
document.firstElementChild.style.zoom = 1.0 / AscBrowser.zoom;
|
||
}
|
||
else
|
||
{
|
||
// делаем простую проверку
|
||
// считаем: 0 < window.devicePixelRatio < 2 => _devicePixelRatio = 1; zoom = window.devicePixelRatio / _devicePixelRatio;
|
||
// считаем: window.devicePixelRatio >= 2 => _devicePixelRatio = 2; zoom = window.devicePixelRatio / _devicePixelRatio;
|
||
if (window.devicePixelRatio > 0.1)
|
||
{
|
||
if (window.devicePixelRatio < 1.99)
|
||
{
|
||
var _devicePixelRatio = 1;
|
||
AscBrowser.zoom = window.devicePixelRatio / _devicePixelRatio;
|
||
}
|
||
else
|
||
{
|
||
var _devicePixelRatio = 2;
|
||
AscBrowser.zoom = window.devicePixelRatio / _devicePixelRatio;
|
||
AscBrowser.isRetina = true;
|
||
}
|
||
// chrome 54.x: zoom = "reset" - clear retina zoom (windows)
|
||
//document.firstElementChild.style.zoom = "reset";
|
||
document.firstElementChild.style.zoom = 1.0 / AscBrowser.zoom;
|
||
}
|
||
else
|
||
document.firstElementChild.style.zoom = "normal";
|
||
}
|
||
|
||
if (AscBrowser.isRetina)
|
||
AscBrowser.retinaPixelRatio = 2;
|
||
}
|
||
else
|
||
{
|
||
AscBrowser.isRetina = (Math.abs(2 - (window.devicePixelRatio / AscBrowser.zoom)) < 0.01);
|
||
if (AscBrowser.isRetina)
|
||
AscBrowser.retinaPixelRatio = 2;
|
||
|
||
if (AscBrowser.isMobile)
|
||
{
|
||
AscBrowser.isRetina = (window.devicePixelRatio >= 1.9);
|
||
AscBrowser.retinaPixelRatio = window.devicePixelRatio;
|
||
}
|
||
}
|
||
};
|
||
|
||
AscBrowser.checkZoom();
|
||
|
||
AscBrowser.convertToRetinaValue = function(value, isScale)
|
||
{
|
||
if (isScale === true)
|
||
return ((value * AscBrowser.retinaPixelRatio) + 0.5) >> 0;
|
||
else
|
||
return ((value / AscBrowser.retinaPixelRatio) + 0.5) >> 0;
|
||
};
|
||
|
||
//--------------------------------------------------------export----------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].AscBrowser = AscBrowser;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function(window, undefined)
|
||
{
|
||
var g_cCharDelimiter = String.fromCharCode(5);
|
||
var g_cGeneralFormat = 'General';
|
||
var FONT_THUMBNAIL_HEIGHT = (7 * 96.0 / 25.4) >> 0;
|
||
var c_oAscMaxColumnWidth = 255;
|
||
var c_oAscMaxRowHeight = 409.5;
|
||
var c_nMaxConversionTime = 900000;//depends on config
|
||
var c_nMaxDownloadTitleLen= 255;
|
||
var c_nVersionNoBase64 = 10;
|
||
var c_dMaxParaRunContentLength = 256;
|
||
var c_rUneditableTypes = /^(?:(pdf|djvu|xps))$/;
|
||
|
||
//files type for Saving & DownloadAs
|
||
var c_oAscFileType = {
|
||
UNKNOWN : 0,
|
||
PDF : 0x0201,
|
||
PDFA : 0x0901,
|
||
HTML : 0x0803,
|
||
|
||
// Word
|
||
DOCX : 0x0041,
|
||
DOC : 0x0042,
|
||
ODT : 0x0043,
|
||
RTF : 0x0044,
|
||
TXT : 0x0045,
|
||
MHT : 0x0047,
|
||
EPUB : 0x0048,
|
||
FB2 : 0x0049,
|
||
MOBI : 0x004a,
|
||
DOCY : 0x1001,
|
||
CANVAS_WORD : 0x2001,
|
||
JSON : 0x0808, // Для mail-merge
|
||
|
||
// Excel
|
||
XLSX : 0x0101,
|
||
XLS : 0x0102,
|
||
ODS : 0x0103,
|
||
CSV : 0x0104,
|
||
XLSY : 0x1002,
|
||
|
||
// PowerPoint
|
||
PPTX : 0x0081,
|
||
PPT : 0x0082,
|
||
ODP : 0x0083
|
||
};
|
||
|
||
var c_oAscError = {
|
||
Level : {
|
||
Critical : -1,
|
||
NoCritical : 0
|
||
},
|
||
ID : {
|
||
ServerSaveComplete : 3,
|
||
ConvertationProgress : 2,
|
||
DownloadProgress : 1,
|
||
No : 0,
|
||
Unknown : -1,
|
||
ConvertationTimeout : -2,
|
||
|
||
DownloadError : -4,
|
||
UnexpectedGuid : -5,
|
||
Database : -6,
|
||
FileRequest : -7,
|
||
FileVKey : -8,
|
||
UplImageSize : -9,
|
||
UplImageExt : -10,
|
||
UplImageFileCount : -11,
|
||
NoSupportClipdoard : -12,
|
||
UplImageUrl : -13,
|
||
|
||
|
||
MaxDataPointsError : -16,
|
||
StockChartError : -17,
|
||
CoAuthoringDisconnect : -18,
|
||
ConvertationPassword : -19,
|
||
VKeyEncrypt : -20,
|
||
KeyExpire : -21,
|
||
UserCountExceed : -22,
|
||
AccessDeny : -23,
|
||
LoadingScriptError : -24,
|
||
|
||
SplitCellMaxRows : -30,
|
||
SplitCellMaxCols : -31,
|
||
SplitCellRowsDivider : -32,
|
||
|
||
MobileUnexpectedCharCount : -35,
|
||
|
||
// Mail Merge
|
||
MailMergeLoadFile : -40,
|
||
MailMergeSaveFile : -41,
|
||
|
||
// for AutoFilter
|
||
AutoFilterDataRangeError : -50,
|
||
AutoFilterChangeFormatTableError : -51,
|
||
AutoFilterChangeError : -52,
|
||
AutoFilterMoveToHiddenRangeError : -53,
|
||
LockedAllError : -54,
|
||
LockedWorksheetRename : -55,
|
||
FTChangeTableRangeError : -56,
|
||
FTRangeIncludedOtherTables : -57,
|
||
|
||
PasteMaxRangeError : -64,
|
||
PastInMergeAreaError : -65,
|
||
CopyMultiselectAreaError : -66,
|
||
|
||
DataRangeError : -72,
|
||
CannotMoveRange : -71,
|
||
|
||
MaxDataSeriesError : -80,
|
||
CannotFillRange : -81,
|
||
|
||
ConvertationOpenError : -82,
|
||
ConvertationSaveError : -83,
|
||
|
||
UserDrop : -100,
|
||
Warning : -101,
|
||
|
||
PrintMaxPagesCount : -110,
|
||
|
||
SessionAbsolute: -120,
|
||
SessionIdle: -121,
|
||
SessionToken: -122,
|
||
|
||
/* для формул */
|
||
FrmlWrongCountParentheses : -300,
|
||
FrmlWrongOperator : -301,
|
||
FrmlWrongMaxArgument : -302,
|
||
FrmlWrongCountArgument : -303,
|
||
FrmlWrongFunctionName : -304,
|
||
FrmlAnotherParsingError : -305,
|
||
FrmlWrongArgumentRange : -306,
|
||
FrmlOperandExpected : -307,
|
||
FrmlParenthesesCorrectCount : -308,
|
||
FrmlWrongReferences : -309,
|
||
|
||
InvalidReferenceOrName : -310,
|
||
LockCreateDefName : -311,
|
||
|
||
LockedCellPivot : -312,
|
||
|
||
ForceSaveButton: -331,
|
||
ForceSaveTimeout: -332,
|
||
|
||
OpenWarning : 500,
|
||
|
||
DataEncrypted : -600,
|
||
}
|
||
};
|
||
|
||
var c_oAscAsyncAction = {
|
||
Open : 0, // открытие документа
|
||
Save : 1, // сохранение
|
||
LoadDocumentFonts : 2, // загружаем фонты документа (сразу после открытия)
|
||
LoadDocumentImages : 3, // загружаем картинки документа (сразу после загрузки шрифтов)
|
||
LoadFont : 4, // подгрузка нужного шрифта
|
||
LoadImage : 5, // подгрузка картинки
|
||
DownloadAs : 6, // cкачать
|
||
Print : 7, // конвертация в PDF и сохранение у пользователя
|
||
UploadImage : 8, // загрузка картинки
|
||
|
||
ApplyChanges : 9, // применение изменений от другого пользователя.
|
||
|
||
SlowOperation : 11, // медленная операция
|
||
LoadTheme : 12, // загрузка темы
|
||
MailMergeLoadFile : 13, // загрузка файла для mail merge
|
||
DownloadMerge : 14, // cкачать файл с mail merge
|
||
SendMailMerge : 15, // рассылка mail merge по почте
|
||
ForceSaveButton : 16,
|
||
ForceSaveTimeout : 17
|
||
};
|
||
|
||
var c_oAscAdvancedOptionsID = {
|
||
CSV : 0,
|
||
TXT : 1,
|
||
DRM : 2
|
||
};
|
||
|
||
var c_oAscAdvancedOptionsAction = {
|
||
None : 0,
|
||
Open : 1,
|
||
Save : 2
|
||
};
|
||
|
||
var c_oAscRestrictionType = {
|
||
None : 0,
|
||
OnlyForms : 1,
|
||
OnlyComments : 2,
|
||
OnlySignatures : 3,
|
||
View : 0xFF // Отличие данного ограничения от обычного ViewMode в том, что редактор открывается
|
||
// как полноценный редактор, просто мы запрещаем ЛЮБОЕ редактирование. А во ViewMode
|
||
// открывается именно просмотрщик.
|
||
};
|
||
|
||
// Режимы отрисовки
|
||
var c_oAscFontRenderingModeType = {
|
||
noHinting : 1,
|
||
hinting : 2,
|
||
hintingAndSubpixeling : 3
|
||
};
|
||
|
||
var c_oAscAsyncActionType = {
|
||
Information : 0,
|
||
BlockInteraction : 1
|
||
};
|
||
|
||
var DownloadType = {
|
||
None : '',
|
||
Download : 'asc_onDownloadUrl',
|
||
Print : 'asc_onPrintUrl',
|
||
MailMerge : 'asc_onSaveMailMerge'
|
||
};
|
||
|
||
var CellValueType = {
|
||
Number : 0,
|
||
String : 1,
|
||
Bool : 2,
|
||
Error : 3
|
||
};
|
||
|
||
/**
|
||
* NumFormat defines
|
||
* @enum {number}
|
||
*/
|
||
var c_oAscNumFormatType = {
|
||
None : -1,
|
||
General : 0,
|
||
Number : 1,
|
||
Scientific : 2,
|
||
Accounting : 3,
|
||
Currency : 4,
|
||
Date : 5,
|
||
Time : 6,
|
||
Percent : 7,
|
||
Fraction : 8,
|
||
Text : 9,
|
||
Custom : 10
|
||
};
|
||
|
||
var c_oAscDrawingLayerType = {
|
||
BringToFront : 0,
|
||
SendToBack : 1,
|
||
BringForward : 2,
|
||
SendBackward : 3
|
||
};
|
||
|
||
var c_oAscCellAnchorType = {
|
||
cellanchorAbsolute : 0,
|
||
cellanchorOneCell : 1,
|
||
cellanchorTwoCell : 2
|
||
};
|
||
|
||
var c_oAscChartDefines = {
|
||
defaultChartWidth : 478,
|
||
defaultChartHeight : 286
|
||
};
|
||
|
||
var c_oAscStyleImage = {
|
||
Default : 0,
|
||
Document : 1
|
||
};
|
||
|
||
var c_oAscTypeSelectElement = {
|
||
Paragraph : 0,
|
||
Table : 1,
|
||
Image : 2,
|
||
Header : 3,
|
||
Hyperlink : 4,
|
||
SpellCheck : 5,
|
||
Shape : 6,
|
||
Slide : 7,
|
||
Chart : 8,
|
||
Math : 9,
|
||
MailMerge : 10,
|
||
ContentControl : 11
|
||
};
|
||
|
||
var c_oAscLineDrawingRule = {
|
||
Left : 0,
|
||
Center : 1,
|
||
Right : 2,
|
||
Top : 0,
|
||
Bottom : 2
|
||
};
|
||
|
||
var align_Right = 0;
|
||
var align_Left = 1;
|
||
var align_Center = 2;
|
||
var align_Justify = 3;
|
||
|
||
|
||
var linerule_AtLeast = 0x00;
|
||
var linerule_Auto = 0x01;
|
||
var linerule_Exact = 0x02;
|
||
|
||
var c_oAscShdClear = 0;
|
||
var c_oAscShdNil = 1;
|
||
|
||
var vertalign_Baseline = 0;
|
||
var vertalign_SuperScript = 1;
|
||
var vertalign_SubScript = 2;
|
||
var hdrftr_Header = 0x01;
|
||
var hdrftr_Footer = 0x02;
|
||
|
||
var c_oAscDropCap = {
|
||
None : 0x00,
|
||
Drop : 0x01,
|
||
Margin : 0x02
|
||
};
|
||
|
||
|
||
var c_oAscChartTitleShowSettings = {
|
||
none : 0,
|
||
overlay : 1,
|
||
noOverlay : 2
|
||
};
|
||
|
||
var c_oAscChartHorAxisLabelShowSettings = {
|
||
none : 0,
|
||
noOverlay : 1
|
||
};
|
||
|
||
var c_oAscChartVertAxisLabelShowSettings = {
|
||
none : 0,
|
||
rotated : 1,
|
||
vertical : 2,
|
||
horizontal : 3
|
||
};
|
||
|
||
var c_oAscChartLegendShowSettings = {
|
||
none : 0,
|
||
left : 1,
|
||
top : 2,
|
||
right : 3,
|
||
bottom : 4,
|
||
leftOverlay : 5,
|
||
rightOverlay : 6,
|
||
layout : 7,
|
||
topRight : 8 // ToDo добавить в меню
|
||
};
|
||
|
||
var c_oAscChartDataLabelsPos = {
|
||
none : 0,
|
||
b : 1,
|
||
bestFit : 2,
|
||
ctr : 3,
|
||
inBase : 4,
|
||
inEnd : 5,
|
||
l : 6,
|
||
outEnd : 7,
|
||
r : 8,
|
||
t : 9
|
||
};
|
||
|
||
var c_oAscChartCatAxisSettings = {
|
||
none : 0,
|
||
leftToRight : 1,
|
||
rightToLeft : 2,
|
||
noLabels : 3
|
||
};
|
||
|
||
var c_oAscChartValAxisSettings = {
|
||
none : 0,
|
||
byDefault : 1,
|
||
thousands : 2,
|
||
millions : 3,
|
||
billions : 4,
|
||
log : 5
|
||
};
|
||
|
||
var c_oAscAxisTypeSettings = {
|
||
vert : 0,
|
||
hor : 1
|
||
};
|
||
|
||
var c_oAscGridLinesSettings = {
|
||
none : 0,
|
||
major : 1,
|
||
minor : 2,
|
||
majorMinor : 3
|
||
};
|
||
|
||
|
||
var c_oAscChartTypeSettings = {
|
||
barNormal : 0,
|
||
barStacked : 1,
|
||
barStackedPer : 2,
|
||
barNormal3d : 3,
|
||
barStacked3d : 4,
|
||
barStackedPer3d : 5,
|
||
barNormal3dPerspective : 6,
|
||
lineNormal : 7,
|
||
lineStacked : 8,
|
||
lineStackedPer : 9,
|
||
lineNormalMarker : 10,
|
||
lineStackedMarker : 11,
|
||
lineStackedPerMarker : 12,
|
||
line3d : 13,
|
||
pie : 14,
|
||
pie3d : 15,
|
||
hBarNormal : 16,
|
||
hBarStacked : 17,
|
||
hBarStackedPer : 18,
|
||
hBarNormal3d : 19,
|
||
hBarStacked3d : 20,
|
||
hBarStackedPer3d : 21,
|
||
areaNormal : 22,
|
||
areaStacked : 23,
|
||
areaStackedPer : 24,
|
||
doughnut : 25,
|
||
stock : 26,
|
||
scatter : 27,
|
||
scatterLine : 28,
|
||
scatterLineMarker : 29,
|
||
scatterMarker : 30,
|
||
scatterNone : 31,
|
||
scatterSmooth : 32,
|
||
scatterSmoothMarker : 33,
|
||
surfaceNormal : 34,
|
||
surfaceWireframe : 35,
|
||
contourNormal : 36,
|
||
contourWireframe : 37,
|
||
unknown : 38
|
||
};
|
||
|
||
|
||
var c_oAscValAxisRule = {
|
||
auto : 0,
|
||
fixed : 1
|
||
};
|
||
|
||
var c_oAscValAxUnits = {
|
||
none : 0,
|
||
BILLIONS : 1,
|
||
HUNDRED_MILLIONS : 2,
|
||
HUNDREDS : 3,
|
||
HUNDRED_THOUSANDS : 4,
|
||
MILLIONS : 5,
|
||
TEN_MILLIONS : 6,
|
||
TEN_THOUSANDS : 7,
|
||
TRILLIONS : 8,
|
||
CUSTOM : 9,
|
||
THOUSANDS : 10
|
||
|
||
};
|
||
|
||
var c_oAscTickMark = {
|
||
TICK_MARK_CROSS : 0,
|
||
TICK_MARK_IN : 1,
|
||
TICK_MARK_NONE : 2,
|
||
TICK_MARK_OUT : 3
|
||
};
|
||
|
||
var c_oAscTickLabelsPos = {
|
||
TICK_LABEL_POSITION_HIGH : 0,
|
||
TICK_LABEL_POSITION_LOW : 1,
|
||
TICK_LABEL_POSITION_NEXT_TO : 2,
|
||
TICK_LABEL_POSITION_NONE : 3
|
||
};
|
||
|
||
var c_oAscCrossesRule = {
|
||
auto : 0,
|
||
maxValue : 1,
|
||
value : 2,
|
||
minValue : 3
|
||
};
|
||
|
||
var c_oAscHorAxisType = {
|
||
auto : 0,
|
||
date : 1,
|
||
text : 2
|
||
};
|
||
|
||
var c_oAscBetweenLabelsRule = {
|
||
auto : 0,
|
||
manual : 1
|
||
};
|
||
|
||
var c_oAscLabelsPosition = {
|
||
byDivisions : 0,
|
||
betweenDivisions : 1
|
||
};
|
||
|
||
|
||
var c_oAscAxisType = {
|
||
auto : 0,
|
||
date : 1,
|
||
text : 2,
|
||
cat : 3,
|
||
val : 4
|
||
};
|
||
|
||
var c_oAscHAnchor = {
|
||
Margin : 0x00,
|
||
Page : 0x01,
|
||
Text : 0x02,
|
||
|
||
PageInternal : 0xFF // только для внутреннего использования
|
||
};
|
||
|
||
var c_oAscXAlign = {
|
||
Center : 0x00,
|
||
Inside : 0x01,
|
||
Left : 0x02,
|
||
Outside : 0x03,
|
||
Right : 0x04
|
||
};
|
||
var c_oAscYAlign = {
|
||
Bottom : 0x00,
|
||
Center : 0x01,
|
||
Inline : 0x02,
|
||
Inside : 0x03,
|
||
Outside : 0x04,
|
||
Top : 0x05
|
||
};
|
||
|
||
var c_oAscVAnchor = {
|
||
Margin : 0x00,
|
||
Page : 0x01,
|
||
Text : 0x02
|
||
};
|
||
|
||
var c_oAscRelativeFromH = {
|
||
Character : 0x00,
|
||
Column : 0x01,
|
||
InsideMargin : 0x02,
|
||
LeftMargin : 0x03,
|
||
Margin : 0x04,
|
||
OutsideMargin : 0x05,
|
||
Page : 0x06,
|
||
RightMargin : 0x07
|
||
};
|
||
|
||
var c_oAscSizeRelFromH = {
|
||
sizerelfromhMargin : 0,
|
||
sizerelfromhPage : 1,
|
||
sizerelfromhLeftMargin : 2,
|
||
sizerelfromhRightMargin : 3,
|
||
sizerelfromhInsideMargin : 4,
|
||
sizerelfromhOutsideMargin : 5
|
||
};
|
||
|
||
var c_oAscSizeRelFromV = {
|
||
sizerelfromvMargin : 0,
|
||
sizerelfromvPage : 1,
|
||
sizerelfromvTopMargin : 2,
|
||
sizerelfromvBottomMargin : 3,
|
||
sizerelfromvInsideMargin : 4,
|
||
sizerelfromvOutsideMargin : 5
|
||
};
|
||
|
||
var c_oAscRelativeFromV = {
|
||
BottomMargin : 0x00,
|
||
InsideMargin : 0x01,
|
||
Line : 0x02,
|
||
Margin : 0x03,
|
||
OutsideMargin : 0x04,
|
||
Page : 0x05,
|
||
Paragraph : 0x06,
|
||
TopMargin : 0x07
|
||
};
|
||
|
||
// image wrap style
|
||
var c_oAscWrapStyle = {
|
||
Inline : 0,
|
||
Flow : 1
|
||
};
|
||
|
||
// Толщина бордера
|
||
var c_oAscBorderWidth = {
|
||
None : 0, // 0px
|
||
Thin : 1, // 1px
|
||
Medium : 2, // 2px
|
||
Thick : 3 // 3px
|
||
};
|
||
/**
|
||
* Располагаются в порядке значимости для отрисовки
|
||
* @enum {number}
|
||
*/
|
||
var c_oAscBorderStyles = {
|
||
None : 0,
|
||
Double : 1,
|
||
Hair : 2,
|
||
DashDotDot : 3,
|
||
DashDot : 4,
|
||
Dotted : 5,
|
||
Dashed : 6,
|
||
Thin : 7,
|
||
MediumDashDotDot : 8,
|
||
SlantDashDot : 9,
|
||
MediumDashDot : 10,
|
||
MediumDashed : 11,
|
||
Medium : 12,
|
||
Thick : 13
|
||
};
|
||
var c_oAscBorderType = {
|
||
Hor : 1,
|
||
Ver : 2,
|
||
Diag : 3
|
||
};
|
||
// PageOrientation
|
||
var c_oAscPageOrientation = {
|
||
PagePortrait : 0x00,
|
||
PageLandscape : 0x01
|
||
};
|
||
/**
|
||
* lock types
|
||
* @const
|
||
*/
|
||
var c_oAscLockTypes = {
|
||
kLockTypeNone : 1, // никто не залочил данный объект
|
||
kLockTypeMine : 2, // данный объект залочен текущим пользователем
|
||
kLockTypeOther : 3, // данный объект залочен другим(не текущим) пользователем
|
||
kLockTypeOther2 : 4, // данный объект залочен другим(не текущим) пользователем (обновления уже пришли)
|
||
kLockTypeOther3 : 5 // данный объект был залочен (обновления пришли) и снова стал залочен
|
||
};
|
||
|
||
var c_oAscFormatPainterState = {
|
||
kOff : 0,
|
||
kOn : 1,
|
||
kMultiple : 2
|
||
};
|
||
|
||
var c_oAscSaveTypes = {
|
||
PartStart : 0,
|
||
Part : 1,
|
||
Complete : 2,
|
||
CompleteAll : 3
|
||
};
|
||
|
||
var c_oAscColor = {
|
||
COLOR_TYPE_NONE : 0,
|
||
COLOR_TYPE_SRGB : 1,
|
||
COLOR_TYPE_PRST : 2,
|
||
COLOR_TYPE_SCHEME : 3,
|
||
COLOR_TYPE_SYS : 4
|
||
};
|
||
|
||
var c_oAscFill = {
|
||
FILL_TYPE_NONE : 0,
|
||
FILL_TYPE_BLIP : 1,
|
||
FILL_TYPE_NOFILL : 2,
|
||
FILL_TYPE_SOLID : 3,
|
||
FILL_TYPE_GRAD : 4,
|
||
FILL_TYPE_PATT : 5,
|
||
FILL_TYPE_GRP : 6
|
||
};
|
||
|
||
// Chart defines
|
||
var c_oAscChartType = {
|
||
line : "Line",
|
||
bar : "Bar",
|
||
hbar : "HBar",
|
||
area : "Area",
|
||
pie : "Pie",
|
||
scatter : "Scatter",
|
||
stock : "Stock",
|
||
doughnut : "Doughnut"
|
||
};
|
||
var c_oAscChartSubType = {
|
||
normal : "normal",
|
||
stacked : "stacked",
|
||
stackedPer : "stackedPer"
|
||
};
|
||
|
||
var c_oAscFillGradType = {
|
||
GRAD_LINEAR : 1,
|
||
GRAD_PATH : 2
|
||
};
|
||
var c_oAscFillBlipType = {
|
||
STRETCH : 1,
|
||
TILE : 2
|
||
};
|
||
var c_oAscStrokeType = {
|
||
STROKE_NONE : 0,
|
||
STROKE_COLOR : 1
|
||
};
|
||
|
||
var c_oAscVAlign = {
|
||
Bottom : 0, // (Text Anchor Enum ( Bottom ))
|
||
Center : 1, // (Text Anchor Enum ( Center ))
|
||
Dist : 2, // (Text Anchor Enum ( Distributed ))
|
||
Just : 3, // (Text Anchor Enum ( Justified ))
|
||
Top : 4 // Top
|
||
};
|
||
|
||
var c_oAscVertDrawingText = {
|
||
normal : 1,
|
||
vert : 3,
|
||
vert270 : 4
|
||
};
|
||
var c_oAscLineJoinType = {
|
||
Round : 1,
|
||
Bevel : 2,
|
||
Miter : 3
|
||
};
|
||
var c_oAscLineCapType = {
|
||
Flat : 0,
|
||
Round : 1,
|
||
Square : 2
|
||
};
|
||
var c_oAscLineBeginType = {
|
||
None : 0,
|
||
Arrow : 1,
|
||
Diamond : 2,
|
||
Oval : 3,
|
||
Stealth : 4,
|
||
Triangle : 5
|
||
};
|
||
var c_oAscLineBeginSize = {
|
||
small_small : 0,
|
||
small_mid : 1,
|
||
small_large : 2,
|
||
mid_small : 3,
|
||
mid_mid : 4,
|
||
mid_large : 5,
|
||
large_small : 6,
|
||
large_mid : 7,
|
||
large_large : 8
|
||
};
|
||
var c_oAscCsvDelimiter = {
|
||
None : 0,
|
||
Tab : 1,
|
||
Semicolon : 2,
|
||
Colon : 3,
|
||
Comma : 4,
|
||
Space : 5
|
||
};
|
||
var c_oAscUrlType = {
|
||
Invalid : 0,
|
||
Http : 1,
|
||
Email : 2
|
||
};
|
||
|
||
var c_oAscCellTextDirection = {
|
||
LRTB : 0x00,
|
||
TBRL : 0x01,
|
||
BTLR : 0x02
|
||
};
|
||
|
||
var c_oAscDocumentUnits = {
|
||
Millimeter : 0,
|
||
Inch : 1,
|
||
Point : 2
|
||
};
|
||
|
||
var c_oAscMouseMoveDataTypes = {
|
||
Common : 0,
|
||
Hyperlink : 1,
|
||
LockedObject : 2,
|
||
Footnote : 3
|
||
};
|
||
|
||
// selection type
|
||
var c_oAscSelectionType = {
|
||
RangeCells : 1,
|
||
RangeCol : 2,
|
||
RangeRow : 3,
|
||
RangeMax : 4,
|
||
RangeImage : 5,
|
||
RangeChart : 6,
|
||
RangeShape : 7,
|
||
RangeShapeText : 8,
|
||
RangeChartText : 9,
|
||
RangeFrozen : 10
|
||
};
|
||
var c_oAscInsertOptions = {
|
||
InsertCellsAndShiftRight : 1,
|
||
InsertCellsAndShiftDown : 2,
|
||
InsertColumns : 3,
|
||
InsertRows : 4,
|
||
InsertTableRowAbove : 5,
|
||
InsertTableRowBelow : 6,
|
||
InsertTableColLeft : 7,
|
||
InsertTableColRight : 8
|
||
};
|
||
|
||
var c_oAscDeleteOptions = {
|
||
DeleteCellsAndShiftLeft : 1,
|
||
DeleteCellsAndShiftTop : 2,
|
||
DeleteColumns : 3,
|
||
DeleteRows : 4,
|
||
DeleteTable : 5
|
||
};
|
||
|
||
|
||
// Print default options (in mm)
|
||
var c_oAscPrintDefaultSettings = {
|
||
// Размеры страницы при печати
|
||
PageWidth : 210,
|
||
PageHeight : 297,
|
||
PageOrientation : c_oAscPageOrientation.PagePortrait,
|
||
|
||
// Поля для страницы при печати
|
||
PageLeftField : 17.8,
|
||
PageRightField : 17.8,
|
||
PageTopField : 19.1,
|
||
PageBottomField : 19.1,
|
||
MinPageLeftField : 0.17,
|
||
MinPageRightField : 0.17,
|
||
MinPageTopField : 0.17,
|
||
MinPageBottomField : 0.17,
|
||
|
||
PageGridLines : 0,
|
||
PageHeadings : 0
|
||
};
|
||
|
||
var c_oZoomType = {
|
||
FitToPage : 1,
|
||
FitToWidth : 2,
|
||
CustomMode : 3
|
||
};
|
||
|
||
var c_oNotifyType = {
|
||
Dirty: 0,
|
||
Shift: 1,
|
||
Move: 2,
|
||
Delete: 3,
|
||
RenameTableColumn: 4,
|
||
ChangeDefName: 5,
|
||
ChangeSheet: 6,
|
||
DelColumnTable: 7,
|
||
Prepare: 8
|
||
};
|
||
|
||
var c_oNotifyParentType = {
|
||
Change: 0,
|
||
ChangeFormula: 1,
|
||
EndCalculate: 2,
|
||
GetRangeCell: 3,
|
||
IsDefName: 4,
|
||
Shared: 5
|
||
};
|
||
|
||
var c_oDashType = {
|
||
dash : 0,
|
||
dashDot : 1,
|
||
dot : 2,
|
||
lgDash : 3,
|
||
lgDashDot : 4,
|
||
lgDashDotDot : 5,
|
||
solid : 6,
|
||
sysDash : 7,
|
||
sysDashDot : 8,
|
||
sysDashDotDot : 9,
|
||
sysDot : 10
|
||
};
|
||
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceType = {
|
||
Common : 0x00,
|
||
Fraction : 0x01,
|
||
Script : 0x02,
|
||
Radical : 0x03,
|
||
LargeOperator : 0x04,
|
||
Delimiter : 0x05,
|
||
Function : 0x06,
|
||
Accent : 0x07,
|
||
BorderBox : 0x08,
|
||
Bar : 0x09,
|
||
Box : 0x0a,
|
||
Limit : 0x0b,
|
||
GroupChar : 0x0c,
|
||
Matrix : 0x0d,
|
||
EqArray : 0x0e,
|
||
Phantom : 0x0f
|
||
};
|
||
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceBarPos = {
|
||
Top : 0,
|
||
Bottom : 1
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceScript = {
|
||
None : 0x000, // Удаление скрипта
|
||
Sup : 0x001,
|
||
Sub : 0x002,
|
||
SubSup : 0x003,
|
||
PreSubSup : 0x004
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceFraction = {
|
||
Bar : 0x001,
|
||
Skewed : 0x002,
|
||
Linear : 0x003,
|
||
NoBar : 0x004
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceLimitPos = {
|
||
None : -1, // Удаление предела
|
||
Top : 0,
|
||
Bottom : 1
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceMatrixMatrixAlign = {
|
||
Top : 0,
|
||
Center : 1,
|
||
Bottom : 2
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceMatrixColumnAlign = {
|
||
Left : 0,
|
||
Center : 1,
|
||
Right : 2
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceEqArrayAlign = {
|
||
Top : 0,
|
||
Center : 1,
|
||
Bottom : 2
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceNaryLimitLocation = {
|
||
UndOvr : 0,
|
||
SubSup : 1
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscMathInterfaceGroupCharPos = {
|
||
None : -1, // Удаление GroupChar
|
||
Top : 0,
|
||
Bottom : 1
|
||
};
|
||
|
||
var c_oAscTabLeader = {
|
||
Dot : 0x00,
|
||
Heavy : 0x01,
|
||
Hyphen : 0x02,
|
||
MiddleDot : 0x03,
|
||
None : 0x04,
|
||
Underscore : 0x05
|
||
};
|
||
|
||
var c_oAscEncodings = [
|
||
[0, 28596, "ISO-8859-6", "Arabic (ISO 8859-6)"],
|
||
[1, 720, "DOS-720", "Arabic (OEM 720)"],
|
||
[2, 1256, "windows-1256", "Arabic (Windows)"],
|
||
|
||
[3, 28594, "ISO-8859-4", "Baltic (ISO 8859-4)"],
|
||
[4, 28603, "ISO-8859-13", "Baltic (ISO 8859-13)"],
|
||
[5, 775, "IBM775", "Baltic (OEM 775)"],
|
||
[6, 1257, "windows-1257", "Baltic (Windows)"],
|
||
|
||
[7, 28604, "ISO-8859-14", "Celtic (ISO 8859-14)"],
|
||
|
||
[8, 28595, "ISO-8859-5", "Cyrillic (ISO 8859-5)"],
|
||
[9, 20866, "KOI8-R", "Cyrillic (KOI8-R)"],
|
||
[10, 21866, "KOI8-U", "Cyrillic (KOI8-U)"],
|
||
[11, 10007, "x-mac-cyrillic", "Cyrillic (Mac)"],
|
||
[12, 855, "IBM855", "Cyrillic (OEM 855)"],
|
||
[13, 866, "cp866", "Cyrillic (OEM 866)"],
|
||
[14, 1251, "windows-1251", "Cyrillic (Windows)"],
|
||
|
||
[15, 852, "IBM852", "Central European (OEM 852)"],
|
||
[16, 1250, "windows-1250", "Central European (Windows)"],
|
||
|
||
[17, 950, "Big5", "Chinese (Big5 Traditional)"],
|
||
[18, 936, "GB2312", "Central (GB2312 Simplified)"],
|
||
|
||
[19, 28592, "ISO-8859-2", "Eastern European (ISO 8859-2)"],
|
||
|
||
[20, 28597, "ISO-8859-7", "Greek (ISO 8859-7)"],
|
||
[21, 737, "IBM737", "Greek (OEM 737)"],
|
||
[22, 869, "IBM869", "Greek (OEM 869)"],
|
||
[23, 1253, "windows-1253", "Greek (Windows)"],
|
||
|
||
[24, 28598, "ISO-8859-8", "Hebrew (ISO 8859-8)"],
|
||
[25, 862, "DOS-862", "Hebrew (OEM 862)"],
|
||
[26, 1255, "windows-1255", "Hebrew (Windows)"],
|
||
|
||
[27, 932, "Shift_JIS", "Japanese (Shift-JIS)"],
|
||
|
||
[28, 949, "KS_C_5601-1987", "Korean (Windows)"],
|
||
[29, 51949, "EUC-KR", "Korean (EUC)"],
|
||
|
||
[30, 861, "IBM861", "North European (Icelandic OEM 861)"],
|
||
[31, 865, "IBM865", "North European (Nordic OEM 865)"],
|
||
|
||
[32, 874, "windows-874", "Thai (TIS-620)"],
|
||
|
||
[33, 28593, "ISO-8859-3", "Turkish (ISO 8859-3)"],
|
||
[34, 28599, "ISO-8859-9", "Turkish (ISO 8859-9)"],
|
||
[35, 857, "IBM857", "Turkish (OEM 857)"],
|
||
[36, 1254, "windows-1254", "Turkish (Windows)"],
|
||
|
||
[37, 28591, "ISO-8859-1", "Western European (ISO-8859-1)"],
|
||
[38, 28605, "ISO-8859-15", "Western European (ISO-8859-15)"],
|
||
[39, 850, "IBM850", "Western European (OEM 850)"],
|
||
[40, 858, "IBM858", "Western European (OEM 858)"],
|
||
[41, 860, "IBM860", "Western European (OEM 860 : Portuguese)"],
|
||
[42, 863, "IBM863", "Western European (OEM 863 : French)"],
|
||
[43, 437, "IBM437", "Western European (OEM-US)"],
|
||
[44, 1252, "windows-1252", "Western European (Windows)"],
|
||
|
||
[45, 1258, "windows-1258", "Vietnamese (Windows)"],
|
||
|
||
[46, 65001, "UTF-8", "Unicode (UTF-8)"],
|
||
[47, 65000, "UTF-7", "Unicode (UTF-7)"],
|
||
|
||
[48, 1200, "UTF-16LE", "Unicode (UTF-16)"],
|
||
[49, 1201, "UTF-16BE", "Unicode (UTF-16 Big Endian)"],
|
||
|
||
[50, 12000, "UTF-32LE", "Unicode (UTF-32)"],
|
||
[51, 12001, "UTF-32BE", "Unicode (UTF-32 Big Endian)"]
|
||
];
|
||
var c_oAscEncodingsMap = {
|
||
"437" : 43, "720" : 1, "737" : 21, "775" : 5, "850" : 39, "852" : 15, "855" : 12, "857" : 35, "858" : 40, "860" : 41, "861" : 30, "862" : 25, "863" : 42, "865" : 31, "866" : 13, "869" : 22, "874" : 32, "932" : 27, "936" : 18, "949" : 28, "950" : 17, "1200" : 48, "1201" : 49, "1250" : 16, "1251" : 14, "1252" : 44, "1253" : 23, "1254" : 36, "1255" : 26, "1256" : 2, "1257" : 6, "1258" : 45, "10007" : 11, "12000" : 50, "12001" : 51, "20866" : 9, "21866" : 10, "28591" : 37, "28592" : 19,
|
||
"28593" : 33, "28594" : 3, "28595" : 8, "28596" : 0, "28597" : 20, "28598" : 24, "28599" : 34, "28603" : 4, "28604" : 7, "28605" : 38, "51949" : 29, "65000" : 47, "65001" : 46
|
||
};
|
||
var c_oAscCodePageNone = -1;
|
||
var c_oAscCodePageUtf7 = 47;//65000
|
||
var c_oAscCodePageUtf8 = 46;//65001
|
||
var c_oAscCodePageUtf16 = 48;//1200
|
||
var c_oAscCodePageUtf16BE = 49;//1201
|
||
var c_oAscCodePageUtf32 = 50;//12000
|
||
var c_oAscCodePageUtf32BE = 51;//12001
|
||
|
||
// https://support.office.com/en-us/article/Excel-specifications-and-limits-16c69c74-3d6a-4aaf-ba35-e6eb276e8eaa?ui=en-US&rs=en-US&ad=US&fromAR=1
|
||
var c_oAscMaxTooltipLength = 256;
|
||
var c_oAscMaxCellOrCommentLength = 32767;
|
||
var c_oAscMaxFormulaLength = 8192;
|
||
|
||
var locktype_None = 1; // никто не залочил данный объект
|
||
var locktype_Mine = 2; // данный объект залочен текущим пользователем
|
||
var locktype_Other = 3; // данный объект залочен другим(не текущим) пользователем
|
||
var locktype_Other2 = 4; // данный объект залочен другим(не текущим) пользователем (обновления уже пришли)
|
||
var locktype_Other3 = 5; // данный объект был залочен (обновления пришли) и снова стал залочен
|
||
|
||
var changestype_None = 0; // Ничего не происходит с выделенным элементом (проверка идет через дополнительный параметр)
|
||
var changestype_Paragraph_Content = 1; // Добавление/удаление элементов в параграф
|
||
var changestype_Paragraph_Properties = 2; // Изменение свойств параграфа
|
||
var changestype_Paragraph_AddText = 3; // Добавление текста
|
||
var changestype_Document_Content = 10; // Добавление/удаление элементов в Document или в DocumentContent
|
||
var changestype_Document_Content_Add = 11; // Добавление элемента в класс Document или в класс DocumentContent
|
||
var changestype_Document_SectPr = 12; // Изменения свойств данной секции (размер страницы, поля и ориентация)
|
||
var changestype_Document_Styles = 13; // Изменяем стили документа (добавление/удаление/модифицирование)
|
||
var changestype_Table_Properties = 20; // Любые изменения в таблице
|
||
var changestype_Table_RemoveCells = 21; // Удаление ячеек (строк или столбцов)
|
||
var changestype_Image_Properties = 23; // Изменения настроек картинки
|
||
var changestype_ContentControl_Remove = 24; // Удаление контейнера целиком
|
||
var changestype_ContentControl_Properties = 25; // Изменение свойств контейнера
|
||
var changestype_ContentControl_Add = 26; // Добавление контейнера
|
||
var changestype_HdrFtr = 30; // Изменения в колонтитуле (любые изменения)
|
||
var changestype_Remove = 40; // Удаление, через кнопку backspace (Удаление назад)
|
||
var changestype_Delete = 41; // Удаление, через кнопку delete (Удаление вперед)
|
||
var changestype_Drawing_Props = 51; // Изменение свойств фигуры
|
||
var changestype_ColorScheme = 60; // Изменение свойств фигуры
|
||
var changestype_Text_Props = 61; // Изменение свойств фигуры
|
||
var changestype_RemoveSlide = 62; // Изменение свойств фигуры
|
||
var changestype_PresentationProps = 63; // Изменение темы, цветовой схемы, размера слайда;
|
||
var changestype_Theme = 64; // Изменение темы;
|
||
var changestype_SlideSize = 65; // Изменение цветовой схемы;
|
||
var changestype_SlideBg = 66; // Изменение цветовой схемы;
|
||
var changestype_SlideTiming = 67; // Изменение цветовой схемы;
|
||
var changestype_MoveComment = 68;
|
||
var changestype_AddSp = 69;
|
||
var changestype_AddComment = 70;
|
||
var changestype_Layout = 71;
|
||
var changestype_AddShape = 72;
|
||
var changestype_AddShapes = 73;
|
||
var changestype_PresDefaultLang = 74;
|
||
var changestype_SlideHide = 75;
|
||
|
||
var changestype_2_InlineObjectMove = 1; // Передвигаем объект в заданную позцию (проверяем место, в которое пытаемся передвинуть)
|
||
var changestype_2_HdrFtr = 2; // Изменения с колонтитулом
|
||
var changestype_2_Comment = 3; // Работает с комментариями
|
||
var changestype_2_Element_and_Type = 4; // Проверяем возможно ли сделать изменение заданного типа с заданным элементом(а не с текущим)
|
||
var changestype_2_ElementsArray_and_Type = 5; // Аналогично предыдущему, только идет массив элементов
|
||
var changestype_2_AdditionalTypes = 6; // Дополнительные проверки типа 1
|
||
var changestype_2_Element_and_Type_Array = 7; // Проверяем возможно ли сделать изменения заданного типа с заданными элементами (для каждого элемента свое изменение)
|
||
|
||
var contentchanges_Add = 1;
|
||
var contentchanges_Remove = 2;
|
||
|
||
var PUNCTUATION_FLAG_BASE = 0x0001;
|
||
var PUNCTUATION_FLAG_CANT_BE_AT_BEGIN = 0x0010;
|
||
var PUNCTUATION_FLAG_CANT_BE_AT_END = 0x0020;
|
||
var PUNCTUATION_FLAG_EAST_ASIAN = 0x0100;
|
||
var PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E = 0x0002;
|
||
var PUNCTUATION_FLAG_CANT_BE_AT_END_E = 0x0004;
|
||
|
||
var g_aPunctuation = [];
|
||
g_aPunctuation[0x0021] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // !
|
||
g_aPunctuation[0x0022] = PUNCTUATION_FLAG_BASE; // "
|
||
g_aPunctuation[0x0023] = PUNCTUATION_FLAG_BASE; // #
|
||
g_aPunctuation[0x0024] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // $
|
||
g_aPunctuation[0x0025] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // %
|
||
g_aPunctuation[0x0026] = PUNCTUATION_FLAG_BASE; // &
|
||
g_aPunctuation[0x0027] = PUNCTUATION_FLAG_BASE; // '
|
||
g_aPunctuation[0x0028] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END | PUNCTUATION_FLAG_CANT_BE_AT_END_E; // (
|
||
g_aPunctuation[0x0029] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // )
|
||
g_aPunctuation[0x002A] = PUNCTUATION_FLAG_BASE; // *
|
||
g_aPunctuation[0x002B] = PUNCTUATION_FLAG_BASE; // +
|
||
g_aPunctuation[0x002C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ,
|
||
g_aPunctuation[0x002D] = PUNCTUATION_FLAG_BASE; // -
|
||
g_aPunctuation[0x002E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // .
|
||
g_aPunctuation[0x002F] = PUNCTUATION_FLAG_BASE; // /
|
||
g_aPunctuation[0x003A] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // :
|
||
g_aPunctuation[0x003B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ;
|
||
g_aPunctuation[0x003C] = PUNCTUATION_FLAG_BASE; // <
|
||
g_aPunctuation[0x003D] = PUNCTUATION_FLAG_BASE; // =
|
||
g_aPunctuation[0x003E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // >
|
||
g_aPunctuation[0x003F] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ?
|
||
g_aPunctuation[0x0040] = PUNCTUATION_FLAG_BASE; // @
|
||
g_aPunctuation[0x005B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END | PUNCTUATION_FLAG_CANT_BE_AT_END_E; // [
|
||
g_aPunctuation[0x005C] = PUNCTUATION_FLAG_BASE; // \
|
||
g_aPunctuation[0x005D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ]
|
||
g_aPunctuation[0x005E] = PUNCTUATION_FLAG_BASE; // ^
|
||
g_aPunctuation[0x005F] = PUNCTUATION_FLAG_BASE; // _
|
||
g_aPunctuation[0x0060] = PUNCTUATION_FLAG_BASE; // `
|
||
g_aPunctuation[0x007B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END | PUNCTUATION_FLAG_CANT_BE_AT_END_E; // {
|
||
g_aPunctuation[0x007C] = PUNCTUATION_FLAG_BASE; // |
|
||
g_aPunctuation[0x007D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // }
|
||
g_aPunctuation[0x007E] = PUNCTUATION_FLAG_BASE; // ~
|
||
|
||
g_aPunctuation[0x00A1] = PUNCTUATION_FLAG_BASE; // ¡
|
||
g_aPunctuation[0x00A2] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ¢
|
||
g_aPunctuation[0x00A3] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // £
|
||
g_aPunctuation[0x00A4] = PUNCTUATION_FLAG_BASE; // ¤
|
||
g_aPunctuation[0x00A5] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // ¥
|
||
g_aPunctuation[0x00A6] = PUNCTUATION_FLAG_BASE; // ¦
|
||
g_aPunctuation[0x00A7] = PUNCTUATION_FLAG_BASE; // §
|
||
g_aPunctuation[0x00A8] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ¨
|
||
g_aPunctuation[0x00A9] = PUNCTUATION_FLAG_BASE; // ©
|
||
g_aPunctuation[0x00AA] = PUNCTUATION_FLAG_BASE; // ª
|
||
g_aPunctuation[0x00AB] = PUNCTUATION_FLAG_BASE; // «
|
||
g_aPunctuation[0x00AC] = PUNCTUATION_FLAG_BASE; // ¬
|
||
g_aPunctuation[0x00AD] = PUNCTUATION_FLAG_BASE; //
|
||
g_aPunctuation[0x00AE] = PUNCTUATION_FLAG_BASE; // ®
|
||
g_aPunctuation[0x00AF] = PUNCTUATION_FLAG_BASE; // ¯
|
||
g_aPunctuation[0x00B0] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // °
|
||
g_aPunctuation[0x00B1] = PUNCTUATION_FLAG_BASE; // ±
|
||
g_aPunctuation[0x00B4] = PUNCTUATION_FLAG_BASE; // ´
|
||
g_aPunctuation[0x00B6] = PUNCTUATION_FLAG_BASE; // ¶
|
||
g_aPunctuation[0x00B7] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ·
|
||
g_aPunctuation[0x00B8] = PUNCTUATION_FLAG_BASE; // ¸
|
||
g_aPunctuation[0x00BA] = PUNCTUATION_FLAG_BASE; // º
|
||
g_aPunctuation[0x00BB] = PUNCTUATION_FLAG_BASE; // »
|
||
g_aPunctuation[0x00BB] = PUNCTUATION_FLAG_BASE; // »
|
||
g_aPunctuation[0x00BF] = PUNCTUATION_FLAG_BASE; // ¿
|
||
|
||
g_aPunctuation[0x2010] = PUNCTUATION_FLAG_BASE; // ‐
|
||
g_aPunctuation[0x2011] = PUNCTUATION_FLAG_BASE; // ‑
|
||
g_aPunctuation[0x2012] = PUNCTUATION_FLAG_BASE; // ‒
|
||
g_aPunctuation[0x2013] = PUNCTUATION_FLAG_BASE; // –
|
||
g_aPunctuation[0x2014] = PUNCTUATION_FLAG_BASE; // —
|
||
g_aPunctuation[0x2015] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ―
|
||
g_aPunctuation[0x2016] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ‖
|
||
g_aPunctuation[0x2017] = PUNCTUATION_FLAG_BASE; // ‗
|
||
g_aPunctuation[0x2018] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // ‘
|
||
g_aPunctuation[0x2019] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ’
|
||
g_aPunctuation[0x201A] = PUNCTUATION_FLAG_BASE; // ‚
|
||
g_aPunctuation[0x201B] = PUNCTUATION_FLAG_BASE; // ‛
|
||
g_aPunctuation[0x201C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // “
|
||
g_aPunctuation[0x201D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ”
|
||
g_aPunctuation[0x201E] = PUNCTUATION_FLAG_BASE; // „
|
||
g_aPunctuation[0x201F] = PUNCTUATION_FLAG_BASE; // ‟
|
||
g_aPunctuation[0x2020] = PUNCTUATION_FLAG_BASE; // †
|
||
g_aPunctuation[0x2021] = PUNCTUATION_FLAG_BASE; // ‡
|
||
g_aPunctuation[0x2022] = PUNCTUATION_FLAG_BASE; // •
|
||
g_aPunctuation[0x2023] = PUNCTUATION_FLAG_BASE; // ‣
|
||
g_aPunctuation[0x2024] = PUNCTUATION_FLAG_BASE; // ․
|
||
g_aPunctuation[0x2025] = PUNCTUATION_FLAG_BASE; // ‥
|
||
g_aPunctuation[0x2026] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // …
|
||
g_aPunctuation[0x2027] = PUNCTUATION_FLAG_BASE; // ‧
|
||
g_aPunctuation[0x2030] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ‰
|
||
g_aPunctuation[0x2031] = PUNCTUATION_FLAG_BASE; // ‱
|
||
g_aPunctuation[0x2032] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ′
|
||
g_aPunctuation[0x2033] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ″
|
||
g_aPunctuation[0x2034] = PUNCTUATION_FLAG_BASE; // ‴
|
||
g_aPunctuation[0x2035] = PUNCTUATION_FLAG_BASE; // ‵
|
||
g_aPunctuation[0x2036] = PUNCTUATION_FLAG_BASE; // ‶
|
||
g_aPunctuation[0x2037] = PUNCTUATION_FLAG_BASE; // ‷
|
||
g_aPunctuation[0x2038] = PUNCTUATION_FLAG_BASE; // ‸
|
||
g_aPunctuation[0x2039] = PUNCTUATION_FLAG_BASE; // ‹
|
||
g_aPunctuation[0x203A] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ›
|
||
g_aPunctuation[0x203B] = PUNCTUATION_FLAG_BASE; // ※
|
||
g_aPunctuation[0x203C] = PUNCTUATION_FLAG_BASE; // ‼
|
||
g_aPunctuation[0x203D] = PUNCTUATION_FLAG_BASE; // ‽
|
||
g_aPunctuation[0x203E] = PUNCTUATION_FLAG_BASE; // ‾
|
||
g_aPunctuation[0x203F] = PUNCTUATION_FLAG_BASE; // ‿
|
||
g_aPunctuation[0x2040] = PUNCTUATION_FLAG_BASE; // ⁀
|
||
g_aPunctuation[0x2041] = PUNCTUATION_FLAG_BASE; // ⁁
|
||
g_aPunctuation[0x2042] = PUNCTUATION_FLAG_BASE; // ⁂
|
||
g_aPunctuation[0x2043] = PUNCTUATION_FLAG_BASE; // ⁃
|
||
g_aPunctuation[0x2044] = PUNCTUATION_FLAG_BASE; // ⁄
|
||
g_aPunctuation[0x2045] = PUNCTUATION_FLAG_BASE; // ⁅
|
||
g_aPunctuation[0x2046] = PUNCTUATION_FLAG_BASE; // ⁆
|
||
g_aPunctuation[0x2047] = PUNCTUATION_FLAG_BASE; // ⁇
|
||
g_aPunctuation[0x2048] = PUNCTUATION_FLAG_BASE; // ⁈
|
||
g_aPunctuation[0x2049] = PUNCTUATION_FLAG_BASE; // ⁉
|
||
g_aPunctuation[0x204A] = PUNCTUATION_FLAG_BASE; // ⁊
|
||
g_aPunctuation[0x204B] = PUNCTUATION_FLAG_BASE; // ⁋
|
||
g_aPunctuation[0x204C] = PUNCTUATION_FLAG_BASE; // ⁌
|
||
g_aPunctuation[0x204D] = PUNCTUATION_FLAG_BASE; // ⁍
|
||
g_aPunctuation[0x204E] = PUNCTUATION_FLAG_BASE; // ⁎
|
||
g_aPunctuation[0x204F] = PUNCTUATION_FLAG_BASE; // ⁏
|
||
g_aPunctuation[0x2050] = PUNCTUATION_FLAG_BASE; // ⁐
|
||
g_aPunctuation[0x2051] = PUNCTUATION_FLAG_BASE; // ⁑
|
||
g_aPunctuation[0x2052] = PUNCTUATION_FLAG_BASE; // ⁒
|
||
g_aPunctuation[0x2053] = PUNCTUATION_FLAG_BASE; // ⁓
|
||
g_aPunctuation[0x2054] = PUNCTUATION_FLAG_BASE; // ⁔
|
||
g_aPunctuation[0x2055] = PUNCTUATION_FLAG_BASE; // ⁕
|
||
g_aPunctuation[0x2056] = PUNCTUATION_FLAG_BASE; // ⁖
|
||
g_aPunctuation[0x2057] = PUNCTUATION_FLAG_BASE; // ⁗
|
||
g_aPunctuation[0x2058] = PUNCTUATION_FLAG_BASE; // ⁘
|
||
g_aPunctuation[0x2059] = PUNCTUATION_FLAG_BASE; // ⁙
|
||
g_aPunctuation[0x205A] = PUNCTUATION_FLAG_BASE; // ⁚
|
||
g_aPunctuation[0x205B] = PUNCTUATION_FLAG_BASE; // ⁛
|
||
g_aPunctuation[0x205C] = PUNCTUATION_FLAG_BASE; // ⁜
|
||
g_aPunctuation[0x205D] = PUNCTUATION_FLAG_BASE; // ⁝
|
||
g_aPunctuation[0x205E] = PUNCTUATION_FLAG_BASE; // ⁞
|
||
|
||
// Не смотря на то что следующий набор символов идет в блоке CJK Symbols and Punctuation
|
||
// Word не считает их как EastAsian script (w:lang->w:eastAsian)
|
||
|
||
g_aPunctuation[0x3001] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 、
|
||
g_aPunctuation[0x3002] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 。
|
||
g_aPunctuation[0x3003] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 〃
|
||
g_aPunctuation[0x3004] = PUNCTUATION_FLAG_BASE; // 〄
|
||
g_aPunctuation[0x3005] = PUNCTUATION_FLAG_BASE; // 々
|
||
g_aPunctuation[0x3006] = PUNCTUATION_FLAG_BASE; // 〆
|
||
g_aPunctuation[0x3007] = PUNCTUATION_FLAG_BASE; // 〇
|
||
g_aPunctuation[0x3008] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // 〈
|
||
g_aPunctuation[0x3009] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 〉
|
||
g_aPunctuation[0x300A] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // 《
|
||
g_aPunctuation[0x300B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 》
|
||
g_aPunctuation[0x300C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // 「
|
||
g_aPunctuation[0x300D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 」
|
||
g_aPunctuation[0x300E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // 『
|
||
g_aPunctuation[0x300F] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 』
|
||
g_aPunctuation[0x3010] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // 【
|
||
g_aPunctuation[0x3011] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 】
|
||
g_aPunctuation[0x3012] = PUNCTUATION_FLAG_BASE; // 〒
|
||
g_aPunctuation[0x3013] = PUNCTUATION_FLAG_BASE; // 〓
|
||
g_aPunctuation[0x3014] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; //〔
|
||
g_aPunctuation[0x3015] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 〕
|
||
g_aPunctuation[0x3016] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; //〖
|
||
g_aPunctuation[0x3017] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 〗
|
||
g_aPunctuation[0x3018] = PUNCTUATION_FLAG_BASE; // 〘
|
||
g_aPunctuation[0x3019] = PUNCTUATION_FLAG_BASE; // 〙
|
||
g_aPunctuation[0x301A] = PUNCTUATION_FLAG_BASE; // 〚
|
||
g_aPunctuation[0x301B] = PUNCTUATION_FLAG_BASE; // 〛
|
||
g_aPunctuation[0x301C] = PUNCTUATION_FLAG_BASE; // 〜
|
||
g_aPunctuation[0x301D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_END; // 〝
|
||
g_aPunctuation[0x301E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // 〞
|
||
g_aPunctuation[0x301F] = PUNCTUATION_FLAG_BASE; // 〟
|
||
|
||
g_aPunctuation[0xFF01] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // !
|
||
g_aPunctuation[0xFF02] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // "
|
||
g_aPunctuation[0xFF03] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // #
|
||
g_aPunctuation[0xFF04] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_END; // $
|
||
g_aPunctuation[0xFF05] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // %
|
||
g_aPunctuation[0xFF06] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // &
|
||
g_aPunctuation[0xFF07] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // '
|
||
g_aPunctuation[0xFF08] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_END | PUNCTUATION_FLAG_CANT_BE_AT_END_E; // (
|
||
g_aPunctuation[0xFF09] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // )
|
||
g_aPunctuation[0xFF0A] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // *
|
||
g_aPunctuation[0xFF0B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // +
|
||
g_aPunctuation[0xFF0C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ,
|
||
g_aPunctuation[0xFF0D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // -
|
||
g_aPunctuation[0xFF0E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // .
|
||
g_aPunctuation[0xFF0F] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // /
|
||
g_aPunctuation[0xFF1A] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // :
|
||
g_aPunctuation[0xFF1B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ;
|
||
g_aPunctuation[0xFF1C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // <
|
||
g_aPunctuation[0xFF1D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // =
|
||
g_aPunctuation[0xFF1E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // >
|
||
g_aPunctuation[0xFF1F] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ?
|
||
g_aPunctuation[0xFF20] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // @
|
||
g_aPunctuation[0xFF3B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_END | PUNCTUATION_FLAG_CANT_BE_AT_END_E; // [
|
||
g_aPunctuation[0xFF3C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // \
|
||
g_aPunctuation[0xFF3D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // ]
|
||
g_aPunctuation[0xFF3E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ^
|
||
g_aPunctuation[0xFF3F] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // _
|
||
g_aPunctuation[0xFF40] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // `
|
||
g_aPunctuation[0xFF5B] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_END | PUNCTUATION_FLAG_CANT_BE_AT_END_E; // {
|
||
g_aPunctuation[0xFF5C] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // |
|
||
g_aPunctuation[0xFF5D] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E; // }
|
||
g_aPunctuation[0xFF5E] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ~
|
||
g_aPunctuation[0xFF5F] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ⦅
|
||
g_aPunctuation[0xFF60] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ⦆
|
||
g_aPunctuation[0xFF61] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // 。
|
||
g_aPunctuation[0xFF62] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // 「
|
||
g_aPunctuation[0xFF63] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // 」
|
||
g_aPunctuation[0xFF64] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // 、
|
||
g_aPunctuation[0xFF65] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ・
|
||
g_aPunctuation[0xFFE0] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_BEGIN; // ¢
|
||
g_aPunctuation[0xFFE1] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_END; // £
|
||
g_aPunctuation[0xFFE2] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ¬
|
||
g_aPunctuation[0xFFE3] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; //  ̄
|
||
g_aPunctuation[0xFFE4] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ¦
|
||
g_aPunctuation[0xFFE5] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN | PUNCTUATION_FLAG_CANT_BE_AT_END; // ¥
|
||
g_aPunctuation[0xFFE6] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ₩
|
||
g_aPunctuation[0xFFE8] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // │
|
||
g_aPunctuation[0xFFE9] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ←
|
||
g_aPunctuation[0xFFEA] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ↑
|
||
g_aPunctuation[0xFFEB] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // →
|
||
g_aPunctuation[0xFFEC] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ↓
|
||
g_aPunctuation[0xFFED] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ■
|
||
g_aPunctuation[0xFFEE] = PUNCTUATION_FLAG_BASE | PUNCTUATION_FLAG_EAST_ASIAN; // ○
|
||
|
||
|
||
var offlineMode = '_offline_';
|
||
var chartMode = '_chart_';
|
||
|
||
var c_oSpecialPasteProps = {
|
||
paste: 0,
|
||
pasteOnlyFormula: 1,
|
||
formulaNumberFormat: 2,
|
||
formulaAllFormatting: 3,
|
||
formulaWithoutBorders: 4,
|
||
formulaColumnWidth: 5,
|
||
mergeConditionalFormating: 6,
|
||
pasteOnlyValues: 7,
|
||
valueNumberFormat: 8,
|
||
valueAllFormating: 9,
|
||
pasteOnlyFormating: 10,
|
||
transpose: 11,
|
||
link: 12,
|
||
picture: 13,
|
||
linkedPicture: 14,
|
||
|
||
sourceformatting: 15,
|
||
destinationFormatting: 16,
|
||
|
||
mergeFormatting: 17,
|
||
|
||
uniteList: 18,
|
||
doNotUniteList: 19,
|
||
|
||
insertAsNestedTable: 20,
|
||
uniteIntoTable: 21,
|
||
insertAsNewRows: 22,
|
||
keepTextOnly: 23,
|
||
overwriteCells : 24
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscNumberingFormat = {
|
||
None : 0x0000,
|
||
Bullet : 0x1001,
|
||
Decimal : 0x2002,
|
||
LowerRoman : 0x2003,
|
||
UpperRoman : 0x2004,
|
||
LowerLetter : 0x2005,
|
||
UpperLetter : 0x2006,
|
||
DecimalZero : 0x2007,
|
||
|
||
|
||
BulletFlag : 0x1000,
|
||
NumberedFlag : 0x2000
|
||
};
|
||
|
||
/** enum {number} */
|
||
var c_oAscNumberingSuff = {
|
||
Tab : 0x01,
|
||
Space : 0x02,
|
||
None : 0x03
|
||
};
|
||
|
||
var c_oAscNumberingLvlTextType = {
|
||
Text : 0x00,
|
||
Num : 0x01
|
||
};
|
||
|
||
var c_oAscSdtAppearance = {
|
||
Frame : 1,
|
||
Hidden : 2
|
||
};
|
||
|
||
//------------------------------------------------------------export--------------------------------------------------
|
||
var prot;
|
||
window['Asc'] = window['Asc'] || {};
|
||
window['Asc']['FONT_THUMBNAIL_HEIGHT'] = FONT_THUMBNAIL_HEIGHT;
|
||
window['Asc']['c_oAscMaxColumnWidth'] = window['Asc'].c_oAscMaxColumnWidth = c_oAscMaxColumnWidth;
|
||
window['Asc']['c_oAscMaxRowHeight'] = window['Asc'].c_oAscMaxRowHeight = c_oAscMaxRowHeight;
|
||
window['Asc']['c_nMaxConversionTime'] = window['Asc'].c_nMaxConversionTime = c_nMaxConversionTime;
|
||
window['Asc']['c_nMaxDownloadTitleLen'] = window['Asc'].c_nMaxDownloadTitleLen = c_nMaxDownloadTitleLen;
|
||
window['Asc']['c_nVersionNoBase64'] = window['Asc'].c_nVersionNoBase64 = c_nVersionNoBase64;
|
||
window['Asc']['c_dMaxParaRunContentLength'] = window['Asc'].c_dMaxParaRunContentLength = c_dMaxParaRunContentLength;
|
||
window['Asc']['c_rUneditableTypes'] = window['Asc'].c_rUneditableTypes = c_rUneditableTypes;
|
||
window['Asc']['c_oAscFileType'] = window['Asc'].c_oAscFileType = c_oAscFileType;
|
||
prot = c_oAscFileType;
|
||
prot['UNKNOWN'] = prot.UNKNOWN;
|
||
prot['PDF'] = prot.PDF;
|
||
prot['PDFA'] = prot.PDFA;
|
||
prot['HTML'] = prot.HTML;
|
||
prot['DOCX'] = prot.DOCX;
|
||
prot['DOC'] = prot.DOC;
|
||
prot['ODT'] = prot.ODT;
|
||
prot['RTF'] = prot.RTF;
|
||
prot['TXT'] = prot.TXT;
|
||
prot['MHT'] = prot.MHT;
|
||
prot['EPUB'] = prot.EPUB;
|
||
prot['FB2'] = prot.FB2;
|
||
prot['MOBI'] = prot.MOBI;
|
||
prot['DOCY'] = prot.DOCY;
|
||
prot['JSON'] = prot.JSON;
|
||
prot['XLSX'] = prot.XLSX;
|
||
prot['XLS'] = prot.XLS;
|
||
prot['ODS'] = prot.ODS;
|
||
prot['CSV'] = prot.CSV;
|
||
prot['XLSY'] = prot.XLSY;
|
||
prot['PPTX'] = prot.PPTX;
|
||
prot['PPT'] = prot.PPT;
|
||
prot['ODP'] = prot.ODP;
|
||
window['Asc']['c_oAscError'] = window['Asc'].c_oAscError = c_oAscError;
|
||
prot = c_oAscError;
|
||
prot['Level'] = prot.Level;
|
||
prot['ID'] = prot.ID;
|
||
prot = c_oAscError.Level;
|
||
prot['Critical'] = prot.Critical;
|
||
prot['NoCritical'] = prot.NoCritical;
|
||
prot = c_oAscError.ID;
|
||
prot['ServerSaveComplete'] = prot.ServerSaveComplete;
|
||
prot['ConvertationProgress'] = prot.ConvertationProgress;
|
||
prot['DownloadProgress'] = prot.DownloadProgress;
|
||
prot['No'] = prot.No;
|
||
prot['Unknown'] = prot.Unknown;
|
||
prot['ConvertationTimeout'] = prot.ConvertationTimeout;
|
||
prot['DownloadError'] = prot.DownloadError;
|
||
prot['UnexpectedGuid'] = prot.UnexpectedGuid;
|
||
prot['Database'] = prot.Database;
|
||
prot['FileRequest'] = prot.FileRequest;
|
||
prot['FileVKey'] = prot.FileVKey;
|
||
prot['UplImageSize'] = prot.UplImageSize;
|
||
prot['UplImageExt'] = prot.UplImageExt;
|
||
prot['UplImageFileCount'] = prot.UplImageFileCount;
|
||
prot['NoSupportClipdoard'] = prot.NoSupportClipdoard;
|
||
prot['UplImageUrl'] = prot.UplImageUrl;
|
||
prot['MaxDataPointsError'] = prot.MaxDataPointsError;
|
||
prot['StockChartError'] = prot.StockChartError;
|
||
prot['CoAuthoringDisconnect'] = prot.CoAuthoringDisconnect;
|
||
prot['ConvertationPassword'] = prot.ConvertationPassword;
|
||
prot['VKeyEncrypt'] = prot.VKeyEncrypt;
|
||
prot['KeyExpire'] = prot.KeyExpire;
|
||
prot['UserCountExceed'] = prot.UserCountExceed;
|
||
prot['AccessDeny'] = prot.AccessDeny;
|
||
prot['LoadingScriptError'] = prot.LoadingScriptError;
|
||
prot['SplitCellMaxRows'] = prot.SplitCellMaxRows;
|
||
prot['SplitCellMaxCols'] = prot.SplitCellMaxCols;
|
||
prot['SplitCellRowsDivider'] = prot.SplitCellRowsDivider;
|
||
prot['MobileUnexpectedCharCount'] = prot.MobileUnexpectedCharCount;
|
||
prot['MailMergeLoadFile'] = prot.MailMergeLoadFile;
|
||
prot['MailMergeSaveFile'] = prot.MailMergeSaveFile;
|
||
prot['AutoFilterDataRangeError'] = prot.AutoFilterDataRangeError;
|
||
prot['AutoFilterChangeFormatTableError'] = prot.AutoFilterChangeFormatTableError;
|
||
prot['AutoFilterChangeError'] = prot.AutoFilterChangeError;
|
||
prot['AutoFilterMoveToHiddenRangeError'] = prot.AutoFilterMoveToHiddenRangeError;
|
||
prot['LockedAllError'] = prot.LockedAllError;
|
||
prot['LockedWorksheetRename'] = prot.LockedWorksheetRename;
|
||
prot['FTChangeTableRangeError'] = prot.FTChangeTableRangeError;
|
||
prot['FTRangeIncludedOtherTables'] = prot.FTRangeIncludedOtherTables;
|
||
prot['PasteMaxRangeError'] = prot.PasteMaxRangeError;
|
||
prot['PastInMergeAreaError'] = prot.PastInMergeAreaError;
|
||
prot['CopyMultiselectAreaError'] = prot.CopyMultiselectAreaError;
|
||
prot['DataRangeError'] = prot.DataRangeError;
|
||
prot['CannotMoveRange'] = prot.CannotMoveRange;
|
||
prot['MaxDataSeriesError'] = prot.MaxDataSeriesError;
|
||
prot['CannotFillRange'] = prot.CannotFillRange;
|
||
prot['ConvertationOpenError'] = prot.ConvertationOpenError;
|
||
prot['ConvertationSaveError'] = prot.ConvertationSaveError;
|
||
prot['UserDrop'] = prot.UserDrop;
|
||
prot['Warning'] = prot.Warning;
|
||
prot['PrintMaxPagesCount'] = prot.PrintMaxPagesCount;
|
||
prot['SessionAbsolute'] = prot.SessionAbsolute;
|
||
prot['SessionIdle'] = prot.SessionIdle;
|
||
prot['SessionToken'] = prot.SessionToken;
|
||
prot['FrmlWrongCountParentheses'] = prot.FrmlWrongCountParentheses;
|
||
prot['FrmlWrongOperator'] = prot.FrmlWrongOperator;
|
||
prot['FrmlWrongMaxArgument'] = prot.FrmlWrongMaxArgument;
|
||
prot['FrmlWrongCountArgument'] = prot.FrmlWrongCountArgument;
|
||
prot['FrmlWrongFunctionName'] = prot.FrmlWrongFunctionName;
|
||
prot['FrmlAnotherParsingError'] = prot.FrmlAnotherParsingError;
|
||
prot['FrmlWrongArgumentRange'] = prot.FrmlWrongArgumentRange;
|
||
prot['FrmlOperandExpected'] = prot.FrmlOperandExpected;
|
||
prot['FrmlParenthesesCorrectCount'] = prot.FrmlParenthesesCorrectCount;
|
||
prot['FrmlWrongReferences'] = prot.FrmlWrongReferences;
|
||
prot['InvalidReferenceOrName'] = prot.InvalidReferenceOrName;
|
||
prot['LockCreateDefName'] = prot.LockCreateDefName;
|
||
prot['LockedCellPivot'] = prot.LockedCellPivot;
|
||
prot['ForceSaveButton'] = prot.ForceSaveButton;
|
||
prot['ForceSaveTimeout'] = prot.ForceSaveTimeout;
|
||
prot['OpenWarning'] = prot.OpenWarning;
|
||
prot['DataEncrypted'] = prot.DataEncrypted;
|
||
window['Asc']['c_oAscAsyncAction'] = window['Asc'].c_oAscAsyncAction = c_oAscAsyncAction;
|
||
prot = c_oAscAsyncAction;
|
||
prot['Open'] = prot.Open;
|
||
prot['Save'] = prot.Save;
|
||
prot['LoadDocumentFonts'] = prot.LoadDocumentFonts;
|
||
prot['LoadDocumentImages'] = prot.LoadDocumentImages;
|
||
prot['LoadFont'] = prot.LoadFont;
|
||
prot['LoadImage'] = prot.LoadImage;
|
||
prot['DownloadAs'] = prot.DownloadAs;
|
||
prot['Print'] = prot.Print;
|
||
prot['UploadImage'] = prot.UploadImage;
|
||
prot['ApplyChanges'] = prot.ApplyChanges;
|
||
prot['SlowOperation'] = prot.SlowOperation;
|
||
prot['LoadTheme'] = prot.LoadTheme;
|
||
prot['MailMergeLoadFile'] = prot.MailMergeLoadFile;
|
||
prot['DownloadMerge'] = prot.DownloadMerge;
|
||
prot['SendMailMerge'] = prot.SendMailMerge;
|
||
prot['ForceSaveButton'] = prot.ForceSaveButton;
|
||
prot['ForceSaveTimeout'] = prot.ForceSaveTimeout;
|
||
window['Asc']['c_oAscAdvancedOptionsID'] = window['Asc'].c_oAscAdvancedOptionsID = c_oAscAdvancedOptionsID;
|
||
prot = c_oAscAdvancedOptionsID;
|
||
prot['CSV'] = prot.CSV;
|
||
prot['TXT'] = prot.TXT;
|
||
prot['DRM'] = prot.DRM;
|
||
window['Asc']['c_oAscFontRenderingModeType'] = window['Asc'].c_oAscFontRenderingModeType = c_oAscFontRenderingModeType;
|
||
prot = c_oAscFontRenderingModeType;
|
||
prot['noHinting'] = prot.noHinting;
|
||
prot['hinting'] = prot.hinting;
|
||
prot['hintingAndSubpixeling'] = prot.hintingAndSubpixeling;
|
||
window['Asc']['c_oAscAsyncActionType'] = window['Asc'].c_oAscAsyncActionType = c_oAscAsyncActionType;
|
||
prot = c_oAscAsyncActionType;
|
||
prot['Information'] = prot.Information;
|
||
prot['BlockInteraction'] = prot.BlockInteraction;
|
||
window['Asc']['c_oAscNumFormatType'] = window['Asc'].c_oAscNumFormatType = c_oAscNumFormatType;
|
||
prot = c_oAscNumFormatType;
|
||
prot['None'] = prot.None;
|
||
prot['General'] = prot.General;
|
||
prot['Number'] = prot.Number;
|
||
prot['Scientific'] = prot.Scientific;
|
||
prot['Accounting'] = prot.Accounting;
|
||
prot['Currency'] = prot.Currency;
|
||
prot['Date'] = prot.Date;
|
||
prot['Time'] = prot.Time;
|
||
prot['Percent'] = prot.Percent;
|
||
prot['Fraction'] = prot.Fraction;
|
||
prot['Text'] = prot.Text;
|
||
prot['Custom'] = prot.Custom;
|
||
window['Asc']['c_oAscDrawingLayerType'] = c_oAscDrawingLayerType;
|
||
prot = c_oAscDrawingLayerType;
|
||
prot['BringToFront'] = prot.BringToFront;
|
||
prot['SendToBack'] = prot.SendToBack;
|
||
prot['BringForward'] = prot.BringForward;
|
||
prot['SendBackward'] = prot.SendBackward;
|
||
window['Asc']['c_oAscTypeSelectElement'] = window['Asc'].c_oAscTypeSelectElement = c_oAscTypeSelectElement;
|
||
prot = c_oAscTypeSelectElement;
|
||
prot['Paragraph'] = prot.Paragraph;
|
||
prot['Table'] = prot.Table;
|
||
prot['Image'] = prot.Image;
|
||
prot['Header'] = prot.Header;
|
||
prot['Hyperlink'] = prot.Hyperlink;
|
||
prot['SpellCheck'] = prot.SpellCheck;
|
||
prot['Shape'] = prot.Shape;
|
||
prot['Slide'] = prot.Slide;
|
||
prot['Chart'] = prot.Chart;
|
||
prot['Math'] = prot.Math;
|
||
prot['MailMerge'] = prot.MailMerge;
|
||
window['Asc']['linerule_AtLeast'] = window['Asc'].linerule_AtLeast = linerule_AtLeast;
|
||
window['Asc']['linerule_Auto'] = window['Asc'].linerule_Auto = linerule_Auto;
|
||
window['Asc']['linerule_Exact'] = window['Asc'].linerule_Exact = linerule_Exact;
|
||
window['Asc']['c_oAscShdClear'] = window['Asc'].c_oAscShdClear = c_oAscShdClear;
|
||
window['Asc']['c_oAscShdNil'] = window['Asc'].c_oAscShdNil = c_oAscShdNil;
|
||
window['Asc']['c_oAscDropCap'] = window['Asc'].c_oAscDropCap = c_oAscDropCap;
|
||
prot = c_oAscDropCap;
|
||
prot['None'] = prot.None;
|
||
prot['Drop'] = prot.Drop;
|
||
prot['Margin'] = prot.Margin;
|
||
window['Asc']['c_oAscChartTitleShowSettings'] = window['Asc'].c_oAscChartTitleShowSettings = c_oAscChartTitleShowSettings;
|
||
prot = c_oAscChartTitleShowSettings;
|
||
prot['none'] = prot.none;
|
||
prot['overlay'] = prot.overlay;
|
||
prot['noOverlay'] = prot.noOverlay;
|
||
window['Asc']['c_oAscChartHorAxisLabelShowSettings'] = window['Asc'].c_oAscChartHorAxisLabelShowSettings = c_oAscChartHorAxisLabelShowSettings;
|
||
prot = c_oAscChartHorAxisLabelShowSettings;
|
||
prot['none'] = prot.none;
|
||
prot['noOverlay'] = prot.noOverlay;
|
||
window['Asc']['c_oAscChartVertAxisLabelShowSettings'] = window['Asc'].c_oAscChartVertAxisLabelShowSettings = c_oAscChartVertAxisLabelShowSettings;
|
||
prot = c_oAscChartVertAxisLabelShowSettings;
|
||
prot['none'] = prot.none;
|
||
prot['rotated'] = prot.rotated;
|
||
prot['vertical'] = prot.vertical;
|
||
prot['horizontal'] = prot.horizontal;
|
||
window['Asc']['c_oAscChartLegendShowSettings'] = window['Asc'].c_oAscChartLegendShowSettings = c_oAscChartLegendShowSettings;
|
||
prot = c_oAscChartLegendShowSettings;
|
||
prot['none'] = prot.none;
|
||
prot['left'] = prot.left;
|
||
prot['top'] = prot.top;
|
||
prot['right'] = prot.right;
|
||
prot['bottom'] = prot.bottom;
|
||
prot['leftOverlay'] = prot.leftOverlay;
|
||
prot['rightOverlay'] = prot.rightOverlay;
|
||
prot['layout'] = prot.layout;
|
||
prot['topRight'] = prot.topRight;
|
||
window['Asc']['c_oAscChartDataLabelsPos'] = window['Asc'].c_oAscChartDataLabelsPos = c_oAscChartDataLabelsPos;
|
||
prot = c_oAscChartDataLabelsPos;
|
||
prot['none'] = prot.none;
|
||
prot['b'] = prot.b;
|
||
prot['bestFit'] = prot.bestFit;
|
||
prot['ctr'] = prot.ctr;
|
||
prot['inBase'] = prot.inBase;
|
||
prot['inEnd'] = prot.inEnd;
|
||
prot['l'] = prot.l;
|
||
prot['outEnd'] = prot.outEnd;
|
||
prot['r'] = prot.r;
|
||
prot['t'] = prot.t;
|
||
window['Asc']['c_oAscGridLinesSettings'] = window['Asc'].c_oAscGridLinesSettings = c_oAscGridLinesSettings;
|
||
prot = c_oAscGridLinesSettings;
|
||
prot['none'] = prot.none;
|
||
prot['major'] = prot.major;
|
||
prot['minor'] = prot.minor;
|
||
prot['majorMinor'] = prot.majorMinor;
|
||
window['Asc']['c_oAscChartTypeSettings'] = window['Asc'].c_oAscChartTypeSettings = c_oAscChartTypeSettings;
|
||
prot = c_oAscChartTypeSettings;
|
||
prot['barNormal'] = prot.barNormal;
|
||
prot['barStacked'] = prot.barStacked;
|
||
prot['barStackedPer'] = prot.barStackedPer;
|
||
prot['barNormal3d'] = prot.barNormal3d;
|
||
prot['barStacked3d'] = prot.barStacked3d;
|
||
prot['barStackedPer3d'] = prot.barStackedPer3d;
|
||
prot['barNormal3dPerspective'] = prot.barNormal3dPerspective;
|
||
prot['lineNormal'] = prot.lineNormal;
|
||
prot['lineStacked'] = prot.lineStacked;
|
||
prot['lineStackedPer'] = prot.lineStackedPer;
|
||
prot['lineNormalMarker'] = prot.lineNormalMarker;
|
||
prot['lineStackedMarker'] = prot.lineStackedMarker;
|
||
prot['lineStackedPerMarker'] = prot.lineStackedPerMarker;
|
||
prot['line3d'] = prot.line3d;
|
||
prot['pie'] = prot.pie;
|
||
prot['pie3d'] = prot.pie3d;
|
||
prot['hBarNormal'] = prot.hBarNormal;
|
||
prot['hBarStacked'] = prot.hBarStacked;
|
||
prot['hBarStackedPer'] = prot.hBarStackedPer;
|
||
prot['hBarNormal3d'] = prot.hBarNormal3d;
|
||
prot['hBarStacked3d'] = prot.hBarStacked3d;
|
||
prot['hBarStackedPer3d'] = prot.hBarStackedPer3d;
|
||
prot['areaNormal'] = prot.areaNormal;
|
||
prot['areaStacked'] = prot.areaStacked;
|
||
prot['areaStackedPer'] = prot.areaStackedPer;
|
||
prot['doughnut'] = prot.doughnut;
|
||
prot['stock'] = prot.stock;
|
||
prot['scatter'] = prot.scatter;
|
||
prot['scatterLine'] = prot.scatterLine;
|
||
prot['scatterLineMarker'] = prot.scatterLineMarker;
|
||
prot['scatterMarker'] = prot.scatterMarker;
|
||
prot['scatterNone'] = prot.scatterNone;
|
||
prot['scatterSmooth'] = prot.scatterSmooth;
|
||
prot['scatterSmoothMarker'] = prot.scatterSmoothMarker;
|
||
prot['unknown'] = prot.unknown;
|
||
window['Asc']['c_oAscValAxisRule'] = window['Asc'].c_oAscValAxisRule = c_oAscValAxisRule;
|
||
prot = c_oAscValAxisRule;
|
||
prot['auto'] = prot.auto;
|
||
prot['fixed'] = prot.fixed;
|
||
window['Asc']['c_oAscValAxUnits'] = window['Asc'].c_oAscValAxUnits = c_oAscValAxUnits;
|
||
prot = c_oAscValAxUnits;
|
||
prot['BILLIONS'] = prot.BILLIONS;
|
||
prot['HUNDRED_MILLIONS'] = prot.HUNDRED_MILLIONS;
|
||
prot['HUNDREDS'] = prot.HUNDREDS;
|
||
prot['HUNDRED_THOUSANDS'] = prot.HUNDRED_THOUSANDS;
|
||
prot['MILLIONS'] = prot.MILLIONS;
|
||
prot['TEN_MILLIONS'] = prot.TEN_MILLIONS;
|
||
prot['TEN_THOUSANDS'] = prot.TEN_THOUSANDS;
|
||
prot['TRILLIONS'] = prot.TRILLIONS;
|
||
prot['CUSTOM'] = prot.CUSTOM;
|
||
prot['THOUSANDS'] = prot.THOUSANDS;
|
||
window['Asc']['c_oAscTickMark'] = window['Asc'].c_oAscTickMark = c_oAscTickMark;
|
||
prot = c_oAscTickMark;
|
||
prot['TICK_MARK_CROSS'] = prot.TICK_MARK_CROSS;
|
||
prot['TICK_MARK_IN'] = prot.TICK_MARK_IN;
|
||
prot['TICK_MARK_NONE'] = prot.TICK_MARK_NONE;
|
||
prot['TICK_MARK_OUT'] = prot.TICK_MARK_OUT;
|
||
window['Asc']['c_oAscTickLabelsPos'] = window['Asc'].c_oAscTickLabelsPos = c_oAscTickLabelsPos;
|
||
prot = c_oAscTickLabelsPos;
|
||
prot['TICK_LABEL_POSITION_HIGH'] = prot.TICK_LABEL_POSITION_HIGH;
|
||
prot['TICK_LABEL_POSITION_LOW'] = prot.TICK_LABEL_POSITION_LOW;
|
||
prot['TICK_LABEL_POSITION_NEXT_TO'] = prot.TICK_LABEL_POSITION_NEXT_TO;
|
||
prot['TICK_LABEL_POSITION_NONE'] = prot.TICK_LABEL_POSITION_NONE;
|
||
window['Asc']['c_oAscCrossesRule'] = window['Asc'].c_oAscCrossesRule = c_oAscCrossesRule;
|
||
prot = c_oAscCrossesRule;
|
||
prot['auto'] = prot.auto;
|
||
prot['maxValue'] = prot.maxValue;
|
||
prot['value'] = prot.value;
|
||
prot['minValue'] = prot.minValue;
|
||
window['Asc']['c_oAscBetweenLabelsRule'] = window['Asc'].c_oAscBetweenLabelsRule = c_oAscBetweenLabelsRule;
|
||
prot = c_oAscBetweenLabelsRule;
|
||
prot['auto'] = prot.auto;
|
||
prot['manual'] = prot.manual;
|
||
window['Asc']['c_oAscLabelsPosition'] = window['Asc'].c_oAscLabelsPosition = c_oAscLabelsPosition;
|
||
prot = c_oAscLabelsPosition;
|
||
prot['byDivisions'] = prot.byDivisions;
|
||
prot['betweenDivisions'] = prot.betweenDivisions;
|
||
window['Asc']['c_oAscAxisType'] = window['Asc'].c_oAscAxisType = c_oAscAxisType;
|
||
prot = c_oAscAxisType;
|
||
prot['auto'] = prot.auto;
|
||
prot['date'] = prot.date;
|
||
prot['text'] = prot.text;
|
||
prot['cat'] = prot.cat;
|
||
prot['val'] = prot.val;
|
||
window['Asc']['c_oAscHAnchor'] = window['Asc'].c_oAscHAnchor = c_oAscHAnchor;
|
||
prot = c_oAscHAnchor;
|
||
prot['Margin'] = prot.Margin;
|
||
prot['Page'] = prot.Page;
|
||
prot['Text'] = prot.Text;
|
||
prot['PageInternal'] = prot.PageInternal;
|
||
window['Asc']['c_oAscXAlign'] = window['Asc'].c_oAscXAlign = c_oAscXAlign;
|
||
prot = c_oAscXAlign;
|
||
prot['Center'] = prot.Center;
|
||
prot['Inside'] = prot.Inside;
|
||
prot['Left'] = prot.Left;
|
||
prot['Outside'] = prot.Outside;
|
||
prot['Right'] = prot.Right;
|
||
window['Asc']['c_oAscYAlign'] = window['Asc'].c_oAscYAlign = c_oAscYAlign;
|
||
prot = c_oAscYAlign;
|
||
prot['Bottom'] = prot.Bottom;
|
||
prot['Center'] = prot.Center;
|
||
prot['Inline'] = prot.Inline;
|
||
prot['Inside'] = prot.Inside;
|
||
prot['Outside'] = prot.Outside;
|
||
prot['Top'] = prot.Top;
|
||
window['Asc']['c_oAscVAnchor'] = window['Asc'].c_oAscVAnchor = c_oAscVAnchor;
|
||
prot = c_oAscVAnchor;
|
||
prot['Margin'] = prot.Margin;
|
||
prot['Page'] = prot.Page;
|
||
prot['Text'] = prot.Text;
|
||
window['Asc']['c_oAscRelativeFromH'] = window['Asc'].c_oAscRelativeFromH = c_oAscRelativeFromH;
|
||
prot = c_oAscRelativeFromH;
|
||
prot['Character'] = prot.Character;
|
||
prot['Column'] = prot.Column;
|
||
prot['InsideMargin'] = prot.InsideMargin;
|
||
prot['LeftMargin'] = prot.LeftMargin;
|
||
prot['Margin'] = prot.Margin;
|
||
prot['OutsideMargin'] = prot.OutsideMargin;
|
||
prot['Page'] = prot.Page;
|
||
prot['RightMargin'] = prot.RightMargin;
|
||
window['Asc']['c_oAscRelativeFromV'] = window['Asc'].c_oAscRelativeFromV = c_oAscRelativeFromV;
|
||
prot = c_oAscRelativeFromV;
|
||
prot['BottomMargin'] = prot.BottomMargin;
|
||
prot['InsideMargin'] = prot.InsideMargin;
|
||
prot['Line'] = prot.Line;
|
||
prot['Margin'] = prot.Margin;
|
||
prot['OutsideMargin'] = prot.OutsideMargin;
|
||
prot['Page'] = prot.Page;
|
||
prot['Paragraph'] = prot.Paragraph;
|
||
prot['TopMargin'] = prot.TopMargin;
|
||
window['Asc']['c_oAscBorderStyles'] = window['AscCommon'].c_oAscBorderStyles = c_oAscBorderStyles;
|
||
prot = c_oAscBorderStyles;
|
||
prot['None'] = prot.None;
|
||
prot['Double'] = prot.Double;
|
||
prot['Hair'] = prot.Hair;
|
||
prot['DashDotDot'] = prot.DashDotDot;
|
||
prot['DashDot'] = prot.DashDot;
|
||
prot['Dotted'] = prot.Dotted;
|
||
prot['Dashed'] = prot.Dashed;
|
||
prot['Thin'] = prot.Thin;
|
||
prot['MediumDashDotDot'] = prot.MediumDashDotDot;
|
||
prot['SlantDashDot'] = prot.SlantDashDot;
|
||
prot['MediumDashDot'] = prot.MediumDashDot;
|
||
prot['MediumDashed'] = prot.MediumDashed;
|
||
prot['Medium'] = prot.Medium;
|
||
prot['Thick'] = prot.Thick;
|
||
window['Asc']['c_oAscPageOrientation'] = window['Asc'].c_oAscPageOrientation = c_oAscPageOrientation;
|
||
prot = c_oAscPageOrientation;
|
||
prot['PagePortrait'] = prot.PagePortrait;
|
||
prot['PageLandscape'] = prot.PageLandscape;
|
||
window['Asc']['c_oAscColor'] = window['Asc'].c_oAscColor = c_oAscColor;
|
||
prot = c_oAscColor;
|
||
prot['COLOR_TYPE_NONE'] = prot.COLOR_TYPE_NONE;
|
||
prot['COLOR_TYPE_SRGB'] = prot.COLOR_TYPE_SRGB;
|
||
prot['COLOR_TYPE_PRST'] = prot.COLOR_TYPE_PRST;
|
||
prot['COLOR_TYPE_SCHEME'] = prot.COLOR_TYPE_SCHEME;
|
||
prot['COLOR_TYPE_SYS'] = prot.COLOR_TYPE_SYS;
|
||
window['Asc']['c_oAscFill'] = window['Asc'].c_oAscFill = c_oAscFill;
|
||
prot = c_oAscFill;
|
||
prot['FILL_TYPE_NONE'] = prot.FILL_TYPE_NONE;
|
||
prot['FILL_TYPE_BLIP'] = prot.FILL_TYPE_BLIP;
|
||
prot['FILL_TYPE_NOFILL'] = prot.FILL_TYPE_NOFILL;
|
||
prot['FILL_TYPE_SOLID'] = prot.FILL_TYPE_SOLID;
|
||
prot['FILL_TYPE_GRAD'] = prot.FILL_TYPE_GRAD;
|
||
prot['FILL_TYPE_PATT'] = prot.FILL_TYPE_PATT;
|
||
prot['FILL_TYPE_GRP'] = prot.FILL_TYPE_GRP;
|
||
window['Asc']['c_oAscFillGradType'] = window['Asc'].c_oAscFillGradType = c_oAscFillGradType;
|
||
prot = c_oAscFillGradType;
|
||
prot['GRAD_LINEAR'] = prot.GRAD_LINEAR;
|
||
prot['GRAD_PATH'] = prot.GRAD_PATH;
|
||
window['Asc']['c_oAscFillBlipType'] = window['Asc'].c_oAscFillBlipType = c_oAscFillBlipType;
|
||
prot = c_oAscFillBlipType;
|
||
prot['STRETCH'] = prot.STRETCH;
|
||
prot['TILE'] = prot.TILE;
|
||
window['Asc']['c_oAscStrokeType'] = window['Asc'].c_oAscStrokeType = c_oAscStrokeType;
|
||
prot = c_oAscStrokeType;
|
||
prot['STROKE_NONE'] = prot.STROKE_NONE;
|
||
prot['STROKE_COLOR'] = prot.STROKE_COLOR;
|
||
window['Asc']['c_oAscVAlign'] = window['Asc'].c_oAscVAlign = c_oAscVAlign;
|
||
prot = c_oAscVAlign;
|
||
prot['Bottom'] = prot.Bottom;
|
||
prot['Center'] = prot.Center;
|
||
prot['Dist'] = prot.Dist;
|
||
prot['Just'] = prot.Just;
|
||
prot['Top'] = prot.Top;
|
||
window['Asc']['c_oAscVertDrawingText'] = c_oAscVertDrawingText;
|
||
prot = c_oAscVertDrawingText;
|
||
prot['normal'] = prot.normal;
|
||
prot['vert'] = prot.vert;
|
||
prot['vert270'] = prot.vert270;
|
||
window['Asc']['c_oAscLineJoinType'] = c_oAscLineJoinType;
|
||
prot = c_oAscLineJoinType;
|
||
prot['Round'] = prot.Round;
|
||
prot['Bevel'] = prot.Bevel;
|
||
prot['Miter'] = prot.Miter;
|
||
window['Asc']['c_oAscLineCapType'] = c_oAscLineCapType;
|
||
prot = c_oAscLineCapType;
|
||
prot['Flat'] = prot.Flat;
|
||
prot['Round'] = prot.Round;
|
||
prot['Square'] = prot.Square;
|
||
window['Asc']['c_oAscLineBeginType'] = c_oAscLineBeginType;
|
||
prot = c_oAscLineBeginType;
|
||
prot['None'] = prot.None;
|
||
prot['Arrow'] = prot.Arrow;
|
||
prot['Diamond'] = prot.Diamond;
|
||
prot['Oval'] = prot.Oval;
|
||
prot['Stealth'] = prot.Stealth;
|
||
prot['Triangle'] = prot.Triangle;
|
||
window['Asc']['c_oAscLineBeginSize'] = c_oAscLineBeginSize;
|
||
prot = c_oAscLineBeginSize;
|
||
prot['small_small'] = prot.small_small;
|
||
prot['small_mid'] = prot.small_mid;
|
||
prot['small_large'] = prot.small_large;
|
||
prot['mid_small'] = prot.mid_small;
|
||
prot['mid_mid'] = prot.mid_mid;
|
||
prot['mid_large'] = prot.mid_large;
|
||
prot['large_small'] = prot.large_small;
|
||
prot['large_mid'] = prot.large_mid;
|
||
prot['large_large'] = prot.large_large;
|
||
window['Asc']['c_oAscCellTextDirection'] = window['Asc'].c_oAscCellTextDirection = c_oAscCellTextDirection;
|
||
prot = c_oAscCellTextDirection;
|
||
prot['LRTB'] = prot.LRTB;
|
||
prot['TBRL'] = prot.TBRL;
|
||
prot['BTLR'] = prot.BTLR;
|
||
window['Asc']['c_oAscDocumentUnits'] = window['Asc'].c_oAscDocumentUnits = c_oAscDocumentUnits;
|
||
prot = c_oAscDocumentUnits;
|
||
prot['Millimeter'] = prot.Millimeter;
|
||
prot['Inch'] = prot.Inch;
|
||
prot['Point'] = prot.Point;
|
||
window['Asc']['c_oAscMaxTooltipLength'] = window['Asc'].c_oAscMaxTooltipLength = c_oAscMaxTooltipLength;
|
||
window['Asc']['c_oAscMaxCellOrCommentLength'] = window['Asc'].c_oAscMaxCellOrCommentLength = c_oAscMaxCellOrCommentLength;
|
||
window['Asc']['c_oAscSelectionType'] = window['Asc'].c_oAscSelectionType = c_oAscSelectionType;
|
||
prot = c_oAscSelectionType;
|
||
prot['RangeCells'] = prot.RangeCells;
|
||
prot['RangeCol'] = prot.RangeCol;
|
||
prot['RangeRow'] = prot.RangeRow;
|
||
prot['RangeMax'] = prot.RangeMax;
|
||
prot['RangeImage'] = prot.RangeImage;
|
||
prot['RangeChart'] = prot.RangeChart;
|
||
prot['RangeShape'] = prot.RangeShape;
|
||
prot['RangeShapeText'] = prot.RangeShapeText;
|
||
prot['RangeChartText'] = prot.RangeChartText;
|
||
prot['RangeFrozen'] = prot.RangeFrozen;
|
||
window['Asc']['c_oAscInsertOptions'] = window['Asc'].c_oAscInsertOptions = c_oAscInsertOptions;
|
||
prot = c_oAscInsertOptions;
|
||
prot['InsertCellsAndShiftRight'] = prot.InsertCellsAndShiftRight;
|
||
prot['InsertCellsAndShiftDown'] = prot.InsertCellsAndShiftDown;
|
||
prot['InsertColumns'] = prot.InsertColumns;
|
||
prot['InsertRows'] = prot.InsertRows;
|
||
prot['InsertTableRowAbove'] = prot.InsertTableRowAbove;
|
||
prot['InsertTableRowBelow'] = prot.InsertTableRowBelow;
|
||
prot['InsertTableColLeft'] = prot.InsertTableColLeft;
|
||
prot['InsertTableColRight'] = prot.InsertTableColRight;
|
||
window['Asc']['c_oAscDeleteOptions'] = window['Asc'].c_oAscDeleteOptions = c_oAscDeleteOptions;
|
||
prot = c_oAscDeleteOptions;
|
||
prot['DeleteCellsAndShiftLeft'] = prot.DeleteCellsAndShiftLeft;
|
||
prot['DeleteCellsAndShiftTop'] = prot.DeleteCellsAndShiftTop;
|
||
prot['DeleteColumns'] = prot.DeleteColumns;
|
||
prot['DeleteRows'] = prot.DeleteRows;
|
||
prot['DeleteTable'] = prot.DeleteTable;
|
||
|
||
window['Asc']['c_oDashType'] = window['Asc'].c_oDashType = c_oDashType;
|
||
prot = c_oDashType;
|
||
prot['dash'] = prot.dash;
|
||
prot['dashDot'] = prot.dashDot;
|
||
prot['dot'] = prot.dot;
|
||
prot['lgDash'] = prot.lgDash;
|
||
prot['lgDashDot'] = prot.lgDashDot;
|
||
prot['lgDashDotDot'] = prot.lgDashDotDot;
|
||
prot['solid'] = prot.solid;
|
||
prot['sysDash'] = prot.sysDash;
|
||
prot['sysDashDot'] = prot.sysDashDot;
|
||
prot['sysDashDotDot'] = prot.sysDashDotDot;
|
||
prot['sysDot'] = prot.sysDot;
|
||
|
||
|
||
window['Asc']['c_oAscMathInterfaceType'] = window['Asc'].c_oAscMathInterfaceType = c_oAscMathInterfaceType;
|
||
prot = c_oAscMathInterfaceType;
|
||
prot['Common'] = prot.Common;
|
||
prot['Fraction'] = prot.Fraction;
|
||
prot['Script'] = prot.Script;
|
||
prot['Radical'] = prot.Radical;
|
||
prot['LargeOperator'] = prot.LargeOperator;
|
||
prot['Delimiter'] = prot.Delimiter;
|
||
prot['Function'] = prot.Function;
|
||
prot['Accent'] = prot.Accent;
|
||
prot['BorderBox'] = prot.BorderBox;
|
||
prot['Bar'] = prot.Bar;
|
||
prot['Box'] = prot.Box;
|
||
prot['Limit'] = prot.Limit;
|
||
prot['GroupChar'] = prot.GroupChar;
|
||
prot['Matrix'] = prot.Matrix;
|
||
prot['EqArray'] = prot.EqArray;
|
||
prot['Phantom'] = prot.Phantom;
|
||
|
||
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceBarPos'] = window['Asc'].c_oAscMathInterfaceBarPos = c_oAscMathInterfaceBarPos;
|
||
prot['Top'] = c_oAscMathInterfaceBarPos.Top;
|
||
prot['Bottom'] = c_oAscMathInterfaceBarPos.Bottom;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceScript'] = window['Asc'].c_oAscMathInterfaceScript = c_oAscMathInterfaceScript;
|
||
prot['None'] = c_oAscMathInterfaceScript.None;
|
||
prot['Sup'] = c_oAscMathInterfaceScript.Sup;
|
||
prot['Sub'] = c_oAscMathInterfaceScript.Sub;
|
||
prot['SubSup'] = c_oAscMathInterfaceScript.SubSup;
|
||
prot['PreSubSup'] = c_oAscMathInterfaceScript.PreSubSup;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceFraction'] = window['Asc'].c_oAscMathInterfaceFraction = c_oAscMathInterfaceFraction;
|
||
prot['None'] = c_oAscMathInterfaceFraction.Bar;
|
||
prot['Skewed'] = c_oAscMathInterfaceFraction.Skewed;
|
||
prot['Linear'] = c_oAscMathInterfaceFraction.Linear;
|
||
prot['NoBar'] = c_oAscMathInterfaceFraction.NoBar;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceLimitPos'] = window['Asc'].c_oAscMathInterfaceLimitPos = c_oAscMathInterfaceLimitPos;
|
||
prot['None'] = c_oAscMathInterfaceLimitPos.None;
|
||
prot['Top'] = c_oAscMathInterfaceLimitPos.Top;
|
||
prot['Bottom'] = c_oAscMathInterfaceLimitPos.Bottom;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceMatrixMatrixAlign'] = window['Asc'].c_oAscMathInterfaceMatrixMatrixAlign = c_oAscMathInterfaceMatrixMatrixAlign;
|
||
prot['Top'] = c_oAscMathInterfaceMatrixMatrixAlign.Top;
|
||
prot['Center'] = c_oAscMathInterfaceMatrixMatrixAlign.Center;
|
||
prot['Bottom'] = c_oAscMathInterfaceMatrixMatrixAlign.Bottom;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceMatrixColumnAlign'] = window['Asc'].c_oAscMathInterfaceMatrixColumnAlign = c_oAscMathInterfaceMatrixColumnAlign;
|
||
prot['Left'] = c_oAscMathInterfaceMatrixColumnAlign.Left;
|
||
prot['Center'] = c_oAscMathInterfaceMatrixColumnAlign.Center;
|
||
prot['Right'] = c_oAscMathInterfaceMatrixColumnAlign.Right;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceEqArrayAlign'] = window['Asc'].c_oAscMathInterfaceEqArrayAlign = c_oAscMathInterfaceEqArrayAlign;
|
||
prot['Top'] = c_oAscMathInterfaceEqArrayAlign.Top;
|
||
prot['Center'] = c_oAscMathInterfaceEqArrayAlign.Center;
|
||
prot['Bottom'] = c_oAscMathInterfaceEqArrayAlign.Bottom;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceNaryLimitLocation'] = window['Asc'].c_oAscMathInterfaceNaryLimitLocation = c_oAscMathInterfaceNaryLimitLocation;
|
||
prot['UndOvr'] = c_oAscMathInterfaceNaryLimitLocation.UndOvr;
|
||
prot['SubSup'] = c_oAscMathInterfaceNaryLimitLocation.SubSup;
|
||
|
||
prot = window['Asc']['c_oAscMathInterfaceGroupCharPos'] = window['Asc'].c_oAscMathInterfaceGroupCharPos = c_oAscMathInterfaceGroupCharPos;
|
||
prot['None'] = c_oAscMathInterfaceGroupCharPos.None;
|
||
prot['Top'] = c_oAscMathInterfaceGroupCharPos.Top;
|
||
prot['Bottom'] = c_oAscMathInterfaceGroupCharPos.Bottom;
|
||
|
||
prot = window['Asc']['c_oAscTabLeader'] = window['Asc'].c_oAscTabLeader = c_oAscTabLeader;
|
||
prot["None"] = c_oAscTabLeader.None;
|
||
prot["Heavy"] = c_oAscTabLeader.Heavy;
|
||
prot["Dot"] = c_oAscTabLeader.Dot;
|
||
prot["Hyphen"] = c_oAscTabLeader.Hyphen;
|
||
prot["MiddleDot"] = c_oAscTabLeader.MiddleDot;
|
||
prot["Underscore"] = c_oAscTabLeader.Underscore;
|
||
|
||
prot = window['Asc']['c_oAscRestrictionType'] = window['Asc'].c_oAscRestrictionType = c_oAscRestrictionType;
|
||
prot['None'] = c_oAscRestrictionType.None;
|
||
prot['OnlyForms'] = c_oAscRestrictionType.OnlyForms;
|
||
prot['OnlyComments'] = c_oAscRestrictionType.OnlyComments;
|
||
prot['OnlySignatures'] = c_oAscRestrictionType.OnlySignatures;
|
||
prot['View'] = c_oAscRestrictionType.View;
|
||
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window["AscCommon"].g_cCharDelimiter = g_cCharDelimiter;
|
||
window["AscCommon"].g_cGeneralFormat = g_cGeneralFormat;
|
||
window["AscCommon"].bDate1904 = false;
|
||
window["AscCommon"].c_oAscAdvancedOptionsAction = c_oAscAdvancedOptionsAction;
|
||
window["AscCommon"].DownloadType = DownloadType;
|
||
window["AscCommon"].CellValueType = CellValueType;
|
||
window["AscCommon"].c_oAscCellAnchorType = c_oAscCellAnchorType;
|
||
window["AscCommon"].c_oAscChartDefines = c_oAscChartDefines;
|
||
window["AscCommon"].c_oAscStyleImage = c_oAscStyleImage;
|
||
window["AscCommon"].c_oAscLineDrawingRule = c_oAscLineDrawingRule;
|
||
window["AscCommon"].vertalign_Baseline = vertalign_Baseline;
|
||
window["AscCommon"].vertalign_SuperScript = vertalign_SuperScript;
|
||
window["AscCommon"].vertalign_SubScript = vertalign_SubScript;
|
||
window["AscCommon"].hdrftr_Header = hdrftr_Header;
|
||
window["AscCommon"].hdrftr_Footer = hdrftr_Footer;
|
||
window["AscCommon"].c_oAscSizeRelFromH = c_oAscSizeRelFromH;
|
||
window["AscCommon"].c_oAscSizeRelFromV = c_oAscSizeRelFromV;
|
||
window["AscCommon"].c_oAscWrapStyle = c_oAscWrapStyle;
|
||
window["AscCommon"].c_oAscBorderWidth = c_oAscBorderWidth;
|
||
window["AscCommon"].c_oAscBorderType = c_oAscBorderType;
|
||
window["AscCommon"].c_oAscLockTypes = c_oAscLockTypes;
|
||
window["AscCommon"].c_oAscFormatPainterState = c_oAscFormatPainterState;
|
||
window["AscCommon"].c_oAscSaveTypes = c_oAscSaveTypes;
|
||
window["AscCommon"].c_oAscChartType = c_oAscChartType;
|
||
window["AscCommon"].c_oAscChartSubType = c_oAscChartSubType;
|
||
window["AscCommon"].c_oAscCsvDelimiter = c_oAscCsvDelimiter;
|
||
window["AscCommon"].c_oAscUrlType = c_oAscUrlType;
|
||
window["AscCommon"].c_oAscMouseMoveDataTypes = c_oAscMouseMoveDataTypes;
|
||
window["AscCommon"].c_oAscPrintDefaultSettings = c_oAscPrintDefaultSettings;
|
||
window["AscCommon"].c_oZoomType = c_oZoomType;
|
||
window["AscCommon"].c_oNotifyType = c_oNotifyType;
|
||
window["AscCommon"].c_oNotifyParentType = c_oNotifyParentType;
|
||
window["AscCommon"].c_oAscEncodings = c_oAscEncodings;
|
||
window["AscCommon"].c_oAscEncodingsMap = c_oAscEncodingsMap;
|
||
window["AscCommon"].c_oAscCodePageNone = c_oAscCodePageNone;
|
||
window["AscCommon"].c_oAscCodePageUtf7 = c_oAscCodePageUtf7;
|
||
window["AscCommon"].c_oAscCodePageUtf8 = c_oAscCodePageUtf8;
|
||
window["AscCommon"].c_oAscCodePageUtf16 = c_oAscCodePageUtf16;
|
||
window["AscCommon"].c_oAscCodePageUtf16BE = c_oAscCodePageUtf16BE;
|
||
window["AscCommon"].c_oAscCodePageUtf32 = c_oAscCodePageUtf32;
|
||
window["AscCommon"].c_oAscCodePageUtf32BE = c_oAscCodePageUtf32BE;
|
||
window["AscCommon"].c_oAscMaxFormulaLength = c_oAscMaxFormulaLength;
|
||
|
||
window["AscCommon"].locktype_None = locktype_None;
|
||
window["AscCommon"].locktype_Mine = locktype_Mine;
|
||
window["AscCommon"].locktype_Other = locktype_Other;
|
||
window["AscCommon"].locktype_Other2 = locktype_Other2;
|
||
window["AscCommon"].locktype_Other3 = locktype_Other3;
|
||
|
||
window["AscCommon"].changestype_None = changestype_None;
|
||
window["AscCommon"].changestype_Paragraph_Content = changestype_Paragraph_Content;
|
||
window["AscCommon"].changestype_Paragraph_Properties = changestype_Paragraph_Properties;
|
||
window["AscCommon"].changestype_Paragraph_AddText = changestype_Paragraph_AddText;
|
||
window["AscCommon"].changestype_Document_Content = changestype_Document_Content;
|
||
window["AscCommon"].changestype_Document_Content_Add = changestype_Document_Content_Add;
|
||
window["AscCommon"].changestype_Document_SectPr = changestype_Document_SectPr;
|
||
window["AscCommon"].changestype_Document_Styles = changestype_Document_Styles;
|
||
window["AscCommon"].changestype_Table_Properties = changestype_Table_Properties;
|
||
window["AscCommon"].changestype_Table_RemoveCells = changestype_Table_RemoveCells;
|
||
window["AscCommon"].changestype_Image_Properties = changestype_Image_Properties;
|
||
window["AscCommon"].changestype_ContentControl_Remove = changestype_ContentControl_Remove;
|
||
window["AscCommon"].changestype_ContentControl_Properties = changestype_ContentControl_Properties;
|
||
window["AscCommon"].changestype_ContentControl_Add = changestype_ContentControl_Add;
|
||
window["AscCommon"].changestype_HdrFtr = changestype_HdrFtr;
|
||
window["AscCommon"].changestype_Remove = changestype_Remove;
|
||
window["AscCommon"].changestype_Delete = changestype_Delete;
|
||
window["AscCommon"].changestype_Drawing_Props = changestype_Drawing_Props;
|
||
window["AscCommon"].changestype_ColorScheme = changestype_ColorScheme;
|
||
window["AscCommon"].changestype_Text_Props = changestype_Text_Props;
|
||
window["AscCommon"].changestype_RemoveSlide = changestype_RemoveSlide;
|
||
window["AscCommon"].changestype_Theme = changestype_Theme;
|
||
window["AscCommon"].changestype_SlideSize = changestype_SlideSize;
|
||
window["AscCommon"].changestype_SlideBg = changestype_SlideBg;
|
||
window["AscCommon"].changestype_SlideTiming = changestype_SlideTiming;
|
||
window["AscCommon"].changestype_MoveComment = changestype_MoveComment;
|
||
window["AscCommon"].changestype_AddComment = changestype_AddComment;
|
||
window["AscCommon"].changestype_Layout = changestype_Layout;
|
||
window["AscCommon"].changestype_AddShape = changestype_AddShape;
|
||
window["AscCommon"].changestype_AddShapes = changestype_AddShapes;
|
||
window["AscCommon"].changestype_PresDefaultLang = changestype_PresDefaultLang;
|
||
window["AscCommon"].changestype_SlideHide = changestype_SlideHide;
|
||
window["AscCommon"].changestype_2_InlineObjectMove = changestype_2_InlineObjectMove;
|
||
window["AscCommon"].changestype_2_HdrFtr = changestype_2_HdrFtr;
|
||
window["AscCommon"].changestype_2_Comment = changestype_2_Comment;
|
||
window["AscCommon"].changestype_2_Element_and_Type = changestype_2_Element_and_Type;
|
||
window["AscCommon"].changestype_2_ElementsArray_and_Type = changestype_2_ElementsArray_and_Type;
|
||
window["AscCommon"].changestype_2_AdditionalTypes = changestype_2_AdditionalTypes;
|
||
window["AscCommon"].changestype_2_Element_and_Type_Array = changestype_2_Element_and_Type_Array;
|
||
window["AscCommon"].contentchanges_Add = contentchanges_Add;
|
||
window["AscCommon"].contentchanges_Remove = contentchanges_Remove;
|
||
|
||
window["AscCommon"].PUNCTUATION_FLAG_BASE = PUNCTUATION_FLAG_BASE;
|
||
window["AscCommon"].PUNCTUATION_FLAG_CANT_BE_AT_BEGIN = PUNCTUATION_FLAG_CANT_BE_AT_BEGIN;
|
||
window["AscCommon"].PUNCTUATION_FLAG_CANT_BE_AT_END = PUNCTUATION_FLAG_CANT_BE_AT_END;
|
||
window["AscCommon"].PUNCTUATION_FLAG_EAST_ASIAN = PUNCTUATION_FLAG_EAST_ASIAN;
|
||
window["AscCommon"].PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E = PUNCTUATION_FLAG_CANT_BE_AT_BEGIN_E;
|
||
window["AscCommon"].PUNCTUATION_FLAG_CANT_BE_AT_END_E = PUNCTUATION_FLAG_CANT_BE_AT_END_E;
|
||
window["AscCommon"].g_aPunctuation = g_aPunctuation;
|
||
|
||
window["AscCommon"].offlineMode = offlineMode;
|
||
window["AscCommon"].chartMode = chartMode;
|
||
|
||
window['AscCommon']['align_Right'] = window['AscCommon'].align_Right = align_Right;
|
||
window['AscCommon']['align_Left'] = window['AscCommon'].align_Left = align_Left;
|
||
window['AscCommon']['align_Center'] = window['AscCommon'].align_Center = align_Center;
|
||
window['AscCommon']['align_Justify'] = window['AscCommon'].align_Justify = align_Justify;
|
||
|
||
window['Asc']['c_oSpecialPasteProps'] = window['Asc'].c_oSpecialPasteProps = c_oSpecialPasteProps;
|
||
prot = c_oSpecialPasteProps;
|
||
prot['paste'] = prot.paste;
|
||
prot['pasteOnlyFormula'] = prot.pasteOnlyFormula;
|
||
prot['formulaNumberFormat'] = prot.formulaNumberFormat;
|
||
prot['formulaAllFormatting'] = prot.formulaAllFormatting;
|
||
prot['formulaWithoutBorders'] = prot.formulaWithoutBorders;
|
||
prot['formulaColumnWidth'] = prot.formulaColumnWidth;
|
||
prot['mergeConditionalFormating'] = prot.mergeConditionalFormating;
|
||
prot['pasteOnlyValues'] = prot.pasteOnlyValues;
|
||
prot['valueNumberFormat'] = prot.valueNumberFormat;
|
||
prot['valueAllFormating'] = prot.valueAllFormating;
|
||
prot['pasteOnlyFormating'] = prot.pasteOnlyFormating;
|
||
prot['transpose'] = prot.transpose;
|
||
prot['link'] = prot.link;
|
||
prot['picture'] = prot.picture;
|
||
prot['linkedPicture'] = prot.linkedPicture;
|
||
prot['sourceformatting'] = prot.sourceformatting;
|
||
prot['destinationFormatting'] = prot.destinationFormatting;
|
||
prot['mergeFormatting'] = prot.mergeFormatting;
|
||
prot['uniteList'] = prot.uniteList;
|
||
prot['doNotUniteList'] = prot.doNotUniteList;
|
||
prot['keepTextOnly'] = prot.keepTextOnly;
|
||
prot['insertAsNestedTable'] = prot.insertAsNestedTable;
|
||
prot['overwriteCells'] = prot.overwriteCells;
|
||
|
||
window['Asc']['c_oAscNumberingFormat'] = window['Asc'].c_oAscNumberingFormat = c_oAscNumberingFormat;
|
||
prot = c_oAscNumberingFormat;
|
||
prot['None'] = c_oAscNumberingFormat.None;
|
||
prot['Bullet'] = c_oAscNumberingFormat.Bullet;
|
||
prot['Decimal'] = c_oAscNumberingFormat.Decimal;
|
||
prot['LowerRoman'] = c_oAscNumberingFormat.LowerRoman;
|
||
prot['UpperRoman'] = c_oAscNumberingFormat.UpperRoman;
|
||
prot['LowerLetter'] = c_oAscNumberingFormat.LowerLetter;
|
||
prot['UpperLetter'] = c_oAscNumberingFormat.UpperLetter;
|
||
prot['DecimalZero'] = c_oAscNumberingFormat.DecimalZero;
|
||
|
||
window['Asc']['c_oAscNumberingSuff'] = window['Asc'].c_oAscNumberingSuff = c_oAscNumberingSuff;
|
||
prot = c_oAscNumberingSuff;
|
||
prot['Tab'] = c_oAscNumberingSuff.Tab;
|
||
prot['Space'] = c_oAscNumberingSuff.Space;
|
||
prot['None'] = c_oAscNumberingSuff.None;
|
||
|
||
window['Asc']['c_oAscNumberingLvlTextType'] = window['Asc'].c_oAscNumberingLvlTextType = c_oAscNumberingLvlTextType;
|
||
prot = c_oAscNumberingLvlTextType;
|
||
prot['Text'] = c_oAscNumberingLvlTextType.Text;
|
||
prot['Num'] = c_oAscNumberingLvlTextType.Num;
|
||
|
||
prot = window['Asc']['c_oAscSdtAppearance'] = window['Asc'].c_oAscSdtAppearance = c_oAscSdtAppearance;
|
||
prot['Frame'] = c_oAscSdtAppearance.Frame;
|
||
prot['Hidden'] = c_oAscSdtAppearance.Hidden;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function(window, undefined) {
|
||
/**
|
||
* Класс user для совместного редактирования/просмотра документа
|
||
* -----------------------------------------------------------------------------
|
||
*
|
||
* @constructor
|
||
* @memberOf Asc
|
||
*/
|
||
function asc_CUser(val) {
|
||
this.id = null; // уникальный id - пользователя
|
||
this.idOriginal = null; // уникальный id - пользователя
|
||
this.userName = null; // имя пользователя
|
||
this.state = undefined; // состояние (true - подключен, false - отключился)
|
||
this.indexUser = -1; // Индекс пользователя (фактически равно числу заходов в документ на сервере)
|
||
this.color = null; // цвет пользователя
|
||
this.view = false; // просмотр(true), редактор(false)
|
||
|
||
this._setUser(val);
|
||
return this;
|
||
}
|
||
|
||
asc_CUser.prototype._setUser = function(val) {
|
||
if (val) {
|
||
this.id = val['id'];
|
||
this.idOriginal = val['idOriginal'];
|
||
this.userName = val['username'];
|
||
this.indexUser = val['indexUser'];
|
||
this.color = window['AscCommon'].getUserColorById(this.idOriginal, this.userName, false, true);
|
||
this.view = val['view'];
|
||
}
|
||
};
|
||
asc_CUser.prototype.asc_getId = function() {
|
||
return this.id;
|
||
};
|
||
asc_CUser.prototype.asc_getIdOriginal = function() {
|
||
return this.idOriginal;
|
||
};
|
||
asc_CUser.prototype.asc_getUserName = function() {
|
||
return this.userName;
|
||
};
|
||
asc_CUser.prototype.asc_getFirstName = function() {
|
||
return this.firstName;
|
||
};
|
||
asc_CUser.prototype.asc_getLastName = function() {
|
||
return this.lastName;
|
||
};
|
||
asc_CUser.prototype.asc_getState = function() {
|
||
return this.state;
|
||
};
|
||
asc_CUser.prototype.asc_getColor = function() {
|
||
return '#' + ('000000' + this.color.toString(16)).substr(-6);
|
||
};
|
||
asc_CUser.prototype.asc_getView = function() {
|
||
return this.view;
|
||
};
|
||
asc_CUser.prototype.setId = function(val) {
|
||
this.id = val;
|
||
};
|
||
asc_CUser.prototype.setUserName = function(val) {
|
||
this.userName = val;
|
||
};
|
||
asc_CUser.prototype.setFirstName = function(val) {
|
||
this.firstName = val;
|
||
};
|
||
asc_CUser.prototype.setLastName = function(val) {
|
||
this.lastName = val;
|
||
};
|
||
asc_CUser.prototype.setState = function(val) {
|
||
this.state = val;
|
||
};
|
||
|
||
var ConnectionState = {
|
||
Reconnect: -1, // reconnect state
|
||
None: 0, // not initialized
|
||
WaitAuth: 1, // waiting session id
|
||
Authorized: 2, // authorized
|
||
ClosedCoAuth: 3, // closed coauthoring
|
||
ClosedAll: 4, // closed all
|
||
|
||
SaveChanges: 10, // save
|
||
AskSaveChanges: 11 // ask save
|
||
};
|
||
|
||
var c_oEditorId = {
|
||
Word:0,
|
||
Spreadsheet:1,
|
||
Presentation:2
|
||
};
|
||
|
||
var c_oCloseCode = {
|
||
serverShutdown: 4001,
|
||
sessionIdle: 4002,
|
||
sessionAbsolute: 4003,
|
||
accessDeny: 4004,
|
||
jwtExpired: 4005,
|
||
jwtError: 4006,
|
||
drop: 4007
|
||
};
|
||
|
||
var c_oAscServerCommandErrors = {
|
||
NoError: 0,
|
||
DocumentIdError: 1,
|
||
ParseError: 2,
|
||
UnknownError: 3,
|
||
NotModified: 4,
|
||
UnknownCommand: 5,
|
||
Token: 6,
|
||
TokenExpire: 7
|
||
};
|
||
|
||
var c_oAscForceSaveTypes = {
|
||
Command: 0,
|
||
Button: 1,
|
||
Timeout: 2
|
||
};
|
||
|
||
/*
|
||
* Export
|
||
* -----------------------------------------------------------------------------
|
||
*/
|
||
var prot;
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window["AscCommon"].asc_CUser = asc_CUser;
|
||
prot = asc_CUser.prototype;
|
||
prot["asc_getId"] = prot.asc_getId;
|
||
prot["asc_getIdOriginal"] = prot.asc_getIdOriginal;
|
||
prot["asc_getUserName"] = prot.asc_getUserName;
|
||
prot["asc_getState"] = prot.asc_getState;
|
||
prot["asc_getColor"] = prot.asc_getColor;
|
||
prot["asc_getView"] = prot.asc_getView;
|
||
|
||
window["AscCommon"].ConnectionState = ConnectionState;
|
||
window["AscCommon"].c_oEditorId = c_oEditorId;
|
||
window["AscCommon"].c_oCloseCode = c_oCloseCode;
|
||
window["AscCommon"].c_oAscServerCommandErrors = c_oAscServerCommandErrors;
|
||
window["AscCommon"].c_oAscForceSaveTypes = c_oAscForceSaveTypes;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(function(window, undefined) {
|
||
'use strict';
|
||
|
||
var Asc = window['Asc'];
|
||
var AscCommon = window['AscCommon'];
|
||
|
||
var ConnectionState = AscCommon.ConnectionState;
|
||
var c_oEditorId = AscCommon.c_oEditorId;
|
||
var c_oCloseCode = AscCommon.c_oCloseCode;
|
||
var c_oAscServerCommandErrors = AscCommon.c_oAscServerCommandErrors;
|
||
var c_oAscForceSaveTypes = AscCommon.c_oAscForceSaveTypes;
|
||
|
||
// Класс надстройка, для online и offline работы
|
||
function CDocsCoApi(options) {
|
||
this._CoAuthoringApi = new DocsCoApi();
|
||
this._onlineWork = false;
|
||
|
||
if (options) {
|
||
this.onAuthParticipantsChanged = options.onAuthParticipantsChanged;
|
||
this.onParticipantsChanged = options.onParticipantsChanged;
|
||
this.onMessage = options.onMessage;
|
||
this.onServerVersion = options.onServerVersion;
|
||
this.onCursor = options.onCursor;
|
||
this.onMeta = options.onMeta;
|
||
this.onSession = options.onSession;
|
||
this.onExpiredToken = options.onExpiredToken;
|
||
this.onForceSave = options.onForceSave;
|
||
this.onHasForgotten = options.onHasForgotten;
|
||
this.onLocksAcquired = options.onLocksAcquired;
|
||
this.onLocksReleased = options.onLocksReleased;
|
||
this.onLocksReleasedEnd = options.onLocksReleasedEnd; // ToDo переделать на массив release locks
|
||
this.onDisconnect = options.onDisconnect;
|
||
this.onWarning = options.onWarning;
|
||
this.onFirstLoadChangesEnd = options.onFirstLoadChangesEnd;
|
||
this.onConnectionStateChanged = options.onConnectionStateChanged;
|
||
this.onSetIndexUser = options.onSetIndexUser;
|
||
this.onSpellCheckInit = options.onSpellCheckInit;
|
||
this.onSaveChanges = options.onSaveChanges;
|
||
this.onStartCoAuthoring = options.onStartCoAuthoring;
|
||
this.onEndCoAuthoring = options.onEndCoAuthoring;
|
||
this.onUnSaveLock = options.onUnSaveLock;
|
||
this.onRecalcLocks = options.onRecalcLocks;
|
||
this.onDocumentOpen = options.onDocumentOpen;
|
||
this.onFirstConnect = options.onFirstConnect;
|
||
this.onLicense = options.onLicense;
|
||
this.onLicenseChanged = options.onLicenseChanged;
|
||
}
|
||
}
|
||
|
||
CDocsCoApi.prototype.init = function(user, docid, documentCallbackUrl, token, editorType, documentFormatSave, docInfo) {
|
||
if (this._CoAuthoringApi && this._CoAuthoringApi.isRightURL()) {
|
||
var t = this;
|
||
this._CoAuthoringApi.onAuthParticipantsChanged = function(e, id) {
|
||
t.callback_OnAuthParticipantsChanged(e, id);
|
||
};
|
||
this._CoAuthoringApi.onParticipantsChanged = function(e) {
|
||
t.callback_OnParticipantsChanged(e);
|
||
};
|
||
this._CoAuthoringApi.onMessage = function(e, clear) {
|
||
t.callback_OnMessage(e, clear);
|
||
};
|
||
this._CoAuthoringApi.onServerVersion = function(e) {
|
||
t.callback_OnServerVersion(e);
|
||
};
|
||
this._CoAuthoringApi.onCursor = function(e) {
|
||
t.callback_OnCursor(e);
|
||
};
|
||
this._CoAuthoringApi.onMeta = function(e) {
|
||
t.callback_OnMeta(e);
|
||
};
|
||
this._CoAuthoringApi.onSession = function(e) {
|
||
t.callback_OnSession(e);
|
||
};
|
||
this._CoAuthoringApi.onExpiredToken = function(e) {
|
||
t.callback_OnExpiredToken(e);
|
||
};
|
||
this._CoAuthoringApi.onHasForgotten = function(e) {
|
||
t.callback_OnHasForgotten(e);
|
||
};
|
||
this._CoAuthoringApi.onForceSave = function(e) {
|
||
t.callback_OnForceSave(e);
|
||
};
|
||
this._CoAuthoringApi.onLocksAcquired = function(e) {
|
||
t.callback_OnLocksAcquired(e);
|
||
};
|
||
this._CoAuthoringApi.onLocksReleased = function(e, bChanges) {
|
||
t.callback_OnLocksReleased(e, bChanges);
|
||
};
|
||
this._CoAuthoringApi.onLocksReleasedEnd = function() {
|
||
t.callback_OnLocksReleasedEnd();
|
||
};
|
||
this._CoAuthoringApi.onDisconnect = function(e, error) {
|
||
t.callback_OnDisconnect(e, error);
|
||
};
|
||
this._CoAuthoringApi.onWarning = function(e) {
|
||
t.callback_OnWarning(e);
|
||
};
|
||
this._CoAuthoringApi.onFirstLoadChangesEnd = function() {
|
||
t.callback_OnFirstLoadChangesEnd();
|
||
};
|
||
this._CoAuthoringApi.onConnectionStateChanged = function(e) {
|
||
t.callback_OnConnectionStateChanged(e);
|
||
};
|
||
this._CoAuthoringApi.onSetIndexUser = function(e) {
|
||
t.callback_OnSetIndexUser(e);
|
||
};
|
||
this._CoAuthoringApi.onSpellCheckInit = function(e) {
|
||
t.callback_OnSpellCheckInit(e);
|
||
};
|
||
this._CoAuthoringApi.onSaveChanges = function(e, userId, bFirstLoad) {
|
||
t.callback_OnSaveChanges(e, userId, bFirstLoad);
|
||
};
|
||
// Callback есть пользователей больше 1
|
||
this._CoAuthoringApi.onStartCoAuthoring = function(e) {
|
||
t.callback_OnStartCoAuthoring(e);
|
||
};
|
||
this._CoAuthoringApi.onEndCoAuthoring = function(e) {
|
||
t.callback_OnEndCoAuthoring(e);
|
||
};
|
||
this._CoAuthoringApi.onUnSaveLock = function() {
|
||
t.callback_OnUnSaveLock();
|
||
};
|
||
this._CoAuthoringApi.onRecalcLocks = function(e) {
|
||
t.callback_OnRecalcLocks(e);
|
||
};
|
||
this._CoAuthoringApi.onDocumentOpen = function(data) {
|
||
t.callback_OnDocumentOpen(data);
|
||
};
|
||
this._CoAuthoringApi.onFirstConnect = function() {
|
||
t.callback_OnFirstConnect();
|
||
};
|
||
this._CoAuthoringApi.onLicense = function(res) {
|
||
t.callback_OnLicense(res);
|
||
};
|
||
this._CoAuthoringApi.onLicenseChanged = function(res) {
|
||
t.callback_OnLicenseChanged(res);
|
||
};
|
||
|
||
this._CoAuthoringApi.init(user, docid, documentCallbackUrl, token, editorType, documentFormatSave, docInfo);
|
||
this._onlineWork = true;
|
||
} else {
|
||
// Фиктивные вызовы
|
||
this.onFirstConnect();
|
||
this.onLicense(null);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.getDocId = function() {
|
||
if (this._CoAuthoringApi) {
|
||
return this._CoAuthoringApi.getDocId()
|
||
}
|
||
return undefined;
|
||
};
|
||
CDocsCoApi.prototype.setDocId = function(docId) {
|
||
if (this._CoAuthoringApi) {
|
||
return this._CoAuthoringApi.setDocId(docId)
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.auth = function(isViewer, opt_openCmd, opt_isIdle) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.auth(isViewer, opt_openCmd, opt_isIdle);
|
||
} else {
|
||
// Фиктивные вызовы
|
||
this.callback_OnSpellCheckInit('');
|
||
this.callback_OnSetIndexUser('123');
|
||
this.onFirstLoadChangesEnd();
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.set_url = function(url) {
|
||
if (this._CoAuthoringApi) {
|
||
this._CoAuthoringApi.set_url(url);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.get_onlineWork = function() {
|
||
return this._onlineWork;
|
||
};
|
||
|
||
CDocsCoApi.prototype.get_state = function() {
|
||
if (this._CoAuthoringApi) {
|
||
return this._CoAuthoringApi.get_state();
|
||
}
|
||
|
||
return 0;
|
||
};
|
||
|
||
CDocsCoApi.prototype.openDocument = function(data) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.openDocument(data);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.sendRawData = function(data) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.sendRawData(data);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.getMessages = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.getMessages();
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.sendMessage = function(message) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.sendMessage(message);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.sendCursor = function(cursor) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.sendCursor(cursor);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.sendChangesError = function(data) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.sendChangesError(data);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.askLock = function(arrayBlockId, callback) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.askLock(arrayBlockId, callback);
|
||
} else {
|
||
var t = this;
|
||
window.setTimeout(function() {
|
||
if (callback) {
|
||
var lengthArray = (arrayBlockId) ? arrayBlockId.length : 0;
|
||
if (0 < lengthArray) {
|
||
callback({"lock": arrayBlockId[0]});
|
||
// Фиктивные вызовы
|
||
for (var i = 0; i < lengthArray; ++i) {
|
||
t.callback_OnLocksAcquired({"state": 2, "block": arrayBlockId[i]});
|
||
}
|
||
}
|
||
}
|
||
}, 1);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.askSaveChanges = function(callback) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.askSaveChanges(callback);
|
||
} else {
|
||
window.setTimeout(function() {
|
||
if (callback) {
|
||
// Фиктивные вызовы
|
||
callback({"saveLock": false});
|
||
}
|
||
}, 100);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.unSaveLock = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.unSaveLock();
|
||
} else {
|
||
var t = this;
|
||
window.setTimeout(function() {
|
||
// Фиктивные вызовы
|
||
t.callback_OnUnSaveLock();
|
||
}, 100);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.saveChanges = function(arrayChanges, deleteIndex, excelAdditionalInfo, canUnlockDocument, canReleaseLocks) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.canUnlockDocument = canUnlockDocument;
|
||
this._CoAuthoringApi.canReleaseLocks = canReleaseLocks;
|
||
this._CoAuthoringApi.saveChanges(arrayChanges, null, deleteIndex, excelAdditionalInfo);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.unLockDocument = function(isSave, canUnlockDocument, deleteIndex, canReleaseLocks) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.canUnlockDocument = canUnlockDocument;
|
||
this._CoAuthoringApi.canReleaseLocks = canReleaseLocks;
|
||
this._CoAuthoringApi.unLockDocument(isSave, deleteIndex);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.getUsers = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.getUsers();
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.getUserConnectionId = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
return this._CoAuthoringApi.getUserConnectionId();
|
||
}
|
||
return null;
|
||
};
|
||
|
||
CDocsCoApi.prototype.get_indexUser = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
return this._CoAuthoringApi.get_indexUser();
|
||
}
|
||
return null;
|
||
};
|
||
|
||
CDocsCoApi.prototype.get_isAuth = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
return this._CoAuthoringApi.get_isAuth();
|
||
}
|
||
return null;
|
||
};
|
||
|
||
CDocsCoApi.prototype.get_jwt = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
return this._CoAuthoringApi.get_jwt();
|
||
}
|
||
return null;
|
||
};
|
||
|
||
CDocsCoApi.prototype.releaseLocks = function(blockId) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.releaseLocks(blockId);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.disconnect = function(opt_code, opt_reason) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.disconnect(opt_code, opt_reason);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.extendSession = function(idleTime) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.extendSession(idleTime);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.versionHistory = function(data) {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
this._CoAuthoringApi.versionHistory(data);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.forceSave = function() {
|
||
if (this._CoAuthoringApi && this._onlineWork) {
|
||
return this._CoAuthoringApi.forceSave();
|
||
}
|
||
return false;
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnAuthParticipantsChanged = function(e, id) {
|
||
if (this.onAuthParticipantsChanged) {
|
||
this.onAuthParticipantsChanged(e, id);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnParticipantsChanged = function(e) {
|
||
if (this.onParticipantsChanged) {
|
||
this.onParticipantsChanged(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnMessage = function(e, clear) {
|
||
if (this.onMessage) {
|
||
this.onMessage(e, clear);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnServerVersion = function(e) {
|
||
if (this.onServerVersion) {
|
||
this.onServerVersion(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnCursor = function(e) {
|
||
if (this.onCursor) {
|
||
this.onCursor(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnMeta = function(e) {
|
||
if (this.onMeta) {
|
||
this.onMeta(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnSession = function(e) {
|
||
if (this.onSession) {
|
||
this.onSession(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnExpiredToken = function(e) {
|
||
if (this.onExpiredToken) {
|
||
this.onExpiredToken(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnForceSave = function(e) {
|
||
if (this.onForceSave) {
|
||
this.onForceSave(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnHasForgotten = function(e) {
|
||
if (this.onHasForgotten) {
|
||
this.onHasForgotten(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnLocksAcquired = function(e) {
|
||
if (this.onLocksAcquired) {
|
||
this.onLocksAcquired(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnLocksReleased = function(e, bChanges) {
|
||
if (this.onLocksReleased) {
|
||
this.onLocksReleased(e, bChanges);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnLocksReleasedEnd = function() {
|
||
if (this.onLocksReleasedEnd) {
|
||
this.onLocksReleasedEnd();
|
||
}
|
||
};
|
||
|
||
/**
|
||
* Event об отсоединении от сервера
|
||
* @param {jQuery} e event об отсоединении с причиной
|
||
* @param {code: Asc.c_oAscError.ID, level: Asc.c_oAscError.Level} error
|
||
*/
|
||
CDocsCoApi.prototype.callback_OnDisconnect = function(e, error) {
|
||
if (this.onDisconnect) {
|
||
this.onDisconnect(e, error);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnWarning = function(e) {
|
||
if (this.onWarning) {
|
||
this.onWarning(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnFirstLoadChangesEnd = function() {
|
||
if (this.onFirstLoadChangesEnd) {
|
||
this.onFirstLoadChangesEnd();
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnConnectionStateChanged = function(e) {
|
||
if (this.onConnectionStateChanged) {
|
||
this.onConnectionStateChanged(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnSetIndexUser = function(e) {
|
||
if (this.onSetIndexUser) {
|
||
this.onSetIndexUser(e);
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnSpellCheckInit = function(e) {
|
||
if (this.onSpellCheckInit) {
|
||
this.onSpellCheckInit(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnSaveChanges = function(e, userId, bFirstLoad) {
|
||
if (this.onSaveChanges) {
|
||
this.onSaveChanges(e, userId, bFirstLoad);
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnStartCoAuthoring = function(e) {
|
||
if (this.onStartCoAuthoring) {
|
||
this.onStartCoAuthoring(e);
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnEndCoAuthoring = function(e) {
|
||
if (this.onEndCoAuthoring) {
|
||
this.onEndCoAuthoring(e);
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnUnSaveLock = function() {
|
||
if (this.onUnSaveLock) {
|
||
this.onUnSaveLock();
|
||
}
|
||
};
|
||
|
||
CDocsCoApi.prototype.callback_OnRecalcLocks = function(e) {
|
||
if (this.onRecalcLocks) {
|
||
this.onRecalcLocks(e);
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnDocumentOpen = function(e) {
|
||
if (this.onDocumentOpen) {
|
||
this.onDocumentOpen(e);
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnFirstConnect = function() {
|
||
if (this.onFirstConnect) {
|
||
this.onFirstConnect();
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnLicense = function(res) {
|
||
if (this.onLicense) {
|
||
this.onLicense(res);
|
||
}
|
||
};
|
||
CDocsCoApi.prototype.callback_OnLicenseChanged = function(res) {
|
||
if (this.onLicenseChanged) {
|
||
this.onLicenseChanged(res);
|
||
}
|
||
};
|
||
|
||
function LockBufferElement(arrayBlockId, callback) {
|
||
this._arrayBlockId = arrayBlockId ? arrayBlockId.slice() : null;
|
||
this._callback = callback;
|
||
}
|
||
|
||
function DocsCoApi(options) {
|
||
if (options) {
|
||
this.onAuthParticipantsChanged = options.onAuthParticipantsChanged;
|
||
this.onParticipantsChanged = options.onParticipantsChanged;
|
||
this.onMessage = options.onMessage;
|
||
this.onServerVersion = options.onServerVersion;
|
||
this.onCursor = options.onCursor;
|
||
this.onMeta = options.onMeta;
|
||
this.onSession = options.onSession;
|
||
this.onExpiredToken = options.onExpiredToken;
|
||
this.onForceSave = options.onForceSave;
|
||
this.onHasForgotten = options.onHasForgotten;
|
||
this.onLocksAcquired = options.onLocksAcquired;
|
||
this.onLocksReleased = options.onLocksReleased;
|
||
this.onLocksReleasedEnd = options.onLocksReleasedEnd; // ToDo переделать на массив release locks
|
||
this.onRelockFailed = options.onRelockFailed;
|
||
this.onDisconnect = options.onDisconnect;
|
||
this.onWarning = options.onWarning;
|
||
this.onSetIndexUser = options.onSetIndexUser;
|
||
this.onSpellCheckInit = options.onSpellCheckInit;
|
||
this.onSaveChanges = options.onSaveChanges;
|
||
this.onFirstLoadChangesEnd = options.onFirstLoadChangesEnd;
|
||
this.onConnectionStateChanged = options.onConnectionStateChanged;
|
||
this.onUnSaveLock = options.onUnSaveLock;
|
||
this.onRecalcLocks = options.onRecalcLocks;
|
||
this.onDocumentOpen = options.onDocumentOpen;
|
||
this.onFirstConnect = options.onFirstConnect;
|
||
this.onLicense = options.onLicense;
|
||
this.onLicenseChanged = options.onLicenseChanged;
|
||
}
|
||
this._state = ConnectionState.None;
|
||
// Online-пользователи в документе
|
||
this._participants = {};
|
||
this._participantsTimestamp;
|
||
this._countEditUsers = 0;
|
||
this._countUsers = 0;
|
||
|
||
this.isLicenseInit = false;
|
||
this._locks = {};
|
||
this._msgBuffer = [];
|
||
this._msgInputBuffer = [];
|
||
this._lockCallbacks = {};
|
||
this._lockCallbacksErrorTimerId = {};
|
||
this._saveCallback = [];
|
||
this.saveLockCallbackErrorTimeOutId = null;
|
||
this.saveCallbackErrorTimeOutId = null;
|
||
this.unSaveLockCallbackErrorTimeOutId = null;
|
||
this._id = null;
|
||
this._sessionTimeConnect = null;
|
||
this._allChangesSaved = null;
|
||
this._lastForceSaveButtonTime = null;
|
||
this._lastForceSaveTimeoutTime = null;
|
||
this._indexUser = -1;
|
||
// Если пользователей больше 1, то совместно редактируем
|
||
this.isCoAuthoring = false;
|
||
// Мы сами отключились от совместного редактирования
|
||
this.isCloseCoAuthoring = false;
|
||
|
||
// Максимальное число изменений, посылаемое на сервер (не может быть нечетным, т.к. пересчет обоих индексов должен быть)
|
||
this.maxCountSaveChanges = 20000;
|
||
// Текущий индекс для колличества изменений
|
||
this.currentIndex = 0;
|
||
// Индекс, с которого мы начинаем сохранять изменения
|
||
this.deleteIndex = 0;
|
||
// Массив изменений
|
||
this.arrayChanges = null;
|
||
// Время последнего сохранения (для разрыва соединения)
|
||
this.lastOtherSaveTime = -1;
|
||
this.lastOwnSaveTime = -1;
|
||
// Локальный индекс изменений
|
||
this.changesIndex = 0;
|
||
// Дополнительная информация для Excel
|
||
this.excelAdditionalInfo = null;
|
||
// Unlock document
|
||
this.canUnlockDocument = false;
|
||
// Release locks
|
||
this.canReleaseLocks = false;
|
||
|
||
this._url = "";
|
||
|
||
this.reconnectTimeout = null;
|
||
this.attemptCount = 0;
|
||
this.maxAttemptCount = 50;
|
||
this.reconnectInterval = 2000;
|
||
this.errorTimeOut = 10000;
|
||
this.errorTimeOutSave = 60000; // ToDo стоит переделать это, т.к. могут дублироваться изменения...
|
||
|
||
this._docid = null;
|
||
this._documentCallbackUrl = null;
|
||
this._token = null;
|
||
this._user = null;
|
||
this._userId = "Anonymous";
|
||
this.ownedLockBlocks = [];
|
||
this.sockjs_url = null;
|
||
this.sockjs = null;
|
||
this.editorType = -1;
|
||
this._isExcel = false;
|
||
this._isPresentation = false;
|
||
this._isAuth = false;
|
||
this._documentFormatSave = 0;
|
||
this.mode = undefined;
|
||
this.permissions = undefined;
|
||
this.lang = undefined;
|
||
this.jwtOpen = undefined;
|
||
this.jwtSession = undefined;
|
||
this.encrypted = undefined;
|
||
this._isViewer = false;
|
||
this._isReSaveAfterAuth = false; // Флаг для сохранения после повторной авторизации (для разрыва соединения во время сохранения)
|
||
this._lockBuffer = [];
|
||
this._authChanges = [];
|
||
this._authOtherChanges = [];
|
||
}
|
||
|
||
DocsCoApi.prototype.isRightURL = function() {
|
||
return ("" != this._url);
|
||
};
|
||
|
||
DocsCoApi.prototype.set_url = function(url) {
|
||
this._url = url;
|
||
};
|
||
|
||
DocsCoApi.prototype.get_state = function() {
|
||
return this._state;
|
||
};
|
||
|
||
DocsCoApi.prototype.check_state = function () {
|
||
return ConnectionState.Authorized === this._state || ConnectionState.SaveChanges === this._state ||
|
||
ConnectionState.AskSaveChanges === this._state;
|
||
};
|
||
|
||
DocsCoApi.prototype.get_indexUser = function() {
|
||
return this._indexUser;
|
||
};
|
||
|
||
DocsCoApi.prototype.get_isAuth = function() {
|
||
return this._isAuth;
|
||
};
|
||
|
||
DocsCoApi.prototype.get_jwt = function() {
|
||
return this.jwtSession || this.jwtOpen;
|
||
};
|
||
|
||
DocsCoApi.prototype.getSessionId = function() {
|
||
return this._id;
|
||
};
|
||
|
||
DocsCoApi.prototype.getUserConnectionId = function() {
|
||
return this._userId;
|
||
};
|
||
|
||
DocsCoApi.prototype.getLocks = function() {
|
||
return this._locks;
|
||
};
|
||
|
||
DocsCoApi.prototype._sendBufferedLocks = function() {
|
||
var elem;
|
||
for (var i = 0, length = this._lockBuffer.length; i < length; ++i) {
|
||
elem = this._lockBuffer[i];
|
||
this.askLock(elem._arrayBlockId, elem._callback);
|
||
}
|
||
this._lockBuffer = [];
|
||
};
|
||
|
||
DocsCoApi.prototype.askLock = function(arrayBlockId, callback) {
|
||
if (ConnectionState.SaveChanges === this._state || ConnectionState.AskSaveChanges === this._state) {
|
||
// Мы в режиме сохранения. Lock-и запросим после окончания.
|
||
this._lockBuffer.push(new LockBufferElement(arrayBlockId, callback));
|
||
return;
|
||
}
|
||
|
||
// ask all elements in array
|
||
var t = this;
|
||
var i = 0;
|
||
var lengthArray = (arrayBlockId) ? arrayBlockId.length : 0;
|
||
var isLock = false;
|
||
var idLockInArray = null;
|
||
for (; i < lengthArray; ++i) {
|
||
idLockInArray = (this._isExcel || this._isPresentation) ? arrayBlockId[i]['guid'] : arrayBlockId[i];
|
||
if (this._locks[idLockInArray] && 0 !== this._locks[idLockInArray].state) {
|
||
isLock = true;
|
||
break;
|
||
}
|
||
}
|
||
if (0 === lengthArray) {
|
||
isLock = true;
|
||
}
|
||
|
||
idLockInArray = (this._isExcel || this._isPresentation) ? arrayBlockId[0]['guid'] : arrayBlockId[0];
|
||
|
||
if (!isLock) {
|
||
if (this._lockCallbacksErrorTimerId.hasOwnProperty(idLockInArray)) {
|
||
// Два раза для одного id нельзя запрашивать lock, не дождавшись ответа
|
||
return;
|
||
}
|
||
//Ask
|
||
this._locks[idLockInArray] = {'state': 1};//1-asked for block
|
||
if (callback) {
|
||
this._lockCallbacks[idLockInArray] = callback;
|
||
|
||
//Set reconnectTimeout
|
||
this._lockCallbacksErrorTimerId[idLockInArray] = window.setTimeout(function() {
|
||
if (t._lockCallbacks.hasOwnProperty(idLockInArray)) {
|
||
//Not signaled already
|
||
t._lockCallbacks[idLockInArray]({error: 'Timed out'});
|
||
delete t._lockCallbacks[idLockInArray];
|
||
delete t._lockCallbacksErrorTimerId[idLockInArray];
|
||
}
|
||
}, this.errorTimeOut);
|
||
}
|
||
this._send({"type": 'getLock', 'block': arrayBlockId});
|
||
} else {
|
||
// Вернем ошибку, т.к. залочены элементы
|
||
window.setTimeout(function() {
|
||
if (callback) {
|
||
callback({error: idLockInArray + '-lock'});
|
||
}
|
||
}, 100);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype.askSaveChanges = function(callback) {
|
||
if (this._saveCallback[this._saveCallback.length - 1]) {
|
||
// Мы еще не отработали старый callback и ждем ответа
|
||
return;
|
||
}
|
||
|
||
// Очищаем предыдущий таймер
|
||
if (null !== this.saveLockCallbackErrorTimeOutId) {
|
||
clearTimeout(this.saveLockCallbackErrorTimeOutId);
|
||
}
|
||
|
||
// Проверим состояние, если мы не подсоединились, то сразу отправим ошибку
|
||
if (ConnectionState.Authorized !== this._state) {
|
||
this.saveLockCallbackErrorTimeOutId = window.setTimeout(function() {
|
||
if (callback) {
|
||
// Фиктивные вызовы
|
||
callback({error: "No connection"});
|
||
}
|
||
}, 100);
|
||
return;
|
||
}
|
||
if (callback) {
|
||
var t = this;
|
||
var indexCallback = this._saveCallback.length;
|
||
this._saveCallback[indexCallback] = callback;
|
||
|
||
//Set reconnectTimeout
|
||
this.saveLockCallbackErrorTimeOutId = window.setTimeout(function() {
|
||
t.saveLockCallbackErrorTimeOutId = null;
|
||
var oTmpCallback = t._saveCallback[indexCallback];
|
||
if (oTmpCallback) {
|
||
t._saveCallback[indexCallback] = null;
|
||
//Not signaled already
|
||
oTmpCallback({error: "Timed out"});
|
||
t._state = ConnectionState.Authorized;
|
||
// Делаем отложенные lock-и
|
||
t._sendBufferedLocks();
|
||
}
|
||
}, this.errorTimeOut);
|
||
}
|
||
this._state = ConnectionState.AskSaveChanges;
|
||
this._send({"type": "isSaveLock"});
|
||
};
|
||
|
||
DocsCoApi.prototype.unSaveLock = function() {
|
||
// ToDo при разрыве соединения нужно перестать делать unSaveLock!
|
||
var t = this;
|
||
this.unSaveLockCallbackErrorTimeOutId = window.setTimeout(function() {
|
||
t.unSaveLockCallbackErrorTimeOutId = null;
|
||
t.unSaveLock();
|
||
}, this.errorTimeOut);
|
||
this._send({"type": "unSaveLock"});
|
||
};
|
||
|
||
DocsCoApi.prototype.releaseLocks = function(blockId) {
|
||
if (this._locks[blockId] && 2 === this._locks[blockId].state /*lock is ours*/) {
|
||
//Ask
|
||
this._locks[blockId] = {"state": 0};//0-released
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._reSaveChanges = function(reSaveType) {
|
||
this.saveChanges(this.arrayChanges, this.currentIndex, undefined, undefined, reSaveType);
|
||
};
|
||
|
||
DocsCoApi.prototype.saveChanges = function(arrayChanges, currentIndex, deleteIndex, excelAdditionalInfo, reSave) {
|
||
if (null === currentIndex) {
|
||
this.deleteIndex = deleteIndex;
|
||
if (null != this.deleteIndex && -1 !== this.deleteIndex) {
|
||
this.deleteIndex += this.changesIndex;
|
||
}
|
||
this.currentIndex = 0;
|
||
this.arrayChanges = arrayChanges;
|
||
this.excelAdditionalInfo = excelAdditionalInfo;
|
||
} else {
|
||
this.currentIndex = currentIndex;
|
||
}
|
||
var startIndex = this.currentIndex * this.maxCountSaveChanges;
|
||
var endIndex = Math.min(this.maxCountSaveChanges * (this.currentIndex + 1), arrayChanges.length);
|
||
if (endIndex === arrayChanges.length) {
|
||
for (var key in this._locks) if (this._locks.hasOwnProperty(key)) {
|
||
if (2 === this._locks[key].state /*lock is ours*/) {
|
||
delete this._locks[key];
|
||
}
|
||
}
|
||
}
|
||
|
||
//Set errorTimeout
|
||
var t = this;
|
||
this.saveCallbackErrorTimeOutId = window.setTimeout(function() {
|
||
t.saveCallbackErrorTimeOutId = null;
|
||
t._reSaveChanges(1);
|
||
}, this.errorTimeOutSave);
|
||
|
||
// Выставляем состояние сохранения
|
||
this._state = ConnectionState.SaveChanges;
|
||
|
||
this._send({'type': 'saveChanges', 'changes': JSON.stringify(arrayChanges.slice(startIndex, endIndex)),
|
||
'startSaveChanges': (startIndex === 0), 'endSaveChanges': (endIndex === arrayChanges.length),
|
||
'isCoAuthoring': this.isCoAuthoring, 'isExcel': this._isExcel, 'deleteIndex': this.deleteIndex,
|
||
'excelAdditionalInfo': this.excelAdditionalInfo ? JSON.stringify(this.excelAdditionalInfo) : null,
|
||
'unlock': this.canUnlockDocument, 'releaseLocks': this.canReleaseLocks, 'reSave': reSave});
|
||
};
|
||
|
||
DocsCoApi.prototype.unLockDocument = function(isSave, deleteIndex) {
|
||
this.deleteIndex = deleteIndex;
|
||
if (null != this.deleteIndex && -1 !== this.deleteIndex) {
|
||
this.deleteIndex += this.changesIndex;
|
||
}
|
||
this._send({'type': 'unLockDocument', 'isSave': isSave, 'unlock': this.canUnlockDocument,
|
||
'deleteIndex': this.deleteIndex, 'releaseLocks': this.canReleaseLocks});
|
||
};
|
||
|
||
DocsCoApi.prototype.getUsers = function() {
|
||
// Специально для возможности получения после прохождения авторизации (Стоит переделать)
|
||
if (this.onAuthParticipantsChanged) {
|
||
this.onAuthParticipantsChanged(this._participants, this._userId);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype.disconnect = function(opt_code, opt_reason) {
|
||
// Отключаемся сами
|
||
this.isCloseCoAuthoring = true;
|
||
if (opt_code) {
|
||
this.sockjs.close(opt_code, opt_reason);
|
||
} else {
|
||
this._send({"type": "close"});
|
||
this._state = ConnectionState.ClosedCoAuth;
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype.extendSession = function(idleTime) {
|
||
this._send({'type': 'extendSession', 'idletime': idleTime});
|
||
};
|
||
|
||
DocsCoApi.prototype.versionHistory = function(data) {
|
||
this._send({'type': 'versionHistory', 'cmd': data});
|
||
};
|
||
|
||
DocsCoApi.prototype.forceSave = function() {
|
||
var res = false;
|
||
var newForceSaveButtonTime = Math.max(this.lastOtherSaveTime, this.lastOwnSaveTime);
|
||
if (this._lastForceSaveButtonTime < newForceSaveButtonTime) {
|
||
this._lastForceSaveButtonTime = newForceSaveButtonTime;
|
||
this._send({'type': 'forceSaveStart'});
|
||
res = true;
|
||
}
|
||
return res;
|
||
};
|
||
|
||
DocsCoApi.prototype.openDocument = function(data) {
|
||
this._send({"type": "openDocument", "message": data});
|
||
};
|
||
|
||
DocsCoApi.prototype.sendRawData = function(data) {
|
||
this._sendRaw(data);
|
||
};
|
||
|
||
DocsCoApi.prototype.getMessages = function() {
|
||
this._send({"type": "getMessages"});
|
||
};
|
||
|
||
DocsCoApi.prototype.sendMessage = function(message) {
|
||
if (typeof message === 'string') {
|
||
this._send({"type": "message", "message": message});
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype.sendCursor = function(cursor) {
|
||
if (typeof cursor === 'string') {
|
||
this._send({"type": "cursor", "cursor": cursor});
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype.sendChangesError = function(data) {
|
||
if (typeof data === 'string') {
|
||
this._send({'type': 'changesError', 'stack': data});
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._applyPrebuffered = function () {
|
||
for (var i = 0; i < this._msgInputBuffer.length; ++i) {
|
||
this._msgInputBuffer[i]();
|
||
}
|
||
this._msgInputBuffer = [];
|
||
};
|
||
DocsCoApi.prototype._sendPrebuffered = function() {
|
||
for (var i = 0; i < this._msgBuffer.length; i++) {
|
||
this._sendRaw(this._msgBuffer[i]);
|
||
}
|
||
this._msgBuffer = [];
|
||
};
|
||
|
||
DocsCoApi.prototype._send = function(data, useEncryption) {
|
||
if (!useEncryption && data && data["type"] == "saveChanges" && AscCommon.EncryptionWorker && AscCommon.EncryptionWorker.isInit())
|
||
return AscCommon.EncryptionWorker.sendChanges(this, data, AscCommon.EncryptionMessageType.Encrypt);
|
||
|
||
if (data !== null && typeof data === "object") {
|
||
if (this._state > 0) {
|
||
this.sockjs.send(JSON.stringify(data));
|
||
} else {
|
||
this._msgBuffer.push(JSON.stringify(data));
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._sendRaw = function(data) {
|
||
if (data !== null && typeof data === "string") {
|
||
if (this._state > 0) {
|
||
this.sockjs.send(data);
|
||
} else {
|
||
this._msgBuffer.push(data);
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onMessages = function(data, clear) {
|
||
if (this.check_state() && data["messages"] && this.onMessage) {
|
||
this.onMessage(data["messages"], clear);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onServerVersion = function (data) {
|
||
if (this.onServerVersion) {
|
||
this.onServerVersion(data['buildVersion'], data['buildNumber']);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onCursor = function(data) {
|
||
if (this.check_state() && data["messages"] && this.onCursor) {
|
||
this.onCursor(data["messages"]);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onMeta = function(data) {
|
||
if (data["messages"] && this.onMeta) {
|
||
this.onMeta(data["messages"]);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onSession = function(data) {
|
||
if (this.check_state() && data["messages"] && this.onSession) {
|
||
this.onSession(data["messages"]);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onExpiredToken = function(data) {
|
||
if (this.onExpiredToken) {
|
||
this.onExpiredToken();
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onHasForgotten = function(data) {
|
||
if (this.onHasForgotten) {
|
||
this.onHasForgotten();
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onRefreshToken = function(jwt) {
|
||
this.jwtOpen = undefined;
|
||
if (jwt) {
|
||
this.jwtSession = jwt;
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onForceSaveStart = function(data) {
|
||
var code = data['code'];
|
||
if (code === c_oAscServerCommandErrors.NoError) {
|
||
this._lastForceSaveButtonTime = data['time'];
|
||
this.onForceSave({type: c_oAscForceSaveTypes.Button, start: true});
|
||
} else if (code === c_oAscServerCommandErrors.NotModified) {
|
||
this.onForceSave({type: c_oAscForceSaveTypes.Button, refuse: true});
|
||
} else {
|
||
this.onWarning(Asc.c_oAscError.ID.Unknown);
|
||
}
|
||
};
|
||
DocsCoApi.prototype._onForceSave = function(data) {
|
||
var type = data['type'];
|
||
if (c_oAscForceSaveTypes.Button === type) {
|
||
if (this._lastForceSaveButtonTime == data['time']) {
|
||
this.onForceSave({type: type, success: data['success']});
|
||
}
|
||
} else {
|
||
if (data['start']) {
|
||
this.onForceSave({type: type, start: true});
|
||
this._lastForceSaveTimeoutTime = data['time'];
|
||
} else {
|
||
if (this._lastForceSaveTimeoutTime == data['time']) {
|
||
this.onForceSave({type: type, success: data['success']});
|
||
}
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onGetLock = function(data) {
|
||
if (this.check_state() && data["locks"]) {
|
||
for (var key in data["locks"]) {
|
||
if (data["locks"].hasOwnProperty(key)) {
|
||
var lock = data["locks"][key], blockTmp = (this._isExcel || this._isPresentation) ? lock["block"]["guid"] : key, blockValue = (this._isExcel || this._isPresentation) ? lock["block"] : key;
|
||
if (lock !== null) {
|
||
var changed = true;
|
||
if (this._locks[blockTmp] && 1 !== this._locks[blockTmp].state /*asked for it*/) {
|
||
//Exists
|
||
//Check lock state
|
||
changed = !(this._locks[blockTmp].state === (lock["user"] === this._userId ? 2 : 3) && this._locks[blockTmp]["user"] === lock["user"] && this._locks[blockTmp]["time"] === lock["time"] && this._locks[blockTmp]["block"] === blockTmp);
|
||
}
|
||
|
||
if (changed) {
|
||
this._locks[blockTmp] = {"state": lock["user"] === this._userId ? 2 : 3, "user": lock["user"], "time": lock["time"], "block": blockTmp, "blockValue": blockValue};//2-acquired by me!
|
||
}
|
||
if (this._lockCallbacks.hasOwnProperty(blockTmp)) {
|
||
if (lock["user"] === this._userId) {
|
||
//Do call back
|
||
this._lockCallbacks[blockTmp]({"lock": this._locks[blockTmp]});
|
||
} else {
|
||
this._lockCallbacks[blockTmp]({"error": "Already locked by " + lock["user"]});
|
||
}
|
||
if (this._lockCallbacksErrorTimerId.hasOwnProperty(blockTmp)) {
|
||
clearTimeout(this._lockCallbacksErrorTimerId[blockTmp]);
|
||
delete this._lockCallbacksErrorTimerId[blockTmp];
|
||
}
|
||
delete this._lockCallbacks[blockTmp];
|
||
}
|
||
if (this.onLocksAcquired && changed) {
|
||
this.onLocksAcquired(this._locks[blockTmp]);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onReleaseLock = function(data) {
|
||
if (this.check_state() && data["locks"]) {
|
||
var bSendEnd = false;
|
||
for (var block in data["locks"]) {
|
||
if (data["locks"].hasOwnProperty(block)) {
|
||
var lock = data["locks"][block], blockTmp = (this._isExcel || this._isPresentation) ? lock["block"]["guid"] : lock["block"];
|
||
if (lock !== null) {
|
||
this._locks[blockTmp] = {"state": 0, "user": lock["user"], "time": lock["time"], "changes": lock["changes"], "block": lock["block"]};
|
||
if (this.onLocksReleased) {
|
||
// false - user not save changes
|
||
this.onLocksReleased(this._locks[blockTmp], false);
|
||
bSendEnd = true;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (bSendEnd && this.onLocksReleasedEnd) {
|
||
this.onLocksReleasedEnd();
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._documentOpen = function(data) {
|
||
this.onDocumentOpen(data);
|
||
};
|
||
|
||
DocsCoApi.prototype._onSaveChanges = function(data, useEncryption) {
|
||
if (!this.check_state()) {
|
||
if (!this.get_isAuth()) {
|
||
this._authOtherChanges.push(data);
|
||
}
|
||
return;
|
||
}
|
||
if (!useEncryption && AscCommon.EncryptionWorker && AscCommon.EncryptionWorker.isInit())
|
||
return AscCommon.EncryptionWorker.sendChanges(this, data, AscCommon.EncryptionMessageType.Decrypt);
|
||
if (data["locks"]) {
|
||
var bSendEnd = false;
|
||
for (var block in data["locks"]) {
|
||
if (data["locks"].hasOwnProperty(block)) {
|
||
var lock = data["locks"][block];
|
||
if (lock !== null) {
|
||
var blockTmp = (this._isExcel || this._isPresentation) ? lock["block"]["guid"] : lock["block"];
|
||
this._locks[blockTmp] = {"state": 0, "user": lock["user"], "time": lock["time"], "changes": lock["changes"], "block": lock["block"]};
|
||
if (this.onLocksReleased) {
|
||
// true - lock with save
|
||
this.onLocksReleased(this._locks[blockTmp], true);
|
||
bSendEnd = true;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (bSendEnd && this.onLocksReleasedEnd) {
|
||
this.onLocksReleasedEnd();
|
||
}
|
||
}
|
||
this._updateChanges(data["changes"], data["changesIndex"], false);
|
||
|
||
if (this.onRecalcLocks) {
|
||
this.onRecalcLocks(data["excelAdditionalInfo"]);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onStartCoAuthoring = function(isStartEvent, isWaitAuth) {
|
||
if (false === this.isCoAuthoring) {
|
||
this.isCoAuthoring = true;
|
||
if (this.onStartCoAuthoring) {
|
||
this.onStartCoAuthoring(isStartEvent);
|
||
}
|
||
} else if (isWaitAuth) {
|
||
//it is a stub for unexpected situation(no direct reproduce scenery)
|
||
//isCoAuthoring is true when more then one editor, but isWaitAuth mean than server has one editor
|
||
this.canUnlockDocument = true;
|
||
this.unLockDocument(false);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onEndCoAuthoring = function(isStartEvent) {
|
||
if (true === this.isCoAuthoring) {
|
||
this.isCoAuthoring = false;
|
||
if (this.onEndCoAuthoring) {
|
||
this.onEndCoAuthoring(isStartEvent);
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onSaveLock = function (data) {
|
||
if (null != data["saveLock"]) {
|
||
var indexCallback = this._saveCallback.length - 1;
|
||
var oTmpCallback = this._saveCallback[indexCallback];
|
||
if (oTmpCallback) {
|
||
// Очищаем предыдущий таймер
|
||
if (null !== this.saveLockCallbackErrorTimeOutId) {
|
||
clearTimeout(this.saveLockCallbackErrorTimeOutId);
|
||
this.saveLockCallbackErrorTimeOutId = null;
|
||
}
|
||
|
||
this._saveCallback[indexCallback] = null;
|
||
oTmpCallback(data);
|
||
}
|
||
}
|
||
if (null == data["saveLock"] || data['error'] || data["saveLock"]) {
|
||
this._state = ConnectionState.Authorized;
|
||
// Делаем отложенные lock-и
|
||
this._sendBufferedLocks();
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onUnSaveLock = function(data) {
|
||
// Очищаем предыдущий таймер сохранения
|
||
if (null !== this.saveCallbackErrorTimeOutId) {
|
||
clearTimeout(this.saveCallbackErrorTimeOutId);
|
||
this.saveCallbackErrorTimeOutId = null;
|
||
}
|
||
// Очищаем предыдущий таймер снятия блокировки
|
||
if (null !== this.unSaveLockCallbackErrorTimeOutId) {
|
||
clearTimeout(this.unSaveLockCallbackErrorTimeOutId);
|
||
this.unSaveLockCallbackErrorTimeOutId = null;
|
||
}
|
||
|
||
// Возвращаем состояние
|
||
this._state = ConnectionState.Authorized;
|
||
|
||
// Делаем отложенные lock-и
|
||
this._sendBufferedLocks();
|
||
|
||
if (-1 !== data['index']) {
|
||
this.changesIndex = data['index'];
|
||
}
|
||
|
||
if (-1 !== data['time']) {
|
||
this.lastOwnSaveTime = data['time'];
|
||
}
|
||
|
||
if (this.onUnSaveLock) {
|
||
this.onUnSaveLock();
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._updateChanges = function(allServerChanges, changesIndex, bFirstLoad) {
|
||
if (this.onSaveChanges) {
|
||
this.changesIndex = changesIndex;
|
||
if (allServerChanges) {
|
||
for (var i = 0; i < allServerChanges.length; ++i) {
|
||
var change = allServerChanges[i];
|
||
var changesOneUser = change['change'];
|
||
if (changesOneUser) {
|
||
if (change['user'] !== this._userId) {
|
||
this.lastOtherSaveTime = change['time'];
|
||
}
|
||
this.onSaveChanges(JSON.parse(changesOneUser), change['useridoriginal'], bFirstLoad);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onSetIndexUser = function(data) {
|
||
if (this.onSetIndexUser) {
|
||
this.onSetIndexUser(data);
|
||
}
|
||
};
|
||
DocsCoApi.prototype._onSpellCheckInit = function(data) {
|
||
if (this.onSpellCheckInit) {
|
||
this.onSpellCheckInit(data);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onSavePartChanges = function(data) {
|
||
// Очищаем предыдущий таймер
|
||
if (null !== this.saveCallbackErrorTimeOutId) {
|
||
clearTimeout(this.saveCallbackErrorTimeOutId);
|
||
this.saveCallbackErrorTimeOutId = null;
|
||
}
|
||
|
||
if (-1 !== data['changesIndex']) {
|
||
this.changesIndex = data['changesIndex'];
|
||
}
|
||
|
||
this.saveChanges(this.arrayChanges, this.currentIndex + 1);
|
||
};
|
||
|
||
DocsCoApi.prototype._onPreviousLocks = function(locks, previousLocks) {
|
||
var i = 0;
|
||
if (locks && previousLocks) {
|
||
for (var block in locks) {
|
||
if (locks.hasOwnProperty(block)) {
|
||
var lock = locks[block];
|
||
if (lock !== null && lock["block"]) {
|
||
//Find in previous
|
||
for (i = 0; i < previousLocks.length; i++) {
|
||
if (previousLocks[i] === lock["block"] && lock["user"] === this._userId) {
|
||
//Lock is ours
|
||
previousLocks.remove(i);
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (previousLocks.length > 0 && this.onRelockFailed) {
|
||
this.onRelockFailed(previousLocks);
|
||
}
|
||
previousLocks = [];
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onParticipantsChanged = function(participants, needChanged) {
|
||
var participantsNew = {};
|
||
var countEditUsersNew = 0;
|
||
var countUsersNew = 0;
|
||
var tmpUser;
|
||
var i;
|
||
var usersStateChanged = [];
|
||
if (participants) {
|
||
for (i = 0; i < participants.length; ++i) {
|
||
tmpUser = new AscCommon.asc_CUser(participants[i]);
|
||
participantsNew[tmpUser.asc_getId()] = tmpUser;
|
||
if (!tmpUser.asc_getView()) {
|
||
++countEditUsersNew;
|
||
}
|
||
++countUsersNew;
|
||
}
|
||
}
|
||
if (needChanged) {
|
||
for (i in participantsNew) {
|
||
if (!this._participants[i]) {
|
||
tmpUser = participantsNew[i];
|
||
tmpUser.setState(true);
|
||
usersStateChanged.push(tmpUser);
|
||
}
|
||
}
|
||
for (i in this._participants) {
|
||
if (!participantsNew[i]) {
|
||
tmpUser = this._participants[i];
|
||
tmpUser.setState(false);
|
||
usersStateChanged.push(tmpUser);
|
||
}
|
||
}
|
||
}
|
||
this._participants = participantsNew;
|
||
this._countEditUsers = countEditUsersNew;
|
||
this._countUsers = countUsersNew;
|
||
return usersStateChanged;
|
||
};
|
||
DocsCoApi.prototype._onAuthParticipantsChanged = function(participants) {
|
||
this._participants = {};
|
||
this._countEditUsers = 0;
|
||
this._countUsers = 0;
|
||
|
||
if (participants) {
|
||
this._onParticipantsChanged(participants);
|
||
|
||
if (this.onAuthParticipantsChanged) {
|
||
this.onAuthParticipantsChanged(this._participants, this._userId);
|
||
}
|
||
|
||
// Посылаем эвент о совместном редактировании
|
||
if (1 < this._countEditUsers) {
|
||
this._onStartCoAuthoring(/*isStartEvent*/true);
|
||
} else {
|
||
this._onEndCoAuthoring(/*isStartEvent*/true);
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onConnectionStateChanged = function(data) {
|
||
var t = this;
|
||
if (!this.check_state()) {
|
||
this._msgInputBuffer.push(function () {
|
||
t._onConnectionStateChanged(data);
|
||
});
|
||
return;
|
||
}
|
||
var isWaitAuth = data['waitAuth'];
|
||
var usersStateChanged;
|
||
if (this.onConnectionStateChanged && (!this._participantsTimestamp || this._participantsTimestamp <= data['participantsTimestamp'])) {
|
||
this._participantsTimestamp = data['participantsTimestamp'];
|
||
usersStateChanged = this._onParticipantsChanged(data['participants'], true);
|
||
|
||
if (usersStateChanged.length > 0) {
|
||
// Посылаем эвент о совместном редактировании
|
||
if (1 < this._countEditUsers) {
|
||
this._onStartCoAuthoring(/*isStartEvent*/false, isWaitAuth);
|
||
} else {
|
||
this._onEndCoAuthoring(/*isStartEvent*/false);
|
||
}
|
||
|
||
this.onParticipantsChanged(this._participants);
|
||
for (var i = 0; i < usersStateChanged.length; ++i) {
|
||
this.onConnectionStateChanged(usersStateChanged[i]);
|
||
}
|
||
}
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onLicenseChanged = function (data) {
|
||
this.onLicenseChanged(data['licenseType']);
|
||
};
|
||
|
||
DocsCoApi.prototype._onDrop = function(data) {
|
||
this.disconnect();
|
||
this.onDisconnect(data ? data['description'] : '', this._getDisconnectErrorCode());
|
||
};
|
||
|
||
DocsCoApi.prototype._onWarning = function(data) {
|
||
this.onWarning(Asc.c_oAscError.ID.Warning);
|
||
};
|
||
|
||
DocsCoApi.prototype._onLicense = function(data) {
|
||
if (!this.isLicenseInit) {
|
||
this.isLicenseInit = true;
|
||
this.onLicense(data['license']);
|
||
}
|
||
};
|
||
|
||
DocsCoApi.prototype._onAuth = function(data) {
|
||
var t = this;
|
||
this._onRefreshToken(data['jwt']);
|
||
if (true === this._isAuth) {
|
||
this._state = ConnectionState.Authorized;
|
||
// Мы должны только соединиться для получения файла. Совместное редактирование уже было отключено.
|
||
if (this.isCloseCoAuthoring) {
|
||
return;
|
||
}
|
||
|
||
this._onServerVersion(data);
|
||
|
||
this._onLicenseChanged(data);
|
||
// Мы уже авторизовывались, нужно обновить пользователей (т.к. пользователи могли входить и выходить пока у нас не было соединения)
|
||
this._onAuthParticipantsChanged(data['participants']);
|
||
|
||
//if (this.ownedLockBlocks && this.ownedLockBlocks.length > 0) {
|
||
// this._onPreviousLocks(data["locks"], this.ownedLockBlocks);
|
||
//}
|
||
this._onMessages(data, true);
|
||
this._onGetLock(data);
|
||
|
||
//Apply prebuffered
|
||
this._applyPrebuffered();
|
||
|
||
if (this._isReSaveAfterAuth) {
|
||
this._isReSaveAfterAuth = false;
|
||
var callbackAskSaveChanges = function(e) {
|
||
if (false === e["saveLock"]) {
|
||
t._reSaveChanges(2);
|
||
} else {
|
||
setTimeout(function() {
|
||
t.askSaveChanges(callbackAskSaveChanges);
|
||
}, 1000);
|
||
}
|
||
};
|
||
this.askSaveChanges(callbackAskSaveChanges);
|
||
}
|
||
|
||
return;
|
||
}
|
||
if (data['result'] === 1) {
|
||
// Выставляем флаг, что мы уже авторизовывались
|
||
this._isAuth = true;
|
||
|
||
//TODO: add checks
|
||
this._state = ConnectionState.Authorized;
|
||
this._id = data['sessionId'];
|
||
this._indexUser = data['indexUser'];
|
||
this._userId = this._user.asc_getId() + this._indexUser;
|
||
this._sessionTimeConnect = data['sessionTimeConnect'];
|
||
if (data['settings'] && data['settings']['reconnection']) {
|
||
this.maxAttemptCount = data['settings']['reconnection']['attempts'];
|
||
this.reconnectInterval = data['settings']['reconnection']['delay'];
|
||
}
|
||
|
||
this._onLicenseChanged(data);
|
||
this._onAuthParticipantsChanged(data['participants']);
|
||
|
||
this._onSpellCheckInit(data['g_cAscSpellCheckUrl']);
|
||
this._onSetIndexUser(this._indexUser);
|
||
|
||
this._onMessages(data, false);
|
||
this._onGetLock(data);
|
||
if (data['hasForgotten']) {
|
||
this._onHasForgotten();
|
||
}
|
||
|
||
// Применения изменений пользователя
|
||
if (window['AscApplyChanges'] && window['AscChanges']) {
|
||
var userOfflineChanges = window['AscChanges'], changeOneUser;
|
||
for (var i = 0; i < userOfflineChanges.length; ++i) {
|
||
changeOneUser = userOfflineChanges[i];
|
||
for (var j = 0; j < changeOneUser.length; ++j)
|
||
this.onSaveChanges(changeOneUser[j], null, true);
|
||
}
|
||
}
|
||
this._updateAuthChanges();
|
||
// Посылать нужно всегда, т.к. на это рассчитываем при открытии
|
||
if (this.onFirstLoadChangesEnd) {
|
||
this.onFirstLoadChangesEnd();
|
||
}
|
||
|
||
//Apply prebuffered
|
||
this._applyPrebuffered();
|
||
|
||
//Send prebuffered
|
||
this._sendPrebuffered();
|
||
}
|
||
//TODO: Add errors
|
||
};
|
||
DocsCoApi.prototype._onAuthChanges = function(data) {
|
||
this._authChanges.push(data["changes"]);
|
||
};
|
||
DocsCoApi.prototype._updateAuthChanges = function() {
|
||
//todo apply changes with chunk on arrival
|
||
var changesIndex = 0, i, changes, data, indexDiff;
|
||
for (i = 0; i < this._authChanges.length; ++i) {
|
||
changes = this._authChanges[i];
|
||
changesIndex += changes.length;
|
||
this._updateChanges(changes, changesIndex, true);
|
||
}
|
||
this._authChanges = [];
|
||
for (i = 0; i < this._authOtherChanges.length; ++i) {
|
||
data = this._authOtherChanges[i];
|
||
indexDiff = data["changesIndex"] - changesIndex;
|
||
if (indexDiff > 0) {
|
||
if (indexDiff >= data["changes"].length) {
|
||
changes = data["changes"];
|
||
} else {
|
||
changes = data["changes"].splice(data["changes"].length - indexDiff, indexDiff);
|
||
}
|
||
changesIndex += changes.length;
|
||
this._updateChanges(changes, changesIndex, true);
|
||
}
|
||
}
|
||
this._authOtherChanges = [];
|
||
};
|
||
|
||
DocsCoApi.prototype.init = function(user, docid, documentCallbackUrl, token, editorType, documentFormatSave, docInfo) {
|
||
this._user = user;
|
||
this._docid = null;
|
||
this._documentCallbackUrl = documentCallbackUrl;
|
||
this._token = token;
|
||
this.ownedLockBlocks = [];
|
||
this.sockjs_url = null;
|
||
this.editorType = editorType;
|
||
this._isExcel = c_oEditorId.Spreadsheet === editorType;
|
||
this._isPresentation = c_oEditorId.Presentation === editorType;
|
||
this._isAuth = false;
|
||
this._documentFormatSave = documentFormatSave;
|
||
this.mode = docInfo.get_Mode();
|
||
this.permissions = docInfo.get_Permissions();
|
||
this.lang = docInfo.get_Lang();
|
||
this.jwtOpen = docInfo.get_Token();
|
||
this.encrypted = docInfo.get_Encrypted();
|
||
|
||
this.setDocId(docid);
|
||
this._initSocksJs();
|
||
};
|
||
DocsCoApi.prototype.getDocId = function() {
|
||
return this._docid;
|
||
};
|
||
DocsCoApi.prototype.setDocId = function(docid) {
|
||
//todo возможно надо менять sockjs_url
|
||
this._docid = docid;
|
||
this.sockjs_url = AscCommon.getBaseUrl() + '../../../../doc/' + docid + '/c';
|
||
};
|
||
// Авторизация (ее нужно делать после выставления состояния редактора view-mode)
|
||
DocsCoApi.prototype.auth = function(isViewer, opt_openCmd, opt_isIdle) {
|
||
this._isViewer = isViewer;
|
||
if (this._locks) {
|
||
this.ownedLockBlocks = [];
|
||
//If we already have locks
|
||
for (var block in this._locks) if (this._locks.hasOwnProperty(block)) {
|
||
var lock = this._locks[block];
|
||
if (lock["state"] === 2) {
|
||
//Our lock.
|
||
this.ownedLockBlocks.push(lock["blockValue"]);
|
||
}
|
||
}
|
||
this._locks = {};
|
||
}
|
||
this._send({
|
||
'type': 'auth',
|
||
'docid': this._docid,
|
||
'documentCallbackUrl': this._documentCallbackUrl,
|
||
'token': this._token,
|
||
'user': {
|
||
'id': this._user.asc_getId(),
|
||
'username': this._user.asc_getUserName(),
|
||
'firstname': this._user.asc_getFirstName(),
|
||
'lastname': this._user.asc_getLastName(),
|
||
'indexUser': this._indexUser
|
||
},
|
||
'editorType': this.editorType,
|
||
'lastOtherSaveTime': this.lastOtherSaveTime,
|
||
'block': this.ownedLockBlocks,
|
||
'sessionId': this._id,
|
||
'sessionTimeConnect': this._sessionTimeConnect,
|
||
'sessionTimeIdle': opt_isIdle >= 0 ? opt_isIdle : 0,
|
||
'documentFormatSave': this._documentFormatSave,
|
||
'view': this._isViewer,
|
||
'isCloseCoAuthoring': this.isCloseCoAuthoring,
|
||
'openCmd': opt_openCmd,
|
||
'lang': this.lang,
|
||
'mode': this.mode,
|
||
'permissions': this.permissions,
|
||
'encrypted': this.encrypted,
|
||
'jwtOpen': this.jwtOpen,
|
||
'jwtSession': this.jwtSession
|
||
});
|
||
};
|
||
|
||
DocsCoApi.prototype._initSocksJs = function () {
|
||
var t = this;
|
||
var sockjs;
|
||
sockjs = this.sockjs = {};
|
||
|
||
var send = function (data) {
|
||
setTimeout(function () {
|
||
sockjs.onmessage({
|
||
data: JSON.stringify(data)
|
||
});
|
||
});
|
||
};
|
||
var license = {
|
||
type: 'license',
|
||
license: {
|
||
type: 3,
|
||
mode: 0,
|
||
//light: false,
|
||
//trial: false,
|
||
rights: 1,
|
||
buildVersion: "5.2.6",
|
||
buildNumber: 2,
|
||
//branding: false
|
||
}
|
||
};
|
||
|
||
var channel;
|
||
|
||
require([
|
||
'/common/outer/worker-channel.js',
|
||
'/common/common-util.js'
|
||
], function (Channel, Util) {
|
||
var msgEv = Util.mkEvent();
|
||
var p = window.parent;
|
||
window.addEventListener('message', function (msg) {
|
||
if (msg.source !== p) { return; }
|
||
msgEv.fire(msg);
|
||
});
|
||
var postMsg = function (data) {
|
||
p.postMessage(data, '*');
|
||
};
|
||
Channel.create(msgEv, postMsg, function (chan) {
|
||
channel = chan;
|
||
send(license);
|
||
|
||
chan.on('CMD', function (obj) {
|
||
send(obj);
|
||
});
|
||
});
|
||
});
|
||
|
||
sockjs.onopen = function() {
|
||
t._state = ConnectionState.WaitAuth;
|
||
t.onFirstConnect();
|
||
};
|
||
sockjs.onopen();
|
||
|
||
sockjs.close = function () {
|
||
console.error('Close realtime');
|
||
};
|
||
|
||
sockjs.send = function (data) {
|
||
try {
|
||
var obj = JSON.parse(data);
|
||
} catch (e) {
|
||
console.error(e);
|
||
return;
|
||
}
|
||
if (channel) {
|
||
channel.event('CMD', obj);
|
||
}
|
||
};
|
||
|
||
sockjs.onmessage = function (e) {
|
||
t._onServerMessage(e.data);
|
||
};
|
||
|
||
return sockjs;
|
||
};
|
||
|
||
DocsCoApi.prototype._onServerOpen = function () {
|
||
if (this.reconnectTimeout) {
|
||
clearTimeout(this.reconnectTimeout);
|
||
this.reconnectTimeout = null;
|
||
this.attemptCount = 0;
|
||
}
|
||
|
||
this._state = ConnectionState.WaitAuth;
|
||
this.onFirstConnect();
|
||
};
|
||
DocsCoApi.prototype._onServerMessage = function (data) {
|
||
//TODO: add checks and error handling
|
||
//Get data type
|
||
var dataObject = JSON.parse(data);
|
||
switch (dataObject['type']) {
|
||
case 'auth' :
|
||
this._onAuth(dataObject);
|
||
break;
|
||
case 'message' :
|
||
this._onMessages(dataObject, false);
|
||
break;
|
||
case 'cursor' :
|
||
this._onCursor(dataObject);
|
||
break;
|
||
case 'meta' :
|
||
this._onMeta(dataObject);
|
||
break;
|
||
case 'getLock' :
|
||
this._onGetLock(dataObject);
|
||
break;
|
||
case 'releaseLock' :
|
||
this._onReleaseLock(dataObject);
|
||
break;
|
||
case 'connectState' :
|
||
this._onConnectionStateChanged(dataObject);
|
||
break;
|
||
case 'saveChanges' :
|
||
this._onSaveChanges(dataObject);
|
||
break;
|
||
case 'authChanges' :
|
||
this._onAuthChanges(dataObject);
|
||
break;
|
||
case 'saveLock' :
|
||
this._onSaveLock(dataObject);
|
||
break;
|
||
case 'unSaveLock' :
|
||
this._onUnSaveLock(dataObject);
|
||
break;
|
||
case 'savePartChanges' :
|
||
this._onSavePartChanges(dataObject);
|
||
break;
|
||
case 'drop' :
|
||
this._onDrop(dataObject);
|
||
break;
|
||
case 'waitAuth' : /*Ждем, когда придет auth, документ залочен*/
|
||
break;
|
||
case 'error' : /*Старая версия sdk*/
|
||
this._onDrop(dataObject);
|
||
break;
|
||
case 'documentOpen' :
|
||
this._documentOpen(dataObject);
|
||
break;
|
||
case 'warning':
|
||
this._onWarning(dataObject);
|
||
break;
|
||
case 'license':
|
||
this._onLicense(dataObject);
|
||
break;
|
||
case 'session' :
|
||
this._onSession(dataObject);
|
||
break;
|
||
case 'refreshToken' :
|
||
this._onRefreshToken(dataObject["messages"]);
|
||
break;
|
||
case 'expiredToken' :
|
||
this._onExpiredToken();
|
||
break;
|
||
case 'forceSaveStart' :
|
||
this._onForceSaveStart(dataObject["messages"]);
|
||
break;
|
||
case 'forceSave' :
|
||
this._onForceSave(dataObject["messages"]);
|
||
break;
|
||
}
|
||
};
|
||
DocsCoApi.prototype._onServerClose = function (evt) {
|
||
if (ConnectionState.SaveChanges === this._state) {
|
||
// Мы сохраняли изменения и разорвалось соединение
|
||
this._isReSaveAfterAuth = true;
|
||
// Очищаем предыдущий таймер
|
||
if (null !== this.saveCallbackErrorTimeOutId) {
|
||
clearTimeout(this.saveCallbackErrorTimeOutId);
|
||
this.saveCallbackErrorTimeOutId = null;
|
||
}
|
||
}
|
||
this._state = ConnectionState.Reconnect;
|
||
var bIsDisconnectAtAll = ((c_oCloseCode.serverShutdown <= evt.code && evt.code <= c_oCloseCode.drop) ||
|
||
this.attemptCount >= this.maxAttemptCount);
|
||
var error = null;
|
||
if (bIsDisconnectAtAll) {
|
||
this._state = ConnectionState.ClosedAll;
|
||
error = this._getDisconnectErrorCode(evt.code);
|
||
}
|
||
if (this.onDisconnect) {
|
||
this.onDisconnect(evt.reason, error);
|
||
}
|
||
//Try reconect
|
||
if (!bIsDisconnectAtAll) {
|
||
this._tryReconnect();
|
||
}
|
||
};
|
||
DocsCoApi.prototype._reconnect = function () {
|
||
delete this.sockjs;
|
||
this._initSocksJs();
|
||
};
|
||
DocsCoApi.prototype._tryReconnect = function () {
|
||
var t = this;
|
||
if (this.reconnectTimeout) {
|
||
clearTimeout(this.reconnectTimeout);
|
||
t.reconnectTimeout = null;
|
||
}
|
||
++this.attemptCount;
|
||
this.reconnectTimeout = setTimeout(function () {
|
||
t._reconnect();
|
||
}, this.reconnectInterval);
|
||
};
|
||
|
||
DocsCoApi.prototype._getDisconnectErrorCode = function(opt_closeCode) {
|
||
var code = this.isCloseCoAuthoring ? Asc.c_oAscError.ID.UserDrop : Asc.c_oAscError.ID.CoAuthoringDisconnect;
|
||
var level = Asc.c_oAscError.Level.NoCritical;
|
||
if (c_oCloseCode.serverShutdown === opt_closeCode) {
|
||
code = Asc.c_oAscError.ID.CoAuthoringDisconnect;
|
||
} else if (c_oCloseCode.sessionIdle === opt_closeCode) {
|
||
code = Asc.c_oAscError.ID.SessionIdle;
|
||
} else if (c_oCloseCode.sessionAbsolute === opt_closeCode) {
|
||
code = Asc.c_oAscError.ID.SessionAbsolute;
|
||
} else if (c_oCloseCode.accessDeny === opt_closeCode) {
|
||
code = Asc.c_oAscError.ID.AccessDeny;
|
||
} else if (c_oCloseCode.jwtExpired === opt_closeCode) {
|
||
if (this.jwtSession) {
|
||
code = Asc.c_oAscError.ID.SessionToken;
|
||
} else {
|
||
code = Asc.c_oAscError.ID.KeyExpire;
|
||
level = Asc.c_oAscError.Level.Critical;
|
||
}
|
||
} else if (c_oCloseCode.jwtError === opt_closeCode) {
|
||
code = Asc.c_oAscError.ID.VKeyEncrypt;
|
||
level = Asc.c_oAscError.Level.Critical;
|
||
} else if (c_oCloseCode.drop === opt_closeCode) {
|
||
code = Asc.c_oAscError.ID.UserDrop;
|
||
}
|
||
return {code: code, level: level};
|
||
};
|
||
|
||
//----------------------------------------------------------export----------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].CDocsCoApi = CDocsCoApi;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(function (window) {
|
||
'use strict';
|
||
|
||
// Класс надстройка, для online и offline работы
|
||
var CSpellCheckApi = function () {
|
||
this._SpellCheckApi = new SpellCheckApi();
|
||
this._onlineWork = false;
|
||
|
||
this.onDisconnect = null;
|
||
this.onSpellCheck = null;
|
||
this.onSpellCheck = null;
|
||
};
|
||
|
||
CSpellCheckApi.prototype.init = function (docid) {
|
||
if (this._SpellCheckApi && this._SpellCheckApi.isRightURL()) {
|
||
var t = this;
|
||
this._SpellCheckApi.onDisconnect = function (e, isDisconnectAtAll, isCloseCoAuthoring) {
|
||
t.callback_OnDisconnect(e, isDisconnectAtAll, isCloseCoAuthoring);
|
||
};
|
||
this._SpellCheckApi.onSpellCheck = function (e) {
|
||
t.callback_OnSpellCheck(e);
|
||
};
|
||
this._SpellCheckApi.onInit = function (e) {
|
||
t.callback_OnInit(e);
|
||
};
|
||
|
||
this._SpellCheckApi.init(docid);
|
||
this._onlineWork = true;
|
||
}
|
||
};
|
||
|
||
CSpellCheckApi.prototype.set_url = function (url) {
|
||
if (this._SpellCheckApi) {
|
||
this._SpellCheckApi.set_url(url);
|
||
}
|
||
};
|
||
|
||
CSpellCheckApi.prototype.get_state = function () {
|
||
if (this._SpellCheckApi) {
|
||
return this._SpellCheckApi.get_state();
|
||
}
|
||
|
||
return 0;
|
||
};
|
||
|
||
CSpellCheckApi.prototype.disconnect = function () {
|
||
if (this._SpellCheckApi && this._onlineWork) {
|
||
this._SpellCheckApi.disconnect();
|
||
}
|
||
};
|
||
|
||
CSpellCheckApi.prototype.spellCheck = function (spellCheckData) {
|
||
if (this._SpellCheckApi && this._onlineWork) {
|
||
this._SpellCheckApi.spellCheck(spellCheckData);
|
||
}
|
||
};
|
||
|
||
CSpellCheckApi.prototype.callback_OnSpellCheck = function (e) {
|
||
if (this.onSpellCheck) {
|
||
return this.onSpellCheck(e);
|
||
}
|
||
};
|
||
CSpellCheckApi.prototype.callback_OnInit = function (e) {
|
||
if (this.onInit) {
|
||
return this.onInit(e);
|
||
}
|
||
};
|
||
|
||
/**
|
||
* Event об отсоединении от сервера
|
||
* @param {jQuery} e event об отсоединении с причиной
|
||
* @param {Bool} isDisconnectAtAll окончательно ли отсоединяемся(true) или будем пробовать сделать reconnect(false) + сами отключились
|
||
*/
|
||
CSpellCheckApi.prototype.callback_OnDisconnect = function (e, isDisconnectAtAll, isCloseCoAuthoring) {
|
||
if (this.onDisconnect) {
|
||
return this.onDisconnect(e, isDisconnectAtAll, isCloseCoAuthoring);
|
||
}
|
||
};
|
||
|
||
/** States
|
||
* -1 - reconnect state
|
||
* 0 - not initialized
|
||
* 1 - opened
|
||
* 3 - closed
|
||
*/
|
||
var SpellCheckApi = function () {
|
||
this.onDisconnect = null;
|
||
this.onConnect = null;
|
||
this.onSpellCheck = null;
|
||
this.onInit = null;
|
||
|
||
this._state = 0;
|
||
// Мы сами отключились от совместного редактирования
|
||
this.isCloseCoAuthoring = false;
|
||
this.isInit = false;
|
||
|
||
// Массив данных, который стоит отправить как только подключимся
|
||
this.dataNeedSend = [];
|
||
|
||
this._url = "";
|
||
};
|
||
|
||
SpellCheckApi.prototype.isRightURL = function () {
|
||
return ("" !== this._url);
|
||
};
|
||
|
||
SpellCheckApi.prototype.set_url = function (url) {
|
||
this._url = url;
|
||
};
|
||
|
||
SpellCheckApi.prototype.get_state = function () {
|
||
return this._state;
|
||
};
|
||
|
||
SpellCheckApi.prototype.spellCheck = function (spellCheckData) {
|
||
this._send({"type": "spellCheck", "spellCheckData": spellCheckData});
|
||
};
|
||
|
||
SpellCheckApi.prototype.disconnect = function () {
|
||
// Отключаемся сами
|
||
this.isCloseCoAuthoring = true;
|
||
return this.sockjs.close();
|
||
};
|
||
|
||
SpellCheckApi.prototype._send = function (data) {
|
||
if (data !== null && typeof data === "object") {
|
||
if (this._state > 0) {
|
||
this.sockjs.send(JSON.stringify(data));
|
||
} else {
|
||
this.dataNeedSend.push(data);
|
||
}
|
||
}
|
||
};
|
||
|
||
SpellCheckApi.prototype._sendAfterConnect = function () {
|
||
var data;
|
||
while (this._state > 0 && undefined !== (data = this.dataNeedSend.shift()))
|
||
this._send(data);
|
||
};
|
||
|
||
SpellCheckApi.prototype._onSpellCheck = function (data) {
|
||
if (data["spellCheckData"] && this.onSpellCheck) {
|
||
this.onSpellCheck(data["spellCheckData"]);
|
||
}
|
||
};
|
||
SpellCheckApi.prototype._onInit = function (data) {
|
||
if (!this.isInit && data["languages"] && this.onInit) {
|
||
this.onInit(data["languages"]);
|
||
this.isInit = true;
|
||
}
|
||
};
|
||
|
||
var reconnectTimeout, attemptCount = 0;
|
||
|
||
function initSocksJs(url, docsCoApi) {
|
||
//ограничиваем transports WebSocket и XHR / JSONP polling, как и engine.io https://github.com/socketio/engine.io
|
||
//при переборе streaming transports у клиента с wirewall происходило зацикливание(не повторялось в версии sock.js 0.3.4)
|
||
var sockjs = new (AscCommon.getSockJs())(url, null,
|
||
{'transports': ['websocket', 'xdr-polling', 'xhr-polling', 'iframe-xhr-polling', 'jsonp-polling']});
|
||
|
||
sockjs.onopen = function () {
|
||
if (reconnectTimeout) {
|
||
clearTimeout(reconnectTimeout);
|
||
attemptCount = 0;
|
||
}
|
||
docsCoApi._state = 1; // Opened state
|
||
if (docsCoApi.onConnect) {
|
||
docsCoApi.onConnect();
|
||
}
|
||
|
||
// Отправляем все данные, которые пришли до соединения с сервером
|
||
docsCoApi._sendAfterConnect();
|
||
};
|
||
|
||
sockjs.onmessage = function (e) {
|
||
//TODO: add checks and error handling
|
||
//Get data type
|
||
var dataObject = JSON.parse(e.data);
|
||
var type = dataObject.type;
|
||
switch (type) {
|
||
case 'spellCheck' :
|
||
docsCoApi._onSpellCheck(dataObject);
|
||
break;
|
||
case 'init':
|
||
docsCoApi._onInit(dataObject);
|
||
break;
|
||
}
|
||
};
|
||
sockjs.onclose = function (evt) {
|
||
docsCoApi._state = -1; // Reconnect state
|
||
var bIsDisconnectAtAll = attemptCount >= 20 || docsCoApi.isCloseCoAuthoring;
|
||
if (bIsDisconnectAtAll) {
|
||
docsCoApi._state = 3;
|
||
} // Closed state
|
||
if (docsCoApi.onDisconnect) {
|
||
docsCoApi.onDisconnect(evt.reason, bIsDisconnectAtAll, docsCoApi.isCloseCoAuthoring);
|
||
}
|
||
if (docsCoApi.isCloseCoAuthoring) {
|
||
return;
|
||
}
|
||
//Try reconect
|
||
if (attemptCount < 20) {
|
||
tryReconnect();
|
||
}
|
||
};
|
||
|
||
function tryReconnect() {
|
||
if (reconnectTimeout) {
|
||
clearTimeout(reconnectTimeout);
|
||
}
|
||
attemptCount++;
|
||
reconnectTimeout = setTimeout(function () {
|
||
delete docsCoApi.sockjs;
|
||
docsCoApi.sockjs = initSocksJs(url, docsCoApi);
|
||
}, 500 * attemptCount);
|
||
|
||
}
|
||
|
||
return sockjs;
|
||
}
|
||
|
||
SpellCheckApi.prototype.init = function (docid) {
|
||
this._docid = docid;
|
||
var re = /^https?:\/\//;
|
||
var spellcheckUrl = this._url + '/doc/' + docid + '/c';
|
||
|
||
if (re.test(this._url)) {
|
||
this.sockjs_url = spellcheckUrl;
|
||
} else {
|
||
this.sockjs_url = AscCommon.getBaseUrl() + "../../../.." + spellcheckUrl;
|
||
}
|
||
|
||
//Begin send auth
|
||
this.sockjs = initSocksJs(this.sockjs_url, this);
|
||
};
|
||
|
||
//-----------------------------------------------------------export---------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window["AscCommon"].CSpellCheckApi = CSpellCheckApi;
|
||
})(window);
|
||
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function (window, undefined) {
|
||
|
||
var Asc = window['Asc'];
|
||
var AscCommon = window['AscCommon'];
|
||
|
||
// Import
|
||
var prot;
|
||
var c_oAscMouseMoveDataTypes = AscCommon.c_oAscMouseMoveDataTypes;
|
||
|
||
var c_oAscColor = Asc.c_oAscColor;
|
||
var c_oAscFill = Asc.c_oAscFill;
|
||
var c_oAscFillBlipType = Asc.c_oAscFillBlipType;
|
||
var c_oAscChartTypeSettings = Asc.c_oAscChartTypeSettings;
|
||
var c_oAscTickMark = Asc.c_oAscTickMark;
|
||
var c_oAscAxisType = Asc.c_oAscAxisType;
|
||
// ---------------------------------------------------------------------------------------------------------------
|
||
|
||
var c_oAscArrUserColors = [16757719, 7929702, 56805, 10081791, 12884479, 16751001, 6748927, 16762931, 6865407,
|
||
15650047, 16737894, 3407768, 16759142, 10852863, 6750176, 16774656, 13926655, 13815039, 3397375, 11927347, 16752947,
|
||
9404671, 4980531, 16744678, 3407830, 15919360, 16731553, 52479, 13330175, 16743219, 3386367, 14221056, 16737966,
|
||
1896960, 65484, 10970879, 16759296, 16711680, 13496832, 62072, 49906, 16734720, 10682112, 7890687, 16731610, 65406,
|
||
38655, 16747008, 59890, 12733951, 15859712, 47077, 15050496, 15224319, 10154496, 58807, 16724950, 1759488, 9981439,
|
||
15064320, 15893248, 16724883, 58737, 15007744, 36594, 12772608, 12137471, 6442495, 15039488, 16718470, 14274816,
|
||
53721, 16718545, 1625088, 15881472, 13419776, 32985, 16711800, 1490688, 16711884, 8991743, 13407488, 41932, 7978752,
|
||
15028480, 52387, 15007927, 12114176, 1421824, 55726, 13041893, 10665728, 30924, 49049, 14241024, 36530, 11709440,
|
||
13397504, 45710, 34214];
|
||
|
||
function CreateAscColorCustom(r, g, b, auto) {
|
||
var ret = new asc_CColor();
|
||
ret.type = c_oAscColor.COLOR_TYPE_SRGB;
|
||
ret.r = r;
|
||
ret.g = g;
|
||
ret.b = b;
|
||
ret.a = 255;
|
||
ret.Auto = ( undefined === auto ? false : auto );
|
||
return ret;
|
||
}
|
||
|
||
function CreateAscColor(unicolor) {
|
||
if (null == unicolor || null == unicolor.color) {
|
||
return new asc_CColor();
|
||
}
|
||
|
||
var ret = new asc_CColor();
|
||
ret.r = unicolor.RGBA.R;
|
||
ret.g = unicolor.RGBA.G;
|
||
ret.b = unicolor.RGBA.B;
|
||
ret.a = unicolor.RGBA.A;
|
||
|
||
var _color = unicolor.color;
|
||
switch (_color.type) {
|
||
case c_oAscColor.COLOR_TYPE_SRGB:
|
||
case c_oAscColor.COLOR_TYPE_SYS: {
|
||
break;
|
||
}
|
||
case c_oAscColor.COLOR_TYPE_PRST:
|
||
case c_oAscColor.COLOR_TYPE_SCHEME: {
|
||
ret.type = _color.type;
|
||
ret.value = _color.id;
|
||
break;
|
||
}
|
||
default:
|
||
break;
|
||
}
|
||
return ret;
|
||
}
|
||
|
||
function CreateGUID()
|
||
{
|
||
function s4() { return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); }
|
||
|
||
var val = '{' + s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4() + '}';
|
||
val = val.toUpperCase();
|
||
return val;
|
||
}
|
||
|
||
var c_oLicenseResult = {
|
||
Error : 1,
|
||
Expired : 2,
|
||
Success : 3,
|
||
UnknownUser : 4,
|
||
Connections : 5,
|
||
ExpiredTrial : 6,
|
||
SuccessLimit : 7,
|
||
UsersCount : 8,
|
||
ConnectionsOS : 9,
|
||
UsersCountOS : 10
|
||
};
|
||
|
||
var c_oRights = {
|
||
None : 0,
|
||
Edit : 1,
|
||
Review : 2,
|
||
Comment : 3,
|
||
View : 4
|
||
};
|
||
|
||
var c_oLicenseMode = {
|
||
None: 0,
|
||
Trial: 1,
|
||
Developer: 2
|
||
};
|
||
|
||
var EPluginDataType = {
|
||
none: "none",
|
||
text: "text",
|
||
ole: "ole",
|
||
html: "html",
|
||
desktop: "desktop"
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CSignatureLine()
|
||
{
|
||
this.id = undefined;
|
||
this.guid = "";
|
||
this.signer1 = "";
|
||
this.signer2 = "";
|
||
this.email = "";
|
||
|
||
this.instructions = "";
|
||
this.showDate = false;
|
||
|
||
this.valid = 0;
|
||
|
||
this.image = "";
|
||
|
||
this.date = "";
|
||
this.isvisible = false;
|
||
this.isrequested = false;
|
||
}
|
||
asc_CSignatureLine.prototype.correct = function()
|
||
{
|
||
if (this.id == null)
|
||
this.id = "0";
|
||
if (this.guid == null)
|
||
this.guid = "";
|
||
if (this.signer1 == null)
|
||
this.signer1 = "";
|
||
if (this.signer2 == null)
|
||
this.signer2 = "";
|
||
if (this.email == null)
|
||
this.email = "";
|
||
if (this.instructions == null)
|
||
this.instructions = "";
|
||
if (this.showDate == null)
|
||
this.showDate = false;
|
||
if (this.valid == null)
|
||
this.valid = 0;
|
||
if (this.image == null)
|
||
this.image = "";
|
||
if (this.date == null)
|
||
this.date = "";
|
||
if (this.isvisible == null)
|
||
this.isvisible = false;
|
||
};
|
||
asc_CSignatureLine.prototype.asc_getId = function(){ return this.id; };
|
||
asc_CSignatureLine.prototype.asc_setId = function(v){ this.id = v; };
|
||
asc_CSignatureLine.prototype.asc_getGuid = function(){ return this.guid; };
|
||
asc_CSignatureLine.prototype.asc_setGuid = function(v){ this.guid = v; };
|
||
asc_CSignatureLine.prototype.asc_getSigner1 = function(){ return this.signer1; };
|
||
asc_CSignatureLine.prototype.asc_setSigner1 = function(v){ this.signer1 = v; };
|
||
asc_CSignatureLine.prototype.asc_getSigner2 = function(){ return this.signer2; };
|
||
asc_CSignatureLine.prototype.asc_setSigner2 = function(v){ this.signer2 = v; };
|
||
asc_CSignatureLine.prototype.asc_getEmail = function(){ return this.email; };
|
||
asc_CSignatureLine.prototype.asc_setEmail = function(v){ this.email = v; };
|
||
asc_CSignatureLine.prototype.asc_getInstructions = function(){ return this.instructions; };
|
||
asc_CSignatureLine.prototype.asc_setInstructions = function(v){ this.instructions = v; };
|
||
asc_CSignatureLine.prototype.asc_getShowDate = function(){ return this.showDate; };
|
||
asc_CSignatureLine.prototype.asc_setShowDate = function(v){ this.showDate = v; };
|
||
asc_CSignatureLine.prototype.asc_getValid = function(){ return this.valid; };
|
||
asc_CSignatureLine.prototype.asc_setValid = function(v){ this.valid = v; };
|
||
asc_CSignatureLine.prototype.asc_getDate = function(){ return this.date; };
|
||
asc_CSignatureLine.prototype.asc_setDate = function(v){ this.date = v; };
|
||
asc_CSignatureLine.prototype.asc_getVisible = function(){ return this.isvisible; };
|
||
asc_CSignatureLine.prototype.asc_setVisible = function(v){ this.isvisible = v; };
|
||
asc_CSignatureLine.prototype.asc_getRequested = function(){ return this.isrequested; };
|
||
asc_CSignatureLine.prototype.asc_setRequested = function(v){ this.isrequested = v; };
|
||
|
||
/**
|
||
* Класс asc_CAscEditorPermissions для прав редакторов
|
||
* -----------------------------------------------------------------------------
|
||
*
|
||
* @constructor
|
||
* @memberOf Asc
|
||
*/
|
||
function asc_CAscEditorPermissions() {
|
||
this.licenseType = c_oLicenseResult.Error;
|
||
this.licenseMode = c_oLicenseMode.None;
|
||
this.isLight = false;
|
||
this.rights = c_oRights.None;
|
||
|
||
this.canCoAuthoring = true;
|
||
this.canReaderMode = true;
|
||
this.canBranding = false;
|
||
this.isAutosaveEnable = true;
|
||
this.AutosaveMinInterval = 300;
|
||
this.isAnalyticsEnable = false;
|
||
this.buildVersion = null;
|
||
this.buildNumber = null;
|
||
return this;
|
||
}
|
||
|
||
asc_CAscEditorPermissions.prototype.asc_getLicenseType = function () {
|
||
return this.licenseType;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getCanCoAuthoring = function () {
|
||
return this.canCoAuthoring;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getCanReaderMode = function () {
|
||
return this.canReaderMode;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getCanBranding = function () {
|
||
return this.canBranding;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getIsAutosaveEnable = function () {
|
||
return this.isAutosaveEnable;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getAutosaveMinInterval = function () {
|
||
return this.AutosaveMinInterval;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getIsAnalyticsEnable = function () {
|
||
return this.isAnalyticsEnable;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getIsLight = function () {
|
||
return this.isLight;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getLicenseMode = function () {
|
||
return this.licenseMode;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getRights = function () {
|
||
return this.rights;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getBuildVersion = function () {
|
||
return this.buildVersion;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.asc_getBuildNumber = function () {
|
||
return this.buildNumber;
|
||
};
|
||
|
||
asc_CAscEditorPermissions.prototype.setLicenseType = function (v) {
|
||
this.licenseType = v;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.setCanBranding = function (v) {
|
||
this.canBranding = v;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.setIsLight = function (v) {
|
||
this.isLight = v;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.setLicenseMode = function (v) {
|
||
this.licenseMode = v;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.setRights = function (v) {
|
||
this.rights = v;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.setBuildVersion = function (v) {
|
||
this.buildVersion = v;
|
||
};
|
||
asc_CAscEditorPermissions.prototype.setBuildNumber = function (v) {
|
||
this.buildNumber = v;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_ValAxisSettings() {
|
||
this.minValRule = null;
|
||
this.minVal = null;
|
||
this.maxValRule = null;
|
||
this.maxVal = null;
|
||
this.invertValOrder = null;
|
||
this.logScale = null;
|
||
this.logBase = null;
|
||
|
||
this.dispUnitsRule = null;
|
||
this.units = null;
|
||
|
||
|
||
this.showUnitsOnChart = null;
|
||
this.majorTickMark = null;
|
||
this.minorTickMark = null;
|
||
this.tickLabelsPos = null;
|
||
this.crossesRule = null;
|
||
this.crosses = null;
|
||
this.axisType = c_oAscAxisType.val;
|
||
}
|
||
|
||
asc_ValAxisSettings.prototype = {
|
||
|
||
|
||
isEqual: function(oPr){
|
||
if(!oPr){
|
||
return false;
|
||
}
|
||
if(this.minValRule !== oPr.minValRule){
|
||
return false;
|
||
}
|
||
if(this.minVal !== oPr.minVal){
|
||
return false;
|
||
}
|
||
if(this.maxValRule !== oPr.maxValRule){
|
||
return false;
|
||
}
|
||
if(this.maxVal !== oPr.maxVal){
|
||
return false;
|
||
}
|
||
if(this.invertValOrder !== oPr.invertValOrder){
|
||
return false;
|
||
}
|
||
if(this.logScale !== oPr.logScale){
|
||
return false;
|
||
}
|
||
if(this.logBase !== oPr.logBase){
|
||
return false;
|
||
}
|
||
if(this.dispUnitsRule !== oPr.dispUnitsRule){
|
||
return false;
|
||
}
|
||
if(this.units !== oPr.units){
|
||
return false;
|
||
}
|
||
if(this.showUnitsOnChart !== oPr.showUnitsOnChart){
|
||
return false;
|
||
}
|
||
if(this.majorTickMark !== oPr.majorTickMark){
|
||
return false;
|
||
}
|
||
if(this.minorTickMark !== oPr.minorTickMark){
|
||
return false;
|
||
}
|
||
if(this.tickLabelsPos !== oPr.tickLabelsPos){
|
||
return false;
|
||
}
|
||
if(this.crossesRule !== oPr.crossesRule){
|
||
return false;
|
||
}
|
||
if(this.crosses !== oPr.crosses){
|
||
return false;
|
||
}
|
||
if(this.axisType !== oPr.axisType){
|
||
return false;
|
||
}
|
||
|
||
return true;
|
||
},
|
||
|
||
putAxisType: function (v) {
|
||
this.axisType = v;
|
||
},
|
||
|
||
putMinValRule: function (v) {
|
||
this.minValRule = v;
|
||
}, putMinVal: function (v) {
|
||
this.minVal = v;
|
||
}, putMaxValRule: function (v) {
|
||
this.maxValRule = v;
|
||
}, putMaxVal: function (v) {
|
||
this.maxVal = v;
|
||
}, putInvertValOrder: function (v) {
|
||
this.invertValOrder = v;
|
||
}, putLogScale: function (v) {
|
||
this.logScale = v;
|
||
}, putLogBase: function (v) {
|
||
this.logBase = v;
|
||
}, putUnits: function (v) {
|
||
this.units = v;
|
||
}, putShowUnitsOnChart: function (v) {
|
||
this.showUnitsOnChart = v;
|
||
}, putMajorTickMark: function (v) {
|
||
this.majorTickMark = v;
|
||
}, putMinorTickMark: function (v) {
|
||
this.minorTickMark = v;
|
||
}, putTickLabelsPos: function (v) {
|
||
this.tickLabelsPos = v;
|
||
}, putCrossesRule: function (v) {
|
||
this.crossesRule = v;
|
||
}, putCrosses: function (v) {
|
||
this.crosses = v;
|
||
},
|
||
|
||
|
||
putDispUnitsRule: function (v) {
|
||
this.dispUnitsRule = v;
|
||
},
|
||
|
||
getAxisType: function () {
|
||
return this.axisType;
|
||
},
|
||
|
||
getDispUnitsRule: function () {
|
||
return this.dispUnitsRule;
|
||
},
|
||
|
||
getMinValRule: function () {
|
||
return this.minValRule;
|
||
}, getMinVal: function () {
|
||
return this.minVal;
|
||
}, getMaxValRule: function () {
|
||
return this.maxValRule;
|
||
}, getMaxVal: function () {
|
||
return this.maxVal;
|
||
}, getInvertValOrder: function () {
|
||
return this.invertValOrder;
|
||
}, getLogScale: function () {
|
||
return this.logScale;
|
||
}, getLogBase: function () {
|
||
return this.logBase;
|
||
}, getUnits: function () {
|
||
return this.units;
|
||
}, getShowUnitsOnChart: function () {
|
||
return this.showUnitsOnChart;
|
||
}, getMajorTickMark: function () {
|
||
return this.majorTickMark;
|
||
}, getMinorTickMark: function () {
|
||
return this.minorTickMark;
|
||
}, getTickLabelsPos: function () {
|
||
return this.tickLabelsPos;
|
||
}, getCrossesRule: function () {
|
||
return this.crossesRule;
|
||
}, getCrosses: function () {
|
||
return this.crosses;
|
||
}, setDefault: function () {
|
||
this.putMinValRule(Asc.c_oAscValAxisRule.auto);
|
||
this.putMaxValRule(Asc.c_oAscValAxisRule.auto);
|
||
this.putTickLabelsPos(Asc.c_oAscTickLabelsPos.TICK_LABEL_POSITION_NEXT_TO);
|
||
this.putInvertValOrder(false);
|
||
this.putDispUnitsRule(Asc.c_oAscValAxUnits.none);
|
||
this.putMajorTickMark(c_oAscTickMark.TICK_MARK_OUT);
|
||
this.putMinorTickMark(c_oAscTickMark.TICK_MARK_NONE);
|
||
this.putCrossesRule(Asc.c_oAscCrossesRule.auto);
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CatAxisSettings() {
|
||
this.intervalBetweenTick = null;
|
||
this.intervalBetweenLabelsRule = null;
|
||
this.intervalBetweenLabels = null;
|
||
this.invertCatOrder = null;
|
||
this.labelsAxisDistance = null;
|
||
this.majorTickMark = null;
|
||
this.minorTickMark = null;
|
||
this.tickLabelsPos = null;
|
||
this.crossesRule = null;
|
||
this.crosses = null;
|
||
this.labelsPosition = null;
|
||
this.axisType = c_oAscAxisType.cat;
|
||
this.crossMinVal = null;
|
||
this.crossMaxVal = null;
|
||
}
|
||
|
||
asc_CatAxisSettings.prototype = {
|
||
|
||
isEqual: function(oPr){
|
||
if(!oPr){
|
||
return false;
|
||
}
|
||
if(this.intervalBetweenTick !== oPr.intervalBetweenTick){
|
||
return false;
|
||
}
|
||
if(this.intervalBetweenLabelsRule !== oPr.intervalBetweenLabelsRule){
|
||
return false;
|
||
}
|
||
if(this.intervalBetweenLabels !== oPr.intervalBetweenLabels){
|
||
return false;
|
||
}
|
||
if(this.invertCatOrder !== oPr.invertCatOrder){
|
||
return false;
|
||
}
|
||
if(this.labelsAxisDistance !== oPr.labelsAxisDistance){
|
||
return false;
|
||
}
|
||
if(this.majorTickMark !== oPr.majorTickMark){
|
||
return false;
|
||
}
|
||
if(this.minorTickMark !== oPr.minorTickMark){
|
||
return false;
|
||
}
|
||
if(this.tickLabelsPos !== oPr.tickLabelsPos){
|
||
return false;
|
||
}
|
||
if(this.crossesRule !== oPr.crossesRule){
|
||
return false;
|
||
}
|
||
if(this.crosses !== oPr.crosses){
|
||
return false;
|
||
}
|
||
if(this.labelsPosition !== oPr.labelsPosition){
|
||
return false;
|
||
}
|
||
if(this.axisType !== oPr.axisType){
|
||
return false;
|
||
}
|
||
if(this.crossMinVal !== oPr.crossMinVal){
|
||
return false;
|
||
}
|
||
if(this.crossMaxVal !== oPr.crossMaxVal){
|
||
return false;
|
||
}
|
||
return true;
|
||
},
|
||
putIntervalBetweenTick: function (v) {
|
||
this.intervalBetweenTick = v;
|
||
}, putIntervalBetweenLabelsRule: function (v) {
|
||
this.intervalBetweenLabelsRule = v;
|
||
}, putIntervalBetweenLabels: function (v) {
|
||
this.intervalBetweenLabels = v;
|
||
}, putInvertCatOrder: function (v) {
|
||
this.invertCatOrder = v;
|
||
}, putLabelsAxisDistance: function (v) {
|
||
this.labelsAxisDistance = v;
|
||
}, putMajorTickMark: function (v) {
|
||
this.majorTickMark = v;
|
||
}, putMinorTickMark: function (v) {
|
||
this.minorTickMark = v;
|
||
}, putTickLabelsPos: function (v) {
|
||
this.tickLabelsPos = v;
|
||
}, putCrossesRule: function (v) {
|
||
this.crossesRule = v;
|
||
}, putCrosses: function (v) {
|
||
this.crosses = v;
|
||
},
|
||
|
||
putAxisType: function (v) {
|
||
this.axisType = v;
|
||
},
|
||
|
||
putLabelsPosition: function (v) {
|
||
this.labelsPosition = v;
|
||
},
|
||
|
||
getIntervalBetweenTick: function (v) {
|
||
return this.intervalBetweenTick;
|
||
},
|
||
|
||
getIntervalBetweenLabelsRule: function () {
|
||
return this.intervalBetweenLabelsRule;
|
||
}, getIntervalBetweenLabels: function () {
|
||
return this.intervalBetweenLabels;
|
||
}, getInvertCatOrder: function () {
|
||
return this.invertCatOrder;
|
||
}, getLabelsAxisDistance: function () {
|
||
return this.labelsAxisDistance;
|
||
}, getMajorTickMark: function () {
|
||
return this.majorTickMark;
|
||
}, getMinorTickMark: function () {
|
||
return this.minorTickMark;
|
||
}, getTickLabelsPos: function () {
|
||
return this.tickLabelsPos;
|
||
}, getCrossesRule: function () {
|
||
return this.crossesRule;
|
||
}, getCrosses: function () {
|
||
return this.crosses;
|
||
},
|
||
|
||
getAxisType: function () {
|
||
return this.axisType;
|
||
},
|
||
|
||
getLabelsPosition: function () {
|
||
return this.labelsPosition;
|
||
},
|
||
|
||
getCrossMinVal: function () {
|
||
return this.crossMinVal;
|
||
},
|
||
|
||
getCrossMaxVal: function () {
|
||
return this.crossMaxVal;
|
||
},
|
||
|
||
|
||
putCrossMinVal: function (val) {
|
||
this.crossMinVal = val;
|
||
},
|
||
|
||
putCrossMaxVal: function (val) {
|
||
this.crossMaxVal = val;
|
||
},
|
||
|
||
setDefault: function () {
|
||
this.putIntervalBetweenLabelsRule(Asc.c_oAscBetweenLabelsRule.auto);
|
||
this.putLabelsPosition(Asc.c_oAscLabelsPosition.betweenDivisions);
|
||
this.putTickLabelsPos(Asc.c_oAscTickLabelsPos.TICK_LABEL_POSITION_NEXT_TO);
|
||
this.putLabelsAxisDistance(100);
|
||
this.putMajorTickMark(c_oAscTickMark.TICK_MARK_OUT);
|
||
this.putMinorTickMark(c_oAscTickMark.TICK_MARK_NONE);
|
||
this.putIntervalBetweenTick(1);
|
||
this.putCrossesRule(Asc.c_oAscCrossesRule.auto);
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_ChartSettings() {
|
||
this.style = null;
|
||
this.title = null;
|
||
this.rowCols = null;
|
||
this.horAxisLabel = null;
|
||
this.vertAxisLabel = null;
|
||
this.legendPos = null;
|
||
this.dataLabelsPos = null;
|
||
this.vertAx = null;
|
||
this.horAx = null;
|
||
this.horGridLines = null;
|
||
this.vertGridLines = null;
|
||
this.type = null;
|
||
this.showSerName = null;
|
||
this.showCatName = null;
|
||
this.showVal = null;
|
||
this.separator = null;
|
||
this.horAxisProps = null;
|
||
this.vertAxisProps = null;
|
||
this.range = null;
|
||
this.inColumns = null;
|
||
|
||
this.showMarker = null;
|
||
this.bLine = null;
|
||
this.smooth = null;
|
||
this.showHorAxis = null;
|
||
this.showVerAxis = null;
|
||
}
|
||
|
||
asc_ChartSettings.prototype = {
|
||
|
||
equalBool: function(a, b){
|
||
return ((!!a) === (!!b));
|
||
},
|
||
|
||
isEqual: function(oPr){
|
||
if(!oPr){
|
||
return false;
|
||
}
|
||
if(this.style !== oPr.style){
|
||
return false;
|
||
}
|
||
if(this.title !== oPr.title){
|
||
return false;
|
||
}
|
||
if(this.rowCols !== oPr.rowCols){
|
||
return false;
|
||
}
|
||
if(this.horAxisLabel !== oPr.horAxisLabel){
|
||
return false;
|
||
}
|
||
if(this.vertAxisLabel !== oPr.vertAxisLabel){
|
||
return false;
|
||
}
|
||
if(this.legendPos !== oPr.legendPos){
|
||
return false;
|
||
}
|
||
if(this.dataLabelsPos !== oPr.dataLabelsPos){
|
||
return false;
|
||
}
|
||
if(this.vertAx !== oPr.vertAx){
|
||
return false;
|
||
}
|
||
if(this.horAx !== oPr.horAx){
|
||
return false;
|
||
}
|
||
if(this.horGridLines !== oPr.horGridLines){
|
||
return false;
|
||
}
|
||
if(this.vertGridLines !== oPr.vertGridLines){
|
||
return false;
|
||
}
|
||
if(this.type !== oPr.type){
|
||
return false;
|
||
}
|
||
if(!this.equalBool(this.showSerName, oPr.showSerName)){
|
||
return false;
|
||
}
|
||
|
||
if(!this.equalBool(this.showCatName, oPr.showCatName)){
|
||
return false;
|
||
}
|
||
if(!this.equalBool(this.showVal, oPr.showVal)){
|
||
return false;
|
||
}
|
||
|
||
if(this.separator !== oPr.separator &&
|
||
!(this.separator === ' ' && oPr.separator == null || oPr.separator === ' ' && this.separator == null)){
|
||
return false;
|
||
}
|
||
if(!this.horAxisProps){
|
||
if(oPr.horAxisProps){
|
||
return false;
|
||
}
|
||
}
|
||
else{
|
||
if(!this.horAxisProps.isEqual(oPr.horAxisProps)){
|
||
return false;
|
||
}
|
||
}
|
||
if(!this.vertAxisProps){
|
||
if(oPr.vertAxisProps){
|
||
return false;
|
||
}
|
||
}
|
||
else{
|
||
if(!this.vertAxisProps.isEqual(oPr.vertAxisProps)){
|
||
return false;
|
||
}
|
||
}
|
||
if(this.range !== oPr.range){
|
||
return false;
|
||
}
|
||
if(!this.equalBool(this.inColumns, oPr.inColumns)){
|
||
return false;
|
||
}
|
||
|
||
if(!this.equalBool(this.showMarker, oPr.showMarker)){
|
||
return false;
|
||
}
|
||
if(!this.equalBool(this.bLine, oPr.bLine)){
|
||
return false;
|
||
}
|
||
if(!this.equalBool(this.smooth, oPr.smooth)){
|
||
return false;
|
||
}
|
||
if(!this.equalBool(this.showHorAxis, oPr.showHorAxis)){
|
||
return false;
|
||
}
|
||
|
||
if(!this.equalBool(this.showVerAxis, oPr.showVerAxis)){
|
||
return false;
|
||
}
|
||
return true;
|
||
},
|
||
|
||
putShowMarker: function (v) {
|
||
this.showMarker = v;
|
||
},
|
||
|
||
getShowMarker: function () {
|
||
return this.showMarker;
|
||
},
|
||
|
||
putLine: function (v) {
|
||
this.bLine = v;
|
||
},
|
||
|
||
getLine: function () {
|
||
return this.bLine;
|
||
},
|
||
|
||
|
||
putSmooth: function (v) {
|
||
this.smooth = v;
|
||
},
|
||
|
||
getSmooth: function () {
|
||
return this.smooth;
|
||
},
|
||
|
||
putStyle: function (index) {
|
||
this.style = parseInt(index, 10);
|
||
},
|
||
|
||
getStyle: function () {
|
||
return this.style;
|
||
},
|
||
|
||
putRange: function (range) {
|
||
this.range = range;
|
||
},
|
||
|
||
getRange: function () {
|
||
return this.range;
|
||
},
|
||
|
||
putInColumns: function (inColumns) {
|
||
this.inColumns = inColumns;
|
||
},
|
||
|
||
getInColumns: function () {
|
||
return this.inColumns;
|
||
},
|
||
|
||
putTitle: function (v) {
|
||
this.title = v;
|
||
},
|
||
|
||
getTitle: function () {
|
||
return this.title;
|
||
},
|
||
|
||
putRowCols: function (v) {
|
||
this.rowCols = v;
|
||
},
|
||
|
||
getRowCols: function () {
|
||
return this.rowCols;
|
||
},
|
||
|
||
putHorAxisLabel: function (v) {
|
||
this.horAxisLabel = v;
|
||
}, putVertAxisLabel: function (v) {
|
||
this.vertAxisLabel = v;
|
||
}, putLegendPos: function (v) {
|
||
this.legendPos = v;
|
||
}, putDataLabelsPos: function (v) {
|
||
this.dataLabelsPos = v;
|
||
}, putCatAx: function (v) {
|
||
this.vertAx = v;
|
||
}, putValAx: function (v) {
|
||
this.horAx = v;
|
||
},
|
||
|
||
getHorAxisLabel: function (v) {
|
||
return this.horAxisLabel;
|
||
}, getVertAxisLabel: function (v) {
|
||
return this.vertAxisLabel;
|
||
}, getLegendPos: function (v) {
|
||
return this.legendPos;
|
||
}, getDataLabelsPos: function (v) {
|
||
return this.dataLabelsPos;
|
||
}, getVertAx: function (v) {
|
||
return this.vertAx;
|
||
}, getHorAx: function (v) {
|
||
return this.horAx;
|
||
},
|
||
|
||
putHorGridLines: function (v) {
|
||
this.horGridLines = v;
|
||
},
|
||
|
||
getHorGridLines: function (v) {
|
||
return this.horGridLines;
|
||
},
|
||
|
||
putVertGridLines: function (v) {
|
||
this.vertGridLines = v;
|
||
},
|
||
|
||
getVertGridLines: function () {
|
||
return this.vertGridLines;
|
||
},
|
||
|
||
getType: function () {
|
||
return this.type;
|
||
},
|
||
|
||
putType: function (v) {
|
||
return this.type = v;
|
||
},
|
||
|
||
putShowSerName: function (v) {
|
||
return this.showSerName = v;
|
||
}, putShowCatName: function (v) {
|
||
return this.showCatName = v;
|
||
}, putShowVal: function (v) {
|
||
return this.showVal = v;
|
||
},
|
||
|
||
|
||
getShowSerName: function () {
|
||
return this.showSerName;
|
||
}, getShowCatName: function () {
|
||
return this.showCatName;
|
||
}, getShowVal: function () {
|
||
return this.showVal;
|
||
},
|
||
|
||
putSeparator: function (v) {
|
||
this.separator = v;
|
||
},
|
||
|
||
getSeparator: function () {
|
||
return this.separator;
|
||
},
|
||
|
||
putHorAxisProps: function (v) {
|
||
this.horAxisProps = v;
|
||
},
|
||
|
||
getHorAxisProps: function () {
|
||
return this.horAxisProps;
|
||
},
|
||
|
||
|
||
putVertAxisProps: function (v) {
|
||
this.vertAxisProps = v;
|
||
},
|
||
|
||
getVertAxisProps: function () {
|
||
return this.vertAxisProps;
|
||
},
|
||
|
||
|
||
|
||
checkSwapAxisProps: function(bHBar){
|
||
var hor_axis_settings = this.getHorAxisProps();
|
||
var vert_axis_settings = this.getVertAxisProps();
|
||
if(!bHBar){
|
||
if(hor_axis_settings){
|
||
if(hor_axis_settings.getAxisType() !== c_oAscAxisType.cat){
|
||
if(vert_axis_settings && vert_axis_settings.getAxisType() === c_oAscAxisType.cat){
|
||
this.putHorAxisProps(vert_axis_settings);
|
||
}
|
||
else{
|
||
var new_hor_axis_settings = new asc_CatAxisSettings();
|
||
new_hor_axis_settings.setDefault();
|
||
this.putHorAxisProps(new_hor_axis_settings);
|
||
}
|
||
}
|
||
}
|
||
else{
|
||
var new_hor_axis_settings = new asc_CatAxisSettings();
|
||
new_hor_axis_settings.setDefault();
|
||
this.putHorAxisProps(new_hor_axis_settings);
|
||
}
|
||
|
||
if(vert_axis_settings){
|
||
if(vert_axis_settings.getAxisType() !== c_oAscAxisType.val){
|
||
if(hor_axis_settings && hor_axis_settings.getAxisType() === c_oAscAxisType.val){
|
||
this.putVertAxisProps(hor_axis_settings);
|
||
}
|
||
else{
|
||
var new_vert_axis_settings = new asc_ValAxisSettings();
|
||
new_vert_axis_settings.setDefault();
|
||
this.putVertAxisProps(new_vert_axis_settings);
|
||
}
|
||
}
|
||
}
|
||
else{
|
||
var new_vert_axis_settings = new asc_ValAxisSettings();
|
||
new_vert_axis_settings.setDefault();
|
||
this.putVertAxisProps(new_vert_axis_settings);
|
||
}
|
||
}
|
||
else{
|
||
if(hor_axis_settings){
|
||
if(hor_axis_settings.getAxisType() !== c_oAscAxisType.val){
|
||
if(vert_axis_settings && vert_axis_settings.getAxisType() === c_oAscAxisType.val){
|
||
this.putHorAxisProps(vert_axis_settings);
|
||
}
|
||
else{
|
||
var new_hor_axis_settings = new asc_ValAxisSettings();
|
||
new_hor_axis_settings.setDefault();
|
||
this.putHorAxisProps(new_hor_axis_settings);
|
||
}
|
||
}
|
||
}
|
||
else{
|
||
var new_hor_axis_settings = new asc_ValAxisSettings();
|
||
new_hor_axis_settings.setDefault();
|
||
this.putHorAxisProps(new_hor_axis_settings);
|
||
}
|
||
|
||
if(vert_axis_settings){
|
||
if(vert_axis_settings.getAxisType() !== c_oAscAxisType.cat){
|
||
if(hor_axis_settings && hor_axis_settings.getAxisType() === c_oAscAxisType.cat){
|
||
this.putVertAxisProps(hor_axis_settings);
|
||
}
|
||
else{
|
||
var new_vert_axis_settings = new asc_CatAxisSettings();
|
||
new_vert_axis_settings.setDefault();
|
||
this.putVertAxisProps(new_vert_axis_settings);
|
||
}
|
||
}
|
||
}
|
||
else{
|
||
var new_vert_axis_settings = new asc_CatAxisSettings();
|
||
new_vert_axis_settings.setDefault();
|
||
this.putVertAxisProps(new_vert_axis_settings);
|
||
}
|
||
}
|
||
},
|
||
|
||
changeType: function (type) {
|
||
if(null === this.type){
|
||
this.putType(type);
|
||
return;
|
||
}
|
||
if (this.type === type) {
|
||
return;
|
||
}
|
||
|
||
var bSwapGridLines = ((this.type === c_oAscChartTypeSettings.hBarNormal ||
|
||
this.type === c_oAscChartTypeSettings.hBarStacked || this.type === c_oAscChartTypeSettings.hBarStackedPer
|
||
|| this.type === c_oAscChartTypeSettings.hBarNormal3d || this.type === c_oAscChartTypeSettings.hBarStacked3d
|
||
|| this.type === c_oAscChartTypeSettings.hBarStackedPer3d) !==
|
||
(type === c_oAscChartTypeSettings.hBarNormal || type === c_oAscChartTypeSettings.hBarStacked ||
|
||
type === c_oAscChartTypeSettings.hBarStackedPer || this.type === c_oAscChartTypeSettings.hBarNormal3d
|
||
|| this.type === c_oAscChartTypeSettings.hBarStacked3d || this.type === c_oAscChartTypeSettings.hBarStackedPer3d) );
|
||
var bSwapLines = ((
|
||
type === c_oAscChartTypeSettings.lineNormal || type === c_oAscChartTypeSettings.lineStacked ||
|
||
type === c_oAscChartTypeSettings.lineStackedPer || type === c_oAscChartTypeSettings.lineNormalMarker ||
|
||
type === c_oAscChartTypeSettings.lineStackedMarker || type === c_oAscChartTypeSettings.lineStackedPerMarker || type === c_oAscChartTypeSettings.line3d
|
||
|
||
) !== (
|
||
|
||
this.type === c_oAscChartTypeSettings.lineNormal || this.type === c_oAscChartTypeSettings.lineStacked ||
|
||
this.type === c_oAscChartTypeSettings.lineStackedPer ||
|
||
this.type === c_oAscChartTypeSettings.lineNormalMarker ||
|
||
this.type === c_oAscChartTypeSettings.lineStackedMarker ||
|
||
this.type === c_oAscChartTypeSettings.lineStackedPerMarker ||
|
||
this.type === c_oAscChartTypeSettings.line3d
|
||
));
|
||
var bSwapScatter = ((this.type === c_oAscChartTypeSettings.scatter) !==
|
||
(type === c_oAscChartTypeSettings.scatter));
|
||
|
||
|
||
var nOldType = this.type;
|
||
this.putType(type);
|
||
|
||
var hor_axis_settings = this.getHorAxisProps();
|
||
var vert_axis_settings = this.getVertAxisProps();
|
||
var new_hor_axis_settings, new_vert_axis_settings, oTempVal;
|
||
if (bSwapGridLines) {
|
||
oTempVal = hor_axis_settings;
|
||
hor_axis_settings = vert_axis_settings;
|
||
vert_axis_settings = oTempVal;
|
||
this.putHorAxisProps(hor_axis_settings);
|
||
this.putVertAxisProps(vert_axis_settings);
|
||
|
||
oTempVal = this.horGridLines;
|
||
this.putHorGridLines(this.vertGridLines);
|
||
this.putVertGridLines(oTempVal);
|
||
}
|
||
switch (type) {
|
||
case c_oAscChartTypeSettings.pie :
|
||
case c_oAscChartTypeSettings.pie3d :
|
||
case c_oAscChartTypeSettings.doughnut : {
|
||
this.putHorAxisProps(null);
|
||
this.putVertAxisProps(null);
|
||
this.putHorAxisLabel(null);
|
||
this.putVertAxisLabel(null);
|
||
this.putShowHorAxis(null);
|
||
this.putShowVerAxis(null);
|
||
break;
|
||
}
|
||
case c_oAscChartTypeSettings.barNormal :
|
||
case c_oAscChartTypeSettings.barStacked :
|
||
case c_oAscChartTypeSettings.barStackedPer :
|
||
case c_oAscChartTypeSettings.barNormal3d :
|
||
case c_oAscChartTypeSettings.barStacked3d :
|
||
case c_oAscChartTypeSettings.barStackedPer3d :
|
||
case c_oAscChartTypeSettings.barNormal3dPerspective :
|
||
case c_oAscChartTypeSettings.lineNormal :
|
||
case c_oAscChartTypeSettings.lineStacked :
|
||
case c_oAscChartTypeSettings.lineStackedPer :
|
||
case c_oAscChartTypeSettings.lineNormalMarker :
|
||
case c_oAscChartTypeSettings.lineStackedMarker :
|
||
case c_oAscChartTypeSettings.lineStackedPerMarker:
|
||
case c_oAscChartTypeSettings.line3d:
|
||
case c_oAscChartTypeSettings.areaNormal :
|
||
case c_oAscChartTypeSettings.areaStacked :
|
||
case c_oAscChartTypeSettings.areaStackedPer :
|
||
case c_oAscChartTypeSettings.stock :
|
||
case c_oAscChartTypeSettings.surfaceNormal :
|
||
case c_oAscChartTypeSettings.surfaceWireframe :
|
||
case c_oAscChartTypeSettings.contourNormal :
|
||
case c_oAscChartTypeSettings.contourWireframe :
|
||
{
|
||
|
||
|
||
|
||
this.checkSwapAxisProps(false);
|
||
if (bSwapLines) {
|
||
this.putShowMarker(false);
|
||
this.putSmooth(null);
|
||
this.putLine(true);
|
||
}
|
||
if (nOldType === c_oAscChartTypeSettings.hBarNormal || nOldType === c_oAscChartTypeSettings.hBarStacked ||
|
||
nOldType === c_oAscChartTypeSettings.hBarStackedPer || nOldType === c_oAscChartTypeSettings.hBarNormal3d ||
|
||
nOldType === c_oAscChartTypeSettings.hBarStacked3d || nOldType === c_oAscChartTypeSettings.hBarStackedPer3d) {
|
||
var bTemp = this.showHorAxis;
|
||
this.putShowHorAxis(this.showVerAxis);
|
||
this.putShowVerAxis(bTemp);
|
||
} else if (nOldType === c_oAscChartTypeSettings.pie || nOldType === c_oAscChartTypeSettings.pie3d || nOldType === c_oAscChartTypeSettings.doughnut) {
|
||
this.putShowHorAxis(true);
|
||
this.putShowVerAxis(true);
|
||
}
|
||
var oHorAxisProps = this.getHorAxisProps();
|
||
if(oHorAxisProps && oHorAxisProps.getAxisType() === c_oAscAxisType.cat){
|
||
if(type === c_oAscChartTypeSettings.areaNormal ||
|
||
type === c_oAscChartTypeSettings.areaStacked ||
|
||
type === c_oAscChartTypeSettings.areaStackedPer||
|
||
type === c_oAscChartTypeSettings.stock ||
|
||
type === c_oAscChartTypeSettings.surfaceNormal ||
|
||
type === c_oAscChartTypeSettings.surfaceWireframe ||
|
||
type === c_oAscChartTypeSettings.contourNormal ||
|
||
type === c_oAscChartTypeSettings.contourWireframe){
|
||
oHorAxisProps.putLabelsPosition(Asc.c_oAscLabelsPosition.byDivisions);
|
||
}
|
||
else{
|
||
oHorAxisProps.putLabelsPosition(Asc.c_oAscLabelsPosition.betweenDivisions);
|
||
}
|
||
}
|
||
break;
|
||
}
|
||
case c_oAscChartTypeSettings.hBarNormal :
|
||
case c_oAscChartTypeSettings.hBarStacked :
|
||
case c_oAscChartTypeSettings.hBarStackedPer :
|
||
case c_oAscChartTypeSettings.hBarNormal3d :
|
||
case c_oAscChartTypeSettings.hBarStacked3d :
|
||
case c_oAscChartTypeSettings.hBarStackedPer3d :
|
||
{
|
||
this.checkSwapAxisProps(true);
|
||
if (nOldType === c_oAscChartTypeSettings.pie || nOldType === c_oAscChartTypeSettings.pie3d || nOldType === c_oAscChartTypeSettings.doughnut) {
|
||
this.putShowHorAxis(true);
|
||
this.putShowVerAxis(true);
|
||
} else if (nOldType !== c_oAscChartTypeSettings.hBarNormal &&
|
||
nOldType !== c_oAscChartTypeSettings.hBarStacked && nOldType !== c_oAscChartTypeSettings.hBarStackedPer || nOldType !== c_oAscChartTypeSettings.hBarNormal3d ||
|
||
nOldType !== c_oAscChartTypeSettings.hBarStacked3d || nOldType !== c_oAscChartTypeSettings.hBarStackedPer3d) {
|
||
var bTemp = this.showHorAxis;
|
||
this.putShowHorAxis(this.showVerAxis);
|
||
this.putShowVerAxis(bTemp);
|
||
}
|
||
|
||
var oVertAxisProps = this.getVertAxisProps();
|
||
if(oVertAxisProps && oVertAxisProps.getAxisType() === c_oAscAxisType.cat){
|
||
oVertAxisProps.putLabelsPosition(Asc.c_oAscLabelsPosition.betweenDivisions);
|
||
}
|
||
//this.putHorGridLines(c_oAscGridLinesSettings.none);
|
||
//this.putVertGridLines(c_oAscGridLinesSettings.major);
|
||
break;
|
||
}
|
||
case c_oAscChartTypeSettings.scatter :
|
||
case c_oAscChartTypeSettings.scatterLine :
|
||
case c_oAscChartTypeSettings.scatterLineMarker :
|
||
case c_oAscChartTypeSettings.scatterMarker :
|
||
case c_oAscChartTypeSettings.scatterNone :
|
||
case c_oAscChartTypeSettings.scatterSmooth :
|
||
case c_oAscChartTypeSettings.scatterSmoothMarker : {
|
||
if (!hor_axis_settings || hor_axis_settings.getAxisType() !== c_oAscAxisType.val) {
|
||
new_hor_axis_settings = new asc_ValAxisSettings();
|
||
new_hor_axis_settings.setDefault();
|
||
this.putHorAxisProps(new_hor_axis_settings);
|
||
}
|
||
if (!vert_axis_settings || vert_axis_settings.getAxisType() !== c_oAscAxisType.val) {
|
||
new_vert_axis_settings = new asc_ValAxisSettings();
|
||
new_vert_axis_settings.setDefault();
|
||
this.putVertAxisProps(new_vert_axis_settings);
|
||
}
|
||
//this.putHorGridLines(c_oAscGridLinesSettings.major);
|
||
//this.putVertGridLines(c_oAscGridLinesSettings.major);
|
||
if (bSwapScatter) {
|
||
this.putShowMarker(true);
|
||
this.putSmooth(null);
|
||
this.putLine(false);
|
||
}
|
||
if (nOldType === c_oAscChartTypeSettings.hBarNormal || nOldType === c_oAscChartTypeSettings.hBarStacked ||
|
||
nOldType === c_oAscChartTypeSettings.hBarStackedPer || nOldType === c_oAscChartTypeSettings.hBarNormal3d ||
|
||
nOldType === c_oAscChartTypeSettings.hBarStacked3d || nOldType === c_oAscChartTypeSettings.hBarStackedPer3d) {
|
||
var bTemp = this.showHorAxis;
|
||
this.putShowHorAxis(this.showVerAxis);
|
||
this.putShowVerAxis(bTemp);
|
||
} else if (nOldType === c_oAscChartTypeSettings.pie || nOldType === c_oAscChartTypeSettings.pie3d || nOldType === c_oAscChartTypeSettings.doughnut) {
|
||
this.putShowHorAxis(true);
|
||
this.putShowVerAxis(true);
|
||
}
|
||
break;
|
||
}
|
||
}
|
||
},
|
||
|
||
putShowHorAxis: function (v) {
|
||
this.showHorAxis = v;
|
||
}, getShowHorAxis: function () {
|
||
return this.showHorAxis;
|
||
},
|
||
|
||
putShowVerAxis: function (v) {
|
||
this.showVerAxis = v;
|
||
}, getShowVerAxis: function () {
|
||
return this.showVerAxis;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CRect(x, y, width, height) {
|
||
// private members
|
||
this._x = x;
|
||
this._y = y;
|
||
this._width = width;
|
||
this._height = height;
|
||
}
|
||
|
||
asc_CRect.prototype = {
|
||
asc_getX: function () {
|
||
return this._x;
|
||
}, asc_getY: function () {
|
||
return this._y;
|
||
}, asc_getWidth: function () {
|
||
return this._width;
|
||
}, asc_getHeight: function () {
|
||
return this._height;
|
||
}
|
||
};
|
||
|
||
/**
|
||
* Класс CColor для работы с цветами
|
||
* -----------------------------------------------------------------------------
|
||
*
|
||
* @constructor
|
||
* @memberOf window
|
||
*/
|
||
|
||
function CColor(r, g, b, a) {
|
||
this.r = (undefined == r) ? 0 : r;
|
||
this.g = (undefined == g) ? 0 : g;
|
||
this.b = (undefined == b) ? 0 : b;
|
||
this.a = (undefined == a) ? 1 : a;
|
||
}
|
||
|
||
CColor.prototype = {
|
||
constructor: CColor, getR: function () {
|
||
return this.r
|
||
}, get_r: function () {
|
||
return this.r
|
||
}, put_r: function (v) {
|
||
this.r = v;
|
||
this.hex = undefined;
|
||
}, getG: function () {
|
||
return this.g
|
||
}, get_g: function () {
|
||
return this.g;
|
||
}, put_g: function (v) {
|
||
this.g = v;
|
||
this.hex = undefined;
|
||
}, getB: function () {
|
||
return this.b
|
||
}, get_b: function () {
|
||
return this.b;
|
||
}, put_b: function (v) {
|
||
this.b = v;
|
||
this.hex = undefined;
|
||
}, getA: function () {
|
||
return this.a
|
||
}, get_hex: function () {
|
||
if (!this.hex) {
|
||
var r = this.r.toString(16);
|
||
var g = this.g.toString(16);
|
||
var b = this.b.toString(16);
|
||
this.hex = ( r.length == 1 ? "0" + r : r) + ( g.length == 1 ? "0" + g : g) + ( b.length == 1 ? "0" + b : b);
|
||
}
|
||
return this.hex;
|
||
},
|
||
|
||
Compare: function (Color) {
|
||
return (this.r === Color.r && this.g === Color.g && this.b === Color.b && this.a === Color.a);
|
||
}, Copy: function () {
|
||
return new CColor(this.r, this.g, this.b, this.a);
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CColor() {
|
||
this.type = c_oAscColor.COLOR_TYPE_SRGB;
|
||
this.value = null;
|
||
this.r = 0;
|
||
this.g = 0;
|
||
this.b = 0;
|
||
this.a = 255;
|
||
|
||
this.Auto = false;
|
||
|
||
this.Mods = [];
|
||
this.ColorSchemeId = -1;
|
||
|
||
if (1 === arguments.length) {
|
||
this.r = arguments[0].r;
|
||
this.g = arguments[0].g;
|
||
this.b = arguments[0].b;
|
||
} else {
|
||
if (3 <= arguments.length) {
|
||
this.r = arguments[0];
|
||
this.g = arguments[1];
|
||
this.b = arguments[2];
|
||
}
|
||
if (4 === arguments.length) {
|
||
this.a = arguments[3];
|
||
}
|
||
}
|
||
}
|
||
|
||
asc_CColor.prototype = {
|
||
constructor: asc_CColor, asc_getR: function () {
|
||
return this.r
|
||
}, asc_putR: function (v) {
|
||
this.r = v;
|
||
this.hex = undefined;
|
||
}, asc_getG: function () {
|
||
return this.g;
|
||
}, asc_putG: function (v) {
|
||
this.g = v;
|
||
this.hex = undefined;
|
||
}, asc_getB: function () {
|
||
return this.b;
|
||
}, asc_putB: function (v) {
|
||
this.b = v;
|
||
this.hex = undefined;
|
||
}, asc_getA: function () {
|
||
return this.a;
|
||
}, asc_putA: function (v) {
|
||
this.a = v;
|
||
this.hex = undefined;
|
||
}, asc_getType: function () {
|
||
return this.type;
|
||
}, asc_putType: function (v) {
|
||
this.type = v;
|
||
}, asc_getValue: function () {
|
||
return this.value;
|
||
}, asc_putValue: function (v) {
|
||
this.value = v;
|
||
}, asc_getHex: function () {
|
||
if (!this.hex) {
|
||
var a = this.a.toString(16);
|
||
var r = this.r.toString(16);
|
||
var g = this.g.toString(16);
|
||
var b = this.b.toString(16);
|
||
this.hex = ( a.length == 1 ? "0" + a : a) + ( r.length == 1 ? "0" + r : r) + ( g.length == 1 ? "0" + g : g) +
|
||
( b.length == 1 ? "0" + b : b);
|
||
}
|
||
return this.hex;
|
||
}, asc_getColor: function () {
|
||
return new CColor(this.r, this.g, this.b);
|
||
}, asc_putAuto: function (v) {
|
||
this.Auto = v;
|
||
}, asc_getAuto: function () {
|
||
return this.Auto;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CTextBorder(obj) {
|
||
if (obj) {
|
||
if (obj.Color instanceof asc_CColor) {
|
||
this.Color = obj.Color;
|
||
} else {
|
||
this.Color =
|
||
(undefined != obj.Color && null != obj.Color) ? CreateAscColorCustom(obj.Color.r, obj.Color.g, obj.Color.b) :
|
||
null;
|
||
}
|
||
this.Size = (undefined != obj.Size) ? obj.Size : null;
|
||
this.Value = (undefined != obj.Value) ? obj.Value : null;
|
||
this.Space = (undefined != obj.Space) ? obj.Space : null;
|
||
} else {
|
||
this.Color = CreateAscColorCustom(0, 0, 0);
|
||
this.Size = 0.5 * window["AscCommonWord"].g_dKoef_pt_to_mm;
|
||
this.Value = window["AscCommonWord"].border_Single;
|
||
this.Space = 0;
|
||
}
|
||
}
|
||
|
||
asc_CTextBorder.prototype.asc_getColor = function () {
|
||
return this.Color;
|
||
};
|
||
asc_CTextBorder.prototype.asc_putColor = function (v) {
|
||
this.Color = v;
|
||
};
|
||
asc_CTextBorder.prototype.asc_getSize = function () {
|
||
return this.Size;
|
||
};
|
||
asc_CTextBorder.prototype.asc_putSize = function (v) {
|
||
this.Size = v;
|
||
};
|
||
asc_CTextBorder.prototype.asc_getValue = function () {
|
||
return this.Value;
|
||
};
|
||
asc_CTextBorder.prototype.asc_putValue = function (v) {
|
||
this.Value = v;
|
||
};
|
||
asc_CTextBorder.prototype.asc_getSpace = function () {
|
||
return this.Space;
|
||
};
|
||
asc_CTextBorder.prototype.asc_putSpace = function (v) {
|
||
this.Space = v;
|
||
};
|
||
asc_CTextBorder.prototype.asc_getForSelectedCells = function () {
|
||
return this.ForSelectedCells;
|
||
};
|
||
asc_CTextBorder.prototype.asc_putForSelectedCells = function (v) {
|
||
this.ForSelectedCells = v;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphBorders(obj) {
|
||
|
||
if (obj) {
|
||
this.Left = (undefined != obj.Left && null != obj.Left) ? new asc_CTextBorder(obj.Left) : null;
|
||
this.Top = (undefined != obj.Top && null != obj.Top) ? new asc_CTextBorder(obj.Top) : null;
|
||
this.Right = (undefined != obj.Right && null != obj.Right) ? new asc_CTextBorder(obj.Right) : null;
|
||
this.Bottom = (undefined != obj.Bottom && null != obj.Bottom) ? new asc_CTextBorder(obj.Bottom) : null;
|
||
this.Between = (undefined != obj.Between && null != obj.Between) ? new asc_CTextBorder(obj.Between) : null;
|
||
} else {
|
||
this.Left = null;
|
||
this.Top = null;
|
||
this.Right = null;
|
||
this.Bottom = null;
|
||
this.Between = null;
|
||
}
|
||
}
|
||
|
||
asc_CParagraphBorders.prototype = {
|
||
asc_getLeft: function () {
|
||
return this.Left;
|
||
}, asc_putLeft: function (v) {
|
||
this.Left = (v) ? new asc_CTextBorder(v) : null;
|
||
}, asc_getTop: function () {
|
||
return this.Top;
|
||
}, asc_putTop: function (v) {
|
||
this.Top = (v) ? new asc_CTextBorder(v) : null;
|
||
}, asc_getRight: function () {
|
||
return this.Right;
|
||
}, asc_putRight: function (v) {
|
||
this.Right = (v) ? new asc_CTextBorder(v) : null;
|
||
}, asc_getBottom: function () {
|
||
return this.Bottom;
|
||
}, asc_putBottom: function (v) {
|
||
this.Bottom = (v) ? new asc_CTextBorder(v) : null;
|
||
}, asc_getBetween: function () {
|
||
return this.Between;
|
||
}, asc_putBetween: function (v) {
|
||
this.Between = (v) ? new asc_CTextBorder(v) : null;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CListType(obj) {
|
||
|
||
if (obj) {
|
||
this.Type = (undefined == obj.Type) ? null : obj.Type;
|
||
this.SubType = (undefined == obj.Type) ? null : obj.SubType;
|
||
} else {
|
||
this.Type = null;
|
||
this.SubType = null;
|
||
}
|
||
}
|
||
|
||
asc_CListType.prototype.asc_getListType = function () {
|
||
return this.Type;
|
||
};
|
||
asc_CListType.prototype.asc_getListSubType = function () {
|
||
return this.SubType;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CTextFontFamily(obj) {
|
||
|
||
if (obj) {
|
||
this.Name = (undefined != obj.Name) ? obj.Name : null; // "Times New Roman"
|
||
this.Index = (undefined != obj.Index) ? obj.Index : null; // -1
|
||
} else {
|
||
this.Name = "Times New Roman";
|
||
this.Index = -1;
|
||
}
|
||
}
|
||
|
||
asc_CTextFontFamily.prototype = {
|
||
asc_getName: function () {
|
||
return this.Name;
|
||
}, asc_getIndex: function () {
|
||
return this.Index;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphTab(Pos, Value, Leader)
|
||
{
|
||
this.Pos = Pos;
|
||
this.Value = Value;
|
||
this.Leader = Leader;
|
||
}
|
||
asc_CParagraphTab.prototype.asc_getValue = function()
|
||
{
|
||
return this.Value;
|
||
};
|
||
asc_CParagraphTab.prototype.asc_putValue = function(v)
|
||
{
|
||
this.Value = v;
|
||
};
|
||
asc_CParagraphTab.prototype.asc_getPos = function()
|
||
{
|
||
return this.Pos;
|
||
};
|
||
asc_CParagraphTab.prototype.asc_putPos = function(v)
|
||
{
|
||
this.Pos = v;
|
||
};
|
||
asc_CParagraphTab.prototype.asc_getLeader = function()
|
||
{
|
||
if (Asc.c_oAscTabLeader.Heavy === this.Leader)
|
||
return Asc.c_oAscTabLeader.Underscore;
|
||
|
||
return this.Leader;
|
||
};
|
||
asc_CParagraphTab.prototype.asc_putLeader = function(v)
|
||
{
|
||
this.Leader = v;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphTabs(obj) {
|
||
this.Tabs = [];
|
||
|
||
if (undefined != obj) {
|
||
var Count = obj.Tabs.length;
|
||
for (var Index = 0; Index < Count; Index++) {
|
||
this.Tabs.push(new asc_CParagraphTab(obj.Tabs[Index].Pos, obj.Tabs[Index].Value, obj.Tabs[Index].Leader));
|
||
}
|
||
}
|
||
}
|
||
|
||
asc_CParagraphTabs.prototype = {
|
||
asc_getCount: function () {
|
||
return this.Tabs.length;
|
||
}, asc_getTab: function (Index) {
|
||
return this.Tabs[Index];
|
||
}, asc_addTab: function (Tab) {
|
||
this.Tabs.push(Tab)
|
||
}, asc_clear: function () {
|
||
this.Tabs.length = 0;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphShd(obj) {
|
||
|
||
if (obj) {
|
||
this.Value = (undefined != obj.Value) ? obj.Value : null;
|
||
if (obj.Unifill && obj.Unifill.fill && obj.Unifill.fill.type === c_oAscFill.FILL_TYPE_SOLID &&
|
||
obj.Unifill.fill.color) {
|
||
this.Color = CreateAscColor(obj.Unifill.fill.color);
|
||
} else {
|
||
this.Color =
|
||
(undefined != obj.Color && null != obj.Color) ? CreateAscColorCustom(obj.Color.r, obj.Color.g, obj.Color.b) :
|
||
null;
|
||
}
|
||
} else {
|
||
this.Value = Asc.c_oAscShdNil;
|
||
this.Color = CreateAscColorCustom(255, 255, 255);
|
||
}
|
||
}
|
||
|
||
asc_CParagraphShd.prototype = {
|
||
asc_getValue: function () {
|
||
return this.Value;
|
||
}, asc_putValue: function (v) {
|
||
this.Value = v;
|
||
}, asc_getColor: function () {
|
||
return this.Color;
|
||
}, asc_putColor: function (v) {
|
||
this.Color = (v) ? v : null;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphFrame(obj) {
|
||
if (obj) {
|
||
this.FromDropCapMenu = false;
|
||
|
||
this.DropCap = obj.DropCap;
|
||
this.H = obj.H;
|
||
this.HAnchor = obj.HAnchor;
|
||
this.HRule = obj.HRule;
|
||
this.HSpace = obj.HSpace;
|
||
this.Lines = obj.Lines;
|
||
this.VAnchor = obj.VAnchor;
|
||
this.VSpace = obj.VSpace;
|
||
this.W = obj.W;
|
||
this.Wrap = obj.Wrap;
|
||
this.X = obj.X;
|
||
this.XAlign = obj.XAlign;
|
||
this.Y = obj.Y;
|
||
this.YAlign = obj.YAlign;
|
||
this.Brd = (undefined != obj.Brd && null != obj.Brd) ? new asc_CParagraphBorders(obj.Brd) : null;
|
||
this.Shd = (undefined != obj.Shd && null != obj.Shd) ? new asc_CParagraphShd(obj.Shd) : null;
|
||
this.FontFamily =
|
||
(undefined != obj.FontFamily && null != obj.FontFamily) ? new asc_CTextFontFamily(obj.FontFamily) : null;
|
||
} else {
|
||
this.FromDropCapMenu = false;
|
||
|
||
this.DropCap = undefined;
|
||
this.H = undefined;
|
||
this.HAnchor = undefined;
|
||
this.HRule = undefined;
|
||
this.HSpace = undefined;
|
||
this.Lines = undefined;
|
||
this.VAnchor = undefined;
|
||
this.VSpace = undefined;
|
||
this.W = undefined;
|
||
this.Wrap = undefined;
|
||
this.X = undefined;
|
||
this.XAlign = undefined;
|
||
this.Y = undefined;
|
||
this.YAlign = undefined;
|
||
this.Shd = null;
|
||
this.Brd = null;
|
||
this.FontFamily = null;
|
||
}
|
||
}
|
||
|
||
asc_CParagraphFrame.prototype.asc_getDropCap = function () {
|
||
return this.DropCap;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putDropCap = function (v) {
|
||
this.DropCap = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getH = function () {
|
||
return this.H;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putH = function (v) {
|
||
this.H = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getHAnchor = function () {
|
||
return this.HAnchor;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putHAnchor = function (v) {
|
||
this.HAnchor = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getHRule = function () {
|
||
return this.HRule;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putHRule = function (v) {
|
||
this.HRule = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getHSpace = function () {
|
||
return this.HSpace;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putHSpace = function (v) {
|
||
this.HSpace = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getLines = function () {
|
||
return this.Lines;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putLines = function (v) {
|
||
this.Lines = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getVAnchor = function () {
|
||
return this.VAnchor;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putVAnchor = function (v) {
|
||
this.VAnchor = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getVSpace = function () {
|
||
return this.VSpace;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putVSpace = function (v) {
|
||
this.VSpace = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getW = function () {
|
||
return this.W;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putW = function (v) {
|
||
this.W = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getWrap = function () {
|
||
return this.Wrap;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putWrap = function (v) {
|
||
this.Wrap = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getX = function () {
|
||
return this.X;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putX = function (v) {
|
||
this.X = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getXAlign = function () {
|
||
return this.XAlign;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putXAlign = function (v) {
|
||
this.XAlign = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getY = function () {
|
||
return this.Y;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putY = function (v) {
|
||
this.Y = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getYAlign = function () {
|
||
return this.YAlign;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putYAlign = function (v) {
|
||
this.YAlign = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getBorders = function () {
|
||
return this.Brd;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putBorders = function (v) {
|
||
this.Brd = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getShade = function () {
|
||
return this.Shd;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putShade = function (v) {
|
||
this.Shd = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_getFontFamily = function () {
|
||
return this.FontFamily;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putFontFamily = function (v) {
|
||
this.FontFamily = v;
|
||
};
|
||
asc_CParagraphFrame.prototype.asc_putFromDropCapMenu = function (v) {
|
||
this.FromDropCapMenu = v;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphSpacing(obj) {
|
||
|
||
if (obj) {
|
||
this.Line = (undefined != obj.Line ) ? obj.Line : null; // Расстояние между строками внутри абзаца
|
||
this.LineRule = (undefined != obj.LineRule) ? obj.LineRule : null; // Тип расстрояния между строками
|
||
this.Before = (undefined != obj.Before ) ? obj.Before : null; // Дополнительное расстояние до абзаца
|
||
this.After = (undefined != obj.After ) ? obj.After : null; // Дополнительное расстояние после абзаца
|
||
} else {
|
||
this.Line = undefined; // Расстояние между строками внутри абзаца
|
||
this.LineRule = undefined; // Тип расстрояния между строками
|
||
this.Before = undefined; // Дополнительное расстояние до абзаца
|
||
this.After = undefined; // Дополнительное расстояние после абзаца
|
||
}
|
||
}
|
||
|
||
asc_CParagraphSpacing.prototype = {
|
||
asc_getLine: function () {
|
||
return this.Line;
|
||
}, asc_getLineRule: function () {
|
||
return this.LineRule;
|
||
}, asc_getBefore: function () {
|
||
return this.Before;
|
||
}, asc_getAfter: function () {
|
||
return this.After;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphInd(obj) {
|
||
if (obj) {
|
||
this.Left = (undefined != obj.Left ) ? obj.Left : null; // Левый отступ
|
||
this.Right = (undefined != obj.Right ) ? obj.Right : null; // Правый отступ
|
||
this.FirstLine = (undefined != obj.FirstLine) ? obj.FirstLine : null; // Первая строка
|
||
} else {
|
||
this.Left = undefined; // Левый отступ
|
||
this.Right = undefined; // Правый отступ
|
||
this.FirstLine = undefined; // Первая строка
|
||
}
|
||
}
|
||
|
||
asc_CParagraphInd.prototype = {
|
||
asc_getLeft: function () {
|
||
return this.Left;
|
||
}, asc_putLeft: function (v) {
|
||
this.Left = v;
|
||
}, asc_getRight: function () {
|
||
return this.Right;
|
||
}, asc_putRight: function (v) {
|
||
this.Right = v;
|
||
}, asc_getFirstLine: function () {
|
||
return this.FirstLine;
|
||
}, asc_putFirstLine: function (v) {
|
||
this.FirstLine = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CParagraphProperty(obj) {
|
||
|
||
if (obj) {
|
||
this.ContextualSpacing = (undefined != obj.ContextualSpacing) ? obj.ContextualSpacing : null;
|
||
this.Ind = (undefined != obj.Ind && null != obj.Ind) ? new asc_CParagraphInd(obj.Ind) : null;
|
||
this.KeepLines = (undefined != obj.KeepLines) ? obj.KeepLines : null;
|
||
this.KeepNext = (undefined != obj.KeepNext) ? obj.KeepNext : undefined;
|
||
this.WidowControl = (undefined != obj.WidowControl ? obj.WidowControl : undefined );
|
||
this.PageBreakBefore = (undefined != obj.PageBreakBefore) ? obj.PageBreakBefore : null;
|
||
this.Spacing = (undefined != obj.Spacing && null != obj.Spacing) ? new asc_CParagraphSpacing(obj.Spacing) : null;
|
||
this.Brd = (undefined != obj.Brd && null != obj.Brd) ? new asc_CParagraphBorders(obj.Brd) : null;
|
||
this.Shd = (undefined != obj.Shd && null != obj.Shd) ? new asc_CParagraphShd(obj.Shd) : null;
|
||
this.Tabs = (undefined != obj.Tabs) ? new asc_CParagraphTabs(obj.Tabs) : undefined;
|
||
this.DefaultTab = obj.DefaultTab != null ? obj.DefaultTab : window["AscCommonWord"].Default_Tab_Stop;
|
||
this.Locked = (undefined != obj.Locked && null != obj.Locked ) ? obj.Locked : false;
|
||
this.CanAddTable = (undefined != obj.CanAddTable ) ? obj.CanAddTable : true;
|
||
|
||
this.FramePr = (undefined != obj.FramePr ) ? new asc_CParagraphFrame(obj.FramePr) : undefined;
|
||
this.CanAddDropCap = (undefined != obj.CanAddDropCap ) ? obj.CanAddDropCap : false;
|
||
this.CanAddImage = (undefined != obj.CanAddImage ) ? obj.CanAddImage : false;
|
||
|
||
this.Subscript = (undefined != obj.Subscript) ? obj.Subscript : undefined;
|
||
this.Superscript = (undefined != obj.Superscript) ? obj.Superscript : undefined;
|
||
this.SmallCaps = (undefined != obj.SmallCaps) ? obj.SmallCaps : undefined;
|
||
this.AllCaps = (undefined != obj.AllCaps) ? obj.AllCaps : undefined;
|
||
this.Strikeout = (undefined != obj.Strikeout) ? obj.Strikeout : undefined;
|
||
this.DStrikeout = (undefined != obj.DStrikeout) ? obj.DStrikeout : undefined;
|
||
this.TextSpacing = (undefined != obj.TextSpacing) ? obj.TextSpacing : undefined;
|
||
this.Position = (undefined != obj.Position) ? obj.Position : undefined;
|
||
} else {
|
||
//ContextualSpacing : false, // Удалять ли интервал между параграфами одинакового стиля
|
||
//
|
||
// Ind :
|
||
// {
|
||
// Left : 0, // Левый отступ
|
||
// Right : 0, // Правый отступ
|
||
// FirstLine : 0 // Первая строка
|
||
// },
|
||
//
|
||
// Jc : align_Left, // Прилегание параграфа
|
||
//
|
||
// KeepLines : false, // переносить параграф на новую страницу,
|
||
// // если на текущей он целиком не убирается
|
||
// KeepNext : false, // переносить параграф вместе со следующим параграфом
|
||
//
|
||
// PageBreakBefore : false, // начинать параграф с новой страницы
|
||
|
||
this.ContextualSpacing = undefined;
|
||
this.Ind = new asc_CParagraphInd();
|
||
this.KeepLines = undefined;
|
||
this.KeepNext = undefined;
|
||
this.WidowControl = undefined;
|
||
this.PageBreakBefore = undefined;
|
||
this.Spacing = new asc_CParagraphSpacing();
|
||
this.Brd = undefined;
|
||
this.Shd = undefined;
|
||
this.Locked = false;
|
||
this.CanAddTable = true;
|
||
this.Tabs = undefined;
|
||
|
||
this.Subscript = undefined;
|
||
this.Superscript = undefined;
|
||
this.SmallCaps = undefined;
|
||
this.AllCaps = undefined;
|
||
this.Strikeout = undefined;
|
||
this.DStrikeout = undefined;
|
||
this.TextSpacing = undefined;
|
||
this.Position = undefined;
|
||
}
|
||
}
|
||
|
||
asc_CParagraphProperty.prototype = {
|
||
|
||
asc_getContextualSpacing: function () {
|
||
return this.ContextualSpacing;
|
||
}, asc_putContextualSpacing: function (v) {
|
||
this.ContextualSpacing = v;
|
||
}, asc_getInd: function () {
|
||
return this.Ind;
|
||
}, asc_putInd: function (v) {
|
||
this.Ind = v;
|
||
}, asc_getKeepLines: function () {
|
||
return this.KeepLines;
|
||
}, asc_putKeepLines: function (v) {
|
||
this.KeepLines = v;
|
||
}, asc_getKeepNext: function () {
|
||
return this.KeepNext;
|
||
}, asc_putKeepNext: function (v) {
|
||
this.KeepNext = v;
|
||
}, asc_getPageBreakBefore: function () {
|
||
return this.PageBreakBefore;
|
||
}, asc_putPageBreakBefore: function (v) {
|
||
this.PageBreakBefore = v;
|
||
}, asc_getWidowControl: function () {
|
||
return this.WidowControl;
|
||
}, asc_putWidowControl: function (v) {
|
||
this.WidowControl = v;
|
||
}, asc_getSpacing: function () {
|
||
return this.Spacing;
|
||
}, asc_putSpacing: function (v) {
|
||
this.Spacing = v;
|
||
}, asc_getBorders: function () {
|
||
return this.Brd;
|
||
}, asc_putBorders: function (v) {
|
||
this.Brd = v;
|
||
}, asc_getShade: function () {
|
||
return this.Shd;
|
||
}, asc_putShade: function (v) {
|
||
this.Shd = v;
|
||
}, asc_getLocked: function () {
|
||
return this.Locked;
|
||
}, asc_getCanAddTable: function () {
|
||
return this.CanAddTable;
|
||
}, asc_getSubscript: function () {
|
||
return this.Subscript;
|
||
}, asc_putSubscript: function (v) {
|
||
this.Subscript = v;
|
||
}, asc_getSuperscript: function () {
|
||
return this.Superscript;
|
||
}, asc_putSuperscript: function (v) {
|
||
this.Superscript = v;
|
||
}, asc_getSmallCaps: function () {
|
||
return this.SmallCaps;
|
||
}, asc_putSmallCaps: function (v) {
|
||
this.SmallCaps = v;
|
||
}, asc_getAllCaps: function () {
|
||
return this.AllCaps;
|
||
}, asc_putAllCaps: function (v) {
|
||
this.AllCaps = v;
|
||
}, asc_getStrikeout: function () {
|
||
return this.Strikeout;
|
||
}, asc_putStrikeout: function (v) {
|
||
this.Strikeout = v;
|
||
}, asc_getDStrikeout: function () {
|
||
return this.DStrikeout;
|
||
}, asc_putDStrikeout: function (v) {
|
||
this.DStrikeout = v;
|
||
}, asc_getTextSpacing: function () {
|
||
return this.TextSpacing;
|
||
}, asc_putTextSpacing: function (v) {
|
||
this.TextSpacing = v;
|
||
}, asc_getPosition: function () {
|
||
return this.Position;
|
||
}, asc_putPosition: function (v) {
|
||
this.Position = v;
|
||
}, asc_getTabs: function () {
|
||
return this.Tabs;
|
||
}, asc_putTabs: function (v) {
|
||
this.Tabs = v;
|
||
}, asc_getDefaultTab: function () {
|
||
return this.DefaultTab;
|
||
}, asc_putDefaultTab: function (v) {
|
||
this.DefaultTab = v;
|
||
},
|
||
|
||
asc_getFramePr: function () {
|
||
return this.FramePr;
|
||
}, asc_putFramePr: function (v) {
|
||
this.FramePr = v;
|
||
}, asc_getCanAddDropCap: function () {
|
||
return this.CanAddDropCap;
|
||
}, asc_getCanAddImage: function () {
|
||
return this.CanAddImage;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CTexture() {
|
||
this.Id = 0;
|
||
this.Image = "";
|
||
}
|
||
|
||
asc_CTexture.prototype = {
|
||
asc_getId: function () {
|
||
return this.Id;
|
||
}, asc_getImage: function () {
|
||
return this.Image;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CImageSize(width, height, isCorrect) {
|
||
this.Width = (undefined == width) ? 0.0 : width;
|
||
this.Height = (undefined == height) ? 0.0 : height;
|
||
this.IsCorrect = isCorrect;
|
||
}
|
||
|
||
asc_CImageSize.prototype = {
|
||
asc_getImageWidth: function () {
|
||
return this.Width;
|
||
}, asc_getImageHeight: function () {
|
||
return this.Height;
|
||
}, asc_getIsCorrect: function () {
|
||
return this.IsCorrect;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CPaddings(obj) {
|
||
|
||
if (obj) {
|
||
this.Left = (undefined == obj.Left) ? null : obj.Left;
|
||
this.Top = (undefined == obj.Top) ? null : obj.Top;
|
||
this.Bottom = (undefined == obj.Bottom) ? null : obj.Bottom;
|
||
this.Right = (undefined == obj.Right) ? null : obj.Right;
|
||
} else {
|
||
this.Left = null;
|
||
this.Top = null;
|
||
this.Bottom = null;
|
||
this.Right = null;
|
||
}
|
||
}
|
||
|
||
asc_CPaddings.prototype = {
|
||
asc_getLeft: function () {
|
||
return this.Left;
|
||
}, asc_putLeft: function (v) {
|
||
this.Left = v;
|
||
}, asc_getTop: function () {
|
||
return this.Top;
|
||
}, asc_putTop: function (v) {
|
||
this.Top = v;
|
||
}, asc_getBottom: function () {
|
||
return this.Bottom;
|
||
}, asc_putBottom: function (v) {
|
||
this.Bottom = v;
|
||
}, asc_getRight: function () {
|
||
return this.Right;
|
||
}, asc_putRight: function (v) {
|
||
this.Right = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CShapeProperty() {
|
||
this.type = null; // custom
|
||
this.fill = null;
|
||
this.stroke = null;
|
||
this.paddings = null;
|
||
this.canFill = true;
|
||
this.canChangeArrows = false;
|
||
this.bFromChart = false;
|
||
this.bFromImage = false;
|
||
this.Locked = false;
|
||
this.w = null;
|
||
this.h = null;
|
||
this.vert = null;
|
||
this.verticalTextAlign = null;
|
||
this.textArtProperties = null;
|
||
this.lockAspect = null;
|
||
this.title = null;
|
||
this.description = null;
|
||
|
||
this.columnNumber = null;
|
||
this.columnSpace = null;
|
||
this.signatureId = null;
|
||
}
|
||
|
||
asc_CShapeProperty.prototype = {
|
||
constructor: asc_CShapeProperty,
|
||
asc_getType: function () {
|
||
return this.type;
|
||
}, asc_putType: function (v) {
|
||
this.type = v;
|
||
}, asc_getFill: function () {
|
||
return this.fill;
|
||
}, asc_putFill: function (v) {
|
||
this.fill = v;
|
||
}, asc_getStroke: function () {
|
||
return this.stroke;
|
||
}, asc_putStroke: function (v) {
|
||
this.stroke = v;
|
||
}, asc_getPaddings: function () {
|
||
return this.paddings;
|
||
}, asc_putPaddings: function (v) {
|
||
this.paddings = v;
|
||
}, asc_getCanFill: function () {
|
||
return this.canFill;
|
||
}, asc_putCanFill: function (v) {
|
||
this.canFill = v;
|
||
}, asc_getCanChangeArrows: function () {
|
||
return this.canChangeArrows;
|
||
}, asc_setCanChangeArrows: function (v) {
|
||
this.canChangeArrows = v;
|
||
}, asc_getFromChart: function () {
|
||
return this.bFromChart;
|
||
}, asc_setFromChart: function (v) {
|
||
this.bFromChart = v;
|
||
}, asc_getLocked: function () {
|
||
return this.Locked;
|
||
}, asc_setLocked: function (v) {
|
||
this.Locked = v;
|
||
},
|
||
|
||
asc_getWidth: function () {
|
||
return this.w;
|
||
}, asc_putWidth: function (v) {
|
||
this.w = v;
|
||
}, asc_getHeight: function () {
|
||
return this.h;
|
||
}, asc_putHeight: function (v) {
|
||
this.h = v;
|
||
}, asc_getVerticalTextAlign: function () {
|
||
return this.verticalTextAlign;
|
||
}, asc_putVerticalTextAlign: function (v) {
|
||
this.verticalTextAlign = v;
|
||
}, asc_getVert: function () {
|
||
return this.vert;
|
||
}, asc_putVert: function (v) {
|
||
this.vert = v;
|
||
}, asc_getTextArtProperties: function () {
|
||
return this.textArtProperties;
|
||
}, asc_putTextArtProperties: function (v) {
|
||
this.textArtProperties = v;
|
||
}, asc_getLockAspect: function () {
|
||
return this.lockAspect
|
||
}, asc_putLockAspect: function (v) {
|
||
this.lockAspect = v;
|
||
}, asc_getTitle: function () {
|
||
return this.title;
|
||
}, asc_putTitle: function (v) {
|
||
this.title = v;
|
||
}, asc_getDescription: function () {
|
||
return this.description;
|
||
}, asc_putDescription: function (v) {
|
||
this.description = v;
|
||
},
|
||
|
||
asc_getColumnNumber: function(){
|
||
return this.columnNumber;
|
||
},
|
||
|
||
asc_putColumnNumber: function(v){
|
||
this.columnNumber = v;
|
||
},
|
||
|
||
asc_getColumnSpace: function(){
|
||
return this.columnSpace;
|
||
},
|
||
|
||
asc_putColumnSpace: function(v){
|
||
this.columnSpace = v;
|
||
},
|
||
|
||
asc_getSignatureId: function(){
|
||
return this.signatureId;
|
||
},
|
||
|
||
asc_putSignatureId: function(v){
|
||
this.signatureId = v;
|
||
},
|
||
|
||
asc_getFromImage: function(){
|
||
return this.bFromImage;
|
||
},
|
||
|
||
asc_putFromImage: function(v){
|
||
this.bFromImage = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_TextArtProperties(obj) {
|
||
if (obj) {
|
||
this.Fill = obj.Fill;//asc_Fill
|
||
this.Line = obj.Line;//asc_Stroke
|
||
this.Form = obj.Form;//srting
|
||
this.Style = obj.Style;//
|
||
} else {
|
||
this.Fill = undefined;
|
||
this.Line = undefined;
|
||
this.Form = undefined;
|
||
this.Style = undefined;
|
||
}
|
||
}
|
||
|
||
asc_TextArtProperties.prototype.asc_putFill = function (oAscFill) {
|
||
this.Fill = oAscFill;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_getFill = function () {
|
||
return this.Fill;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_putLine = function (oAscStroke) {
|
||
this.Line = oAscStroke;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_getLine = function () {
|
||
return this.Line;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_putForm = function (sForm) {
|
||
this.Form = sForm;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_getForm = function () {
|
||
return this.Form;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_putStyle = function (Style) {
|
||
this.Style = Style;
|
||
};
|
||
asc_TextArtProperties.prototype.asc_getStyle = function () {
|
||
return this.Style;
|
||
};
|
||
|
||
function CImagePositionH(obj) {
|
||
if (obj) {
|
||
this.RelativeFrom = ( undefined === obj.RelativeFrom ) ? undefined : obj.RelativeFrom;
|
||
this.UseAlign = ( undefined === obj.UseAlign ) ? undefined : obj.UseAlign;
|
||
this.Align = ( undefined === obj.Align ) ? undefined : obj.Align;
|
||
this.Value = ( undefined === obj.Value ) ? undefined : obj.Value;
|
||
this.Percent = ( undefined === obj.Percent ) ? undefined : obj.Percent;
|
||
} else {
|
||
this.RelativeFrom = undefined;
|
||
this.UseAlign = undefined;
|
||
this.Align = undefined;
|
||
this.Value = undefined;
|
||
this.Percent = undefined;
|
||
}
|
||
}
|
||
|
||
CImagePositionH.prototype.get_RelativeFrom = function () {
|
||
return this.RelativeFrom;
|
||
};
|
||
CImagePositionH.prototype.put_RelativeFrom = function (v) {
|
||
this.RelativeFrom = v;
|
||
};
|
||
CImagePositionH.prototype.get_UseAlign = function () {
|
||
return this.UseAlign;
|
||
};
|
||
CImagePositionH.prototype.put_UseAlign = function (v) {
|
||
this.UseAlign = v;
|
||
};
|
||
CImagePositionH.prototype.get_Align = function () {
|
||
return this.Align;
|
||
};
|
||
CImagePositionH.prototype.put_Align = function (v) {
|
||
this.Align = v;
|
||
};
|
||
CImagePositionH.prototype.get_Value = function () {
|
||
return this.Value;
|
||
};
|
||
CImagePositionH.prototype.put_Value = function (v) {
|
||
this.Value = v;
|
||
};
|
||
CImagePositionH.prototype.get_Percent = function () {
|
||
return this.Percent
|
||
};
|
||
CImagePositionH.prototype.put_Percent = function (v) {
|
||
this.Percent = v;
|
||
};
|
||
|
||
function CImagePositionV(obj) {
|
||
if (obj) {
|
||
this.RelativeFrom = ( undefined === obj.RelativeFrom ) ? undefined : obj.RelativeFrom;
|
||
this.UseAlign = ( undefined === obj.UseAlign ) ? undefined : obj.UseAlign;
|
||
this.Align = ( undefined === obj.Align ) ? undefined : obj.Align;
|
||
this.Value = ( undefined === obj.Value ) ? undefined : obj.Value;
|
||
this.Percent = ( undefined === obj.Percent ) ? undefined : obj.Percent;
|
||
} else {
|
||
this.RelativeFrom = undefined;
|
||
this.UseAlign = undefined;
|
||
this.Align = undefined;
|
||
this.Value = undefined;
|
||
this.Percent = undefined;
|
||
}
|
||
}
|
||
|
||
CImagePositionV.prototype.get_RelativeFrom = function () {
|
||
return this.RelativeFrom;
|
||
};
|
||
CImagePositionV.prototype.put_RelativeFrom = function (v) {
|
||
this.RelativeFrom = v;
|
||
};
|
||
CImagePositionV.prototype.get_UseAlign = function () {
|
||
return this.UseAlign;
|
||
};
|
||
CImagePositionV.prototype.put_UseAlign = function (v) {
|
||
this.UseAlign = v;
|
||
};
|
||
CImagePositionV.prototype.get_Align = function () {
|
||
return this.Align;
|
||
};
|
||
CImagePositionV.prototype.put_Align = function (v) {
|
||
this.Align = v;
|
||
};
|
||
CImagePositionV.prototype.get_Value = function () {
|
||
return this.Value;
|
||
};
|
||
CImagePositionV.prototype.put_Value = function (v) {
|
||
this.Value = v;
|
||
};
|
||
CImagePositionV.prototype.get_Percent = function () {
|
||
return this.Percent
|
||
};
|
||
CImagePositionV.prototype.put_Percent = function (v) {
|
||
this.Percent = v;
|
||
};
|
||
|
||
function CPosition(obj) {
|
||
if (obj) {
|
||
this.X = (undefined == obj.X) ? null : obj.X;
|
||
this.Y = (undefined == obj.Y) ? null : obj.Y;
|
||
} else {
|
||
this.X = null;
|
||
this.Y = null;
|
||
}
|
||
}
|
||
|
||
CPosition.prototype.get_X = function () {
|
||
return this.X;
|
||
};
|
||
CPosition.prototype.put_X = function (v) {
|
||
this.X = v;
|
||
};
|
||
CPosition.prototype.get_Y = function () {
|
||
return this.Y;
|
||
};
|
||
CPosition.prototype.put_Y = function (v) {
|
||
this.Y = v;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CImgProperty(obj) {
|
||
|
||
if (obj) {
|
||
this.CanBeFlow = (undefined != obj.CanBeFlow) ? obj.CanBeFlow : true;
|
||
|
||
this.Width = (undefined != obj.Width ) ? obj.Width : undefined;
|
||
this.Height = (undefined != obj.Height ) ? obj.Height : undefined;
|
||
this.WrappingStyle = (undefined != obj.WrappingStyle) ? obj.WrappingStyle : undefined;
|
||
this.Paddings = (undefined != obj.Paddings ) ? new asc_CPaddings(obj.Paddings) : undefined;
|
||
this.Position = (undefined != obj.Position ) ? new CPosition(obj.Position) : undefined;
|
||
this.AllowOverlap = (undefined != obj.AllowOverlap ) ? obj.AllowOverlap : undefined;
|
||
this.PositionH = (undefined != obj.PositionH ) ? new CImagePositionH(obj.PositionH) : undefined;
|
||
this.PositionV = (undefined != obj.PositionV ) ? new CImagePositionV(obj.PositionV) : undefined;
|
||
|
||
this.SizeRelH = (undefined != obj.SizeRelH) ? new CImagePositionH(obj.SizeRelH) : undefined;
|
||
this.SizeRelV = (undefined != obj.SizeRelV) ? new CImagePositionV(obj.SizeRelV) : undefined;
|
||
|
||
this.Internal_Position = (undefined != obj.Internal_Position) ? obj.Internal_Position : null;
|
||
|
||
this.ImageUrl = (undefined != obj.ImageUrl) ? obj.ImageUrl : null;
|
||
this.Locked = (undefined != obj.Locked) ? obj.Locked : false;
|
||
this.lockAspect = (undefined != obj.lockAspect) ? obj.lockAspect : false;
|
||
|
||
|
||
this.ChartProperties = (undefined != obj.ChartProperties) ? obj.ChartProperties : null;
|
||
this.ShapeProperties = (undefined != obj.ShapeProperties) ? obj.ShapeProperties : null;
|
||
|
||
this.ChangeLevel = (undefined != obj.ChangeLevel) ? obj.ChangeLevel : null;
|
||
this.Group = (obj.Group != undefined) ? obj.Group : null;
|
||
|
||
this.fromGroup = obj.fromGroup != undefined ? obj.fromGroup : null;
|
||
this.severalCharts = obj.severalCharts != undefined ? obj.severalCharts : false;
|
||
this.severalChartTypes = obj.severalChartTypes != undefined ? obj.severalChartTypes : undefined;
|
||
this.severalChartStyles = obj.severalChartStyles != undefined ? obj.severalChartStyles : undefined;
|
||
this.verticalTextAlign = obj.verticalTextAlign != undefined ? obj.verticalTextAlign : undefined;
|
||
this.vert = obj.vert != undefined ? obj.vert : undefined;
|
||
|
||
//oleObjects
|
||
this.pluginGuid = obj.pluginGuid !== undefined ? obj.pluginGuid : undefined;
|
||
this.pluginData = obj.pluginData !== undefined ? obj.pluginData : undefined;
|
||
this.oleWidth = obj.oleWidth != undefined ? obj.oleWidth : undefined;
|
||
this.oleHeight = obj.oleHeight != undefined ? obj.oleHeight : undefined;
|
||
|
||
this.title = obj.title != undefined ? obj.title : undefined;
|
||
this.description = obj.description != undefined ? obj.description : undefined;
|
||
|
||
this.columnNumber = obj.columnNumber != undefined ? obj.columnNumber : undefined;
|
||
this.columnSpace = obj.columnSpace != undefined ? obj.columnSpace : undefined;
|
||
|
||
} else {
|
||
this.CanBeFlow = true;
|
||
this.Width = undefined;
|
||
this.Height = undefined;
|
||
this.WrappingStyle = undefined;
|
||
this.Paddings = undefined;
|
||
this.Position = undefined;
|
||
this.PositionH = undefined;
|
||
this.PositionV = undefined;
|
||
|
||
this.SizeRelH = undefined;
|
||
this.SizeRelV = undefined;
|
||
|
||
this.Internal_Position = null;
|
||
this.ImageUrl = null;
|
||
this.Locked = false;
|
||
|
||
this.ChartProperties = null;
|
||
this.ShapeProperties = null;
|
||
this.ImageProperties = null;
|
||
|
||
this.ChangeLevel = null;
|
||
this.Group = null;
|
||
this.fromGroup = null;
|
||
this.severalCharts = false;
|
||
this.severalChartTypes = undefined;
|
||
this.severalChartStyles = undefined;
|
||
this.verticalTextAlign = undefined;
|
||
this.vert = undefined;
|
||
|
||
//oleObjects
|
||
this.pluginGuid = undefined;
|
||
this.pluginData = undefined;
|
||
|
||
this.oleWidth = undefined;
|
||
this.oleHeight = undefined;
|
||
this.title = undefined;
|
||
this.description = undefined;
|
||
|
||
this.columnNumber = undefined;
|
||
this.columnSpace = undefined;
|
||
}
|
||
}
|
||
|
||
asc_CImgProperty.prototype = {
|
||
constructor: asc_CImgProperty,
|
||
asc_getChangeLevel: function () {
|
||
return this.ChangeLevel;
|
||
}, asc_putChangeLevel: function (v) {
|
||
this.ChangeLevel = v;
|
||
},
|
||
|
||
asc_getCanBeFlow: function () {
|
||
return this.CanBeFlow;
|
||
}, asc_getWidth: function () {
|
||
return this.Width;
|
||
}, asc_putWidth: function (v) {
|
||
this.Width = v;
|
||
}, asc_getHeight: function () {
|
||
return this.Height;
|
||
}, asc_putHeight: function (v) {
|
||
this.Height = v;
|
||
}, asc_getWrappingStyle: function () {
|
||
return this.WrappingStyle;
|
||
}, asc_putWrappingStyle: function (v) {
|
||
this.WrappingStyle = v;
|
||
},
|
||
|
||
// Возвращается объект класса Asc.asc_CPaddings
|
||
asc_getPaddings: function () {
|
||
return this.Paddings;
|
||
}, // Аргумент объект класса Asc.asc_CPaddings
|
||
asc_putPaddings: function (v) {
|
||
this.Paddings = v;
|
||
}, asc_getAllowOverlap: function () {
|
||
return this.AllowOverlap;
|
||
}, asc_putAllowOverlap: function (v) {
|
||
this.AllowOverlap = v;
|
||
}, // Возвращается объект класса CPosition
|
||
asc_getPosition: function () {
|
||
return this.Position;
|
||
}, // Аргумент объект класса CPosition
|
||
asc_putPosition: function (v) {
|
||
this.Position = v;
|
||
}, asc_getPositionH: function () {
|
||
return this.PositionH;
|
||
}, asc_putPositionH: function (v) {
|
||
this.PositionH = v;
|
||
}, asc_getPositionV: function () {
|
||
return this.PositionV;
|
||
}, asc_putPositionV: function (v) {
|
||
this.PositionV = v;
|
||
},
|
||
|
||
asc_getSizeRelH: function () {
|
||
return this.SizeRelH;
|
||
},
|
||
|
||
asc_putSizeRelH: function (v) {
|
||
this.SizeRelH = v;
|
||
},
|
||
|
||
asc_getSizeRelV: function () {
|
||
return this.SizeRelV;
|
||
},
|
||
|
||
asc_putSizeRelV: function (v) {
|
||
this.SizeRelV = v;
|
||
},
|
||
|
||
asc_getValue_X: function (RelativeFrom) {
|
||
if (null != this.Internal_Position) {
|
||
return this.Internal_Position.Calculate_X_Value(RelativeFrom);
|
||
}
|
||
return 0;
|
||
}, asc_getValue_Y: function (RelativeFrom) {
|
||
if (null != this.Internal_Position) {
|
||
return this.Internal_Position.Calculate_Y_Value(RelativeFrom);
|
||
}
|
||
return 0;
|
||
},
|
||
|
||
asc_getImageUrl: function () {
|
||
return this.ImageUrl;
|
||
}, asc_putImageUrl: function (v) {
|
||
this.ImageUrl = v;
|
||
}, asc_getGroup: function () {
|
||
return this.Group;
|
||
}, asc_putGroup: function (v) {
|
||
this.Group = v;
|
||
}, asc_getFromGroup: function () {
|
||
return this.fromGroup;
|
||
}, asc_putFromGroup: function (v) {
|
||
this.fromGroup = v;
|
||
},
|
||
|
||
asc_getisChartProps: function () {
|
||
return this.isChartProps;
|
||
}, asc_putisChartPross: function (v) {
|
||
this.isChartProps = v;
|
||
},
|
||
|
||
asc_getSeveralCharts: function () {
|
||
return this.severalCharts;
|
||
}, asc_putSeveralCharts: function (v) {
|
||
this.severalCharts = v;
|
||
}, asc_getSeveralChartTypes: function () {
|
||
return this.severalChartTypes;
|
||
}, asc_putSeveralChartTypes: function (v) {
|
||
this.severalChartTypes = v;
|
||
},
|
||
|
||
asc_getSeveralChartStyles: function () {
|
||
return this.severalChartStyles;
|
||
}, asc_putSeveralChartStyles: function (v) {
|
||
this.severalChartStyles = v;
|
||
},
|
||
|
||
asc_getVerticalTextAlign: function () {
|
||
return this.verticalTextAlign;
|
||
}, asc_putVerticalTextAlign: function (v) {
|
||
this.verticalTextAlign = v;
|
||
}, asc_getVert: function () {
|
||
return this.vert;
|
||
}, asc_putVert: function (v) {
|
||
this.vert = v;
|
||
},
|
||
|
||
asc_getLocked: function () {
|
||
return this.Locked;
|
||
}, asc_getLockAspect: function () {
|
||
return this.lockAspect;
|
||
}, asc_putLockAspect: function (v) {
|
||
this.lockAspect = v;
|
||
}, asc_getChartProperties: function () {
|
||
return this.ChartProperties;
|
||
}, asc_putChartProperties: function (v) {
|
||
this.ChartProperties = v;
|
||
}, asc_getShapeProperties: function () {
|
||
return this.ShapeProperties;
|
||
}, asc_putShapeProperties: function (v) {
|
||
this.ShapeProperties = v;
|
||
},
|
||
|
||
asc_getOriginSize: function (api) {
|
||
if (window['AscFormat'].isRealNumber(this.oleWidth) && window['AscFormat'].isRealNumber(this.oleHeight)) {
|
||
return new asc_CImageSize(this.oleWidth, this.oleHeight, true);
|
||
}
|
||
if(this.ImageUrl === null)
|
||
{
|
||
return new asc_CImageSize(50, 50, false);
|
||
}
|
||
var _section_select = api.WordControl.m_oLogicDocument.Get_PageSizesByDrawingObjects();
|
||
var _page_width = AscCommon.Page_Width;
|
||
var _page_height = AscCommon.Page_Height;
|
||
var _page_x_left_margin = AscCommon.X_Left_Margin;
|
||
var _page_y_top_margin = AscCommon.Y_Top_Margin;
|
||
var _page_x_right_margin = AscCommon.X_Right_Margin;
|
||
var _page_y_bottom_margin = AscCommon.Y_Bottom_Margin;
|
||
|
||
if (_section_select) {
|
||
if (_section_select.W) {
|
||
_page_width = _section_select.W;
|
||
}
|
||
|
||
if (_section_select.H) {
|
||
_page_height = _section_select.H;
|
||
}
|
||
}
|
||
|
||
var _image = api.ImageLoader.map_image_index[AscCommon.getFullImageSrc2(this.ImageUrl)];
|
||
if (_image != undefined && _image.Image != null && _image.Status == window['AscFonts'].ImageLoadStatus.Complete) {
|
||
var _w = Math.max(1, _page_width - (_page_x_left_margin + _page_x_right_margin));
|
||
var _h = Math.max(1, _page_height - (_page_y_top_margin + _page_y_bottom_margin));
|
||
|
||
var bIsCorrect = false;
|
||
if (_image.Image != null) {
|
||
var __w = Math.max((_image.Image.width * AscCommon.g_dKoef_pix_to_mm), 1);
|
||
var __h = Math.max((_image.Image.height * AscCommon.g_dKoef_pix_to_mm), 1);
|
||
|
||
var dKoef = Math.max(__w / _w, __h / _h);
|
||
if (dKoef > 1) {
|
||
_w = Math.max(5, __w / dKoef);
|
||
_h = Math.max(5, __h / dKoef);
|
||
|
||
bIsCorrect = true;
|
||
} else {
|
||
_w = __w;
|
||
_h = __h;
|
||
}
|
||
}
|
||
|
||
return new asc_CImageSize(_w, _h, bIsCorrect);
|
||
}
|
||
return new asc_CImageSize(50, 50, false);
|
||
},
|
||
|
||
//oleObjects
|
||
asc_getPluginGuid: function () {
|
||
return this.pluginGuid;
|
||
},
|
||
|
||
asc_putPluginGuid: function (v) {
|
||
this.pluginGuid = v;
|
||
},
|
||
|
||
asc_getPluginData: function () {
|
||
return this.pluginData;
|
||
},
|
||
|
||
asc_putPluginData: function (v) {
|
||
this.pluginData = v;
|
||
},
|
||
|
||
asc_getTitle: function(){
|
||
return this.title;
|
||
},
|
||
|
||
asc_putTitle: function(v){
|
||
this.title = v;
|
||
},
|
||
|
||
asc_getDescription: function(){
|
||
return this.description;
|
||
},
|
||
|
||
asc_putDescription: function(v){
|
||
this.description = v;
|
||
},
|
||
|
||
asc_getColumnNumber: function(){
|
||
return this.columnNumber;
|
||
},
|
||
|
||
asc_putColumnNumber: function(v){
|
||
this.columnNumber = v;
|
||
},
|
||
|
||
asc_getColumnSpace: function(){
|
||
return this.columnSpace;
|
||
},
|
||
|
||
asc_putColumnSpace: function(v){
|
||
this.columnSpace = v;
|
||
},
|
||
|
||
asc_getSignatureId : function() {
|
||
if (this.ShapeProperties)
|
||
return this.ShapeProperties.asc_getSignatureId();
|
||
return undefined;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CSelectedObject(type, val) {
|
||
this.Type = (undefined != type) ? type : null;
|
||
this.Value = (undefined != val) ? val : null;
|
||
}
|
||
|
||
asc_CSelectedObject.prototype = {
|
||
asc_getObjectType: function () {
|
||
return this.Type;
|
||
}, asc_getObjectValue: function () {
|
||
return this.Value;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CShapeFill() {
|
||
this.type = null;
|
||
this.fill = null;
|
||
this.transparent = null;
|
||
}
|
||
|
||
asc_CShapeFill.prototype = {
|
||
asc_getType: function () {
|
||
return this.type;
|
||
}, asc_putType: function (v) {
|
||
this.type = v;
|
||
}, asc_getFill: function () {
|
||
return this.fill;
|
||
}, asc_putFill: function (v) {
|
||
this.fill = v;
|
||
}, asc_getTransparent: function () {
|
||
return this.transparent;
|
||
}, asc_putTransparent: function (v) {
|
||
this.transparent = v;
|
||
}, asc_CheckForseSet: function () {
|
||
if (null != this.transparent) {
|
||
return true;
|
||
}
|
||
if (null != this.fill && this.fill.Positions != null) {
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CFillBlip() {
|
||
this.type = c_oAscFillBlipType.STRETCH;
|
||
this.url = "";
|
||
this.texture_id = null;
|
||
}
|
||
|
||
asc_CFillBlip.prototype = {
|
||
asc_getType: function () {
|
||
return this.type
|
||
}, asc_putType: function (v) {
|
||
this.type = v;
|
||
}, asc_getUrl: function () {
|
||
return this.url;
|
||
}, asc_putUrl: function (v) {
|
||
this.url = v;
|
||
}, asc_getTextureId: function () {
|
||
return this.texture_id;
|
||
}, asc_putTextureId: function (v) {
|
||
this.texture_id = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CFillHatch() {
|
||
this.PatternType = undefined;
|
||
this.fgClr = undefined;
|
||
this.bgClr = undefined;
|
||
}
|
||
|
||
asc_CFillHatch.prototype = {
|
||
asc_getPatternType: function () {
|
||
return this.PatternType;
|
||
}, asc_putPatternType: function (v) {
|
||
this.PatternType = v;
|
||
}, asc_getColorFg: function () {
|
||
return this.fgClr;
|
||
}, asc_putColorFg: function (v) {
|
||
this.fgClr = v;
|
||
}, asc_getColorBg: function () {
|
||
return this.bgClr;
|
||
}, asc_putColorBg: function (v) {
|
||
this.bgClr = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CFillGrad() {
|
||
this.Colors = undefined;
|
||
this.Positions = undefined;
|
||
this.GradType = 0;
|
||
|
||
this.LinearAngle = undefined;
|
||
this.LinearScale = true;
|
||
|
||
this.PathType = 0;
|
||
}
|
||
|
||
asc_CFillGrad.prototype = {
|
||
asc_getColors: function () {
|
||
return this.Colors;
|
||
}, asc_putColors: function (v) {
|
||
this.Colors = v;
|
||
}, asc_getPositions: function () {
|
||
return this.Positions;
|
||
}, asc_putPositions: function (v) {
|
||
this.Positions = v;
|
||
}, asc_getGradType: function () {
|
||
return this.GradType;
|
||
}, asc_putGradType: function (v) {
|
||
this.GradType = v;
|
||
}, asc_getLinearAngle: function () {
|
||
return this.LinearAngle;
|
||
}, asc_putLinearAngle: function (v) {
|
||
this.LinearAngle = v;
|
||
}, asc_getLinearScale: function () {
|
||
return this.LinearScale;
|
||
}, asc_putLinearScale: function (v) {
|
||
this.LinearScale = v;
|
||
}, asc_getPathType: function () {
|
||
return this.PathType;
|
||
}, asc_putPathType: function (v) {
|
||
this.PathType = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CFillSolid() {
|
||
this.color = new asc_CColor();
|
||
}
|
||
|
||
asc_CFillSolid.prototype = {
|
||
asc_getColor: function () {
|
||
return this.color
|
||
}, asc_putColor: function (v) {
|
||
this.color = v;
|
||
}
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CStroke() {
|
||
this.type = null;
|
||
this.width = null;
|
||
this.color = null;
|
||
this.prstDash = null;
|
||
|
||
this.LineJoin = null;
|
||
this.LineCap = null;
|
||
|
||
this.LineBeginStyle = null;
|
||
this.LineBeginSize = null;
|
||
|
||
this.LineEndStyle = null;
|
||
this.LineEndSize = null;
|
||
|
||
this.canChangeArrows = false;
|
||
}
|
||
|
||
asc_CStroke.prototype = {
|
||
asc_getType: function () {
|
||
return this.type;
|
||
}, asc_putType: function (v) {
|
||
this.type = v;
|
||
}, asc_getWidth: function () {
|
||
return this.width;
|
||
}, asc_putWidth: function (v) {
|
||
this.width = v;
|
||
}, asc_getColor: function () {
|
||
return this.color;
|
||
}, asc_putColor: function (v) {
|
||
this.color = v;
|
||
},
|
||
|
||
asc_getLinejoin: function () {
|
||
return this.LineJoin;
|
||
}, asc_putLinejoin: function (v) {
|
||
this.LineJoin = v;
|
||
}, asc_getLinecap: function () {
|
||
return this.LineCap;
|
||
}, asc_putLinecap: function (v) {
|
||
this.LineCap = v;
|
||
},
|
||
|
||
asc_getLinebeginstyle: function () {
|
||
return this.LineBeginStyle;
|
||
}, asc_putLinebeginstyle: function (v) {
|
||
this.LineBeginStyle = v;
|
||
}, asc_getLinebeginsize: function () {
|
||
return this.LineBeginSize;
|
||
}, asc_putLinebeginsize: function (v) {
|
||
this.LineBeginSize = v;
|
||
}, asc_getLineendstyle: function () {
|
||
return this.LineEndStyle;
|
||
}, asc_putLineendstyle: function (v) {
|
||
this.LineEndStyle = v;
|
||
}, asc_getLineendsize: function () {
|
||
return this.LineEndSize;
|
||
}, asc_putLineendsize: function (v) {
|
||
this.LineEndSize = v;
|
||
},
|
||
|
||
asc_getCanChangeArrows: function () {
|
||
return this.canChangeArrows;
|
||
},
|
||
|
||
asc_putPrstDash: function (v) {
|
||
this.prstDash = v;
|
||
}, asc_getPrstDash: function () {
|
||
return this.prstDash;
|
||
}
|
||
};
|
||
|
||
// цвет. может быть трех типов:
|
||
// c_oAscColor.COLOR_TYPE_SRGB : value - не учитывается
|
||
// c_oAscColor.COLOR_TYPE_PRST : value - имя стандартного цвета (map_prst_color)
|
||
// c_oAscColor.COLOR_TYPE_SCHEME : value - тип цвета в схеме
|
||
// c_oAscColor.COLOR_TYPE_SYS : конвертируется в srgb
|
||
function CAscColorScheme() {
|
||
this.colors = [];
|
||
this.name = "";
|
||
}
|
||
|
||
CAscColorScheme.prototype.get_colors = function () {
|
||
return this.colors;
|
||
};
|
||
CAscColorScheme.prototype.get_name = function () {
|
||
return this.name;
|
||
};
|
||
CAscColorScheme.prototype.get_dk1 = function () {
|
||
return this.colors[0];
|
||
};
|
||
CAscColorScheme.prototype.get_lt1 = function () {
|
||
return this.colors[1];
|
||
};
|
||
CAscColorScheme.prototype.get_dk2 = function () {
|
||
return this.colors[2];
|
||
};
|
||
CAscColorScheme.prototype.get_lt2 = function () {
|
||
return this.colors[3];
|
||
};
|
||
CAscColorScheme.prototype.get_accent1 = function () {
|
||
return this.colors[4];
|
||
};
|
||
CAscColorScheme.prototype.get_accent2 = function () {
|
||
return this.colors[5];
|
||
};
|
||
CAscColorScheme.prototype.get_accent3 = function () {
|
||
return this.colors[6];
|
||
};
|
||
CAscColorScheme.prototype.get_accent4 = function () {
|
||
return this.colors[7];
|
||
};
|
||
CAscColorScheme.prototype.get_accent5 = function () {
|
||
return this.colors[8];
|
||
};
|
||
CAscColorScheme.prototype.get_accent6 = function () {
|
||
return this.colors[9];
|
||
};
|
||
CAscColorScheme.prototype.get_hlink = function () {
|
||
return this.colors[10];
|
||
};
|
||
CAscColorScheme.prototype.get_folHlink = function () {
|
||
return this.colors[11];
|
||
};
|
||
|
||
//-----------------------------------------------------------------
|
||
// События движения мыши
|
||
//-----------------------------------------------------------------
|
||
function CMouseMoveData(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.Type = ( undefined != obj.Type ) ? obj.Type : c_oAscMouseMoveDataTypes.Common;
|
||
this.X_abs = ( undefined != obj.X_abs ) ? obj.X_abs : 0;
|
||
this.Y_abs = ( undefined != obj.Y_abs ) ? obj.Y_abs : 0;
|
||
|
||
switch (this.Type)
|
||
{
|
||
case c_oAscMouseMoveDataTypes.Hyperlink :
|
||
{
|
||
this.Hyperlink = ( undefined != obj.PageNum ) ? obj.PageNum : 0;
|
||
break;
|
||
}
|
||
|
||
case c_oAscMouseMoveDataTypes.LockedObject :
|
||
{
|
||
this.UserId = ( undefined != obj.UserId ) ? obj.UserId : "";
|
||
this.HaveChanges = ( undefined != obj.HaveChanges ) ? obj.HaveChanges : false;
|
||
this.LockedObjectType =
|
||
( undefined != obj.LockedObjectType ) ? obj.LockedObjectType : Asc.c_oAscMouseMoveLockedObjectType.Common;
|
||
break;
|
||
}
|
||
case c_oAscMouseMoveDataTypes.Footnote:
|
||
{
|
||
this.Text = "";
|
||
this.Number = 1;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
this.Type = c_oAscMouseMoveDataTypes.Common;
|
||
this.X_abs = 0;
|
||
this.Y_abs = 0;
|
||
}
|
||
}
|
||
|
||
CMouseMoveData.prototype.get_Type = function () {
|
||
return this.Type;
|
||
};
|
||
CMouseMoveData.prototype.get_X = function () {
|
||
return this.X_abs;
|
||
};
|
||
CMouseMoveData.prototype.get_Y = function () {
|
||
return this.Y_abs;
|
||
};
|
||
CMouseMoveData.prototype.get_Hyperlink = function () {
|
||
return this.Hyperlink;
|
||
};
|
||
CMouseMoveData.prototype.get_UserId = function () {
|
||
return this.UserId;
|
||
};
|
||
CMouseMoveData.prototype.get_HaveChanges = function () {
|
||
return this.HaveChanges;
|
||
};
|
||
CMouseMoveData.prototype.get_LockedObjectType = function () {
|
||
return this.LockedObjectType;
|
||
};
|
||
CMouseMoveData.prototype.get_FootnoteText = function()
|
||
{
|
||
return this.Text;
|
||
};
|
||
CMouseMoveData.prototype.get_FootnoteNumber = function()
|
||
{
|
||
return this.Number;
|
||
};
|
||
|
||
|
||
/**
|
||
* Класс для работы с интерфейсом для гиперссылок
|
||
* @param obj
|
||
* @constructor
|
||
*/
|
||
function CHyperlinkProperty(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.Text = (undefined != obj.Text ) ? obj.Text : null;
|
||
this.Value = (undefined != obj.Value ) ? obj.Value : "";
|
||
this.ToolTip = (undefined != obj.ToolTip) ? obj.ToolTip : "";
|
||
this.Class = (undefined !== obj.Class ) ? obj.Class : null;
|
||
this.Anchor = (undefined !== obj.Anchor) ? obj.Anchor : null;
|
||
this.Heading = (obj.Heading ? obj.Heading : null);
|
||
}
|
||
else
|
||
{
|
||
this.Text = null;
|
||
this.Value = "";
|
||
this.ToolTip = "";
|
||
this.Class = null;
|
||
this.Anchor = null;
|
||
this.Heading = null;
|
||
}
|
||
}
|
||
CHyperlinkProperty.prototype.get_Value = function()
|
||
{
|
||
return this.Value;
|
||
};
|
||
CHyperlinkProperty.prototype.put_Value = function(v)
|
||
{
|
||
this.Value = v;
|
||
};
|
||
CHyperlinkProperty.prototype.get_ToolTip = function()
|
||
{
|
||
return this.ToolTip;
|
||
};
|
||
CHyperlinkProperty.prototype.put_ToolTip = function(v)
|
||
{
|
||
this.ToolTip = v ? v.slice(0, Asc.c_oAscMaxTooltipLength) : v;
|
||
};
|
||
CHyperlinkProperty.prototype.get_Text = function()
|
||
{
|
||
return this.Text;
|
||
};
|
||
CHyperlinkProperty.prototype.put_Text = function(v)
|
||
{
|
||
this.Text = v;
|
||
};
|
||
CHyperlinkProperty.prototype.put_InternalHyperlink = function(oClass)
|
||
{
|
||
this.Class = oClass;
|
||
};
|
||
CHyperlinkProperty.prototype.get_InternalHyperlink = function()
|
||
{
|
||
return this.Class;
|
||
};
|
||
CHyperlinkProperty.prototype.is_TopOfDocument = function()
|
||
{
|
||
return (this.Anchor === "_top");
|
||
};
|
||
CHyperlinkProperty.prototype.put_TopOfDocument = function()
|
||
{
|
||
this.Anchor = "_top";
|
||
};
|
||
CHyperlinkProperty.prototype.get_Bookmark = function()
|
||
{
|
||
return this.Anchor;
|
||
};
|
||
CHyperlinkProperty.prototype.put_Bookmark = function(sBookmark)
|
||
{
|
||
this.Anchor = sBookmark;
|
||
};
|
||
CHyperlinkProperty.prototype.is_Heading = function()
|
||
{
|
||
return (this.Heading instanceof AscCommonWord.Paragraph ? true : false)
|
||
};
|
||
CHyperlinkProperty.prototype.put_Heading = function(oParagraph)
|
||
{
|
||
this.Heading = oParagraph;
|
||
};
|
||
CHyperlinkProperty.prototype.get_Heading = function()
|
||
{
|
||
return this.Heading;
|
||
};
|
||
|
||
window['Asc']['CHyperlinkProperty'] = window['Asc'].CHyperlinkProperty = CHyperlinkProperty;
|
||
CHyperlinkProperty.prototype['get_Value'] = CHyperlinkProperty.prototype.get_Value;
|
||
CHyperlinkProperty.prototype['put_Value'] = CHyperlinkProperty.prototype.put_Value;
|
||
CHyperlinkProperty.prototype['get_ToolTip'] = CHyperlinkProperty.prototype.get_ToolTip;
|
||
CHyperlinkProperty.prototype['put_ToolTip'] = CHyperlinkProperty.prototype.put_ToolTip;
|
||
CHyperlinkProperty.prototype['get_Text'] = CHyperlinkProperty.prototype.get_Text;
|
||
CHyperlinkProperty.prototype['put_Text'] = CHyperlinkProperty.prototype.put_Text;
|
||
CHyperlinkProperty.prototype['get_InternalHyperlink'] = CHyperlinkProperty.prototype.get_InternalHyperlink;
|
||
CHyperlinkProperty.prototype['put_InternalHyperlink'] = CHyperlinkProperty.prototype.put_InternalHyperlink;
|
||
CHyperlinkProperty.prototype['is_TopOfDocument'] = CHyperlinkProperty.prototype.is_TopOfDocument;
|
||
CHyperlinkProperty.prototype['put_TopOfDocument'] = CHyperlinkProperty.prototype.put_TopOfDocument;
|
||
CHyperlinkProperty.prototype['get_Bookmark'] = CHyperlinkProperty.prototype.get_Bookmark;
|
||
CHyperlinkProperty.prototype['put_Bookmark'] = CHyperlinkProperty.prototype.put_Bookmark;
|
||
CHyperlinkProperty.prototype['is_Heading'] = CHyperlinkProperty.prototype.is_Heading;
|
||
CHyperlinkProperty.prototype['put_Heading'] = CHyperlinkProperty.prototype.put_Heading;
|
||
CHyperlinkProperty.prototype['get_Heading'] = CHyperlinkProperty.prototype.get_Heading;
|
||
|
||
|
||
/** @constructor */
|
||
function asc_CUserInfo() {
|
||
this.Id = null;
|
||
this.FullName = null;
|
||
this.FirstName = null;
|
||
this.LastName = null;
|
||
}
|
||
|
||
asc_CUserInfo.prototype.asc_putId = asc_CUserInfo.prototype.put_Id = function (v) {
|
||
this.Id = v;
|
||
};
|
||
asc_CUserInfo.prototype.asc_getId = asc_CUserInfo.prototype.get_Id = function () {
|
||
return this.Id;
|
||
};
|
||
asc_CUserInfo.prototype.asc_putFullName = asc_CUserInfo.prototype.put_FullName = function (v) {
|
||
this.FullName = v;
|
||
};
|
||
asc_CUserInfo.prototype.asc_getFullName = asc_CUserInfo.prototype.get_FullName = function () {
|
||
return this.FullName;
|
||
};
|
||
asc_CUserInfo.prototype.asc_putFirstName = asc_CUserInfo.prototype.put_FirstName = function (v) {
|
||
this.FirstName = v;
|
||
};
|
||
asc_CUserInfo.prototype.asc_getFirstName = asc_CUserInfo.prototype.get_FirstName = function () {
|
||
return this.FirstName;
|
||
};
|
||
asc_CUserInfo.prototype.asc_putLastName = asc_CUserInfo.prototype.put_LastName = function (v) {
|
||
this.LastName = v;
|
||
};
|
||
asc_CUserInfo.prototype.asc_getLastName = asc_CUserInfo.prototype.get_LastName = function () {
|
||
return this.LastName;
|
||
};
|
||
|
||
/** @constructor */
|
||
function asc_CDocInfo() {
|
||
this.Id = null;
|
||
this.Url = null;
|
||
this.Title = null;
|
||
this.Format = null;
|
||
this.VKey = null;
|
||
this.Token = null;
|
||
this.UserInfo = null;
|
||
this.Options = null;
|
||
this.CallbackUrl = null;
|
||
this.TemplateReplacement = null;
|
||
this.Mode = null;
|
||
this.Permissions = null;
|
||
this.Lang = null;
|
||
this.OfflineApp = false;
|
||
this.Encrypted;
|
||
}
|
||
|
||
prot = asc_CDocInfo.prototype;
|
||
prot.get_Id = prot.asc_getId = function () {
|
||
return this.Id
|
||
};
|
||
prot.put_Id = prot.asc_putId = function (v) {
|
||
this.Id = v;
|
||
};
|
||
prot.get_Url = prot.asc_getUrl = function () {
|
||
return this.Url;
|
||
};
|
||
prot.put_Url = prot.asc_putUrl = function (v) {
|
||
this.Url = v;
|
||
};
|
||
prot.get_Title = prot.asc_getTitle = function () {
|
||
return this.Title;
|
||
};
|
||
prot.put_Title = prot.asc_putTitle = function (v) {
|
||
this.Title = v;
|
||
};
|
||
prot.get_Format = prot.asc_getFormat = function () {
|
||
return this.Format;
|
||
};
|
||
prot.put_Format = prot.asc_putFormat = function (v) {
|
||
this.Format = v;
|
||
};
|
||
prot.get_VKey = prot.asc_getVKey = function () {
|
||
return this.VKey;
|
||
};
|
||
prot.put_VKey = prot.asc_putVKey = function (v) {
|
||
this.VKey = v;
|
||
};
|
||
prot.get_Token = prot.asc_getToken = function () {
|
||
return this.Token;
|
||
};
|
||
prot.put_Token = prot.asc_putToken = function (v) {
|
||
this.Token = v;
|
||
};
|
||
prot.get_OfflineApp = function () {
|
||
return this.OfflineApp;
|
||
};
|
||
prot.put_OfflineApp = function (v) {
|
||
this.OfflineApp = v;
|
||
};
|
||
prot.get_UserId = prot.asc_getUserId = function () {
|
||
return (this.UserInfo ? this.UserInfo.get_Id() : null );
|
||
};
|
||
prot.get_UserName = prot.asc_getUserName = function () {
|
||
return (this.UserInfo ? this.UserInfo.get_FullName() : null );
|
||
};
|
||
prot.get_FirstName = prot.asc_getFirstName = function () {
|
||
return (this.UserInfo ? this.UserInfo.get_FirstName() : null );
|
||
};
|
||
prot.get_LastName = prot.asc_getLastName = function () {
|
||
return (this.UserInfo ? this.UserInfo.get_LastName() : null );
|
||
};
|
||
prot.get_Options = prot.asc_getOptions = function () {
|
||
return this.Options;
|
||
};
|
||
prot.put_Options = prot.asc_putOptions = function (v) {
|
||
this.Options = v;
|
||
};
|
||
prot.get_CallbackUrl = prot.asc_getCallbackUrl = function () {
|
||
return this.CallbackUrl;
|
||
};
|
||
prot.put_CallbackUrl = prot.asc_putCallbackUrl = function (v) {
|
||
this.CallbackUrl = v;
|
||
};
|
||
prot.get_TemplateReplacement = prot.asc_getTemplateReplacement = function () {
|
||
return this.TemplateReplacement;
|
||
};
|
||
prot.put_TemplateReplacement = prot.asc_putTemplateReplacement = function (v) {
|
||
this.TemplateReplacement = v;
|
||
};
|
||
prot.get_UserInfo = prot.asc_getUserInfo = function () {
|
||
return this.UserInfo;
|
||
};
|
||
prot.put_UserInfo = prot.asc_putUserInfo = function (v) {
|
||
this.UserInfo = v;
|
||
};
|
||
prot.get_Mode = prot.asc_getMode = function () {
|
||
return this.Mode;
|
||
};
|
||
prot.put_Mode = prot.asc_putMode = function (v) {
|
||
this.Mode = v;
|
||
};
|
||
prot.get_Permissions = prot.asc_getPermissions = function () {
|
||
return this.Permissions;
|
||
};
|
||
prot.put_Permissions = prot.asc_putPermissions = function (v) {
|
||
this.Permissions = v;
|
||
};
|
||
prot.get_Lang = prot.asc_getLang = function () {
|
||
return this.Lang;
|
||
};
|
||
prot.put_Lang = prot.asc_putLang = function (v) {
|
||
this.Lang = v;
|
||
};
|
||
prot.get_Encrypted = prot.asc_getEncrypted = function () {
|
||
return this.Encrypted;
|
||
};
|
||
prot.put_Encrypted = prot.asc_putEncrypted = function (v) {
|
||
this.Encrypted = v;
|
||
};
|
||
|
||
function COpenProgress() {
|
||
this.Type = Asc.c_oAscAsyncAction.Open;
|
||
|
||
this.FontsCount = 0;
|
||
this.CurrentFont = 0;
|
||
|
||
this.ImagesCount = 0;
|
||
this.CurrentImage = 0;
|
||
}
|
||
|
||
COpenProgress.prototype.asc_getType = function () {
|
||
return this.Type
|
||
};
|
||
COpenProgress.prototype.asc_getFontsCount = function () {
|
||
return this.FontsCount
|
||
};
|
||
COpenProgress.prototype.asc_getCurrentFont = function () {
|
||
return this.CurrentFont
|
||
};
|
||
COpenProgress.prototype.asc_getImagesCount = function () {
|
||
return this.ImagesCount
|
||
};
|
||
COpenProgress.prototype.asc_getCurrentImage = function () {
|
||
return this.CurrentImage
|
||
};
|
||
|
||
function CErrorData() {
|
||
this.Value = 0;
|
||
}
|
||
|
||
CErrorData.prototype.put_Value = function (v) {
|
||
this.Value = v;
|
||
};
|
||
CErrorData.prototype.get_Value = function () {
|
||
return this.Value;
|
||
};
|
||
|
||
function CAscMathType() {
|
||
this.Id = 0;
|
||
|
||
this.X = 0;
|
||
this.Y = 0;
|
||
}
|
||
|
||
CAscMathType.prototype.get_Id = function () {
|
||
return this.Id;
|
||
};
|
||
CAscMathType.prototype.get_X = function () {
|
||
return this.X;
|
||
};
|
||
CAscMathType.prototype.get_Y = function () {
|
||
return this.Y;
|
||
};
|
||
|
||
function CAscMathCategory() {
|
||
this.Id = 0;
|
||
this.Data = [];
|
||
|
||
this.W = 0;
|
||
this.H = 0;
|
||
}
|
||
|
||
CAscMathCategory.prototype.get_Id = function () {
|
||
return this.Id;
|
||
};
|
||
CAscMathCategory.prototype.get_Data = function () {
|
||
return this.Data;
|
||
};
|
||
CAscMathCategory.prototype.get_W = function () {
|
||
return this.W;
|
||
};
|
||
CAscMathCategory.prototype.get_H = function () {
|
||
return this.H;
|
||
};
|
||
CAscMathCategory.prototype.private_Sort = function () {
|
||
this.Data.sort(function (a, b) {
|
||
return a.Id - b.Id;
|
||
});
|
||
};
|
||
|
||
function CStyleImage(name, type, image, uiPriority) {
|
||
this.Name = name;
|
||
this.type = type;
|
||
this.image = image;
|
||
this.uiPriority = uiPriority;
|
||
}
|
||
|
||
CStyleImage.prototype.asc_getName = CStyleImage.prototype.get_Name = function () {
|
||
return this.Name;
|
||
};
|
||
CStyleImage.prototype.asc_getType = CStyleImage.prototype.get_Type = function () {
|
||
return this.type;
|
||
};
|
||
CStyleImage.prototype.asc_getImage = function () {
|
||
return this.image;
|
||
};
|
||
|
||
|
||
/** @constructor */
|
||
function asc_CSpellCheckProperty(Word, Checked, Variants, ParaId, Element)
|
||
{
|
||
this.Word = Word;
|
||
this.Checked = Checked;
|
||
this.Variants = Variants;
|
||
|
||
this.ParaId = ParaId;
|
||
this.Element = Element;
|
||
}
|
||
|
||
asc_CSpellCheckProperty.prototype.get_Word = function()
|
||
{
|
||
return this.Word;
|
||
};
|
||
asc_CSpellCheckProperty.prototype.get_Checked = function()
|
||
{
|
||
return this.Checked;
|
||
};
|
||
asc_CSpellCheckProperty.prototype.get_Variants = function()
|
||
{
|
||
return this.Variants;
|
||
};
|
||
|
||
function CWatermarkOnDraw(htmlContent)
|
||
{
|
||
// example content:
|
||
/*
|
||
{
|
||
"type" : "rect",
|
||
"width" : 100, // mm
|
||
"height" : 100, // mm
|
||
"rotate" : -45, // degrees
|
||
"margins" : [ 10, 10, 10, 10 ], // text margins
|
||
"fill" : [255, 0, 0], // [] => none
|
||
"stroke-width" : 1, // mm
|
||
"stroke" : [0, 0, 255], // [] => none
|
||
"align" : 1, // vertical text align (4 - top, 1 - center, 0 - bottom)
|
||
|
||
"paragraphs" : [
|
||
{
|
||
"align" : 4, // horizontal text align [1 - left, 2 - center, 0 - right, 3 - justify]
|
||
"fill" : [255, 0, 0], // paragraph highlight. [] => none
|
||
"linespacing" : 0,
|
||
|
||
"runs" : [
|
||
{
|
||
"text" : "some text",
|
||
"fill" : [255, 255, 255], // text highlight. [] => none,
|
||
"font-family" : "Arial",
|
||
"font-size" : 24, // pt
|
||
"bold" : true,
|
||
"italic" : false,
|
||
"strikeout" : "false",
|
||
"underline" : "false"
|
||
},
|
||
{
|
||
"text" : "<%br%>"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
*/
|
||
|
||
this.inputContentSrc = htmlContent;
|
||
this.replaceMap = {};
|
||
|
||
this.image = null;
|
||
this.imageBase64 = undefined;
|
||
this.width = 0;
|
||
this.height = 0;
|
||
|
||
this.transparent = 0.3;
|
||
this.zoom = 1;
|
||
this.calculatezoom = -1;
|
||
|
||
this.CheckParams = function(api)
|
||
{
|
||
this.replaceMap["%user_name%"] = api.User.userName;
|
||
};
|
||
|
||
this.Generate = function()
|
||
{
|
||
if (this.zoom == this.calculatezoom)
|
||
return;
|
||
|
||
this.calculatezoom = this.zoom;
|
||
|
||
var content = this.inputContentSrc;
|
||
for (var key in this.replaceMap)
|
||
{
|
||
if (!this.replaceMap.hasOwnProperty(key))
|
||
continue;
|
||
|
||
content = content.replace(new RegExp(key, 'g'), this.replaceMap[key]);
|
||
}
|
||
|
||
var _obj = {};
|
||
try
|
||
{
|
||
var _objTmp = JSON.parse(content);
|
||
_obj = _objTmp;
|
||
}
|
||
catch (err)
|
||
{
|
||
|
||
}
|
||
|
||
this.transparent = (undefined == _obj['transparent']) ? 0.3 : _obj['transparent'];
|
||
|
||
this.privateGenerateShape(_obj);
|
||
|
||
//var _data = this.image.toDataURL("image/png");
|
||
//console.log(_data);
|
||
};
|
||
|
||
this.Draw = function(context, dw_or_dx, dh_or_dy, dw, dh)
|
||
{
|
||
if (!this.image)
|
||
return;
|
||
|
||
var x = 0;
|
||
var y = 0;
|
||
|
||
if (undefined == dw)
|
||
{
|
||
x = (dw_or_dx - this.width) >> 1;
|
||
y = (dh_or_dy - this.height) >> 1;
|
||
}
|
||
else
|
||
{
|
||
x = (dw_or_dx + ((dw - this.width) / 2)) >> 0;
|
||
y = (dh_or_dy + ((dh - this.height) / 2)) >> 0;
|
||
}
|
||
var oldGlobalAlpha = context.globalAlpha;
|
||
context.globalAlpha = this.transparent;
|
||
context.drawImage(this.image, x, y);
|
||
context.globalAlpha = oldGlobalAlpha;
|
||
};
|
||
|
||
this.StartRenderer = function()
|
||
{
|
||
var canvasTransparent = document.createElement("canvas");
|
||
canvasTransparent.width = this.image.width;
|
||
canvasTransparent.height = this.image.height;
|
||
var ctx = canvasTransparent.getContext("2d");
|
||
ctx.globalAlpha = this.transparent;
|
||
ctx.drawImage(this.image, 0, 0);
|
||
this.imageBase64 = canvasTransparent.toDataURL("image/png");
|
||
canvasTransparent = null;
|
||
};
|
||
this.EndRenderer = function()
|
||
{
|
||
delete this.imageBase64;
|
||
this.imageBase64 = undefined;
|
||
};
|
||
this.DrawOnRenderer = function(renderer, w, h)
|
||
{
|
||
var wMM = this.width * g_dKoef_pix_to_mm / this.zoom;
|
||
var hMM = this.height * g_dKoef_pix_to_mm / this.zoom;
|
||
var x = (w - wMM) / 2;
|
||
var y = (h - hMM) / 2;
|
||
|
||
renderer.UseOriginImageUrl = true;
|
||
renderer.drawImage(this.imageBase64, x, y, wMM, hMM);
|
||
renderer.UseOriginImageUrl = false;
|
||
};
|
||
|
||
this.privateGenerateShape = function(obj)
|
||
{
|
||
AscFormat.ExecuteNoHistory(function(obj) {
|
||
|
||
var oShape = new AscFormat.CShape();
|
||
var bWord = false;
|
||
var oApi = Asc['editor'] || editor;
|
||
if(!oApi){
|
||
return null;
|
||
}
|
||
switch(oApi.getEditorId()){
|
||
case AscCommon.c_oEditorId.Word:{
|
||
oShape.setWordShape(true);
|
||
bWord = true;
|
||
break;
|
||
}
|
||
case AscCommon.c_oEditorId.Presentation:{
|
||
oShape.setWordShape(false);
|
||
oShape.setParent(oApi.WordControl.m_oLogicDocument.Slides[oApi.WordControl.m_oLogicDocument.CurPage]);
|
||
break;
|
||
}
|
||
case AscCommon.c_oEditorId.Spreadsheet:{
|
||
oShape.setWordShape(false);
|
||
oShape.setWorksheet(oApi.wb.getWorksheet().model);
|
||
break;
|
||
}
|
||
}
|
||
|
||
oShape.setBDeleted(false);
|
||
oShape.spPr = new AscFormat.CSpPr();
|
||
oShape.spPr.setParent(oShape);
|
||
oShape.spPr.setXfrm(new AscFormat.CXfrm());
|
||
oShape.spPr.xfrm.setParent(oShape.spPr);
|
||
oShape.spPr.xfrm.setOffX(0);
|
||
oShape.spPr.xfrm.setOffY(0);
|
||
oShape.spPr.xfrm.setExtX(obj['width']);
|
||
oShape.spPr.xfrm.setExtY(obj['height']);
|
||
oShape.spPr.xfrm.setRot(AscFormat.normalizeRotate(obj['rotate'] ? (obj['rotate'] * Math.PI / 180) : 0));
|
||
oShape.spPr.setGeometry(AscFormat.CreateGeometry(obj['type']));
|
||
if(obj['fill'] && obj['fill'].length === 3){
|
||
oShape.spPr.setFill(AscFormat.CreteSolidFillRGB(obj['fill'][0], obj['fill'][1], obj['fill'][2]));
|
||
}
|
||
if(AscFormat.isRealNumber(obj['stroke-width']) || Array.isArray(obj['stroke']) && obj['stroke'].length === 3){
|
||
var oUnifill;
|
||
if(Array.isArray(obj['stroke']) && obj['stroke'].length === 3){
|
||
oUnifill = AscFormat.CreteSolidFillRGB(obj['stroke'][0], obj['stroke'][1], obj['stroke'][2]);
|
||
}
|
||
else{
|
||
oUnifill = AscFormat.CreteSolidFillRGB(0, 0, 0);
|
||
}
|
||
oShape.spPr.setLn(AscFormat.CreatePenFromParams(oUnifill, undefined, undefined, undefined, undefined, AscFormat.isRealNumber(obj['stroke-width']) ? obj['stroke-width'] : 12700.0/36000.0))
|
||
}
|
||
|
||
if(bWord){
|
||
oShape.createTextBoxContent();
|
||
}
|
||
else{
|
||
oShape.createTextBody();
|
||
}
|
||
var align = obj['align'];
|
||
if(undefined != align){
|
||
oShape.setVerticalAlign(align);
|
||
}
|
||
|
||
if(Array.isArray(obj['margins']) && obj['margins'].length === 4){
|
||
oShape.setPaddings({Left: obj['margins'][0], Top: obj['margins'][1], Right: obj['margins'][2], Bottom: obj['margins'][3]});
|
||
}
|
||
var oContent = oShape.getDocContent();
|
||
var aParagraphsS = obj['paragraphs'];
|
||
if(aParagraphsS.length > 0){
|
||
oContent.Content.length = 0;
|
||
}
|
||
for(var i = 0; i < aParagraphsS.length; ++i){
|
||
var oCurParS = aParagraphsS[i];
|
||
var oNewParagraph = new Paragraph(oContent.DrawingDocument, oContent, !bWord);
|
||
if(AscFormat.isRealNumber(oCurParS['align'])){
|
||
oNewParagraph.Set_Align(oCurParS['align'])
|
||
}
|
||
if(Array.isArray(oCurParS['fill']) && oCurParS['fill'].length === 3){
|
||
var oShd = new CDocumentShd();
|
||
oShd.Value = Asc.c_oAscShdClear;
|
||
oShd.Color.r = oCurParS['fill'][0];
|
||
oShd.Color.g = oCurParS['fill'][1];
|
||
oShd.Color.b = oCurParS['fill'][2];
|
||
oNewParagraph.Set_Shd(oShd, true);
|
||
}
|
||
if(AscFormat.isRealNumber(oCurParS['linespacing'])){
|
||
oNewParagraph.Set_Spacing({Line: oCurParS['linespacing'], LineRule: Asc.linerule_Auto}, true);
|
||
}
|
||
var aRunsS = oCurParS['runs'];
|
||
for(var j = 0; j < aRunsS.length; ++j){
|
||
var oRunS = aRunsS[j];
|
||
var oRun = new AscCommonWord.ParaRun(oNewParagraph, false);
|
||
if(Array.isArray(oRunS['fill']) && oRunS['fill'].length === 3){
|
||
oRun.Set_Unifill(AscFormat.CreteSolidFillRGB(oRunS['fill'][0], oRunS['fill'][1], oRunS['fill'][2]));
|
||
}
|
||
if(oRunS['font-family']){
|
||
oRun.Set_RFonts_Ascii({Name : oRunS['font-family'], Index : -1});
|
||
oRun.Set_RFonts_CS({Name : oRunS['font-family'], Index : -1});
|
||
oRun.Set_RFonts_EastAsia({Name : oRunS['font-family'], Index : -1});
|
||
oRun.Set_RFonts_HAnsi({Name : oRunS['font-family'], Index : -1});
|
||
}
|
||
if(oRunS['font-size']){
|
||
oRun.Set_FontSize(oRunS['font-size']);
|
||
}
|
||
oRun.Set_Bold(oRunS['bold'] === true);
|
||
oRun.Set_Italic(oRunS['italic'] === true);
|
||
oRun.Set_Strikeout(oRunS['strikeout'] === true);
|
||
oRun.Set_Underline(oRunS['underline'] === true);
|
||
|
||
var sCustomText = oRunS['text'];
|
||
if(sCustomText === "<%br%>"){
|
||
oRun.AddToContent(0, new ParaNewLine(break_Line), false);
|
||
}
|
||
else{
|
||
oRun.AddText(sCustomText);
|
||
}
|
||
|
||
oNewParagraph.Internal_Content_Add(i, oRun, false);
|
||
}
|
||
oContent.Internal_Content_Add(oContent.Content.length, oNewParagraph);
|
||
}
|
||
|
||
oShape.recalculate();
|
||
if (oShape.bWordShape)
|
||
{
|
||
oShape.recalculateText();
|
||
}
|
||
|
||
var oldShowParaMarks;
|
||
if (window.editor)
|
||
{
|
||
oldShowParaMarks = editor.ShowParaMarks;
|
||
editor.ShowParaMarks = false;
|
||
}
|
||
|
||
AscCommon.IsShapeToImageConverter = true;
|
||
var _bounds_cheker = new AscFormat.CSlideBoundsChecker();
|
||
|
||
var w_mm = 210;
|
||
var h_mm = 297;
|
||
var w_px = AscCommon.AscBrowser.convertToRetinaValue(w_mm * g_dKoef_mm_to_pix * this.zoom, true);
|
||
var h_px = AscCommon.AscBrowser.convertToRetinaValue(h_mm * g_dKoef_mm_to_pix * this.zoom, true);
|
||
|
||
_bounds_cheker.init(w_px, h_px, w_mm, h_mm);
|
||
_bounds_cheker.transform(1,0,0,1,0,0);
|
||
|
||
_bounds_cheker.AutoCheckLineWidth = true;
|
||
_bounds_cheker.CheckLineWidth(oShape);
|
||
oShape.draw(_bounds_cheker, 0);
|
||
_bounds_cheker.CorrectBounds2();
|
||
|
||
var _need_pix_width = _bounds_cheker.Bounds.max_x - _bounds_cheker.Bounds.min_x + 1;
|
||
var _need_pix_height = _bounds_cheker.Bounds.max_y - _bounds_cheker.Bounds.min_y + 1;
|
||
|
||
if (_need_pix_width <= 0 || _need_pix_height <= 0)
|
||
return;
|
||
|
||
if (!this.image)
|
||
this.image = document.createElement("canvas");
|
||
|
||
this.image.width = _need_pix_width;
|
||
this.image.height = _need_pix_height;
|
||
this.width = _need_pix_width;
|
||
this.height = _need_pix_height;
|
||
|
||
var _ctx = this.image.getContext('2d');
|
||
|
||
var g = new AscCommon.CGraphics();
|
||
g.init(_ctx, w_px, h_px, w_mm, h_mm);
|
||
g.m_oFontManager = AscCommon.g_fontManager;
|
||
|
||
g.m_oCoordTransform.tx = -_bounds_cheker.Bounds.min_x;
|
||
g.m_oCoordTransform.ty = -_bounds_cheker.Bounds.min_y;
|
||
g.transform(1,0,0,1,0,0);
|
||
|
||
oShape.draw(g, 0);
|
||
|
||
AscCommon.IsShapeToImageConverter = false;
|
||
|
||
if (window.editor)
|
||
{
|
||
window.editor.ShowParaMarks = oldShowParaMarks;
|
||
}
|
||
|
||
}, this, [obj]);
|
||
};
|
||
}
|
||
window.TEST_WATERMARK_STRING = "\
|
||
{\
|
||
\"transparent\" : 0.3,\
|
||
\"type\" : \"rect\",\
|
||
\"width\" : 100,\
|
||
\"height\" : 100,\
|
||
\"rotate\" : -45,\
|
||
\"margins\" : [ 10, 10, 10, 10 ],\
|
||
\"fill\" : [255, 0, 0],\
|
||
\"stroke-width\" : 1,\
|
||
\"stroke\" : [0, 0, 255],\
|
||
\"align\" : 1,\
|
||
\
|
||
\"paragraphs\" : [\
|
||
{\
|
||
\"align\" : 2,\
|
||
\"fill\" : [255, 0, 0],\
|
||
\"linespacing\" : 1,\
|
||
\
|
||
\"runs\" : [\
|
||
{\
|
||
\"text\" : \"Do not steal, %user_name%!\",\
|
||
\"fill\" : [0, 0, 0],\
|
||
\"font-family\" : \"Arial\",\
|
||
\"font-size\" : 40,\
|
||
\"bold\" : true,\
|
||
\"italic\" : false,\
|
||
\"strikeout\" : false,\
|
||
\"underline\" : false\
|
||
},\
|
||
{\
|
||
\"text\" : \"<%br%>\"\
|
||
}\
|
||
]\
|
||
}\
|
||
]\
|
||
}";
|
||
|
||
// ----------------------------- plugins ------------------------------- //
|
||
function CPluginVariation()
|
||
{
|
||
this.description = "";
|
||
this.url = "";
|
||
this.baseUrl = "";
|
||
this.index = 0; // сверху не выставляем. оттуда в каком порядке пришли - в таком порядке и работают
|
||
|
||
this.icons = ["1x", "2x"];
|
||
this.isViewer = false;
|
||
this.EditorsSupport = ["word", "cell", "slide"];
|
||
|
||
this.isVisual = false; // визуальный ли
|
||
this.isModal = false; // модальное ли окно (используется только для визуального)
|
||
this.isInsideMode = false; // отрисовка не в окне а внутри редактора (в панели) (используется только для визуального немодального)
|
||
this.isCustomWindow = false; // ued only if this.isModal == true
|
||
|
||
this.initDataType = EPluginDataType.none;
|
||
this.initData = "";
|
||
|
||
this.isUpdateOleOnResize = false;
|
||
|
||
this.buttons = [{"text" : "Ok", "primary" : true}, {"text" : "Cancel", "primary" : false}];
|
||
|
||
this.size = undefined;
|
||
this.initOnSelectionChanged = undefined;
|
||
|
||
this.events = [];
|
||
this.eventsMap = {};
|
||
}
|
||
|
||
CPluginVariation.prototype["get_Description"] = function()
|
||
{
|
||
return this.description;
|
||
};
|
||
CPluginVariation.prototype["set_Description"] = function(value)
|
||
{
|
||
this.description = value;
|
||
};
|
||
CPluginVariation.prototype["get_Url"] = function()
|
||
{
|
||
return this.url;
|
||
};
|
||
CPluginVariation.prototype["set_Url"] = function(value)
|
||
{
|
||
this.url = value;
|
||
};
|
||
|
||
CPluginVariation.prototype["get_Icons"] = function()
|
||
{
|
||
return this.icons;
|
||
};
|
||
CPluginVariation.prototype["set_Icons"] = function(value)
|
||
{
|
||
this.icons = value;
|
||
};
|
||
|
||
CPluginVariation.prototype["get_Viewer"] = function()
|
||
{
|
||
return this.isViewer;
|
||
};
|
||
CPluginVariation.prototype["set_Viewer"] = function(value)
|
||
{
|
||
this.isViewer = value;
|
||
};
|
||
CPluginVariation.prototype["get_EditorsSupport"] = function()
|
||
{
|
||
return this.EditorsSupport;
|
||
};
|
||
CPluginVariation.prototype["set_EditorsSupport"] = function(value)
|
||
{
|
||
this.EditorsSupport = value;
|
||
};
|
||
|
||
|
||
CPluginVariation.prototype["get_Visual"] = function()
|
||
{
|
||
return this.isVisual;
|
||
};
|
||
CPluginVariation.prototype["set_Visual"] = function(value)
|
||
{
|
||
this.isVisual = value;
|
||
};
|
||
CPluginVariation.prototype["get_Modal"] = function()
|
||
{
|
||
return this.isModal;
|
||
};
|
||
CPluginVariation.prototype["set_Modal"] = function(value)
|
||
{
|
||
this.isModal = value;
|
||
};
|
||
CPluginVariation.prototype["get_InsideMode"] = function()
|
||
{
|
||
return this.isInsideMode;
|
||
};
|
||
CPluginVariation.prototype["set_InsideMode"] = function(value)
|
||
{
|
||
this.isInsideMode = value;
|
||
};
|
||
CPluginVariation.prototype["get_CustomWindow"] = function()
|
||
{
|
||
return this.isCustomWindow;
|
||
};
|
||
CPluginVariation.prototype["set_CustomWindow"] = function(value)
|
||
{
|
||
this.isCustomWindow = value;
|
||
};
|
||
|
||
CPluginVariation.prototype["get_InitDataType"] = function()
|
||
{
|
||
return this.initDataType;
|
||
};
|
||
CPluginVariation.prototype["set_InitDataType"] = function(value)
|
||
{
|
||
this.initDataType = value;
|
||
};
|
||
CPluginVariation.prototype["get_InitData"] = function()
|
||
{
|
||
return this.initData;
|
||
};
|
||
CPluginVariation.prototype["set_InitData"] = function(value)
|
||
{
|
||
this.initData = value;
|
||
};
|
||
|
||
CPluginVariation.prototype["get_UpdateOleOnResize"] = function()
|
||
{
|
||
return this.isUpdateOleOnResize;
|
||
};
|
||
CPluginVariation.prototype["set_UpdateOleOnResize"] = function(value)
|
||
{
|
||
this.isUpdateOleOnResize = value;
|
||
};
|
||
CPluginVariation.prototype["get_Buttons"] = function()
|
||
{
|
||
return this.buttons;
|
||
};
|
||
CPluginVariation.prototype["set_Buttons"] = function(value)
|
||
{
|
||
this.buttons = value;
|
||
};
|
||
CPluginVariation.prototype["get_Size"] = function()
|
||
{
|
||
return this.size;
|
||
};
|
||
CPluginVariation.prototype["set_Size"] = function(value)
|
||
{
|
||
this.size = value;
|
||
};
|
||
CPluginVariation.prototype["get_InitOnSelectionChanged"] = function()
|
||
{
|
||
return this.initOnSelectionChanged;
|
||
};
|
||
CPluginVariation.prototype["set_InitOnSelectionChanged"] = function(value)
|
||
{
|
||
this.initOnSelectionChanged = value;
|
||
};
|
||
CPluginVariation.prototype["get_Events"] = function()
|
||
{
|
||
return this.events;
|
||
};
|
||
CPluginVariation.prototype["set_Events"] = function(value)
|
||
{
|
||
if (!value)
|
||
return;
|
||
|
||
this.events = value.slice(0, value.length);
|
||
this.eventsMap = {};
|
||
for (var i = 0; i < this.events.length; i++)
|
||
this.eventsMap[this.events[i]] = true;
|
||
};
|
||
|
||
CPluginVariation.prototype["serialize"] = function()
|
||
{
|
||
var _object = {};
|
||
_object["description"] = this.description;
|
||
_object["url"] = this.url;
|
||
_object["index"] = this.index;
|
||
|
||
_object["icons"] = this.icons;
|
||
_object["isViewer"] = this.isViewer;
|
||
_object["EditorsSupport"] = this.EditorsSupport;
|
||
|
||
_object["isVisual"] = this.isVisual;
|
||
_object["isModal"] = this.isModal;
|
||
_object["isInsideMode"] = this.isInsideMode;
|
||
_object["isCustomWindow"] = this.isCustomWindow;
|
||
|
||
_object["initDataType"] = this.initDataType;
|
||
_object["initData"] = this.initData;
|
||
|
||
_object["isUpdateOleOnResize"] = this.isUpdateOleOnResize;
|
||
|
||
_object["buttons"] = this.buttons;
|
||
|
||
_object["size"] = this.size;
|
||
_object["initOnSelectionChanged"] = this.initOnSelectionChanged;
|
||
|
||
return _object;
|
||
};
|
||
CPluginVariation.prototype["deserialize"] = function(_object)
|
||
{
|
||
this.description = (_object["description"] != null) ? _object["description"] : this.description;
|
||
this.url = (_object["url"] != null) ? _object["url"] : this.url;
|
||
this.index = (_object["index"] != null) ? _object["index"] : this.index;
|
||
|
||
this.icons = (_object["icons"] != null) ? _object["icons"] : this.icons;
|
||
this.isViewer = (_object["isViewer"] != null) ? _object["isViewer"] : this.isViewer;
|
||
this.EditorsSupport = (_object["EditorsSupport"] != null) ? _object["EditorsSupport"] : this.EditorsSupport;
|
||
|
||
this.isVisual = (_object["isVisual"] != null) ? _object["isVisual"] : this.isVisual;
|
||
this.isModal = (_object["isModal"] != null) ? _object["isModal"] : this.isModal;
|
||
this.isInsideMode = (_object["isInsideMode"] != null) ? _object["isInsideMode"] : this.isInsideMode;
|
||
this.isCustomWindow = (_object["isCustomWindow"] != null) ? _object["isCustomWindow"] : this.isCustomWindow;
|
||
|
||
this.initDataType = (_object["initDataType"] != null) ? _object["initDataType"] : this.initDataType;
|
||
this.initData = (_object["initData"] != null) ? _object["initData"] : this.initData;
|
||
|
||
this.isUpdateOleOnResize = (_object["isUpdateOleOnResize"] != null) ? _object["isUpdateOleOnResize"] : this.isUpdateOleOnResize;
|
||
|
||
this.buttons = (_object["buttons"] != null) ? _object["buttons"] : this.buttons;
|
||
|
||
this.size = (_object["size"] != null) ? _object["size"] : this.size;
|
||
this.initOnSelectionChanged = (_object["initOnSelectionChanged"] != null) ? _object["initOnSelectionChanged"] : this.initOnSelectionChanged;
|
||
};
|
||
|
||
function CPlugin()
|
||
{
|
||
this.name = "";
|
||
this.guid = "";
|
||
this.baseUrl = "";
|
||
|
||
this.variations = [];
|
||
}
|
||
|
||
CPlugin.prototype["get_Name"] = function()
|
||
{
|
||
return this.name;
|
||
};
|
||
CPlugin.prototype["set_Name"] = function(value)
|
||
{
|
||
this.name = value;
|
||
};
|
||
CPlugin.prototype["get_Guid"] = function()
|
||
{
|
||
return this.guid;
|
||
};
|
||
CPlugin.prototype["set_Guid"] = function(value)
|
||
{
|
||
this.guid = value;
|
||
};
|
||
CPlugin.prototype["get_BaseUrl"] = function()
|
||
{
|
||
return this.baseUrl;
|
||
};
|
||
CPlugin.prototype["set_BaseUrl"] = function(value)
|
||
{
|
||
this.baseUrl = value;
|
||
};
|
||
|
||
CPlugin.prototype["get_Variations"] = function()
|
||
{
|
||
return this.variations;
|
||
};
|
||
CPlugin.prototype["set_Variations"] = function(value)
|
||
{
|
||
this.variations = value;
|
||
};
|
||
|
||
CPlugin.prototype["serialize"] = function()
|
||
{
|
||
var _object = {};
|
||
_object["name"] = this.name;
|
||
_object["guid"] = this.guid;
|
||
_object["baseUrl"] = this.baseUrl;
|
||
_object["variations"] = [];
|
||
for (var i = 0; i < this.variations.length; i++)
|
||
{
|
||
_object["variations"].push(this.variations[i].serialize());
|
||
}
|
||
return _object;
|
||
};
|
||
CPlugin.prototype["deserialize"] = function(_object)
|
||
{
|
||
this.name = (_object["name"] != null) ? _object["name"] : this.name;
|
||
this.guid = (_object["guid"] != null) ? _object["guid"] : this.guid;
|
||
this.baseUrl = (_object["baseUrl"] != null) ? _object["baseUrl"] : this.baseUrl;
|
||
this.variations = [];
|
||
for (var i = 0; i < _object["variations"].length; i++)
|
||
{
|
||
var _variation = new CPluginVariation();
|
||
_variation["deserialize"](_object["variations"][i]);
|
||
this.variations.push(_variation);
|
||
}
|
||
};
|
||
|
||
/*
|
||
* Export
|
||
* -----------------------------------------------------------------------------
|
||
*/
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['Asc'] = window['Asc'] || {};
|
||
|
||
window['Asc']['c_oAscArrUserColors'] = window['Asc'].c_oAscArrUserColors = c_oAscArrUserColors;
|
||
|
||
window["AscCommon"].CreateAscColorCustom = CreateAscColorCustom;
|
||
window["AscCommon"].CreateAscColor = CreateAscColor;
|
||
window["AscCommon"].CreateGUID = CreateGUID;
|
||
|
||
window['Asc']['c_oLicenseResult'] = window['Asc'].c_oLicenseResult = c_oLicenseResult;
|
||
prot = c_oLicenseResult;
|
||
prot['Error'] = prot.Error;
|
||
prot['Expired'] = prot.Expired;
|
||
prot['Success'] = prot.Success;
|
||
prot['UnknownUser'] = prot.UnknownUser;
|
||
prot['Connections'] = prot.Connections;
|
||
prot['ExpiredTrial'] = prot.ExpiredTrial;
|
||
prot['SuccessLimit'] = prot.SuccessLimit;
|
||
prot['UsersCount'] = prot.UsersCount;
|
||
prot['ConnectionsOS'] = prot.ConnectionsOS;
|
||
prot['UsersCountOS'] = prot.UsersCountOS;
|
||
|
||
window['Asc']['c_oRights'] = window['Asc'].c_oRights = c_oRights;
|
||
prot = c_oRights;
|
||
prot['None'] = prot.None;
|
||
prot['Edit'] = prot.Edit;
|
||
prot['Review'] = prot.Review;
|
||
prot['Comment'] = prot.Comment;
|
||
prot['View'] = prot.View;
|
||
|
||
window['Asc']['c_oLicenseMode'] = window['Asc'].c_oLicenseMode = c_oLicenseMode;
|
||
prot = c_oLicenseMode;
|
||
prot['None'] = prot.None;
|
||
prot['Trial'] = prot.Trial;
|
||
prot['Developer'] = prot.Developer;
|
||
|
||
window["Asc"]["EPluginDataType"] = window["Asc"].EPluginDataType = EPluginDataType;
|
||
prot = EPluginDataType;
|
||
prot['none'] = prot.none;
|
||
prot['text'] = prot.text;
|
||
prot['ole'] = prot.ole;
|
||
prot['html'] = prot.html;
|
||
|
||
window["AscCommon"]["asc_CSignatureLine"] = window["AscCommon"].asc_CSignatureLine = asc_CSignatureLine;
|
||
prot = asc_CSignatureLine.prototype;
|
||
prot["asc_getId"] = prot.asc_getId;
|
||
prot["asc_setId"] = prot.asc_setId;
|
||
prot["asc_getGuid"] = prot.asc_getGuid;
|
||
prot["asc_setGuid"] = prot.asc_setGuid;
|
||
prot["asc_getSigner1"] = prot.asc_getSigner1;
|
||
prot["asc_setSigner1"] = prot.asc_setSigner1;
|
||
prot["asc_getSigner2"] = prot.asc_getSigner2;
|
||
prot["asc_setSigner2"] = prot.asc_setSigner2;
|
||
prot["asc_getEmail"] = prot.asc_getEmail;
|
||
prot["asc_setEmail"] = prot.asc_setEmail;
|
||
prot["asc_getInstructions"] = prot.asc_getInstructions;
|
||
prot["asc_setInstructions"] = prot.asc_setInstructions;
|
||
prot["asc_getShowDate"] = prot.asc_getShowDate;
|
||
prot["asc_setShowDate"] = prot.asc_setShowDate;
|
||
prot["asc_getValid"] = prot.asc_getValid;
|
||
prot["asc_setValid"] = prot.asc_setValid;
|
||
prot["asc_getDate"] = prot.asc_getDate;
|
||
prot["asc_setDate"] = prot.asc_setDate;
|
||
prot["asc_getVisible"] = prot.asc_getVisible;
|
||
prot["asc_setVisible"] = prot.asc_setVisible;
|
||
prot["asc_getRequested"] = prot.asc_getRequested;
|
||
prot["asc_setRequested"] = prot.asc_setRequested;
|
||
|
||
window["AscCommon"].asc_CAscEditorPermissions = asc_CAscEditorPermissions;
|
||
prot = asc_CAscEditorPermissions.prototype;
|
||
prot["asc_getLicenseType"] = prot.asc_getLicenseType;
|
||
prot["asc_getCanCoAuthoring"] = prot.asc_getCanCoAuthoring;
|
||
prot["asc_getCanReaderMode"] = prot.asc_getCanReaderMode;
|
||
prot["asc_getCanBranding"] = prot.asc_getCanBranding;
|
||
prot["asc_getIsAutosaveEnable"] = prot.asc_getIsAutosaveEnable;
|
||
prot["asc_getAutosaveMinInterval"] = prot.asc_getAutosaveMinInterval;
|
||
prot["asc_getIsAnalyticsEnable"] = prot.asc_getIsAnalyticsEnable;
|
||
prot["asc_getIsLight"] = prot.asc_getIsLight;
|
||
prot["asc_getLicenseMode"] = prot.asc_getLicenseMode;
|
||
prot["asc_getRights"] = prot.asc_getRights;
|
||
prot["asc_getBuildVersion"] = prot.asc_getBuildVersion;
|
||
prot["asc_getBuildNumber"] = prot.asc_getBuildNumber;
|
||
|
||
window["AscCommon"].asc_ValAxisSettings = asc_ValAxisSettings;
|
||
prot = asc_ValAxisSettings.prototype;
|
||
prot["putMinValRule"] = prot.putMinValRule;
|
||
prot["putMinVal"] = prot.putMinVal;
|
||
prot["putMaxValRule"] = prot.putMaxValRule;
|
||
prot["putMaxVal"] = prot.putMaxVal;
|
||
prot["putInvertValOrder"] = prot.putInvertValOrder;
|
||
prot["putLogScale"] = prot.putLogScale;
|
||
prot["putLogBase"] = prot.putLogBase;
|
||
prot["putUnits"] = prot.putUnits;
|
||
prot["putShowUnitsOnChart"] = prot.putShowUnitsOnChart;
|
||
prot["putMajorTickMark"] = prot.putMajorTickMark;
|
||
prot["putMinorTickMark"] = prot.putMinorTickMark;
|
||
prot["putTickLabelsPos"] = prot.putTickLabelsPos;
|
||
prot["putCrossesRule"] = prot.putCrossesRule;
|
||
prot["putCrosses"] = prot.putCrosses;
|
||
prot["putDispUnitsRule"] = prot.putDispUnitsRule;
|
||
prot["getDispUnitsRule"] = prot.getDispUnitsRule;
|
||
prot["putAxisType"] = prot.putAxisType;
|
||
prot["getAxisType"] = prot.getAxisType;
|
||
prot["getMinValRule"] = prot.getMinValRule;
|
||
prot["getMinVal"] = prot.getMinVal;
|
||
prot["getMaxValRule"] = prot.getMaxValRule;
|
||
prot["getMaxVal"] = prot.getMaxVal;
|
||
prot["getInvertValOrder"] = prot.getInvertValOrder;
|
||
prot["getLogScale"] = prot.getLogScale;
|
||
prot["getLogBase"] = prot.getLogBase;
|
||
prot["getUnits"] = prot.getUnits;
|
||
prot["getShowUnitsOnChart"] = prot.getShowUnitsOnChart;
|
||
prot["getMajorTickMark"] = prot.getMajorTickMark;
|
||
prot["getMinorTickMark"] = prot.getMinorTickMark;
|
||
prot["getTickLabelsPos"] = prot.getTickLabelsPos;
|
||
prot["getCrossesRule"] = prot.getCrossesRule;
|
||
prot["getCrosses"] = prot.getCrosses;
|
||
prot["setDefault"] = prot.setDefault;
|
||
|
||
window["AscCommon"].asc_CatAxisSettings = asc_CatAxisSettings;
|
||
prot = asc_CatAxisSettings.prototype;
|
||
prot["putIntervalBetweenTick"] = prot.putIntervalBetweenTick;
|
||
prot["putIntervalBetweenLabelsRule"] = prot.putIntervalBetweenLabelsRule;
|
||
prot["putIntervalBetweenLabels"] = prot.putIntervalBetweenLabels;
|
||
prot["putInvertCatOrder"] = prot.putInvertCatOrder;
|
||
prot["putLabelsAxisDistance"] = prot.putLabelsAxisDistance;
|
||
prot["putMajorTickMark"] = prot.putMajorTickMark;
|
||
prot["putMinorTickMark"] = prot.putMinorTickMark;
|
||
prot["putTickLabelsPos"] = prot.putTickLabelsPos;
|
||
prot["putCrossesRule"] = prot.putCrossesRule;
|
||
prot["putCrosses"] = prot.putCrosses;
|
||
prot["putAxisType"] = prot.putAxisType;
|
||
prot["putLabelsPosition"] = prot.putLabelsPosition;
|
||
prot["putCrossMaxVal"] = prot.putCrossMaxVal;
|
||
prot["putCrossMinVal"] = prot.putCrossMinVal;
|
||
prot["getIntervalBetweenTick"] = prot.getIntervalBetweenTick;
|
||
prot["getIntervalBetweenLabelsRule"] = prot.getIntervalBetweenLabelsRule;
|
||
prot["getIntervalBetweenLabels"] = prot.getIntervalBetweenLabels;
|
||
prot["getInvertCatOrder"] = prot.getInvertCatOrder;
|
||
prot["getLabelsAxisDistance"] = prot.getLabelsAxisDistance;
|
||
prot["getMajorTickMark"] = prot.getMajorTickMark;
|
||
prot["getMinorTickMark"] = prot.getMinorTickMark;
|
||
prot["getTickLabelsPos"] = prot.getTickLabelsPos;
|
||
prot["getCrossesRule"] = prot.getCrossesRule;
|
||
prot["getCrosses"] = prot.getCrosses;
|
||
prot["getAxisType"] = prot.getAxisType;
|
||
prot["getLabelsPosition"] = prot.getLabelsPosition;
|
||
prot["getCrossMaxVal"] = prot.getCrossMaxVal;
|
||
prot["getCrossMinVal"] = prot.getCrossMinVal;
|
||
prot["setDefault"] = prot.setDefault;
|
||
|
||
window["Asc"]["asc_ChartSettings"] = window["Asc"].asc_ChartSettings = asc_ChartSettings;
|
||
prot = asc_ChartSettings.prototype;
|
||
prot["putStyle"] = prot.putStyle;
|
||
prot["putTitle"] = prot.putTitle;
|
||
prot["putRowCols"] = prot.putRowCols;
|
||
prot["putHorAxisLabel"] = prot.putHorAxisLabel;
|
||
prot["putVertAxisLabel"] = prot.putVertAxisLabel;
|
||
prot["putLegendPos"] = prot.putLegendPos;
|
||
prot["putDataLabelsPos"] = prot.putDataLabelsPos;
|
||
prot["putCatAx"] = prot.putCatAx;
|
||
prot["putValAx"] = prot.putValAx;
|
||
prot["getStyle"] = prot.getStyle;
|
||
prot["getTitle"] = prot.getTitle;
|
||
prot["getRowCols"] = prot.getRowCols;
|
||
prot["getHorAxisLabel"] = prot.getHorAxisLabel;
|
||
prot["getVertAxisLabel"] = prot.getVertAxisLabel;
|
||
prot["getLegendPos"] = prot.getLegendPos;
|
||
prot["getDataLabelsPos"] = prot.getDataLabelsPos;
|
||
prot["getHorAx"] = prot.getHorAx;
|
||
prot["getVertAx"] = prot.getVertAx;
|
||
prot["getHorGridLines"] = prot.getHorGridLines;
|
||
prot["putHorGridLines"] = prot.putHorGridLines;
|
||
prot["getVertGridLines"] = prot.getVertGridLines;
|
||
prot["putVertGridLines"] = prot.putVertGridLines;
|
||
prot["getType"] = prot.getType;
|
||
prot["putType"] = prot.putType;
|
||
prot["putShowSerName"] = prot.putShowSerName;
|
||
prot["getShowSerName"] = prot.getShowSerName;
|
||
prot["putShowCatName"] = prot.putShowCatName;
|
||
prot["getShowCatName"] = prot.getShowCatName;
|
||
prot["putShowVal"] = prot.putShowVal;
|
||
prot["getShowVal"] = prot.getShowVal;
|
||
prot["putSeparator"] = prot.putSeparator;
|
||
prot["getSeparator"] = prot.getSeparator;
|
||
prot["putHorAxisProps"] = prot.putHorAxisProps;
|
||
prot["getHorAxisProps"] = prot.getHorAxisProps;
|
||
prot["putVertAxisProps"] = prot.putVertAxisProps;
|
||
prot["getVertAxisProps"] = prot.getVertAxisProps;
|
||
prot["putRange"] = prot.putRange;
|
||
prot["getRange"] = prot.getRange;
|
||
prot["putInColumns"] = prot.putInColumns;
|
||
prot["getInColumns"] = prot.getInColumns;
|
||
prot["putShowMarker"] = prot.putShowMarker;
|
||
prot["getShowMarker"] = prot.getShowMarker;
|
||
prot["putLine"] = prot.putLine;
|
||
prot["getLine"] = prot.getLine;
|
||
prot["putSmooth"] = prot.putSmooth;
|
||
prot["getSmooth"] = prot.getSmooth;
|
||
prot["changeType"] = prot.changeType;
|
||
prot["putShowHorAxis"] = prot.putShowHorAxis;
|
||
prot["getShowHorAxis"] = prot.getShowHorAxis;
|
||
prot["putShowVerAxis"] = prot.putShowVerAxis;
|
||
prot["getShowVerAxis"] = prot.getShowVerAxis;
|
||
|
||
window["AscCommon"].asc_CRect = asc_CRect;
|
||
prot = asc_CRect.prototype;
|
||
prot["asc_getX"] = prot.asc_getX;
|
||
prot["asc_getY"] = prot.asc_getY;
|
||
prot["asc_getWidth"] = prot.asc_getWidth;
|
||
prot["asc_getHeight"] = prot.asc_getHeight;
|
||
|
||
window["AscCommon"].CColor = CColor;
|
||
prot = CColor.prototype;
|
||
prot["getR"] = prot.getR;
|
||
prot["get_r"] = prot.get_r;
|
||
prot["put_r"] = prot.put_r;
|
||
prot["getG"] = prot.getG;
|
||
prot["get_g"] = prot.get_g;
|
||
prot["put_g"] = prot.put_g;
|
||
prot["getB"] = prot.getB;
|
||
prot["get_b"] = prot.get_b;
|
||
prot["put_b"] = prot.put_b;
|
||
prot["getA"] = prot.getA;
|
||
prot["get_hex"] = prot.get_hex;
|
||
|
||
window["Asc"]["asc_CColor"] = window["Asc"].asc_CColor = asc_CColor;
|
||
prot = asc_CColor.prototype;
|
||
prot["get_r"] = prot["asc_getR"] = prot.asc_getR;
|
||
prot["put_r"] = prot["asc_putR"] = prot.asc_putR;
|
||
prot["get_g"] = prot["asc_getG"] = prot.asc_getG;
|
||
prot["put_g"] = prot["asc_putG"] = prot.asc_putG;
|
||
prot["get_b"] = prot["asc_getB"] = prot.asc_getB;
|
||
prot["put_b"] = prot["asc_putB"] = prot.asc_putB;
|
||
prot["get_a"] = prot["asc_getA"] = prot.asc_getA;
|
||
prot["put_a"] = prot["asc_putA"] = prot.asc_putA;
|
||
prot["get_auto"] = prot["asc_getAuto"] = prot.asc_getAuto;
|
||
prot["put_auto"] = prot["asc_putAuto"] = prot.asc_putAuto;
|
||
prot["get_type"] = prot["asc_getType"] = prot.asc_getType;
|
||
prot["put_type"] = prot["asc_putType"] = prot.asc_putType;
|
||
prot["get_value"] = prot["asc_getValue"] = prot.asc_getValue;
|
||
prot["put_value"] = prot["asc_putValue"] = prot.asc_putValue;
|
||
prot["get_hex"] = prot["asc_getHex"] = prot.asc_getHex;
|
||
prot["get_color"] = prot["asc_getColor"] = prot.asc_getColor;
|
||
prot["get_hex"] = prot["asc_getHex"] = prot.asc_getHex;
|
||
|
||
window["Asc"]["asc_CTextBorder"] = window["Asc"].asc_CTextBorder = asc_CTextBorder;
|
||
prot = asc_CTextBorder.prototype;
|
||
prot["get_Color"] = prot["asc_getColor"] = prot.asc_getColor;
|
||
prot["put_Color"] = prot["asc_putColor"] = prot.asc_putColor;
|
||
prot["get_Size"] = prot["asc_getSize"] = prot.asc_getSize;
|
||
prot["put_Size"] = prot["asc_putSize"] = prot.asc_putSize;
|
||
prot["get_Value"] = prot["asc_getValue"] = prot.asc_getValue;
|
||
prot["put_Value"] = prot["asc_putValue"] = prot.asc_putValue;
|
||
prot["get_Space"] = prot["asc_getSpace"] = prot.asc_getSpace;
|
||
prot["put_Space"] = prot["asc_putSpace"] = prot.asc_putSpace;
|
||
prot["get_ForSelectedCells"] = prot["asc_getForSelectedCells"] = prot.asc_getForSelectedCells;
|
||
prot["put_ForSelectedCells"] = prot["asc_putForSelectedCells"] = prot.asc_putForSelectedCells;
|
||
|
||
window["Asc"]["asc_CParagraphBorders"] = asc_CParagraphBorders;
|
||
prot = asc_CParagraphBorders.prototype;
|
||
prot["get_Left"] = prot["asc_getLeft"] = prot.asc_getLeft;
|
||
prot["put_Left"] = prot["asc_putLeft"] = prot.asc_putLeft;
|
||
prot["get_Top"] = prot["asc_getTop"] = prot.asc_getTop;
|
||
prot["put_Top"] = prot["asc_putTop"] = prot.asc_putTop;
|
||
prot["get_Right"] = prot["asc_getRight"] = prot.asc_getRight;
|
||
prot["put_Right"] = prot["asc_putRight"] = prot.asc_putRight;
|
||
prot["get_Bottom"] = prot["asc_getBottom"] = prot.asc_getBottom;
|
||
prot["put_Bottom"] = prot["asc_putBottom"] = prot.asc_putBottom;
|
||
prot["get_Between"] = prot["asc_getBetween"] = prot.asc_getBetween;
|
||
prot["put_Between"] = prot["asc_putBetween"] = prot.asc_putBetween;
|
||
|
||
window["AscCommon"].asc_CListType = asc_CListType;
|
||
prot = asc_CListType.prototype;
|
||
prot["get_ListType"] = prot["asc_getListType"] = prot.asc_getListType;
|
||
prot["get_ListSubType"] = prot["asc_getListSubType"] = prot.asc_getListSubType;
|
||
|
||
window["AscCommon"].asc_CTextFontFamily = asc_CTextFontFamily;
|
||
prot = asc_CTextFontFamily.prototype;
|
||
prot["get_Name"] = prot["asc_getName"] = prot.asc_getName;
|
||
prot["get_Index"] = prot["asc_getIndex"] = prot.asc_getIndex;
|
||
|
||
window["Asc"]["asc_CParagraphTab"] = window["Asc"].asc_CParagraphTab = asc_CParagraphTab;
|
||
prot = asc_CParagraphTab.prototype;
|
||
prot["get_Value"] = prot["asc_getValue"] = prot.asc_getValue;
|
||
prot["put_Value"] = prot["asc_putValue"] = prot.asc_putValue;
|
||
prot["get_Pos"] = prot["asc_getPos"] = prot.asc_getPos;
|
||
prot["put_Pos"] = prot["asc_putPos"] = prot.asc_putPos;
|
||
prot["get_Leader"] = prot["asc_getLeader"] = prot.asc_getLeader;
|
||
prot["put_Leader"] = prot["asc_putLeader"] = prot.asc_putLeader;
|
||
|
||
window["Asc"]["asc_CParagraphTabs"] = window["Asc"].asc_CParagraphTabs = asc_CParagraphTabs;
|
||
prot = asc_CParagraphTabs.prototype;
|
||
prot["get_Count"] = prot["asc_getCount"] = prot.asc_getCount;
|
||
prot["get_Tab"] = prot["asc_getTab"] = prot.asc_getTab;
|
||
prot["add_Tab"] = prot["asc_addTab"] = prot.asc_addTab;
|
||
prot["clear"] = prot.clear = prot["asc_clear"] = prot.asc_clear;
|
||
|
||
window["Asc"]["asc_CParagraphShd"] = window["Asc"].asc_CParagraphShd = asc_CParagraphShd;
|
||
prot = asc_CParagraphShd.prototype;
|
||
prot["get_Value"] = prot["asc_getValue"] = prot.asc_getValue;
|
||
prot["put_Value"] = prot["asc_putValue"] = prot.asc_putValue;
|
||
prot["get_Color"] = prot["asc_getColor"] = prot.asc_getColor;
|
||
prot["put_Color"] = prot["asc_putColor"] = prot.asc_putColor;
|
||
|
||
window["Asc"]["asc_CParagraphFrame"] = window["Asc"].asc_CParagraphFrame = asc_CParagraphFrame;
|
||
prot = asc_CParagraphFrame.prototype;
|
||
prot["asc_getDropCap"] = prot["get_DropCap"] = prot.asc_getDropCap;
|
||
prot["asc_putDropCap"] = prot["put_DropCap"] = prot.asc_putDropCap;
|
||
prot["asc_getH"] = prot["get_H"] = prot.asc_getH;
|
||
prot["asc_putH"] = prot["put_H"] = prot.asc_putH;
|
||
prot["asc_getHAnchor"] = prot["get_HAnchor"] = prot.asc_getHAnchor;
|
||
prot["asc_putHAnchor"] = prot["put_HAnchor"] = prot.asc_putHAnchor;
|
||
prot["asc_getHRule"] = prot["get_HRule"] = prot.asc_getHRule;
|
||
prot["asc_putHRule"] = prot["put_HRule"] = prot.asc_putHRule;
|
||
prot["asc_getHSpace"] = prot["get_HSpace"] = prot.asc_getHSpace;
|
||
prot["asc_putHSpace"] = prot["put_HSpace"] = prot.asc_putHSpace;
|
||
prot["asc_getLines"] = prot["get_Lines"] = prot.asc_getLines;
|
||
prot["asc_putLines"] = prot["put_Lines"] = prot.asc_putLines;
|
||
prot["asc_getVAnchor"] = prot["get_VAnchor"] = prot.asc_getVAnchor;
|
||
prot["asc_putVAnchor"] = prot["put_VAnchor"] = prot.asc_putVAnchor;
|
||
prot["asc_getVSpace"] = prot["get_VSpace"] = prot.asc_getVSpace;
|
||
prot["asc_putVSpace"] = prot["put_VSpace"] = prot.asc_putVSpace;
|
||
prot["asc_getW"] = prot["get_W"] = prot.asc_getW;
|
||
prot["asc_putW"] = prot["put_W"] = prot.asc_putW;
|
||
prot["asc_getWrap"] = prot["get_Wrap"] = prot.asc_getWrap;
|
||
prot["asc_putWrap"] = prot["put_Wrap"] = prot.asc_putWrap;
|
||
prot["asc_getX"] = prot["get_X"] = prot.asc_getX;
|
||
prot["asc_putX"] = prot["put_X"] = prot.asc_putX;
|
||
prot["asc_getXAlign"] = prot["get_XAlign"] = prot.asc_getXAlign;
|
||
prot["asc_putXAlign"] = prot["put_XAlign"] = prot.asc_putXAlign;
|
||
prot["asc_getY"] = prot["get_Y"] = prot.asc_getY;
|
||
prot["asc_putY"] = prot["put_Y"] = prot.asc_putY;
|
||
prot["asc_getYAlign"] = prot["get_YAlign"] = prot.asc_getYAlign;
|
||
prot["asc_putYAlign"] = prot["put_YAlign"] = prot.asc_putYAlign;
|
||
prot["asc_getBorders"] = prot["get_Borders"] = prot.asc_getBorders;
|
||
prot["asc_putBorders"] = prot["put_Borders"] = prot.asc_putBorders;
|
||
prot["asc_getShade"] = prot["get_Shade"] = prot.asc_getShade;
|
||
prot["asc_putShade"] = prot["put_Shade"] = prot.asc_putShade;
|
||
prot["asc_getFontFamily"] = prot["get_FontFamily"] = prot.asc_getFontFamily;
|
||
prot["asc_putFontFamily"] = prot["put_FontFamily"] = prot.asc_putFontFamily;
|
||
prot["asc_putFromDropCapMenu"] = prot["put_FromDropCapMenu"] = prot.asc_putFromDropCapMenu;
|
||
|
||
window["AscCommon"].asc_CParagraphSpacing = asc_CParagraphSpacing;
|
||
prot = asc_CParagraphSpacing.prototype;
|
||
prot["get_Line"] = prot["asc_getLine"] = prot.asc_getLine;
|
||
prot["get_LineRule"] = prot["asc_getLineRule"] = prot.asc_getLineRule;
|
||
prot["get_Before"] = prot["asc_getBefore"] = prot.asc_getBefore;
|
||
prot["get_After"] = prot["asc_getAfter"] = prot.asc_getAfter;
|
||
|
||
window["Asc"]["asc_CParagraphInd"] = window["Asc"].asc_CParagraphInd = asc_CParagraphInd;
|
||
prot = asc_CParagraphInd.prototype;
|
||
prot["get_Left"] = prot["asc_getLeft"] = prot.asc_getLeft;
|
||
prot["put_Left"] = prot["asc_putLeft"] = prot.asc_putLeft;
|
||
prot["get_Right"] = prot["asc_getRight"] = prot.asc_getRight;
|
||
prot["put_Right"] = prot["asc_putRight"] = prot.asc_putRight;
|
||
prot["get_FirstLine"] = prot["asc_getFirstLine"] = prot.asc_getFirstLine;
|
||
prot["put_FirstLine"] = prot["asc_putFirstLine"] = prot.asc_putFirstLine;
|
||
|
||
window["Asc"]["asc_CParagraphProperty"] = window["Asc"].asc_CParagraphProperty = asc_CParagraphProperty;
|
||
prot = asc_CParagraphProperty.prototype;
|
||
prot["get_ContextualSpacing"] = prot["asc_getContextualSpacing"] = prot.asc_getContextualSpacing;
|
||
prot["put_ContextualSpacing"] = prot["asc_putContextualSpacing"] = prot.asc_putContextualSpacing;
|
||
prot["get_Ind"] = prot["asc_getInd"] = prot.asc_getInd;
|
||
prot["put_Ind"] = prot["asc_putInd"] = prot.asc_putInd;
|
||
prot["get_KeepLines"] = prot["asc_getKeepLines"] = prot.asc_getKeepLines;
|
||
prot["put_KeepLines"] = prot["asc_putKeepLines"] = prot.asc_putKeepLines;
|
||
prot["get_KeepNext"] = prot["asc_getKeepNext"] = prot.asc_getKeepNext;
|
||
prot["put_KeepNext"] = prot["asc_putKeepNext"] = prot.asc_putKeepNext;
|
||
prot["get_PageBreakBefore"] = prot["asc_getPageBreakBefore"] = prot.asc_getPageBreakBefore;
|
||
prot["put_PageBreakBefore"] = prot["asc_putPageBreakBefore"] = prot.asc_putPageBreakBefore;
|
||
prot["get_WidowControl"] = prot["asc_getWidowControl"] = prot.asc_getWidowControl;
|
||
prot["put_WidowControl"] = prot["asc_putWidowControl"] = prot.asc_putWidowControl;
|
||
prot["get_Spacing"] = prot["asc_getSpacing"] = prot.asc_getSpacing;
|
||
prot["put_Spacing"] = prot["asc_putSpacing"] = prot.asc_putSpacing;
|
||
prot["get_Borders"] = prot["asc_getBorders"] = prot.asc_getBorders;
|
||
prot["put_Borders"] = prot["asc_putBorders"] = prot.asc_putBorders;
|
||
prot["get_Shade"] = prot["asc_getShade"] = prot.asc_getShade;
|
||
prot["put_Shade"] = prot["asc_putShade"] = prot.asc_putShade;
|
||
prot["get_Locked"] = prot["asc_getLocked"] = prot.asc_getLocked;
|
||
prot["get_CanAddTable"] = prot["asc_getCanAddTable"] = prot.asc_getCanAddTable;
|
||
prot["get_Subscript"] = prot["asc_getSubscript"] = prot.asc_getSubscript;
|
||
prot["put_Subscript"] = prot["asc_putSubscript"] = prot.asc_putSubscript;
|
||
prot["get_Superscript"] = prot["asc_getSuperscript"] = prot.asc_getSuperscript;
|
||
prot["put_Superscript"] = prot["asc_putSuperscript"] = prot.asc_putSuperscript;
|
||
prot["get_SmallCaps"] = prot["asc_getSmallCaps"] = prot.asc_getSmallCaps;
|
||
prot["put_SmallCaps"] = prot["asc_putSmallCaps"] = prot.asc_putSmallCaps;
|
||
prot["get_AllCaps"] = prot["asc_getAllCaps"] = prot.asc_getAllCaps;
|
||
prot["put_AllCaps"] = prot["asc_putAllCaps"] = prot.asc_putAllCaps;
|
||
prot["get_Strikeout"] = prot["asc_getStrikeout"] = prot.asc_getStrikeout;
|
||
prot["put_Strikeout"] = prot["asc_putStrikeout"] = prot.asc_putStrikeout;
|
||
prot["get_DStrikeout"] = prot["asc_getDStrikeout"] = prot.asc_getDStrikeout;
|
||
prot["put_DStrikeout"] = prot["asc_putDStrikeout"] = prot.asc_putDStrikeout;
|
||
prot["get_TextSpacing"] = prot["asc_getTextSpacing"] = prot.asc_getTextSpacing;
|
||
prot["put_TextSpacing"] = prot["asc_putTextSpacing"] = prot.asc_putTextSpacing;
|
||
prot["get_Position"] = prot["asc_getPosition"] = prot.asc_getPosition;
|
||
prot["put_Position"] = prot["asc_putPosition"] = prot.asc_putPosition;
|
||
prot["get_Tabs"] = prot["asc_getTabs"] = prot.asc_getTabs;
|
||
prot["put_Tabs"] = prot["asc_putTabs"] = prot.asc_putTabs;
|
||
prot["get_DefaultTab"] = prot["asc_getDefaultTab"] = prot.asc_getDefaultTab;
|
||
prot["put_DefaultTab"] = prot["asc_putDefaultTab"] = prot.asc_putDefaultTab;
|
||
prot["get_FramePr"] = prot["asc_getFramePr"] = prot.asc_getFramePr;
|
||
prot["put_FramePr"] = prot["asc_putFramePr"] = prot.asc_putFramePr;
|
||
prot["get_CanAddDropCap"] = prot["asc_getCanAddDropCap"] = prot.asc_getCanAddDropCap;
|
||
prot["get_CanAddImage"] = prot["asc_getCanAddImage"] = prot.asc_getCanAddImage;
|
||
|
||
window["AscCommon"].asc_CTexture = asc_CTexture;
|
||
prot = asc_CTexture.prototype;
|
||
prot["get_id"] = prot["asc_getId"] = prot.asc_getId;
|
||
prot["get_image"] = prot["asc_getImage"] = prot.asc_getImage;
|
||
|
||
window["AscCommon"].asc_CImageSize = asc_CImageSize;
|
||
prot = asc_CImageSize.prototype;
|
||
prot["get_ImageWidth"] = prot["asc_getImageWidth"] = prot.asc_getImageWidth;
|
||
prot["get_ImageHeight"] = prot["asc_getImageHeight"] = prot.asc_getImageHeight;
|
||
prot["get_IsCorrect"] = prot["asc_getIsCorrect"] = prot.asc_getIsCorrect;
|
||
|
||
window["Asc"]["asc_CPaddings"] = window["Asc"].asc_CPaddings = asc_CPaddings;
|
||
prot = asc_CPaddings.prototype;
|
||
prot["get_Left"] = prot["asc_getLeft"] = prot.asc_getLeft;
|
||
prot["put_Left"] = prot["asc_putLeft"] = prot.asc_putLeft;
|
||
prot["get_Top"] = prot["asc_getTop"] = prot.asc_getTop;
|
||
prot["put_Top"] = prot["asc_putTop"] = prot.asc_putTop;
|
||
prot["get_Bottom"] = prot["asc_getBottom"] = prot.asc_getBottom;
|
||
prot["put_Bottom"] = prot["asc_putBottom"] = prot.asc_putBottom;
|
||
prot["get_Right"] = prot["asc_getRight"] = prot.asc_getRight;
|
||
prot["put_Right"] = prot["asc_putRight"] = prot.asc_putRight;
|
||
|
||
window["Asc"]["asc_CShapeProperty"] = window["Asc"].asc_CShapeProperty = asc_CShapeProperty;
|
||
prot = asc_CShapeProperty.prototype;
|
||
prot["get_type"] = prot["asc_getType"] = prot.asc_getType;
|
||
prot["put_type"] = prot["asc_putType"] = prot.asc_putType;
|
||
prot["get_fill"] = prot["asc_getFill"] = prot.asc_getFill;
|
||
prot["put_fill"] = prot["asc_putFill"] = prot.asc_putFill;
|
||
prot["get_stroke"] = prot["asc_getStroke"] = prot.asc_getStroke;
|
||
prot["put_stroke"] = prot["asc_putStroke"] = prot.asc_putStroke;
|
||
prot["get_paddings"] = prot["asc_getPaddings"] = prot.asc_getPaddings;
|
||
prot["put_paddings"] = prot["asc_putPaddings"] = prot.asc_putPaddings;
|
||
prot["get_CanFill"] = prot["asc_getCanFill"] = prot.asc_getCanFill;
|
||
prot["put_CanFill"] = prot["asc_putCanFill"] = prot.asc_putCanFill;
|
||
prot["get_CanChangeArrows"] = prot["asc_getCanChangeArrows"] = prot.asc_getCanChangeArrows;
|
||
prot["set_CanChangeArrows"] = prot["asc_setCanChangeArrows"] = prot.asc_setCanChangeArrows;
|
||
prot["get_FromChart"] = prot["asc_getFromChart"] = prot.asc_getFromChart;
|
||
prot["set_FromChart"] = prot["asc_setFromChart"] = prot.asc_setFromChart;
|
||
prot["get_Locked"] = prot["asc_getLocked"] = prot.asc_getLocked;
|
||
prot["set_Locked"] = prot["asc_setLocked"] = prot.asc_setLocked;
|
||
prot["get_Width"] = prot["asc_getWidth"] = prot.asc_getWidth;
|
||
prot["put_Width"] = prot["asc_putWidth"] = prot.asc_putWidth;
|
||
prot["get_Height"] = prot["asc_getHeight"] = prot.asc_getHeight;
|
||
prot["put_Height"] = prot["asc_putHeight"] = prot.asc_putHeight;
|
||
prot["get_VerticalTextAlign"] = prot["asc_getVerticalTextAlign"] = prot.asc_getVerticalTextAlign;
|
||
prot["put_VerticalTextAlign"] = prot["asc_putVerticalTextAlign"] = prot.asc_putVerticalTextAlign;
|
||
prot["get_Vert"] = prot["asc_getVert"] = prot.asc_getVert;
|
||
prot["put_Vert"] = prot["asc_putVert"] = prot.asc_putVert;
|
||
prot["get_TextArtProperties"] = prot["asc_getTextArtProperties"] = prot.asc_getTextArtProperties;
|
||
prot["put_TextArtProperties"] = prot["asc_putTextArtProperties"] = prot.asc_putTextArtProperties;
|
||
prot["get_LockAspect"] = prot["asc_getLockAspect"] = prot.asc_getLockAspect;
|
||
prot["put_LockAspect"] = prot["asc_putLockAspect"] = prot.asc_putLockAspect;
|
||
prot["get_Title"] = prot["asc_getTitle"] = prot.asc_getTitle;
|
||
prot["put_Title"] = prot["asc_putTitle"] = prot.asc_putTitle;
|
||
prot["get_Description"] = prot["asc_getDescription"] = prot.asc_getDescription;
|
||
prot["put_Description"] = prot["asc_putDescription"] = prot.asc_putDescription;
|
||
prot["get_ColumnNumber"] = prot["asc_getColumnNumber"] = prot.asc_getColumnNumber;
|
||
prot["put_ColumnNumber"] = prot["asc_putColumnNumber"] = prot.asc_putColumnNumber;
|
||
prot["get_ColumnSpace"] = prot["asc_getColumnSpace"] = prot.asc_getColumnSpace;
|
||
prot["put_ColumnSpace"] = prot["asc_putColumnSpace"] = prot.asc_putColumnSpace;
|
||
prot["get_SignatureId"] = prot["asc_getSignatureId"] = prot.asc_getSignatureId;
|
||
prot["put_SignatureId"] = prot["asc_putSignatureId"] = prot.asc_putSignatureId;
|
||
prot["get_FromImage"] = prot["asc_getFromImage"] = prot.asc_getFromImage;
|
||
prot["put_FromImage"] = prot["asc_putFromImage"] = prot.asc_putFromImage;
|
||
|
||
window["Asc"]["asc_TextArtProperties"] = window["Asc"].asc_TextArtProperties = asc_TextArtProperties;
|
||
prot = asc_TextArtProperties.prototype;
|
||
prot["asc_putFill"] = prot.asc_putFill;
|
||
prot["asc_getFill"] = prot.asc_getFill;
|
||
prot["asc_putLine"] = prot.asc_putLine;
|
||
prot["asc_getLine"] = prot.asc_getLine;
|
||
prot["asc_putForm"] = prot.asc_putForm;
|
||
prot["asc_getForm"] = prot.asc_getForm;
|
||
prot["asc_putStyle"] = prot.asc_putStyle;
|
||
prot["asc_getStyle"] = prot.asc_getStyle;
|
||
|
||
window['Asc']['CImagePositionH'] = window["Asc"].CImagePositionH = CImagePositionH;
|
||
prot = CImagePositionH.prototype;
|
||
prot['get_RelativeFrom'] = prot.get_RelativeFrom;
|
||
prot['put_RelativeFrom'] = prot.put_RelativeFrom;
|
||
prot['get_UseAlign'] = prot.get_UseAlign;
|
||
prot['put_UseAlign'] = prot.put_UseAlign;
|
||
prot['get_Align'] = prot.get_Align;
|
||
prot['put_Align'] = prot.put_Align;
|
||
prot['get_Value'] = prot.get_Value;
|
||
prot['put_Value'] = prot.put_Value;
|
||
prot['get_Percent'] = prot.get_Percent;
|
||
prot['put_Percent'] = prot.put_Percent;
|
||
|
||
window['Asc']['CImagePositionV'] = window["Asc"].CImagePositionV = CImagePositionV;
|
||
prot = CImagePositionV.prototype;
|
||
prot['get_RelativeFrom'] = prot.get_RelativeFrom;
|
||
prot['put_RelativeFrom'] = prot.put_RelativeFrom;
|
||
prot['get_UseAlign'] = prot.get_UseAlign;
|
||
prot['put_UseAlign'] = prot.put_UseAlign;
|
||
prot['get_Align'] = prot.get_Align;
|
||
prot['put_Align'] = prot.put_Align;
|
||
prot['get_Value'] = prot.get_Value;
|
||
prot['put_Value'] = prot.put_Value;
|
||
prot['get_Percent'] = prot.get_Percent;
|
||
prot['put_Percent'] = prot.put_Percent;
|
||
|
||
window['Asc']['CPosition'] = window["Asc"].CPosition = CPosition;
|
||
prot = CPosition.prototype;
|
||
prot['get_X'] = prot.get_X;
|
||
prot['put_X'] = prot.put_X;
|
||
prot['get_Y'] = prot.get_Y;
|
||
prot['put_Y'] = prot.put_Y;
|
||
|
||
window["Asc"]["asc_CImgProperty"] = window["Asc"].asc_CImgProperty = asc_CImgProperty;
|
||
prot = asc_CImgProperty.prototype;
|
||
prot["get_ChangeLevel"] = prot["asc_getChangeLevel"] = prot.asc_getChangeLevel;
|
||
prot["put_ChangeLevel"] = prot["asc_putChangeLevel"] = prot.asc_putChangeLevel;
|
||
prot["get_CanBeFlow"] = prot["asc_getCanBeFlow"] = prot.asc_getCanBeFlow;
|
||
prot["get_Width"] = prot["asc_getWidth"] = prot.asc_getWidth;
|
||
prot["put_Width"] = prot["asc_putWidth"] = prot.asc_putWidth;
|
||
prot["get_Height"] = prot["asc_getHeight"] = prot.asc_getHeight;
|
||
prot["put_Height"] = prot["asc_putHeight"] = prot.asc_putHeight;
|
||
prot["get_WrappingStyle"] = prot["asc_getWrappingStyle"] = prot.asc_getWrappingStyle;
|
||
prot["put_WrappingStyle"] = prot["asc_putWrappingStyle"] = prot.asc_putWrappingStyle;
|
||
prot["get_Paddings"] = prot["asc_getPaddings"] = prot.asc_getPaddings;
|
||
prot["put_Paddings"] = prot["asc_putPaddings"] = prot.asc_putPaddings;
|
||
prot["get_AllowOverlap"] = prot["asc_getAllowOverlap"] = prot.asc_getAllowOverlap;
|
||
prot["put_AllowOverlap"] = prot["asc_putAllowOverlap"] = prot.asc_putAllowOverlap;
|
||
prot["get_Position"] = prot["asc_getPosition"] = prot.asc_getPosition;
|
||
prot["put_Position"] = prot["asc_putPosition"] = prot.asc_putPosition;
|
||
prot["get_PositionH"] = prot["asc_getPositionH"] = prot.asc_getPositionH;
|
||
prot["put_PositionH"] = prot["asc_putPositionH"] = prot.asc_putPositionH;
|
||
prot["get_PositionV"] = prot["asc_getPositionV"] = prot.asc_getPositionV;
|
||
prot["put_PositionV"] = prot["asc_putPositionV"] = prot.asc_putPositionV;
|
||
prot["get_SizeRelH"] = prot["asc_getSizeRelH"] = prot.asc_getSizeRelH;
|
||
prot["put_SizeRelH"] = prot["asc_putSizeRelH"] = prot.asc_putSizeRelH;
|
||
prot["get_SizeRelV"] = prot["asc_getSizeRelV"] = prot.asc_getSizeRelV;
|
||
prot["put_SizeRelV"] = prot["asc_putSizeRelV"] = prot.asc_putSizeRelV;
|
||
prot["get_Value_X"] = prot["asc_getValue_X"] = prot.asc_getValue_X;
|
||
prot["get_Value_Y"] = prot["asc_getValue_Y"] = prot.asc_getValue_Y;
|
||
prot["get_ImageUrl"] = prot["asc_getImageUrl"] = prot.asc_getImageUrl;
|
||
prot["put_ImageUrl"] = prot["asc_putImageUrl"] = prot.asc_putImageUrl;
|
||
prot["get_Group"] = prot["asc_getGroup"] = prot.asc_getGroup;
|
||
prot["put_Group"] = prot["asc_putGroup"] = prot.asc_putGroup;
|
||
prot["get_FromGroup"] = prot["asc_getFromGroup"] = prot.asc_getFromGroup;
|
||
prot["put_FromGroup"] = prot["asc_putFromGroup"] = prot.asc_putFromGroup;
|
||
prot["get_isChartProps"] = prot["asc_getisChartProps"] = prot.asc_getisChartProps;
|
||
prot["put_isChartPross"] = prot["asc_putisChartPross"] = prot.asc_putisChartPross;
|
||
prot["get_SeveralCharts"] = prot["asc_getSeveralCharts"] = prot.asc_getSeveralCharts;
|
||
prot["put_SeveralCharts"] = prot["asc_putSeveralCharts"] = prot.asc_putSeveralCharts;
|
||
prot["get_SeveralChartTypes"] = prot["asc_getSeveralChartTypes"] = prot.asc_getSeveralChartTypes;
|
||
prot["put_SeveralChartTypes"] = prot["asc_putSeveralChartTypes"] = prot.asc_putSeveralChartTypes;
|
||
prot["get_SeveralChartStyles"] = prot["asc_getSeveralChartStyles"] = prot.asc_getSeveralChartStyles;
|
||
prot["put_SeveralChartStyles"] = prot["asc_putSeveralChartStyles"] = prot.asc_putSeveralChartStyles;
|
||
prot["get_VerticalTextAlign"] = prot["asc_getVerticalTextAlign"] = prot.asc_getVerticalTextAlign;
|
||
prot["put_VerticalTextAlign"] = prot["asc_putVerticalTextAlign"] = prot.asc_putVerticalTextAlign;
|
||
prot["get_Vert"] = prot["asc_getVert"] = prot.asc_getVert;
|
||
prot["put_Vert"] = prot["asc_putVert"] = prot.asc_putVert;
|
||
prot["get_Locked"] = prot["asc_getLocked"] = prot.asc_getLocked;
|
||
prot["getLockAspect"] = prot["asc_getLockAspect"] = prot.asc_getLockAspect;
|
||
prot["putLockAspect"] = prot["asc_putLockAspect"] = prot.asc_putLockAspect;
|
||
prot["get_ChartProperties"] = prot["asc_getChartProperties"] = prot.asc_getChartProperties;
|
||
prot["put_ChartProperties"] = prot["asc_putChartProperties"] = prot.asc_putChartProperties;
|
||
prot["get_ShapeProperties"] = prot["asc_getShapeProperties"] = prot.asc_getShapeProperties;
|
||
prot["put_ShapeProperties"] = prot["asc_putShapeProperties"] = prot.asc_putShapeProperties;
|
||
prot["get_OriginSize"] = prot["asc_getOriginSize"] = prot.asc_getOriginSize;
|
||
prot["get_PluginGuid"] = prot["asc_getPluginGuid"] = prot.asc_getPluginGuid;
|
||
prot["put_PluginGuid"] = prot["asc_putPluginGuid"] = prot.asc_putPluginGuid;
|
||
prot["get_PluginData"] = prot["asc_getPluginData"] = prot.asc_getPluginData;
|
||
prot["put_PluginData"] = prot["asc_putPluginData"] = prot.asc_putPluginData;
|
||
|
||
prot["get_Title"] = prot["asc_getTitle"] = prot.asc_getTitle;
|
||
prot["put_Title"] = prot["asc_putTitle"] = prot.asc_putTitle;
|
||
prot["get_Description"] = prot["asc_getDescription"] = prot.asc_getDescription;
|
||
prot["put_Description"] = prot["asc_putDescription"] = prot.asc_putDescription;
|
||
prot["get_ColumnNumber"] = prot["asc_getColumnNumber"] = prot.asc_getColumnNumber;
|
||
prot["put_ColumnNumber"] = prot["asc_putColumnNumber"] = prot.asc_putColumnNumber;
|
||
prot["get_ColumnSpace"] = prot["asc_getColumnSpace"] = prot.asc_getColumnSpace;
|
||
prot["put_ColumnSpace"] = prot["asc_putColumnSpace"] = prot.asc_putColumnSpace;
|
||
prot["asc_getSignatureId"] = prot["asc_getSignatureId"] = prot.asc_getSignatureId;
|
||
|
||
|
||
|
||
|
||
window["AscCommon"].asc_CSelectedObject = asc_CSelectedObject;
|
||
prot = asc_CSelectedObject.prototype;
|
||
prot["get_ObjectType"] = prot["asc_getObjectType"] = prot.asc_getObjectType;
|
||
prot["get_ObjectValue"] = prot["asc_getObjectValue"] = prot.asc_getObjectValue;
|
||
|
||
window["Asc"]["asc_CShapeFill"] = window["Asc"].asc_CShapeFill = asc_CShapeFill;
|
||
prot = asc_CShapeFill.prototype;
|
||
prot["get_type"] = prot["asc_getType"] = prot.asc_getType;
|
||
prot["put_type"] = prot["asc_putType"] = prot.asc_putType;
|
||
prot["get_fill"] = prot["asc_getFill"] = prot.asc_getFill;
|
||
prot["put_fill"] = prot["asc_putFill"] = prot.asc_putFill;
|
||
prot["get_transparent"] = prot["asc_getTransparent"] = prot.asc_getTransparent;
|
||
prot["put_transparent"] = prot["asc_putTransparent"] = prot.asc_putTransparent;
|
||
prot["asc_CheckForseSet"] = prot["asc_CheckForseSet"] = prot.asc_CheckForseSet;
|
||
|
||
window["Asc"]["asc_CFillBlip"] = window["Asc"].asc_CFillBlip = asc_CFillBlip;
|
||
prot = asc_CFillBlip.prototype;
|
||
prot["get_type"] = prot["asc_getType"] = prot.asc_getType;
|
||
prot["put_type"] = prot["asc_putType"] = prot.asc_putType;
|
||
prot["get_url"] = prot["asc_getUrl"] = prot.asc_getUrl;
|
||
prot["put_url"] = prot["asc_putUrl"] = prot.asc_putUrl;
|
||
prot["get_texture_id"] = prot["asc_getTextureId"] = prot.asc_getTextureId;
|
||
prot["put_texture_id"] = prot["asc_putTextureId"] = prot.asc_putTextureId;
|
||
|
||
window["Asc"]["asc_CFillHatch"] = window["Asc"].asc_CFillHatch = asc_CFillHatch;
|
||
prot = asc_CFillHatch.prototype;
|
||
prot["get_pattern_type"] = prot["asc_getPatternType"] = prot.asc_getPatternType;
|
||
prot["put_pattern_type"] = prot["asc_putPatternType"] = prot.asc_putPatternType;
|
||
prot["get_color_fg"] = prot["asc_getColorFg"] = prot.asc_getColorFg;
|
||
prot["put_color_fg"] = prot["asc_putColorFg"] = prot.asc_putColorFg;
|
||
prot["get_color_bg"] = prot["asc_getColorBg"] = prot.asc_getColorBg;
|
||
prot["put_color_bg"] = prot["asc_putColorBg"] = prot.asc_putColorBg;
|
||
|
||
window["Asc"]["asc_CFillGrad"] = window["Asc"].asc_CFillGrad = asc_CFillGrad;
|
||
prot = asc_CFillGrad.prototype;
|
||
prot["get_colors"] = prot["asc_getColors"] = prot.asc_getColors;
|
||
prot["put_colors"] = prot["asc_putColors"] = prot.asc_putColors;
|
||
prot["get_positions"] = prot["asc_getPositions"] = prot.asc_getPositions;
|
||
prot["put_positions"] = prot["asc_putPositions"] = prot.asc_putPositions;
|
||
prot["get_grad_type"] = prot["asc_getGradType"] = prot.asc_getGradType;
|
||
prot["put_grad_type"] = prot["asc_putGradType"] = prot.asc_putGradType;
|
||
prot["get_linear_angle"] = prot["asc_getLinearAngle"] = prot.asc_getLinearAngle;
|
||
prot["put_linear_angle"] = prot["asc_putLinearAngle"] = prot.asc_putLinearAngle;
|
||
prot["get_linear_scale"] = prot["asc_getLinearScale"] = prot.asc_getLinearScale;
|
||
prot["put_linear_scale"] = prot["asc_putLinearScale"] = prot.asc_putLinearScale;
|
||
prot["get_path_type"] = prot["asc_getPathType"] = prot.asc_getPathType;
|
||
prot["put_path_type"] = prot["asc_putPathType"] = prot.asc_putPathType;
|
||
|
||
window["Asc"]["asc_CFillSolid"] = window["Asc"].asc_CFillSolid = asc_CFillSolid;
|
||
prot = asc_CFillSolid.prototype;
|
||
prot["get_color"] = prot["asc_getColor"] = prot.asc_getColor;
|
||
prot["put_color"] = prot["asc_putColor"] = prot.asc_putColor;
|
||
|
||
window["Asc"]["asc_CStroke"] = window["Asc"].asc_CStroke = asc_CStroke;
|
||
prot = asc_CStroke.prototype;
|
||
prot["get_type"] = prot["asc_getType"] = prot.asc_getType;
|
||
prot["put_type"] = prot["asc_putType"] = prot.asc_putType;
|
||
prot["get_width"] = prot["asc_getWidth"] = prot.asc_getWidth;
|
||
prot["put_width"] = prot["asc_putWidth"] = prot.asc_putWidth;
|
||
prot["get_color"] = prot["asc_getColor"] = prot.asc_getColor;
|
||
prot["put_color"] = prot["asc_putColor"] = prot.asc_putColor;
|
||
prot["get_linejoin"] = prot["asc_getLinejoin"] = prot.asc_getLinejoin;
|
||
prot["put_linejoin"] = prot["asc_putLinejoin"] = prot.asc_putLinejoin;
|
||
prot["get_linecap"] = prot["asc_getLinecap"] = prot.asc_getLinecap;
|
||
prot["put_linecap"] = prot["asc_putLinecap"] = prot.asc_putLinecap;
|
||
prot["get_linebeginstyle"] = prot["asc_getLinebeginstyle"] = prot.asc_getLinebeginstyle;
|
||
prot["put_linebeginstyle"] = prot["asc_putLinebeginstyle"] = prot.asc_putLinebeginstyle;
|
||
prot["get_linebeginsize"] = prot["asc_getLinebeginsize"] = prot.asc_getLinebeginsize;
|
||
prot["put_linebeginsize"] = prot["asc_putLinebeginsize"] = prot.asc_putLinebeginsize;
|
||
prot["get_lineendstyle"] = prot["asc_getLineendstyle"] = prot.asc_getLineendstyle;
|
||
prot["put_lineendstyle"] = prot["asc_putLineendstyle"] = prot.asc_putLineendstyle;
|
||
prot["get_lineendsize"] = prot["asc_getLineendsize"] = prot.asc_getLineendsize;
|
||
prot["put_lineendsize"] = prot["asc_putLineendsize"] = prot.asc_putLineendsize;
|
||
prot["get_canChangeArrows"] = prot["asc_getCanChangeArrows"] = prot.asc_getCanChangeArrows;
|
||
prot["put_prstDash"] = prot["asc_putPrstDash"] = prot.asc_putPrstDash;
|
||
prot["get_prstDash"] = prot["asc_getPrstDash"] = prot.asc_getPrstDash;
|
||
|
||
window["AscCommon"].CAscColorScheme = CAscColorScheme;
|
||
prot = CAscColorScheme.prototype;
|
||
prot["get_colors"] = prot.get_colors;
|
||
prot["get_name"] = prot.get_name;
|
||
|
||
window["AscCommon"].CMouseMoveData = CMouseMoveData;
|
||
prot = CMouseMoveData.prototype;
|
||
prot["get_Type"] = prot.get_Type;
|
||
prot["get_X"] = prot.get_X;
|
||
prot["get_Y"] = prot.get_Y;
|
||
prot["get_Hyperlink"] = prot.get_Hyperlink;
|
||
prot["get_UserId"] = prot.get_UserId;
|
||
prot["get_HaveChanges"] = prot.get_HaveChanges;
|
||
prot["get_LockedObjectType"] = prot.get_LockedObjectType;
|
||
prot["get_FootnoteText"] = prot.get_FootnoteText;
|
||
prot["get_FootnoteNumber"] = prot.get_FootnoteNumber;
|
||
|
||
window["Asc"]["asc_CUserInfo"] = window["Asc"].asc_CUserInfo = asc_CUserInfo;
|
||
prot = asc_CUserInfo.prototype;
|
||
prot["asc_putId"] = prot["put_Id"] = prot.asc_putId;
|
||
prot["asc_getId"] = prot["get_Id"] = prot.asc_getId;
|
||
prot["asc_putFullName"] = prot["put_FullName"] = prot.asc_putFullName;
|
||
prot["asc_getFullName"] = prot["get_FullName"] = prot.asc_getFullName;
|
||
prot["asc_putFirstName"] = prot["put_FirstName"] = prot.asc_putFirstName;
|
||
prot["asc_getFirstName"] = prot["get_FirstName"] = prot.asc_getFirstName;
|
||
prot["asc_putLastName"] = prot["put_LastName"] = prot.asc_putLastName;
|
||
prot["asc_getLastName"] = prot["get_LastName"] = prot.asc_getLastName;
|
||
|
||
window["Asc"]["asc_CDocInfo"] = window["Asc"].asc_CDocInfo = asc_CDocInfo;
|
||
prot = asc_CDocInfo.prototype;
|
||
prot["get_Id"] = prot["asc_getId"] = prot.asc_getId;
|
||
prot["put_Id"] = prot["asc_putId"] = prot.asc_putId;
|
||
prot["get_Url"] = prot["asc_getUrl"] = prot.asc_getUrl;
|
||
prot["put_Url"] = prot["asc_putUrl"] = prot.asc_putUrl;
|
||
prot["get_Title"] = prot["asc_getTitle"] = prot.asc_getTitle;
|
||
prot["put_Title"] = prot["asc_putTitle"] = prot.asc_putTitle;
|
||
prot["get_Format"] = prot["asc_getFormat"] = prot.asc_getFormat;
|
||
prot["put_Format"] = prot["asc_putFormat"] = prot.asc_putFormat;
|
||
prot["get_VKey"] = prot["asc_getVKey"] = prot.asc_getVKey;
|
||
prot["put_VKey"] = prot["asc_putVKey"] = prot.asc_putVKey;
|
||
prot["get_UserId"] = prot["asc_getUserId"] = prot.asc_getUserId;
|
||
prot["get_UserName"] = prot["asc_getUserName"] = prot.asc_getUserName;
|
||
prot["get_Options"] = prot["asc_getOptions"] = prot.asc_getOptions;
|
||
prot["put_Options"] = prot["asc_putOptions"] = prot.asc_putOptions;
|
||
prot["get_CallbackUrl"] = prot["asc_getCallbackUrl"] = prot.asc_getCallbackUrl;
|
||
prot["put_CallbackUrl"] = prot["asc_putCallbackUrl"] = prot.asc_putCallbackUrl;
|
||
prot["get_TemplateReplacement"] = prot["asc_getTemplateReplacement"] = prot.asc_getTemplateReplacement;
|
||
prot["put_TemplateReplacement"] = prot["asc_putTemplateReplacement"] = prot.asc_putTemplateReplacement;
|
||
prot["get_UserInfo"] = prot["asc_getUserInfo"] = prot.asc_getUserInfo;
|
||
prot["put_UserInfo"] = prot["asc_putUserInfo"] = prot.asc_putUserInfo;
|
||
prot["get_Token"] = prot["asc_getToken"] = prot.asc_getToken;
|
||
prot["put_Token"] = prot["asc_putToken"] = prot.asc_putToken;
|
||
prot["get_Mode"] = prot["asc_getMode"] = prot.asc_getMode;
|
||
prot["put_Mode"] = prot["asc_putMode"] = prot.asc_putMode;
|
||
prot["get_Permissions"] = prot["asc_getPermissions"] = prot.asc_getPermissions;
|
||
prot["put_Permissions"] = prot["asc_putPermissions"] = prot.asc_putPermissions;
|
||
prot["get_Lang"] = prot["asc_getLang"] = prot.asc_getLang;
|
||
prot["put_Lang"] = prot["asc_putLang"] = prot.asc_putLang;
|
||
prot["get_Encrypted"] = prot["asc_getEncrypted"] = prot.asc_getEncrypted;
|
||
prot["put_Encrypted"] = prot["asc_putEncrypted"] = prot.asc_putEncrypted;
|
||
|
||
window["AscCommon"].COpenProgress = COpenProgress;
|
||
prot = COpenProgress.prototype;
|
||
prot["asc_getType"] = prot.asc_getType;
|
||
prot["asc_getFontsCount"] = prot.asc_getFontsCount;
|
||
prot["asc_getCurrentFont"] = prot.asc_getCurrentFont;
|
||
prot["asc_getImagesCount"] = prot.asc_getImagesCount;
|
||
prot["asc_getCurrentImage"] = prot.asc_getCurrentImage;
|
||
|
||
window["AscCommon"].CErrorData = CErrorData;
|
||
prot = CErrorData.prototype;
|
||
prot["put_Value"] = prot.put_Value;
|
||
prot["get_Value"] = prot.get_Value;
|
||
|
||
window["AscCommon"].CAscMathType = CAscMathType;
|
||
prot = CAscMathType.prototype;
|
||
prot["get_Id"] = prot.get_Id;
|
||
prot["get_X"] = prot.get_X;
|
||
prot["get_Y"] = prot.get_Y;
|
||
|
||
window["AscCommon"].CAscMathCategory = CAscMathCategory;
|
||
prot = CAscMathCategory.prototype;
|
||
prot["get_Id"] = prot.get_Id;
|
||
prot["get_Data"] = prot.get_Data;
|
||
prot["get_W"] = prot.get_W;
|
||
prot["get_H"] = prot.get_H;
|
||
|
||
window["AscCommon"].CStyleImage = CStyleImage;
|
||
prot = CStyleImage.prototype;
|
||
prot["asc_getName"] = prot["get_Name"] = prot.asc_getName;
|
||
prot["asc_getType"] = prot["get_Type"] = prot.asc_getType;
|
||
prot["asc_getImage"] = prot.asc_getImage;
|
||
|
||
window["AscCommon"].asc_CSpellCheckProperty = asc_CSpellCheckProperty;
|
||
prot = asc_CSpellCheckProperty.prototype;
|
||
prot["get_Word"] = prot.get_Word;
|
||
prot["get_Checked"] = prot.get_Checked;
|
||
prot["get_Variants"] = prot.get_Variants;
|
||
|
||
window["AscCommon"].CWatermarkOnDraw = CWatermarkOnDraw;
|
||
|
||
window["Asc"]["CPluginVariation"] = window["Asc"].CPluginVariation = CPluginVariation;
|
||
window["Asc"]["CPlugin"] = window["Asc"].CPlugin = CPlugin;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
(function(window, undefined){
|
||
|
||
//зависимости
|
||
//stream
|
||
//memory
|
||
//c_oAscChartType
|
||
//todo
|
||
//BinaryCommonWriter
|
||
|
||
function inherit(proto) {
|
||
function F() {}
|
||
F.prototype = proto;
|
||
return new F;
|
||
}
|
||
if (!Object.create || !Object['create']) Object['create'] = Object.create = inherit;
|
||
|
||
var c_oSerConstants = {
|
||
ErrorFormat: -2,
|
||
ErrorUnknown: -1,
|
||
ReadOk:0,
|
||
ReadUnknown:1,
|
||
ErrorStream:0x55
|
||
};
|
||
var c_oSerPropLenType = {
|
||
Null:0,
|
||
Byte:1,
|
||
Short:2,
|
||
Three:3,
|
||
Long:4,
|
||
Double:5,
|
||
Variable:6
|
||
};
|
||
var c_oSer_ColorObjectType =
|
||
{
|
||
Rgb: 0,
|
||
Type: 1,
|
||
Theme: 2,
|
||
Tint: 3
|
||
};
|
||
var c_oSer_ColorType =
|
||
{
|
||
Auto: 0
|
||
};
|
||
var c_oSerBorderType = {
|
||
Color: 0,
|
||
Space: 1,
|
||
Size: 2,
|
||
Value: 3,
|
||
ColorTheme: 4
|
||
};
|
||
var c_oSerBordersType = {
|
||
left: 0,
|
||
top: 1,
|
||
right: 2,
|
||
bottom: 3,
|
||
insideV: 4,
|
||
insideH: 5,
|
||
start: 6,
|
||
end: 7,
|
||
tl2br: 8,
|
||
tr2bl: 9,
|
||
bar: 10,
|
||
between: 11
|
||
};
|
||
var c_oSerPaddingType = {
|
||
left: 0,
|
||
top: 1,
|
||
right: 2,
|
||
bottom: 3
|
||
};
|
||
var c_oSerShdType = {
|
||
Value: 0,
|
||
Color: 1,
|
||
ColorTheme: 2
|
||
};
|
||
var c_oSer_ColorThemeType = {
|
||
Auto: 0,
|
||
Color: 1,
|
||
Tint: 2,
|
||
Shade: 3
|
||
};
|
||
var c_oSerBookmark = {
|
||
Id: 0,
|
||
Name: 1,
|
||
DisplacedByCustomXml: 2,
|
||
ColFirst: 3,
|
||
ColLast: 4
|
||
};
|
||
|
||
function BinaryCommonWriter(memory)
|
||
{
|
||
this.memory = memory;
|
||
}
|
||
BinaryCommonWriter.prototype.WriteItem = function(type, fWrite)
|
||
{
|
||
//type
|
||
this.memory.WriteByte(type);
|
||
this.WriteItemWithLength(fWrite);
|
||
};
|
||
BinaryCommonWriter.prototype.WriteItemStart = function(type, fWrite)
|
||
{
|
||
this.memory.WriteByte(type);
|
||
return this.WriteItemWithLengthStart(fWrite);
|
||
};
|
||
BinaryCommonWriter.prototype.WriteItemEnd = function(nStart)
|
||
{
|
||
this.WriteItemWithLengthEnd(nStart);
|
||
};
|
||
BinaryCommonWriter.prototype.WriteItemWithLength = function(fWrite)
|
||
{
|
||
var nStart = this.WriteItemWithLengthStart();
|
||
fWrite();
|
||
this.WriteItemWithLengthEnd(nStart);
|
||
};
|
||
BinaryCommonWriter.prototype.WriteItemWithLengthStart = function()
|
||
{
|
||
//Запоминаем позицию чтобы в конце записать туда длину
|
||
var nStart = this.memory.GetCurPosition();
|
||
this.memory.Skip(4);
|
||
return nStart;
|
||
};
|
||
BinaryCommonWriter.prototype.WriteItemWithLengthEnd = function(nStart)
|
||
{
|
||
//Length
|
||
var nEnd = this.memory.GetCurPosition();
|
||
this.memory.Seek(nStart);
|
||
this.memory.WriteLong(nEnd - nStart - 4);
|
||
this.memory.Seek(nEnd);
|
||
};
|
||
BinaryCommonWriter.prototype.WriteBorder = function(border)
|
||
{
|
||
var _this = this;
|
||
if(null != border.Value)
|
||
{
|
||
var color = null;
|
||
if (null != border.Color)
|
||
color = border.Color;
|
||
else if (null != border.Unifill) {
|
||
var doc = window.editor.WordControl.m_oLogicDocument;
|
||
border.Unifill.check(doc.Get_Theme(), doc.Get_ColorMap());
|
||
var RGBA = border.Unifill.getRGBAColor();
|
||
color = new window['AscCommonWord'].CDocumentColor(RGBA.R, RGBA.G, RGBA.B);
|
||
}
|
||
if (null != color && !color.Auto)
|
||
this.WriteColor(c_oSerBorderType.Color, color);
|
||
if (null != border.Space) {
|
||
this.memory.WriteByte(c_oSerBorderType.Space);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble(border.Space);
|
||
}
|
||
if (null != border.Size) {
|
||
this.memory.WriteByte(c_oSerBorderType.Size);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble(border.Size);
|
||
}
|
||
if (null != border.Unifill || (null != border.Color && border.Color.Auto)) {
|
||
this.memory.WriteByte(c_oSerBorderType.ColorTheme);
|
||
this.memory.WriteByte(c_oSerPropLenType.Variable);
|
||
this.WriteItemWithLength(function () { _this.WriteColorTheme(border.Unifill, border.Color); });
|
||
}
|
||
|
||
this.memory.WriteByte(c_oSerBorderType.Value);
|
||
this.memory.WriteByte(c_oSerPropLenType.Byte);
|
||
this.memory.WriteByte(border.Value);
|
||
}
|
||
};
|
||
BinaryCommonWriter.prototype.WriteBorders = function(Borders)
|
||
{
|
||
var oThis = this;
|
||
//Left
|
||
if(null != Borders.Left)
|
||
this.WriteItem(c_oSerBordersType.left, function(){oThis.WriteBorder(Borders.Left);});
|
||
//Top
|
||
if(null != Borders.Top)
|
||
this.WriteItem(c_oSerBordersType.top, function(){oThis.WriteBorder(Borders.Top);});
|
||
//Right
|
||
if(null != Borders.Right)
|
||
this.WriteItem(c_oSerBordersType.right, function(){oThis.WriteBorder(Borders.Right);});
|
||
//Bottom
|
||
if(null != Borders.Bottom)
|
||
this.WriteItem(c_oSerBordersType.bottom, function(){oThis.WriteBorder(Borders.Bottom);});
|
||
//InsideV
|
||
if(null != Borders.InsideV)
|
||
this.WriteItem(c_oSerBordersType.insideV, function(){oThis.WriteBorder(Borders.InsideV);});
|
||
//InsideH
|
||
if(null != Borders.InsideH)
|
||
this.WriteItem(c_oSerBordersType.insideH, function(){oThis.WriteBorder(Borders.InsideH);});
|
||
//Between
|
||
if(null != Borders.Between)
|
||
this.WriteItem(c_oSerBordersType.between, function(){oThis.WriteBorder(Borders.Between);});
|
||
};
|
||
BinaryCommonWriter.prototype.WriteColor = function(type, color)
|
||
{
|
||
this.memory.WriteByte(type);
|
||
this.memory.WriteByte(c_oSerPropLenType.Three);
|
||
this.memory.WriteByte(color.r);
|
||
this.memory.WriteByte(color.g);
|
||
this.memory.WriteByte(color.b);
|
||
};
|
||
BinaryCommonWriter.prototype.WriteShd = function(Shd)
|
||
{
|
||
var _this = this;
|
||
//Value
|
||
if(null != Shd.Value)
|
||
{
|
||
this.memory.WriteByte(c_oSerShdType.Value);
|
||
this.memory.WriteByte(c_oSerPropLenType.Byte);
|
||
this.memory.WriteByte(Shd.Value);
|
||
}
|
||
//Value
|
||
var color = null;
|
||
if (null != Shd.Color)
|
||
color = Shd.Color;
|
||
else if (null != Shd.Unifill) {
|
||
var doc = editor.WordControl.m_oLogicDocument;
|
||
Shd.Unifill.check(doc.Get_Theme(), doc.Get_ColorMap());
|
||
var RGBA = Shd.Unifill.getRGBAColor();
|
||
color = new AscCommonWord.CDocumentColor(RGBA.R, RGBA.G, RGBA.B);
|
||
}
|
||
if (null != color && !color.Auto)
|
||
this.WriteColor(c_oSerShdType.Color, color);
|
||
if(null != Shd.Unifill || (null != Shd.Color && Shd.Color.Auto))
|
||
{
|
||
this.memory.WriteByte(c_oSerShdType.ColorTheme);
|
||
this.memory.WriteByte(c_oSerPropLenType.Variable);
|
||
this.WriteItemWithLength(function(){_this.WriteColorTheme(Shd.Unifill, Shd.Color);});
|
||
}
|
||
};
|
||
BinaryCommonWriter.prototype.WritePaddings = function(Paddings)
|
||
{
|
||
//left
|
||
if(null != Paddings.L)
|
||
{
|
||
this.memory.WriteByte(c_oSerPaddingType.left);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble(Paddings.L);
|
||
}
|
||
//top
|
||
if(null != Paddings.T)
|
||
{
|
||
this.memory.WriteByte(c_oSerPaddingType.top);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble(Paddings.T);
|
||
}
|
||
//Right
|
||
if(null != Paddings.R)
|
||
{
|
||
this.memory.WriteByte(c_oSerPaddingType.right);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble(Paddings.R);
|
||
}
|
||
//bottom
|
||
if(null != Paddings.B)
|
||
{
|
||
this.memory.WriteByte(c_oSerPaddingType.bottom);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble(Paddings.B);
|
||
}
|
||
};
|
||
BinaryCommonWriter.prototype.WriteColorSpreadsheet = function(color)
|
||
{
|
||
if(color instanceof AscCommonExcel.ThemeColor)
|
||
{
|
||
if(null != color.theme)
|
||
{
|
||
this.memory.WriteByte(c_oSer_ColorObjectType.Theme);
|
||
this.memory.WriteByte(c_oSerPropLenType.Byte);
|
||
this.memory.WriteByte(color.theme);
|
||
}
|
||
if(null != color.tint)
|
||
{
|
||
this.memory.WriteByte(c_oSer_ColorObjectType.Tint);
|
||
this.memory.WriteByte(c_oSerPropLenType.Double);
|
||
this.memory.WriteDouble2(color.tint);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
this.memory.WriteByte(c_oSer_ColorObjectType.Rgb);
|
||
this.memory.WriteByte(c_oSerPropLenType.Long);
|
||
this.memory.WriteLong(color.getRgb());
|
||
}
|
||
};
|
||
BinaryCommonWriter.prototype.WriteColorTheme = function(unifill, color)
|
||
{
|
||
if(null != color && color.Auto){
|
||
this.memory.WriteByte(c_oSer_ColorThemeType.Auto);
|
||
this.memory.WriteByte(c_oSerPropLenType.Null);
|
||
}
|
||
if (null != unifill && null != unifill.fill && null != unifill.fill.color && unifill.fill.color.color instanceof AscFormat.CSchemeColor) {
|
||
var uniColor = unifill.fill.color;
|
||
if(null != uniColor.color){
|
||
var EThemeColor = AscCommonWord.EThemeColor;
|
||
var nFormatId = EThemeColor.themecolorNone;
|
||
switch(uniColor.color.id){
|
||
case 0: nFormatId = EThemeColor.themecolorAccent1;break;
|
||
case 1: nFormatId = EThemeColor.themecolorAccent2;break;
|
||
case 2: nFormatId = EThemeColor.themecolorAccent3;break;
|
||
case 3: nFormatId = EThemeColor.themecolorAccent4;break;
|
||
case 4: nFormatId = EThemeColor.themecolorAccent5;break;
|
||
case 5: nFormatId = EThemeColor.themecolorAccent6;break;
|
||
case 6: nFormatId = EThemeColor.themecolorBackground1;break;
|
||
case 7: nFormatId = EThemeColor.themecolorBackground2;break;
|
||
case 8: nFormatId = EThemeColor.themecolorDark1;break;
|
||
case 9: nFormatId = EThemeColor.themecolorDark2;break;
|
||
case 10: nFormatId = EThemeColor.themecolorFollowedHyperlink;break;
|
||
case 11: nFormatId = EThemeColor.themecolorHyperlink;break;
|
||
case 12: nFormatId = EThemeColor.themecolorLight1;break;
|
||
case 13: nFormatId = EThemeColor.themecolorLight2;break;
|
||
case 14: nFormatId = EThemeColor.themecolorNone;break;
|
||
case 15: nFormatId = EThemeColor.themecolorText1;break;
|
||
case 16: nFormatId = EThemeColor.themecolorText2;break;
|
||
}
|
||
this.memory.WriteByte(c_oSer_ColorThemeType.Color);
|
||
this.memory.WriteByte(c_oSerPropLenType.Byte);
|
||
this.memory.WriteByte(nFormatId);
|
||
}
|
||
if(null != uniColor.Mods){
|
||
for(var i = 0, length = uniColor.Mods.Mods.length; i < length; ++i){
|
||
var mod = uniColor.Mods.Mods[i];
|
||
if("wordTint" == mod.name){
|
||
this.memory.WriteByte(c_oSer_ColorThemeType.Tint);
|
||
this.memory.WriteByte(c_oSerPropLenType.Byte);
|
||
this.memory.WriteByte(Math.round(mod.val));
|
||
}
|
||
else if("wordShade" == mod.name){
|
||
this.memory.WriteByte(c_oSer_ColorThemeType.Shade);
|
||
this.memory.WriteByte(c_oSerPropLenType.Byte);
|
||
this.memory.WriteByte(Math.round(mod.val));
|
||
}
|
||
}
|
||
}
|
||
}
|
||
};
|
||
BinaryCommonWriter.prototype.WriteBookmark = function(bookmark) {
|
||
var oThis = this;
|
||
if (null !== bookmark.BookmarkId) {
|
||
this.WriteItem(c_oSerBookmark.Id, function() {
|
||
oThis.memory.WriteLong(bookmark.BookmarkId);
|
||
});
|
||
}
|
||
if (bookmark.IsStart() && null !== bookmark.BookmarkName) {
|
||
this.memory.WriteByte(c_oSerBookmark.Name);
|
||
this.memory.WriteString2(bookmark.BookmarkName);
|
||
}
|
||
};
|
||
function Binary_CommonReader(stream)
|
||
{
|
||
this.stream = stream;
|
||
}
|
||
|
||
Binary_CommonReader.prototype.ReadTable = function(fReadContent)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
//stLen
|
||
res = this.stream.EnterFrame(4);
|
||
if(c_oSerConstants.ReadOk != res)
|
||
return res;
|
||
var stLen = this.stream.GetULongLE();
|
||
//Смотрим есть ли данные под всю таблицу в дальнейшем спокойно пользуемся get функциями
|
||
res = this.stream.EnterFrame(stLen);
|
||
if(c_oSerConstants.ReadOk != res)
|
||
return res;
|
||
return this.Read1(stLen, fReadContent);
|
||
};
|
||
Binary_CommonReader.prototype.Read1 = function(stLen, fRead)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
var stCurPos = 0;
|
||
while(stCurPos < stLen)
|
||
{
|
||
this.stream.bLast = false;
|
||
//stItem
|
||
var type = this.stream.GetUChar();
|
||
var length = this.stream.GetULongLE();
|
||
if (stCurPos + length + 5 >= stLen)
|
||
this.stream.bLast = true;
|
||
res = fRead(type, length);
|
||
if(res === c_oSerConstants.ReadUnknown)
|
||
{
|
||
res = this.stream.Skip2(length);
|
||
if(c_oSerConstants.ReadOk != res)
|
||
return res;
|
||
}
|
||
else if(res !== c_oSerConstants.ReadOk)
|
||
return res;
|
||
stCurPos += length + 5;
|
||
}
|
||
return res;
|
||
};
|
||
Binary_CommonReader.prototype.Read2 = function(stLen, fRead)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
var stCurPos = 0;
|
||
while(stCurPos < stLen)
|
||
{
|
||
//stItem
|
||
var type = this.stream.GetUChar();
|
||
var lenType = this.stream.GetUChar();
|
||
var nCurPosShift = 2;
|
||
var nRealLen;
|
||
switch(lenType)
|
||
{
|
||
case c_oSerPropLenType.Null: nRealLen = 0;break;
|
||
case c_oSerPropLenType.Byte: nRealLen = 1;break;
|
||
case c_oSerPropLenType.Short: nRealLen = 2;break;
|
||
case c_oSerPropLenType.Three: nRealLen = 3;break;
|
||
case c_oSerPropLenType.Long:
|
||
case c_oSerPropLenType.Double: nRealLen = 4;break;
|
||
case c_oSerPropLenType.Variable:
|
||
nRealLen = this.stream.GetULongLE();
|
||
nCurPosShift += 4;
|
||
break;
|
||
default:return c_oSerConstants.ErrorUnknown;
|
||
}
|
||
res = fRead(type, nRealLen);
|
||
if(res === c_oSerConstants.ReadUnknown)
|
||
{
|
||
res = this.stream.Skip2(nRealLen);
|
||
if(c_oSerConstants.ReadOk != res)
|
||
return res;
|
||
}
|
||
else if(res !== c_oSerConstants.ReadOk)
|
||
return res;
|
||
stCurPos += nRealLen + nCurPosShift;
|
||
}
|
||
return res;
|
||
};
|
||
Binary_CommonReader.prototype.Read2Spreadsheet = function(stLen, fRead)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
var stCurPos = 0;
|
||
while(stCurPos < stLen)
|
||
{
|
||
//stItem
|
||
var type = this.stream.GetUChar();
|
||
var lenType = this.stream.GetUChar();
|
||
var nCurPosShift = 2;
|
||
var nRealLen;
|
||
switch(lenType)
|
||
{
|
||
case c_oSerPropLenType.Null: nRealLen = 0;break;
|
||
case c_oSerPropLenType.Byte: nRealLen = 1;break;
|
||
case c_oSerPropLenType.Short: nRealLen = 2;break;
|
||
case c_oSerPropLenType.Three: nRealLen = 3;break;
|
||
case c_oSerPropLenType.Long: nRealLen = 4;break;
|
||
case c_oSerPropLenType.Double: nRealLen = 8;break;
|
||
case c_oSerPropLenType.Variable:
|
||
nRealLen = this.stream.GetULongLE();
|
||
nCurPosShift += 4;
|
||
break;
|
||
default:return c_oSerConstants.ErrorUnknown;
|
||
}
|
||
res = fRead(type, nRealLen);
|
||
if(res === c_oSerConstants.ReadUnknown)
|
||
{
|
||
res = this.stream.Skip2(nRealLen);
|
||
if(c_oSerConstants.ReadOk != res)
|
||
return res;
|
||
}
|
||
else if(res !== c_oSerConstants.ReadOk)
|
||
return res;
|
||
stCurPos += nRealLen + nCurPosShift;
|
||
}
|
||
return res;
|
||
};
|
||
Binary_CommonReader.prototype.ReadDouble = function()
|
||
{
|
||
var dRes = 0.0;
|
||
dRes |= this.stream.GetUChar();
|
||
dRes |= this.stream.GetUChar() << 8;
|
||
dRes |= this.stream.GetUChar() << 16;
|
||
dRes |= this.stream.GetUChar() << 24;
|
||
dRes /= 100000;
|
||
return dRes;
|
||
};
|
||
Binary_CommonReader.prototype.ReadColor = function()
|
||
{
|
||
var r = this.stream.GetUChar();
|
||
var g = this.stream.GetUChar();
|
||
var b = this.stream.GetUChar();
|
||
return new AscCommonWord.CDocumentColor(r, g, b);
|
||
};
|
||
Binary_CommonReader.prototype.ReadShd = function(type, length, Shd, themeColor)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
var oThis = this;
|
||
switch(type)
|
||
{
|
||
case c_oSerShdType.Value: Shd.Value = this.stream.GetUChar();break;
|
||
case c_oSerShdType.Color: Shd.Color = this.ReadColor();break;
|
||
case c_oSerShdType.ColorTheme:
|
||
res = this.Read2(length, function(t, l){
|
||
return oThis.ReadColorTheme(t, l, themeColor);
|
||
});
|
||
break;
|
||
default:
|
||
res = c_oSerConstants.ReadUnknown;
|
||
break;
|
||
}
|
||
return res;
|
||
};
|
||
Binary_CommonReader.prototype.ReadColorSpreadsheet = function(type, length, color)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
if ( c_oSer_ColorObjectType.Type == type )
|
||
color.auto = (c_oSer_ColorType.Auto == this.stream.GetUChar());
|
||
else if ( c_oSer_ColorObjectType.Rgb == type )
|
||
color.rgb = 0xffffff & this.stream.GetULongLE();
|
||
else if ( c_oSer_ColorObjectType.Theme == type )
|
||
color.theme = this.stream.GetUChar();
|
||
else if ( c_oSer_ColorObjectType.Tint == type )
|
||
color.tint = this.stream.GetDoubleLE();
|
||
else
|
||
res = c_oSerConstants.ReadUnknown;
|
||
return res;
|
||
};
|
||
Binary_CommonReader.prototype.ReadColorTheme = function(type, length, color)
|
||
{
|
||
var res = c_oSerConstants.ReadOk;
|
||
if ( c_oSer_ColorThemeType.Auto == type )
|
||
color.Auto = true;
|
||
else if ( c_oSer_ColorThemeType.Color == type )
|
||
color.Color = this.stream.GetByte();
|
||
else if ( c_oSer_ColorThemeType.Tint == type )
|
||
color.Tint = this.stream.GetByte();
|
||
else if ( c_oSer_ColorThemeType.Shade == type )
|
||
color.Shade = this.stream.GetByte();
|
||
else
|
||
res = c_oSerConstants.ReadUnknown;
|
||
return res;
|
||
};
|
||
Binary_CommonReader.prototype.ReadBookmark = function(type, length, bookmark) {
|
||
var res = c_oSerConstants.ReadOk;
|
||
if (c_oSerBookmark.Id === type) {
|
||
bookmark.BookmarkId = this.stream.GetULongLE();
|
||
} else if (c_oSerBookmark.Name === type) {
|
||
bookmark.BookmarkName = this.stream.GetString2LE(length);
|
||
} else {
|
||
res = c_oSerConstants.ReadUnknown;
|
||
}
|
||
return res;
|
||
};
|
||
/** @constructor */
|
||
function FT_Stream2(data, size) {
|
||
this.obj = null;
|
||
this.data = data;
|
||
this.size = size;
|
||
this.pos = 0;
|
||
this.cur = 0;
|
||
this.bLast = false;
|
||
}
|
||
|
||
FT_Stream2.prototype.Seek = function(_pos) {
|
||
if (_pos > this.size)
|
||
return c_oSerConstants.ErrorStream;
|
||
this.pos = _pos;
|
||
return c_oSerConstants.ReadOk;
|
||
};
|
||
FT_Stream2.prototype.Seek2 = function(_cur) {
|
||
if (_cur > this.size)
|
||
return c_oSerConstants.ErrorStream;
|
||
this.cur = _cur;
|
||
return c_oSerConstants.ReadOk;
|
||
};
|
||
FT_Stream2.prototype.Skip = function(_skip) {
|
||
if (_skip < 0)
|
||
return c_oSerConstants.ErrorStream;
|
||
return this.Seek(this.pos + _skip);
|
||
};
|
||
FT_Stream2.prototype.Skip2 = function(_skip) {
|
||
if (_skip < 0)
|
||
return c_oSerConstants.ErrorStream;
|
||
return this.Seek2(this.cur + _skip);
|
||
};
|
||
|
||
// 1 bytes
|
||
FT_Stream2.prototype.GetUChar = function() {
|
||
if (this.cur >= this.size)
|
||
return 0;
|
||
return this.data[this.cur++];
|
||
};
|
||
FT_Stream2.prototype.GetChar = function() {
|
||
if (this.cur >= this.size)
|
||
return 0;
|
||
var m = this.data[this.cur++];
|
||
if (m > 127)
|
||
m -= 256;
|
||
return m;
|
||
};
|
||
FT_Stream2.prototype.GetByte = function() {
|
||
return this.GetUChar();
|
||
};
|
||
FT_Stream2.prototype.GetBool = function() {
|
||
var Value = this.GetUChar();
|
||
return ( Value == 0 ? false : true );
|
||
};
|
||
// 2 byte
|
||
FT_Stream2.prototype.GetUShortLE = function() {
|
||
if (this.cur + 1 >= this.size)
|
||
return 0;
|
||
return (this.data[this.cur++] | this.data[this.cur++] << 8);
|
||
};
|
||
// 4 byte
|
||
FT_Stream2.prototype.GetULongLE = function() {
|
||
if (this.cur + 3 >= this.size)
|
||
return 0;
|
||
return (this.data[this.cur++] | this.data[this.cur++] << 8 | this.data[this.cur++] << 16 | this.data[this.cur++] << 24);
|
||
};
|
||
FT_Stream2.prototype.GetLongLE = function() {
|
||
return this.GetULongLE();
|
||
};
|
||
FT_Stream2.prototype.GetLong = function() {
|
||
return this.GetULongLE();
|
||
};
|
||
var tempHelp = new ArrayBuffer(8);
|
||
var tempHelpUnit = new Uint8Array(tempHelp);
|
||
var tempHelpFloat = new Float64Array(tempHelp);
|
||
FT_Stream2.prototype.GetDoubleLE = function() {
|
||
if (this.cur + 7 >= this.size)
|
||
return 0;
|
||
tempHelpUnit[0] = this.GetUChar();
|
||
tempHelpUnit[1] = this.GetUChar();
|
||
tempHelpUnit[2] = this.GetUChar();
|
||
tempHelpUnit[3] = this.GetUChar();
|
||
tempHelpUnit[4] = this.GetUChar();
|
||
tempHelpUnit[5] = this.GetUChar();
|
||
tempHelpUnit[6] = this.GetUChar();
|
||
tempHelpUnit[7] = this.GetUChar();
|
||
return tempHelpFloat[0];
|
||
|
||
var arr = [];
|
||
for(var i = 0; i < 8; ++i)
|
||
arr.push(this.GetUChar());
|
||
return this.doubleDecodeLE754(arr);
|
||
};
|
||
FT_Stream2.prototype.doubleDecodeLE754 = function(a) {
|
||
var s, e, m, i, d, nBits, mLen, eLen, eBias, eMax;
|
||
var el = {len:8, mLen:52, rt:0};
|
||
mLen = el.mLen, eLen = el.len*8-el.mLen-1, eMax = (1<<eLen)-1, eBias = eMax>>1;
|
||
|
||
i = (el.len-1); d = -1; s = a[i]; i+=d; nBits = -7;
|
||
for (e = s&((1<<(-nBits))-1), s>>=(-nBits), nBits += eLen; nBits > 0; e=e*256+a[i], i+=d, nBits-=8);
|
||
for (m = e&((1<<(-nBits))-1), e>>=(-nBits), nBits += mLen; nBits > 0; m=m*256+a[i], i+=d, nBits-=8);
|
||
|
||
switch (e)
|
||
{
|
||
case 0:
|
||
// Zero, or denormalized number
|
||
e = 1-eBias;
|
||
break;
|
||
case eMax:
|
||
// NaN, or +/-Infinity
|
||
return m?NaN:((s?-1:1)*Infinity);
|
||
default:
|
||
// Normalized number
|
||
m = m + Math.pow(2, mLen);
|
||
e = e - eBias;
|
||
break;
|
||
}
|
||
return (s?-1:1) * m * Math.pow(2, e-mLen);
|
||
};
|
||
// 3 byte
|
||
FT_Stream2.prototype.GetUOffsetLE = function() {
|
||
if (this.cur + 2 >= this.size)
|
||
return c_oSerConstants.ReadOk;
|
||
return (this.data[this.cur++] | this.data[this.cur++] << 8 | this.data[this.cur++] << 16);
|
||
};
|
||
FT_Stream2.prototype.GetString2 = function() {
|
||
var Len = this.GetLong();
|
||
return this.GetString2LE(Len);
|
||
};
|
||
//String
|
||
FT_Stream2.prototype.GetString2LE = function(len) {
|
||
if (this.cur + len > this.size)
|
||
return "";
|
||
var a = [];
|
||
for (var i = 0; i + 1 < len; i+=2)
|
||
a.push(String.fromCharCode(this.data[this.cur + i] | this.data[this.cur + i + 1] << 8));
|
||
this.cur += len;
|
||
return a.join("");
|
||
};
|
||
FT_Stream2.prototype.GetString = function() {
|
||
var Len = this.GetLong();
|
||
if (this.cur + 2 * Len > this.size)
|
||
return "";
|
||
var t = "";
|
||
for (var i = 0; i + 1 < 2 * Len; i+=2) {
|
||
var uni = this.data[this.cur + i];
|
||
uni |= this.data[this.cur + i + 1] << 8;
|
||
t += String.fromCharCode(uni);
|
||
}
|
||
this.cur += 2 * Len;
|
||
return t;
|
||
};
|
||
FT_Stream2.prototype.GetCurPos = function() {
|
||
return this.cur;
|
||
};
|
||
FT_Stream2.prototype.GetSize = function() {
|
||
return this.size;
|
||
};
|
||
FT_Stream2.prototype.EnterFrame = function(count) {
|
||
if (this.size - this.pos < count)
|
||
return c_oSerConstants.ErrorStream;
|
||
|
||
this.cur = this.pos;
|
||
this.pos += count;
|
||
return c_oSerConstants.ReadOk;
|
||
};
|
||
FT_Stream2.prototype.GetDouble = function() {
|
||
var dRes = 0.0;
|
||
dRes |= this.GetUChar();
|
||
dRes |= this.GetUChar() << 8;
|
||
dRes |= this.GetUChar() << 16;
|
||
dRes |= this.GetUChar() << 24;
|
||
dRes /= 100000;
|
||
return dRes;
|
||
};
|
||
FT_Stream2.prototype.GetBuffer = function(length) {
|
||
var res = new Array(length);
|
||
for(var i = 0 ; i < length ;++i){
|
||
res[i] = this.data[this.cur++]
|
||
}
|
||
return res;
|
||
};
|
||
var gc_nMaxRow = 1048576;
|
||
var gc_nMaxCol = 16384;
|
||
var gc_nMaxRow0 = gc_nMaxRow - 1;
|
||
var gc_nMaxCol0 = gc_nMaxCol - 1;
|
||
/**
|
||
* @constructor
|
||
*/
|
||
function CellAddressUtils(){
|
||
this._oCodeA = 'A'.charCodeAt(0);
|
||
this._aColnumToColstr = [];
|
||
this.oCellAddressCache = {};
|
||
this.colnumToColstrFromWsView = function (col) {
|
||
var sResult = this._aColnumToColstr[col];
|
||
if (null != sResult)
|
||
return sResult;
|
||
|
||
if(col == 0) return "";
|
||
|
||
var col0 = col - 1;
|
||
var text = String.fromCharCode(65 + (col0 % 26));
|
||
return (this._aColnumToColstr[col] = (col0 < 26 ? text : this.colnumToColstrFromWsView(Math.floor(col0 / 26)) + text));
|
||
};
|
||
this.colnumToColstr = function(num){
|
||
var sResult = this._aColnumToColstr[num];
|
||
if(!sResult){
|
||
// convert 1 to A, 2 to B, ..., 27 to AA etc.
|
||
sResult = "";
|
||
if(num > 0){
|
||
var columnNumber = num;
|
||
var currentLetterNumber;
|
||
while(columnNumber > 0){
|
||
currentLetterNumber = (columnNumber - 1) % 26;
|
||
sResult = String.fromCharCode(currentLetterNumber + 65) + sResult;
|
||
columnNumber = (columnNumber - (currentLetterNumber + 1)) / 26;
|
||
}
|
||
}
|
||
this._aColnumToColstr[num] = sResult;
|
||
}
|
||
return sResult;
|
||
};
|
||
this.colstrToColnum = function(col_str) {
|
||
//convert A to 1; AA to 27
|
||
var col_num = 0;
|
||
for (var i = 0; i < col_str.length; ++i)
|
||
col_num = 26 * col_num + (col_str.charCodeAt(i) - this._oCodeA + 1);
|
||
return col_num;
|
||
};
|
||
this.getCellId = function(row, col){
|
||
return g_oCellAddressUtils.colnumToColstr(col + 1) + (row + 1);
|
||
};
|
||
this.getCellAddress = function(sId)
|
||
{
|
||
var oRes = this.oCellAddressCache[sId];
|
||
if(null == oRes)
|
||
{
|
||
oRes = new CellAddress(sId);
|
||
this.oCellAddressCache[sId] = oRes;
|
||
}
|
||
return oRes;
|
||
};
|
||
}
|
||
var g_oCellAddressUtils = new CellAddressUtils();
|
||
|
||
function CellBase(r, c) {
|
||
this.row = r;
|
||
this.col = c;
|
||
}
|
||
CellBase.prototype.clean = function() {
|
||
this.row = 0;
|
||
this.col = 0;
|
||
};
|
||
CellBase.prototype.clone = function() {
|
||
return new CellBase(this.row, this.col);
|
||
};
|
||
CellBase.prototype.isEqual = function(cell) {
|
||
return this.row === cell.row && this.col === cell.col;
|
||
};
|
||
CellBase.prototype.isEmpty = function() {
|
||
return 0 === this.row && 0 === this.col;
|
||
};
|
||
CellBase.prototype.getName = function() {
|
||
return g_oCellAddressUtils.colnumToColstr(this.col + 1) + (this.row + 1);
|
||
};
|
||
/**
|
||
* @constructor
|
||
*/
|
||
function CellAddress(){
|
||
var argc = arguments.length;
|
||
this._valid = true;
|
||
this._invalidId = false;
|
||
this._invalidCoord = false;
|
||
this.id = null;
|
||
this.row = null;
|
||
this.col = null;
|
||
this.bRowAbs = false;
|
||
this.bColAbs = false;
|
||
this.bIsCol = false;
|
||
this.bIsRow = false;
|
||
this.colLetter = null;
|
||
if(1 == argc){
|
||
//Сразу пришло ID вида "A1"
|
||
this.id = arguments[0].toUpperCase();
|
||
this._invalidCoord = true;
|
||
this._checkId();
|
||
}
|
||
else if(2 == argc){
|
||
//адрес вида (1,1) = "A1". Внутренний формат начинается с 1
|
||
this.row = arguments[0];
|
||
this.col = arguments[1];
|
||
this._checkCoord();
|
||
this._invalidId = true;
|
||
}
|
||
else if(3 == argc){
|
||
//тоже самое что и 2 аргумента, только 0-based
|
||
this.row = arguments[0] + 1;
|
||
this.col = arguments[1] + 1;
|
||
this._checkCoord();
|
||
this._invalidId = true;
|
||
}
|
||
}
|
||
CellAddress.prototype = Object.create(CellBase.prototype);
|
||
CellAddress.prototype.constructor = CellAddress;
|
||
CellAddress.prototype._isDigit=function(symbol){
|
||
return '0' <= symbol && symbol <= '9';
|
||
};
|
||
CellAddress.prototype._isAlpha=function(symbol){
|
||
return 'A' <= symbol && symbol <= 'Z';
|
||
};
|
||
CellAddress.prototype._checkId=function(){
|
||
this._invalidCoord = true;
|
||
this._recalculate(true, false);
|
||
this._checkCoord();
|
||
};
|
||
CellAddress.prototype._checkCoord=function(){
|
||
if( !(this.row >= 1 && this.row <= gc_nMaxRow) )
|
||
this._valid = false;
|
||
else if( !(this.col >= 1 && this.col <= gc_nMaxCol) )
|
||
this._valid = false;
|
||
else
|
||
this._valid = true;
|
||
};
|
||
CellAddress.prototype._recalculate=function(bCoord, bId){
|
||
if(bCoord && this._invalidCoord){
|
||
this._invalidCoord = false;
|
||
var sId = this.id;
|
||
this.row = this.col = 0;//выставляем невалидные значения, чтобы не присваивать их при каждом else
|
||
var indexes = {}, i = -1, indexesCount = 0;
|
||
while ((i = sId.indexOf("$", i + 1)) != -1) {
|
||
indexes[i - indexesCount++] = 1;//отнимаем количество, чтобы индексы указывали на следующий после них символ после удаления $
|
||
}
|
||
if (indexesCount <= 2) {
|
||
if (indexesCount > 0)
|
||
sId = sId.replace(/\$/g, "");
|
||
var nIdLength = sId.length;
|
||
if (nIdLength > 0) {
|
||
var nIndex = 0;
|
||
while (this._isAlpha(sId.charAt(nIndex)) && nIndex < nIdLength)
|
||
nIndex++;
|
||
if (0 == nIndex) {
|
||
// (1,Infinity)
|
||
this.bIsRow = true;
|
||
this.col = 1;
|
||
this.colLetter = g_oCellAddressUtils.colnumToColstr(this.col);
|
||
this.row = sId.substring(nIndex) - 0;
|
||
//this.id = this.colLetter + this.row;
|
||
if (null != indexes[0]) {
|
||
this.bRowAbs = true;
|
||
indexesCount--;
|
||
}
|
||
}
|
||
else if (nIndex == nIdLength) {
|
||
// (Infinity,1)
|
||
this.bIsCol = true;
|
||
this.colLetter = sId;
|
||
this.col = g_oCellAddressUtils.colstrToColnum(this.colLetter);
|
||
this.row = 1;
|
||
//this.id = this.colLetter + this.row;
|
||
if (null != indexes[0]) {
|
||
this.bColAbs = true;
|
||
indexesCount--;
|
||
}
|
||
}
|
||
else {
|
||
this.colLetter = sId.substring(0, nIndex);
|
||
this.col = g_oCellAddressUtils.colstrToColnum(this.colLetter);
|
||
this.row = sId.substring(nIndex) - 0;
|
||
if (null != indexes[0]) {
|
||
this.bColAbs = true;
|
||
indexesCount--;
|
||
}
|
||
if (null != indexes[nIndex]) {
|
||
this.bRowAbs = true;
|
||
indexesCount--;
|
||
}
|
||
}
|
||
if (indexesCount > 0) {
|
||
this.row = this.col = 0;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else if(bId && this._invalidId){
|
||
this._invalidId = false;
|
||
this.colLetter = g_oCellAddressUtils.colnumToColstr(this.col);
|
||
if(this.bIsCol)
|
||
this.id = this.colLetter;
|
||
else if(this.bIsRow)
|
||
this.id = this.row;
|
||
else
|
||
this.id = this.colLetter + this.row;
|
||
}
|
||
};
|
||
CellAddress.prototype.isValid=function(){
|
||
return this._valid;
|
||
};
|
||
CellAddress.prototype.getID=function(){
|
||
this._recalculate(false, true);
|
||
return this.id;
|
||
};
|
||
CellAddress.prototype.getIDAbsolute=function(){
|
||
this._recalculate(true, false);
|
||
return "$" + this.getColLetter() + "$" + this.getRow();
|
||
};
|
||
CellAddress.prototype.getRow=function(){
|
||
this._recalculate(true, false);
|
||
return this.row;
|
||
};
|
||
CellAddress.prototype.getRow0=function(){
|
||
//0 - based
|
||
this._recalculate(true, false);
|
||
return this.row - 1;
|
||
};
|
||
CellAddress.prototype.getRowAbs=function(){
|
||
this._recalculate(true, false);
|
||
return this.bRowAbs;
|
||
};
|
||
CellAddress.prototype.getIsRow=function(){
|
||
this._recalculate(true, false);
|
||
return this.bIsRow;
|
||
};
|
||
CellAddress.prototype.getCol=function(){
|
||
this._recalculate(true, false);
|
||
return this.col;
|
||
};
|
||
CellAddress.prototype.getCol0=function(){
|
||
//0 - based
|
||
this._recalculate(true, false);
|
||
return this.col - 1;
|
||
};
|
||
CellAddress.prototype.getColAbs=function(){
|
||
this._recalculate(true, false);
|
||
return this.bColAbs;
|
||
};
|
||
CellAddress.prototype.getIsCol=function(){
|
||
this._recalculate(true, false);
|
||
return this.bIsCol;
|
||
};
|
||
CellAddress.prototype.getColLetter=function(){
|
||
this._recalculate(false, true);
|
||
return this.colLetter;
|
||
};
|
||
CellAddress.prototype.setRow=function(val){
|
||
if( !(this.row >= 0 && this.row <= gc_nMaxRow) )
|
||
this._valid = false;
|
||
this._invalidId = true;
|
||
this.row = val;
|
||
};
|
||
CellAddress.prototype.setCol=function(val){
|
||
if( !(val >= 0 && val <= gc_nMaxCol) )
|
||
return;
|
||
this._invalidId = true;
|
||
this.col = val;
|
||
};
|
||
CellAddress.prototype.setId=function(val){
|
||
this._invalidCoord = true;
|
||
this.id = val;
|
||
this._checkId();
|
||
};
|
||
CellAddress.prototype.moveRow=function(diff){
|
||
var val = this.row + diff;
|
||
if( !(val >= 0 && val <= gc_nMaxRow) )
|
||
return;
|
||
this._invalidId = true;
|
||
this.row = val;
|
||
};
|
||
CellAddress.prototype.moveCol=function(diff){
|
||
var val = this.col + diff;
|
||
if( !( val >= 0 && val <= gc_nMaxCol) )
|
||
return;
|
||
this._invalidId = true;
|
||
this.col = val;
|
||
};
|
||
|
||
function isRealObject(obj)
|
||
{
|
||
return obj !== null && typeof obj === "object";
|
||
}
|
||
|
||
function FileStream(data, size)
|
||
{
|
||
this.obj = null;
|
||
this.data = data;
|
||
this.size = size;
|
||
this.pos = 0;
|
||
this.cur = 0;
|
||
|
||
this.Seek = function(_pos)
|
||
{
|
||
if (_pos > this.size)
|
||
return 1;
|
||
this.pos = _pos;
|
||
return 0;
|
||
}
|
||
this.Seek2 = function(_cur)
|
||
{
|
||
if (_cur > this.size)
|
||
return 1;
|
||
this.cur = _cur;
|
||
return 0;
|
||
}
|
||
this.Skip = function(_skip)
|
||
{
|
||
if (_skip < 0)
|
||
return 1;
|
||
return this.Seek(this.pos + _skip);
|
||
}
|
||
this.Skip2 = function(_skip)
|
||
{
|
||
if (_skip < 0)
|
||
return 1;
|
||
return this.Seek2(this.cur + _skip);
|
||
}
|
||
|
||
// 1 bytes
|
||
this.GetUChar = function()
|
||
{
|
||
if (this.cur >= this.size)
|
||
return 0;
|
||
return this.data[this.cur++];
|
||
}
|
||
this.GetBool = function()
|
||
{
|
||
if (this.cur >= this.size)
|
||
return 0;
|
||
return (this.data[this.cur++] == 1) ? true : false;
|
||
}
|
||
|
||
// 2 byte
|
||
this.GetUShort = function()
|
||
{
|
||
if (this.cur + 1 >= this.size)
|
||
return 0;
|
||
return (this.data[this.cur++] | this.data[this.cur++] << 8);
|
||
}
|
||
|
||
// 4 byte
|
||
this.GetULong = function()
|
||
{
|
||
if (this.cur + 3 >= this.size)
|
||
return 0;
|
||
var r = (this.data[this.cur++] | this.data[this.cur++] << 8 | this.data[this.cur++] << 16 | this.data[this.cur++] << 24);
|
||
if (r < 0)
|
||
r += (0xFFFFFFFF + 1);
|
||
return r;
|
||
}
|
||
|
||
this.GetLong = function()
|
||
{
|
||
if (this.cur + 3 >= this.size)
|
||
return 0;
|
||
return (this.data[this.cur++] | this.data[this.cur++] << 8 | this.data[this.cur++] << 16 | this.data[this.cur++] << 24);
|
||
}
|
||
|
||
//String
|
||
this.GetString = function(len)
|
||
{
|
||
len *= 2;
|
||
if (this.cur + len > this.size)
|
||
return "";
|
||
var t = "";
|
||
for (var i = 0; i < len; i+=2)
|
||
{
|
||
var _c = this.data[this.cur + i + 1] << 8 | this.data[this.cur + i];
|
||
if (_c == 0)
|
||
break;
|
||
|
||
t += String.fromCharCode(_c);
|
||
}
|
||
this.cur += len;
|
||
return t;
|
||
}
|
||
this.GetString1 = function(len)
|
||
{
|
||
if (this.cur + len > this.size)
|
||
return "";
|
||
var t = "";
|
||
for (var i = 0; i < len; i++)
|
||
{
|
||
var _c = this.data[this.cur + i];
|
||
if (_c == 0)
|
||
break;
|
||
|
||
t += String.fromCharCode(_c);
|
||
}
|
||
this.cur += len;
|
||
return t;
|
||
}
|
||
this.GetString2 = function()
|
||
{
|
||
var len = this.GetULong();
|
||
return this.GetString(len);
|
||
}
|
||
|
||
this.GetString2A = function()
|
||
{
|
||
var len = this.GetULong();
|
||
return this.GetString1(len);
|
||
}
|
||
|
||
this.EnterFrame = function(count)
|
||
{
|
||
if (this.pos >= this.size || this.size - this.pos < count)
|
||
return 1;
|
||
|
||
this.cur = this.pos;
|
||
this.pos += count;
|
||
return 0;
|
||
}
|
||
|
||
this.SkipRecord = function()
|
||
{
|
||
var _len = this.GetULong();
|
||
this.Skip2(_len);
|
||
}
|
||
|
||
this.GetPercentage = function()
|
||
{
|
||
var s = this.GetString2();
|
||
var _len = s.length;
|
||
if (_len == 0)
|
||
return null;
|
||
|
||
var _ret = null;
|
||
if ((_len - 1) == s.indexOf("%"))
|
||
{
|
||
s.substring(0, _len - 1);
|
||
_ret = parseFloat(s);
|
||
if (isNaN(_ret))
|
||
_ret = null;
|
||
}
|
||
else
|
||
{
|
||
_ret = parseFloat(s);
|
||
if (isNaN(_ret))
|
||
_ret = null;
|
||
else
|
||
_ret /= 1000;
|
||
}
|
||
|
||
return _ret;
|
||
}
|
||
}
|
||
function GetUTF16_fromUnicodeChar(code) {
|
||
if (code < 0x10000) {
|
||
return String.fromCharCode(code);
|
||
} else {
|
||
code -= 0x10000;
|
||
return String.fromCharCode(0xD800 | ((code >> 10) & 0x03FF)) +
|
||
String.fromCharCode(0xDC00 | (code & 0x03FF));
|
||
}
|
||
};
|
||
function GetStringUtf8(reader, len) {
|
||
if (reader.cur + len > reader.size) {
|
||
return "";
|
||
}
|
||
var _res = "";
|
||
|
||
var end = reader.cur + len;
|
||
var val = 0;
|
||
while (reader.cur < end) {
|
||
var byteMain = reader.data[reader.cur];
|
||
if (0x00 == (byteMain & 0x80)) {
|
||
// 1 byte
|
||
_res += GetUTF16_fromUnicodeChar(byteMain);
|
||
++reader.cur;
|
||
}
|
||
else if (0x00 == (byteMain & 0x20)) {
|
||
// 2 byte
|
||
val = (((byteMain & 0x1F) << 6) |
|
||
(reader.data[reader.cur + 1] & 0x3F));
|
||
_res += GetUTF16_fromUnicodeChar(val);
|
||
reader.cur += 2;
|
||
}
|
||
else if (0x00 == (byteMain & 0x10)) {
|
||
// 3 byte
|
||
val = (((byteMain & 0x0F) << 12) |
|
||
((reader.data[reader.cur + 1] & 0x3F) << 6) |
|
||
(reader.data[reader.cur + 2] & 0x3F));
|
||
|
||
_res += GetUTF16_fromUnicodeChar(val);
|
||
reader.cur += 3;
|
||
}
|
||
else if (0x00 == (byteMain & 0x08)) {
|
||
// 4 byte
|
||
val = (((byteMain & 0x07) << 18) |
|
||
((reader.data[reader.cur + 1] & 0x3F) << 12) |
|
||
((reader.data[reader.cur + 2] & 0x3F) << 6) |
|
||
(reader.data[reader.cur + 3] & 0x3F));
|
||
|
||
_res += GetUTF16_fromUnicodeChar(val);
|
||
reader.cur += 4;
|
||
}
|
||
else if (0x00 == (byteMain & 0x04)) {
|
||
// 5 byte
|
||
val = (((byteMain & 0x03) << 24) |
|
||
((reader.data[reader.cur + 1] & 0x3F) << 18) |
|
||
((reader.data[reader.cur + 2] & 0x3F) << 12) |
|
||
((reader.data[reader.cur + 3] & 0x3F) << 6) |
|
||
(reader.data[reader.cur + 4] & 0x3F));
|
||
|
||
_res += GetUTF16_fromUnicodeChar(val);
|
||
reader.cur += 5;
|
||
}
|
||
else {
|
||
// 6 byte
|
||
val = (((byteMain & 0x01) << 30) |
|
||
((reader.data[reader.cur + 1] & 0x3F) << 24) |
|
||
((reader.data[reader.cur + 2] & 0x3F) << 18) |
|
||
((reader.data[reader.cur + 3] & 0x3F) << 12) |
|
||
((reader.data[reader.cur + 4] & 0x3F) << 6) |
|
||
(reader.data[reader.cur + 5] & 0x3F));
|
||
|
||
_res += GetUTF16_fromUnicodeChar(val);
|
||
reader.cur += 6;
|
||
}
|
||
}
|
||
|
||
return _res;
|
||
};
|
||
|
||
//----------------------------------------------------------export----------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].c_oSerConstants = c_oSerConstants;
|
||
window['AscCommon'].c_oSerPropLenType = c_oSerPropLenType;
|
||
window['AscCommon'].c_oSer_ColorType = c_oSer_ColorType;
|
||
window['AscCommon'].c_oSerBorderType = c_oSerBorderType;
|
||
window['AscCommon'].c_oSerBordersType = c_oSerBordersType;
|
||
window['AscCommon'].c_oSerPaddingType = c_oSerPaddingType;
|
||
window['AscCommon'].g_tabtype_left = 0;
|
||
window['AscCommon'].g_tabtype_right = 1;
|
||
window['AscCommon'].g_tabtype_center = 2;
|
||
window['AscCommon'].g_tabtype_clear = 3;
|
||
window['AscCommon'].BinaryCommonWriter = BinaryCommonWriter;
|
||
window['AscCommon'].Binary_CommonReader = Binary_CommonReader;
|
||
window['AscCommon'].FT_Stream2 = FT_Stream2;
|
||
window['AscCommon'].gc_nMaxRow = gc_nMaxRow;
|
||
window['AscCommon'].gc_nMaxCol = gc_nMaxCol;
|
||
window['AscCommon'].gc_nMaxRow0 = gc_nMaxRow0;
|
||
window['AscCommon'].gc_nMaxCol0 = gc_nMaxCol0;
|
||
window['AscCommon'].g_oCellAddressUtils = g_oCellAddressUtils;
|
||
window['AscCommon'].CellBase = CellBase;
|
||
window['AscCommon'].CellAddress = CellAddress;
|
||
window['AscCommon'].isRealObject = isRealObject;
|
||
window['AscCommon'].FileStream = FileStream;
|
||
window['AscCommon'].GetStringUtf8 = GetStringUtf8;
|
||
window['AscCommon'].g_nodeAttributeStart = 0xFA;
|
||
window['AscCommon'].g_nodeAttributeEnd = 0xFB;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function (window, undefined)
|
||
{
|
||
// Import
|
||
var AscBrowser = AscCommon.AscBrowser;
|
||
var locktype_None = AscCommon.locktype_None;
|
||
var locktype_Mine = AscCommon.locktype_Mine;
|
||
var locktype_Other = AscCommon.locktype_Other;
|
||
var locktype_Other2 = AscCommon.locktype_Other2;
|
||
var locktype_Other3 = AscCommon.locktype_Other3;
|
||
var contentchanges_Add = AscCommon.contentchanges_Add;
|
||
var CColor = AscCommon.CColor;
|
||
var g_oCellAddressUtils = AscCommon.g_oCellAddressUtils;
|
||
|
||
var c_oAscFileType = Asc.c_oAscFileType;
|
||
|
||
if (typeof String.prototype.startsWith !== 'function')
|
||
{
|
||
String.prototype.startsWith = function (str)
|
||
{
|
||
return this.indexOf(str) === 0;
|
||
};
|
||
String.prototype['startsWith'] = String.prototype.startsWith;
|
||
}
|
||
if (typeof String.prototype.endsWith !== 'function')
|
||
{
|
||
String.prototype.endsWith = function (suffix)
|
||
{
|
||
return this.indexOf(suffix, this.length - suffix.length) !== -1;
|
||
};
|
||
String.prototype['endsWith'] = String.prototype.endsWith;
|
||
}
|
||
if (typeof String.prototype.repeat !== 'function')
|
||
{
|
||
String.prototype.repeat = function (count)
|
||
{
|
||
'use strict';
|
||
if (this == null)
|
||
{
|
||
throw new TypeError('can\'t convert ' + this + ' to object');
|
||
}
|
||
var str = '' + this;
|
||
count = +count;
|
||
if (count != count)
|
||
{
|
||
count = 0;
|
||
}
|
||
if (count < 0)
|
||
{
|
||
throw new RangeError('repeat count must be non-negative');
|
||
}
|
||
if (count == Infinity)
|
||
{
|
||
throw new RangeError('repeat count must be less than infinity');
|
||
}
|
||
count = Math.floor(count);
|
||
if (str.length == 0 || count == 0)
|
||
{
|
||
return '';
|
||
}
|
||
// Обеспечение того, что count является 31-битным целым числом, позволяет нам значительно
|
||
// соптимизировать главную часть функции. Впрочем, большинство современных (на август
|
||
// 2014 года) браузеров не обрабатывают строки, длиннее 1 << 28 символов, так что:
|
||
if (str.length * count >= 1 << 28)
|
||
{
|
||
throw new RangeError('repeat count must not overflow maximum string size');
|
||
}
|
||
var rpt = '';
|
||
for (; ;)
|
||
{
|
||
if ((count & 1) == 1)
|
||
{
|
||
rpt += str;
|
||
}
|
||
count >>>= 1;
|
||
if (count == 0)
|
||
{
|
||
break;
|
||
}
|
||
str += str;
|
||
}
|
||
return rpt;
|
||
};
|
||
String.prototype['repeat'] = String.prototype.repeat;
|
||
}
|
||
// Extend javascript String type
|
||
String.prototype.strongMatch = function (regExp)
|
||
{
|
||
if (regExp && regExp instanceof RegExp)
|
||
{
|
||
var arr = this.toString().match(regExp);
|
||
return !!(arr && arr.length > 0 && arr[0].length == this.length);
|
||
}
|
||
|
||
return false;
|
||
};
|
||
|
||
if (typeof require === 'function' && !window['XRegExp'])
|
||
{
|
||
window['XRegExp'] = require('xregexp');
|
||
}
|
||
|
||
var oZipImages = null;
|
||
var sDownloadServiceLocalUrl = "../../../../downloadas";
|
||
var sUploadServiceLocalUrl = "../../../../upload";
|
||
var sUploadServiceLocalUrlOld = "../../../../uploadold";
|
||
var sSaveFileLocalUrl = "../../../../savefile";
|
||
var nMaxRequestLength = 5242880;//5mb <requestLimits maxAllowedContentLength="30000000" /> default 30mb
|
||
|
||
function getSockJs()
|
||
{
|
||
return window['SockJS'] || require('sockjs');
|
||
}
|
||
function getJSZipUtils()
|
||
{
|
||
return window['JSZipUtils'] || require('jsziputils');
|
||
}
|
||
function getJSZip()
|
||
{
|
||
return window['JSZip'] || require('jszip');
|
||
}
|
||
|
||
function JSZipWrapper() {
|
||
this.files = {};
|
||
}
|
||
|
||
JSZipWrapper.prototype.loadAsync = function(data, options) {
|
||
var t = this;
|
||
|
||
if (window["native"]) {
|
||
return new Promise(function(resolve, reject) {
|
||
|
||
var retFiles = null;
|
||
if (options && options["base64"] === true)
|
||
retFiles = window["native"]["ZipOpenBase64"](data);
|
||
else
|
||
retFiles = window["native"]["ZipOpen"](data);
|
||
|
||
if (null != retFiles)
|
||
{
|
||
for (var id in retFiles) {
|
||
t.files[id] = new JSZipObjectWrapper(retFiles[id]);
|
||
}
|
||
|
||
resolve(t);
|
||
}
|
||
else
|
||
{
|
||
reject(new Error("Failed archive"));
|
||
}
|
||
|
||
});
|
||
}
|
||
|
||
return AscCommon.getJSZip().loadAsync(data, options).then(function(zip){
|
||
for (var id in zip.files) {
|
||
t.files[id] = new JSZipObjectWrapper(zip.files[id]);
|
||
}
|
||
return t;
|
||
});
|
||
};
|
||
JSZipWrapper.prototype.close = function() {
|
||
if (window["native"])
|
||
window["native"]["ZipClose"]();
|
||
};
|
||
|
||
function JSZipObjectWrapper(data) {
|
||
this.data = data;
|
||
}
|
||
JSZipObjectWrapper.prototype.async = function(type) {
|
||
|
||
if (window["native"]) {
|
||
var t = this;
|
||
|
||
return new Promise(function(resolve, reject) {
|
||
|
||
var ret = window["native"]["ZipFileAsString"](t.data);
|
||
|
||
if (null != ret)
|
||
{
|
||
resolve(ret);
|
||
}
|
||
else
|
||
{
|
||
reject(new Error("Failed file in archive"));
|
||
}
|
||
|
||
});
|
||
}
|
||
|
||
return this.data.async(type);
|
||
};
|
||
|
||
function getBaseUrl()
|
||
{
|
||
var indexHtml = window["location"]["href"];
|
||
var questInd = indexHtml.indexOf("?");
|
||
if (questInd > 0)
|
||
{
|
||
indexHtml = indexHtml.substring(0, questInd);
|
||
}
|
||
return indexHtml.substring(0, indexHtml.lastIndexOf("/") + 1);
|
||
}
|
||
|
||
function getEncodingParams()
|
||
{
|
||
var res = [];
|
||
for (var i = 0; i < AscCommon.c_oAscEncodings.length; ++i)
|
||
{
|
||
var encoding = AscCommon.c_oAscEncodings[i];
|
||
var newElem = {'codepage': encoding[0], 'lcid': encoding[1], 'name': encoding[3]};
|
||
res.push(newElem);
|
||
}
|
||
return res;
|
||
}
|
||
|
||
function getEncodingByBOM(data) {
|
||
var res = {encoding: AscCommon.c_oAscCodePageNone, size: 0};
|
||
if (data.length >= 2) {
|
||
res.size = 2;
|
||
if (0xFF == data[0] && 0xFE == data[1]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf16;
|
||
} else if (0xFE == data[0] && 0xFF == data[1]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf16BE;
|
||
} else if (data.length >= 3) {
|
||
res.size = 3;
|
||
if (0xEF == data[0] && 0xBB == data[1] && 0xBF == data[2]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf8;
|
||
} else if (data.length >= 4) {
|
||
res.size = 4;
|
||
if (0xFF == data[0] && 0xFE == data[1] && 0x00 == data[2] && 0x00 == data[3]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf32;
|
||
} else if (0x00 == data[0] && 0x00 == data[1] && 0xFE == data[2] && 0xFF == data[3]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf32BE;
|
||
} else if (0x2B == data[0] && 0x2F == data[1] && 0x76 == data[2] && 0x38 == data[3]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf7;
|
||
} else if (0x2B == data[0] && 0x2F == data[1] && 0x76 == data[2] && 0x39 == data[3]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf7;
|
||
} else if (0x2B == data[0] && 0x2F == data[1] && 0x76 == data[2] && 0x2B == data[3]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf7;
|
||
} else if (0x2B == data[0] && 0x2F == data[1] && 0x76 == data[2] && 0x2F == data[3]) {
|
||
res.encoding = AscCommon.c_oAscCodePageUtf7;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
return res;
|
||
}
|
||
|
||
function DocumentUrls()
|
||
{
|
||
this.urls = {};
|
||
this.urlsReverse = {};
|
||
this.documentUrl = "";
|
||
this.imageCount = 0;
|
||
}
|
||
|
||
DocumentUrls.prototype = {
|
||
mediaPrefix: 'media/',
|
||
init: function (urls)
|
||
{
|
||
this.addUrls(urls);
|
||
},
|
||
getUrls: function ()
|
||
{
|
||
return this.urls;
|
||
},
|
||
addUrls: function (urls)
|
||
{
|
||
for (var i in urls)
|
||
{
|
||
var url = urls[i];
|
||
this.urls[i] = url;
|
||
this.urlsReverse[url] = i;
|
||
this.imageCount++;
|
||
}
|
||
|
||
if (window["IS_NATIVE_EDITOR"])
|
||
{
|
||
window["native"]["setUrlsCount"](this.imageCount);
|
||
}
|
||
},
|
||
addImageUrl: function (strPath, url)
|
||
{
|
||
var urls = {};
|
||
urls[this.mediaPrefix + strPath] = url;
|
||
this.addUrls(urls);
|
||
},
|
||
getImageUrl: function (strPath)
|
||
{
|
||
return this.getUrl(this.mediaPrefix + strPath);
|
||
},
|
||
getImageLocal: function (url)
|
||
{
|
||
if(url && 0 === url.indexOf('data:image'))
|
||
{
|
||
return null;
|
||
}
|
||
var imageLocal = this.getLocal(url);
|
||
if (imageLocal && this.mediaPrefix == imageLocal.substring(0, this.mediaPrefix.length))
|
||
imageLocal = imageLocal.substring(this.mediaPrefix.length);
|
||
return imageLocal;
|
||
},
|
||
imagePath2Local: function (imageLocal)
|
||
{
|
||
if (imageLocal && this.mediaPrefix == imageLocal.substring(0, this.mediaPrefix.length))
|
||
imageLocal = imageLocal.substring(this.mediaPrefix.length);
|
||
return imageLocal;
|
||
},
|
||
getUrl: function (strPath)
|
||
{
|
||
if (this.urls)
|
||
{
|
||
return this.urls[strPath];
|
||
}
|
||
return null;
|
||
},
|
||
getLocal: function (url)
|
||
{
|
||
if (this.urlsReverse)
|
||
{
|
||
var res = this.urlsReverse[url];
|
||
if (!res && typeof editor !== 'undefined' && editor.ThemeLoader && 0 == url.indexOf(editor.ThemeLoader.ThemesUrlAbs))
|
||
{
|
||
res = url.substring(editor.ThemeLoader.ThemesUrlAbs.length);
|
||
}
|
||
return res;
|
||
}
|
||
return null;
|
||
},
|
||
getMaxIndex: function (url)
|
||
{
|
||
return this.imageCount;
|
||
},
|
||
getImageUrlsWithOtherExtention: function(imageLocal) {
|
||
var res = [];
|
||
var filename = GetFileName(imageLocal);
|
||
for (var i in this.urls) {
|
||
if (0 == i.indexOf(this.mediaPrefix + filename + '.') && this.mediaPrefix + imageLocal !== i) {
|
||
res.push(this.urls[i]);
|
||
}
|
||
}
|
||
return res;
|
||
}
|
||
};
|
||
var g_oDocumentUrls = new DocumentUrls();
|
||
|
||
function CHTMLCursor()
|
||
{
|
||
this.map = {};
|
||
this.mapRetina = {};
|
||
|
||
this.value = function(param)
|
||
{
|
||
var _map = this.map;
|
||
if ((window["AscDesktopEditor"] && !AscCommon.AscBrowser.isMacOs) && AscCommon.AscBrowser.isRetina)
|
||
_map = this.mapRetina;
|
||
|
||
return _map[param] ? _map[param] : param;
|
||
};
|
||
|
||
this.register = function(type, url_ie, url_main, default_css_value)
|
||
{
|
||
if (AscBrowser.isIE)
|
||
{
|
||
var isTestRetinaNeed = (url_ie.lastIndexOf(".cur") == (url_ie.length - 4)) ? false : true;
|
||
|
||
if (isTestRetinaNeed)
|
||
this.map[type] = ("url(../../../../sdkjs/common/Images/" + url_ie + (AscBrowser.isRetina ? "_2x" : "") + ".cur), " + default_css_value);
|
||
else
|
||
this.map[type] = ("url(../../../../sdkjs/common/Images/" + url_ie + "), " + default_css_value);
|
||
}
|
||
else if (window.opera)
|
||
{
|
||
this.map[type] = default_css_value;
|
||
}
|
||
else
|
||
{
|
||
this.map[type] = ("url('../../../../sdkjs/common/Images/" + url_main[0] + ".png') " + url_main[1] + " " + url_main[2] + ", " + default_css_value);
|
||
this.mapRetina[type] = ("url('../../../../sdkjs/common/Images/" + url_main[0] + "_2x.png') " + (url_main[1] << 1) + " " + (url_main[2] << 1) + ", " + default_css_value);
|
||
}
|
||
};
|
||
}
|
||
|
||
function OpenFileResult()
|
||
{
|
||
this.bSerFormat = false;
|
||
this.data = null;
|
||
this.url = null;
|
||
this.changes = null;
|
||
}
|
||
|
||
function saveWithParts(fSendCommand, fCallback, fCallbackRequest, oAdditionalData, dataContainer)
|
||
{
|
||
var index = dataContainer.index;
|
||
if (null == dataContainer.part && (!dataContainer.data || dataContainer.data.length <= nMaxRequestLength))
|
||
{
|
||
oAdditionalData["savetype"] = AscCommon.c_oAscSaveTypes.CompleteAll;
|
||
}
|
||
else
|
||
{
|
||
if (0 == index)
|
||
{
|
||
oAdditionalData["savetype"] = AscCommon.c_oAscSaveTypes.PartStart;
|
||
dataContainer.count = Math.ceil(dataContainer.data.length / nMaxRequestLength);
|
||
}
|
||
else if (index != dataContainer.count - 1)
|
||
{
|
||
oAdditionalData["savetype"] = AscCommon.c_oAscSaveTypes.Part;
|
||
}
|
||
else
|
||
{
|
||
oAdditionalData["savetype"] = AscCommon.c_oAscSaveTypes.Complete;
|
||
}
|
||
if(typeof dataContainer.data === 'string') {
|
||
dataContainer.part = dataContainer.data.substring(index * nMaxRequestLength, (index + 1) * nMaxRequestLength);
|
||
} else {
|
||
dataContainer.part = dataContainer.data.subarray(index * nMaxRequestLength, (index + 1) * nMaxRequestLength);
|
||
}
|
||
}
|
||
dataContainer.index++;
|
||
oAdditionalData["saveindex"] = dataContainer.index;
|
||
fSendCommand(function (incomeObject)
|
||
{
|
||
if (null != incomeObject && "ok" == incomeObject["status"])
|
||
{
|
||
if (dataContainer.index < dataContainer.count)
|
||
{
|
||
oAdditionalData["savekey"] = incomeObject["data"];
|
||
saveWithParts(fSendCommand, fCallback, fCallbackRequest, oAdditionalData, dataContainer);
|
||
}
|
||
else if (fCallbackRequest)
|
||
{
|
||
fCallbackRequest(incomeObject);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
fCallbackRequest ? fCallbackRequest(incomeObject) : fCallback(incomeObject);
|
||
}
|
||
}, oAdditionalData, dataContainer);
|
||
}
|
||
|
||
function loadFileContent(url, callback, opt_responseType)
|
||
{
|
||
asc_ajax({
|
||
url: url,
|
||
dataType: "text",
|
||
responseType: opt_responseType,
|
||
success: callback,
|
||
error: function ()
|
||
{
|
||
callback(null);
|
||
}
|
||
});
|
||
}
|
||
|
||
function getImageFromChanges(name)
|
||
{
|
||
var content;
|
||
var ext = GetFileExtension(name);
|
||
if (null !== ext && oZipImages && (content = oZipImages[name]))
|
||
{
|
||
return 'data:image/' + ext + ';base64,' + AscCommon.Base64Encode(content, content.length, 0);
|
||
}
|
||
return null;
|
||
}
|
||
|
||
function initStreamFromResponse(httpRequest) {
|
||
var stream;
|
||
if (typeof ArrayBuffer !== 'undefined') {
|
||
stream = new Uint8Array(httpRequest.response);
|
||
} else if (AscCommon.AscBrowser.isIE) {
|
||
var _response = new VBArray(httpRequest["responseBody"]).toArray();
|
||
|
||
var srcLen = _response.length;
|
||
var pointer = g_memory.Alloc(srcLen);
|
||
var tempStream = new AscCommon.FT_Stream2(pointer.data, srcLen);
|
||
tempStream.obj = pointer.obj;
|
||
|
||
stream = tempStream.data;
|
||
var index = 0;
|
||
|
||
while (index < srcLen)
|
||
{
|
||
stream[index] = _response[index];
|
||
index++;
|
||
}
|
||
}
|
||
return stream;
|
||
}
|
||
function checkStreamSignature(stream, Signature) {
|
||
if (stream.length > Signature.length) {
|
||
for(var i = 0 ; i < Signature.length; ++i){
|
||
if(stream[i] !== Signature.charCodeAt(i)){
|
||
return false;
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
function openFileCommand(binUrl, changesUrl, Signature, callback)
|
||
{
|
||
var bError = false, oResult = new OpenFileResult(), bEndLoadFile = false, bEndLoadChanges = false;
|
||
var onEndOpen = function ()
|
||
{
|
||
if (bEndLoadFile && bEndLoadChanges)
|
||
{
|
||
if (callback)
|
||
{
|
||
callback(bError, oResult);
|
||
}
|
||
}
|
||
};
|
||
var sFileUrl = binUrl;
|
||
sFileUrl = sFileUrl.replace(/\\/g, "/");
|
||
|
||
if (!window['IS_NATIVE_EDITOR'])
|
||
{
|
||
loadFileContent(sFileUrl, function (httpRequest) {
|
||
//получаем url к папке с файлом
|
||
var url;
|
||
var nIndex = sFileUrl.lastIndexOf("/");
|
||
url = (-1 !== nIndex) ? sFileUrl.substring(0, nIndex + 1) : sFileUrl;
|
||
if (httpRequest)
|
||
{
|
||
var stream = initStreamFromResponse(httpRequest);
|
||
if (stream) {
|
||
oResult.bSerFormat = checkStreamSignature(stream, Signature);
|
||
oResult.data = stream;
|
||
} else {
|
||
bError = true;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
bError = true;
|
||
}
|
||
bEndLoadFile = true;
|
||
onEndOpen();
|
||
}, "arraybuffer");
|
||
}
|
||
|
||
if (changesUrl)
|
||
{
|
||
oZipImages = {};
|
||
getJSZipUtils().getBinaryContent(changesUrl, function (err, data)
|
||
{
|
||
if (err)
|
||
{
|
||
bEndLoadChanges = true;
|
||
bError = true;
|
||
onEndOpen();
|
||
return;
|
||
}
|
||
|
||
oResult.changes = [];
|
||
getJSZip().loadAsync(data).then(function (zipChanges)
|
||
{
|
||
var relativePaths = [];
|
||
var promises = [];
|
||
zipChanges.forEach(function (relativePath, file)
|
||
{
|
||
relativePaths.push(relativePath);
|
||
promises.push(file.async(relativePath.endsWith('.json') ? 'string' : 'uint8array'));
|
||
});
|
||
Promise.all(promises).then(function (values)
|
||
{
|
||
var relativePath;
|
||
for (var i = 0; i < values.length; ++i)
|
||
{
|
||
if ((relativePath = relativePaths[i]).endsWith('.json'))
|
||
{
|
||
oResult.changes[parseInt(relativePath.slice('changes'.length))] = JSON.parse(values[i]);
|
||
}
|
||
else
|
||
{
|
||
oZipImages[relativePath] = values[i];
|
||
}
|
||
}
|
||
bEndLoadChanges = true;
|
||
onEndOpen();
|
||
});
|
||
});
|
||
});
|
||
}
|
||
else
|
||
{
|
||
oZipImages = null;
|
||
bEndLoadChanges = true;
|
||
}
|
||
|
||
if (window['IS_NATIVE_EDITOR'])
|
||
{
|
||
var stream = window["native"]["openFileCommand"](sFileUrl, changesUrl, Signature);
|
||
|
||
//получаем url к папке с файлом
|
||
var url;
|
||
var nIndex = sFileUrl.lastIndexOf("/");
|
||
url = (-1 !== nIndex) ? sFileUrl.substring(0, nIndex + 1) : sFileUrl;
|
||
|
||
if (stream) {
|
||
oResult.bSerFormat = checkStreamSignature(stream, Signature);
|
||
oResult.data = stream;
|
||
} else {
|
||
bError = true;
|
||
}
|
||
|
||
bEndLoadFile = true;
|
||
onEndOpen();
|
||
}
|
||
}
|
||
|
||
function sendCommand(editor, fCallback, rdata, dataContainer)
|
||
{
|
||
//json не должен превышать размера 2097152, иначе при его чтении будет exception
|
||
var docConnectionId = editor.CoAuthoringApi.getDocId();
|
||
if (docConnectionId && docConnectionId !== rdata["id"])
|
||
{
|
||
//на случай если поменялся documentId в Version History
|
||
rdata['docconnectionid'] = docConnectionId;
|
||
}
|
||
if (null == rdata["savetype"])
|
||
{
|
||
editor.CoAuthoringApi.openDocument(rdata);
|
||
return;
|
||
}
|
||
rdata["userconnectionid"] = editor.CoAuthoringApi.getUserConnectionId();
|
||
asc_ajax({
|
||
type: 'POST',
|
||
url: sDownloadServiceLocalUrl + '/' + rdata["id"] + '?cmd=' + encodeURIComponent(JSON.stringify(rdata)),
|
||
data: dataContainer.part || dataContainer.data,
|
||
contentType: "application/octet-stream",
|
||
error: function ()
|
||
{
|
||
if (fCallback)
|
||
{
|
||
fCallback(null, true);
|
||
}
|
||
},
|
||
success: function (httpRequest)
|
||
{
|
||
if (fCallback)
|
||
{
|
||
fCallback(JSON.parse(httpRequest.responseText), true);
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
function sendSaveFile(docId, userId, title, jwt, data, fError, fsuccess)
|
||
{
|
||
var cmd = {'id': docId, "userid": userId, "jwt": jwt, 'outputpath': title};
|
||
asc_ajax({
|
||
type: 'POST',
|
||
url: sSaveFileLocalUrl + '/' + docId + '?cmd=' + encodeURIComponent(JSON.stringify(cmd)),
|
||
data: data,
|
||
contentType: "application/octet-stream",
|
||
error: fError,
|
||
success: fsuccess
|
||
});
|
||
}
|
||
|
||
function mapAscServerErrorToAscError(nServerError, nAction)
|
||
{
|
||
var nRes = Asc.c_oAscError.ID.Unknown;
|
||
switch (nServerError)
|
||
{
|
||
case c_oAscServerError.NoError :
|
||
nRes = Asc.c_oAscError.ID.No;
|
||
break;
|
||
case c_oAscServerError.TaskQueue :
|
||
case c_oAscServerError.TaskResult :
|
||
nRes = Asc.c_oAscError.ID.Database;
|
||
break;
|
||
case c_oAscServerError.ConvertDownload :
|
||
nRes = Asc.c_oAscError.ID.DownloadError;
|
||
break;
|
||
case c_oAscServerError.ConvertTimeout :
|
||
case c_oAscServerError.ConvertDeadLetter :
|
||
nRes = Asc.c_oAscError.ID.ConvertationTimeout;
|
||
break;
|
||
case c_oAscServerError.ConvertDRM :
|
||
case c_oAscServerError.ConvertPASSWORD :
|
||
nRes = Asc.c_oAscError.ID.ConvertationPassword;
|
||
break;
|
||
case c_oAscServerError.ConvertLIMITS :
|
||
case c_oAscServerError.ConvertCONVERT_CORRUPTED :
|
||
case c_oAscServerError.ConvertLIBREOFFICE :
|
||
case c_oAscServerError.ConvertPARAMS :
|
||
case c_oAscServerError.ConvertNEED_PARAMS :
|
||
case c_oAscServerError.ConvertUnknownFormat :
|
||
case c_oAscServerError.ConvertReadFile :
|
||
case c_oAscServerError.Convert :
|
||
nRes =
|
||
AscCommon.c_oAscAdvancedOptionsAction.Save === nAction ? Asc.c_oAscError.ID.ConvertationSaveError :
|
||
Asc.c_oAscError.ID.ConvertationOpenError;
|
||
break;
|
||
case c_oAscServerError.UploadContentLength :
|
||
nRes = Asc.c_oAscError.ID.UplImageSize;
|
||
break;
|
||
case c_oAscServerError.UploadExtension :
|
||
nRes = Asc.c_oAscError.ID.UplImageExt;
|
||
break;
|
||
case c_oAscServerError.UploadCountFiles :
|
||
nRes = Asc.c_oAscError.ID.UplImageFileCount;
|
||
break;
|
||
case c_oAscServerError.UploadURL :
|
||
nRes = Asc.c_oAscError.ID.UplImageUrl;
|
||
break;
|
||
case c_oAscServerError.VKey :
|
||
nRes = Asc.c_oAscError.ID.FileVKey;
|
||
break;
|
||
case c_oAscServerError.VKeyEncrypt :
|
||
nRes = Asc.c_oAscError.ID.VKeyEncrypt;
|
||
break;
|
||
case c_oAscServerError.VKeyKeyExpire :
|
||
nRes = Asc.c_oAscError.ID.KeyExpire;
|
||
break;
|
||
case c_oAscServerError.VKeyUserCountExceed :
|
||
nRes = Asc.c_oAscError.ID.UserCountExceed;
|
||
break;
|
||
case c_oAscServerError.Storage :
|
||
case c_oAscServerError.StorageFileNoFound :
|
||
case c_oAscServerError.StorageRead :
|
||
case c_oAscServerError.StorageWrite :
|
||
case c_oAscServerError.StorageRemoveDir :
|
||
case c_oAscServerError.StorageCreateDir :
|
||
case c_oAscServerError.StorageGetInfo :
|
||
case c_oAscServerError.Upload :
|
||
case c_oAscServerError.ReadRequestStream :
|
||
case c_oAscServerError.Unknown :
|
||
nRes = Asc.c_oAscError.ID.Unknown;
|
||
break;
|
||
}
|
||
return nRes;
|
||
}
|
||
|
||
function joinUrls(base, relative)
|
||
{
|
||
//http://stackoverflow.com/questions/14780350/convert-relative-path-to-absolute-using-javascript
|
||
var stack = base.split("/"),
|
||
parts = relative.split("/");
|
||
stack.pop(); // remove current file name (or empty string)
|
||
// (omit if "base" is the current folder without trailing slash)
|
||
for (var i = 0; i < parts.length; i++)
|
||
{
|
||
if (parts[i] == ".")
|
||
continue;
|
||
if (parts[i] == "..")
|
||
stack.pop();
|
||
else
|
||
stack.push(parts[i]);
|
||
}
|
||
return stack.join("/");
|
||
}
|
||
|
||
function getFullImageSrc2(src)
|
||
{
|
||
if (window["NATIVE_EDITOR_ENJINE"])
|
||
return src;
|
||
|
||
var start = src.slice(0, 6);
|
||
if (0 === start.indexOf('theme') && editor.ThemeLoader)
|
||
{
|
||
return editor.ThemeLoader.ThemesUrlAbs + src;
|
||
}
|
||
|
||
if (0 !== start.indexOf('http:') && 0 !== start.indexOf('data:') && 0 !== start.indexOf('https:') &&
|
||
0 !== start.indexOf('file:') && 0 !== start.indexOf('ftp:'))
|
||
{
|
||
var srcFull = g_oDocumentUrls.getImageUrl(src);
|
||
if (srcFull)
|
||
{
|
||
return srcFull;
|
||
}
|
||
}
|
||
return src;
|
||
}
|
||
|
||
function fSortAscending(a, b)
|
||
{
|
||
return a - b;
|
||
}
|
||
|
||
function fSortDescending(a, b)
|
||
{
|
||
return b - a;
|
||
}
|
||
|
||
function isLeadingSurrogateChar(nCharCode)
|
||
{
|
||
return (nCharCode >= 0xD800 && nCharCode <= 0xDFFF);
|
||
}
|
||
|
||
function decodeSurrogateChar(nLeadingChar, nTrailingChar)
|
||
{
|
||
if (nLeadingChar < 0xDC00 && nTrailingChar >= 0xDC00 && nTrailingChar <= 0xDFFF)
|
||
return 0x10000 + ((nLeadingChar & 0x3FF) << 10) | (nTrailingChar & 0x3FF);
|
||
else
|
||
return null;
|
||
}
|
||
|
||
function encodeSurrogateChar(nUnicode)
|
||
{
|
||
if (nUnicode < 0x10000)
|
||
{
|
||
return String.fromCharCode(nUnicode);
|
||
}
|
||
else
|
||
{
|
||
nUnicode = nUnicode - 0x10000;
|
||
var nLeadingChar = 0xD800 | (nUnicode >> 10);
|
||
var nTrailingChar = 0xDC00 | (nUnicode & 0x3FF);
|
||
return String.fromCharCode(nLeadingChar) + String.fromCharCode(nTrailingChar);
|
||
}
|
||
}
|
||
|
||
function convertUnicodeToUTF16(sUnicode)
|
||
{
|
||
var sUTF16 = "";
|
||
var nLength = sUnicode.length;
|
||
for (var nPos = 0; nPos < nLength; nPos++)
|
||
{
|
||
sUTF16 += encodeSurrogateChar(sUnicode[nPos]);
|
||
}
|
||
|
||
return sUTF16;
|
||
}
|
||
|
||
function convertUTF16toUnicode(sUTF16)
|
||
{
|
||
var sUnicode = [];
|
||
var nLength = sUTF16.length;
|
||
for (var nPos = 0; nPos < nLength; nPos++)
|
||
{
|
||
var nUnicode = null;
|
||
var nCharCode = sUTF16.charCodeAt(nPos);
|
||
if (isLeadingSurrogateChar(nCharCode))
|
||
{
|
||
if (nPos + 1 < nLength)
|
||
{
|
||
nPos++;
|
||
var nTrailingChar = sUTF16.charCodeAt(nPos);
|
||
nUnicode = decodeSurrogateChar(nCharCode, nTrailingChar);
|
||
}
|
||
}
|
||
else
|
||
nUnicode = nCharCode;
|
||
|
||
if (null !== nUnicode)
|
||
sUnicode.push(nUnicode);
|
||
}
|
||
|
||
return sUnicode;
|
||
}
|
||
|
||
function CUnicodeIterator(str)
|
||
{
|
||
this._position = 0;
|
||
this._index = 0;
|
||
this._str = str;
|
||
}
|
||
CUnicodeIterator.prototype =
|
||
{
|
||
isOutside : function()
|
||
{
|
||
return (this._index >= this._str.length);
|
||
},
|
||
isInside : function()
|
||
{
|
||
return (this._index < this._str.length);
|
||
},
|
||
value : function()
|
||
{
|
||
if (this._index >= this._str.length)
|
||
return 0;
|
||
|
||
var nCharCode = this._str.charCodeAt(this._index);
|
||
if (!AscCommon.isLeadingSurrogateChar(nCharCode))
|
||
return nCharCode;
|
||
|
||
if ((this._str.length - 1) == this._index)
|
||
return nCharCode; // error
|
||
|
||
var nTrailingChar = this._str.charCodeAt(this._index + 1);
|
||
return AscCommon.decodeSurrogateChar(nCharCode, nTrailingChar);
|
||
},
|
||
next : function()
|
||
{
|
||
if (this._index >= this._str.length)
|
||
return;
|
||
|
||
this._position++;
|
||
if (!AscCommon.isLeadingSurrogateChar(this._str.charCodeAt(this._index)))
|
||
{
|
||
++this._index;
|
||
return;
|
||
}
|
||
|
||
if (this._index == (this._str.length - 1))
|
||
{
|
||
++this._index;
|
||
return;
|
||
}
|
||
|
||
this._index += 2;
|
||
},
|
||
position : function()
|
||
{
|
||
return this._position;
|
||
}
|
||
};
|
||
|
||
CUnicodeIterator.prototype.check = CUnicodeIterator.prototype.isInside;
|
||
|
||
/**
|
||
* @returns {CUnicodeIterator}
|
||
*/
|
||
String.prototype.getUnicodeIterator = function()
|
||
{
|
||
return new CUnicodeIterator(this);
|
||
};
|
||
|
||
function test_ws_name2()
|
||
{
|
||
var str_namedRanges = "[A-Z\u005F\u0080-\u0081\u0083\u0085-\u0087\u0089-\u008A\u008C-\u0091\u0093-\u0094\u0096-\u0097\u0099-\u009A\u009C-\u009F\u00A1-\u00A5\u00A7-\u00A8\u00AA\u00AD\u00AF-\u00BA\u00BC-\u02B8\u02BB-\u02C1\u02C7\u02C9-\u02CB\u02CD\u02D0-\u02D1\u02D8-\u02DB\u02DD\u02E0-\u02E4\u02EE\u0370-\u0373\u0376-\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0523\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0621-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06E5-\u06E6\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4-\u07F5\u07FA\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0972\u097B-\u097F\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58-\u0C59\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D28\u0D2A-\u0D39\u0D3D\u0D60-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E3A\u0E40-\u0E4E\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDD\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8B\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10D0-\u10FA\u10FC\u1100-\u1159\u115F-\u11A2\u11A8-\u11F9\u1200-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u1676\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19A9\u19C1-\u19C7\u1A00-\u1A16\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2010\u2013-\u2016\u2018\u201C-\u201D\u2020-\u2021\u2025-\u2027\u2030\u2032-\u2033\u2035\u203B\u2071\u2074\u207F\u2081-\u2084\u2090-\u2094\u2102-\u2103\u2105\u2107\u2109-\u2113\u2115-\u2116\u2119-\u211D\u2121-\u2122\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2153-\u2154\u215B-\u215E\u2160-\u2188\u2190-\u2199\u21D2\u21D4\u2200\u2202-\u2203\u2207-\u2208\u220B\u220F\u2211\u2215\u221A\u221D-\u2220\u2223\u2225\u2227-\u222C\u222E\u2234-\u2237\u223C-\u223D\u2248\u224C\u2252\u2260-\u2261\u2264-\u2267\u226A-\u226B\u226E-\u226F\u2282-\u2283\u2286-\u2287\u2295\u2299\u22A5\u22BF\u2312\u2460-\u24B5\u24D0-\u24E9\u2500-\u254B\u2550-\u2574\u2581-\u258F\u2592-\u2595\u25A0-\u25A1\u25A3-\u25A9\u25B2-\u25B3\u25B6-\u25B7\u25BC-\u25BD\u25C0-\u25C1\u25C6-\u25C8\u25CB\u25CE-\u25D1\u25E2-\u25E5\u25EF\u2605-\u2606\u2609\u260E-\u260F\u261C\u261E\u2640\u2642\u2660-\u2661\u2663-\u2665\u2667-\u266A\u266C-\u266D\u266F\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C6F\u2C71-\u2C7D\u2C80-\u2CE4\u2D00-\u2D25\u2D30-\u2D65\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3000-\u3003\u3005-\u3017\u301D-\u301F\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31B7\u31F0-\u321C\u3220-\u3229\u3231-\u3232\u3239\u3260-\u327B\u327F\u32A3-\u32A8\u3303\u330D\u3314\u3318\u3322-\u3323\u3326-\u3327\u332B\u3336\u333B\u3349-\u334A\u334D\u3351\u3357\u337B-\u337E\u3380-\u3384\u3388-\u33CA\u33CD-\u33D3\u33D5-\u33D6\u33D8\u33DB-\u33DD\u3400-\u4DB5\u4E00-\u9FC3\uA000-\uA48C\uA500-\uA60C\uA610-\uA61F\uA62A-\uA62B\uA640-\uA65F\uA662-\uA66E\uA680-\uA697\uA722-\uA787\uA78B-\uA78C\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA90A-\uA925\uA930-\uA946\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAC00-\uD7A3\uE000-\uF848\uF900-\uFA2D\uFA30-\uFA6A\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE30-\uFE31\uFE33-\uFE44\uFE49-\uFE52\uFE54-\uFE57\uFE59-\uFE66\uFE68-\uFE6B\uFE70-\uFE74\uFE76-\uFEFC\uFF01-\uFF5E\uFF61-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\uFFE0-\uFFE6]",
|
||
str_namedSheetsRange = "\u0001-\u0026\u0028-\u0029\u002B-\u002D\u003B-\u003E\u0040\u005E\u0060\u007B-\u007F\u0082\u0084\u008B\u0092\u0095\u0098\u009B\u00A0\u00A6\u00A9\u00AB-\u00AC\u00AE\u00BB\u0378-\u0379\u037E-\u0383\u0387\u038B\u038D\u03A2\u0524-\u0530\u0557-\u0558\u055A-\u0560\u0588-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EF\u05F3-\u05FF\u0604-\u0605\u0609-\u060A\u060C-\u060D\u061B-\u061E\u0620\u065F\u066A-\u066D\u06D4\u0700-\u070E\u074B-\u074C\u07B2-\u07BF\u07F7-\u07F9\u07FB-\u0900\u093A-\u093B\u094E-\u094F\u0955-\u0957\u0964-\u0965\u0970\u0973-\u097A\u0980\u0984\u098D-\u098E\u0991-\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BB\u09C5-\u09C6\u09C9-\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4-\u09E5\u09FB-\u0A00\u0A04\u0A0B-\u0A0E\u0A11-\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A3B\u0A3D\u0A43-\u0A46\u0A49-\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABB\u0AC6\u0ACA\u0ACE-\u0ACF\u0AD1-\u0ADF\u0AE4-\u0AE5\u0AF0\u0AF2-\u0B00\u0B04\u0B0D-\u0B0E\u0B11-\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3B\u0B45-\u0B46\u0B49-\u0B4A\u0B4E-\u0B55\u0B58-\u0B5B\u0B5E\u0B64-\u0B65\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE-\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BFB-\u0C00\u0C04\u0C0D\u0C11\u0C29\u0C34\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5A-\u0C5F\u0C64-\u0C65\u0C70-\u0C77\u0C80-\u0C81\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4-\u0CE5\u0CF0\u0CF3-\u0D01\u0D04\u0D0D\u0D11\u0D29\u0D3A-\u0D3C\u0D45\u0D49\u0D4E-\u0D56\u0D58-\u0D5F\u0D64-\u0D65\u0D76-\u0D78\u0D80-\u0D81\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE-\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3E\u0E4F\u0E5A-\u0E80\u0E83\u0E85-\u0E86\u0E89\u0E8B-\u0E8C\u0E8E-\u0E93\u0E98\u0EA0\u0EA4\u0EA6\u0EA8-\u0EA9\u0EAC\u0EBA\u0EBE-\u0EBF\u0EC5\u0EC7\u0ECE-\u0ECF\u0EDA-\u0EDB\u0EDE-\u0EFF\u0F04-\u0F12\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F8C-\u0F8F\u0F98\u0FBD\u0FCD\u0FD0-\u0FFF\u104A-\u104F\u109A-\u109D\u10C6-\u10CF\u10FB\u10FD-\u10FF\u115A-\u115E\u11A3-\u11A7\u11FA-\u11FF\u1249\u124E-\u124F\u1257\u1259\u125E-\u125F\u1289\u128E-\u128F\u12B1\u12B6-\u12B7\u12BF\u12C1\u12C6-\u12C7\u12D7\u1311\u1316-\u1317\u135B-\u135E\u1361-\u1368\u137D-\u137F\u139A-\u139F\u13F5-\u1400\u166D-\u166E\u1677-\u167F\u169B-\u169F\u16EB-\u16ED\u16F1-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DA\u17DE-\u17DF\u17EA-\u17EF\u17FA-\u180A\u180F\u181A-\u181F\u1878-\u187F\u18AB-\u18FF\u191D-\u191F\u192C-\u192F\u193C-\u193F\u1941-\u1945\u196E-\u196F\u1975-\u197F\u19AA-\u19AF\u19CA-\u19CF\u19DA-\u19DF\u1A1C-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B60\u1B7D-\u1B7F\u1BAB-\u1BAD\u1BBA-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E-\u1CFF\u1DE7-\u1DFD\u1F16-\u1F17\u1F1E-\u1F1F\u1F46-\u1F47\u1F4E-\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E-\u1F7F\u1FB5\u1FC5\u1FD4-\u1FD5\u1FDC\u1FF0-\u1FF1\u1FF5\u1FFF\u2011-\u2012\u2017\u2019-\u201B\u201E-\u201F\u2022-\u2024\u2031\u2034\u2036-\u203A\u203C-\u2043\u2045-\u2051\u2053-\u205E\u2065-\u2069\u2072-\u2073\u207D-\u207E\u208D-\u208F\u2095-\u209F\u20B6-\u20CF\u20F1-\u20FF\u2150-\u2152\u2189-\u218F\u2329-\u232A\u23E8-\u23FF\u2427-\u243F\u244B-\u245F\u269E-\u269F\u26BD-\u26BF\u26C4-\u2700\u2705\u270A-\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u275F-\u2760\u2768-\u2775\u2795-\u2797\u27B0\u27BF\u27C5-\u27C6\u27CB\u27CD-\u27CF\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC-\u29FD\u2B4D-\u2B4F\u2B55-\u2BFF\u2C2F\u2C5F\u2C70\u2C7E-\u2C7F\u2CEB-\u2CFC\u2CFE-\u2CFF\u2D26-\u2D2F\u2D66-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u2FFC-\u2FFF\u3018-\u301C\u3030\u303D\u3040\u3097-\u3098\u30A0\u3100-\u3104\u312E-\u3130\u318F\u31B8-\u31BF\u31E4-\u31EF\u321F\u3244-\u324F\u32FF\u4DB6-\u4DBF\u9FC4-\u9FFF\uA48D-\uA48F\uA4C7-\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA660-\uA661\uA673-\uA67B\uA67E\uA698-\uA6FF\uA78D-\uA7FA\uA82C-\uA83F\uA874-\uA87F\uA8C5-\uA8CF\uA8DA-\uA8FF\uA92F\uA954-\uA9FF\uAA37-\uAA3F\uAA4E-\uAA4F\uAA5A-\uABFF\uD7A4-\uD7FF\uFA2E-\uFA2F\uFA6B-\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90-\uFD91\uFDC8-\uFDEF\uFDFE-\uFDFF\uFE10-\uFE1F\uFE27-\uFE2F\uFE32\uFE45-\uFE48\uFE53\uFE58\uFE67\uFE6C-\uFE6F\uFE75\uFEFD-\uFEFE\uFF00\uFF5F-\uFF60\uFFBF-\uFFC1\uFFC8-\uFFC9\uFFD0-\uFFD1\uFFD8-\uFFD9\uFFDD-\uFFDF\uFFE7\uFFEF-\uFFF8\uFFFE-\uFFFF",
|
||
str_operator = ",\\s-+/^&%<=>",
|
||
str_excludeCharts = "'*\\[\\]\\:/?";
|
||
|
||
this.regExp_namedRanges = new RegExp(str_namedRanges, "i");
|
||
this.regExp_namedSheetsRange = new RegExp("[" + str_namedSheetsRange + "]", "ig");
|
||
// /[-+*\/^&%<=>:]/,
|
||
this.regExp_strOperator = new RegExp("[" + str_operator + "]", "ig");
|
||
this.regExp_strExcludeCharts = new RegExp("[" + str_excludeCharts + "]", "ig");
|
||
|
||
this.test = function (str)
|
||
{
|
||
var ch1 = str.substr(0, 1);
|
||
|
||
this.regExp_strExcludeCharts.lastIndex = 0;
|
||
this.regExp_namedRanges.lastIndex = 0;
|
||
this.regExp_namedSheetsRange.lastIndex = 0;
|
||
this.regExp_strOperator.lastIndex = 0;
|
||
|
||
if (this.regExp_strExcludeCharts.test(str))
|
||
{//если содержутся недопустимые символы.
|
||
return undefined;
|
||
}
|
||
|
||
if (!this.regExp_namedRanges.test(ch1))
|
||
{//если первый символ находится не в str_namedRanges, то однозначно надо экранировать
|
||
return false;
|
||
}
|
||
else
|
||
{
|
||
if (this.regExp_namedSheetsRange.test(str) || this.regExp_strOperator.test(str))
|
||
{//первый символ допустимый. проверяем всю строку на наличие символов, с которыми необходимо экранировать
|
||
return false;
|
||
}
|
||
//проверка на то, что название листа не совпадает с допустимым адресом ячейки, как в A1 так и RC стилях.
|
||
var match = str.match(rx_ref);
|
||
if (match != null)
|
||
{
|
||
var m1 = match[1], m2 = match[2];
|
||
if (match.length >= 3 && g_oCellAddressUtils.colstrToColnum(m1.substr(0, (m1.length - m2.length))) <= AscCommon.gc_nMaxCol && parseInt(m2) <= AscCommon.gc_nMaxRow)
|
||
{
|
||
return false;
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
};
|
||
|
||
return this;
|
||
|
||
}
|
||
|
||
function test_defName()
|
||
{
|
||
var nameRangeRE = new RegExp("(^([" + str_namedRanges + "_])([" + str_namedRanges + "_0-9]*)$)", "i");
|
||
|
||
this.test = function (str)
|
||
{
|
||
var match, m1, m2;
|
||
if (!nameRangeRE.test(str))
|
||
{
|
||
return false;
|
||
}
|
||
|
||
match = str.match(rx_ref);
|
||
if (match != null)
|
||
{
|
||
m1 = match[1];
|
||
m2 = match[2];
|
||
if (match.length >= 3 && g_oCellAddressUtils.colstrToColnum(m1.substr(0, (m1.length - m2.length))) <= AscCommon.gc_nMaxCol && parseInt(m2) <= AscCommon.gc_nMaxRow)
|
||
{
|
||
return false;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
};
|
||
|
||
return this;
|
||
}
|
||
|
||
var cStrucTableReservedWords = {
|
||
all: "#All", data: "#Data", headers: "#Headers", totals: "#Totals", thisrow: "#This Row", at: "@"
|
||
};
|
||
var FormulaTablePartInfo = {
|
||
all: 1,
|
||
data: 2,
|
||
headers: 3,
|
||
totals: 4,
|
||
thisRow: 5,
|
||
columns: 6
|
||
};
|
||
|
||
var cStrucTableLocalColumns = null;
|
||
var cBoolOrigin = {'t': 'TRUE', 'f': 'FALSE'};
|
||
var cBoolLocal = {};
|
||
var cErrorOrigin = {
|
||
"nil": "#NULL!",
|
||
"div": "#DIV\/0!",
|
||
"value": "#VALUE!",
|
||
"ref": "#REF!",
|
||
"name": "#NAME?",
|
||
"num": "#NUM!",
|
||
"na": "#N\/A",
|
||
"getdata": "#GETTING_DATA",
|
||
"uf": "#UNSUPPORTED_FUNCTION!"
|
||
};
|
||
var cErrorLocal = {};
|
||
|
||
function build_local_rx(data)
|
||
{
|
||
rx_table_local = build_rx_table(data ? data["StructureTables"] : null);
|
||
rx_bool_local = build_rx_bool((data && data["CONST_TRUE_FALSE"]) || cBoolOrigin);
|
||
rx_error_local = build_rx_error(data ? data["CONST_ERROR"] : null);
|
||
}
|
||
|
||
function build_rx_table(local)
|
||
{
|
||
cStrucTableLocalColumns = ( local ? local : {
|
||
"h": "Headers",
|
||
"d": "Data",
|
||
"a": "All",
|
||
"tr": "This Row",
|
||
"t": "Totals"
|
||
} );
|
||
return build_rx_table_cur();
|
||
}
|
||
|
||
function build_rx_table_cur()
|
||
{
|
||
var loc_all = cStrucTableLocalColumns['a'],
|
||
loc_headers = cStrucTableLocalColumns['h'],
|
||
loc_data = cStrucTableLocalColumns['d'],
|
||
loc_totals = cStrucTableLocalColumns['t'],
|
||
loc_this_row = cStrucTableLocalColumns['tr'],
|
||
structured_tables_headata = new XRegExp('(?:\\[\\#' + loc_headers + '\\]\\' + FormulaSeparators.functionArgumentSeparator + '\\[\\#' + loc_data + '\\])'),
|
||
structured_tables_datals = new XRegExp('(?:\\[\\#' + loc_data + '\\]\\' + FormulaSeparators.functionArgumentSeparator + '\\[\\#' + loc_totals + '\\])'),
|
||
structured_tables_userColumn = new XRegExp('(?:\'\\[|\'\\]|[^[\\]])+'),
|
||
structured_tables_reservedColumn = new XRegExp('\\#(?:' + loc_all + '|' + loc_headers + '|' + loc_totals + '|' + loc_data + '|' + loc_this_row + ')|@');
|
||
|
||
return XRegExp.build('^(?<tableName>{{tableName}})\\[(?<columnName>{{columnName}})?\\]', {
|
||
"tableName": new XRegExp("^(:?[" + str_namedRanges + "][" + str_namedRanges + "\\d.]*)"),
|
||
"columnName": XRegExp.build('(?<reservedColumn>{{reservedColumn}})|(?<oneColumn>{{userColumn}})|(?<columnRange>{{userColumnRange}})|(?<hdtcc>{{hdtcc}})', {
|
||
"userColumn": structured_tables_userColumn,
|
||
"reservedColumn": structured_tables_reservedColumn,
|
||
"userColumnRange": XRegExp.build('\\[(?<colStart>{{uc}})\\]\\:\\[(?<colEnd>{{uc}})\\]', {
|
||
"uc": structured_tables_userColumn
|
||
}),
|
||
"hdtcc": XRegExp.build('(?<hdt>\\[{{rc}}\\]|{{hd}}|{{dt}})(?:\\' + FormulaSeparators.functionArgumentSeparator + '(?:\\[(?<hdtcstart>{{uc}})\\])(?:\\:(?:\\[(?<hdtcend>{{uc}})\\]))?)?', {
|
||
"rc": structured_tables_reservedColumn,
|
||
"hd": structured_tables_headata,
|
||
"dt": structured_tables_datals,
|
||
"uc": structured_tables_userColumn
|
||
})
|
||
})
|
||
}, 'i');
|
||
}
|
||
|
||
function build_rx_bool(local)
|
||
{
|
||
var t = cBoolLocal.t = local['t'].toUpperCase();
|
||
var f = cBoolLocal.f = local['f'].toUpperCase();
|
||
|
||
return new RegExp("^(" + t + "|" + f + ")([-+*\\/^&%<=>: ;),}]|$)", "i");
|
||
}
|
||
|
||
function build_rx_error(local)
|
||
{
|
||
// ToDo переделать на более правильную реализацию. Не особо правильное копирование
|
||
local = local ? local : {
|
||
"nil": "#NULL!",
|
||
"div": "#DIV\/0!",
|
||
"value": "#VALUE!",
|
||
"ref": "#REF!",
|
||
"name": "#NAME\\?",
|
||
"num": "#NUM!",
|
||
"na": "#N\/A",
|
||
"getdata": "#GETTING_DATA",
|
||
"uf": "#UNSUPPORTED_FUNCTION!"
|
||
};
|
||
cErrorLocal['nil'] = local['nil'];
|
||
cErrorLocal['div'] = local['div'];
|
||
cErrorLocal['value'] = local['value'];
|
||
cErrorLocal['ref'] = local['ref'];
|
||
cErrorLocal['name'] = local['name'];
|
||
cErrorLocal['num'] = local['num'];
|
||
cErrorLocal['na'] = local['na'];
|
||
cErrorLocal['getdata'] = local['getdata'];
|
||
cErrorLocal['uf'] = local['uf'];
|
||
|
||
return new RegExp("^(" + cErrorLocal["nil"] + "|" +
|
||
cErrorLocal["div"] + "|" +
|
||
cErrorLocal["value"] + "|" +
|
||
cErrorLocal["ref"] + "|" +
|
||
cErrorLocal["name"] + "|" +
|
||
cErrorLocal["num"] + "|" +
|
||
cErrorLocal["na"] + "|" +
|
||
cErrorLocal["getdata"] + "|" +
|
||
cErrorLocal["uf"] + ")", "i");
|
||
}
|
||
|
||
var PostMessageType = {
|
||
UploadImage: 0,
|
||
ExtensionExist: 1
|
||
};
|
||
|
||
var c_oAscServerError = {
|
||
NoError: 0,
|
||
Unknown: -1,
|
||
ReadRequestStream: -3,
|
||
|
||
TaskQueue: -20,
|
||
|
||
TaskResult: -40,
|
||
|
||
Storage: -60,
|
||
StorageFileNoFound: -61,
|
||
StorageRead: -62,
|
||
StorageWrite: -63,
|
||
StorageRemoveDir: -64,
|
||
StorageCreateDir: -65,
|
||
StorageGetInfo: -66,
|
||
|
||
Convert: -80,
|
||
ConvertDownload: -81,
|
||
ConvertUnknownFormat: -82,
|
||
ConvertTimeout: -83,
|
||
ConvertReadFile: -84,
|
||
ConvertCONVERT_CORRUPTED: -86,
|
||
ConvertLIBREOFFICE: -87,
|
||
ConvertPARAMS: -88,
|
||
ConvertNEED_PARAMS: -89,
|
||
ConvertDRM: -90,
|
||
ConvertPASSWORD: -91,
|
||
ConvertICU: -92,
|
||
ConvertLIMITS: -93,
|
||
ConvertDeadLetter: -99,
|
||
|
||
Upload: -100,
|
||
UploadContentLength: -101,
|
||
UploadExtension: -102,
|
||
UploadCountFiles: -103,
|
||
UploadURL: -104,
|
||
|
||
VKey: -120,
|
||
VKeyEncrypt: -121,
|
||
VKeyKeyExpire: -122,
|
||
VKeyUserCountExceed: -123
|
||
};
|
||
|
||
var c_oAscImageUploadProp = {//Не все браузеры позволяют получить информацию о файле до загрузки(например ie9), меняя параметры здесь надо поменять аналогичные параметры в web.common
|
||
MaxFileSize: 25000000, //25 mb
|
||
SupportedFormats: ["jpg", "jpeg", "jpe", "png", "gif", "bmp"]
|
||
};
|
||
|
||
/**
|
||
*
|
||
* @param sName
|
||
* @returns {*}
|
||
* @constructor
|
||
*/
|
||
function GetFileExtension(sName)
|
||
{
|
||
var nIndex = sName ? sName.lastIndexOf(".") : -1;
|
||
if (-1 != nIndex)
|
||
return sName.substring(nIndex + 1).toLowerCase();
|
||
return null;
|
||
}
|
||
function GetFileName(sName)
|
||
{
|
||
var nIndex = sName ? sName.lastIndexOf(".") : -1;
|
||
if (-1 != nIndex)
|
||
return sName.substring(0, nIndex);
|
||
return null;
|
||
}
|
||
|
||
function changeFileExtention(sName, sNewExt, opt_lengthLimit)
|
||
{
|
||
var sOldExt = GetFileExtension(sName);
|
||
var nIndexEnd = sOldExt ? sName.length - sOldExt.length - 1 : sName.length;
|
||
if (opt_lengthLimit && nIndexEnd + sNewExt.length + 1 > opt_lengthLimit)
|
||
{
|
||
nIndexEnd = opt_lengthLimit - sNewExt.length - 1;
|
||
}
|
||
if (nIndexEnd < sName.length)
|
||
{
|
||
return sName.substring(0, nIndexEnd) + '.' + sNewExt;
|
||
}
|
||
else
|
||
{
|
||
return sName + '.' + sNewExt;
|
||
}
|
||
}
|
||
|
||
function getExtentionByFormat(format)
|
||
{
|
||
switch (format)
|
||
{
|
||
case c_oAscFileType.PDF:
|
||
case c_oAscFileType.PDFA:
|
||
return 'pdf';
|
||
break;
|
||
case c_oAscFileType.HTML:
|
||
return 'html';
|
||
break;
|
||
// Word
|
||
case c_oAscFileType.DOCX:
|
||
return 'docx';
|
||
break;
|
||
case c_oAscFileType.DOC:
|
||
return 'doc';
|
||
break;
|
||
case c_oAscFileType.ODT:
|
||
return 'odt';
|
||
break;
|
||
case c_oAscFileType.RTF:
|
||
return 'rtf';
|
||
break;
|
||
case c_oAscFileType.TXT:
|
||
return 'txt';
|
||
break;
|
||
case c_oAscFileType.MHT:
|
||
return 'mht';
|
||
break;
|
||
case c_oAscFileType.EPUB:
|
||
return 'epub';
|
||
break;
|
||
case c_oAscFileType.FB2:
|
||
return 'fb2';
|
||
break;
|
||
case c_oAscFileType.MOBI:
|
||
return 'mobi';
|
||
break;
|
||
case c_oAscFileType.DOCY:
|
||
return 'doct';
|
||
break;
|
||
case c_oAscFileType.CANVAS_WORD:
|
||
return 'bin';
|
||
break;
|
||
case c_oAscFileType.JSON:
|
||
return 'json';
|
||
break;
|
||
// Excel
|
||
case c_oAscFileType.XLSX:
|
||
return 'xlsx';
|
||
break;
|
||
case c_oAscFileType.XLS:
|
||
return 'xls';
|
||
break;
|
||
case c_oAscFileType.ODS:
|
||
return 'ods';
|
||
break;
|
||
case c_oAscFileType.CSV:
|
||
return 'csv';
|
||
break;
|
||
case c_oAscFileType.XLSY:
|
||
return 'xlst';
|
||
break;
|
||
// PowerPoint
|
||
case c_oAscFileType.PPTX:
|
||
return 'pptx';
|
||
break;
|
||
case c_oAscFileType.PPT:
|
||
return 'ppt';
|
||
break;
|
||
case c_oAscFileType.ODP:
|
||
return 'odp';
|
||
break;
|
||
}
|
||
return '';
|
||
}
|
||
|
||
function InitOnMessage(callback)
|
||
{
|
||
if (window.addEventListener)
|
||
{
|
||
window.addEventListener("message", function (event)
|
||
{
|
||
if (null != event && null != event.data)
|
||
{
|
||
try
|
||
{
|
||
var data = JSON.parse(event.data);
|
||
if (null != data && null != data["type"] && PostMessageType.UploadImage == data["type"])
|
||
{
|
||
if (c_oAscServerError.NoError == data["error"])
|
||
{
|
||
var urls = data["urls"];
|
||
if (urls)
|
||
{
|
||
g_oDocumentUrls.addUrls(urls);
|
||
var firstUrl;
|
||
for (var i in urls)
|
||
{
|
||
if (urls.hasOwnProperty(i))
|
||
{
|
||
firstUrl = urls[i];
|
||
break;
|
||
}
|
||
}
|
||
callback(Asc.c_oAscError.ID.No, firstUrl);
|
||
}
|
||
|
||
}
|
||
else
|
||
callback(mapAscServerErrorToAscError(data["error"]));
|
||
}
|
||
else if (data.type === "onExternalPluginMessage")
|
||
{
|
||
if (window.g_asc_plugins)
|
||
window.g_asc_plugins.sendToAllPlugins(event.data);
|
||
}
|
||
} catch (err)
|
||
{
|
||
}
|
||
}
|
||
}, false);
|
||
}
|
||
}
|
||
|
||
function ShowImageFileDialog(documentId, documentUserId, jwt, callback, callbackOld)
|
||
{
|
||
if (AscCommon.EncryptionWorker && AscCommon.EncryptionWorker.isCryptoImages())
|
||
{
|
||
AscCommon.EncryptionWorker.addCryproImagesFromDialog(callback);
|
||
return;
|
||
}
|
||
|
||
var fileName;
|
||
if ("undefined" != typeof(FileReader))
|
||
{
|
||
fileName = GetUploadInput(function (e)
|
||
{
|
||
if (e && e.target && e.target.files)
|
||
{
|
||
var nError = ValidateUploadImage(e.target.files);
|
||
callback(mapAscServerErrorToAscError(nError), e.target.files);
|
||
}
|
||
else
|
||
{
|
||
callback(Asc.c_oAscError.ID.Unknown);
|
||
}
|
||
});
|
||
}
|
||
else
|
||
{
|
||
var frameWindow = GetUploadIFrame();
|
||
var url = sUploadServiceLocalUrlOld + '/' + documentId + '/' + documentUserId + '/' + g_oDocumentUrls.getMaxIndex();
|
||
if (jwt)
|
||
{
|
||
url += '?token=' + encodeURIComponent(jwt);
|
||
}
|
||
var content = '<html><head></head><body><form action="' + url + '" method="POST" enctype="multipart/form-data"><input id="apiiuFile" name="apiiuFile" type="file" accept="image/*" size="1"><input id="apiiuSubmit" name="apiiuSubmit" type="submit" style="display:none;"></form></body></html>';
|
||
frameWindow.document.open();
|
||
frameWindow.document.write(content);
|
||
frameWindow.document.close();
|
||
|
||
fileName = frameWindow.document.getElementById("apiiuFile");
|
||
var fileSubmit = frameWindow.document.getElementById("apiiuSubmit");
|
||
|
||
fileName.onchange = function (e)
|
||
{
|
||
if (e && e.target && e.target.files)
|
||
{
|
||
var nError = ValidateUploadImage(e.target.files);
|
||
if (c_oAscServerError.NoError != nError)
|
||
{
|
||
callbackOld(mapAscServerErrorToAscError(nError));
|
||
return;
|
||
}
|
||
}
|
||
callbackOld(Asc.c_oAscError.ID.No);
|
||
fileSubmit.click();
|
||
};
|
||
}
|
||
|
||
//todo пересмотреть opera
|
||
if (AscBrowser.isOpera)
|
||
setTimeout(function ()
|
||
{
|
||
fileName.click();
|
||
}, 0);
|
||
else
|
||
fileName.click();
|
||
}
|
||
|
||
function InitDragAndDrop(oHtmlElement, callback)
|
||
{
|
||
if ("undefined" != typeof(FileReader) && null != oHtmlElement)
|
||
{
|
||
oHtmlElement["ondragover"] = function (e)
|
||
{
|
||
e.preventDefault();
|
||
e.dataTransfer.dropEffect = CanDropFiles(e) ? 'copy' : 'none';
|
||
if (e.dataTransfer.dropEffect == "copy")
|
||
{
|
||
var editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
editor.beginInlineDropTarget(e);
|
||
}
|
||
return false;
|
||
};
|
||
oHtmlElement["ondrop"] = function (e)
|
||
{
|
||
e.preventDefault();
|
||
var files = e.dataTransfer.files;
|
||
var nError = ValidateUploadImage(files);
|
||
|
||
var editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
editor.endInlineDropTarget(e);
|
||
|
||
if (nError == c_oAscServerError.UploadCountFiles)
|
||
{
|
||
try
|
||
{
|
||
// test html
|
||
var htmlValue = e.dataTransfer.getData("text/html");
|
||
if (htmlValue && !AscCommon.AscBrowser.isIE)
|
||
{
|
||
// text html!
|
||
var index = htmlValue.indexOf("StartHTML");
|
||
var indexHtml = htmlValue.indexOf("<html");
|
||
if (-1 == indexHtml)
|
||
indexHtml = htmlValue.indexOf("<HTML");
|
||
if (index > 0 && indexHtml > 0 && index < indexHtml)
|
||
htmlValue = htmlValue.substr(indexHtml);
|
||
|
||
editor["pluginMethod_PasteHtml"](htmlValue);
|
||
return;
|
||
}
|
||
}
|
||
catch(err)
|
||
{
|
||
}
|
||
|
||
try
|
||
{
|
||
var textValue = e.dataTransfer.getData("text/plain");
|
||
if (textValue)
|
||
{
|
||
editor["pluginMethod_PasteText"](textValue);
|
||
return;
|
||
}
|
||
}
|
||
catch(err)
|
||
{
|
||
}
|
||
|
||
try
|
||
{
|
||
var textValue = e.dataTransfer.getData("Text");
|
||
if (textValue)
|
||
{
|
||
editor["pluginMethod_PasteText"](textValue);
|
||
return;
|
||
}
|
||
}
|
||
catch(err)
|
||
{
|
||
}
|
||
}
|
||
|
||
callback(mapAscServerErrorToAscError(nError), files);
|
||
};
|
||
}
|
||
}
|
||
|
||
function UploadImageFiles(files, documentId, documentUserId, jwt, callback)
|
||
{
|
||
if (files.length > 0)
|
||
{
|
||
var url = sUploadServiceLocalUrl + '/' + documentId + '/' + documentUserId + '/' + g_oDocumentUrls.getMaxIndex();
|
||
if (jwt)
|
||
{
|
||
url += '?token=' + encodeURIComponent(jwt);
|
||
}
|
||
|
||
var aFiles = [];
|
||
for(var i = files.length - 1; i > - 1; --i){
|
||
aFiles.push(files[i]);
|
||
}
|
||
var file = aFiles.pop();
|
||
var aResultUrls = [];
|
||
|
||
var fOnReadyChnageState = function(){
|
||
if (4 == this.readyState){
|
||
if ((this.status == 200 || this.status == 1223)){
|
||
var urls = JSON.parse(this.responseText);
|
||
g_oDocumentUrls.addUrls(urls);
|
||
for (var i in urls)
|
||
{
|
||
if (urls.hasOwnProperty(i))
|
||
{
|
||
aResultUrls.push(urls[i]);
|
||
break;
|
||
}
|
||
}
|
||
if(aFiles.length === 0){
|
||
callback(Asc.c_oAscError.ID.No, aResultUrls);
|
||
}
|
||
else{
|
||
file = aFiles.pop();
|
||
var xhr = new XMLHttpRequest();
|
||
|
||
url = sUploadServiceLocalUrl + '/' + documentId + '/' + documentUserId + '/' + g_oDocumentUrls.getMaxIndex();
|
||
if (jwt)
|
||
{
|
||
url += '?token=' + encodeURIComponent(jwt);
|
||
}
|
||
|
||
xhr.open('POST', url, true);
|
||
xhr.setRequestHeader('Content-Type', file.type || 'application/octet-stream');
|
||
xhr.onreadystatechange = fOnReadyChnageState;
|
||
xhr.send(file);
|
||
}
|
||
}
|
||
else
|
||
callback(Asc.c_oAscError.ID.UplImageFileCount);
|
||
}
|
||
};
|
||
|
||
var xhr = new XMLHttpRequest();
|
||
xhr.open('POST', url, true);
|
||
xhr.setRequestHeader('Content-Type', file.type || 'application/octet-stream');
|
||
xhr.onreadystatechange = fOnReadyChnageState;
|
||
xhr.send(file);
|
||
}
|
||
else
|
||
{
|
||
callback(Asc.c_oAscError.ID.UplImageFileCount);
|
||
}
|
||
}
|
||
|
||
function UploadImageUrls(files, documentId, documentUserId, jwt, callback)
|
||
{
|
||
if (files.length > 0)
|
||
{
|
||
var url = sUploadServiceLocalUrl + '/' + documentId + '/' + documentUserId + '/' + g_oDocumentUrls.getMaxIndex();
|
||
if (jwt)
|
||
{
|
||
url += '?token=' + encodeURIComponent(jwt);
|
||
}
|
||
|
||
var aFiles = [];
|
||
for(var i = files.length - 1; i > - 1; --i){
|
||
aFiles.push(files[i]);
|
||
}
|
||
var file = aFiles.pop();
|
||
var aResultUrls = [];
|
||
|
||
var fOnReadyChnageState = function()
|
||
{
|
||
if (4 == this.readyState)
|
||
{
|
||
if ((this.status == 200 || this.status == 1223))
|
||
{
|
||
var urls = JSON.parse(this.responseText);
|
||
g_oDocumentUrls.addUrls(urls);
|
||
for (var i in urls)
|
||
{
|
||
if (urls.hasOwnProperty(i))
|
||
{
|
||
aResultUrls.push({ path: i, url: urls[i] });
|
||
break;
|
||
}
|
||
}
|
||
if (aFiles.length === 0)
|
||
{
|
||
callback(aResultUrls);
|
||
}
|
||
else
|
||
{
|
||
file = aFiles.pop();
|
||
var xhr = new XMLHttpRequest();
|
||
|
||
url = sUploadServiceLocalUrl + '/' + documentId + '/' + documentUserId + '/' + g_oDocumentUrls.getMaxIndex();
|
||
if (jwt)
|
||
{
|
||
url += '?token=' + encodeURIComponent(jwt);
|
||
}
|
||
|
||
xhr.open('POST', url, true);
|
||
xhr.setRequestHeader('Content-Type', file.type || 'application/octet-stream');
|
||
xhr.onreadystatechange = fOnReadyChnageState;
|
||
xhr.send(file);
|
||
}
|
||
}
|
||
else
|
||
callback([]);
|
||
}
|
||
};
|
||
|
||
var xhr = new XMLHttpRequest();
|
||
xhr.open('POST', url, true);
|
||
xhr.setRequestHeader('Content-Type', file.type || 'application/octet-stream');
|
||
xhr.onreadystatechange = fOnReadyChnageState;
|
||
xhr.send(file);
|
||
}
|
||
else
|
||
{
|
||
callback(Asc.c_oAscError.ID.UplImageFileCount);
|
||
}
|
||
}
|
||
|
||
function ValidateUploadImage(files)
|
||
{
|
||
var nRes = c_oAscServerError.NoError;
|
||
if (files.length > 0)
|
||
{
|
||
for (var i = 0, length = files.length; i < length; i++)
|
||
{
|
||
var file = files[i];
|
||
//проверяем расширение файла
|
||
var sName = file.fileName || file.name;
|
||
if (sName)
|
||
{
|
||
var bSupported = false;
|
||
var ext = GetFileExtension(sName);
|
||
if (null !== ext)
|
||
{
|
||
for (var j = 0, length2 = c_oAscImageUploadProp.SupportedFormats.length; j < length2; j++)
|
||
{
|
||
if (c_oAscImageUploadProp.SupportedFormats[j] == ext)
|
||
{
|
||
bSupported = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
if (false == bSupported)
|
||
nRes = c_oAscServerError.UploadExtension;
|
||
}
|
||
if (Asc.c_oAscError.ID.No == nRes)
|
||
{
|
||
var nSize = file.fileSize || file.size;
|
||
if (nSize && c_oAscImageUploadProp.MaxFileSize < nSize)
|
||
nRes = c_oAscServerError.UploadContentLength;
|
||
}
|
||
if (c_oAscServerError.NoError != nRes)
|
||
break;
|
||
}
|
||
}
|
||
else
|
||
nRes = c_oAscServerError.UploadCountFiles;
|
||
return nRes;
|
||
}
|
||
|
||
function CanDropFiles(event)
|
||
{
|
||
var editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
if (!editor.isEnabledDropTarget())
|
||
return false;
|
||
|
||
var bRes = false;
|
||
if (event.dataTransfer.types)
|
||
{
|
||
for (var i = 0, length = event.dataTransfer.types.length; i < length; ++i)
|
||
{
|
||
var type = event.dataTransfer.types[i].toLowerCase();
|
||
if (type == "files")
|
||
{
|
||
if (event.dataTransfer.items)
|
||
{
|
||
for (var j = 0, length2 = event.dataTransfer.items.length; j < length2; j++)
|
||
{
|
||
var item = event.dataTransfer.items[j];
|
||
if (item.type && item.kind && "file" == item.kind.toLowerCase())
|
||
{
|
||
bRes = false;
|
||
for (var k = 0,
|
||
length3 = c_oAscImageUploadProp.SupportedFormats.length; k < length3; k++)
|
||
{
|
||
if (-1 != item.type.indexOf(c_oAscImageUploadProp.SupportedFormats[k]))
|
||
{
|
||
bRes = true;
|
||
break;
|
||
}
|
||
}
|
||
if (false == bRes)
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
bRes = true;
|
||
break;
|
||
}
|
||
else if (type == "text" || type == "text/plain" || type == "text/html")
|
||
{
|
||
bRes = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
return bRes;
|
||
}
|
||
|
||
function GetUploadIFrame()
|
||
{
|
||
var sIFrameName = "apiImageUpload";
|
||
var oImageUploader = document.getElementById(sIFrameName);
|
||
if (!oImageUploader)
|
||
{
|
||
var frame = document.createElement("iframe");
|
||
frame.name = sIFrameName;
|
||
frame.id = sIFrameName;
|
||
frame.setAttribute("style", "position:absolute;left:-2px;top:-2px;width:1px;height:1px;z-index:-1000;");
|
||
document.body.appendChild(frame);
|
||
}
|
||
return window.frames[sIFrameName];
|
||
}
|
||
|
||
function GetUploadInput(onchange)
|
||
{
|
||
var inputName = 'apiiuFile';
|
||
var input = document.getElementById(inputName);
|
||
//удаляем чтобы очистить input от предыдущего ввода
|
||
if (input)
|
||
{
|
||
document.body.removeChild(input);
|
||
}
|
||
input = document.createElement("input");
|
||
input.setAttribute('id', inputName);
|
||
input.setAttribute('name', inputName);
|
||
input.setAttribute('type', 'file');
|
||
input.setAttribute('accept', 'image/*');
|
||
input.setAttribute('style', 'position:absolute;left:-2px;top:-2px;width:1px;height:1px;z-index:-1000;cursor:pointer;');
|
||
input.onchange = onchange;
|
||
document.body.appendChild(input);
|
||
return input;
|
||
}
|
||
|
||
var FormulaSeparators = {
|
||
arrayRowSeparatorDef: ';',
|
||
arrayColSeparatorDef: ',',
|
||
digitSeparatorDef: '.',
|
||
functionArgumentSeparatorDef: ',',
|
||
arrayRowSeparator: ';',
|
||
arrayColSeparator: ',',
|
||
digitSeparator: '.',
|
||
functionArgumentSeparator: ','
|
||
};
|
||
|
||
var g_oCodeSpace = 32; // Code of space
|
||
var g_oCodeLineFeed = 10; // Code of line feed
|
||
var g_arrCodeOperators = [37, 38, 42, 43, 45, 47, 58, 94]; // Code of operators [%, &, *, +, -, /, :, ^]
|
||
var g_oStartCodeOperatorsCompare = 60; // Start code of operators <=>
|
||
var g_oEndCodeOperatorsCompare = 62; // End code of operators <=>
|
||
var g_oCodeLeftParentheses = 40; // Code of (
|
||
var g_oCodeRightParentheses = 41; // Code of )
|
||
var g_oCodeLeftBrace = 123; // Code of {
|
||
var g_oCodeRightBrace = 125; // Code of }
|
||
|
||
/*Functions that checks of an element in formula*/
|
||
var str_namedRanges = "A-Za-z\u005F\u0080-\u0081\u0083\u0085-\u0087\u0089-\u008A\u008C-\u0091\u0093-\u0094\u0096-\u0097\u0099-\u009A\u009C-\u009F\u00A1-\u00A5\u00A7-\u00A8\u00AA\u00AD\u00AF-\u00BA\u00BC-\u02B8\u02BB-\u02C1\u02C7\u02C9-\u02CB\u02CD\u02D0-\u02D1\u02D8-\u02DB\u02DD\u02E0-\u02E4\u02EE\u0370-\u0373\u0376-\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0523\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0621-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06E5-\u06E6\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4-\u07F5\u07FA\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0972\u097B-\u097F\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58-\u0C59\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D28\u0D2A-\u0D39\u0D3D\u0D60-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E3A\u0E40-\u0E4E\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDD\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8B\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10D0-\u10FA\u10FC\u1100-\u1159\u115F-\u11A2\u11A8-\u11F9\u1200-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u1676\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19A9\u19C1-\u19C7\u1A00-\u1A16\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200e\u2010\u2013-\u2016\u2018\u201C-\u201D\u2020-\u2021\u2025-\u2027\u2030\u2032-\u2033\u2035\u203B\u2071\u2074\u207F\u2081-\u2084\u2090-\u2094\u2102-\u2103\u2105\u2107\u2109-\u2113\u2115-\u2116\u2119-\u211D\u2121-\u2122\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2153-\u2154\u215B-\u215E\u2160-\u2188\u2190-\u2199\u21D2\u21D4\u2200\u2202-\u2203\u2207-\u2208\u220B\u220F\u2211\u2215\u221A\u221D-\u2220\u2223\u2225\u2227-\u222C\u222E\u2234-\u2237\u223C-\u223D\u2248\u224C\u2252\u2260-\u2261\u2264-\u2267\u226A-\u226B\u226E-\u226F\u2282-\u2283\u2286-\u2287\u2295\u2299\u22A5\u22BF\u2312\u2460-\u24B5\u24D0-\u24E9\u2500-\u254B\u2550-\u2574\u2581-\u258F\u2592-\u2595\u25A0-\u25A1\u25A3-\u25A9\u25B2-\u25B3\u25B6-\u25B7\u25BC-\u25BD\u25C0-\u25C1\u25C6-\u25C8\u25CB\u25CE-\u25D1\u25E2-\u25E5\u25EF\u2605-\u2606\u2609\u260E-\u260F\u261C\u261E\u2640\u2642\u2660-\u2661\u2663-\u2665\u2667-\u266A\u266C-\u266D\u266F\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C6F\u2C71-\u2C7D\u2C80-\u2CE4\u2D00-\u2D25\u2D30-\u2D65\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3000-\u3003\u3005-\u3017\u301D-\u301F\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31B7\u31F0-\u321C\u3220-\u3229\u3231-\u3232\u3239\u3260-\u327B\u327F\u32A3-\u32A8\u3303\u330D\u3314\u3318\u3322-\u3323\u3326-\u3327\u332B\u3336\u333B\u3349-\u334A\u334D\u3351\u3357\u337B-\u337E\u3380-\u3384\u3388-\u33CA\u33CD-\u33D3\u33D5-\u33D6\u33D8\u33DB-\u33DD\u3400-\u4DB5\u4E00-\u9FC3\uA000-\uA48C\uA500-\uA60C\uA610-\uA61F\uA62A-\uA62B\uA640-\uA65F\uA662-\uA66E\uA680-\uA697\uA722-\uA787\uA78B-\uA78C\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA90A-\uA925\uA930-\uA946\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAC00-\uD7A3\uE000-\uF848\uF900-\uFA2D\uFA30-\uFA6A\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE30-\uFE31\uFE33-\uFE44\uFE49-\uFE52\uFE54-\uFE57\uFE59-\uFE66\uFE68-\uFE6B\uFE70-\uFE74\uFE76-\uFEFC\uFF01-\uFF5E\uFF61-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\uFFE0-\uFFE6",
|
||
str_namedSheetsRange = "\u0001-\u0026\u0028-\u0029\u002B-\u002D\u003B-\u003E\u0040\u005E\u0060\u007B-\u007F\u0082\u0084\u008B\u0092\u0095\u0098\u009B\u00A0\u00A6\u00A9\u00AB-\u00AC\u00AE\u00BB\u0378-\u0379\u037E-\u0383\u0387\u038B\u038D\u03A2\u0524-\u0530\u0557-\u0558\u055A-\u0560\u0588-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EF\u05F3-\u05FF\u0604-\u0605\u0609-\u060A\u060C-\u060D\u061B-\u061E\u0620\u065F\u066A-\u066D\u06D4\u0700-\u070E\u074B-\u074C\u07B2-\u07BF\u07F7-\u07F9\u07FB-\u0900\u093A-\u093B\u094E-\u094F\u0955-\u0957\u0964-\u0965\u0970\u0973-\u097A\u0980\u0984\u098D-\u098E\u0991-\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BB\u09C5-\u09C6\u09C9-\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4-\u09E5\u09FB-\u0A00\u0A04\u0A0B-\u0A0E\u0A11-\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A3B\u0A3D\u0A43-\u0A46\u0A49-\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABB\u0AC6\u0ACA\u0ACE-\u0ACF\u0AD1-\u0ADF\u0AE4-\u0AE5\u0AF0\u0AF2-\u0B00\u0B04\u0B0D-\u0B0E\u0B11-\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3B\u0B45-\u0B46\u0B49-\u0B4A\u0B4E-\u0B55\u0B58-\u0B5B\u0B5E\u0B64-\u0B65\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE-\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BFB-\u0C00\u0C04\u0C0D\u0C11\u0C29\u0C34\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5A-\u0C5F\u0C64-\u0C65\u0C70-\u0C77\u0C80-\u0C81\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4-\u0CE5\u0CF0\u0CF3-\u0D01\u0D04\u0D0D\u0D11\u0D29\u0D3A-\u0D3C\u0D45\u0D49\u0D4E-\u0D56\u0D58-\u0D5F\u0D64-\u0D65\u0D76-\u0D78\u0D80-\u0D81\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE-\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3E\u0E4F\u0E5A-\u0E80\u0E83\u0E85-\u0E86\u0E89\u0E8B-\u0E8C\u0E8E-\u0E93\u0E98\u0EA0\u0EA4\u0EA6\u0EA8-\u0EA9\u0EAC\u0EBA\u0EBE-\u0EBF\u0EC5\u0EC7\u0ECE-\u0ECF\u0EDA-\u0EDB\u0EDE-\u0EFF\u0F04-\u0F12\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F8C-\u0F8F\u0F98\u0FBD\u0FCD\u0FD0-\u0FFF\u104A-\u104F\u109A-\u109D\u10C6-\u10CF\u10FB\u10FD-\u10FF\u115A-\u115E\u11A3-\u11A7\u11FA-\u11FF\u1249\u124E-\u124F\u1257\u1259\u125E-\u125F\u1289\u128E-\u128F\u12B1\u12B6-\u12B7\u12BF\u12C1\u12C6-\u12C7\u12D7\u1311\u1316-\u1317\u135B-\u135E\u1361-\u1368\u137D-\u137F\u139A-\u139F\u13F5-\u1400\u166D-\u166E\u1677-\u167F\u169B-\u169F\u16EB-\u16ED\u16F1-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DA\u17DE-\u17DF\u17EA-\u17EF\u17FA-\u180A\u180F\u181A-\u181F\u1878-\u187F\u18AB-\u18FF\u191D-\u191F\u192C-\u192F\u193C-\u193F\u1941-\u1945\u196E-\u196F\u1975-\u197F\u19AA-\u19AF\u19CA-\u19CF\u19DA-\u19DF\u1A1C-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B60\u1B7D-\u1B7F\u1BAB-\u1BAD\u1BBA-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E-\u1CFF\u1DE7-\u1DFD\u1F16-\u1F17\u1F1E-\u1F1F\u1F46-\u1F47\u1F4E-\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E-\u1F7F\u1FB5\u1FC5\u1FD4-\u1FD5\u1FDC\u1FF0-\u1FF1\u1FF5\u1FFF\u200e\u2011-\u2012\u2017\u2019-\u201B\u201E-\u201F\u2022-\u2024\u2031\u2034\u2036-\u203A\u203C-\u2043\u2045-\u2051\u2053-\u205E\u2065-\u2069\u2072-\u2073\u207D-\u207E\u208D-\u208F\u2095-\u209F\u20B6-\u20CF\u20F1-\u20FF\u2150-\u2152\u2189-\u218F\u2329-\u232A\u23E8-\u23FF\u2427-\u243F\u244B-\u245F\u269E-\u269F\u26BD-\u26BF\u26C4-\u2700\u2705\u270A-\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u275F-\u2760\u2768-\u2775\u2795-\u2797\u27B0\u27BF\u27C5-\u27C6\u27CB\u27CD-\u27CF\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC-\u29FD\u2B4D-\u2B4F\u2B55-\u2BFF\u2C2F\u2C5F\u2C70\u2C7E-\u2C7F\u2CEB-\u2CFC\u2CFE-\u2CFF\u2D26-\u2D2F\u2D66-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u2FFC-\u2FFF\u3018-\u301C\u3030\u303D\u3040\u3097-\u3098\u30A0\u3100-\u3104\u312E-\u3130\u318F\u31B8-\u31BF\u31E4-\u31EF\u321F\u3244-\u324F\u32FF\u4DB6-\u4DBF\u9FC4-\u9FFF\uA48D-\uA48F\uA4C7-\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA660-\uA661\uA673-\uA67B\uA67E\uA698-\uA6FF\uA78D-\uA7FA\uA82C-\uA83F\uA874-\uA87F\uA8C5-\uA8CF\uA8DA-\uA8FF\uA92F\uA954-\uA9FF\uAA37-\uAA3F\uAA4E-\uAA4F\uAA5A-\uABFF\uD7A4-\uD7FF\uFA2E-\uFA2F\uFA6B-\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90-\uFD91\uFDC8-\uFDEF\uFDFE-\uFDFF\uFE10-\uFE1F\uFE27-\uFE2F\uFE32\uFE45-\uFE48\uFE53\uFE58\uFE67\uFE6C-\uFE6F\uFE75\uFEFD-\uFEFE\uFF00\uFF5F-\uFF60\uFFBF-\uFFC1\uFFC8-\uFFC9\uFFD0-\uFFD1\uFFD8-\uFFD9\uFFDD-\uFFDF\uFFE7\uFFEF-\uFFF8\uFFFE-\uFFFF",
|
||
rx_operators = /^ *[-+*\/^&%<=>:] */,
|
||
rg = new XRegExp("^((?:_xlfn.)?[\\p{L}\\d.]+ *)[-+*/^&%<=>:;\\(\\)]"),
|
||
rgRange = /^(\$?[A-Za-z]+\$?\d+:\$?[A-Za-z]+\$?\d+)(?:[-+*\/^&%<=>: ;),]|$)/,
|
||
rgRangeR1C1 = /^(([Rr]{1}(\[)?(-?\d*)(\])?)([Cc]{1}(\[)?(-?\d*)(\])?):([Rr]{1}(\[)?(-?\d*)(\])?)([Cc]{1}(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/,
|
||
rgCols = /^(\$?[A-Za-z]+:\$?[A-Za-z]+)(?:[-+*\/^&%<=>: ;),]|$)/,
|
||
rgColsR1C1 = /^(([Cc]{1}(\[)?(-?\d*)(\])?(:)?)([Cc]?(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/,
|
||
rgRows = /^(\$?\d+:\$?\d+)(?:[-+*\/^&%<=>: ;),]|$)/,
|
||
rgRowsR1C1 = /^(([Rr]{1}(\[)?(-?\d*)(\])?(:)?)([Rr]?(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/,
|
||
rx_ref = /^ *(\$?[A-Za-z]{1,3}\$?(\d{1,7}))([-+*\/^&%<=>: ;),]|$)/,
|
||
rx_refAll = /^(\$?[A-Za-z]+\$?(\d+))([-+*\/^&%<=>: ;),]|$)/,
|
||
rx_refR1C1 = /^(([Rr]{1}(\[)?(-?\d*)(\])?)([Cc]{1}(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/,
|
||
rx_ref3D_non_quoted = new XRegExp("^(?<name_from>[" + str_namedRanges + "][" + str_namedRanges + "\\d.]*)(:(?<name_to>[" + str_namedRanges + "][" + str_namedRanges + "\\d.]*))?!", "i"),
|
||
rx_ref3D_quoted = new XRegExp("^'(?<name_from>(?:''|[^\\[\\]'\\/*?:])*)(?::(?<name_to>(?:''|[^\\[\\]'\\/*?:])*))?'!"),
|
||
rx_ref3D = new XRegExp("^(?<name_from>[^:]+)(:(?<name_to>[^:]+))?!"),
|
||
rx_number = /^ *[+-]?\d*(\d|\.)\d*([eE][+-]?\d+)?/,
|
||
rx_RightParentheses = /^ *\)/,
|
||
rx_Comma = /^ *[,;] */,
|
||
rx_arraySeparators = /^ *[,;] */,
|
||
|
||
rx_error = build_rx_error(null),
|
||
rx_error_local = build_rx_error(null),
|
||
|
||
rx_bool = build_rx_bool(cBoolOrigin),
|
||
rx_bool_local = rx_bool,
|
||
rx_string = /^\"((\"\"|[^\"])*)\"/,
|
||
rx_test_ws_name = new test_ws_name2(),
|
||
rx_space_g = /\s/g,
|
||
rx_space = /\s/,
|
||
rx_intersect = /^ +/,
|
||
rg_str_allLang = /[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0345\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05B0-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0657\u0659-\u065F\u066E-\u06D3\u06D5-\u06DC\u06E1-\u06E8\u06ED-\u06EF\u06FA-\u06FC\u06FF\u0710-\u073F\u074D-\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0817\u081A-\u082C\u0840-\u0858\u08A0\u08A2-\u08AC\u08E4-\u08E9\u08F0-\u08FE\u0900-\u093B\u093D-\u094C\u094E-\u0950\u0955-\u0963\u0971-\u0977\u0979-\u097F\u0981-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C4\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09F0\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A42\u0A47\u0A48\u0A4B\u0A4C\u0A51\u0A59-\u0A5C\u0A5E\u0A70-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC5\u0AC7-\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0-\u0AE3\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D-\u0B44\u0B47\u0B48\u0B4B\u0B4C\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4C\u0C55\u0C56\u0C58\u0C59\u0C60-\u0C63\u0C82\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCC\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CF1\u0CF2\u0D02\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D57\u0D60-\u0D63\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E46\u0E4D\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0ECD\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F71-\u0F81\u0F88-\u0F97\u0F99-\u0FBC\u1000-\u1036\u1038\u103B-\u103F\u1050-\u1062\u1065-\u1068\u106E-\u1086\u108E\u109C\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1713\u1720-\u1733\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17B3\u17B6-\u17C8\u17D7\u17DC\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191C\u1920-\u192B\u1930-\u1938\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A1B\u1A20-\u1A5E\u1A61-\u1A74\u1AA7\u1B00-\u1B33\u1B35-\u1B43\u1B45-\u1B4B\u1B80-\u1BA9\u1BAC-\u1BAF\u1BBA-\u1BE5\u1BE7-\u1BF1\u1C00-\u1C35\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u24B6-\u24E9\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA674-\uA67B\uA67F-\uA697\uA69F-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA827\uA840-\uA873\uA880-\uA8C3\uA8F2-\uA8F7\uA8FB\uA90A-\uA92A\uA930-\uA952\uA960-\uA97C\uA980-\uA9B2\uA9B4-\uA9BF\uA9CF\uAA00-\uAA36\uAA40-\uAA4D\uAA60-\uAA76\uAA7A\uAA80-\uAABE\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABEA\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,
|
||
rx_name = new XRegExp("^(?<name>" + "[" + str_namedRanges + "][" + str_namedRanges + "\\d.]*)([-+*\\/^&%<=>: ;/\n/),]|$)"),
|
||
rx_defName = new test_defName(),
|
||
rx_arraySeparatorsDef = /^ *[,;] */,
|
||
rx_numberDef = /^ *[+-]?\d*(\d|\.)\d*([eE][+-]?\d+)?/,
|
||
rx_CommaDef = /^ *[,;] */,
|
||
|
||
rx_ControlSymbols = /^ *[\u0000-\u001F\u007F-\u009F] */,
|
||
|
||
emailRe = /^(mailto:)?([a-z0-9'\._-]+@[a-z0-9\.-]+\.[a-z0-9]{2,4})([a-яё0-9\._%+-=\? :&]*)/i,
|
||
ipRe = /^(((https?)|(ftps?)):\/\/)?([\-\wа-яё]*:?[\-\wа-яё]*@)?(((1[0-9]{2}|2[0-4][0-9]|25[0-5]|[1-9][0-9]|[0-9])\.){3}(1[0-9]{2}|2[0-4][0-9]|25[0-5]|[1-9][0-9]|[0-9]))(:\d+)?(\/[%\-\wа-яё]*(\.[\wа-яё]{2,})?(([\wа-яё\-\.\?\\\/+@&#;:`~=%!,\(\)]*)(\.[\wа-яё]{2,})?)*)*\/?/i,
|
||
hostnameRe = /^(((https?)|(ftps?)):\/\/)?([\-\wа-яё]*:?[\-\wа-яё]*@)?(([\-\wа-яё]+\.)+[\wа-яё\-]{2,}(:\d+)?(\/[%\-\wа-яё]*(\.[\wа-яё]{2,})?(([\wа-яё\-\.\?\\\/+@&#;:`'~=%!,\(\)]*)(\.[\wа-яё]{2,})?)*)*\/?)/i,
|
||
localRe = /^(((https?)|(ftps?)):\/\/)([\-\wа-яё]*:?[\-\wа-яё]*@)?(([\-\wа-яё]+)(:\d+)?(\/[%\-\wа-яё]*(\.[\wа-яё]{2,})?(([\wа-яё\-\.\?\\\/+@&#;:`'~=%!,\(\)]*)(\.[\wа-яё]{2,})?)*)*\/?)/i,
|
||
|
||
rx_table = build_rx_table(null),
|
||
rx_table_local = build_rx_table(null);
|
||
|
||
function getUrlType(url)
|
||
{
|
||
var checkvalue = url.replace(new RegExp(' ', 'g'), '%20');
|
||
var isEmail;
|
||
var isvalid = checkvalue.strongMatch(hostnameRe);
|
||
!isvalid && (isvalid = checkvalue.strongMatch(ipRe));
|
||
!isvalid && (isvalid = checkvalue.strongMatch(localRe));
|
||
isEmail = checkvalue.strongMatch(emailRe);
|
||
!isvalid && (isvalid = isEmail);
|
||
|
||
return isvalid ? (isEmail ? AscCommon.c_oAscUrlType.Email : AscCommon.c_oAscUrlType.Http) : AscCommon.c_oAscUrlType.Invalid;
|
||
}
|
||
|
||
function prepareUrl(url, type)
|
||
{
|
||
if (!/(((^https?)|(^ftp)):\/\/)|(^mailto:)/i.test(url))
|
||
{
|
||
url = ( (AscCommon.c_oAscUrlType.Email == type) ? 'mailto:' : 'http://' ) + url;
|
||
}
|
||
|
||
return url.replace(new RegExp("%20", 'g'), " ");
|
||
}
|
||
|
||
/**
|
||
* вспомогательный объект для парсинга формул и проверки строки по регуляркам указанным выше.
|
||
* @constructor
|
||
*/
|
||
function parserHelper()
|
||
{
|
||
this.operand_str = null;
|
||
this.pCurrPos = null;
|
||
}
|
||
|
||
parserHelper.prototype._reset = function ()
|
||
{
|
||
this.operand_str = null;
|
||
this.pCurrPos = null;
|
||
};
|
||
parserHelper.prototype.isControlSymbols = function (formula, start_pos, digitDelim)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(rx_ControlSymbols);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[0];
|
||
this.pCurrPos += match[0].length;
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isOperator = function (formula, start_pos)
|
||
{
|
||
// ToDo нужно ли это?
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var code, find = false, length = formula.length;
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (-1 !== g_arrCodeOperators.indexOf(code))
|
||
{
|
||
this.operand_str = formula[start_pos];
|
||
++start_pos;
|
||
find = true;
|
||
break;
|
||
}
|
||
else if (g_oStartCodeOperatorsCompare <= code && code <= g_oEndCodeOperatorsCompare)
|
||
{
|
||
this.operand_str = formula[start_pos];
|
||
++start_pos;
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (g_oStartCodeOperatorsCompare > code || code > g_oEndCodeOperatorsCompare)
|
||
{
|
||
break;
|
||
}
|
||
this.operand_str += formula[start_pos];
|
||
++start_pos;
|
||
}
|
||
find = true;
|
||
break;
|
||
}
|
||
else if (code === g_oCodeSpace || code === g_oCodeLineFeed)
|
||
{
|
||
++start_pos;
|
||
}
|
||
else
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
if (find)
|
||
{
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code !== g_oCodeSpace && code !== g_oCodeLineFeed)
|
||
{
|
||
break;
|
||
}
|
||
++start_pos;
|
||
}
|
||
this.pCurrPos = start_pos;
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isFunc = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var frml = formula.substring(start_pos);
|
||
var match = (frml).match(rg);
|
||
|
||
if (match != null)
|
||
{
|
||
if (match.length == 2)
|
||
{
|
||
this.pCurrPos += match[1].length;
|
||
this.operand_str = match[1];
|
||
return true;
|
||
}
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.convertFromR1C1 = function (r, c, isAbsRow, isAbsCol)
|
||
{
|
||
var activeCell = AscCommonExcel.g_ActiveCell;
|
||
var colStr, rowStr, res = "";
|
||
if(r !== null && c !== null) {
|
||
if(isNaN(r)) {
|
||
r = 0;
|
||
isAbsRow = false;
|
||
}
|
||
if(isNaN(c)) {
|
||
c = 0;
|
||
isAbsCol = false;
|
||
}
|
||
|
||
colStr = g_oCellAddressUtils.colnumToColstrFromWsView(!isAbsCol && activeCell ? activeCell.c1 + 1 + c : c);
|
||
rowStr = !isAbsRow && activeCell ? activeCell.r1 + 1 + r : r;
|
||
if(isAbsCol) {
|
||
colStr = "$" + colStr;
|
||
}
|
||
if(isAbsRow) {
|
||
rowStr = "$" + rowStr;
|
||
}
|
||
res = colStr + rowStr;
|
||
} else if(c !== null) {
|
||
if(isNaN(c)) {
|
||
c = 0;
|
||
isAbsCol = false;
|
||
}
|
||
colStr = g_oCellAddressUtils.colnumToColstrFromWsView(!isAbsCol && activeCell ? activeCell.c1 + 1 + c : c);
|
||
if(isAbsCol) {
|
||
colStr = "$" + colStr;
|
||
}
|
||
res = colStr;
|
||
} else if(r !== null) {
|
||
if(isNaN(r)) {
|
||
r = 0;
|
||
isAbsRow = false;
|
||
}
|
||
rowStr = !isAbsRow && activeCell ? activeCell.r1 + 1 + r + "" : r + "";
|
||
if(isAbsRow) {
|
||
rowStr = "$" + rowStr;
|
||
}
|
||
res = rowStr;
|
||
}
|
||
return res;
|
||
};
|
||
parserHelper.prototype.isArea = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var checkAbs = function(val1, val2) {
|
||
var res = null;
|
||
if(val1 === val2 && val1 === undefined) {
|
||
res = true;
|
||
} else if(val1 === "[" && val2 === "]") {
|
||
res = false;
|
||
}
|
||
return res;
|
||
};
|
||
|
||
var checkMatchRowCol = function(tempMatch) {
|
||
var res = true;
|
||
|
||
if(tempMatch[9] !== "" && tempMatch[9] !== undefined && !(tempMatch[6] === ":" && tempMatch[7] !== "" && tempMatch[7] !== undefined)) {
|
||
res = false;
|
||
} else if(tempMatch[7] !== "" && tempMatch[7] !== undefined && tempMatch[6] !== ":") {
|
||
res = false;
|
||
} else if((tempMatch[7] === "" || tempMatch[7] === undefined) && tempMatch[6] === ":") {
|
||
res = false;
|
||
}
|
||
|
||
return res;
|
||
};
|
||
|
||
var R1C1Mode = AscCommonExcel.g_R1C1Mode;
|
||
var subSTR = formula.substring(start_pos);
|
||
|
||
var match;
|
||
if(!R1C1Mode) {
|
||
match = subSTR.match(rgRange) || subSTR.match(rgCols) || subSTR.match(rgRows);
|
||
if (match != null)
|
||
{
|
||
var m0 = match[1].split(":");
|
||
if (g_oCellAddressUtils.getCellAddress(m0[0]).isValid() && g_oCellAddressUtils.getCellAddress(m0[1]).isValid())
|
||
{
|
||
this.pCurrPos += match[1].length;
|
||
this.operand_str = match[1];
|
||
return true;
|
||
}
|
||
}
|
||
} else {
|
||
var abs1Val, abs2Val, abs3Val, abs4Val, ref1, ref2;
|
||
if((match = subSTR.match(rgRangeR1C1)) !== null) {
|
||
abs1Val = checkAbs(match[3], match[5]);
|
||
abs2Val = checkAbs(match[7], match[9]);
|
||
abs3Val = checkAbs(match[11], match[13]);
|
||
abs4Val = checkAbs(match[15], match[17]);
|
||
if(abs1Val !== null && abs2Val !== null && abs3Val !== null && abs4Val !== null) {
|
||
ref1 = AscCommon.parserHelp.convertFromR1C1(parseInt(match[4]), parseInt(match[8]), abs1Val, abs2Val);
|
||
ref2 = AscCommon.parserHelp.convertFromR1C1(parseInt(match[12]), parseInt(match[16]), abs3Val, abs4Val);
|
||
if (g_oCellAddressUtils.getCellAddress(ref1).isValid() && g_oCellAddressUtils.getCellAddress(ref2).isValid()) {
|
||
this.pCurrPos += match[1].length;
|
||
this.operand_str = match[1];
|
||
this.real_str = ref1 + ":" + ref2;
|
||
|
||
return true;
|
||
}
|
||
}
|
||
} else if(null != (match = subSTR.match(rgColsR1C1))) {
|
||
if(checkMatchRowCol(match)) {
|
||
abs1Val = checkAbs(match[3], match[5]);
|
||
abs2Val = checkAbs(match[8], match[10]);
|
||
if(abs1Val !== null && abs2Val !== null) {
|
||
|
||
ref1 = AscCommon.parserHelp.convertFromR1C1(null, parseInt(match[4]), null, abs1Val);
|
||
ref2 = "" !== match[7] ? AscCommon.parserHelp.convertFromR1C1(null, parseInt(match[9]), null, abs2Val) : ref1;
|
||
if (g_oCellAddressUtils.getCellAddress(ref1).isValid() && g_oCellAddressUtils.getCellAddress(ref2).isValid()) {
|
||
this.pCurrPos += match[1].length;
|
||
this.operand_str = match[1];
|
||
this.real_str = ref1 + ":" + ref2;
|
||
|
||
return true;
|
||
}
|
||
}
|
||
}
|
||
} else if(null != (match = subSTR.match(rgRowsR1C1))) {
|
||
if(checkMatchRowCol(match)) {
|
||
abs1Val = checkAbs(match[3], match[5]);
|
||
abs2Val = checkAbs(match[8], match[10]);
|
||
if(abs1Val !== null && abs2Val !== null) {
|
||
|
||
ref1 = AscCommon.parserHelp.convertFromR1C1(parseInt(match[4]), null, abs1Val);
|
||
ref2 = "" !== match[7] ? AscCommon.parserHelp.convertFromR1C1(parseInt(match[9]), null, abs2Val) : ref1;
|
||
if (g_oCellAddressUtils.getCellAddress(ref1).isValid() && g_oCellAddressUtils.getCellAddress(ref2).isValid()) {
|
||
this.pCurrPos += match[1].length;
|
||
this.operand_str = match[1];
|
||
this.real_str = ref1 + ":" + ref2;
|
||
|
||
return true;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isRef = function (formula, start_pos, allRef)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var R1C1Mode = AscCommonExcel.g_R1C1Mode;
|
||
var substr = formula.substring(start_pos), match;
|
||
var m0, m1;
|
||
if(!R1C1Mode) {
|
||
match = substr.match(rx_ref);
|
||
if (match != null)
|
||
{
|
||
m0 = match[0];
|
||
m1 = match[1];
|
||
if (g_oCellAddressUtils.getCellAddress(m1).isValid())
|
||
{
|
||
this.pCurrPos += m0.indexOf(" ") > -1 ? m0.length - 1 : m1.length;
|
||
this.operand_str = m1;
|
||
return true;
|
||
}
|
||
else if (allRef)
|
||
{
|
||
match = substr.match(rx_refAll);
|
||
if ((match != null || match != undefined) && match.length >= 3)
|
||
{
|
||
m1 = match[1];
|
||
this.pCurrPos += m1.length;
|
||
this.operand_str = m1;
|
||
return true;
|
||
}
|
||
}
|
||
}
|
||
} else {
|
||
match = substr.match(rx_refR1C1);
|
||
|
||
if (match != null && (match[3] === match[5] || (match[3] === "[" && match[5] === "]")) && (match[7] === match[9] || (match[7] === "[" && match[9] === "]"))) {
|
||
m0 = match[0];
|
||
m1 = match[1];
|
||
var ref = AscCommon.parserHelp.convertFromR1C1(parseInt(match[4]), parseInt(match[8]), !match[3], !match[7]);
|
||
if (g_oCellAddressUtils.getCellAddress(ref).isValid()) {
|
||
this.pCurrPos += m0.indexOf(" ") > -1 ? m0.length - 1 : m1.length;
|
||
this.operand_str = m1;
|
||
this.real_str = ref;
|
||
|
||
return true;
|
||
}
|
||
}
|
||
}
|
||
|
||
return false;
|
||
};
|
||
parserHelper.prototype.is3DRef = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var subSTR = formula.substring(start_pos),
|
||
match = XRegExp.exec(subSTR, rx_ref3D_quoted) || XRegExp.exec(subSTR, rx_ref3D_non_quoted);
|
||
|
||
if (match != null)
|
||
{
|
||
this.pCurrPos += match[0].length;
|
||
this.operand_str = match[1];
|
||
return [true, match["name_from"] ? match["name_from"].replace(/''/g, "'") : null, match["name_to"] ? match["name_to"].replace(/''/g, "'") : null];
|
||
}
|
||
return [false, null, null];
|
||
};
|
||
parserHelper.prototype.isNextPtg = function (formula, start_pos, digitDelim)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var subSTR = formula.substring(start_pos), match;
|
||
if (subSTR.match(rx_RightParentheses) == null && subSTR.match(digitDelim ? rx_Comma : rx_CommaDef) == null &&
|
||
subSTR.match(rx_operators) == null && (match = subSTR.match(rx_intersect)) != null)
|
||
{
|
||
this.pCurrPos += match[0].length;
|
||
this.operand_str = match[0][0];
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isNumber = function (formula, start_pos, digitDelim)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(digitDelim ? rx_number : rx_numberDef);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[0].replace(FormulaSeparators.digitSeparator, FormulaSeparators.digitSeparatorDef);
|
||
this.pCurrPos += match[0].length;
|
||
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isLeftParentheses = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var code, find = false, length = formula.length;
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code === g_oCodeLeftParentheses)
|
||
{
|
||
this.operand_str = formula[start_pos];
|
||
++start_pos;
|
||
find = true;
|
||
break;
|
||
}
|
||
else if (code === g_oCodeSpace)
|
||
{
|
||
++start_pos;
|
||
}
|
||
else
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (find)
|
||
{
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code !== g_oCodeSpace)
|
||
{
|
||
break;
|
||
}
|
||
++start_pos;
|
||
}
|
||
this.pCurrPos = start_pos;
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isRightParentheses = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var code, find = false, length = formula.length;
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code === g_oCodeRightParentheses)
|
||
{
|
||
this.operand_str = formula[start_pos];
|
||
++start_pos;
|
||
find = true;
|
||
break;
|
||
}
|
||
else if (code === g_oCodeSpace)
|
||
{
|
||
++start_pos;
|
||
}
|
||
else
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (find)
|
||
{
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code !== g_oCodeSpace)
|
||
{
|
||
break;
|
||
}
|
||
++start_pos;
|
||
}
|
||
this.pCurrPos = start_pos;
|
||
return true;
|
||
}
|
||
};
|
||
parserHelper.prototype.isComma = function (formula, start_pos, digitDelim)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(digitDelim ? rx_Comma : rx_CommaDef);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[0];
|
||
this.pCurrPos += match[0].length;
|
||
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isArraySeparator = function (formula, start_pos, digitDelim)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(digitDelim ? rx_arraySeparators : rx_arraySeparatorsDef);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[0];
|
||
this.pCurrPos += match[0].length;
|
||
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isError = function (formula, start_pos, local)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(local ? rx_error_local : rx_error);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[0];
|
||
this.pCurrPos += match[0].length;
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isBoolean = function (formula, start_pos, local)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(local ? rx_bool_local : rx_bool);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[1];
|
||
this.pCurrPos += match[1].length;
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isString = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var match = (formula.substring(start_pos)).match(rx_string);
|
||
if (match != null)
|
||
{
|
||
this.operand_str = match[1].replace("\"\"", "\"");
|
||
this.pCurrPos += match[0].length;
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
parserHelper.prototype.isName = function (formula, start_pos, wb, ws)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var subSTR = formula.substring(start_pos),
|
||
match = XRegExp.exec(subSTR, rx_name);
|
||
|
||
if (match != null)
|
||
{
|
||
var name = match["name"];
|
||
if (name && 0 !== name.length && name.toUpperCase() !== cBoolLocal.t && name.toUpperCase() !== cBoolLocal.f/*&& wb.DefinedNames && wb.isDefinedNamesExists( name, ws ? ws.getId() : null )*/)
|
||
{
|
||
this.pCurrPos += name.length;
|
||
this.operand_str = name;
|
||
return [true, name];
|
||
}
|
||
this.operand_str = name;
|
||
}
|
||
return [false];
|
||
};
|
||
parserHelper.prototype.isLeftBrace = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var code, find = false, length = formula.length;
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code === g_oCodeLeftBrace)
|
||
{
|
||
this.operand_str = formula[start_pos];
|
||
++start_pos;
|
||
find = true;
|
||
break;
|
||
}
|
||
else if (code === g_oCodeSpace)
|
||
{
|
||
++start_pos;
|
||
}
|
||
else
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (find)
|
||
{
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code !== g_oCodeSpace)
|
||
{
|
||
break;
|
||
}
|
||
++start_pos;
|
||
}
|
||
this.pCurrPos = start_pos;
|
||
return true;
|
||
}
|
||
};
|
||
parserHelper.prototype.isRightBrace = function (formula, start_pos)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var code, find = false, length = formula.length;
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code === g_oCodeRightBrace)
|
||
{
|
||
this.operand_str = formula[start_pos];
|
||
++start_pos;
|
||
find = true;
|
||
break;
|
||
}
|
||
else if (code === g_oCodeSpace)
|
||
{
|
||
++start_pos;
|
||
}
|
||
else
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (find)
|
||
{
|
||
while (start_pos !== length)
|
||
{
|
||
code = formula.charCodeAt(start_pos);
|
||
if (code !== g_oCodeSpace)
|
||
{
|
||
break;
|
||
}
|
||
++start_pos;
|
||
}
|
||
this.pCurrPos = start_pos;
|
||
return true;
|
||
}
|
||
};
|
||
parserHelper.prototype.isTable = function (formula, start_pos, local)
|
||
{
|
||
if (this instanceof parserHelper)
|
||
{
|
||
this._reset();
|
||
}
|
||
|
||
var subSTR = formula.substring(start_pos),
|
||
match = XRegExp.exec(subSTR, local ? rx_table_local : rx_table);
|
||
|
||
if (match != null && match["tableName"])
|
||
{
|
||
this.operand_str = match[0];
|
||
this.pCurrPos += match[0].length;
|
||
return match;
|
||
}
|
||
|
||
return false;
|
||
};
|
||
// Парсим ссылку на диапазон в листе
|
||
parserHelper.prototype.parse3DRef = function (formula)
|
||
{
|
||
// Сначала получаем лист
|
||
var is3DRefResult = this.is3DRef(formula, 0);
|
||
if (is3DRefResult && true === is3DRefResult[0])
|
||
{
|
||
// Имя листа в ссылке
|
||
var sheetName = is3DRefResult[1];
|
||
// Ищем начало range
|
||
var indexStartRange = null !== this.pCurrPos ? this.pCurrPos : formula.indexOf("!") + 1;
|
||
if (this.isArea(formula, indexStartRange) || this.isRef(formula, indexStartRange))
|
||
{
|
||
if (this.operand_str.length == formula.substring(indexStartRange).length)
|
||
return {sheet: sheetName, sheet2: is3DRefResult[2], range: this.operand_str};
|
||
else
|
||
return null;
|
||
}
|
||
}
|
||
// Возвращаем ошибку
|
||
return null;
|
||
};
|
||
// Возвращает ссылку на диапазон с листом (название листа экранируется)
|
||
parserHelper.prototype.get3DRef = function (sheet, range)
|
||
{
|
||
sheet = sheet.split(":");
|
||
var wsFrom = sheet[0],
|
||
wsTo = sheet[1] === undefined ? wsFrom : sheet[1];
|
||
if (rx_test_ws_name.test(wsFrom) && rx_test_ws_name.test(wsTo))
|
||
{
|
||
return (wsFrom !== wsTo ? wsFrom + ":" + wsTo : wsFrom) + "!" + range;
|
||
}
|
||
else
|
||
{
|
||
wsFrom = wsFrom.replace(/'/g, "''");
|
||
wsTo = wsTo.replace(/'/g, "''");
|
||
return "'" + (wsFrom !== wsTo ? wsFrom + ":" + wsTo : wsFrom) + "'!" + range;
|
||
}
|
||
};
|
||
// Возвращает экранируемое название листа
|
||
parserHelper.prototype.getEscapeSheetName = function (sheet)
|
||
{
|
||
return rx_test_ws_name.test(sheet) ? sheet : "'" + sheet.replace(/'/g, "''") + "'";
|
||
};
|
||
/**
|
||
* Проверяем ссылку на валидность для диаграммы или автофильтра
|
||
* @param {AscCommonExcel.Workbook} model
|
||
* @param {AscCommonExcel.WorkbookView} wb
|
||
* @param {Asc.c_oAscSelectionDialogType} dialogType
|
||
* @param {string} dataRange
|
||
* @param {boolean} fullCheck
|
||
* @param {boolean} isRows
|
||
* @param {Asc.c_oAscChartTypeSettings} chartType
|
||
* @returns {*}
|
||
*/
|
||
parserHelper.prototype.checkDataRange = function (model, wb, dialogType, dataRange, fullCheck, isRows, chartType)
|
||
{
|
||
var result, range, sheetModel;
|
||
if (Asc.c_oAscSelectionDialogType.Chart === dialogType)
|
||
{
|
||
result = parserHelp.parse3DRef(dataRange);
|
||
if (result)
|
||
{
|
||
sheetModel = model.getWorksheetByName(result.sheet);
|
||
if (sheetModel)
|
||
{
|
||
range = AscCommonExcel.g_oRangeCache.getAscRange(result.range);
|
||
}
|
||
}
|
||
}
|
||
else
|
||
range = AscCommonExcel.g_oRangeCache.getAscRange(dataRange);
|
||
|
||
if (!range)
|
||
return Asc.c_oAscError.ID.DataRangeError;
|
||
|
||
if (fullCheck)
|
||
{
|
||
if (Asc.c_oAscSelectionDialogType.Chart === dialogType)
|
||
{
|
||
// Проверка максимального дипазона
|
||
var maxSeries = 255;
|
||
var minStockVal = 4;
|
||
var maxValues = 4096;
|
||
|
||
var intervalValues, intervalSeries;
|
||
if (isRows)
|
||
{
|
||
intervalSeries = range.r2 - range.r1 + 1;
|
||
intervalValues = range.c2 - range.c1 + 1;
|
||
}
|
||
else
|
||
{
|
||
intervalSeries = range.c2 - range.c1 + 1;
|
||
intervalValues = range.r2 - range.r1 + 1;
|
||
}
|
||
|
||
if (Asc.c_oAscChartTypeSettings.stock === chartType)
|
||
{
|
||
var chartSettings = new Asc.asc_ChartSettings();
|
||
chartSettings.putType(Asc.c_oAscChartTypeSettings.stock);
|
||
chartSettings.putRange(dataRange);
|
||
chartSettings.putInColumns(!isRows);
|
||
var chartSeries = AscFormat.getChartSeries(sheetModel, chartSettings).series;
|
||
if (minStockVal !== chartSeries.length || !chartSeries[0].Val || !chartSeries[0].Val.NumCache || chartSeries[0].Val.NumCache.length < minStockVal)
|
||
return Asc.c_oAscError.ID.StockChartError;
|
||
}
|
||
else if (intervalSeries > maxSeries)
|
||
return Asc.c_oAscError.ID.MaxDataSeriesError;
|
||
else if(intervalValues > maxValues){
|
||
return Asc.c_oAscError.ID.MaxDataPointsError;
|
||
|
||
}
|
||
}
|
||
else if (Asc.c_oAscSelectionDialogType.FormatTable === dialogType)
|
||
{
|
||
// ToDo убрать эту проверку, заменить на более грамотную после правки функции _searchFilters
|
||
if (true === wb.getWorksheet().model.autoFilters.isRangeIntersectionTableOrFilter(range))
|
||
return Asc.c_oAscError.ID.AutoFilterDataRangeError;
|
||
}
|
||
else if (Asc.c_oAscSelectionDialogType.FormatTableChangeRange === dialogType)
|
||
{
|
||
// ToDo убрать эту проверку, заменить на более грамотную после правки функции _searchFilters
|
||
var checkChangeRange = wb.getWorksheet().af_checkChangeRange(range);
|
||
if (null !== checkChangeRange)
|
||
return checkChangeRange;
|
||
}
|
||
}
|
||
return Asc.c_oAscError.ID.No;
|
||
};
|
||
parserHelper.prototype.setDigitSeparator = function (sep)
|
||
{
|
||
if (sep != FormulaSeparators.digitSeparatorDef)
|
||
{
|
||
FormulaSeparators.digitSeparator = sep;
|
||
FormulaSeparators.arrayRowSeparator = ";";
|
||
FormulaSeparators.arrayColSeparator = "\\";
|
||
FormulaSeparators.functionArgumentSeparator = ";";
|
||
rx_number = new RegExp("^ *[+-]?\\d*(\\d|\\" + FormulaSeparators.digitSeparator + ")\\d*([eE][+-]?\\d+)?");
|
||
rx_Comma = new RegExp("^ *[" + FormulaSeparators.functionArgumentSeparator + "] *");
|
||
rx_arraySeparators = new RegExp("^ *[" + FormulaSeparators.arrayRowSeparator + "\\" + FormulaSeparators.arrayColSeparator + "] *");
|
||
}
|
||
else
|
||
{
|
||
FormulaSeparators.arrayRowSeparator = FormulaSeparators.arrayRowSeparatorDef;
|
||
FormulaSeparators.arrayColSeparator = FormulaSeparators.arrayColSeparatorDef;
|
||
FormulaSeparators.digitSeparator = FormulaSeparators.digitSeparatorDef;
|
||
FormulaSeparators.functionArgumentSeparator = FormulaSeparators.functionArgumentSeparatorDef;
|
||
rx_number = new RegExp("^ *[+-]?\\d*(\\d|\\" + FormulaSeparators.digitSeparatorDef + ")\\d*([eE][+-]?\\d+)?");
|
||
rx_Comma = new RegExp("^ *[" + FormulaSeparators.functionArgumentSeparatorDef + "] *");
|
||
rx_arraySeparators = new RegExp("^ *[" + FormulaSeparators.arrayRowSeparatorDef + "\\" + FormulaSeparators.arrayColSeparatorDef + "] *");
|
||
}
|
||
rx_table_local = build_rx_table_cur();
|
||
};
|
||
parserHelper.prototype.getColumnTypeByName = function (value)
|
||
{
|
||
var res;
|
||
switch (value.toLowerCase())
|
||
{
|
||
case "#" + cStrucTableLocalColumns['a'].toLocaleLowerCase():
|
||
case cStrucTableReservedWords.all.toLocaleLowerCase():
|
||
res = FormulaTablePartInfo.all;
|
||
break;
|
||
case "#" + cStrucTableLocalColumns['d'].toLocaleLowerCase():
|
||
case cStrucTableReservedWords.data.toLocaleLowerCase():
|
||
res = FormulaTablePartInfo.data;
|
||
break;
|
||
case "#" + cStrucTableLocalColumns['h'].toLocaleLowerCase():
|
||
case cStrucTableReservedWords.headers.toLocaleLowerCase():
|
||
res = FormulaTablePartInfo.headers;
|
||
break;
|
||
case "#" + cStrucTableLocalColumns['t'].toLocaleLowerCase():
|
||
case cStrucTableReservedWords.totals.toLocaleLowerCase():
|
||
res = FormulaTablePartInfo.totals;
|
||
break;
|
||
case "#" + cStrucTableLocalColumns['tr'].toLocaleLowerCase():
|
||
case cStrucTableReservedWords.at.toLocaleLowerCase():
|
||
case cStrucTableReservedWords.thisrow.toLocaleLowerCase():
|
||
res = FormulaTablePartInfo.thisRow;
|
||
break;
|
||
default:
|
||
res = FormulaTablePartInfo.data;
|
||
break;
|
||
}
|
||
return res;
|
||
};
|
||
parserHelper.prototype.getColumnNameByType = function (value, local)
|
||
{
|
||
switch (value)
|
||
{
|
||
case FormulaTablePartInfo.all:
|
||
{
|
||
if (local)
|
||
{
|
||
return "#" + cStrucTableLocalColumns['a'];
|
||
}
|
||
return cStrucTableReservedWords.all;
|
||
}
|
||
case FormulaTablePartInfo.data:
|
||
{
|
||
if (local)
|
||
{
|
||
return "#" + cStrucTableLocalColumns['d'];
|
||
}
|
||
return cStrucTableReservedWords.data;
|
||
}
|
||
case FormulaTablePartInfo.headers:
|
||
{
|
||
if (local)
|
||
{
|
||
return "#" + cStrucTableLocalColumns['h'];
|
||
}
|
||
return cStrucTableReservedWords.headers;
|
||
}
|
||
case FormulaTablePartInfo.totals:
|
||
{
|
||
if (local)
|
||
{
|
||
return "#" + cStrucTableLocalColumns['t'];
|
||
}
|
||
return cStrucTableReservedWords.totals;
|
||
}
|
||
case FormulaTablePartInfo.thisRow:
|
||
{
|
||
if (local)
|
||
{
|
||
return "#" + cStrucTableLocalColumns['tr'];
|
||
}
|
||
return cStrucTableReservedWords.thisrow;
|
||
}
|
||
}
|
||
return null;
|
||
};
|
||
|
||
var parserHelp = new parserHelper();
|
||
|
||
var g_oHtmlCursor = new CHTMLCursor();
|
||
var kCurFormatPainterWord = 'de-formatpainter';
|
||
g_oHtmlCursor.register(kCurFormatPainterWord, "text_copy", ["text_copy", 2, 11], "pointer");
|
||
|
||
function asc_ajax(obj)
|
||
{
|
||
var url = "", type = "GET",
|
||
async = true, data = null, dataType,
|
||
error = null, success = null, httpRequest = null,
|
||
contentType = "application/x-www-form-urlencoded",
|
||
responseType = '',
|
||
|
||
init = function (obj)
|
||
{
|
||
if (typeof obj.url !== 'undefined')
|
||
{
|
||
url = obj.url;
|
||
}
|
||
if (typeof obj.type !== 'undefined')
|
||
{
|
||
type = obj.type;
|
||
}
|
||
if (typeof obj.async !== 'undefined')
|
||
{
|
||
async = obj.async;
|
||
}
|
||
if (typeof obj.data !== 'undefined')
|
||
{
|
||
data = obj.data;
|
||
}
|
||
if (typeof obj.dataType !== 'undefined')
|
||
{
|
||
dataType = obj.dataType;
|
||
}
|
||
if (typeof obj.error !== 'undefined')
|
||
{
|
||
error = obj.error;
|
||
}
|
||
if (typeof obj.success !== 'undefined')
|
||
{
|
||
success = obj.success;
|
||
}
|
||
if (typeof (obj.contentType) !== 'undefined')
|
||
{
|
||
contentType = obj.contentType;
|
||
}
|
||
if (typeof (obj.responseType) !== 'undefined')
|
||
{
|
||
responseType = obj.responseType;
|
||
}
|
||
|
||
if (window.XMLHttpRequest)
|
||
{ // Mozilla, Safari, ...
|
||
httpRequest = new XMLHttpRequest();
|
||
if (httpRequest.overrideMimeType && dataType)
|
||
{
|
||
httpRequest.overrideMimeType(dataType);
|
||
}
|
||
}
|
||
else if (window.ActiveXObject)
|
||
{ // IE
|
||
try
|
||
{
|
||
httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
|
||
}
|
||
catch (e)
|
||
{
|
||
try
|
||
{
|
||
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
|
||
}
|
||
catch (e)
|
||
{
|
||
}
|
||
}
|
||
}
|
||
|
||
httpRequest.onreadystatechange = function ()
|
||
{
|
||
respons(this);
|
||
};
|
||
send();
|
||
},
|
||
|
||
send = function ()
|
||
{
|
||
httpRequest.open(type, url, async);
|
||
if (type === "POST")
|
||
httpRequest.setRequestHeader("Content-Type", contentType);
|
||
if (responseType)
|
||
httpRequest.responseType = responseType;
|
||
httpRequest.send(data);
|
||
},
|
||
|
||
respons = function (httpRequest)
|
||
{
|
||
switch (httpRequest.readyState)
|
||
{
|
||
case 0:
|
||
// The object has been created, but not initialized (the open method has not been called).
|
||
break;
|
||
case 1:
|
||
// A request has been opened, but the send method has not been called.
|
||
break;
|
||
case 2:
|
||
// The send method has been called. No data is available yet.
|
||
break;
|
||
case 3:
|
||
// Some data has been received; however, neither responseText nor responseBody is available.
|
||
break;
|
||
case 4:
|
||
if (httpRequest.status === 200 || httpRequest.status === 1223)
|
||
{
|
||
if (typeof success === "function")
|
||
success(httpRequest);
|
||
}
|
||
else
|
||
{
|
||
if (typeof error === "function")
|
||
error(httpRequest, httpRequest.statusText, httpRequest.status);
|
||
}
|
||
break;
|
||
}
|
||
};
|
||
|
||
init(obj);
|
||
}
|
||
|
||
|
||
function CIdCounter()
|
||
{
|
||
this.m_sUserId = null;
|
||
this.m_bLoad = true;
|
||
this.m_bRead = false;
|
||
this.m_nIdCounterLoad = 0; // Счетчик Id для загрузки
|
||
this.m_nIdCounterEdit = 0; // Счетчик Id для работы
|
||
}
|
||
|
||
CIdCounter.prototype.Get_NewId = function ()
|
||
{
|
||
if (true === this.m_bLoad || null === this.m_sUserId)
|
||
{
|
||
this.m_nIdCounterLoad++;
|
||
return ("" + this.m_nIdCounterLoad);
|
||
}
|
||
else
|
||
{
|
||
this.m_nIdCounterEdit++;
|
||
return ("" + this.m_sUserId + "_" + this.m_nIdCounterEdit);
|
||
}
|
||
};
|
||
CIdCounter.prototype.Set_UserId = function (sUserId)
|
||
{
|
||
this.m_sUserId = sUserId;
|
||
};
|
||
CIdCounter.prototype.Set_Load = function (bValue)
|
||
{
|
||
this.m_bLoad = bValue;
|
||
};
|
||
CIdCounter.prototype.Clear = function ()
|
||
{
|
||
this.m_sUserId = null;
|
||
this.m_bLoad = true;
|
||
this.m_nIdCounterLoad = 0; // Счетчик Id для загрузки
|
||
this.m_nIdCounterEdit = 0; // Счетчик Id для работы
|
||
};
|
||
|
||
function CLock()
|
||
{
|
||
this.Type = locktype_None;
|
||
this.UserId = null;
|
||
}
|
||
|
||
CLock.prototype.Get_Type = function ()
|
||
{
|
||
return this.Type;
|
||
};
|
||
CLock.prototype.Set_Type = function (NewType, Redraw)
|
||
{
|
||
if (NewType === locktype_None)
|
||
this.UserId = null;
|
||
|
||
this.Type = NewType;
|
||
|
||
var oApi = editor;
|
||
var oLogicDocument = oApi.WordControl.m_oLogicDocument;
|
||
if (false != Redraw && oLogicDocument)
|
||
{
|
||
// TODO: переделать перерисовку тут
|
||
var oDrawingDocument = oLogicDocument.DrawingDocument;
|
||
oDrawingDocument.ClearCachePages();
|
||
oDrawingDocument.FirePaint();
|
||
|
||
if(oApi.editorId === AscCommon.c_oEditorId.Presentation)
|
||
{
|
||
var oCurSlide = oLogicDocument.Slides[oLogicDocument.CurPage];
|
||
if(oCurSlide && oCurSlide.notesShape && oCurSlide.notesShape.Lock === this)
|
||
{
|
||
oDrawingDocument.Notes_OnRecalculate(oLogicDocument.CurPage, oCurSlide.NotesWidth, oCurSlide.getNotesHeight());
|
||
}
|
||
}
|
||
// TODO: Обновлять интерфейс нужно, потому что мы можем стоять изначально в незалоченном объекте, а тут он
|
||
// может быть залочен.
|
||
var oRevisionsStack = oApi.asc_GetRevisionsChangesStack();
|
||
var arrParagraphs = [];
|
||
for (var nIndex = 0, nCount = oRevisionsStack.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
arrParagraphs.push(oRevisionsStack[nIndex].get_Paragraph())
|
||
}
|
||
|
||
var bNeedUpdate = false;
|
||
for (var nIndex = 0, nCount = arrParagraphs.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
if (arrParagraphs[nIndex].Get_Lock() === this)
|
||
{
|
||
bNeedUpdate = true;
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (bNeedUpdate)
|
||
{
|
||
oLogicDocument.TrackRevisionsManager.Clear_VisibleChanges();
|
||
oLogicDocument.Document_UpdateInterfaceState(false);
|
||
}
|
||
}
|
||
};
|
||
CLock.prototype.Check = function (Id)
|
||
{
|
||
if (this.Type === locktype_Mine)
|
||
AscCommon.CollaborativeEditing.Add_CheckLock(false);
|
||
else if (this.Type === locktype_Other || this.Type === locktype_Other2 || this.Type === locktype_Other3)
|
||
AscCommon.CollaborativeEditing.Add_CheckLock(true);
|
||
else
|
||
AscCommon.CollaborativeEditing.Add_CheckLock(Id);
|
||
};
|
||
CLock.prototype.Lock = function (bMine)
|
||
{
|
||
if (locktype_None === this.Type)
|
||
{
|
||
if (true === bMine)
|
||
this.Type = locktype_Mine;
|
||
else
|
||
true.Type = locktype_Other;
|
||
}
|
||
};
|
||
CLock.prototype.Is_Locked = function ()
|
||
{
|
||
if (locktype_None != this.Type && locktype_Mine != this.Type)
|
||
return true;
|
||
|
||
return false;
|
||
};
|
||
CLock.prototype.Set_UserId = function (UserId)
|
||
{
|
||
this.UserId = UserId;
|
||
};
|
||
CLock.prototype.Get_UserId = function ()
|
||
{
|
||
return this.UserId;
|
||
};
|
||
CLock.prototype.Have_Changes = function ()
|
||
{
|
||
if (locktype_Other2 === this.Type || locktype_Other3 === this.Type)
|
||
return true;
|
||
|
||
return false;
|
||
};
|
||
|
||
|
||
function CContentChanges()
|
||
{
|
||
this.m_aChanges = [];
|
||
}
|
||
|
||
CContentChanges.prototype.Add = function (Changes)
|
||
{
|
||
this.m_aChanges.push(Changes);
|
||
};
|
||
CContentChanges.prototype.RemoveByHistoryItem = function (Item)
|
||
{
|
||
for (var nIndex = 0, nCount = this.m_aChanges.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
if (this.m_aChanges[nIndex].m_pData === Item)
|
||
{
|
||
this.m_aChanges.splice(nIndex, 1);
|
||
return;
|
||
}
|
||
}
|
||
};
|
||
CContentChanges.prototype.Clear = function ()
|
||
{
|
||
this.m_aChanges.length = 0;
|
||
};
|
||
CContentChanges.prototype.Check = function (Type, Pos)
|
||
{
|
||
var CurPos = Pos;
|
||
var Count = this.m_aChanges.length;
|
||
for (var Index = 0; Index < Count; Index++)
|
||
{
|
||
var NewPos = this.m_aChanges[Index].Check_Changes(Type, CurPos);
|
||
if (false === NewPos)
|
||
return false;
|
||
|
||
CurPos = NewPos;
|
||
}
|
||
|
||
return CurPos;
|
||
};
|
||
CContentChanges.prototype.Refresh = function ()
|
||
{
|
||
var Count = this.m_aChanges.length;
|
||
for (var Index = 0; Index < Count; Index++)
|
||
{
|
||
this.m_aChanges[Index].Refresh_BinaryData();
|
||
}
|
||
};
|
||
|
||
function CContentChangesElement(Type, Pos, Count, Data)
|
||
{
|
||
this.m_nType = Type; // Тип изменений (удаление или добавление)
|
||
this.m_nCount = Count; // Количество добавленных/удаленных элементов
|
||
this.m_pData = Data; // Связанные с данным изменением данные из истории
|
||
|
||
// Разбиваем сложное действие на простейшие
|
||
this.m_aPositions = this.Make_ArrayOfSimpleActions(Type, Pos, Count);
|
||
}
|
||
|
||
CContentChangesElement.prototype.Refresh_BinaryData = function ()
|
||
{
|
||
var Binary_Writer = AscCommon.History.BinaryWriter;
|
||
var Binary_Pos = Binary_Writer.GetCurPosition();
|
||
|
||
this.m_pData.Data.UseArray = true;
|
||
this.m_pData.Data.PosArray = this.m_aPositions;
|
||
|
||
Binary_Writer.WriteString2(this.m_pData.Class.Get_Id());
|
||
Binary_Writer.WriteLong(this.m_pData.Data.Type);
|
||
this.m_pData.Data.WriteToBinary(Binary_Writer);
|
||
|
||
var Binary_Len = Binary_Writer.GetCurPosition() - Binary_Pos;
|
||
|
||
this.m_pData.Binary.Pos = Binary_Pos;
|
||
this.m_pData.Binary.Len = Binary_Len;
|
||
};
|
||
CContentChangesElement.prototype.Check_Changes = function (Type, Pos)
|
||
{
|
||
var CurPos = Pos;
|
||
if (contentchanges_Add === Type)
|
||
{
|
||
for (var Index = 0; Index < this.m_nCount; Index++)
|
||
{
|
||
if (false !== this.m_aPositions[Index])
|
||
{
|
||
if (CurPos <= this.m_aPositions[Index])
|
||
this.m_aPositions[Index]++;
|
||
else
|
||
{
|
||
if (contentchanges_Add === this.m_nType)
|
||
CurPos++;
|
||
else //if ( contentchanges_Remove === this.m_nType )
|
||
CurPos--;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else //if ( contentchanges_Remove === Type )
|
||
{
|
||
for (var Index = 0; Index < this.m_nCount; Index++)
|
||
{
|
||
if (false !== this.m_aPositions[Index])
|
||
{
|
||
if (CurPos < this.m_aPositions[Index])
|
||
this.m_aPositions[Index]--;
|
||
else if (CurPos > this.m_aPositions[Index])
|
||
{
|
||
if (contentchanges_Add === this.m_nType)
|
||
CurPos++;
|
||
else //if ( contentchanges_Remove === this.m_nType )
|
||
CurPos--;
|
||
}
|
||
else //if ( CurPos === this.m_aPositions[Index] )
|
||
{
|
||
if (AscCommon.contentchanges_Remove === this.m_nType)
|
||
{
|
||
// Отмечаем, что действия совпали
|
||
this.m_aPositions[Index] = false;
|
||
return false;
|
||
}
|
||
else
|
||
{
|
||
CurPos++;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
return CurPos;
|
||
};
|
||
CContentChangesElement.prototype.Make_ArrayOfSimpleActions = function (Type, Pos, Count)
|
||
{
|
||
// Разбиваем действие на простейшие
|
||
var Positions = [];
|
||
if (contentchanges_Add === Type)
|
||
{
|
||
for (var Index = 0; Index < Count; Index++)
|
||
Positions[Index] = Pos + Index;
|
||
}
|
||
else //if ( contentchanges_Remove === Type )
|
||
{
|
||
for (var Index = 0; Index < Count; Index++)
|
||
Positions[Index] = Pos;
|
||
}
|
||
|
||
return Positions;
|
||
};
|
||
|
||
|
||
/**
|
||
* Корректируем заданное значение в миллиметрах к ближайшему целому значению в твипсах
|
||
* @param mm - заданное значение в миллиметрах
|
||
* @returns {number} - получаем новое значение в миллиметрах, являющееся целым значением в твипсах
|
||
*/
|
||
function CorrectMMToTwips(mm)
|
||
{
|
||
return (((mm * 20 * 72 / 25.4) + 0.5) | 0) * 25.4 / 20 / 72;
|
||
}
|
||
/**
|
||
* Получаем значение в миллиметрах заданного количества твипсов
|
||
* @param nTwips[=1] - значение в твипсах
|
||
* @returns {number}
|
||
*/
|
||
function TwipsToMM(nTwips)
|
||
{
|
||
return (null !== nTwips && undefined !== nTwips ? nTwips : 1) * 25.4 / 20 / 72;
|
||
}
|
||
|
||
/**
|
||
* Конвертируем миллиметры в ближайшее целое значение твипсов
|
||
* @param mm - значение в миллиметрах
|
||
* @returns {number}
|
||
*/
|
||
function MMToTwips(mm)
|
||
{
|
||
return (((mm * 20 * 72 / 25.4) + 0.5) | 0);
|
||
}
|
||
|
||
/**
|
||
* Конвертируем число из римской системы исчисления в обычное десятичное число
|
||
* @param sRoman {string}
|
||
* @returns {number}
|
||
*/
|
||
function RomanToInt(sRoman)
|
||
{
|
||
sRoman = sRoman.toUpperCase();
|
||
if (sRoman < 1)
|
||
{
|
||
return 0;
|
||
}
|
||
else if (!/^M*(?:D?C{0,3}|C[MD])(?:L?X{0,3}|X[CL])(?:V?I{0,3}|I[XV])$/i.test(sRoman))
|
||
{
|
||
return NaN;
|
||
}
|
||
|
||
var chars = {
|
||
"M" : 1000,
|
||
"CM" : 900,
|
||
"D" : 500,
|
||
"CD" : 400,
|
||
"C" : 100,
|
||
"XC" : 90,
|
||
"L" : 50,
|
||
"XL" : 40,
|
||
"X" : 10,
|
||
"IX" : 9,
|
||
"V" : 5,
|
||
"IV" : 4,
|
||
"I" : 1
|
||
};
|
||
var arabic = 0;
|
||
sRoman.replace(/[MDLV]|C[MD]?|X[CL]?|I[XV]?/g, function(i)
|
||
{
|
||
arabic += chars[i];
|
||
});
|
||
|
||
return arabic;
|
||
}
|
||
|
||
/**
|
||
* Конвертируем нумерацию {a b ... z aa bb ... zz aaa bbb ... zzz ...} в число
|
||
* @param sLetters
|
||
* @constructor
|
||
*/
|
||
function LatinNumberingToInt(sLetters)
|
||
{
|
||
sLetters = sLetters.toUpperCase();
|
||
|
||
if (sLetters.length <= 0)
|
||
return NaN;
|
||
|
||
var nLen = sLetters.length;
|
||
|
||
var nFirstCharCode = sLetters.charCodeAt(0);
|
||
if (65 > nFirstCharCode || nFirstCharCode > 90)
|
||
return NaN;
|
||
|
||
for (var nPos = 1; nPos < nLen; ++nPos)
|
||
{
|
||
if (sLetters.charCodeAt(nPos) !== nFirstCharCode)
|
||
return NaN;
|
||
}
|
||
|
||
return (nFirstCharCode - 64) + 26 * (nLen - 1);
|
||
}
|
||
|
||
var g_oUserColorById = {}, g_oUserNextColorIndex = 0;
|
||
|
||
function getUserColorById(userId, userName, isDark, isNumericValue)
|
||
{
|
||
if ((!userId || "" === userId) && (!userName || "" === userName))
|
||
return new CColor(0, 0, 0, 255);
|
||
|
||
var res;
|
||
if (g_oUserColorById.hasOwnProperty(userId))
|
||
{
|
||
res = g_oUserColorById[userId];
|
||
}
|
||
else if (g_oUserColorById.hasOwnProperty(userName))
|
||
{
|
||
res = g_oUserColorById[userName];
|
||
}
|
||
else
|
||
{
|
||
var nColor = Asc.c_oAscArrUserColors[g_oUserNextColorIndex % Asc.c_oAscArrUserColors.length];
|
||
++g_oUserNextColorIndex;
|
||
|
||
res = g_oUserColorById[userId || userName] = new CUserCacheColor(nColor);
|
||
}
|
||
|
||
if (!res)
|
||
return new CColor(0, 0, 0, 255);
|
||
|
||
var oColor = true === isDark ? res.Dark : res.Light;
|
||
return true === isNumericValue ? ((oColor.r << 16) & 0xFF0000) | ((oColor.g << 8) & 0xFF00) | (oColor.b & 0xFF) : oColor;
|
||
}
|
||
|
||
function isNullOrEmptyString(str)
|
||
{
|
||
return (str == undefined) || (str == null) || (str == "");
|
||
}
|
||
|
||
function unleakString(s) {
|
||
//todo remove in the future
|
||
//https://bugs.chromium.org/p/v8/issues/detail?id=2869
|
||
return (' ' + s).substr(1);
|
||
}
|
||
|
||
function CUserCacheColor(nColor)
|
||
{
|
||
this.Light = null;
|
||
this.Dark = null;
|
||
this.init(nColor);
|
||
}
|
||
|
||
CUserCacheColor.prototype.init = function (nColor)
|
||
{
|
||
var r = (nColor >> 16) & 0xFF;
|
||
var g = (nColor >> 8) & 0xFF;
|
||
var b = nColor & 0xFF;
|
||
|
||
var Y = Math.max(0, Math.min(255, 0.299 * r + 0.587 * g + 0.114 * b));
|
||
var Cb = Math.max(0, Math.min(255, 128 - 0.168736 * r - 0.331264 * g + 0.5 * b));
|
||
var Cr = Math.max(0, Math.min(255, 128 + 0.5 * r - 0.418688 * g - 0.081312 * b));
|
||
|
||
if (Y > 63)
|
||
Y = 63;
|
||
|
||
var R = Math.max(0, Math.min(255, Y + 1.402 * (Cr - 128))) | 0;
|
||
var G = Math.max(0, Math.min(255, Y - 0.34414 * (Cb - 128) - 0.71414 * (Cr - 128))) | 0;
|
||
var B = Math.max(0, Math.min(255, Y + 1.772 * (Cb - 128))) | 0;
|
||
|
||
this.Light = new CColor(r, g, b, 255);
|
||
this.Dark = new CColor(R, G, B, 255);
|
||
};
|
||
|
||
function loadScript(url, onSuccess, onError)
|
||
{
|
||
if (window["NATIVE_EDITOR_ENJINE"] === true || window["Native"] !== undefined)
|
||
{
|
||
onSuccess();
|
||
return;
|
||
}
|
||
|
||
if (window["AscDesktopEditor"] && window["local_load_add"])
|
||
{
|
||
var _context = {
|
||
"completeLoad": function ()
|
||
{
|
||
return onSuccess();
|
||
}
|
||
};
|
||
window["local_load_add"](_context, "sdk-all-from-min", url);
|
||
var _ret_param = window["AscDesktopEditor"]["LoadJS"](url);
|
||
if (2 != _ret_param)
|
||
window["local_load_remove"](url);
|
||
if (_ret_param == 1)
|
||
{
|
||
setTimeout(onSuccess, 1);
|
||
return;
|
||
}
|
||
else if (_ret_param == 2)
|
||
return;
|
||
}
|
||
|
||
var script = document.createElement('script');
|
||
script.type = 'text/javascript';
|
||
script.src = url;
|
||
script.onload = onSuccess;
|
||
script.onerror = onError;
|
||
|
||
// Fire the loading
|
||
document.head.appendChild(script);
|
||
}
|
||
|
||
function loadSdk(sdkName, onSuccess, onError)
|
||
{
|
||
if (window['AscNotLoadAllScript'])
|
||
{
|
||
onSuccess();
|
||
}
|
||
else
|
||
{
|
||
loadScript('./../../../../sdkjs/' + sdkName + '/sdk-all.js', onSuccess, onError);
|
||
}
|
||
}
|
||
|
||
function getAltGr(e)
|
||
{
|
||
var ctrlKey = e.metaKey || e.ctrlKey;
|
||
var altKey = e.altKey;
|
||
return (altKey && (AscBrowser.isMacOs ? !ctrlKey : ctrlKey));
|
||
}
|
||
|
||
function getColorThemeByIndex(index)
|
||
{
|
||
var _c, scheme = null;
|
||
var oColorScheme = AscCommon.g_oUserColorScheme;
|
||
if (index >= oColorScheme.length)
|
||
{
|
||
return scheme;
|
||
}
|
||
scheme = new AscFormat.ClrScheme();
|
||
|
||
var tmp = oColorScheme[index];
|
||
scheme.name = tmp.name;
|
||
|
||
_c = tmp.get_dk1();
|
||
scheme.colors[8] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_lt1();
|
||
scheme.colors[12] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_dk2();
|
||
scheme.colors[9] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_lt2();
|
||
scheme.colors[13] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_accent1();
|
||
scheme.colors[0] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_accent2();
|
||
scheme.colors[1] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_accent3();
|
||
scheme.colors[2] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_accent4();
|
||
scheme.colors[3] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_accent5();
|
||
scheme.colors[4] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_accent6();
|
||
scheme.colors[5] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_hlink();
|
||
scheme.colors[11] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
_c = tmp.get_folHlink();
|
||
scheme.colors[10] = AscFormat.CreateUniColorRGB(_c.r, _c.g, _c.b);
|
||
|
||
return scheme;
|
||
}
|
||
|
||
function isEastAsianScript(value)
|
||
{
|
||
// Bopomofo (3100–312F)
|
||
// Bopomofo Extended (31A0–31BF)
|
||
// CJK Unified Ideographs (4E00–9FEA)
|
||
// CJK Unified Ideographs Extension A (3400–4DB5)
|
||
// CJK Unified Ideographs Extension B (20000–2A6D6)
|
||
// CJK Unified Ideographs Extension C (2A700–2B734)
|
||
// CJK Unified Ideographs Extension D (2B740–2B81D)
|
||
// CJK Unified Ideographs Extension E (2B820–2CEA1)
|
||
// CJK Unified Ideographs Extension F (2CEB0–2EBE0)
|
||
// CJK Compatibility Ideographs (F900–FAFF)
|
||
// CJK Compatibility Ideographs Supplement (2F800–2FA1F)
|
||
// Kangxi Radicals (2F00–2FDF)
|
||
// CJK Radicals Supplement (2E80–2EFF)
|
||
// CJK Strokes (31C0–31EF)
|
||
// Ideographic Description Characters (2FF0–2FFF)
|
||
// Hangul Jamo (1100–11FF)
|
||
// Hangul Jamo Extended-A (A960–A97F)
|
||
// Hangul Jamo Extended-B (D7B0–D7FF)
|
||
// Hangul Compatibility Jamo (3130–318F)
|
||
// Halfwidth and Fullwidth Forms (FF00–FFEF)
|
||
// Hangul Syllables (AC00–D7AF)
|
||
// Hiragana (3040–309F)
|
||
// Kana Extended-A (1B100–1B12F)
|
||
// Kana Supplement (1B000–1B0FF)
|
||
// Kanbun (3190–319F)
|
||
// Katakana (30A0–30FF)
|
||
// Katakana Phonetic Extensions (31F0–31FF)
|
||
// Lisu (A4D0–A4FF)
|
||
// Miao (16F00–16F9F)
|
||
// Nushu (1B170–1B2FF)
|
||
// Tangut (17000–187EC)
|
||
// Tangut Components (18800–18AFF)
|
||
// Yi Syllables (A000–A48F)
|
||
// Yi Radicals (A490–A4CF)
|
||
|
||
return ((0x3100 <= value && value <= 0x312F)
|
||
|| (0x31A0 <= value && value <= 0x31BF)
|
||
|| (0x4E00 <= value && value <= 0x9FEA)
|
||
|| (0x3400 <= value && value <= 0x4DB5)
|
||
|| (0x20000 <= value && value <= 0x2A6D6)
|
||
|| (0x2A700 <= value && value <= 0x2B734)
|
||
|| (0x2B740 <= value && value <= 0x2B81D)
|
||
|| (0x2B820 <= value && value <= 0x2CEA1)
|
||
|| (0x2CEB0 <= value && value <= 0x2EBE0)
|
||
|| (0xF900 <= value && value <= 0xFAFF)
|
||
|| (0x2F800 <= value && value <= 0x2FA1F)
|
||
|| (0x2F00 <= value && value <= 0x2FDF)
|
||
|| (0x2E80 <= value && value <= 0x2EFF)
|
||
|| (0x31C0 <= value && value <= 0x31EF)
|
||
|| (0x2FF0 <= value && value <= 0x2FFF)
|
||
|| (0x1100 <= value && value <= 0x11FF)
|
||
|| (0xA960 <= value && value <= 0xA97F)
|
||
|| (0xD7B0 <= value && value <= 0xD7FF)
|
||
|| (0x3130 <= value && value <= 0x318F)
|
||
|| (0xFF00 <= value && value <= 0xFFEF)
|
||
|| (0xAC00 <= value && value <= 0xD7AF)
|
||
|| (0x3040 <= value && value <= 0x309F)
|
||
|| (0x1B100 <= value && value <= 0x1B12F)
|
||
|| (0x1B000 <= value && value <= 0x1B0FF)
|
||
|| (0x3190 <= value && value <= 0x319F)
|
||
|| (0x30A0 <= value && value <= 0x30FF)
|
||
|| (0x31F0 <= value && value <= 0x31FF)
|
||
|| (0xA4D0 <= value && value <= 0xA4FF)
|
||
|| (0x16F00 <= value && value <= 0x16F9F)
|
||
|| (0x1B170 <= value && value <= 0x1B2FF)
|
||
|| (0x17000 <= value && value <= 0x187EC)
|
||
|| (0x18800 <= value && value <= 0x18AFF)
|
||
|| (0xA000 <= value && value <= 0xA48F)
|
||
|| (0xA490 <= value && value <= 0xA4CF));
|
||
}
|
||
|
||
var g_oIdCounter = new CIdCounter();
|
||
|
||
window["SetDoctRendererParams"] = function (_params)
|
||
{
|
||
if (_params["retina"] === true)
|
||
AscBrowser.isRetina = true;
|
||
};
|
||
|
||
window.Asc.g_signature_drawer = null;
|
||
function CSignatureDrawer(id, api, w, h)
|
||
{
|
||
window.Asc.g_signature_drawer = this;
|
||
|
||
this.Api = api;
|
||
this.CanvasParent = document.getElementById(id);
|
||
|
||
this.Canvas = document.createElement('canvas');
|
||
this.Canvas.style.position = "absolute";
|
||
this.Canvas.style.left = "0px";
|
||
this.Canvas.style.top = "0px";
|
||
|
||
var _width = parseInt(this.CanvasParent.offsetWidth);
|
||
var _height = parseInt(this.CanvasParent.offsetHeight);
|
||
if (0 == _width)
|
||
_width = 300;
|
||
if (0 == _height)
|
||
_height = 80;
|
||
|
||
this.Canvas.width = _width;
|
||
this.Canvas.height = _height;
|
||
|
||
this.CanvasParent.appendChild(this.Canvas);
|
||
|
||
this.Image = "";
|
||
this.ImageHtml = null;
|
||
|
||
this.Text = "";
|
||
this.Font = "Arial";
|
||
this.Size = 10;
|
||
this.Italic = true;
|
||
this.Bold = false;
|
||
|
||
this.Width = w;
|
||
this.Height = h;
|
||
|
||
this.CanvasReturn = null;
|
||
|
||
this.IsAsync = false;
|
||
}
|
||
|
||
CSignatureDrawer.prototype.getCanvas = function()
|
||
{
|
||
return (this.CanvasReturn == null) ? this.Canvas : this.CanvasReturn;
|
||
};
|
||
|
||
CSignatureDrawer.prototype.getImages = function()
|
||
{
|
||
if (!this.isValid())
|
||
return ["", ""];
|
||
|
||
this.CanvasReturn = document.createElement("canvas");
|
||
this.CanvasReturn.width = (this.Width * AscCommon.g_dKoef_mm_to_pix);
|
||
this.CanvasReturn.height = (this.Height * AscCommon.g_dKoef_mm_to_pix);
|
||
|
||
if (this.Text != "")
|
||
this.drawText();
|
||
else
|
||
this.drawImage();
|
||
|
||
var _ret = [];
|
||
_ret.push(this.CanvasReturn.toDataURL("image/png"));
|
||
|
||
var _ctx = this.CanvasReturn.getContext("2d");
|
||
_ctx.strokeStyle = "#FF0000";
|
||
_ctx.lineWidth = 2;
|
||
|
||
_ctx.moveTo(0, 0);
|
||
_ctx.lineTo(this.CanvasReturn.width, this.CanvasReturn.height);
|
||
_ctx.moveTo(0, this.CanvasReturn.height);
|
||
_ctx.lineTo(this.CanvasReturn.width, 0);
|
||
|
||
_ctx.stroke();
|
||
|
||
_ret.push(this.CanvasReturn.toDataURL("image/png"));
|
||
|
||
this.CanvasReturn = null;
|
||
return _ret;
|
||
};
|
||
|
||
CSignatureDrawer.prototype.setText = function(text, font, size, isItalic, isBold)
|
||
{
|
||
if (this.IsAsync)
|
||
{
|
||
this.Text = text;
|
||
return;
|
||
}
|
||
|
||
this.Image = "";
|
||
this.ImageHtml = null;
|
||
|
||
this.Text = text;
|
||
this.Font = font;
|
||
this.Size = size;
|
||
this.Italic = isItalic;
|
||
this.Bold = isBold;
|
||
|
||
this.IsAsync = true;
|
||
AscFonts.FontPickerByCharacter.checkText(this.Text, this, function() {
|
||
|
||
this.IsAsync = false;
|
||
|
||
var loader = AscCommon.g_font_loader;
|
||
var fontinfo = AscFonts.g_fontApplication.GetFontInfo(font);
|
||
var isasync = loader.LoadFont(fontinfo, function() {
|
||
window.Asc.g_signature_drawer.Api.sync_EndAction(Asc.c_oAscAsyncActionType.Information, Asc.c_oAscAsyncAction.LoadFont);
|
||
window.Asc.g_signature_drawer.drawText();
|
||
});
|
||
|
||
if (false === isasync)
|
||
{
|
||
this.drawText();
|
||
}
|
||
|
||
});
|
||
};
|
||
|
||
CSignatureDrawer.prototype.drawText = function()
|
||
{
|
||
var _oldTurn = this.Api.isViewMode;
|
||
var _oldMarks = this.Api.ShowParaMarks;
|
||
this.Api.isViewMode = true;
|
||
this.Api.ShowParaMarks = false;
|
||
AscFormat.ExecuteNoHistory(AscCommon.DrawTextByCenter, this, []);
|
||
this.Api.isViewMode = _oldTurn;
|
||
this.Api.ShowParaMarks = _oldMarks;
|
||
};
|
||
|
||
CSignatureDrawer.prototype.drawImage = function()
|
||
{
|
||
var _canvas = this.getCanvas();
|
||
var w = _canvas.width;
|
||
var h = _canvas.height;
|
||
var _ctx = _canvas.getContext("2d");
|
||
_ctx.clearRect(0, 0, w, h);
|
||
|
||
var im_w = this.ImageHtml.width;
|
||
var im_h = this.ImageHtml.height;
|
||
|
||
var _x = 0;
|
||
var _y = 0;
|
||
var _w = 0;
|
||
var _h = 0;
|
||
|
||
var koef1 = w / h;
|
||
var koef2 = im_w / im_h;
|
||
|
||
if (koef1 > koef2)
|
||
{
|
||
_h = h;
|
||
_w = (koef2 * _h) >> 0;
|
||
_y = 0;
|
||
_x = (w - _w) >> 1;
|
||
}
|
||
else
|
||
{
|
||
_w = w;
|
||
_h = (_w / koef2) >> 0;
|
||
_x = 0;
|
||
_y = (h - _h) >> 1;
|
||
}
|
||
|
||
_ctx.drawImage(this.ImageHtml, _x, _y, _w, _h);
|
||
};
|
||
|
||
CSignatureDrawer.prototype.selectImage = CSignatureDrawer.prototype["selectImage"] = function()
|
||
{
|
||
this.Text = "";
|
||
window["AscDesktopEditor"]["OpenFilenameDialog"]("images", false, function(_file) {
|
||
var file = _file;
|
||
if (Array.isArray(file))
|
||
file = file[0];
|
||
|
||
if (file == "")
|
||
return;
|
||
|
||
var _drawer = window.Asc.g_signature_drawer;
|
||
_drawer.Image = window["AscDesktopEditor"]["GetImageBase64"](file);
|
||
|
||
_drawer.ImageHtml = new Image();
|
||
_drawer.ImageHtml.onload = function()
|
||
{
|
||
window.Asc.g_signature_drawer.drawImage();
|
||
};
|
||
_drawer.ImageHtml.src = _drawer.Image;
|
||
_drawer = null;
|
||
});
|
||
};
|
||
|
||
CSignatureDrawer.prototype.isValid = function()
|
||
{
|
||
return (this.Image != "" || this.Text != "");
|
||
};
|
||
|
||
CSignatureDrawer.prototype.destroy = function()
|
||
{
|
||
window.Asc.g_signature_drawer.CanvasParent.removeChild(this.Canvas);
|
||
delete window.Asc.g_signature_drawer;
|
||
};
|
||
|
||
function CSignatureImage()
|
||
{
|
||
this.ImageValidBase64 = "";
|
||
this.ImageInvalidBase64 = "";
|
||
|
||
this.ImageValid = null;
|
||
this.ImageInvalid = null;
|
||
|
||
this.Valid = false;
|
||
this.Loading = 0;
|
||
|
||
this.Remove = function()
|
||
{
|
||
this.ImageValidBase64 = "";
|
||
this.ImageInvalidBase64 = "";
|
||
|
||
this.ImageValid = null;
|
||
this.ImageInvalid = null;
|
||
|
||
this.Valid = false;
|
||
this.Loading = 0;
|
||
};
|
||
|
||
this.Register = function(_api, _guid)
|
||
{
|
||
if (_api.ImageLoader.map_image_index[_guid])
|
||
return;
|
||
var _obj = { Image : (this.Valid ? this.ImageValid : this.ImageInvalid), Status : ImageLoadStatus.Complete, src : _guid };
|
||
_api.ImageLoader.map_image_index[_guid] = _obj;
|
||
};
|
||
|
||
this.Unregister = function(api, _guid)
|
||
{
|
||
if (_api.ImageLoader.map_image_index[_guid])
|
||
delete _api.ImageLoader.map_image_index[_guid];
|
||
};
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////
|
||
/////////////// CRYPT ////////////////////////
|
||
/////////////////////////////////////////////////////////
|
||
AscCommon.EncryptionMessageType = {
|
||
Encrypt : 0,
|
||
Decrypt : 1
|
||
};
|
||
function CEncryptionData()
|
||
{
|
||
this._init = false;
|
||
|
||
this.arrData = [];
|
||
this.arrImages = [];
|
||
|
||
this.handleChangesCallback = null;
|
||
this.isChangesHandled = false;
|
||
|
||
this.cryptoMode = 0; // start crypto mode
|
||
this.isChartEditor = false;
|
||
|
||
this.isExistDecryptedChanges = false; // был ли хоть один запрос на расшифровку данных (были ли чужие изменения)
|
||
|
||
this.cryptoPrefix = (window["AscDesktopEditor"] && window["AscDesktopEditor"]["GetEncryptedHeader"]) ? window["AscDesktopEditor"]["GetEncryptedHeader"]() : "ENCRYPTED;";
|
||
this.cryptoPrefixLen = this.cryptoPrefix.length;
|
||
|
||
this.editorId = null;
|
||
|
||
this.nextChangesTimeoutId = -1;
|
||
|
||
this.isPasswordCryptoPresent = false;
|
||
|
||
this.init = function()
|
||
{
|
||
this._init = true;
|
||
};
|
||
|
||
this.isInit = function()
|
||
{
|
||
return this._init;
|
||
};
|
||
|
||
this.isNeedCrypt = function()
|
||
{
|
||
if (!window.g_asc_plugins)
|
||
return false;
|
||
|
||
if (!window.g_asc_plugins.isRunnedEncryption())
|
||
return false;
|
||
|
||
if (!window["AscDesktopEditor"])
|
||
return false;
|
||
|
||
if (this.isChartEditor)
|
||
return false;
|
||
|
||
if (2 == this.cryptoMode)
|
||
return true;
|
||
|
||
if (0 === window["AscDesktopEditor"]["CryptoMode"])
|
||
return false;
|
||
|
||
return true;
|
||
};
|
||
|
||
this.isCryptoImages = function()
|
||
{
|
||
return (this.isNeedCrypt() && this.isPasswordCryptoPresent);
|
||
};
|
||
|
||
this.addCryproImagesFromDialog = function(callback)
|
||
{
|
||
var _this = this;
|
||
window["AscDesktopEditor"]["OpenFilenameDialog"]("images", true, function(files) {
|
||
var _files = [];
|
||
|
||
var _options = { isImageCrypt: true, callback: callback, ext : [] };
|
||
|
||
for (var i = 0; i < files.length; i++)
|
||
{
|
||
_files.push(window["AscDesktopEditor"]["GetImageBase64"](files[i], true));
|
||
_options.ext.push(AscCommon.GetFileExtension(files[i]));
|
||
}
|
||
|
||
_this.sendChanges(this, _files, AscCommon.EncryptionMessageType.Encrypt, _options);
|
||
});
|
||
};
|
||
|
||
this.addCryproImagesFromUrls = function(urls, callback)
|
||
{
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
_editor.sync_StartAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.LoadImage);
|
||
|
||
var _this = this;
|
||
window["AscDesktopEditor"]["DownloadFiles"](urls, [], function(files) {
|
||
|
||
_editor.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.LoadImage);
|
||
|
||
_editor.sync_StartAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.UploadImage);
|
||
|
||
var _files = [];
|
||
|
||
var _options = { isImageCrypt: true, isUrls: true, callback: callback, ext : [], api: _editor };
|
||
|
||
for (var elem in files)
|
||
{
|
||
_files.push(window["AscDesktopEditor"]["GetImageBase64"](files[elem], true));
|
||
_options.ext.push(window["AscDesktopEditor"]["GetImageFormat"](files[elem]));
|
||
window["AscDesktopEditor"]["RemoveFile"](files[elem]);
|
||
}
|
||
|
||
_this.sendChanges(this, _files, AscCommon.EncryptionMessageType.Encrypt, _options);
|
||
});
|
||
};
|
||
|
||
this.onDecodeError = function()
|
||
{
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
_editor.sendEvent("asc_onError", Asc.c_oAscError.ID.DataEncrypted, Asc.c_oAscError.Level.Critical);
|
||
};
|
||
|
||
this.checkEditorId = function()
|
||
{
|
||
if (null == this.editorId)
|
||
{
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
this.editorId = _editor.editorId;
|
||
}
|
||
};
|
||
|
||
this.decryptImage = function(src, img, data)
|
||
{
|
||
this.sendChanges(this, [data], AscCommon.EncryptionMessageType.Decrypt, { isImageDecrypt: true, src: src, img : img });
|
||
};
|
||
|
||
this.nextChanges = function()
|
||
{
|
||
this.nextChangesTimeoutId = setTimeout(function() {
|
||
AscCommon.EncryptionWorker.sendChanges(undefined, undefined);
|
||
this.nextChangesTimeoutId = -1;
|
||
}, 10);
|
||
};
|
||
|
||
this.sendChanges = function(sender, data, type, options)
|
||
{
|
||
if (!this.isNeedCrypt())
|
||
{
|
||
if (AscCommon.EncryptionMessageType.Encrypt == type)
|
||
{
|
||
sender._send(data, true);
|
||
}
|
||
else if (AscCommon.EncryptionMessageType.Decrypt == type)
|
||
{
|
||
if (this.isExistEncryptedChanges(data["changes"]))
|
||
{
|
||
this.onDecodeError();
|
||
return;
|
||
}
|
||
sender._onSaveChanges(data, true);
|
||
}
|
||
return;
|
||
}
|
||
|
||
if (undefined !== type)
|
||
this.arrData.push({ sender: sender, type: type, data: data, options: options });
|
||
|
||
if (this.arrData.length == 0)
|
||
return;
|
||
|
||
if (undefined !== type && ((1 != this.arrData.length) || !this.isChangesHandled))
|
||
return; // вызовется на коллбэке
|
||
|
||
if (undefined !== type && -1 != this.nextChangesTimeoutId)
|
||
{
|
||
// вызвали send, когда данные на receiveChanges были удалены - и запустился nextChanges
|
||
// но так как он сделан на таймере - то просто он не успел отработать.
|
||
// тут запускаем единственное изменение - это и есть как бы next.
|
||
// убиваем таймер
|
||
|
||
clearTimeout(this.nextChangesTimeoutId);
|
||
this.nextChangesTimeoutId = -1;
|
||
}
|
||
|
||
if (AscCommon.EncryptionMessageType.Encrypt == this.arrData[0].type)
|
||
{
|
||
//console.log("encrypt: " + data["changes"]);
|
||
if (this.arrData[0].options && this.arrData[0].options.isImageCrypt)
|
||
window.g_asc_plugins.sendToEncryption({ "type" : "encryptData", "data" : this.arrData[0].data });
|
||
else
|
||
window.g_asc_plugins.sendToEncryption({ "type" : "encryptData", "data" : JSON.parse(this.arrData[0].data["changes"]) });
|
||
}
|
||
else if (AscCommon.EncryptionMessageType.Decrypt == this.arrData[0].type)
|
||
{
|
||
//console.log("decrypt: " + data["changes"]);
|
||
if (this.arrData[0].options && this.arrData[0].options.isImageDecrypt)
|
||
window.g_asc_plugins.sendToEncryption({ "type" : "decryptData", "data" : this.arrData[0].data });
|
||
else
|
||
window.g_asc_plugins.sendToEncryption({ "type" : "decryptData", "data" : this.arrData[0].data["changes"] });
|
||
}
|
||
};
|
||
|
||
this.receiveChanges = function(obj)
|
||
{
|
||
var data = obj["data"];
|
||
var check = obj["check"];
|
||
if (!check)
|
||
{
|
||
this.onDecodeError();
|
||
return;
|
||
}
|
||
|
||
if (this.handleChangesCallback)
|
||
{
|
||
this.isExistDecryptedChanges = true;
|
||
this.checkEditorId();
|
||
|
||
if (this.editorId == AscCommon.c_oEditorId.Spreadsheet)
|
||
{
|
||
for (var i = data.length - 1; i >= 0; i--)
|
||
{
|
||
this.handleChangesCallback.changesBase[i] = data[i];
|
||
}
|
||
}
|
||
else
|
||
{
|
||
for (var i = data.length - 1; i >= 0; i--)
|
||
{
|
||
this.handleChangesCallback.changesBase[i].m_pData = data[i];
|
||
}
|
||
}
|
||
this.isChangesHandled = true;
|
||
this.handleChangesCallback.callback.call(this.handleChangesCallback.sender);
|
||
this.handleChangesCallback = null;
|
||
|
||
this.nextChanges();
|
||
return;
|
||
}
|
||
|
||
var obj = this.arrData[0];
|
||
this.arrData.splice(0, 1);
|
||
|
||
if (AscCommon.EncryptionMessageType.Encrypt == obj.type)
|
||
{
|
||
if (obj.options && obj.options.isImageCrypt)
|
||
{
|
||
for (var i = 0; i < data.length; i++)
|
||
{
|
||
if (this.cryptoPrefix == data[i].substr(0, this.cryptoPrefixLen))
|
||
{
|
||
// дописываем extension
|
||
data[i] = this.cryptoPrefix + obj.options.ext[i] + ";" + data[i].substr(this.cryptoPrefixLen);
|
||
}
|
||
}
|
||
|
||
if (!obj.options.isUrls)
|
||
obj.options.callback(Asc.c_oAscError.ID.No, data);
|
||
else
|
||
{
|
||
AscCommon.UploadImageUrls(data, obj.options.api.documentId, obj.options.api.documentUserId, obj.options.api.CoAuthoringApi.get_jwt(), function(urls)
|
||
{
|
||
obj.options.api.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.UploadImage);
|
||
|
||
obj.options.callback(urls);
|
||
});
|
||
}
|
||
}
|
||
else
|
||
{
|
||
obj.data["changes"] = JSON.stringify(data);
|
||
obj.sender._send(obj.data, true);
|
||
}
|
||
}
|
||
else if (AscCommon.EncryptionMessageType.Decrypt == obj.type)
|
||
{
|
||
if (obj.options && obj.options.isImageDecrypt)
|
||
{
|
||
window["AscDesktopEditor"]["ResaveFile"](obj.options.src, data[0]);
|
||
obj.options.img["onload_crypto"](obj.options.src);
|
||
}
|
||
else
|
||
{
|
||
this.isExistDecryptedChanges = true;
|
||
obj.data["changes"] = data;
|
||
obj.sender._onSaveChanges(obj.data, true);
|
||
}
|
||
}
|
||
|
||
this.nextChanges();
|
||
};
|
||
|
||
this.isExistEncryptedChanges = function(_array)
|
||
{
|
||
if (0 == _array.length)
|
||
return false;
|
||
|
||
this.checkEditorId();
|
||
|
||
var isChangesMode = (_array[0]["change"]) ? true : false;
|
||
var _prefix = "";
|
||
var _checkPrefixLen = this.cryptoPrefixLen + 1; // "ENCRYPTED; && ""ENCRYPTED;
|
||
|
||
if (isChangesMode)
|
||
{
|
||
for (var i = _array.length - 1; i >= 0; i--)
|
||
{
|
||
if (_array[i]["change"].length > _checkPrefixLen)
|
||
{
|
||
_prefix = _array[i]["change"].substr(0, _checkPrefixLen);
|
||
if (-1 != _prefix.indexOf(this.cryptoPrefix))
|
||
{
|
||
isCrypted = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
|
||
return isCrypted;
|
||
}
|
||
|
||
var isCrypted = false;
|
||
if (this.editorId == AscCommon.c_oEditorId.Spreadsheet)
|
||
{
|
||
for (var i = _array.length - 1; i >= 0; i--)
|
||
{
|
||
if (_array[i].length > _checkPrefixLen)
|
||
{
|
||
_prefix = _array[i].substr(0, _checkPrefixLen);
|
||
if (-1 != _prefix.indexOf(this.cryptoPrefix))
|
||
{
|
||
isCrypted = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
for (var i = _array.length - 1; i >= 0; i--)
|
||
{
|
||
if (_array[i].m_pData.length > _checkPrefixLen)
|
||
{
|
||
_prefix = _array[i].m_pData.substr(0, _checkPrefixLen);
|
||
if (-1 != _prefix.indexOf(this.cryptoPrefix))
|
||
{
|
||
isCrypted = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
return isCrypted;
|
||
};
|
||
|
||
this.handleChanges = function(_array, _sender, _callback)
|
||
{
|
||
if (0 == _array.length || !this.isNeedCrypt())
|
||
{
|
||
if (this.isExistEncryptedChanges(_array))
|
||
{
|
||
this.onDecodeError();
|
||
return;
|
||
}
|
||
|
||
this.isChangesHandled = true;
|
||
_callback.call(_sender);
|
||
return;
|
||
}
|
||
|
||
this.handleChangesCallback = { changesBase : _array, changes : [], sender : _sender, callback : _callback };
|
||
|
||
this.checkEditorId();
|
||
|
||
if (this.editorId == AscCommon.c_oEditorId.Spreadsheet)
|
||
{
|
||
for (var i = _array.length - 1; i >= 0; i--)
|
||
{
|
||
this.handleChangesCallback.changes[i] = _array[i];
|
||
}
|
||
}
|
||
else
|
||
{
|
||
for (var i = _array.length - 1; i >= 0; i--)
|
||
{
|
||
this.handleChangesCallback.changes[i] = _array[i].m_pData;
|
||
}
|
||
}
|
||
|
||
window.g_asc_plugins.sendToEncryption({ "type" : "decryptData", "data" : this.handleChangesCallback.changes });
|
||
};
|
||
|
||
this.asc_setAdvancedOptions = function(api, idOption, option)
|
||
{
|
||
if (window.isNativeOpenPassword)
|
||
{
|
||
window["AscDesktopEditor"]["NativeViewerOpen"](option.asc_getPassword());
|
||
return;
|
||
}
|
||
if (window.isCloudCryptoDownloadAs)
|
||
return false;
|
||
|
||
if (!this.isNeedCrypt())
|
||
return false;
|
||
|
||
window.checkPasswordFromPlugin = true;
|
||
if (window["Asc"].c_oAscAdvancedOptionsID.TXT === idOption)
|
||
{
|
||
var _param = ("<m_nCsvTxtEncoding>" + option.asc_getCodePage() + "</m_nCsvTxtEncoding>");
|
||
window["AscDesktopEditor"]["SetAdvancedOptions"](_param);
|
||
}
|
||
else if (window["Asc"].c_oAscAdvancedOptionsID.CSV === idOption)
|
||
{
|
||
var delimiter = option.asc_getDelimiter();
|
||
var delimiterChar = option.asc_getDelimiterChar();
|
||
var _param = "";
|
||
_param += ("<m_nCsvTxtEncoding>" + option.asc_getCodePage() + "</m_nCsvTxtEncoding>");
|
||
if (null != delimiter) {
|
||
_param += ("<m_nCsvDelimiter>" + delimiter + "</m_nCsvDelimiter>");
|
||
}
|
||
if (null != delimiterChar) {
|
||
_param += ("<m_nCsvDelimiterChar>" + delimiterChar + "</m_nCsvDelimiterChar>");
|
||
}
|
||
|
||
window["AscDesktopEditor"]["SetAdvancedOptions"](_param);
|
||
}
|
||
else if (window["Asc"].c_oAscAdvancedOptionsID.DRM === idOption)
|
||
{
|
||
var _param = ("<m_sPassword>" + AscCommon.CopyPasteCorrectString(option.asc_getPassword()) + "</m_sPassword>");
|
||
api.currentPassword = option.asc_getPassword();
|
||
window["AscDesktopEditor"]["SetAdvancedOptions"](_param);
|
||
}
|
||
return true;
|
||
};
|
||
}
|
||
|
||
AscCommon.EncryptionWorker = new CEncryptionData();
|
||
|
||
/** @constructor */
|
||
function CTranslateManager()
|
||
{
|
||
this.mapTranslate = {};
|
||
}
|
||
|
||
CTranslateManager.prototype.init = function(map)
|
||
{
|
||
this.mapTranslate = map || {};
|
||
};
|
||
CTranslateManager.prototype.getValue = function(key)
|
||
{
|
||
return this.mapTranslate.hasOwnProperty(key) ? this.mapTranslate[key] : key;
|
||
};
|
||
//------------------------------------------------------------fill polyfill--------------------------------------------
|
||
if (!Array.prototype.fill) {
|
||
Object.defineProperty(Array.prototype, 'fill', {
|
||
value: function(value) {
|
||
|
||
// Steps 1-2.
|
||
if (this == null) {
|
||
throw new TypeError('this is null or not defined');
|
||
}
|
||
|
||
var O = Object(this);
|
||
|
||
// Steps 3-5.
|
||
var len = O.length >>> 0;
|
||
|
||
// Steps 6-7.
|
||
var start = arguments[1];
|
||
var relativeStart = start >> 0;
|
||
|
||
// Step 8.
|
||
var k = relativeStart < 0 ?
|
||
Math.max(len + relativeStart, 0) :
|
||
Math.min(relativeStart, len);
|
||
|
||
// Steps 9-10.
|
||
var end = arguments[2];
|
||
var relativeEnd = end === undefined ?
|
||
len : end >> 0;
|
||
|
||
// Step 11.
|
||
var final = relativeEnd < 0 ?
|
||
Math.max(len + relativeEnd, 0) :
|
||
Math.min(relativeEnd, len);
|
||
|
||
// Step 12.
|
||
while (k < final) {
|
||
O[k] = value;
|
||
k++;
|
||
}
|
||
|
||
// Step 13.
|
||
return O;
|
||
}
|
||
});
|
||
}
|
||
if (typeof Int8Array !== 'undefined' && !Int8Array.prototype.fill) {
|
||
Int8Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Uint8Array !== 'undefined' && !Uint8Array.prototype.fill) {
|
||
Uint8Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Uint8ClampedArray !== 'undefined' && !Uint8ClampedArray.prototype.fill) {
|
||
Uint8ClampedArray.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Int16Array !== 'undefined' && !Int16Array.prototype.fill) {
|
||
Int16Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Uint16Array !== 'undefined' && !Uint16Array.prototype.fill) {
|
||
Uint16Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Int32Array !== 'undefined' && !Int32Array.prototype.fill) {
|
||
Int32Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Uint32Array !== 'undefined' && !Uint32Array.prototype.fill) {
|
||
Uint32Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Float32Array !== 'undefined' && !Float32Array.prototype.fill) {
|
||
Float32Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
if (typeof Float64Array !== 'undefined' && !Float64Array.prototype.fill) {
|
||
Float64Array.prototype.fill = Array.prototype.fill;
|
||
}
|
||
|
||
//------------------------------------------------------------export---------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window["AscCommon"].getSockJs = getSockJs;
|
||
window["AscCommon"].getJSZipUtils = getJSZipUtils;
|
||
window["AscCommon"].getJSZip = getJSZip;
|
||
window["AscCommon"].getBaseUrl = getBaseUrl;
|
||
window["AscCommon"].getEncodingParams = getEncodingParams;
|
||
window["AscCommon"].getEncodingByBOM = getEncodingByBOM;
|
||
window["AscCommon"].saveWithParts = saveWithParts;
|
||
window["AscCommon"].loadFileContent = loadFileContent;
|
||
window["AscCommon"].getImageFromChanges = getImageFromChanges;
|
||
window["AscCommon"].openFileCommand = openFileCommand;
|
||
window["AscCommon"].sendCommand = sendCommand;
|
||
window["AscCommon"].sendSaveFile = sendSaveFile;
|
||
window["AscCommon"].mapAscServerErrorToAscError = mapAscServerErrorToAscError;
|
||
window["AscCommon"].joinUrls = joinUrls;
|
||
window["AscCommon"].getFullImageSrc2 = getFullImageSrc2;
|
||
window["AscCommon"].fSortAscending = fSortAscending;
|
||
window["AscCommon"].fSortDescending = fSortDescending;
|
||
window["AscCommon"].isLeadingSurrogateChar = isLeadingSurrogateChar;
|
||
window["AscCommon"].decodeSurrogateChar = decodeSurrogateChar;
|
||
window["AscCommon"].encodeSurrogateChar = encodeSurrogateChar;
|
||
window["AscCommon"].convertUnicodeToUTF16 = convertUnicodeToUTF16;
|
||
window["AscCommon"].convertUTF16toUnicode = convertUTF16toUnicode;
|
||
window["AscCommon"].build_local_rx = build_local_rx;
|
||
window["AscCommon"].GetFileName = GetFileName;
|
||
window["AscCommon"].GetFileExtension = GetFileExtension;
|
||
window["AscCommon"].changeFileExtention = changeFileExtention;
|
||
window["AscCommon"].getExtentionByFormat = getExtentionByFormat;
|
||
window["AscCommon"].InitOnMessage = InitOnMessage;
|
||
window["AscCommon"].ShowImageFileDialog = ShowImageFileDialog;
|
||
window["AscCommon"].InitDragAndDrop = InitDragAndDrop;
|
||
window["AscCommon"].UploadImageFiles = UploadImageFiles;
|
||
window["AscCommon"].UploadImageUrls = UploadImageUrls;
|
||
window["AscCommon"].CanDropFiles = CanDropFiles;
|
||
window["AscCommon"].getUrlType = getUrlType;
|
||
window["AscCommon"].prepareUrl = prepareUrl;
|
||
window["AscCommon"].getUserColorById = getUserColorById;
|
||
window["AscCommon"].isNullOrEmptyString = isNullOrEmptyString;
|
||
window["AscCommon"].unleakString = unleakString;
|
||
window["AscCommon"].initStreamFromResponse = initStreamFromResponse;
|
||
|
||
window["AscCommon"].DocumentUrls = DocumentUrls;
|
||
window["AscCommon"].CLock = CLock;
|
||
window["AscCommon"].CContentChanges = CContentChanges;
|
||
window["AscCommon"].CContentChangesElement = CContentChangesElement;
|
||
|
||
window["AscCommon"].CorrectMMToTwips = CorrectMMToTwips;
|
||
window["AscCommon"].TwipsToMM = TwipsToMM;
|
||
window["AscCommon"].MMToTwips = MMToTwips;
|
||
window["AscCommon"].RomanToInt = RomanToInt;
|
||
window["AscCommon"].LatinNumberingToInt = LatinNumberingToInt;
|
||
|
||
window["AscCommon"].loadSdk = loadSdk;
|
||
window["AscCommon"].getAltGr = getAltGr;
|
||
window["AscCommon"].getColorThemeByIndex = getColorThemeByIndex;
|
||
window["AscCommon"].isEastAsianScript = isEastAsianScript;
|
||
|
||
window["AscCommon"].JSZipWrapper = JSZipWrapper;
|
||
window["AscCommon"].g_oDocumentUrls = g_oDocumentUrls;
|
||
window["AscCommon"].FormulaTablePartInfo = FormulaTablePartInfo;
|
||
window["AscCommon"].cBoolLocal = cBoolLocal;
|
||
window["AscCommon"].cErrorOrigin = cErrorOrigin;
|
||
window["AscCommon"].cErrorLocal = cErrorLocal;
|
||
window["AscCommon"].FormulaSeparators = FormulaSeparators;
|
||
window["AscCommon"].rx_space_g = rx_space_g;
|
||
window["AscCommon"].rx_space = rx_space;
|
||
window["AscCommon"].rx_defName = rx_defName;
|
||
|
||
window["AscCommon"].kCurFormatPainterWord = kCurFormatPainterWord;
|
||
window["AscCommon"].parserHelp = parserHelp;
|
||
window["AscCommon"].g_oIdCounter = g_oIdCounter;
|
||
|
||
window["AscCommon"].g_oHtmlCursor = g_oHtmlCursor;
|
||
|
||
window["AscCommon"].CSignatureDrawer = window["AscCommon"]["CSignatureDrawer"] = CSignatureDrawer;
|
||
var prot = CSignatureDrawer.prototype;
|
||
prot["getImages"] = prot.getImages;
|
||
prot["setText"] = prot.setText;
|
||
prot["selectImage"] = prot.selectImage;
|
||
prot["isValid"] = prot.isValid;
|
||
prot["destroy"] = prot.destroy;
|
||
|
||
window["AscCommon"].translateManager = new CTranslateManager();
|
||
})(window);
|
||
|
||
window["asc_initAdvancedOptions"] = function(_code, _file_hash, _docInfo)
|
||
{
|
||
if (window.isNativeOpenPassword)
|
||
{
|
||
return window["NativeFileOpen_error"](window.isNativeOpenPassword, _file_hash, _docInfo);
|
||
}
|
||
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
|
||
if (_code == 90 || _code == 91)
|
||
{
|
||
if (window["AscDesktopEditor"] && (0 !== window["AscDesktopEditor"]["CryptoMode"]) && !_editor.isLoadFullApi)
|
||
{
|
||
// ждем инициализации
|
||
_editor.asc_initAdvancedOptions_params = [];
|
||
_editor.asc_initAdvancedOptions_params.push(_code);
|
||
_editor.asc_initAdvancedOptions_params.push(_file_hash);
|
||
_editor.asc_initAdvancedOptions_params.push(_docInfo);
|
||
return;
|
||
}
|
||
|
||
if (AscCommon.EncryptionWorker.isNeedCrypt() && !window.checkPasswordFromPlugin)
|
||
{
|
||
window.checkPasswordFromPlugin = true;
|
||
window.g_asc_plugins.sendToEncryption({ "type": "getPasswordByFile", "hash": _file_hash, "docinfo": _docInfo });
|
||
return;
|
||
}
|
||
}
|
||
|
||
window.checkPasswordFromPlugin = false;
|
||
_editor._onNeedParams(undefined, (_code == 90 || _code == 91) ? true : undefined);
|
||
};
|
||
window.openFileCryptCallback = function(_binary)
|
||
{
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
|
||
if (!_editor.isLoadFullApi)
|
||
{
|
||
_editor.openFileCryptBinary = _binary;
|
||
return;
|
||
}
|
||
|
||
if (_binary == null)
|
||
{
|
||
_editor.sendEvent("asc_onError", c_oAscError.ID.ConvertationOpenError, c_oAscError.Level.Critical);
|
||
return;
|
||
}
|
||
|
||
if ("DOCY" == AscCommon.c_oSerFormat.Signature)
|
||
{
|
||
var isEditor = true;
|
||
if (_binary.length > 4)
|
||
{
|
||
var _signature = (String.fromCharCode(_binary[0]) + String.fromCharCode(_binary[1]) + String.fromCharCode(_binary[2]) + String.fromCharCode(_binary[3]));
|
||
if (_signature != AscCommon.c_oSerFormat.Signature)
|
||
isEditor = false;
|
||
}
|
||
|
||
if (!isEditor)
|
||
_editor.OpenDocument("", _binary);
|
||
else
|
||
_editor.OpenDocument2("", _binary);
|
||
}
|
||
else if ("PPTY" == AscCommon.c_oSerFormat.Signature)
|
||
{
|
||
_editor.OpenDocument2("", _binary);
|
||
}
|
||
else
|
||
{
|
||
_editor.openDocument(_binary);
|
||
}
|
||
|
||
_editor.sendEvent("asc_onDocumentPassword", ("" != _editor.currentPassword) ? true : false);
|
||
};
|
||
|
||
window["asc_IsNeedBuildCryptedFile"] = function()
|
||
{
|
||
if (!window["AscDesktopEditor"])
|
||
return false;
|
||
|
||
var _api = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
var _returnValue = false;
|
||
|
||
var _users = null;
|
||
if (_api.CoAuthoringApi && _api.CoAuthoringApi._CoAuthoringApi && _api.CoAuthoringApi._CoAuthoringApi._participants)
|
||
_users = _api.CoAuthoringApi._CoAuthoringApi._participants;
|
||
|
||
var _usersCount = 0;
|
||
for (var _user in _users)
|
||
_usersCount++;
|
||
|
||
var isOne = (1 >= _usersCount) ? true : false;
|
||
|
||
if (!isOne)
|
||
{
|
||
//console.log("asc_IsNeedBuildCryptedFile: no one");
|
||
_returnValue = false;
|
||
}
|
||
else if (null != AscCommon.History.SavedIndex && -1 != AscCommon.History.SavedIndex)
|
||
{
|
||
//console.log("asc_IsNeedBuildCryptedFile: one1");
|
||
_returnValue = true;
|
||
}
|
||
else
|
||
{
|
||
//console.log("asc_IsNeedBuildCryptedFile: one2");
|
||
if (_api.editorId == AscCommon.c_oEditorId.Spreadsheet)
|
||
{
|
||
if (AscCommon.EncryptionWorker.isExistDecryptedChanges)
|
||
_returnValue = true;
|
||
}
|
||
else
|
||
{
|
||
if (0 != AscCommon.CollaborativeEditing.m_aAllChanges.length)
|
||
_returnValue = true;
|
||
}
|
||
}
|
||
|
||
window["AscDesktopEditor"]["execCommand"]("encrypt:isneedbuild", "" + _returnValue);
|
||
return _returnValue;
|
||
};
|
||
|
||
window["UpdateSystemPlugins"] = function()
|
||
{
|
||
var _plugins = JSON.parse(window["AscDesktopEditor"]["GetInstallPlugins"]());
|
||
_plugins[0]["url"] = _plugins[0]["url"].replace(" ", "%20");
|
||
_plugins[1]["url"] = _plugins[1]["url"].replace(" ", "%20");
|
||
|
||
for (var k = 0; k < 2; k++)
|
||
{
|
||
var _pluginsCur = _plugins[k];
|
||
|
||
var _len = _pluginsCur["pluginsData"].length;
|
||
for (var i = 0; i < _len; i++)
|
||
{
|
||
_pluginsCur["pluginsData"][i]["baseUrl"] = _pluginsCur["url"] + _pluginsCur["pluginsData"][i]["guid"].substring(4) + "/";
|
||
|
||
if (!window["AscDesktopEditor"]["IsLocalFile"]())
|
||
{
|
||
_pluginsCur["pluginsData"][i]["baseUrl"] = "ascdesktop://plugin_content/" + _pluginsCur["pluginsData"][i]["baseUrl"];
|
||
}
|
||
}
|
||
}
|
||
|
||
var _array = [];
|
||
|
||
for (var k = 0; k < 2; k++)
|
||
{
|
||
var _pluginsCur = _plugins[k];
|
||
var _len = _pluginsCur["pluginsData"].length;
|
||
|
||
for (var i = 0; i < _len; i++)
|
||
{
|
||
var _plugin = _pluginsCur["pluginsData"][i];
|
||
for (var j = 0; j < _plugin["variations"].length; j++)
|
||
{
|
||
var _variation = _plugin["variations"][j];
|
||
if (_variation["initDataType"] == "desktop")
|
||
{
|
||
if (_variation["initData"] == "encryption")
|
||
{
|
||
var _mode = _variation["cryptoMode"];
|
||
if (!_mode)
|
||
_mode = "1";
|
||
AscCommon.EncryptionWorker.cryptoMode = parseInt(_mode);
|
||
|
||
_array.push(_plugin);
|
||
break;
|
||
}
|
||
|
||
_array.push(_plugin);
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
var _arraySystem = [];
|
||
for (var i = 0; i < _array.length; i++)
|
||
{
|
||
var plugin = new Asc.CPlugin();
|
||
plugin["deserialize"](_array[i]);
|
||
|
||
_arraySystem.push(plugin);
|
||
}
|
||
|
||
window.g_asc_plugins.registerSystem("", _arraySystem);
|
||
window.g_asc_plugins.runAllSystem();
|
||
};
|
||
|
||
window["buildCryptoFile_Start"] = function()
|
||
{
|
||
var _editor = window.Asc.editor ? window.Asc.editor : window.editor;
|
||
_editor.sync_StartAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.Save);
|
||
|
||
window.g_asc_plugins.sendToEncryption({ "type" : "generatePassword" });
|
||
};
|
||
|
||
window["buildCryptoFile_End"] = function(url, error, hash, password)
|
||
{
|
||
var _editor = window.Asc.editor ? window.Asc.editor : window.editor;
|
||
_editor.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.Save);
|
||
|
||
if (0 != error)
|
||
{
|
||
_editor.sendEvent("asc_onError", Asc.c_oAscError.ID.ConvertationSaveError, Asc.c_oAscError.Level.NoCritical);
|
||
return;
|
||
}
|
||
|
||
// send password
|
||
_editor._callbackPluginEndAction = function()
|
||
{
|
||
this._callbackPluginEndAction = null;
|
||
|
||
_editor.sync_StartAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.Save);
|
||
|
||
// file upload
|
||
var xhr = new XMLHttpRequest();
|
||
xhr.open('GET', "ascdesktop://fonts/" + url, true);
|
||
xhr.responseType = 'arraybuffer';
|
||
|
||
if (xhr.overrideMimeType)
|
||
xhr.overrideMimeType('text/plain; charset=x-user-defined');
|
||
else
|
||
xhr.setRequestHeader('Accept-Charset', 'x-user-defined');
|
||
|
||
xhr.onload = function()
|
||
{
|
||
if (this.status != 200)
|
||
{
|
||
// error
|
||
return;
|
||
}
|
||
|
||
var fileData = new Uint8Array(this.response);
|
||
|
||
var ext = ".docx";
|
||
switch (_editor.editorId)
|
||
{
|
||
case AscCommon.c_oEditorId.Presentation:
|
||
ext = ".pptx";
|
||
break;
|
||
case AscCommon.c_oEditorId.Spreadsheet:
|
||
ext = ".xlsx";
|
||
break;
|
||
default:
|
||
break;
|
||
}
|
||
|
||
AscCommon.sendSaveFile(_editor.documentId, _editor.documentUserId, "output" + ext, _editor.asc_getSessionToken(), fileData, function(err) {
|
||
|
||
_editor.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.Save);
|
||
_editor.sendEvent("asc_onError", Asc.c_oAscError.ID.ConvertationOpenError, Asc.c_oAscError.Level.Critical);
|
||
|
||
window["AscDesktopEditor"]["buildCryptedEnd"](false);
|
||
|
||
}, function(httpRequest) {
|
||
//console.log(httpRequest.responseText);
|
||
try
|
||
{
|
||
var data = {
|
||
"accounts": httpRequest.responseText ? JSON.parse(httpRequest.responseText) : undefined,
|
||
"hash": hash,
|
||
"password" : password,
|
||
"type": "share"
|
||
};
|
||
|
||
window["AscDesktopEditor"]["sendSystemMessage"](data);
|
||
window["AscDesktopEditor"]["CallInAllWindows"]("function(){ if (window.DesktopUpdateFile) { window.DesktopUpdateFile(undefined); } }");
|
||
|
||
_editor.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.Save);
|
||
|
||
setTimeout(function() {
|
||
|
||
window["AscDesktopEditor"]["buildCryptedEnd"](true);
|
||
|
||
}, 1000);
|
||
}
|
||
catch (err)
|
||
{
|
||
}
|
||
});
|
||
};
|
||
|
||
xhr.send(null);
|
||
};
|
||
window.g_asc_plugins.sendToEncryption({"type": "setPasswordByFile", "hash": hash, "password": password});
|
||
};
|
||
|
||
window["NativeFileOpen_error"] = function(error, _file_hash, _docInfo)
|
||
{
|
||
var _api = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
|
||
if ("password" == error)
|
||
{
|
||
window.isNativeOpenPassword = error;
|
||
|
||
if (window["AscDesktopEditor"] && (0 !== window["AscDesktopEditor"]["CryptoMode"]) && !_api.isLoadFullApi)
|
||
{
|
||
// ждем инициализации
|
||
_api.asc_initAdvancedOptions_params = [];
|
||
_api.asc_initAdvancedOptions_params.push(90);
|
||
_api.asc_initAdvancedOptions_params.push(_file_hash);
|
||
_api.asc_initAdvancedOptions_params.push(_docInfo);
|
||
return;
|
||
}
|
||
|
||
if (AscCommon.EncryptionWorker.isNeedCrypt() && !window.checkPasswordFromPlugin)
|
||
{
|
||
window.checkPasswordFromPlugin = true;
|
||
window.g_asc_plugins.sendToEncryption({ "type": "getPasswordByFile", "hash": _file_hash, "docinfo": _docInfo });
|
||
return;
|
||
}
|
||
|
||
window.checkPasswordFromPlugin = false;
|
||
_api._onNeedParams(undefined, true);
|
||
}
|
||
else if ("error" == error)
|
||
{
|
||
_api.sendEvent("asc_onError", c_oAscError.ID.ConvertationOpenError, c_oAscError.Level.Critical);
|
||
return;
|
||
}
|
||
};
|
||
|
||
window["CryptoDownloadAsEnd"] = function()
|
||
{
|
||
var _editor = window.Asc.editor ? window.Asc.editor : window.editor;
|
||
_editor.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.DownloadAs);
|
||
|
||
window.isCloudCryptoDownloadAs = undefined;
|
||
};
|
||
|
||
window["AscDesktopEditor_Save"] = function()
|
||
{
|
||
var _editor = window.Asc.editor ? window.Asc.editor : window.editor;
|
||
if (!_editor.asc_Save(false))
|
||
{
|
||
// сейва не будет. сами посылаем callback
|
||
window["AscDesktopEditor"]["OnSave"]();
|
||
}
|
||
};
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
/**
|
||
* User: Ilja.Kirillov
|
||
* Date: 27.10.2016
|
||
* Time: 12:11
|
||
*/
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function(window, undefined)
|
||
{
|
||
function GetHistoryPointStringDescription(nDescription)
|
||
{
|
||
var sString = "Unknown";
|
||
switch (nDescription)
|
||
{
|
||
case AscDFH.historydescription_Cut :
|
||
sString = "Cut";
|
||
break;
|
||
case AscDFH.historydescription_PasteButtonIE :
|
||
sString = "PasteButtonIE";
|
||
break;
|
||
case AscDFH.historydescription_PasteButtonNotIE :
|
||
sString = "PasteButtonNotIE";
|
||
break;
|
||
case AscDFH.historydescription_ChartDrawingObjects :
|
||
sString = "ChartDrawingObjects";
|
||
break;
|
||
case AscDFH.historydescription_CommonControllerCheckChartText :
|
||
sString = "CommonControllerCheckChartText";
|
||
break;
|
||
case AscDFH.historydescription_CommonControllerUnGroup :
|
||
sString = "CommonControllerUnGroup";
|
||
break;
|
||
case AscDFH.historydescription_CommonControllerCheckSelected :
|
||
sString = "CommonControllerCheckSelected";
|
||
break;
|
||
case AscDFH.historydescription_CommonControllerSetGraphicObject :
|
||
sString = "CommonControllerSetGraphicObject";
|
||
break;
|
||
case AscDFH.historydescription_CommonStatesAddNewShape :
|
||
sString = "CommonStatesAddNewShape";
|
||
break;
|
||
case AscDFH.historydescription_CommonStatesRotate :
|
||
sString = "CommonStatesRotate";
|
||
break;
|
||
case AscDFH.historydescription_PasteNative :
|
||
sString = "PasteNative";
|
||
break;
|
||
case AscDFH.historydescription_Document_GroupUnGroup :
|
||
sString = "Document_GroupUnGroup";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetDefaultLanguage :
|
||
sString = "Document_SetDefaultLanguage";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeColorScheme :
|
||
sString = "Document_ChangeColorScheme";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddChart :
|
||
sString = "Document_AddChart";
|
||
break;
|
||
case AscDFH.historydescription_Document_EditChart :
|
||
sString = "Document_EditChart";
|
||
break;
|
||
case AscDFH.historydescription_Document_DragText :
|
||
sString = "Document_DragText";
|
||
break;
|
||
case AscDFH.historydescription_Document_DocumentContentExtendToPos :
|
||
sString = "Document_DocumentContentExtendToPos";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddHeader :
|
||
sString = "Document_AddHeader";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddFooter :
|
||
sString = "Document_AddFooter";
|
||
break;
|
||
case AscDFH.historydescription_Document_ParagraphExtendToPos :
|
||
sString = "Document_ParagraphExtendToPos";
|
||
break;
|
||
case AscDFH.historydescription_Document_ParagraphChangeFrame :
|
||
sString = "Document_ParagraphChangeFrame";
|
||
break;
|
||
case AscDFH.historydescription_Document_ReplaceAll :
|
||
sString = "Document_ReplaceAll";
|
||
break;
|
||
case AscDFH.historydescription_Document_ReplaceSingle :
|
||
sString = "Document_ReplaceSingle";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableAddNewRowByTab :
|
||
sString = "Document_TableAddNewRowByTab";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddNewShape :
|
||
sString = "Document_AddNewShape";
|
||
break;
|
||
case AscDFH.historydescription_Document_EditWrapPolygon :
|
||
sString = "Document_EditWrapPolygon";
|
||
break;
|
||
case AscDFH.historydescription_Document_MoveInlineObject :
|
||
sString = "Document_MoveInlineObject";
|
||
break;
|
||
case AscDFH.historydescription_Document_CopyAndMoveInlineObject :
|
||
sString = "Document_CopyAndMoveInlineObject";
|
||
break;
|
||
case AscDFH.historydescription_Document_RotateInlineDrawing :
|
||
sString = "Document_RotateInlineDrawing";
|
||
break;
|
||
case AscDFH.historydescription_Document_RotateFlowDrawingCtrl :
|
||
sString = "Document_RotateFlowDrawingCtrl";
|
||
break;
|
||
case AscDFH.historydescription_Document_RotateFlowDrawingNoCtrl :
|
||
sString = "Document_RotateFlowDrawingNoCtrl";
|
||
break;
|
||
case AscDFH.historydescription_Document_MoveInGroup :
|
||
sString = "Document_MoveInGroup";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeWrapContour :
|
||
sString = "Document_ChangeWrapContour";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeWrapContourAddPoint :
|
||
sString = "Document_ChangeWrapContourAddPoint";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsBringToFront :
|
||
sString = "Document_GrObjectsBringToFront";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsBringForwardGroup :
|
||
sString = "Document_GrObjectsBringForwardGroup";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsBringForward :
|
||
sString = "Document_GrObjectsBringForward";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsSendToBackGroup :
|
||
sString = "Document_GrObjectsSendToBackGroup";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsSendToBack :
|
||
sString = "Document_GrObjectsSendToBack";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsBringBackwardGroup :
|
||
sString = "Document_GrObjectsBringBackwardGroup";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsBringBackward :
|
||
sString = "Document_GrObjectsBringBackward";
|
||
break;
|
||
case AscDFH.historydescription_Document_GrObjectsChangeWrapPolygon :
|
||
sString = "Document_GrObjectsChangeWrapPolygon";
|
||
break;
|
||
case AscDFH.historydescription_Document_MathAutoCorrect :
|
||
sString = "Document_MathAutoCorrect";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetFramePrWithFontFamily :
|
||
sString = "Document_SetFramePrWithFontFamily";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetFramePr :
|
||
sString = "Document_SetFramePr";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetFramePrWithFontFamilyLong :
|
||
sString = "Document_SetFramePrWithFontFamilyLong";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextFontName :
|
||
sString = "Document_SetTextFontName";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextFontSize :
|
||
sString = "Document_SetTextFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextBold :
|
||
sString = "Document_SetTextBold";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextItalic :
|
||
sString = "Document_SetTextItalic";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextUnderline :
|
||
sString = "Document_SetTextUnderline";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextStrikeout :
|
||
sString = "Document_SetTextStrikeout";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextDStrikeout :
|
||
sString = "Document_SetTextDStrikeout";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextSpacing :
|
||
sString = "Document_SetTextSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextCaps :
|
||
sString = "Document_SetTextCaps";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextSmallCaps :
|
||
sString = "Document_SetTextSmallCaps";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextPosition :
|
||
sString = "Document_SetTextPosition";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextLang :
|
||
sString = "Document_SetTextLang";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphLineSpacing :
|
||
sString = "Document_SetParagraphLineSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphLineSpacingBeforeAfter :
|
||
sString = "Document_SetParagraphLineSpacingBeforeAfter";
|
||
break;
|
||
case AscDFH.historydescription_Document_IncFontSize :
|
||
sString = "Document_IncFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Document_DecFontSize :
|
||
sString = "Document_DecFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphBorders :
|
||
sString = "Document_SetParagraphBorders";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphPr :
|
||
sString = "Document_SetParagraphPr";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphAlign :
|
||
sString = "Document_SetParagraphAlign";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextVertAlign :
|
||
sString = "Document_SetTextVertAlign";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphNumbering :
|
||
sString = "Document_SetParagraphNumbering";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphStyle :
|
||
sString = "Document_SetParagraphStyle";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphPageBreakBefore :
|
||
sString = "Document_SetParagraphPageBreakBefore";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphWidowControl :
|
||
sString = "Document_SetParagraphWidowControl";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphKeepLines :
|
||
sString = "Document_SetParagraphKeepLines";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphKeepNext :
|
||
sString = "Document_SetParagraphKeepNext";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphContextualSpacing :
|
||
sString = "Document_SetParagraphContextualSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextHighlightNone :
|
||
sString = "Document_SetTextHighlightNone";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextHighlightColor :
|
||
sString = "Document_SetTextHighlightColor";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextColor :
|
||
sString = "Document_SetTextColor";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphShd :
|
||
sString = "Document_SetParagraphShd";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphIndent :
|
||
sString = "Document_SetParagraphIndent";
|
||
break;
|
||
case AscDFH.historydescription_Document_IncParagraphIndent :
|
||
sString = "Document_IncParagraphIndent";
|
||
break;
|
||
case AscDFH.historydescription_Document_DecParagraphIndent :
|
||
sString = "Document_DecParagraphIndent";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphIndentRight :
|
||
sString = "Document_SetParagraphIndentRight";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphIndentFirstLine :
|
||
sString = "Document_SetParagraphIndentFirstLine";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetPageOrientation :
|
||
sString = "Document_SetPageOrientation";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetPageSize :
|
||
sString = "Document_SetPageSize";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddPageBreak :
|
||
sString = "Document_AddPageBreak";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddPageNumToHdrFtr :
|
||
sString = "Document_AddPageNumToHdrFtr";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddPageNumToCurrentPos :
|
||
sString = "Document_AddPageNumToCurrentPos";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetHdrFtrDistance :
|
||
sString = "Document_SetHdrFtrDistance";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetHdrFtrFirstPage :
|
||
sString = "Document_SetHdrFtrFirstPage";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetHdrFtrEvenAndOdd :
|
||
sString = "Document_SetHdrFtrEvenAndOdd";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetHdrFtrLink :
|
||
sString = "Document_SetHdrFtrLink";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddTable :
|
||
sString = "Document_AddTable";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableAddRowAbove :
|
||
sString = "Document_TableAddRowAbove";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableAddRowBelow :
|
||
sString = "Document_TableAddRowBelow";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableAddColumnLeft :
|
||
sString = "Document_TableAddColumnLeft";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableAddColumnRight :
|
||
sString = "Document_TableAddColumnRight";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableRemoveRow :
|
||
sString = "Document_TableRemoveRow";
|
||
break;
|
||
case AscDFH.historydescription_Document_TableRemoveColumn :
|
||
sString = "Document_TableRemoveColumn";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveTable :
|
||
sString = "Document_RemoveTable";
|
||
break;
|
||
case AscDFH.historydescription_Document_MergeTableCells :
|
||
sString = "Document_MergeTableCells";
|
||
break;
|
||
case AscDFH.historydescription_Document_SplitTableCells :
|
||
sString = "Document_SplitTableCells";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyTablePr :
|
||
sString = "Document_ApplyTablePr";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddImageUrl :
|
||
sString = "Document_AddImageUrl";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddImageUrlLong :
|
||
sString = "Document_AddImageUrlLong";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddImageToPage :
|
||
sString = "Document_AddImageToPage";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyImagePrWithUrl :
|
||
sString = "Document_ApplyImagePrWithUrl";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyImagePrWithUrlLong :
|
||
sString = "Document_ApplyImagePrWithUrlLong";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyImagePrWithFillUrl :
|
||
sString = "Document_ApplyImagePrWithFillUrl";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyImagePrWithFillUrlLong :
|
||
sString = "Document_ApplyImagePrWithFillUrlLong";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyImagePr :
|
||
sString = "Document_ApplyImagePr";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddHyperlink :
|
||
sString = "Document_AddHyperlink";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeHyperlink :
|
||
sString = "Document_ChangeHyperlink";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveHyperlink :
|
||
sString = "Document_RemoveHyperlink";
|
||
break;
|
||
case AscDFH.historydescription_Document_ReplaceMisspelledWord :
|
||
sString = "Document_ReplaceMisspelledWord";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddComment :
|
||
sString = "Document_AddComment";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveComment :
|
||
sString = "Document_RemoveComment";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeComment :
|
||
sString = "Document_ChangeComment";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextFontNameLong :
|
||
sString = "Document_SetTextFontNameLong";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddImage :
|
||
sString = "Document_AddImage";
|
||
break;
|
||
case AscDFH.historydescription_Document_ClearFormatting :
|
||
sString = "Document_ClearFormatting";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddSectionBreak :
|
||
sString = "Document_AddSectionBreak";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddMath :
|
||
sString = "Document_AddMath";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphTabs :
|
||
sString = "Document_SetParagraphTabs";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphIndentFromRulers :
|
||
sString = "Document_SetParagraphIndentFromRulers";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetDocumentMargin_Hor :
|
||
sString = "Document_SetDocumentMargin_Hor";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTableMarkup_Hor :
|
||
sString = "Document_SetTableMarkup_Hor";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetDocumentMargin_Ver :
|
||
sString = "Document_SetDocumentMargin_Ver";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetHdrFtrBounds :
|
||
sString = "Document_SetHdrFtrBounds";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTableMarkup_Ver :
|
||
sString = "Document_SetTableMarkup_Ver";
|
||
break;
|
||
case AscDFH.historydescription_Document_DocumentExtendToPos :
|
||
sString = "Document_DocumentExtendToPos";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddDropCap :
|
||
sString = "Document_AddDropCap";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveDropCap :
|
||
sString = "Document_RemoveDropCap";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextHighlight :
|
||
sString = "Document_SetTextHighlight";
|
||
break;
|
||
case AscDFH.historydescription_Document_BackSpaceButton :
|
||
sString = "Document_BackSpaceButton";
|
||
break;
|
||
case AscDFH.historydescription_Document_MoveParagraphByTab :
|
||
sString = "Document_MoveParagraphByTab";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddTab :
|
||
sString = "Document_AddTab";
|
||
break;
|
||
case AscDFH.historydescription_Document_EnterButton :
|
||
sString = "Document_EnterButton";
|
||
break;
|
||
case AscDFH.historydescription_Document_SpaceButton :
|
||
sString = "Document_SpaceButton";
|
||
break;
|
||
case AscDFH.historydescription_Document_ShiftInsert :
|
||
sString = "Document_ShiftInsert";
|
||
break;
|
||
case AscDFH.historydescription_Document_ShiftInsertSafari :
|
||
sString = "Document_ShiftInsertSafari";
|
||
break;
|
||
case AscDFH.historydescription_Document_DeleteButton :
|
||
sString = "Document_DeleteButton";
|
||
break;
|
||
case AscDFH.historydescription_Document_ShiftDeleteButton :
|
||
sString = "Document_ShiftDeleteButton";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetStyleHeading1 :
|
||
sString = "Document_SetStyleHeading1";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetStyleHeading2 :
|
||
sString = "Document_SetStyleHeading2";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetStyleHeading3 :
|
||
sString = "Document_SetStyleHeading3";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextStrikeoutHotKey :
|
||
sString = "Document_SetTextStrikeoutHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextBoldHotKey :
|
||
sString = "Document_SetTextBoldHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphAlignHotKey :
|
||
sString = "Document_SetParagraphAlignHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddEuroLetter :
|
||
sString = "Document_AddEuroLetter";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextItalicHotKey :
|
||
sString = "Document_SetTextItalicHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphAlignHotKey2 :
|
||
sString = "Document_SetParagraphAlignHotKey2";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphNumberingHotKey :
|
||
sString = "Document_SetParagraphNumberingHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphAlignHotKey3 :
|
||
sString = "Document_SetParagraphAlignHotKey3";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddPageNumHotKey :
|
||
sString = "Document_AddPageNumHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetParagraphAlignHotKey4 :
|
||
sString = "Document_SetParagraphAlignHotKey4";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextUnderlineHotKey :
|
||
sString = "Document_SetTextUnderlineHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_FormatPasteHotKey :
|
||
sString = "Document_FormatPasteHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_PasteHotKey :
|
||
sString = "Document_PasteHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_PasteSafariHotKey :
|
||
sString = "Document_PasteSafariHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_CutHotKey :
|
||
sString = "Document_CutHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextVertAlignHotKey :
|
||
sString = "Document_SetTextVertAlignHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddMathHotKey :
|
||
sString = "Document_AddMathHotKey";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextVertAlignHotKey2 :
|
||
sString = "Document_SetTextVertAlignHotKey2";
|
||
break;
|
||
case AscDFH.historydescription_Document_MinusButton :
|
||
sString = "Document_MinusButton";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextVertAlignHotKey3 :
|
||
sString = "Document_SetTextVertAlignHotKey3";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddLetter :
|
||
sString = "Document_AddLetter";
|
||
break;
|
||
case AscDFH.historydescription_Document_MoveTableBorder :
|
||
sString = "Document_MoveTableBorder";
|
||
break;
|
||
case AscDFH.historydescription_Document_FormatPasteHotKey2 :
|
||
sString = "Document_FormatPasteHotKey2";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetTextHighlight2 :
|
||
sString = "Document_SetTextHighlight2";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddTextFromTextBox :
|
||
sString = "Document_AddTextFromTextBox";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddMailMergeField :
|
||
sString = "Document_AddMailMergeField";
|
||
break;
|
||
case AscDFH.historydescription_Document_MoveInlineTable :
|
||
sString = "Document_MoveInlineTable";
|
||
break;
|
||
case AscDFH.historydescription_Document_MoveFlowTable :
|
||
sString = "Document_MoveFlowTable";
|
||
break;
|
||
case AscDFH.historydescription_Document_RestoreFieldTemplateText :
|
||
sString = "Document_RestoreFieldTemplateText";
|
||
break;
|
||
|
||
case AscDFH.historydescription_Spreadsheet_SetCellFontName :
|
||
sString = "Spreadsheet_SetCellFontName";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellFontSize :
|
||
sString = "Spreadsheet_SetCellFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellBold :
|
||
sString = "Spreadsheet_SetCellBold";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellItalic :
|
||
sString = "Spreadsheet_SetCellItalic";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellUnderline :
|
||
sString = "Spreadsheet_SetCellUnderline";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellStrikeout :
|
||
sString = "Spreadsheet_SetCellStrikeout";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellSubscript :
|
||
sString = "Spreadsheet_SetCellSubscript";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellSuperscript :
|
||
sString = "Spreadsheet_SetCellSuperscript";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellAlign :
|
||
sString = "Spreadsheet_SetCellAlign";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellVertAlign :
|
||
sString = "Spreadsheet_SetCellVertAlign";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellTextColor :
|
||
sString = "Spreadsheet_SetCellTextColor";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellBackgroundColor :
|
||
sString = "Spreadsheet_SetCellBackgroundColor";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellIncreaseFontSize :
|
||
sString = "Spreadsheet_SetCellIncreaseFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellDecreaseFontSize :
|
||
sString = "Spreadsheet_SetCellDecreaseFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellHyperlinkAdd :
|
||
sString = "Spreadsheet_SetCellHyperlinkAdd";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellHyperlinkModify :
|
||
sString = "Spreadsheet_SetCellHyperlinkModify";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetCellHyperlinkRemove :
|
||
sString = "Spreadsheet_SetCellHyperlinkRemove";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_EditChart :
|
||
sString = "Spreadsheet_EditChart";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_Remove :
|
||
sString = "Spreadsheet_Remove";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_AddTab :
|
||
sString = "Spreadsheet_AddTab";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_AddNewParagraph :
|
||
sString = "Spreadsheet_AddNewParagraph";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_AddSpace :
|
||
sString = "Spreadsheet_AddSpace";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_AddItem :
|
||
sString = "Spreadsheet_AddItem";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_PutPrLineSpacing :
|
||
sString = "Spreadsheet_PutPrLineSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetParagraphSpacing :
|
||
sString = "Spreadsheet_SetParagraphSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_SetGraphicObjectsProps :
|
||
sString = "Spreadsheet_SetGraphicObjectsProps";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_ParaApply :
|
||
sString = "Spreadsheet_ParaApply";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_GraphicObjectLayer :
|
||
sString = "Spreadsheet_GraphicObjectLayer";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_ParagraphAdd :
|
||
sString = "Spreadsheet_ParagraphAdd";
|
||
break;
|
||
case AscDFH.historydescription_Spreadsheet_CreateGroup :
|
||
sString = "Spreadsheet_CreateGroup";
|
||
break;
|
||
case AscDFH.historydescription_CommonDrawings_ChangeAdj :
|
||
sString = "CommonDrawings_ChangeAdj";
|
||
break;
|
||
case AscDFH.historydescription_CommonDrawings_EndTrack :
|
||
sString = "CommonDrawings_EndTrack";
|
||
break;
|
||
case AscDFH.historydescription_CommonDrawings_CopyCtrl :
|
||
sString = "CommonDrawings_CopyCtrl";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ParaApply :
|
||
sString = "Presentation_ParaApply";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ParaFormatPaste :
|
||
sString = "Presentation_ParaFormatPaste";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddNewParagraph :
|
||
sString = "Presentation_AddNewParagraph";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_CreateGroup :
|
||
sString = "Presentation_CreateGroup";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_UnGroup :
|
||
sString = "Presentation_UnGroup";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddChart :
|
||
sString = "Presentation_AddChart";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_EditChart :
|
||
sString = "Presentation_EditChart";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ParagraphAdd :
|
||
sString = "Presentation_ParagraphAdd";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ParagraphClearFormatting :
|
||
sString = "Presentation_ParagraphClearFormatting";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetParagraphAlign :
|
||
sString = "Presentation_SetParagraphAlign";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetParagraphSpacing :
|
||
sString = "Presentation_SetParagraphSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetParagraphTabs :
|
||
sString = "Presentation_SetParagraphTabs";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetParagraphIndent :
|
||
sString = "Presentation_SetParagraphIndent";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetParagraphNumbering :
|
||
sString = "Presentation_SetParagraphNumbering";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ParagraphIncDecFontSize :
|
||
sString = "Presentation_ParagraphIncDecFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ParagraphIncDecIndent :
|
||
sString = "Presentation_ParagraphIncDecIndent";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetImageProps :
|
||
sString = "Presentation_SetImageProps";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetShapeProps :
|
||
sString = "Presentation_SetShapeProps";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChartApply :
|
||
sString = "Presentation_ChartApply";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeShapeType :
|
||
sString = "Presentation_ChangeShapeType";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SetVerticalAlign :
|
||
sString = "Presentation_SetVerticalAlign";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_HyperlinkAdd :
|
||
sString = "Presentation_HyperlinkAdd";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_HyperlinkModify :
|
||
sString = "Presentation_HyperlinkModify";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_HyperlinkRemove :
|
||
sString = "Presentation_HyperlinkRemove";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_DistHor :
|
||
sString = "Presentation_DistHor";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_DistVer :
|
||
sString = "Presentation_DistVer";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_BringToFront :
|
||
sString = "Presentation_BringToFront";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_BringForward :
|
||
sString = "Presentation_BringForward";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SendToBack :
|
||
sString = "Presentation_SendToBack";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_BringBackward :
|
||
sString = "Presentation_BringBackward";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ApplyTiming :
|
||
sString = "Presentation_ApplyTiming";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_MoveSlidesToEnd :
|
||
sString = "Presentation_MoveSlidesToEnd";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_MoveSlidesNextPos :
|
||
sString = "Presentation_MoveSlidesNextPos";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_MoveSlidesPrevPos :
|
||
sString = "Presentation_MoveSlidesPrevPos";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_MoveSlidesToStart :
|
||
sString = "Presentation_MoveSlidesToStart";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_MoveComments :
|
||
sString = "Presentation_MoveComments";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_TableBorder :
|
||
sString = "Presentation_TableBorder";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddFlowImage :
|
||
sString = "Presentation_AddFlowImage";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddFlowTable :
|
||
sString = "Presentation_AddFlowTable";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeBackground :
|
||
sString = "Presentation_ChangeBackground";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddNextSlide :
|
||
sString = "Presentation_AddNextSlide";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ShiftSlides :
|
||
sString = "Presentation_ShiftSlides";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_DeleteSlides :
|
||
sString = "Presentation_DeleteSlides";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeLayout :
|
||
sString = "Presentation_ChangeLayout";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeSlideSize :
|
||
sString = "Presentation_ChangeSlideSize";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeColorScheme :
|
||
sString = "Presentation_ChangeColorScheme";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddComment :
|
||
sString = "Presentation_AddComment";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeComment :
|
||
sString = "Presentation_ChangeComment";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrFontName :
|
||
sString = "Presentation_PutTextPrFontName";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrFontSize :
|
||
sString = "Presentation_PutTextPrFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrBold :
|
||
sString = "Presentation_PutTextPrBold";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrItalic :
|
||
sString = "Presentation_PutTextPrItalic";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrUnderline :
|
||
sString = "Presentation_PutTextPrUnderline";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrStrikeout :
|
||
sString = "Presentation_PutTextPrStrikeout";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrLineSpacing :
|
||
sString = "Presentation_PutTextPrLineSpacing";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrSpacingBeforeAfter :
|
||
sString = "Presentation_PutTextPrSpacingBeforeAfter";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrIncreaseFontSize :
|
||
sString = "Presentation_PutTextPrIncreaseFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrDecreaseFontSize :
|
||
sString = "Presentation_PutTextPrDecreaseFontSize";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrAlign :
|
||
sString = "Presentation_PutTextPrAlign";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrBaseline :
|
||
sString = "Presentation_PutTextPrBaseline";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextPrListType :
|
||
sString = "Presentation_PutTextPrListType";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextColor :
|
||
sString = "Presentation_PutTextColor";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutTextColor2 :
|
||
sString = "Presentation_PutTextColor2";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutPrIndent :
|
||
sString = "Presentation_PutPrIndent";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutPrIndentRight :
|
||
sString = "Presentation_PutPrIndentRight";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PutPrFirstLineIndent :
|
||
sString = "Presentation_PutPrFirstLineIndent";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddPageBreak :
|
||
sString = "Presentation_AddPageBreak";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddRowAbove :
|
||
sString = "Presentation_AddRowAbove";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddRowBelow :
|
||
sString = "Presentation_AddRowBelow";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddColLeft :
|
||
sString = "Presentation_AddColLeft";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_AddColRight :
|
||
sString = "Presentation_AddColRight";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_RemoveRow :
|
||
sString = "Presentation_RemoveRow";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_RemoveCol :
|
||
sString = "Presentation_RemoveCol";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_RemoveTable :
|
||
sString = "Presentation_RemoveTable";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_MergeCells :
|
||
sString = "Presentation_MergeCells";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_SplitCells :
|
||
sString = "Presentation_SplitCells";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_TblApply :
|
||
sString = "Presentation_TblApply";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_RemoveComment :
|
||
sString = "Presentation_RemoveComment";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_EndFontLoad :
|
||
sString = "Presentation_EndFontLoad";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_ChangeTheme :
|
||
sString = "Presentation_ChangeTheme";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_TableMoveFromRulers :
|
||
sString = "Presentation_TableMoveFromRulers";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_TableMoveFromRulersInline :
|
||
sString = "Presentation_TableMoveFromRulersInline";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PasteOnThumbnails :
|
||
sString = "Presentation_PasteOnThumbnails";
|
||
break;
|
||
case AscDFH.historydescription_Presentation_PasteOnThumbnailsSafari :
|
||
sString = "Presentation_PasteOnThumbnailsSafari";
|
||
break;
|
||
case AscDFH.historydescription_Document_ConvertOldEquation :
|
||
sString = "Document_ConvertOldEquation";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddNewStyle :
|
||
sString = "Document_AddNewStyle";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveStyle :
|
||
sString = "Document_RemoveStyle";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddTextArt :
|
||
sString = "Document_AddTextArt";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveAllCustomStyles :
|
||
sString = "Document_RemoveAllCustomStyles";
|
||
break;
|
||
case AscDFH.historydescription_Document_AcceptAllRevisionChanges :
|
||
sString = "Document_AcceptAllRevisionChanges";
|
||
break;
|
||
case AscDFH.historydescription_Document_RejectAllRevisionChanges :
|
||
sString = "Document_RejectAllRevisionChanges";
|
||
break;
|
||
case AscDFH.historydescription_Document_AcceptRevisionChange :
|
||
sString = "Document_AcceptRevisionChange";
|
||
break;
|
||
case AscDFH.historydescription_Document_RejectRevisionChange :
|
||
sString = "Document_RejectRevisionChange";
|
||
break;
|
||
case AscDFH.historydescription_Document_AcceptRevisionChangesBySelection :
|
||
sString = "Document_AcceptRevisionChangesBySelection";
|
||
break;
|
||
case AscDFH.historydescription_Document_RejectRevisionChangesBySelection :
|
||
sString = "Document_RejectRevisionChangesBySelection";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddLetterUnion :
|
||
sString = "Document_AddLetterUnion";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetColumnsFromRuler :
|
||
sString = "Document_SetColumnsFromRuler";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetColumnsProps :
|
||
sString = "Document_SetColumnsProps";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddColumnBreak :
|
||
sString = "Document_AddColumnBreak";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddTabToMath :
|
||
sString = "Document_AddTabToMath";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApplyPrToMath:
|
||
sString = "Document_ApplyPrToMath";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetMathProps:
|
||
sString = "Document_SetMathProps";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetSectionProps:
|
||
sString = "Document_SetColumnsProps";
|
||
break;
|
||
case AscDFH.historydescription_Document_ApiBuilder:
|
||
sString = "Document_ApiBuilder";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddOleObject:
|
||
sString = "Document_AddOleObject";
|
||
break;
|
||
case AscDFH.historydescription_Document_EditOleObject:
|
||
sString = "Document_EditOleObject";
|
||
break;
|
||
case AscDFH.historydescription_Document_CompositeInput:
|
||
sString = "Document_CompositeInput";
|
||
break;
|
||
case AscDFH.historydescription_Document_CompositeInputReplace:
|
||
sString = "Document_CompositeInputReplace";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddPageCount:
|
||
sString = "Document_AddPageCount";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddFootnote:
|
||
sString = "Document_AddFootnote";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetFootnotePr:
|
||
sString = "Document_SetFootnotePr";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveAllFootnotes:
|
||
sString = "Document_RemoveAllFootnotes";
|
||
break;
|
||
case AscDFH.historydescription_Document_InsertDocumentsByUrls:
|
||
sString = "Document_InsertDocumentsByUrls";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddBlockLevelContentControl:
|
||
sString = "Document_AddBlockLevelContentControl";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddInlineLevelContentControl:
|
||
sString = "Document_AddInlineLevelContentControl";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveContentControl:
|
||
sString = "Document_RemoveContentControl";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveContentControlWrapper:
|
||
sString = "Document_RemoveContentControlWrapper";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeContentControlProperties:
|
||
sString = "Document_ChangeContentControlProperties";
|
||
break;
|
||
case AscDFH.historydescription_DocumentMacros_Data:
|
||
sString = "DocumentMacros_Data";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddBookmark:
|
||
sString = "Document_AddBookmark";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddTableOfContents:
|
||
sString = "Document_AddTableOfContents";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeOutlineLevel:
|
||
sString = "Document_ChangeOutlineLevel";
|
||
break;
|
||
case AscDFH.historydescription_Document_AddElementToOutline:
|
||
sString = "Document_AddElementToOutline";
|
||
break;
|
||
case AscDFH.historydescription_Document_ResizeTable:
|
||
sString = "Document_ResizeTable";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveComplexField:
|
||
sString = "Document_RemoveComplexField";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetComplexFieldPr:
|
||
sString = "Document_SetComplexFieldPr";
|
||
break;
|
||
case AscDFH.historydescription_Document_UpdateTableOfContents:
|
||
sString = "Document_UpdateTableOfContents";
|
||
break;
|
||
case AscDFH.historydescription_Document_SectionStartPage:
|
||
sString = "Document_SectionStartPage";
|
||
break;
|
||
case AscDFH.historydescription_Document_DistributeTableCells:
|
||
sString = "Document_DistributeTableCells";
|
||
break;
|
||
case AscDFH.historydescription_Document_RemoveBookmark:
|
||
sString = "Document_RemoveBookmark";
|
||
break;
|
||
case AscDFH.historydescription_Document_ContinueNumbering:
|
||
sString = "Document_ContinueNumbering";
|
||
break;
|
||
case AscDFH.historydescription_Document_RestartNumbering:
|
||
sString = "Document_RestartNumbering";
|
||
break;
|
||
case AscDFH.historydescription_Document_AutomaticListAsType:
|
||
sString = "Document_AutomaticListAsType";
|
||
break;
|
||
case AscDFH.historydescription_Document_CreateNum:
|
||
sString = "Document_CreateNum";
|
||
break;
|
||
case AscDFH.historydescription_Document_ChangeNumLvl:
|
||
sString = "Document_ChangeNumLvl";
|
||
break;
|
||
case AscDFH.historydescription_Document_AutoCorrectSmartQuotes:
|
||
sString = "Document_AutoCorrectSmartQuotes";
|
||
break;
|
||
case AscDFH.historydescription_Document_AutoCorrectHyphensWithDash:
|
||
sString = "Document_AutoCorrectHyphensWithDash";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetGlobalSdtHighlightColor:
|
||
sString = "Document_SetGlobalSdtHighlightColor";
|
||
break;
|
||
case AscDFH.historydescription_Document_SetGlobalSdtShowHighlight:
|
||
sString = "Document_SetGlobalSdtShowHighlight";
|
||
break;
|
||
|
||
}
|
||
return sString;
|
||
}
|
||
function GetHistoryClassTypeByChangeType(nChangeType)
|
||
{
|
||
return (nChangeType >> 16) & 0x0000FFFF;
|
||
}
|
||
|
||
//------------------------------------------------------------export--------------------------------------------------
|
||
window['AscDFH'] = window['AscDFH'] || {};
|
||
window['AscDFH'].GetHistoryPointStringDescription = GetHistoryPointStringDescription;
|
||
window['AscDFH'].GetHistoryClassTypeByChangeType = GetHistoryClassTypeByChangeType;
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Типы произошедших изменений
|
||
//
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
window['AscDFH'].historyitem_recalctype_Inline = 0; // Изменения произошли в обычном тексте (с верхним классом CDocument)
|
||
window['AscDFH'].historyitem_recalctype_Flow = 1; // Изменения произошли в "плавающем" объекте
|
||
window['AscDFH'].historyitem_recalctype_HdrFtr = 2; // Изменения произошли в колонтитуле
|
||
window['AscDFH'].historyitem_recalctype_Drawing = 3; // Изменения произошли в drawing'е
|
||
window['AscDFH'].historyitem_recalctype_NotesEnd = 4; // Изменение произошли в сносках, которые идут в конце документа
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Типы классов, в которых происходили изменения (типы нужны для совместного редактирования)
|
||
//
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
window['AscDFH'].historyitem_type_Unknown = 0 << 16;
|
||
window['AscDFH'].historyitem_type_TableId = 1 << 16;
|
||
window['AscDFH'].historyitem_type_Document = 2 << 16;
|
||
window['AscDFH'].historyitem_type_Paragraph = 3 << 16;
|
||
window['AscDFH'].historyitem_type_TextPr = 4 << 16;
|
||
window['AscDFH'].historyitem_type_Drawing = 5 << 16;
|
||
window['AscDFH'].historyitem_type_DrawingObjects = 6 << 16; // obsolete
|
||
window['AscDFH'].historyitem_type_FlowObjects = 7 << 16; // obsolete
|
||
window['AscDFH'].historyitem_type_FlowImage = 8 << 16; // obsolete
|
||
window['AscDFH'].historyitem_type_Table = 9 << 16;
|
||
window['AscDFH'].historyitem_type_TableRow = 10 << 16;
|
||
window['AscDFH'].historyitem_type_TableCell = 11 << 16;
|
||
window['AscDFH'].historyitem_type_DocumentContent = 12 << 16;
|
||
window['AscDFH'].historyitem_type_FlowTable = 13 << 16; // obsolete
|
||
window['AscDFH'].historyitem_type_HdrFtrController = 14 << 16; // obsolete
|
||
window['AscDFH'].historyitem_type_HdrFtr = 15 << 16;
|
||
window['AscDFH'].historyitem_type_AbstractNum = 16 << 16;
|
||
window['AscDFH'].historyitem_type_Comment = 17 << 16;
|
||
window['AscDFH'].historyitem_type_Comments = 18 << 16;
|
||
window['AscDFH'].historyitem_type_Image = 19 << 16;
|
||
window['AscDFH'].historyitem_type_GrObjects = 20 << 16;
|
||
window['AscDFH'].historyitem_type_Hyperlink = 21 << 16;
|
||
window['AscDFH'].historyitem_type_Style = 23 << 16;
|
||
window['AscDFH'].historyitem_type_Styles = 24 << 16;
|
||
window['AscDFH'].historyitem_type_ChartTitle = 25 << 16;
|
||
window['AscDFH'].historyitem_type_Math = 26 << 16;
|
||
window['AscDFH'].historyitem_type_CommentMark = 27 << 16;
|
||
window['AscDFH'].historyitem_type_ParaRun = 28 << 16;
|
||
window['AscDFH'].historyitem_type_MathContent = 29 << 16;
|
||
window['AscDFH'].historyitem_type_Section = 30 << 16;
|
||
window['AscDFH'].historyitem_type_acc = 31 << 16;
|
||
window['AscDFH'].historyitem_type_bar = 32 << 16;
|
||
window['AscDFH'].historyitem_type_borderBox = 33 << 16;
|
||
window['AscDFH'].historyitem_type_box = 34 << 16;
|
||
window['AscDFH'].historyitem_type_delimiter = 35 << 16;
|
||
window['AscDFH'].historyitem_type_eqArr = 36 << 16;
|
||
window['AscDFH'].historyitem_type_frac = 37 << 16;
|
||
window['AscDFH'].historyitem_type_mathFunc = 38 << 16;
|
||
window['AscDFH'].historyitem_type_groupChr = 39 << 16;
|
||
window['AscDFH'].historyitem_type_lim = 40 << 16;
|
||
window['AscDFH'].historyitem_type_matrix = 41 << 16;
|
||
window['AscDFH'].historyitem_type_nary = 42 << 16;
|
||
window['AscDFH'].historyitem_type_integral = 43 << 16;
|
||
window['AscDFH'].historyitem_type_double_integral = 44 << 16;
|
||
window['AscDFH'].historyitem_type_triple_integral = 45 << 16;
|
||
window['AscDFH'].historyitem_type_contour_integral = 46 << 16;
|
||
window['AscDFH'].historyitem_type_surface_integral = 47 << 16;
|
||
window['AscDFH'].historyitem_type_volume_integral = 48 << 16;
|
||
window['AscDFH'].historyitem_type_phant = 49 << 16;
|
||
window['AscDFH'].historyitem_type_rad = 50 << 16;
|
||
window['AscDFH'].historyitem_type_deg_subsup = 51 << 16;
|
||
window['AscDFH'].historyitem_type_iterators = 52 << 16;
|
||
window['AscDFH'].historyitem_type_deg = 53 << 16;
|
||
window['AscDFH'].historyitem_type_ParaComment = 54 << 16;
|
||
window['AscDFH'].historyitem_type_Field = 55 << 16;
|
||
window['AscDFH'].historyitem_type_Footnotes = 56 << 16;
|
||
window['AscDFH'].historyitem_type_FootEndNote = 57 << 16;
|
||
window['AscDFH'].historyitem_type_Presentation = 58 << 16;
|
||
window['AscDFH'].historyitem_type_BlockLevelSdt = 59 << 16;
|
||
window['AscDFH'].historyitem_type_SdtPr = 60 << 16;
|
||
window['AscDFH'].historyitem_type_InlineLevelSdt = 61 << 16;
|
||
window['AscDFH'].historyitem_type_ParaBookmark = 62 << 16;
|
||
window['AscDFH'].historyitem_type_Num = 63 << 16;
|
||
|
||
window['AscDFH'].historyitem_type_CommonShape = 1000 << 16; // Этот класс добавлен для элементов, у которых нет конкретного класса
|
||
|
||
window['AscDFH'].historyitem_type_ColorMod = 1001 << 16;
|
||
window['AscDFH'].historyitem_type_ColorModifiers = 1002 << 16;
|
||
window['AscDFH'].historyitem_type_SysColor = 1003 << 16;
|
||
window['AscDFH'].historyitem_type_PrstColor = 1004 << 16;
|
||
window['AscDFH'].historyitem_type_RGBColor = 1005 << 16;
|
||
window['AscDFH'].historyitem_type_SchemeColor = 1006 << 16;
|
||
window['AscDFH'].historyitem_type_UniColor = 1007 << 16;
|
||
window['AscDFH'].historyitem_type_SrcRect = 1008 << 16;
|
||
window['AscDFH'].historyitem_type_BlipFill = 1009 << 16;
|
||
window['AscDFH'].historyitem_type_SolidFill = 1010 << 16;
|
||
window['AscDFH'].historyitem_type_Gs = 1011 << 16;
|
||
window['AscDFH'].historyitem_type_GradLin = 1012 << 16;
|
||
window['AscDFH'].historyitem_type_GradPath = 1013 << 16;
|
||
window['AscDFH'].historyitem_type_GradFill = 1014 << 16;
|
||
window['AscDFH'].historyitem_type_PathFill = 1015 << 16;
|
||
window['AscDFH'].historyitem_type_NoFill = 1016 << 16;
|
||
window['AscDFH'].historyitem_type_UniFill = 1017 << 16;
|
||
window['AscDFH'].historyitem_type_EndArrow = 1018 << 16;
|
||
window['AscDFH'].historyitem_type_LineJoin = 1019 << 16;
|
||
window['AscDFH'].historyitem_type_Ln = 1020 << 16;
|
||
window['AscDFH'].historyitem_type_DefaultShapeDefinition = 1021 << 16;
|
||
window['AscDFH'].historyitem_type_CNvPr = 1022 << 16;
|
||
window['AscDFH'].historyitem_type_NvPr = 1023 << 16;
|
||
window['AscDFH'].historyitem_type_Ph = 1024 << 16;
|
||
window['AscDFH'].historyitem_type_UniNvPr = 1025 << 16;
|
||
window['AscDFH'].historyitem_type_StyleRef = 1026 << 16;
|
||
window['AscDFH'].historyitem_type_FontRef = 1027 << 16;
|
||
window['AscDFH'].historyitem_type_Chart = 1028 << 16;
|
||
window['AscDFH'].historyitem_type_ChartSpace = 1029 << 16;
|
||
window['AscDFH'].historyitem_type_Legend = 1030 << 16;
|
||
window['AscDFH'].historyitem_type_Layout = 1031 << 16;
|
||
window['AscDFH'].historyitem_type_LegendEntry = 1032 << 16;
|
||
window['AscDFH'].historyitem_type_PivotFmt = 1033 << 16;
|
||
window['AscDFH'].historyitem_type_DLbl = 1034 << 16;
|
||
window['AscDFH'].historyitem_type_Marker = 1035 << 16;
|
||
window['AscDFH'].historyitem_type_PlotArea = 1036 << 16;
|
||
window['AscDFH'].historyitem_type_Axis = 1037 << 16;
|
||
window['AscDFH'].historyitem_type_NumFmt = 1038 << 16;
|
||
window['AscDFH'].historyitem_type_Scaling = 1039 << 16;
|
||
window['AscDFH'].historyitem_type_DTable = 1040 << 16;
|
||
window['AscDFH'].historyitem_type_LineChart = 1041 << 16;
|
||
window['AscDFH'].historyitem_type_DLbls = 1042 << 16;
|
||
window['AscDFH'].historyitem_type_UpDownBars = 1043 << 16;
|
||
window['AscDFH'].historyitem_type_BarChart = 1044 << 16;
|
||
window['AscDFH'].historyitem_type_BubbleChart = 1045 << 16;
|
||
window['AscDFH'].historyitem_type_DoughnutChart = 1046 << 16;
|
||
window['AscDFH'].historyitem_type_OfPieChart = 1047 << 16;
|
||
window['AscDFH'].historyitem_type_PieChart = 1048 << 16;
|
||
window['AscDFH'].historyitem_type_RadarChart = 1049 << 16;
|
||
window['AscDFH'].historyitem_type_ScatterChart = 1050 << 16;
|
||
window['AscDFH'].historyitem_type_StockChart = 1051 << 16;
|
||
window['AscDFH'].historyitem_type_SurfaceChart = 1052 << 16;
|
||
window['AscDFH'].historyitem_type_BandFmt = 1053 << 16;
|
||
window['AscDFH'].historyitem_type_AreaChart = 1054 << 16;
|
||
window['AscDFH'].historyitem_type_ScatterSer = 1055 << 16;
|
||
window['AscDFH'].historyitem_type_DPt = 1056 << 16;
|
||
window['AscDFH'].historyitem_type_ErrBars = 1057 << 16;
|
||
window['AscDFH'].historyitem_type_MinusPlus = 1058 << 16;
|
||
window['AscDFH'].historyitem_type_NumLit = 1059 << 16;
|
||
window['AscDFH'].historyitem_type_NumericPoint = 1060 << 16;
|
||
window['AscDFH'].historyitem_type_NumRef = 1061 << 16;
|
||
window['AscDFH'].historyitem_type_TrendLine = 1062 << 16;
|
||
window['AscDFH'].historyitem_type_Tx = 1063 << 16;
|
||
window['AscDFH'].historyitem_type_StrRef = 1064 << 16;
|
||
window['AscDFH'].historyitem_type_StrCache = 1065 << 16;
|
||
window['AscDFH'].historyitem_type_StrPoint = 1066 << 16;
|
||
window['AscDFH'].historyitem_type_XVal = 1067 << 16;
|
||
window['AscDFH'].historyitem_type_MultiLvlStrRef = 1068 << 16;
|
||
window['AscDFH'].historyitem_type_MultiLvlStrCache = 1069 << 16;
|
||
window['AscDFH'].historyitem_type_StringLiteral = 1070 << 16;
|
||
window['AscDFH'].historyitem_type_YVal = 1071 << 16;
|
||
window['AscDFH'].historyitem_type_AreaSeries = 1072 << 16;
|
||
window['AscDFH'].historyitem_type_Cat = 1073 << 16;
|
||
window['AscDFH'].historyitem_type_PictureOptions = 1074 << 16;
|
||
window['AscDFH'].historyitem_type_RadarSeries = 1075 << 16;
|
||
window['AscDFH'].historyitem_type_BarSeries = 1076 << 16;
|
||
window['AscDFH'].historyitem_type_LineSeries = 1077 << 16;
|
||
window['AscDFH'].historyitem_type_PieSeries = 1078 << 16;
|
||
window['AscDFH'].historyitem_type_SurfaceSeries = 1079 << 16;
|
||
window['AscDFH'].historyitem_type_BubbleSeries = 1080 << 16;
|
||
window['AscDFH'].historyitem_type_ExternalData = 1081 << 16;
|
||
window['AscDFH'].historyitem_type_PivotSource = 1082 << 16;
|
||
window['AscDFH'].historyitem_type_Protection = 1083 << 16;
|
||
window['AscDFH'].historyitem_type_ChartWall = 1084 << 16;
|
||
window['AscDFH'].historyitem_type_View3d = 1085 << 16;
|
||
window['AscDFH'].historyitem_type_ChartText = 1086 << 16;
|
||
window['AscDFH'].historyitem_type_ShapeStyle = 1087 << 16;
|
||
window['AscDFH'].historyitem_type_Xfrm = 1088 << 16;
|
||
window['AscDFH'].historyitem_type_SpPr = 1089 << 16;
|
||
window['AscDFH'].historyitem_type_ClrScheme = 1090 << 16;
|
||
window['AscDFH'].historyitem_type_ClrMap = 1091 << 16;
|
||
window['AscDFH'].historyitem_type_ExtraClrScheme = 1092 << 16;
|
||
window['AscDFH'].historyitem_type_FontCollection = 1093 << 16;
|
||
window['AscDFH'].historyitem_type_FontScheme = 1094 << 16;
|
||
window['AscDFH'].historyitem_type_FormatScheme = 1095 << 16;
|
||
window['AscDFH'].historyitem_type_ThemeElements = 1096 << 16;
|
||
window['AscDFH'].historyitem_type_HF = 1097 << 16;
|
||
window['AscDFH'].historyitem_type_BgPr = 1098 << 16;
|
||
window['AscDFH'].historyitem_type_Bg = 1099 << 16;
|
||
window['AscDFH'].historyitem_type_PrintSettings = 1100 << 16;
|
||
window['AscDFH'].historyitem_type_HeaderFooterChart = 1101 << 16;
|
||
window['AscDFH'].historyitem_type_PageMarginsChart = 1102 << 16;
|
||
window['AscDFH'].historyitem_type_PageSetup = 1103 << 16;
|
||
window['AscDFH'].historyitem_type_Shape = 1104 << 16;
|
||
window['AscDFH'].historyitem_type_DispUnits = 1105 << 16;
|
||
window['AscDFH'].historyitem_type_GroupShape = 1106 << 16;
|
||
window['AscDFH'].historyitem_type_ImageShape = 1107 << 16;
|
||
window['AscDFH'].historyitem_type_Geometry = 1108 << 16;
|
||
window['AscDFH'].historyitem_type_Path = 1109 << 16;
|
||
window['AscDFH'].historyitem_type_TextBody = 1110 << 16;
|
||
window['AscDFH'].historyitem_type_CatAx = 1111 << 16;
|
||
window['AscDFH'].historyitem_type_ValAx = 1112 << 16;
|
||
window['AscDFH'].historyitem_type_WrapPolygon = 1113 << 16;
|
||
window['AscDFH'].historyitem_type_DateAx = 1114 << 16;
|
||
window['AscDFH'].historyitem_type_SerAx = 1115 << 16;
|
||
window['AscDFH'].historyitem_type_Title = 1116 << 16;
|
||
window['AscDFH'].historyitem_type_Slide = 1117 << 16;
|
||
window['AscDFH'].historyitem_type_SlideLayout = 1118 << 16;
|
||
window['AscDFH'].historyitem_type_SlideMaster = 1119 << 16;
|
||
window['AscDFH'].historyitem_type_SlideComments = 1120 << 16;
|
||
window['AscDFH'].historyitem_type_PropLocker = 1121 << 16;
|
||
window['AscDFH'].historyitem_type_Theme = 1122 << 16;
|
||
window['AscDFH'].historyitem_type_GraphicFrame = 1123 << 16;
|
||
window['AscDFH'].historyitem_type_GrpFill = 1124 << 16;
|
||
window['AscDFH'].historyitem_type_OleObject = 1125 << 16;
|
||
window['AscDFH'].historyitem_type_DrawingContent = 1126 << 16;
|
||
window['AscDFH'].historyitem_type_Sparkline = 1127 << 16;
|
||
window['AscDFH'].historyitem_type_NotesMaster = 1128 << 16;
|
||
window['AscDFH'].historyitem_type_Notes = 1129 << 16;
|
||
window['AscDFH'].historyitem_type_Cnx = 1130 << 16;
|
||
window['AscDFH'].historyitem_type_PresentationSection = 1131 << 16;
|
||
window['AscDFH'].historyitem_type_PivotTableDefinition = 1132 << 16;
|
||
|
||
window['AscDFH'].historyitem_type_DocumentMacros = 2000 << 16;
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Типы изменений, разбитые по классам
|
||
//
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
window['AscDFH'].historyitem_Unknown_Unknown = window['AscDFH'].historyitem_type_Unknown | 0;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CTableId
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_TableId_Add = window['AscDFH'].historyitem_type_TableId | 1;
|
||
window['AscDFH'].historyitem_TableId_Description = window['AscDFH'].historyitem_type_TableId | 0xFFFF;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CDocument
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Document_AddItem = window['AscDFH'].historyitem_type_Document | 1;
|
||
window['AscDFH'].historyitem_Document_RemoveItem = window['AscDFH'].historyitem_type_Document | 2;
|
||
window['AscDFH'].historyitem_Document_DefaultTab = window['AscDFH'].historyitem_type_Document | 3;
|
||
window['AscDFH'].historyitem_Document_EvenAndOddHeaders = window['AscDFH'].historyitem_type_Document | 4;
|
||
window['AscDFH'].historyitem_Document_DefaultLanguage = window['AscDFH'].historyitem_type_Document | 5;
|
||
window['AscDFH'].historyitem_Document_MathSettings = window['AscDFH'].historyitem_type_Document | 6;
|
||
window['AscDFH'].historyitem_Document_SdtGlobalSettings = window['AscDFH'].historyitem_type_Document | 7;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе Paragraph
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Paragraph_AddItem = window['AscDFH'].historyitem_type_Paragraph | 1;
|
||
window['AscDFH'].historyitem_Paragraph_RemoveItem = window['AscDFH'].historyitem_type_Paragraph | 2;
|
||
window['AscDFH'].historyitem_Paragraph_Numbering = window['AscDFH'].historyitem_type_Paragraph | 3;
|
||
window['AscDFH'].historyitem_Paragraph_Align = window['AscDFH'].historyitem_type_Paragraph | 4;
|
||
window['AscDFH'].historyitem_Paragraph_Ind_First = window['AscDFH'].historyitem_type_Paragraph | 5;
|
||
window['AscDFH'].historyitem_Paragraph_Ind_Right = window['AscDFH'].historyitem_type_Paragraph | 6;
|
||
window['AscDFH'].historyitem_Paragraph_Ind_Left = window['AscDFH'].historyitem_type_Paragraph | 7;
|
||
window['AscDFH'].historyitem_Paragraph_ContextualSpacing = window['AscDFH'].historyitem_type_Paragraph | 8;
|
||
window['AscDFH'].historyitem_Paragraph_KeepLines = window['AscDFH'].historyitem_type_Paragraph | 9;
|
||
window['AscDFH'].historyitem_Paragraph_KeepNext = window['AscDFH'].historyitem_type_Paragraph | 10;
|
||
window['AscDFH'].historyitem_Paragraph_PageBreakBefore = window['AscDFH'].historyitem_type_Paragraph | 11;
|
||
window['AscDFH'].historyitem_Paragraph_Spacing_Line = window['AscDFH'].historyitem_type_Paragraph | 12;
|
||
window['AscDFH'].historyitem_Paragraph_Spacing_LineRule = window['AscDFH'].historyitem_type_Paragraph | 13;
|
||
window['AscDFH'].historyitem_Paragraph_Spacing_Before = window['AscDFH'].historyitem_type_Paragraph | 14;
|
||
window['AscDFH'].historyitem_Paragraph_Spacing_After = window['AscDFH'].historyitem_type_Paragraph | 15;
|
||
window['AscDFH'].historyitem_Paragraph_Spacing_AfterAutoSpacing = window['AscDFH'].historyitem_type_Paragraph | 16;
|
||
window['AscDFH'].historyitem_Paragraph_Spacing_BeforeAutoSpacing = window['AscDFH'].historyitem_type_Paragraph | 17;
|
||
window['AscDFH'].historyitem_Paragraph_Shd_Value = window['AscDFH'].historyitem_type_Paragraph | 18;
|
||
window['AscDFH'].historyitem_Paragraph_Shd_Color = window['AscDFH'].historyitem_type_Paragraph | 19;
|
||
window['AscDFH'].historyitem_Paragraph_Shd_Unifill = window['AscDFH'].historyitem_type_Paragraph | 20;
|
||
window['AscDFH'].historyitem_Paragraph_Shd = window['AscDFH'].historyitem_type_Paragraph | 21;
|
||
window['AscDFH'].historyitem_Paragraph_WidowControl = window['AscDFH'].historyitem_type_Paragraph | 22;
|
||
window['AscDFH'].historyitem_Paragraph_Tabs = window['AscDFH'].historyitem_type_Paragraph | 23;
|
||
window['AscDFH'].historyitem_Paragraph_PStyle = window['AscDFH'].historyitem_type_Paragraph | 24;
|
||
window['AscDFH'].historyitem_Paragraph_Borders_Between = window['AscDFH'].historyitem_type_Paragraph | 25;
|
||
window['AscDFH'].historyitem_Paragraph_Borders_Bottom = window['AscDFH'].historyitem_type_Paragraph | 26;
|
||
window['AscDFH'].historyitem_Paragraph_Borders_Left = window['AscDFH'].historyitem_type_Paragraph | 27;
|
||
window['AscDFH'].historyitem_Paragraph_Borders_Right = window['AscDFH'].historyitem_type_Paragraph | 28;
|
||
window['AscDFH'].historyitem_Paragraph_Borders_Top = window['AscDFH'].historyitem_type_Paragraph | 29;
|
||
window['AscDFH'].historyitem_Paragraph_Pr = window['AscDFH'].historyitem_type_Paragraph | 30;
|
||
window['AscDFH'].historyitem_Paragraph_PresentationPr_Bullet = window['AscDFH'].historyitem_type_Paragraph | 31;
|
||
window['AscDFH'].historyitem_Paragraph_PresentationPr_Level = window['AscDFH'].historyitem_type_Paragraph | 32;
|
||
window['AscDFH'].historyitem_Paragraph_FramePr = window['AscDFH'].historyitem_type_Paragraph | 33;
|
||
window['AscDFH'].historyitem_Paragraph_SectionPr = window['AscDFH'].historyitem_type_Paragraph | 34;
|
||
window['AscDFH'].historyitem_Paragraph_PrChange = window['AscDFH'].historyitem_type_Paragraph | 35;
|
||
window['AscDFH'].historyitem_Paragraph_PrReviewInfo = window['AscDFH'].historyitem_type_Paragraph | 36;
|
||
window['AscDFH'].historyitem_Paragraph_OutlineLvl = window['AscDFH'].historyitem_type_Paragraph | 37;
|
||
window['AscDFH'].historyitem_Paragraph_DefaultTabSize = window['AscDFH'].historyitem_type_Paragraph | 38;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaTextPr
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_TextPr_Bold = window['AscDFH'].historyitem_type_TextPr | 1;
|
||
window['AscDFH'].historyitem_TextPr_Italic = window['AscDFH'].historyitem_type_TextPr | 2;
|
||
window['AscDFH'].historyitem_TextPr_Strikeout = window['AscDFH'].historyitem_type_TextPr | 3;
|
||
window['AscDFH'].historyitem_TextPr_Underline = window['AscDFH'].historyitem_type_TextPr | 4;
|
||
window['AscDFH'].historyitem_TextPr_FontSize = window['AscDFH'].historyitem_type_TextPr | 5;
|
||
window['AscDFH'].historyitem_TextPr_Color = window['AscDFH'].historyitem_type_TextPr | 6;
|
||
window['AscDFH'].historyitem_TextPr_VertAlign = window['AscDFH'].historyitem_type_TextPr | 7;
|
||
window['AscDFH'].historyitem_TextPr_HighLight = window['AscDFH'].historyitem_type_TextPr | 8;
|
||
window['AscDFH'].historyitem_TextPr_RStyle = window['AscDFH'].historyitem_type_TextPr | 9;
|
||
window['AscDFH'].historyitem_TextPr_Spacing = window['AscDFH'].historyitem_type_TextPr | 10;
|
||
window['AscDFH'].historyitem_TextPr_DStrikeout = window['AscDFH'].historyitem_type_TextPr | 11;
|
||
window['AscDFH'].historyitem_TextPr_Caps = window['AscDFH'].historyitem_type_TextPr | 12;
|
||
window['AscDFH'].historyitem_TextPr_SmallCaps = window['AscDFH'].historyitem_type_TextPr | 13;
|
||
window['AscDFH'].historyitem_TextPr_Position = window['AscDFH'].historyitem_type_TextPr | 14;
|
||
window['AscDFH'].historyitem_TextPr_Value = window['AscDFH'].historyitem_type_TextPr | 15;
|
||
window['AscDFH'].historyitem_TextPr_RFonts = window['AscDFH'].historyitem_type_TextPr | 16;
|
||
window['AscDFH'].historyitem_TextPr_RFonts_Ascii = window['AscDFH'].historyitem_type_TextPr | 17;
|
||
window['AscDFH'].historyitem_TextPr_RFonts_HAnsi = window['AscDFH'].historyitem_type_TextPr | 18;
|
||
window['AscDFH'].historyitem_TextPr_RFonts_CS = window['AscDFH'].historyitem_type_TextPr | 19;
|
||
window['AscDFH'].historyitem_TextPr_RFonts_EastAsia = window['AscDFH'].historyitem_type_TextPr | 20;
|
||
window['AscDFH'].historyitem_TextPr_RFonts_Hint = window['AscDFH'].historyitem_type_TextPr | 21;
|
||
window['AscDFH'].historyitem_TextPr_Lang = window['AscDFH'].historyitem_type_TextPr | 22;
|
||
window['AscDFH'].historyitem_TextPr_Lang_Bidi = window['AscDFH'].historyitem_type_TextPr | 23;
|
||
window['AscDFH'].historyitem_TextPr_Lang_EastAsia = window['AscDFH'].historyitem_type_TextPr | 24;
|
||
window['AscDFH'].historyitem_TextPr_Lang_Val = window['AscDFH'].historyitem_type_TextPr | 25;
|
||
window['AscDFH'].historyitem_TextPr_Unifill = window['AscDFH'].historyitem_type_TextPr | 26;
|
||
window['AscDFH'].historyitem_TextPr_FontSizeCS = window['AscDFH'].historyitem_type_TextPr | 27;
|
||
window['AscDFH'].historyitem_TextPr_Outline = window['AscDFH'].historyitem_type_TextPr | 28;
|
||
window['AscDFH'].historyitem_TextPr_Fill = window['AscDFH'].historyitem_type_TextPr | 29;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaDrawing
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Drawing_DrawingType = window['AscDFH'].historyitem_type_Drawing | 1;
|
||
window['AscDFH'].historyitem_Drawing_WrappingType = window['AscDFH'].historyitem_type_Drawing | 2;
|
||
window['AscDFH'].historyitem_Drawing_Distance = window['AscDFH'].historyitem_type_Drawing | 3;
|
||
window['AscDFH'].historyitem_Drawing_AllowOverlap = window['AscDFH'].historyitem_type_Drawing | 4;
|
||
window['AscDFH'].historyitem_Drawing_PositionH = window['AscDFH'].historyitem_type_Drawing | 5;
|
||
window['AscDFH'].historyitem_Drawing_PositionV = window['AscDFH'].historyitem_type_Drawing | 6;
|
||
window['AscDFH'].historyitem_Drawing_BehindDoc = window['AscDFH'].historyitem_type_Drawing | 7;
|
||
window['AscDFH'].historyitem_Drawing_SetGraphicObject = window['AscDFH'].historyitem_type_Drawing | 8;
|
||
window['AscDFH'].historyitem_Drawing_SetSimplePos = window['AscDFH'].historyitem_type_Drawing | 9;
|
||
window['AscDFH'].historyitem_Drawing_SetExtent = window['AscDFH'].historyitem_type_Drawing | 10;
|
||
window['AscDFH'].historyitem_Drawing_SetWrapPolygon = window['AscDFH'].historyitem_type_Drawing | 11;
|
||
window['AscDFH'].historyitem_Drawing_SetLocked = window['AscDFH'].historyitem_type_Drawing | 12;
|
||
window['AscDFH'].historyitem_Drawing_SetRelativeHeight = window['AscDFH'].historyitem_type_Drawing | 13;
|
||
window['AscDFH'].historyitem_Drawing_SetEffectExtent = window['AscDFH'].historyitem_type_Drawing | 14;
|
||
window['AscDFH'].historyitem_Drawing_SetParent = window['AscDFH'].historyitem_type_Drawing | 15;
|
||
window['AscDFH'].historyitem_Drawing_SetParaMath = window['AscDFH'].historyitem_type_Drawing | 16;
|
||
window['AscDFH'].historyitem_Drawing_LayoutInCell = window['AscDFH'].historyitem_type_Drawing | 17;
|
||
window['AscDFH'].historyitem_Drawing_SetSizeRelH = window['AscDFH'].historyitem_type_Drawing | 18;
|
||
window['AscDFH'].historyitem_Drawing_SetSizeRelV = window['AscDFH'].historyitem_type_Drawing | 19;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CTable
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Table_TableW = window['AscDFH'].historyitem_type_Table | 1;
|
||
window['AscDFH'].historyitem_Table_TableCellMar = window['AscDFH'].historyitem_type_Table | 2;
|
||
window['AscDFH'].historyitem_Table_TableAlign = window['AscDFH'].historyitem_type_Table | 3;
|
||
window['AscDFH'].historyitem_Table_TableInd = window['AscDFH'].historyitem_type_Table | 4;
|
||
window['AscDFH'].historyitem_Table_TableBorder_Left = window['AscDFH'].historyitem_type_Table | 5;
|
||
window['AscDFH'].historyitem_Table_TableBorder_Top = window['AscDFH'].historyitem_type_Table | 6;
|
||
window['AscDFH'].historyitem_Table_TableBorder_Right = window['AscDFH'].historyitem_type_Table | 7;
|
||
window['AscDFH'].historyitem_Table_TableBorder_Bottom = window['AscDFH'].historyitem_type_Table | 8;
|
||
window['AscDFH'].historyitem_Table_TableBorder_InsideH = window['AscDFH'].historyitem_type_Table | 9;
|
||
window['AscDFH'].historyitem_Table_TableBorder_InsideV = window['AscDFH'].historyitem_type_Table | 10;
|
||
window['AscDFH'].historyitem_Table_TableShd = window['AscDFH'].historyitem_type_Table | 11;
|
||
window['AscDFH'].historyitem_Table_Inline = window['AscDFH'].historyitem_type_Table | 12;
|
||
window['AscDFH'].historyitem_Table_AddRow = window['AscDFH'].historyitem_type_Table | 13;
|
||
window['AscDFH'].historyitem_Table_RemoveRow = window['AscDFH'].historyitem_type_Table | 14;
|
||
window['AscDFH'].historyitem_Table_TableGrid = window['AscDFH'].historyitem_type_Table | 15;
|
||
window['AscDFH'].historyitem_Table_TableLook = window['AscDFH'].historyitem_type_Table | 16;
|
||
window['AscDFH'].historyitem_Table_TableStyleRowBandSize = window['AscDFH'].historyitem_type_Table | 17;
|
||
window['AscDFH'].historyitem_Table_TableStyleColBandSize = window['AscDFH'].historyitem_type_Table | 18;
|
||
window['AscDFH'].historyitem_Table_TableStyle = window['AscDFH'].historyitem_type_Table | 19;
|
||
window['AscDFH'].historyitem_Table_AllowOverlap = window['AscDFH'].historyitem_type_Table | 20;
|
||
window['AscDFH'].historyitem_Table_PositionH = window['AscDFH'].historyitem_type_Table | 21;
|
||
window['AscDFH'].historyitem_Table_PositionV = window['AscDFH'].historyitem_type_Table | 22;
|
||
window['AscDFH'].historyitem_Table_Distance = window['AscDFH'].historyitem_type_Table | 23;
|
||
window['AscDFH'].historyitem_Table_Pr = window['AscDFH'].historyitem_type_Table | 24;
|
||
window['AscDFH'].historyitem_Table_TableLayout = window['AscDFH'].historyitem_type_Table | 25;
|
||
window['AscDFH'].historyitem_Table_TableDescription = window['AscDFH'].historyitem_type_Table | 26;
|
||
window['AscDFH'].historyitem_Table_TableCaption = window['AscDFH'].historyitem_type_Table | 27;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CTableRow
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_TableRow_Before = window['AscDFH'].historyitem_type_TableRow | 1;
|
||
window['AscDFH'].historyitem_TableRow_After = window['AscDFH'].historyitem_type_TableRow | 2;
|
||
window['AscDFH'].historyitem_TableRow_CellSpacing = window['AscDFH'].historyitem_type_TableRow | 3;
|
||
window['AscDFH'].historyitem_TableRow_Height = window['AscDFH'].historyitem_type_TableRow | 4;
|
||
window['AscDFH'].historyitem_TableRow_AddCell = window['AscDFH'].historyitem_type_TableRow | 5;
|
||
window['AscDFH'].historyitem_TableRow_RemoveCell = window['AscDFH'].historyitem_type_TableRow | 6;
|
||
window['AscDFH'].historyitem_TableRow_TableHeader = window['AscDFH'].historyitem_type_TableRow | 7;
|
||
window['AscDFH'].historyitem_TableRow_Pr = window['AscDFH'].historyitem_type_TableRow | 8;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CTableCell
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_TableCell_GridSpan = window['AscDFH'].historyitem_type_TableCell | 1;
|
||
window['AscDFH'].historyitem_TableCell_Margins = window['AscDFH'].historyitem_type_TableCell | 2;
|
||
window['AscDFH'].historyitem_TableCell_Shd = window['AscDFH'].historyitem_type_TableCell | 3;
|
||
window['AscDFH'].historyitem_TableCell_VMerge = window['AscDFH'].historyitem_type_TableCell | 4;
|
||
window['AscDFH'].historyitem_TableCell_Border_Left = window['AscDFH'].historyitem_type_TableCell | 5;
|
||
window['AscDFH'].historyitem_TableCell_Border_Right = window['AscDFH'].historyitem_type_TableCell | 6;
|
||
window['AscDFH'].historyitem_TableCell_Border_Top = window['AscDFH'].historyitem_type_TableCell | 7;
|
||
window['AscDFH'].historyitem_TableCell_Border_Bottom = window['AscDFH'].historyitem_type_TableCell | 8;
|
||
window['AscDFH'].historyitem_TableCell_VAlign = window['AscDFH'].historyitem_type_TableCell | 9;
|
||
window['AscDFH'].historyitem_TableCell_W = window['AscDFH'].historyitem_type_TableCell | 10;
|
||
window['AscDFH'].historyitem_TableCell_Pr = window['AscDFH'].historyitem_type_TableCell | 11;
|
||
window['AscDFH'].historyitem_TableCell_TextDirection = window['AscDFH'].historyitem_type_TableCell | 12;
|
||
window['AscDFH'].historyitem_TableCell_NoWrap = window['AscDFH'].historyitem_type_TableCell | 13;
|
||
window['AscDFH'].historyitem_TableCell_HMerge = window['AscDFH'].historyitem_type_TableCell | 14;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CDocumentContent
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_DocumentContent_AddItem = window['AscDFH'].historyitem_type_DocumentContent | 1;
|
||
window['AscDFH'].historyitem_DocumentContent_RemoveItem = window['AscDFH'].historyitem_type_DocumentContent | 2;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CAbstractNum
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_AbstractNum_LvlChange = window['AscDFH'].historyitem_type_AbstractNum | 1;
|
||
window['AscDFH'].historyitem_AbstractNum_TextPrChange = window['AscDFH'].historyitem_type_AbstractNum | 2;
|
||
window['AscDFH'].historyitem_AbstractNum_ParaPrChange = window['AscDFH'].historyitem_type_AbstractNum | 3;
|
||
window['AscDFH'].historyitem_AbstractNum_StyleLink = window['AscDFH'].historyitem_type_AbstractNum | 4;
|
||
window['AscDFH'].historyitem_AbstractNum_NumStyleLink = window['AscDFH'].historyitem_type_AbstractNum | 5;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CNum
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Num_LvlOverrideChange = window['AscDFH'].historyitem_type_Num | 1;
|
||
window['AscDFH'].historyitem_Num_AbstractNum = window['AscDFH'].historyitem_type_Num | 2;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе СComment
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Comment_Change = window['AscDFH'].historyitem_type_Comment | 1;
|
||
window['AscDFH'].historyitem_Comment_TypeInfo = window['AscDFH'].historyitem_type_Comment | 2;
|
||
window['AscDFH'].historyitem_Comment_Position = window['AscDFH'].historyitem_type_Comment | 3;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CComments
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Comments_Add = window['AscDFH'].historyitem_type_Comments | 1;
|
||
window['AscDFH'].historyitem_Comments_Remove = window['AscDFH'].historyitem_type_Comments | 2;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaHyperlink
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Hyperlink_Value = window['AscDFH'].historyitem_type_Hyperlink | 1;
|
||
window['AscDFH'].historyitem_Hyperlink_ToolTip = window['AscDFH'].historyitem_type_Hyperlink | 2;
|
||
window['AscDFH'].historyitem_Hyperlink_AddItem = window['AscDFH'].historyitem_type_Hyperlink | 3;
|
||
window['AscDFH'].historyitem_Hyperlink_RemoveItem = window['AscDFH'].historyitem_type_Hyperlink | 4;
|
||
window['AscDFH'].historyitem_Hyperlink_Anchor = window['AscDFH'].historyitem_type_Hyperlink | 5;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CStyle
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Style_TextPr = window['AscDFH'].historyitem_type_Style | 1;
|
||
window['AscDFH'].historyitem_Style_ParaPr = window['AscDFH'].historyitem_type_Style | 2;
|
||
window['AscDFH'].historyitem_Style_TablePr = window['AscDFH'].historyitem_type_Style | 3;
|
||
window['AscDFH'].historyitem_Style_TableRowPr = window['AscDFH'].historyitem_type_Style | 4;
|
||
window['AscDFH'].historyitem_Style_TableCellPr = window['AscDFH'].historyitem_type_Style | 5;
|
||
window['AscDFH'].historyitem_Style_TableBand1Horz = window['AscDFH'].historyitem_type_Style | 6;
|
||
window['AscDFH'].historyitem_Style_TableBand1Vert = window['AscDFH'].historyitem_type_Style | 7;
|
||
window['AscDFH'].historyitem_Style_TableBand2Horz = window['AscDFH'].historyitem_type_Style | 8;
|
||
window['AscDFH'].historyitem_Style_TableBand2Vert = window['AscDFH'].historyitem_type_Style | 9;
|
||
window['AscDFH'].historyitem_Style_TableFirstCol = window['AscDFH'].historyitem_type_Style | 10;
|
||
window['AscDFH'].historyitem_Style_TableFirstRow = window['AscDFH'].historyitem_type_Style | 11;
|
||
window['AscDFH'].historyitem_Style_TableLastCol = window['AscDFH'].historyitem_type_Style | 12;
|
||
window['AscDFH'].historyitem_Style_TableLastRow = window['AscDFH'].historyitem_type_Style | 13;
|
||
window['AscDFH'].historyitem_Style_TableTLCell = window['AscDFH'].historyitem_type_Style | 14;
|
||
window['AscDFH'].historyitem_Style_TableTRCell = window['AscDFH'].historyitem_type_Style | 15;
|
||
window['AscDFH'].historyitem_Style_TableBLCell = window['AscDFH'].historyitem_type_Style | 16;
|
||
window['AscDFH'].historyitem_Style_TableBRCell = window['AscDFH'].historyitem_type_Style | 17;
|
||
window['AscDFH'].historyitem_Style_TableWholeTable = window['AscDFH'].historyitem_type_Style | 18;
|
||
window['AscDFH'].historyitem_Style_Name = window['AscDFH'].historyitem_type_Style | 101;
|
||
window['AscDFH'].historyitem_Style_BasedOn = window['AscDFH'].historyitem_type_Style | 102;
|
||
window['AscDFH'].historyitem_Style_Next = window['AscDFH'].historyitem_type_Style | 103;
|
||
window['AscDFH'].historyitem_Style_Type = window['AscDFH'].historyitem_type_Style | 104;
|
||
window['AscDFH'].historyitem_Style_QFormat = window['AscDFH'].historyitem_type_Style | 105;
|
||
window['AscDFH'].historyitem_Style_UiPriority = window['AscDFH'].historyitem_type_Style | 106;
|
||
window['AscDFH'].historyitem_Style_Hidden = window['AscDFH'].historyitem_type_Style | 107;
|
||
window['AscDFH'].historyitem_Style_SemiHidden = window['AscDFH'].historyitem_type_Style | 108;
|
||
window['AscDFH'].historyitem_Style_UnhideWhenUsed = window['AscDFH'].historyitem_type_Style | 109;
|
||
window['AscDFH'].historyitem_Style_Link = window['AscDFH'].historyitem_type_Style | 110;
|
||
window['AscDFH'].historyitem_Style_Custom = window['AscDFH'].historyitem_type_Style | 111;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CStyles
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Styles_Add = window['AscDFH'].historyitem_type_Styles | 1;
|
||
window['AscDFH'].historyitem_Styles_Remove = window['AscDFH'].historyitem_type_Styles | 2;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultTextPr = window['AscDFH'].historyitem_type_Styles | 3;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultParaPr = window['AscDFH'].historyitem_type_Styles | 4;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultParagraphId = window['AscDFH'].historyitem_type_Styles | 5;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultCharacterId = window['AscDFH'].historyitem_type_Styles | 6;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultNumberingId = window['AscDFH'].historyitem_type_Styles | 7;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultTableId = window['AscDFH'].historyitem_type_Styles | 8;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultTableGridId = window['AscDFH'].historyitem_type_Styles | 9;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultHeadingsId = window['AscDFH'].historyitem_type_Styles | 10;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultParaListId = window['AscDFH'].historyitem_type_Styles | 11;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultHeaderId = window['AscDFH'].historyitem_type_Styles | 12;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultFooterId = window['AscDFH'].historyitem_type_Styles | 13;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultHyperlinkId = window['AscDFH'].historyitem_type_Styles | 14;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultFootnoteTextId = window['AscDFH'].historyitem_type_Styles | 15;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultFootnoteTextCharId = window['AscDFH'].historyitem_type_Styles | 16;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultFootnoteReferenceId = window['AscDFH'].historyitem_type_Styles | 17;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultNoSpacingId = window['AscDFH'].historyitem_type_Styles | 18;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultTitleId = window['AscDFH'].historyitem_type_Styles | 19;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultSubtitleId = window['AscDFH'].historyitem_type_Styles | 20;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultQuoteId = window['AscDFH'].historyitem_type_Styles | 21;
|
||
window['AscDFH'].historyitem_Styles_ChangeDefaultIntenseQuoteId = window['AscDFH'].historyitem_type_Styles | 22;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaMath
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_MathContent_AddItem = window['AscDFH'].historyitem_type_Math | 101;
|
||
window['AscDFH'].historyitem_MathContent_RemoveItem = window['AscDFH'].historyitem_type_Math | 102;
|
||
window['AscDFH'].historyitem_MathContent_ArgSize = window['AscDFH'].historyitem_type_Math | 103;
|
||
window['AscDFH'].historyitem_MathPara_Jc = window['AscDFH'].historyitem_type_Math | 201;
|
||
window['AscDFH'].historyitem_MathBase_AddItems = window['AscDFH'].historyitem_type_Math | 301;
|
||
window['AscDFH'].historyitem_MathBase_RemoveItems = window['AscDFH'].historyitem_type_Math | 302;
|
||
window['AscDFH'].historyitem_MathBase_FontSize = window['AscDFH'].historyitem_type_Math | 303;
|
||
window['AscDFH'].historyitem_MathBase_Shd = window['AscDFH'].historyitem_type_Math | 304;
|
||
window['AscDFH'].historyitem_MathBase_Color = window['AscDFH'].historyitem_type_Math | 305;
|
||
window['AscDFH'].historyitem_MathBase_Unifill = window['AscDFH'].historyitem_type_Math | 306;
|
||
window['AscDFH'].historyitem_MathBase_Underline = window['AscDFH'].historyitem_type_Math | 307;
|
||
window['AscDFH'].historyitem_MathBase_Strikeout = window['AscDFH'].historyitem_type_Math | 308;
|
||
window['AscDFH'].historyitem_MathBase_DoubleStrikeout = window['AscDFH'].historyitem_type_Math | 309;
|
||
window['AscDFH'].historyitem_MathBase_Italic = window['AscDFH'].historyitem_type_Math | 310;
|
||
window['AscDFH'].historyitem_MathBase_Bold = window['AscDFH'].historyitem_type_Math | 311;
|
||
window['AscDFH'].historyitem_MathBase_RFontsAscii = window['AscDFH'].historyitem_type_Math | 312;
|
||
window['AscDFH'].historyitem_MathBase_RFontsHAnsi = window['AscDFH'].historyitem_type_Math | 313;
|
||
window['AscDFH'].historyitem_MathBase_RFontsCS = window['AscDFH'].historyitem_type_Math | 314;
|
||
window['AscDFH'].historyitem_MathBase_RFontsEastAsia = window['AscDFH'].historyitem_type_Math | 315;
|
||
window['AscDFH'].historyitem_MathBase_RFontsHint = window['AscDFH'].historyitem_type_Math | 316;
|
||
window['AscDFH'].historyitem_MathBase_HighLight = window['AscDFH'].historyitem_type_Math | 317;
|
||
window['AscDFH'].historyitem_MathBase_ReviewType = window['AscDFH'].historyitem_type_Math | 318;
|
||
window['AscDFH'].historyitem_MathBase_TextFill = window['AscDFH'].historyitem_type_Math | 319;
|
||
window['AscDFH'].historyitem_MathBase_TextOutline = window['AscDFH'].historyitem_type_Math | 320;
|
||
window['AscDFH'].historyitem_MathBox_AlnAt = window['AscDFH'].historyitem_type_Math | 401;
|
||
window['AscDFH'].historyitem_MathBox_ForcedBreak = window['AscDFH'].historyitem_type_Math | 402;
|
||
window['AscDFH'].historyitem_MathFraction_Type = window['AscDFH'].historyitem_type_Math | 501;
|
||
window['AscDFH'].historyitem_MathRadical_HideDegree = window['AscDFH'].historyitem_type_Math | 601;
|
||
window['AscDFH'].historyitem_MathNary_LimLoc = window['AscDFH'].historyitem_type_Math | 701;
|
||
window['AscDFH'].historyitem_MathNary_UpperLimit = window['AscDFH'].historyitem_type_Math | 702;
|
||
window['AscDFH'].historyitem_MathNary_LowerLimit = window['AscDFH'].historyitem_type_Math | 703;
|
||
window['AscDFH'].historyitem_MathDelimiter_BegOper = window['AscDFH'].historyitem_type_Math | 801;
|
||
window['AscDFH'].historyitem_MathDelimiter_EndOper = window['AscDFH'].historyitem_type_Math | 802;
|
||
window['AscDFH'].historyitem_MathDelimiter_Grow = window['AscDFH'].historyitem_type_Math | 803;
|
||
window['AscDFH'].historyitem_MathDelimiter_Shape = window['AscDFH'].historyitem_type_Math | 804;
|
||
window['AscDFH'].historyitem_MathDelimiter_SetColumn = window['AscDFH'].historyitem_type_Math | 805;
|
||
window['AscDFH'].historyitem_MathGroupChar_Pr = window['AscDFH'].historyitem_type_Math | 901;
|
||
window['AscDFH'].historyitem_MathLimit_Type = window['AscDFH'].historyitem_type_Math | 1001;
|
||
window['AscDFH'].historyitem_MathBorderBox_Top = window['AscDFH'].historyitem_type_Math | 1101;
|
||
window['AscDFH'].historyitem_MathBorderBox_Bot = window['AscDFH'].historyitem_type_Math | 1102;
|
||
window['AscDFH'].historyitem_MathBorderBox_Left = window['AscDFH'].historyitem_type_Math | 1103;
|
||
window['AscDFH'].historyitem_MathBorderBox_Right = window['AscDFH'].historyitem_type_Math | 1104;
|
||
window['AscDFH'].historyitem_MathBorderBox_Hor = window['AscDFH'].historyitem_type_Math | 1105;
|
||
window['AscDFH'].historyitem_MathBorderBox_Ver = window['AscDFH'].historyitem_type_Math | 1106;
|
||
window['AscDFH'].historyitem_MathBorderBox_TopLTR = window['AscDFH'].historyitem_type_Math | 1107;
|
||
window['AscDFH'].historyitem_MathBorderBox_TopRTL = window['AscDFH'].historyitem_type_Math | 1108;
|
||
window['AscDFH'].historyitem_MathBar_LinePos = window['AscDFH'].historyitem_type_Math | 1201;
|
||
window['AscDFH'].historyitem_MathMatrix_AddRow = window['AscDFH'].historyitem_type_Math | 1301;
|
||
window['AscDFH'].historyitem_MathMatrix_RemoveRow = window['AscDFH'].historyitem_type_Math | 1302;
|
||
window['AscDFH'].historyitem_MathMatrix_AddColumn = window['AscDFH'].historyitem_type_Math | 1303;
|
||
window['AscDFH'].historyitem_MathMatrix_RemoveColumn = window['AscDFH'].historyitem_type_Math | 1304;
|
||
window['AscDFH'].historyitem_MathMatrix_BaseJc = window['AscDFH'].historyitem_type_Math | 1305;
|
||
window['AscDFH'].historyitem_MathMatrix_ColumnJc = window['AscDFH'].historyitem_type_Math | 1306;
|
||
window['AscDFH'].historyitem_MathMatrix_Interval = window['AscDFH'].historyitem_type_Math | 1307;
|
||
window['AscDFH'].historyitem_MathMatrix_Plh = window['AscDFH'].historyitem_type_Math | 1308;
|
||
window['AscDFH'].historyitem_MathDegree_SubSupType = window['AscDFH'].historyitem_type_Math | 1401;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaRun
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_ParaRun_AddItem = window['AscDFH'].historyitem_type_ParaRun | 1;
|
||
window['AscDFH'].historyitem_ParaRun_RemoveItem = window['AscDFH'].historyitem_type_ParaRun | 2;
|
||
window['AscDFH'].historyitem_ParaRun_Bold = window['AscDFH'].historyitem_type_ParaRun | 3;
|
||
window['AscDFH'].historyitem_ParaRun_Italic = window['AscDFH'].historyitem_type_ParaRun | 4;
|
||
window['AscDFH'].historyitem_ParaRun_Strikeout = window['AscDFH'].historyitem_type_ParaRun | 5;
|
||
window['AscDFH'].historyitem_ParaRun_Underline = window['AscDFH'].historyitem_type_ParaRun | 6;
|
||
window['AscDFH'].historyitem_ParaRun_FontFamily = window['AscDFH'].historyitem_type_ParaRun | 7; // obsolete
|
||
window['AscDFH'].historyitem_ParaRun_FontSize = window['AscDFH'].historyitem_type_ParaRun | 8;
|
||
window['AscDFH'].historyitem_ParaRun_Color = window['AscDFH'].historyitem_type_ParaRun | 9;
|
||
window['AscDFH'].historyitem_ParaRun_VertAlign = window['AscDFH'].historyitem_type_ParaRun | 10;
|
||
window['AscDFH'].historyitem_ParaRun_HighLight = window['AscDFH'].historyitem_type_ParaRun | 11;
|
||
window['AscDFH'].historyitem_ParaRun_RStyle = window['AscDFH'].historyitem_type_ParaRun | 12;
|
||
window['AscDFH'].historyitem_ParaRun_Spacing = window['AscDFH'].historyitem_type_ParaRun | 13;
|
||
window['AscDFH'].historyitem_ParaRun_DStrikeout = window['AscDFH'].historyitem_type_ParaRun | 14;
|
||
window['AscDFH'].historyitem_ParaRun_Caps = window['AscDFH'].historyitem_type_ParaRun | 15;
|
||
window['AscDFH'].historyitem_ParaRun_SmallCaps = window['AscDFH'].historyitem_type_ParaRun | 16;
|
||
window['AscDFH'].historyitem_ParaRun_Position = window['AscDFH'].historyitem_type_ParaRun | 17;
|
||
window['AscDFH'].historyitem_ParaRun_Value = window['AscDFH'].historyitem_type_ParaRun | 18; // obsolete
|
||
window['AscDFH'].historyitem_ParaRun_RFonts = window['AscDFH'].historyitem_type_ParaRun | 19;
|
||
window['AscDFH'].historyitem_ParaRun_Lang = window['AscDFH'].historyitem_type_ParaRun | 20;
|
||
window['AscDFH'].historyitem_ParaRun_RFonts_Ascii = window['AscDFH'].historyitem_type_ParaRun | 21;
|
||
window['AscDFH'].historyitem_ParaRun_RFonts_HAnsi = window['AscDFH'].historyitem_type_ParaRun | 22;
|
||
window['AscDFH'].historyitem_ParaRun_RFonts_CS = window['AscDFH'].historyitem_type_ParaRun | 23;
|
||
window['AscDFH'].historyitem_ParaRun_RFonts_EastAsia = window['AscDFH'].historyitem_type_ParaRun | 24;
|
||
window['AscDFH'].historyitem_ParaRun_RFonts_Hint = window['AscDFH'].historyitem_type_ParaRun | 25;
|
||
window['AscDFH'].historyitem_ParaRun_Lang_Bidi = window['AscDFH'].historyitem_type_ParaRun | 26;
|
||
window['AscDFH'].historyitem_ParaRun_Lang_EastAsia = window['AscDFH'].historyitem_type_ParaRun | 27;
|
||
window['AscDFH'].historyitem_ParaRun_Lang_Val = window['AscDFH'].historyitem_type_ParaRun | 28;
|
||
window['AscDFH'].historyitem_ParaRun_TextPr = window['AscDFH'].historyitem_type_ParaRun | 29;
|
||
window['AscDFH'].historyitem_ParaRun_Unifill = window['AscDFH'].historyitem_type_ParaRun | 30;
|
||
window['AscDFH'].historyitem_ParaRun_Shd = window['AscDFH'].historyitem_type_ParaRun | 31;
|
||
window['AscDFH'].historyitem_ParaRun_MathStyle = window['AscDFH'].historyitem_type_ParaRun | 32;
|
||
window['AscDFH'].historyitem_ParaRun_MathPrp = window['AscDFH'].historyitem_type_ParaRun | 33;
|
||
window['AscDFH'].historyitem_ParaRun_ReviewType = window['AscDFH'].historyitem_type_ParaRun | 34;
|
||
window['AscDFH'].historyitem_ParaRun_PrChange = window['AscDFH'].historyitem_type_ParaRun | 35;
|
||
window['AscDFH'].historyitem_ParaRun_TextFill = window['AscDFH'].historyitem_type_ParaRun | 36;
|
||
window['AscDFH'].historyitem_ParaRun_TextOutline = window['AscDFH'].historyitem_type_ParaRun | 37;
|
||
window['AscDFH'].historyitem_ParaRun_PrReviewInfo = window['AscDFH'].historyitem_type_ParaRun | 38;
|
||
window['AscDFH'].historyitem_ParaRun_ContentReviewInfo = window['AscDFH'].historyitem_type_ParaRun | 39;
|
||
window['AscDFH'].historyitem_ParaRun_OnStartSplit = window['AscDFH'].historyitem_type_ParaRun | 40;
|
||
window['AscDFH'].historyitem_ParaRun_OnEndSplit = window['AscDFH'].historyitem_type_ParaRun | 41;
|
||
window['AscDFH'].historyitem_ParaRun_MathAlnAt = window['AscDFH'].historyitem_type_ParaRun | 42;
|
||
window['AscDFH'].historyitem_ParaRun_MathForcedBreak = window['AscDFH'].historyitem_type_ParaRun | 43;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CSectionPr
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Section_PageSize_Orient = window['AscDFH'].historyitem_type_Section | 1;
|
||
window['AscDFH'].historyitem_Section_PageSize_Size = window['AscDFH'].historyitem_type_Section | 2;
|
||
window['AscDFH'].historyitem_Section_PageMargins = window['AscDFH'].historyitem_type_Section | 3;
|
||
window['AscDFH'].historyitem_Section_Type = window['AscDFH'].historyitem_type_Section | 4;
|
||
window['AscDFH'].historyitem_Section_Borders_Left = window['AscDFH'].historyitem_type_Section | 5;
|
||
window['AscDFH'].historyitem_Section_Borders_Top = window['AscDFH'].historyitem_type_Section | 6;
|
||
window['AscDFH'].historyitem_Section_Borders_Right = window['AscDFH'].historyitem_type_Section | 7;
|
||
window['AscDFH'].historyitem_Section_Borders_Bottom = window['AscDFH'].historyitem_type_Section | 8;
|
||
window['AscDFH'].historyitem_Section_Borders_Display = window['AscDFH'].historyitem_type_Section | 9;
|
||
window['AscDFH'].historyitem_Section_Borders_OffsetFrom = window['AscDFH'].historyitem_type_Section | 10;
|
||
window['AscDFH'].historyitem_Section_Borders_ZOrder = window['AscDFH'].historyitem_type_Section | 11;
|
||
window['AscDFH'].historyitem_Section_Header_First = window['AscDFH'].historyitem_type_Section | 12;
|
||
window['AscDFH'].historyitem_Section_Header_Even = window['AscDFH'].historyitem_type_Section | 13;
|
||
window['AscDFH'].historyitem_Section_Header_Default = window['AscDFH'].historyitem_type_Section | 14;
|
||
window['AscDFH'].historyitem_Section_Footer_First = window['AscDFH'].historyitem_type_Section | 15;
|
||
window['AscDFH'].historyitem_Section_Footer_Even = window['AscDFH'].historyitem_type_Section | 16;
|
||
window['AscDFH'].historyitem_Section_Footer_Default = window['AscDFH'].historyitem_type_Section | 17;
|
||
window['AscDFH'].historyitem_Section_TitlePage = window['AscDFH'].historyitem_type_Section | 18;
|
||
window['AscDFH'].historyitem_Section_PageMargins_Header = window['AscDFH'].historyitem_type_Section | 19;
|
||
window['AscDFH'].historyitem_Section_PageMargins_Footer = window['AscDFH'].historyitem_type_Section | 20;
|
||
window['AscDFH'].historyitem_Section_PageNumType_Start = window['AscDFH'].historyitem_type_Section | 21;
|
||
window['AscDFH'].historyitem_Section_Columns_EqualWidth = window['AscDFH'].historyitem_type_Section | 22;
|
||
window['AscDFH'].historyitem_Section_Columns_Space = window['AscDFH'].historyitem_type_Section | 23;
|
||
window['AscDFH'].historyitem_Section_Columns_Num = window['AscDFH'].historyitem_type_Section | 24;
|
||
window['AscDFH'].historyitem_Section_Columns_Sep = window['AscDFH'].historyitem_type_Section | 25;
|
||
window['AscDFH'].historyitem_Section_Columns_Col = window['AscDFH'].historyitem_type_Section | 26;
|
||
window['AscDFH'].historyitem_Section_Columns_SetCols = window['AscDFH'].historyitem_type_Section | 27;
|
||
window['AscDFH'].historyitem_Section_Footnote_Pos = window['AscDFH'].historyitem_type_Section | 28;
|
||
window['AscDFH'].historyitem_Section_Footnote_NumStart = window['AscDFH'].historyitem_type_Section | 29;
|
||
window['AscDFH'].historyitem_Section_Footnote_NumRestart = window['AscDFH'].historyitem_type_Section | 30;
|
||
window['AscDFH'].historyitem_Section_Footnote_NumFormat = window['AscDFH'].historyitem_type_Section | 31;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaComment
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_ParaComment_CommentId = window['AscDFH'].historyitem_type_ParaComment | 1;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе ParaField
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Field_AddItem = window['AscDFH'].historyitem_type_Field | 1;
|
||
window['AscDFH'].historyitem_Field_RemoveItem = window['AscDFH'].historyitem_type_Field | 2;
|
||
window['AscDFH'].historyitem_Field_FormFieldName = window['AscDFH'].historyitem_type_Field | 3;
|
||
window['AscDFH'].historyitem_Field_FormFieldDefaultText = window['AscDFH'].historyitem_type_Field | 4;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе Footnotes
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Footnotes_AddFootnote = window['AscDFH'].historyitem_type_Footnotes | 1;
|
||
window['AscDFH'].historyitem_Footnotes_SetSeparator = window['AscDFH'].historyitem_type_Footnotes | 2;
|
||
window['AscDFH'].historyitem_Footnotes_SetContinuationSeparator = window['AscDFH'].historyitem_type_Footnotes | 3;
|
||
window['AscDFH'].historyitem_Footnotes_SetContinuationNotice = window['AscDFH'].historyitem_type_Footnotes | 4;
|
||
window['AscDFH'].historyitem_Footnotes_SetFootnotePrPos = window['AscDFH'].historyitem_type_Footnotes | 5;
|
||
window['AscDFH'].historyitem_Footnotes_SetFootnotePrNumStart = window['AscDFH'].historyitem_type_Footnotes | 6;
|
||
window['AscDFH'].historyitem_Footnotes_SetFootnotePrNumRestart = window['AscDFH'].historyitem_type_Footnotes | 7;
|
||
window['AscDFH'].historyitem_Footnotes_SetFootnotePrNumFormat = window['AscDFH'].historyitem_type_Footnotes | 8;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений в классе CSdtPr
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_SdtPr_Alias = window['AscDFH'].historyitem_type_SdtPr | 1;
|
||
window['AscDFH'].historyitem_SdtPr_Id = window['AscDFH'].historyitem_type_SdtPr | 2;
|
||
window['AscDFH'].historyitem_SdtPr_Tag = window['AscDFH'].historyitem_type_SdtPr | 3;
|
||
window['AscDFH'].historyitem_SdtPr_Label = window['AscDFH'].historyitem_type_SdtPr | 4;
|
||
window['AscDFH'].historyitem_SdtPr_Lock = window['AscDFH'].historyitem_type_SdtPr | 5;
|
||
window['AscDFH'].historyitem_SdtPr_DocPartObj = window['AscDFH'].historyitem_type_SdtPr | 6;
|
||
window['AscDFH'].historyitem_SdtPr_Appearance = window['AscDFH'].historyitem_type_SdtPr | 7;
|
||
window['AscDFH'].historyitem_SdtPr_Color = window['AscDFH'].historyitem_type_SdtPr | 8;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Графические классы общего назначение (без привязки к конкретному классу)
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_AutoShapes_SetDrawingBaseCoors = window['AscDFH'].historyitem_type_CommonShape | 101;
|
||
window['AscDFH'].historyitem_AutoShapes_SetWorksheet = window['AscDFH'].historyitem_type_CommonShape | 102;
|
||
window['AscDFH'].historyitem_AutoShapes_AddToDrawingObjects = window['AscDFH'].historyitem_type_CommonShape | 103;
|
||
window['AscDFH'].historyitem_AutoShapes_RemoveFromDrawingObjects = window['AscDFH'].historyitem_type_CommonShape | 104;
|
||
window['AscDFH'].historyitem_AutoShapes_SetBFromSerialize = window['AscDFH'].historyitem_type_CommonShape | 105;
|
||
window['AscDFH'].historyitem_AutoShapes_SetLocks = window['AscDFH'].historyitem_type_CommonShape | 106;
|
||
window['AscDFH'].historyitem_AutoShapes_SetDrawingBaseType = window['AscDFH'].historyitem_type_CommonShape | 107;
|
||
window['AscDFH'].historyitem_AutoShapes_SetDrawingBaseExt = window['AscDFH'].historyitem_type_CommonShape | 108;
|
||
window['AscDFH'].historyitem_AutoShapes_SetDrawingBasePos = window['AscDFH'].historyitem_type_CommonShape | 109;
|
||
|
||
window['AscDFH'].historyitem_ChartFormatSetChart = window['AscDFH'].historyitem_type_CommonShape | 201;
|
||
|
||
window['AscDFH'].historyitem_CommonChart_RemoveSeries = window['AscDFH'].historyitem_type_CommonShape | 301;
|
||
window['AscDFH'].historyitem_CommonSeries_RemoveDPt = window['AscDFH'].historyitem_type_CommonShape | 302;
|
||
window['AscDFH'].historyitem_CommonLit_RemoveDPt = window['AscDFH'].historyitem_type_CommonShape | 303;
|
||
window['AscDFH'].historyitem_CommonChartFormat_SetParent = window['AscDFH'].historyitem_type_CommonShape | 304;
|
||
|
||
window['AscDFH'].historyitem_Common_AddWatermark = window['AscDFH'].historyitem_type_CommonShape | 401;
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Графические классы
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_Presentation_AddSlide = window['AscDFH'].historyitem_type_Presentation | 1;
|
||
window['AscDFH'].historyitem_Presentation_RemoveSlide = window['AscDFH'].historyitem_type_Presentation | 2;
|
||
window['AscDFH'].historyitem_Presentation_SlideSize = window['AscDFH'].historyitem_type_Presentation | 3;
|
||
window['AscDFH'].historyitem_Presentation_AddSlideMaster = window['AscDFH'].historyitem_type_Presentation | 4;
|
||
window['AscDFH'].historyitem_Presentation_ChangeTheme = window['AscDFH'].historyitem_type_Presentation | 5;
|
||
window['AscDFH'].historyitem_Presentation_ChangeColorScheme = window['AscDFH'].historyitem_type_Presentation | 6;
|
||
window['AscDFH'].historyitem_Presentation_SetShowPr = window['AscDFH'].historyitem_type_Presentation | 7;
|
||
window['AscDFH'].historyitem_Presentation_SetDefaultTextStyle = window['AscDFH'].historyitem_type_Presentation | 8;
|
||
window['AscDFH'].historyitem_Presentation_AddSection = window['AscDFH'].historyitem_type_Presentation | 9;
|
||
window['AscDFH'].historyitem_Presentation_RemoveSection = window['AscDFH'].historyitem_type_Presentation | 10;
|
||
|
||
window['AscDFH'].historyitem_ColorMod_SetName = window['AscDFH'].historyitem_type_ColorMod | 1;
|
||
window['AscDFH'].historyitem_ColorMod_SetVal = window['AscDFH'].historyitem_type_ColorMod | 2;
|
||
|
||
window['AscDFH'].historyitem_ColorModifiers_AddColorMod = window['AscDFH'].historyitem_type_ColorModifiers | 1;
|
||
window['AscDFH'].historyitem_ColorModifiers_RemoveColorMod = window['AscDFH'].historyitem_type_ColorModifiers | 2;
|
||
|
||
window['AscDFH'].historyitem_SysColor_SetId = window['AscDFH'].historyitem_type_SysColor | 1;
|
||
window['AscDFH'].historyitem_SysColor_SetR = window['AscDFH'].historyitem_type_SysColor | 2;
|
||
window['AscDFH'].historyitem_SysColor_SetG = window['AscDFH'].historyitem_type_SysColor | 3;
|
||
window['AscDFH'].historyitem_SysColor_SetB = window['AscDFH'].historyitem_type_SysColor | 4;
|
||
|
||
window['AscDFH'].historyitem_PrstColor_SetId = window['AscDFH'].historyitem_type_PrstColor | 1;
|
||
|
||
window['AscDFH'].historyitem_RGBColor_SetColor = window['AscDFH'].historyitem_type_RGBColor | 1;
|
||
|
||
window['AscDFH'].historyitem_SchemeColor_SetId = window['AscDFH'].historyitem_type_SchemeColor | 1;
|
||
|
||
window['AscDFH'].historyitem_UniColor_SetColor = window['AscDFH'].historyitem_type_UniColor | 1;
|
||
window['AscDFH'].historyitem_UniColor_SetMods = window['AscDFH'].historyitem_type_UniColor | 2;
|
||
|
||
window['AscDFH'].historyitem_SrcRect_SetLTRB = window['AscDFH'].historyitem_type_SrcRect | 1;
|
||
|
||
window['AscDFH'].historyitem_BlipFill_SetRasterImageId = window['AscDFH'].historyitem_type_BlipFill | 1;
|
||
window['AscDFH'].historyitem_BlipFill_SetVectorImageBin = window['AscDFH'].historyitem_type_BlipFill | 2;
|
||
window['AscDFH'].historyitem_BlipFill_SetSrcRect = window['AscDFH'].historyitem_type_BlipFill | 3;
|
||
window['AscDFH'].historyitem_BlipFill_SetStretch = window['AscDFH'].historyitem_type_BlipFill | 4;
|
||
window['AscDFH'].historyitem_BlipFill_SetTile = window['AscDFH'].historyitem_type_BlipFill | 5;
|
||
window['AscDFH'].historyitem_BlipFill_SetRotWithShape = window['AscDFH'].historyitem_type_BlipFill | 6;
|
||
|
||
window['AscDFH'].historyitem_SolidFill_SetColor = window['AscDFH'].historyitem_type_SolidFill | 1;
|
||
|
||
window['AscDFH'].historyitem_Gs_SetColor = window['AscDFH'].historyitem_type_Gs | 1;
|
||
window['AscDFH'].historyitem_Gs_SetPos = window['AscDFH'].historyitem_type_Gs | 2;
|
||
|
||
window['AscDFH'].historyitem_GradLin_SetAngle = window['AscDFH'].historyitem_type_GradLin | 1;
|
||
window['AscDFH'].historyitem_GradLin_SetScale = window['AscDFH'].historyitem_type_GradLin | 2;
|
||
|
||
window['AscDFH'].historyitem_GradPath_SetPath = window['AscDFH'].historyitem_type_GradPath | 1;
|
||
window['AscDFH'].historyitem_GradPath_SetRect = window['AscDFH'].historyitem_type_GradPath | 2;
|
||
|
||
window['AscDFH'].historyitem_GradFill_AddColor = window['AscDFH'].historyitem_type_GradFill | 1;
|
||
window['AscDFH'].historyitem_GradFill_SetLin = window['AscDFH'].historyitem_type_GradFill | 2;
|
||
window['AscDFH'].historyitem_GradFill_SetPath = window['AscDFH'].historyitem_type_GradFill | 3;
|
||
|
||
window['AscDFH'].historyitem_PathFill_SetFType = window['AscDFH'].historyitem_type_PathFill | 1;
|
||
window['AscDFH'].historyitem_PathFill_SetFgClr = window['AscDFH'].historyitem_type_PathFill | 2;
|
||
window['AscDFH'].historyitem_PathFill_SetBgClr = window['AscDFH'].historyitem_type_PathFill | 3;
|
||
|
||
window['AscDFH'].historyitem_UniFill_SetFill = window['AscDFH'].historyitem_type_UniFill | 1;
|
||
window['AscDFH'].historyitem_UniFill_SetTransparent = window['AscDFH'].historyitem_type_UniFill | 2;
|
||
|
||
window['AscDFH'].historyitem_EndArrow_SetType = window['AscDFH'].historyitem_type_EndArrow | 1;
|
||
window['AscDFH'].historyitem_EndArrow_SetLen = window['AscDFH'].historyitem_type_EndArrow | 2;
|
||
window['AscDFH'].historyitem_EndArrow_SetW = window['AscDFH'].historyitem_type_EndArrow | 3;
|
||
|
||
window['AscDFH'].historyitem_LineJoin_SetType = window['AscDFH'].historyitem_type_LineJoin | 1;
|
||
window['AscDFH'].historyitem_LineJoin_SetLimit = window['AscDFH'].historyitem_type_LineJoin | 2;
|
||
|
||
window['AscDFH'].historyitem_Ln_SetFill = window['AscDFH'].historyitem_type_Ln | 1;
|
||
window['AscDFH'].historyitem_Ln_SetPrstDash = window['AscDFH'].historyitem_type_Ln | 2;
|
||
window['AscDFH'].historyitem_Ln_SetJoin = window['AscDFH'].historyitem_type_Ln | 3;
|
||
window['AscDFH'].historyitem_Ln_SetHeadEnd = window['AscDFH'].historyitem_type_Ln | 4;
|
||
window['AscDFH'].historyitem_Ln_SetTailEnd = window['AscDFH'].historyitem_type_Ln | 5;
|
||
window['AscDFH'].historyitem_Ln_SetAlgn = window['AscDFH'].historyitem_type_Ln | 6;
|
||
window['AscDFH'].historyitem_Ln_SetCap = window['AscDFH'].historyitem_type_Ln | 7;
|
||
window['AscDFH'].historyitem_Ln_SetCmpd = window['AscDFH'].historyitem_type_Ln | 8;
|
||
window['AscDFH'].historyitem_Ln_SetW = window['AscDFH'].historyitem_type_Ln | 9;
|
||
|
||
window['AscDFH'].historyitem_DefaultShapeDefinition_SetSpPr = window['AscDFH'].historyitem_type_DefaultShapeDefinition | 1;
|
||
window['AscDFH'].historyitem_DefaultShapeDefinition_SetBodyPr = window['AscDFH'].historyitem_type_DefaultShapeDefinition | 2;
|
||
window['AscDFH'].historyitem_DefaultShapeDefinition_SetLstStyle = window['AscDFH'].historyitem_type_DefaultShapeDefinition | 3;
|
||
window['AscDFH'].historyitem_DefaultShapeDefinition_SetStyle = window['AscDFH'].historyitem_type_DefaultShapeDefinition | 4;
|
||
|
||
window['AscDFH'].historyitem_CNvPr_SetId = window['AscDFH'].historyitem_type_CNvPr | 1;
|
||
window['AscDFH'].historyitem_CNvPr_SetName = window['AscDFH'].historyitem_type_CNvPr | 2;
|
||
window['AscDFH'].historyitem_CNvPr_SetIsHidden = window['AscDFH'].historyitem_type_CNvPr | 3;
|
||
window['AscDFH'].historyitem_CNvPr_SetDescr = window['AscDFH'].historyitem_type_CNvPr | 4;
|
||
window['AscDFH'].historyitem_CNvPr_SetTitle = window['AscDFH'].historyitem_type_CNvPr | 5;
|
||
window['AscDFH'].historyitem_CNvPr_SetHlinkClick = window['AscDFH'].historyitem_type_CNvPr | 6;
|
||
window['AscDFH'].historyitem_CNvPr_SetHlinkHover = window['AscDFH'].historyitem_type_CNvPr | 7;
|
||
|
||
window['AscDFH'].historyitem_NvPr_SetIsPhoto = window['AscDFH'].historyitem_type_NvPr | 1;
|
||
window['AscDFH'].historyitem_NvPr_SetUserDrawn = window['AscDFH'].historyitem_type_NvPr | 2;
|
||
window['AscDFH'].historyitem_NvPr_SetPh = window['AscDFH'].historyitem_type_NvPr | 3;
|
||
window['AscDFH'].historyitem_NvPr_SetUniMedia = window['AscDFH'].historyitem_type_NvPr | 4;
|
||
|
||
window['AscDFH'].historyitem_Ph_SetHasCustomPrompt = window['AscDFH'].historyitem_type_Ph | 1;
|
||
window['AscDFH'].historyitem_Ph_SetIdx = window['AscDFH'].historyitem_type_Ph | 2;
|
||
window['AscDFH'].historyitem_Ph_SetOrient = window['AscDFH'].historyitem_type_Ph | 3;
|
||
window['AscDFH'].historyitem_Ph_SetSz = window['AscDFH'].historyitem_type_Ph | 4;
|
||
window['AscDFH'].historyitem_Ph_SetType = window['AscDFH'].historyitem_type_Ph | 5;
|
||
|
||
window['AscDFH'].historyitem_UniNvPr_SetCNvPr = window['AscDFH'].historyitem_type_UniNvPr | 1;
|
||
window['AscDFH'].historyitem_UniNvPr_SetUniPr = window['AscDFH'].historyitem_type_UniNvPr | 2;
|
||
window['AscDFH'].historyitem_UniNvPr_SetNvPr = window['AscDFH'].historyitem_type_UniNvPr | 3;
|
||
window['AscDFH'].historyitem_UniNvPr_SetUniSpPr = window['AscDFH'].historyitem_type_UniNvPr | 4;
|
||
|
||
window['AscDFH'].historyitem_StyleRef_SetIdx = window['AscDFH'].historyitem_type_StyleRef | 1;
|
||
window['AscDFH'].historyitem_StyleRef_SetColor = window['AscDFH'].historyitem_type_StyleRef | 2;
|
||
|
||
window['AscDFH'].historyitem_FontRef_SetIdx = window['AscDFH'].historyitem_type_FontRef | 1;
|
||
window['AscDFH'].historyitem_FontRef_SetColor = window['AscDFH'].historyitem_type_FontRef | 2;
|
||
|
||
window['AscDFH'].historyitem_Chart_SetAutoTitleDeleted = window['AscDFH'].historyitem_type_Chart | 1;
|
||
window['AscDFH'].historyitem_Chart_SetBackWall = window['AscDFH'].historyitem_type_Chart | 2;
|
||
window['AscDFH'].historyitem_Chart_SetDispBlanksAs = window['AscDFH'].historyitem_type_Chart | 3;
|
||
window['AscDFH'].historyitem_Chart_SetFloor = window['AscDFH'].historyitem_type_Chart | 4;
|
||
window['AscDFH'].historyitem_Chart_SetLegend = window['AscDFH'].historyitem_type_Chart | 5;
|
||
window['AscDFH'].historyitem_Chart_AddPivotFmt = window['AscDFH'].historyitem_type_Chart | 6;
|
||
window['AscDFH'].historyitem_Chart_SetPlotArea = window['AscDFH'].historyitem_type_Chart | 7;
|
||
window['AscDFH'].historyitem_Chart_SetPlotVisOnly = window['AscDFH'].historyitem_type_Chart | 8;
|
||
window['AscDFH'].historyitem_Chart_SetShowDLblsOverMax = window['AscDFH'].historyitem_type_Chart | 9;
|
||
window['AscDFH'].historyitem_Chart_SetSideWall = window['AscDFH'].historyitem_type_Chart | 10;
|
||
window['AscDFH'].historyitem_Chart_SetTitle = window['AscDFH'].historyitem_type_Chart | 11;
|
||
window['AscDFH'].historyitem_Chart_SetView3D = window['AscDFH'].historyitem_type_Chart | 12;
|
||
|
||
window['AscDFH'].historyitem_ChartSpace_SetChart = window['AscDFH'].historyitem_type_ChartSpace | 1;
|
||
window['AscDFH'].historyitem_ChartSpace_SetClrMapOvr = window['AscDFH'].historyitem_type_ChartSpace | 2;
|
||
window['AscDFH'].historyitem_ChartSpace_SetDate1904 = window['AscDFH'].historyitem_type_ChartSpace | 3;
|
||
window['AscDFH'].historyitem_ChartSpace_SetExternalData = window['AscDFH'].historyitem_type_ChartSpace | 4;
|
||
window['AscDFH'].historyitem_ChartSpace_SetLang = window['AscDFH'].historyitem_type_ChartSpace | 5;
|
||
window['AscDFH'].historyitem_ChartSpace_SetPivotSource = window['AscDFH'].historyitem_type_ChartSpace | 6;
|
||
window['AscDFH'].historyitem_ChartSpace_SetPrintSettings = window['AscDFH'].historyitem_type_ChartSpace | 7;
|
||
window['AscDFH'].historyitem_ChartSpace_SetProtection = window['AscDFH'].historyitem_type_ChartSpace | 8;
|
||
window['AscDFH'].historyitem_ChartSpace_SetRoundedCorners = window['AscDFH'].historyitem_type_ChartSpace | 9;
|
||
window['AscDFH'].historyitem_ChartSpace_SetSpPr = window['AscDFH'].historyitem_type_ChartSpace | 10;
|
||
window['AscDFH'].historyitem_ChartSpace_SetStyle = window['AscDFH'].historyitem_type_ChartSpace | 11;
|
||
window['AscDFH'].historyitem_ChartSpace_SetTxPr = window['AscDFH'].historyitem_type_ChartSpace | 12;
|
||
window['AscDFH'].historyitem_ChartSpace_SetUserShapes = window['AscDFH'].historyitem_type_ChartSpace | 13;
|
||
window['AscDFH'].historyitem_ChartSpace_SetThemeOverride = window['AscDFH'].historyitem_type_ChartSpace | 14;
|
||
window['AscDFH'].historyitem_ChartSpace_SetGroup = window['AscDFH'].historyitem_type_ChartSpace | 15;
|
||
window['AscDFH'].historyitem_ChartSpace_SetParent = window['AscDFH'].historyitem_type_ChartSpace | 16;
|
||
window['AscDFH'].historyitem_ChartSpace_SetNvGrFrProps = window['AscDFH'].historyitem_type_ChartSpace | 17;
|
||
|
||
window['AscDFH'].historyitem_Legend_SetLayout = window['AscDFH'].historyitem_type_Legend | 1;
|
||
window['AscDFH'].historyitem_Legend_AddLegendEntry = window['AscDFH'].historyitem_type_Legend | 2;
|
||
window['AscDFH'].historyitem_Legend_SetLegendPos = window['AscDFH'].historyitem_type_Legend | 3;
|
||
window['AscDFH'].historyitem_Legend_SetOverlay = window['AscDFH'].historyitem_type_Legend | 4;
|
||
window['AscDFH'].historyitem_Legend_SetSpPr = window['AscDFH'].historyitem_type_Legend | 5;
|
||
window['AscDFH'].historyitem_Legend_SetTxPr = window['AscDFH'].historyitem_type_Legend | 6;
|
||
|
||
window['AscDFH'].historyitem_Layout_SetH = window['AscDFH'].historyitem_type_Layout | 1;
|
||
window['AscDFH'].historyitem_Layout_SetHMode = window['AscDFH'].historyitem_type_Layout | 2;
|
||
window['AscDFH'].historyitem_Layout_SetLayoutTarget = window['AscDFH'].historyitem_type_Layout | 3;
|
||
window['AscDFH'].historyitem_Layout_SetW = window['AscDFH'].historyitem_type_Layout | 4;
|
||
window['AscDFH'].historyitem_Layout_SetWMode = window['AscDFH'].historyitem_type_Layout | 5;
|
||
window['AscDFH'].historyitem_Layout_SetX = window['AscDFH'].historyitem_type_Layout | 6;
|
||
window['AscDFH'].historyitem_Layout_SetXMode = window['AscDFH'].historyitem_type_Layout | 7;
|
||
window['AscDFH'].historyitem_Layout_SetY = window['AscDFH'].historyitem_type_Layout | 8;
|
||
window['AscDFH'].historyitem_Layout_SetYMode = window['AscDFH'].historyitem_type_Layout | 9;
|
||
|
||
window['AscDFH'].historyitem_LegendEntry_SetDelete = window['AscDFH'].historyitem_type_LegendEntry | 1;
|
||
window['AscDFH'].historyitem_LegendEntry_SetIdx = window['AscDFH'].historyitem_type_LegendEntry | 2;
|
||
window['AscDFH'].historyitem_LegendEntry_SetTxPr = window['AscDFH'].historyitem_type_LegendEntry | 3;
|
||
|
||
window['AscDFH'].historyitem_PivotFmt_SetDLbl = window['AscDFH'].historyitem_type_PivotFmt | 1;
|
||
window['AscDFH'].historyitem_PivotFmt_SetIdx = window['AscDFH'].historyitem_type_PivotFmt | 2;
|
||
window['AscDFH'].historyitem_PivotFmt_SetMarker = window['AscDFH'].historyitem_type_PivotFmt | 3;
|
||
window['AscDFH'].historyitem_PivotFmt_SetSpPr = window['AscDFH'].historyitem_type_PivotFmt | 4;
|
||
window['AscDFH'].historyitem_PivotFmt_SetTxPr = window['AscDFH'].historyitem_type_PivotFmt | 5;
|
||
|
||
window['AscDFH'].historyitem_DLbl_SetDelete = window['AscDFH'].historyitem_type_DLbl | 1;
|
||
window['AscDFH'].historyitem_DLbl_SetDLblPos = window['AscDFH'].historyitem_type_DLbl | 2;
|
||
window['AscDFH'].historyitem_DLbl_SetIdx = window['AscDFH'].historyitem_type_DLbl | 3;
|
||
window['AscDFH'].historyitem_DLbl_SetLayout = window['AscDFH'].historyitem_type_DLbl | 4;
|
||
window['AscDFH'].historyitem_DLbl_SetNumFmt = window['AscDFH'].historyitem_type_DLbl | 5;
|
||
window['AscDFH'].historyitem_DLbl_SetSeparator = window['AscDFH'].historyitem_type_DLbl | 6;
|
||
window['AscDFH'].historyitem_DLbl_SetShowBubbleSize = window['AscDFH'].historyitem_type_DLbl | 7;
|
||
window['AscDFH'].historyitem_DLbl_SetShowCatName = window['AscDFH'].historyitem_type_DLbl | 8;
|
||
window['AscDFH'].historyitem_DLbl_SetShowLegendKey = window['AscDFH'].historyitem_type_DLbl | 9;
|
||
window['AscDFH'].historyitem_DLbl_SetShowPercent = window['AscDFH'].historyitem_type_DLbl | 10;
|
||
window['AscDFH'].historyitem_DLbl_SetShowSerName = window['AscDFH'].historyitem_type_DLbl | 11;
|
||
window['AscDFH'].historyitem_DLbl_SetShowVal = window['AscDFH'].historyitem_type_DLbl | 12;
|
||
window['AscDFH'].historyitem_DLbl_SetSpPr = window['AscDFH'].historyitem_type_DLbl | 13;
|
||
window['AscDFH'].historyitem_DLbl_SetTx = window['AscDFH'].historyitem_type_DLbl | 14;
|
||
window['AscDFH'].historyitem_DLbl_SetTxPr = window['AscDFH'].historyitem_type_DLbl | 15;
|
||
|
||
window['AscDFH'].historyitem_Marker_SetSize = window['AscDFH'].historyitem_type_Marker | 1;
|
||
window['AscDFH'].historyitem_Marker_SetSpPr = window['AscDFH'].historyitem_type_Marker | 2;
|
||
window['AscDFH'].historyitem_Marker_SetSymbol = window['AscDFH'].historyitem_type_Marker | 3;
|
||
|
||
window['AscDFH'].historyitem_PlotArea_AddChart = window['AscDFH'].historyitem_type_PlotArea | 1;
|
||
window['AscDFH'].historyitem_PlotArea_SetCatAx = window['AscDFH'].historyitem_type_PlotArea | 2;
|
||
window['AscDFH'].historyitem_PlotArea_SetDateAx = window['AscDFH'].historyitem_type_PlotArea | 3;
|
||
window['AscDFH'].historyitem_PlotArea_SetDTable = window['AscDFH'].historyitem_type_PlotArea | 4;
|
||
window['AscDFH'].historyitem_PlotArea_SetLayout = window['AscDFH'].historyitem_type_PlotArea | 5;
|
||
window['AscDFH'].historyitem_PlotArea_SetSerAx = window['AscDFH'].historyitem_type_PlotArea | 6;
|
||
window['AscDFH'].historyitem_PlotArea_SetSpPr = window['AscDFH'].historyitem_type_PlotArea | 7;
|
||
window['AscDFH'].historyitem_PlotArea_SetValAx = window['AscDFH'].historyitem_type_PlotArea | 8;
|
||
window['AscDFH'].historyitem_PlotArea_AddAxis = window['AscDFH'].historyitem_type_PlotArea | 9;
|
||
window['AscDFH'].historyitem_PlotArea_RemoveChart = window['AscDFH'].historyitem_type_PlotArea | 10;
|
||
window['AscDFH'].historyitem_PlotArea_RemoveAxis = window['AscDFH'].historyitem_type_PlotArea | 11;
|
||
|
||
window['AscDFH'].historyitem_NumFmt_SetFormatCode = window['AscDFH'].historyitem_type_NumFmt | 1;
|
||
window['AscDFH'].historyitem_NumFmt_SetSourceLinked = window['AscDFH'].historyitem_type_NumFmt | 2;
|
||
|
||
window['AscDFH'].historyitem_Scaling_SetLogBase = window['AscDFH'].historyitem_type_Scaling | 1;
|
||
window['AscDFH'].historyitem_Scaling_SetMax = window['AscDFH'].historyitem_type_Scaling | 2;
|
||
window['AscDFH'].historyitem_Scaling_SetMin = window['AscDFH'].historyitem_type_Scaling | 3;
|
||
window['AscDFH'].historyitem_Scaling_SetOrientation = window['AscDFH'].historyitem_type_Scaling | 4;
|
||
window['AscDFH'].historyitem_Scaling_SetParent = window['AscDFH'].historyitem_type_Scaling | 5;
|
||
|
||
window['AscDFH'].historyitem_DTable_SetShowHorzBorder = window['AscDFH'].historyitem_type_DTable | 1;
|
||
window['AscDFH'].historyitem_DTable_SetShowKeys = window['AscDFH'].historyitem_type_DTable | 2;
|
||
window['AscDFH'].historyitem_DTable_SetShowOutline = window['AscDFH'].historyitem_type_DTable | 3;
|
||
window['AscDFH'].historyitem_DTable_SetShowVertBorder = window['AscDFH'].historyitem_type_DTable | 4;
|
||
window['AscDFH'].historyitem_DTable_SetSpPr = window['AscDFH'].historyitem_type_DTable | 5;
|
||
window['AscDFH'].historyitem_DTable_SetTxPr = window['AscDFH'].historyitem_type_DTable | 6;
|
||
|
||
window['AscDFH'].historyitem_LineChart_AddAxId = window['AscDFH'].historyitem_type_LineChart | 1;
|
||
window['AscDFH'].historyitem_LineChart_SetDLbls = window['AscDFH'].historyitem_type_LineChart | 2;
|
||
window['AscDFH'].historyitem_LineChart_SetDropLines = window['AscDFH'].historyitem_type_LineChart | 3;
|
||
window['AscDFH'].historyitem_LineChart_SetGrouping = window['AscDFH'].historyitem_type_LineChart | 4;
|
||
window['AscDFH'].historyitem_LineChart_SetHiLowLines = window['AscDFH'].historyitem_type_LineChart | 5;
|
||
window['AscDFH'].historyitem_LineChart_SetMarker = window['AscDFH'].historyitem_type_LineChart | 6;
|
||
window['AscDFH'].historyitem_LineChart_AddSer = window['AscDFH'].historyitem_type_LineChart | 7;
|
||
window['AscDFH'].historyitem_LineChart_SetSmooth = window['AscDFH'].historyitem_type_LineChart | 8;
|
||
window['AscDFH'].historyitem_LineChart_SetUpDownBars = window['AscDFH'].historyitem_type_LineChart | 9;
|
||
window['AscDFH'].historyitem_LineChart_SetVaryColors = window['AscDFH'].historyitem_type_LineChart | 10;
|
||
|
||
window['AscDFH'].historyitem_DLbls_SetDelete = window['AscDFH'].historyitem_type_DLbls | 1;
|
||
window['AscDFH'].historyitem_DLbls_SetDLbl = window['AscDFH'].historyitem_type_DLbls | 2;
|
||
window['AscDFH'].historyitem_DLbls_SetDLblPos = window['AscDFH'].historyitem_type_DLbls | 3;
|
||
window['AscDFH'].historyitem_DLbls_SetLeaderLines = window['AscDFH'].historyitem_type_DLbls | 4;
|
||
window['AscDFH'].historyitem_DLbls_SetNumFmt = window['AscDFH'].historyitem_type_DLbls | 5;
|
||
window['AscDFH'].historyitem_DLbls_SetSeparator = window['AscDFH'].historyitem_type_DLbls | 6;
|
||
window['AscDFH'].historyitem_DLbls_SetShowBubbleSize = window['AscDFH'].historyitem_type_DLbls | 7;
|
||
window['AscDFH'].historyitem_DLbls_SetShowCatName = window['AscDFH'].historyitem_type_DLbls | 8;
|
||
window['AscDFH'].historyitem_DLbls_SetShowLeaderLines = window['AscDFH'].historyitem_type_DLbls | 9;
|
||
window['AscDFH'].historyitem_DLbls_SetShowLegendKey = window['AscDFH'].historyitem_type_DLbls | 10;
|
||
window['AscDFH'].historyitem_DLbls_SetShowPercent = window['AscDFH'].historyitem_type_DLbls | 11;
|
||
window['AscDFH'].historyitem_DLbls_SetShowSerName = window['AscDFH'].historyitem_type_DLbls | 12;
|
||
window['AscDFH'].historyitem_DLbls_SetShowVal = window['AscDFH'].historyitem_type_DLbls | 13;
|
||
window['AscDFH'].historyitem_DLbls_SetSpPr = window['AscDFH'].historyitem_type_DLbls | 14;
|
||
window['AscDFH'].historyitem_DLbls_SetTxPr = window['AscDFH'].historyitem_type_DLbls | 15;
|
||
|
||
window['AscDFH'].historyitem_UpDownBars_SetDownBars = window['AscDFH'].historyitem_type_UpDownBars | 1;
|
||
window['AscDFH'].historyitem_UpDownBars_SetGapWidth = window['AscDFH'].historyitem_type_UpDownBars | 2;
|
||
window['AscDFH'].historyitem_UpDownBars_SetUpBars = window['AscDFH'].historyitem_type_UpDownBars | 3;
|
||
|
||
window['AscDFH'].historyitem_BarChart_AddAxId = window['AscDFH'].historyitem_type_BarChart | 1;
|
||
window['AscDFH'].historyitem_BarChart_SetBarDir = window['AscDFH'].historyitem_type_BarChart | 2;
|
||
window['AscDFH'].historyitem_BarChart_SetDLbls = window['AscDFH'].historyitem_type_BarChart | 3;
|
||
window['AscDFH'].historyitem_BarChart_SetGapWidth = window['AscDFH'].historyitem_type_BarChart | 4;
|
||
window['AscDFH'].historyitem_BarChart_SetGrouping = window['AscDFH'].historyitem_type_BarChart | 5;
|
||
window['AscDFH'].historyitem_BarChart_SetOverlap = window['AscDFH'].historyitem_type_BarChart | 6;
|
||
window['AscDFH'].historyitem_BarChart_AddSer = window['AscDFH'].historyitem_type_BarChart | 7;
|
||
window['AscDFH'].historyitem_BarChart_SetSerLines = window['AscDFH'].historyitem_type_BarChart | 8;
|
||
window['AscDFH'].historyitem_BarChart_SetVaryColors = window['AscDFH'].historyitem_type_BarChart | 9;
|
||
window['AscDFH'].historyitem_BarChart_Set3D = window['AscDFH'].historyitem_type_BarChart | 10;
|
||
window['AscDFH'].historyitem_BarChart_SetGapDepth = window['AscDFH'].historyitem_type_BarChart | 11;
|
||
window['AscDFH'].historyitem_BarChart_SetShape = window['AscDFH'].historyitem_type_BarChart | 12;
|
||
|
||
window['AscDFH'].historyitem_BubbleChart_AddAxId = window['AscDFH'].historyitem_type_BubbleChart | 1;
|
||
window['AscDFH'].historyitem_BubbleChart_SetBubble3D = window['AscDFH'].historyitem_type_BubbleChart | 2;
|
||
window['AscDFH'].historyitem_BubbleChart_SetBubbleScale = window['AscDFH'].historyitem_type_BubbleChart | 3;
|
||
window['AscDFH'].historyitem_BubbleChart_SetDLbls = window['AscDFH'].historyitem_type_BubbleChart | 4;
|
||
window['AscDFH'].historyitem_BubbleChart_AddSerie = window['AscDFH'].historyitem_type_BubbleChart | 5;
|
||
window['AscDFH'].historyitem_BubbleChart_SetShowNegBubbles = window['AscDFH'].historyitem_type_BubbleChart | 6;
|
||
window['AscDFH'].historyitem_BubbleChart_SetSizeRepresents = window['AscDFH'].historyitem_type_BubbleChart | 7;
|
||
window['AscDFH'].historyitem_BubbleChart_SetVaryColors = window['AscDFH'].historyitem_type_BubbleChart | 8;
|
||
|
||
window['AscDFH'].historyitem_DoughnutChart_SetDLbls = window['AscDFH'].historyitem_type_DoughnutChart | 1;
|
||
window['AscDFH'].historyitem_DoughnutChart_SetFirstSliceAng = window['AscDFH'].historyitem_type_DoughnutChart | 2;
|
||
window['AscDFH'].historyitem_DoughnutChart_SetHoleSize = window['AscDFH'].historyitem_type_DoughnutChart | 3;
|
||
window['AscDFH'].historyitem_DoughnutChart_AddSer = window['AscDFH'].historyitem_type_DoughnutChart | 4;
|
||
window['AscDFH'].historyitem_DoughnutChart_SetVaryColor = window['AscDFH'].historyitem_type_DoughnutChart | 5;
|
||
|
||
window['AscDFH'].historyitem_OfPieChart_AddCustSplit = window['AscDFH'].historyitem_type_OfPieChart | 1;
|
||
window['AscDFH'].historyitem_OfPieChart_SetDLbls = window['AscDFH'].historyitem_type_OfPieChart | 2;
|
||
window['AscDFH'].historyitem_OfPieChart_SetGapWidth = window['AscDFH'].historyitem_type_OfPieChart | 3;
|
||
window['AscDFH'].historyitem_OfPieChart_SetOfPieType = window['AscDFH'].historyitem_type_OfPieChart | 4;
|
||
window['AscDFH'].historyitem_OfPieChart_SetSecondPieSize = window['AscDFH'].historyitem_type_OfPieChart | 5;
|
||
window['AscDFH'].historyitem_OfPieChart_AddSer = window['AscDFH'].historyitem_type_OfPieChart | 6;
|
||
window['AscDFH'].historyitem_OfPieChart_SetSerLines = window['AscDFH'].historyitem_type_OfPieChart | 7;
|
||
window['AscDFH'].historyitem_OfPieChart_SetSplitPos = window['AscDFH'].historyitem_type_OfPieChart | 8;
|
||
window['AscDFH'].historyitem_OfPieChart_SetSplitType = window['AscDFH'].historyitem_type_OfPieChart | 9;
|
||
window['AscDFH'].historyitem_OfPieChart_SetVaryColors = window['AscDFH'].historyitem_type_OfPieChart | 10;
|
||
|
||
window['AscDFH'].historyitem_PieChart_SetDLbls = window['AscDFH'].historyitem_type_PieChart | 1;
|
||
window['AscDFH'].historyitem_PieChart_SetFirstSliceAng = window['AscDFH'].historyitem_type_PieChart | 2;
|
||
window['AscDFH'].historyitem_PieChart_AddSer = window['AscDFH'].historyitem_type_PieChart | 3;
|
||
window['AscDFH'].historyitem_PieChart_SetVaryColors = window['AscDFH'].historyitem_type_PieChart | 4;
|
||
|
||
window['AscDFH'].historyitem_RadarChart_AddAxId = window['AscDFH'].historyitem_type_RadarChart | 1;
|
||
window['AscDFH'].historyitem_RadarChart_SetDLbls = window['AscDFH'].historyitem_type_RadarChart | 2;
|
||
window['AscDFH'].historyitem_RadarChart_SetRadarStyle = window['AscDFH'].historyitem_type_RadarChart | 3;
|
||
window['AscDFH'].historyitem_RadarChart_AddSer = window['AscDFH'].historyitem_type_RadarChart | 4;
|
||
window['AscDFH'].historyitem_RadarChart_SetVaryColors = window['AscDFH'].historyitem_type_RadarChart | 5;
|
||
|
||
window['AscDFH'].historyitem_ScatterChart_AddAxId = window['AscDFH'].historyitem_type_ScatterChart | 1;
|
||
window['AscDFH'].historyitem_ScatterChart_SetDLbls = window['AscDFH'].historyitem_type_ScatterChart | 2;
|
||
window['AscDFH'].historyitem_ScatterChart_SetScatterStyle = window['AscDFH'].historyitem_type_ScatterChart | 3;
|
||
window['AscDFH'].historyitem_ScatterChart_AddSer = window['AscDFH'].historyitem_type_ScatterChart | 4;
|
||
window['AscDFH'].historyitem_ScatterChart_SetVaryColors = window['AscDFH'].historyitem_type_ScatterChart | 5;
|
||
|
||
window['AscDFH'].historyitem_StockChart_AddAxId = window['AscDFH'].historyitem_type_StockChart | 1;
|
||
window['AscDFH'].historyitem_StockChart_SetDLbls = window['AscDFH'].historyitem_type_StockChart | 2;
|
||
window['AscDFH'].historyitem_StockChart_SetDropLines = window['AscDFH'].historyitem_type_StockChart | 3;
|
||
window['AscDFH'].historyitem_StockChart_SetHiLowLines = window['AscDFH'].historyitem_type_StockChart | 4;
|
||
window['AscDFH'].historyitem_StockChart_AddSer = window['AscDFH'].historyitem_type_StockChart | 5;
|
||
window['AscDFH'].historyitem_StockChart_SetUpDownBars = window['AscDFH'].historyitem_type_StockChart | 6;
|
||
|
||
window['AscDFH'].historyitem_SurfaceChart_AddAxId = window['AscDFH'].historyitem_type_SurfaceChart | 1;
|
||
window['AscDFH'].historyitem_SurfaceChart_AddBandFmt = window['AscDFH'].historyitem_type_SurfaceChart | 2;
|
||
window['AscDFH'].historyitem_SurfaceChart_AddSer = window['AscDFH'].historyitem_type_SurfaceChart | 3;
|
||
window['AscDFH'].historyitem_SurfaceChart_SetWireframe = window['AscDFH'].historyitem_type_SurfaceChart | 4;
|
||
|
||
window['AscDFH'].historyitem_BandFmt_SetIdx = window['AscDFH'].historyitem_type_BandFmt | 1;
|
||
window['AscDFH'].historyitem_BandFmt_SetSpPr = window['AscDFH'].historyitem_type_BandFmt | 2;
|
||
|
||
window['AscDFH'].historyitem_AreaChart_AddAxId = window['AscDFH'].historyitem_type_AreaChart | 1;
|
||
window['AscDFH'].historyitem_AreaChart_SetDLbls = window['AscDFH'].historyitem_type_AreaChart | 2;
|
||
window['AscDFH'].historyitem_AreaChart_SetDropLines = window['AscDFH'].historyitem_type_AreaChart | 3;
|
||
window['AscDFH'].historyitem_AreaChart_SetGrouping = window['AscDFH'].historyitem_type_AreaChart | 4;
|
||
window['AscDFH'].historyitem_AreaChart_AddSer = window['AscDFH'].historyitem_type_AreaChart | 5;
|
||
window['AscDFH'].historyitem_AreaChart_SetVaryColors = window['AscDFH'].historyitem_type_AreaChart | 6;
|
||
|
||
window['AscDFH'].historyitem_ScatterSer_SetDLbls = window['AscDFH'].historyitem_type_ScatterSer | 1;
|
||
window['AscDFH'].historyitem_ScatterSer_SetDPt = window['AscDFH'].historyitem_type_ScatterSer | 2;
|
||
window['AscDFH'].historyitem_ScatterSer_SetErrBars = window['AscDFH'].historyitem_type_ScatterSer | 3;
|
||
window['AscDFH'].historyitem_ScatterSer_SetIdx = window['AscDFH'].historyitem_type_ScatterSer | 4;
|
||
window['AscDFH'].historyitem_ScatterSer_SetMarker = window['AscDFH'].historyitem_type_ScatterSer | 5;
|
||
window['AscDFH'].historyitem_ScatterSer_SetOrder = window['AscDFH'].historyitem_type_ScatterSer | 6;
|
||
window['AscDFH'].historyitem_ScatterSer_SetSmooth = window['AscDFH'].historyitem_type_ScatterSer | 7;
|
||
window['AscDFH'].historyitem_ScatterSer_SetSpPr = window['AscDFH'].historyitem_type_ScatterSer | 8;
|
||
window['AscDFH'].historyitem_ScatterSer_SetTrendline = window['AscDFH'].historyitem_type_ScatterSer | 9;
|
||
window['AscDFH'].historyitem_ScatterSer_SetTx = window['AscDFH'].historyitem_type_ScatterSer | 10;
|
||
window['AscDFH'].historyitem_ScatterSer_SetXVal = window['AscDFH'].historyitem_type_ScatterSer | 11;
|
||
window['AscDFH'].historyitem_ScatterSer_SetYVal = window['AscDFH'].historyitem_type_ScatterSer | 12;
|
||
|
||
window['AscDFH'].historyitem_DPt_SetBubble3D = window['AscDFH'].historyitem_type_DPt | 1;
|
||
window['AscDFH'].historyitem_DPt_SetExplosion = window['AscDFH'].historyitem_type_DPt | 2;
|
||
window['AscDFH'].historyitem_DPt_SetIdx = window['AscDFH'].historyitem_type_DPt | 3;
|
||
window['AscDFH'].historyitem_DPt_SetInvertIfNegative = window['AscDFH'].historyitem_type_DPt | 4;
|
||
window['AscDFH'].historyitem_DPt_SetMarker = window['AscDFH'].historyitem_type_DPt | 5;
|
||
window['AscDFH'].historyitem_DPt_SetPictureOptions = window['AscDFH'].historyitem_type_DPt | 6;
|
||
window['AscDFH'].historyitem_DPt_SetSpPr = window['AscDFH'].historyitem_type_DPt | 7;
|
||
|
||
window['AscDFH'].historyitem_ErrBars_SetErrBarType = window['AscDFH'].historyitem_type_ErrBars | 1;
|
||
window['AscDFH'].historyitem_ErrBars_SetErrDir = window['AscDFH'].historyitem_type_ErrBars | 2;
|
||
window['AscDFH'].historyitem_ErrBars_SetErrValType = window['AscDFH'].historyitem_type_ErrBars | 3;
|
||
window['AscDFH'].historyitem_ErrBars_SetMinus = window['AscDFH'].historyitem_type_ErrBars | 4;
|
||
window['AscDFH'].historyitem_ErrBars_SetNoEndCap = window['AscDFH'].historyitem_type_ErrBars | 5;
|
||
window['AscDFH'].historyitem_ErrBars_SetPlus = window['AscDFH'].historyitem_type_ErrBars | 6;
|
||
window['AscDFH'].historyitem_ErrBars_SetSpPr = window['AscDFH'].historyitem_type_ErrBars | 7;
|
||
window['AscDFH'].historyitem_ErrBars_SetVal = window['AscDFH'].historyitem_type_ErrBars | 8;
|
||
|
||
window['AscDFH'].historyitem_MinusPlus_SetnNumLit = window['AscDFH'].historyitem_type_MinusPlus | 1;
|
||
window['AscDFH'].historyitem_MinusPlus_SetnNumRef = window['AscDFH'].historyitem_type_MinusPlus | 2;
|
||
|
||
window['AscDFH'].historyitem_NumLit_SetFormatCode = window['AscDFH'].historyitem_type_NumLit | 1;
|
||
window['AscDFH'].historyitem_NumLit_AddPt = window['AscDFH'].historyitem_type_NumLit | 2;
|
||
window['AscDFH'].historyitem_NumLit_SetPtCount = window['AscDFH'].historyitem_type_NumLit | 3;
|
||
|
||
window['AscDFH'].historyitem_NumericPoint_SetFormatCode = window['AscDFH'].historyitem_type_NumericPoint | 1;
|
||
window['AscDFH'].historyitem_NumericPoint_SetIdx = window['AscDFH'].historyitem_type_NumericPoint | 2;
|
||
window['AscDFH'].historyitem_NumericPoint_SetVal = window['AscDFH'].historyitem_type_NumericPoint | 3;
|
||
|
||
window['AscDFH'].historyitem_NumRef_SetF = window['AscDFH'].historyitem_type_NumRef | 1;
|
||
window['AscDFH'].historyitem_NumRef_SetNumCache = window['AscDFH'].historyitem_type_NumRef | 2;
|
||
|
||
window['AscDFH'].historyitem_Trendline_SetBackward = window['AscDFH'].historyitem_type_TrendLine | 1;
|
||
window['AscDFH'].historyitem_Trendline_SetDispEq = window['AscDFH'].historyitem_type_TrendLine | 2;
|
||
window['AscDFH'].historyitem_Trendline_SetDispRSqr = window['AscDFH'].historyitem_type_TrendLine | 3;
|
||
window['AscDFH'].historyitem_Trendline_SetForward = window['AscDFH'].historyitem_type_TrendLine | 4;
|
||
window['AscDFH'].historyitem_Trendline_SetIntercept = window['AscDFH'].historyitem_type_TrendLine | 5;
|
||
window['AscDFH'].historyitem_Trendline_SetName = window['AscDFH'].historyitem_type_TrendLine | 6;
|
||
window['AscDFH'].historyitem_Trendline_SetOrder = window['AscDFH'].historyitem_type_TrendLine | 7;
|
||
window['AscDFH'].historyitem_Trendline_SetPeriod = window['AscDFH'].historyitem_type_TrendLine | 8;
|
||
window['AscDFH'].historyitem_Trendline_SetSpPr = window['AscDFH'].historyitem_type_TrendLine | 9;
|
||
window['AscDFH'].historyitem_Trendline_SetTrendlineLbl = window['AscDFH'].historyitem_type_TrendLine | 10;
|
||
window['AscDFH'].historyitem_Trendline_SetTrendlineType = window['AscDFH'].historyitem_type_TrendLine | 11;
|
||
|
||
window['AscDFH'].historyitem_Tx_SetStrRef = window['AscDFH'].historyitem_type_Tx | 1;
|
||
window['AscDFH'].historyitem_Tx_SetVal = window['AscDFH'].historyitem_type_Tx | 2;
|
||
|
||
window['AscDFH'].historyitem_StrRef_SetF = window['AscDFH'].historyitem_type_StrRef | 1;
|
||
window['AscDFH'].historyitem_StrRef_SetStrCache = window['AscDFH'].historyitem_type_StrRef | 2;
|
||
|
||
window['AscDFH'].historyitem_StrCache_AddPt = window['AscDFH'].historyitem_type_StrCache | 1;
|
||
window['AscDFH'].historyitem_StrCache_SetPtCount = window['AscDFH'].historyitem_type_StrCache | 2;
|
||
|
||
window['AscDFH'].historyitem_StrPoint_SetIdx = window['AscDFH'].historyitem_type_StrPoint | 1;
|
||
window['AscDFH'].historyitem_StrPoint_SetVal = window['AscDFH'].historyitem_type_StrPoint | 2;
|
||
|
||
window['AscDFH'].historyitem_XVal_SetMultiLvlStrRef = window['AscDFH'].historyitem_type_XVal | 1;
|
||
window['AscDFH'].historyitem_XVal_SetNumLit = window['AscDFH'].historyitem_type_XVal | 2;
|
||
window['AscDFH'].historyitem_XVal_SetNumRef = window['AscDFH'].historyitem_type_XVal | 3;
|
||
window['AscDFH'].historyitem_XVal_SetStrLit = window['AscDFH'].historyitem_type_XVal | 4;
|
||
window['AscDFH'].historyitem_XVal_SetStrRef = window['AscDFH'].historyitem_type_XVal | 5;
|
||
|
||
window['AscDFH'].historyitem_MultiLvlStrRef_SetF = window['AscDFH'].historyitem_type_MultiLvlStrRef | 1;
|
||
window['AscDFH'].historyitem_MultiLvlStrRef_SetMultiLvlStrCache = window['AscDFH'].historyitem_type_MultiLvlStrRef | 2;
|
||
|
||
window['AscDFH'].historyitem_MultiLvlStrCache_SetLvl = window['AscDFH'].historyitem_type_MultiLvlStrCache | 1;
|
||
window['AscDFH'].historyitem_MultiLvlStrCache_SetPtCount = window['AscDFH'].historyitem_type_MultiLvlStrCache | 2;
|
||
|
||
window['AscDFH'].historyitem_StringLiteral_SetPt = window['AscDFH'].historyitem_type_StringLiteral | 1;
|
||
window['AscDFH'].historyitem_StringLiteral_SetPtCount = window['AscDFH'].historyitem_type_StringLiteral | 2;
|
||
|
||
window['AscDFH'].historyitem_YVal_SetNumLit = window['AscDFH'].historyitem_type_YVal | 1;
|
||
window['AscDFH'].historyitem_YVal_SetNumRef = window['AscDFH'].historyitem_type_YVal | 2;
|
||
|
||
window['AscDFH'].historyitem_AreaSeries_SetCat = window['AscDFH'].historyitem_type_AreaSeries | 1;
|
||
window['AscDFH'].historyitem_AreaSeries_SetDLbls = window['AscDFH'].historyitem_type_AreaSeries | 2;
|
||
window['AscDFH'].historyitem_AreaSeries_SetDPt = window['AscDFH'].historyitem_type_AreaSeries | 3;
|
||
window['AscDFH'].historyitem_AreaSeries_SetErrBars = window['AscDFH'].historyitem_type_AreaSeries | 4;
|
||
window['AscDFH'].historyitem_AreaSeries_SetIdx = window['AscDFH'].historyitem_type_AreaSeries | 5;
|
||
window['AscDFH'].historyitem_AreaSeries_SetOrder = window['AscDFH'].historyitem_type_AreaSeries | 6;
|
||
window['AscDFH'].historyitem_AreaSeries_SetPictureOptions = window['AscDFH'].historyitem_type_AreaSeries | 7;
|
||
window['AscDFH'].historyitem_AreaSeries_SetSpPr = window['AscDFH'].historyitem_type_AreaSeries | 8;
|
||
window['AscDFH'].historyitem_AreaSeries_SetTrendline = window['AscDFH'].historyitem_type_AreaSeries | 9;
|
||
window['AscDFH'].historyitem_AreaSeries_SetTx = window['AscDFH'].historyitem_type_AreaSeries | 10;
|
||
window['AscDFH'].historyitem_AreaSeries_SetVal = window['AscDFH'].historyitem_type_AreaSeries | 11;
|
||
|
||
window['AscDFH'].historyitem_Cat_SetMultiLvlStrRef = window['AscDFH'].historyitem_type_Cat | 1;
|
||
window['AscDFH'].historyitem_Cat_SetNumLit = window['AscDFH'].historyitem_type_Cat | 2;
|
||
window['AscDFH'].historyitem_Cat_SetNumRef = window['AscDFH'].historyitem_type_Cat | 3;
|
||
window['AscDFH'].historyitem_Cat_SetStrLit = window['AscDFH'].historyitem_type_Cat | 4;
|
||
window['AscDFH'].historyitem_Cat_SetStrRef = window['AscDFH'].historyitem_type_Cat | 5;
|
||
|
||
window['AscDFH'].historyitem_PictureOptions_SetApplyToEnd = window['AscDFH'].historyitem_type_PictureOptions | 1;
|
||
window['AscDFH'].historyitem_PictureOptions_SetApplyToFront = window['AscDFH'].historyitem_type_PictureOptions | 2;
|
||
window['AscDFH'].historyitem_PictureOptions_SetApplyToSides = window['AscDFH'].historyitem_type_PictureOptions | 3;
|
||
window['AscDFH'].historyitem_PictureOptions_SetPictureFormat = window['AscDFH'].historyitem_type_PictureOptions | 4;
|
||
window['AscDFH'].historyitem_PictureOptions_SetPictureStackUnit = window['AscDFH'].historyitem_type_PictureOptions | 5;
|
||
|
||
window['AscDFH'].historyitem_RadarSeries_SetCat = window['AscDFH'].historyitem_type_RadarSeries | 1;
|
||
window['AscDFH'].historyitem_RadarSeries_SetDLbls = window['AscDFH'].historyitem_type_RadarSeries | 2;
|
||
window['AscDFH'].historyitem_RadarSeries_SetDPt = window['AscDFH'].historyitem_type_RadarSeries | 3;
|
||
window['AscDFH'].historyitem_RadarSeries_SetIdx = window['AscDFH'].historyitem_type_RadarSeries | 4;
|
||
window['AscDFH'].historyitem_RadarSeries_SetMarker = window['AscDFH'].historyitem_type_RadarSeries | 5;
|
||
window['AscDFH'].historyitem_RadarSeries_SetOrder = window['AscDFH'].historyitem_type_RadarSeries | 6;
|
||
window['AscDFH'].historyitem_RadarSeries_SetSpPr = window['AscDFH'].historyitem_type_RadarSeries | 7;
|
||
window['AscDFH'].historyitem_RadarSeries_SetTx = window['AscDFH'].historyitem_type_RadarSeries | 8;
|
||
window['AscDFH'].historyitem_RadarSeries_SetVal = window['AscDFH'].historyitem_type_RadarSeries | 9;
|
||
|
||
window['AscDFH'].historyitem_BarSeries_SetCat = window['AscDFH'].historyitem_type_BarSeries | 1;
|
||
window['AscDFH'].historyitem_BarSeries_SetDLbls = window['AscDFH'].historyitem_type_BarSeries | 2;
|
||
window['AscDFH'].historyitem_BarSeries_SetDPt = window['AscDFH'].historyitem_type_BarSeries | 3;
|
||
window['AscDFH'].historyitem_BarSeries_SetErrBars = window['AscDFH'].historyitem_type_BarSeries | 4;
|
||
window['AscDFH'].historyitem_BarSeries_SetIdx = window['AscDFH'].historyitem_type_BarSeries | 5;
|
||
window['AscDFH'].historyitem_BarSeries_SetInvertIfNegative = window['AscDFH'].historyitem_type_BarSeries | 6;
|
||
window['AscDFH'].historyitem_BarSeries_SetOrder = window['AscDFH'].historyitem_type_BarSeries | 7;
|
||
window['AscDFH'].historyitem_BarSeries_SetPictureOptions = window['AscDFH'].historyitem_type_BarSeries | 8;
|
||
window['AscDFH'].historyitem_BarSeries_SetShape = window['AscDFH'].historyitem_type_BarSeries | 9;
|
||
window['AscDFH'].historyitem_BarSeries_SetSpPr = window['AscDFH'].historyitem_type_BarSeries | 10;
|
||
window['AscDFH'].historyitem_BarSeries_SetTrendline = window['AscDFH'].historyitem_type_BarSeries | 11;
|
||
window['AscDFH'].historyitem_BarSeries_SetTx = window['AscDFH'].historyitem_type_BarSeries | 12;
|
||
window['AscDFH'].historyitem_BarSeries_SetVal = window['AscDFH'].historyitem_type_BarSeries | 13;
|
||
|
||
window['AscDFH'].historyitem_LineSeries_SetCat = window['AscDFH'].historyitem_type_LineSeries | 1;
|
||
window['AscDFH'].historyitem_LineSeries_SetDLbls = window['AscDFH'].historyitem_type_LineSeries | 2;
|
||
window['AscDFH'].historyitem_LineSeries_SetDPt = window['AscDFH'].historyitem_type_LineSeries | 3;
|
||
window['AscDFH'].historyitem_LineSeries_SetErrBars = window['AscDFH'].historyitem_type_LineSeries | 4;
|
||
window['AscDFH'].historyitem_LineSeries_SetIdx = window['AscDFH'].historyitem_type_LineSeries | 5;
|
||
window['AscDFH'].historyitem_LineSeries_SetMarker = window['AscDFH'].historyitem_type_LineSeries | 6;
|
||
window['AscDFH'].historyitem_LineSeries_SetOrder = window['AscDFH'].historyitem_type_LineSeries | 7;
|
||
window['AscDFH'].historyitem_LineSeries_SetSmooth = window['AscDFH'].historyitem_type_LineSeries | 8;
|
||
window['AscDFH'].historyitem_LineSeries_SetSpPr = window['AscDFH'].historyitem_type_LineSeries | 9;
|
||
window['AscDFH'].historyitem_LineSeries_SetTrendline = window['AscDFH'].historyitem_type_LineSeries | 10;
|
||
window['AscDFH'].historyitem_LineSeries_SetTx = window['AscDFH'].historyitem_type_LineSeries | 11;
|
||
window['AscDFH'].historyitem_LineSeries_SetVal = window['AscDFH'].historyitem_type_LineSeries | 12;
|
||
|
||
window['AscDFH'].historyitem_PieSeries_SetCat = window['AscDFH'].historyitem_type_PieSeries | 1;
|
||
window['AscDFH'].historyitem_PieSeries_SetDLbls = window['AscDFH'].historyitem_type_PieSeries | 2;
|
||
window['AscDFH'].historyitem_PieSeries_SetDPt = window['AscDFH'].historyitem_type_PieSeries | 3;
|
||
window['AscDFH'].historyitem_PieSeries_SetExplosion = window['AscDFH'].historyitem_type_PieSeries | 4;
|
||
window['AscDFH'].historyitem_PieSeries_SetIdx = window['AscDFH'].historyitem_type_PieSeries | 5;
|
||
window['AscDFH'].historyitem_PieSeries_SetOrder = window['AscDFH'].historyitem_type_PieSeries | 6;
|
||
window['AscDFH'].historyitem_PieSeries_SetSpPr = window['AscDFH'].historyitem_type_PieSeries | 7;
|
||
window['AscDFH'].historyitem_PieSeries_SetTx = window['AscDFH'].historyitem_type_PieSeries | 8;
|
||
window['AscDFH'].historyitem_PieSeries_SetVal = window['AscDFH'].historyitem_type_PieSeries | 9;
|
||
|
||
window['AscDFH'].historyitem_SurfaceSeries_SetCat = window['AscDFH'].historyitem_type_SurfaceSeries | 1;
|
||
window['AscDFH'].historyitem_SurfaceSeries_SetIdx = window['AscDFH'].historyitem_type_SurfaceSeries | 2;
|
||
window['AscDFH'].historyitem_SurfaceSeries_SetOrder = window['AscDFH'].historyitem_type_SurfaceSeries | 3;
|
||
window['AscDFH'].historyitem_SurfaceSeries_SetSpPr = window['AscDFH'].historyitem_type_SurfaceSeries | 4;
|
||
window['AscDFH'].historyitem_SurfaceSeries_SetTx = window['AscDFH'].historyitem_type_SurfaceSeries | 5;
|
||
window['AscDFH'].historyitem_SurfaceSeries_SetVal = window['AscDFH'].historyitem_type_SurfaceSeries | 6;
|
||
|
||
window['AscDFH'].historyitem_BubbleSeries_SetBubble3D = window['AscDFH'].historyitem_type_BubbleSeries | 1;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetBubbleSize = window['AscDFH'].historyitem_type_BubbleSeries | 2;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetDLbls = window['AscDFH'].historyitem_type_BubbleSeries | 3;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetDPt = window['AscDFH'].historyitem_type_BubbleSeries | 4;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetErrBars = window['AscDFH'].historyitem_type_BubbleSeries | 5;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetIdx = window['AscDFH'].historyitem_type_BubbleSeries | 6;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetInvertIfNegative = window['AscDFH'].historyitem_type_BubbleSeries | 7;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetOrder = window['AscDFH'].historyitem_type_BubbleSeries | 8;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetSpPr = window['AscDFH'].historyitem_type_BubbleSeries | 9;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetTrendline = window['AscDFH'].historyitem_type_BubbleSeries | 10;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetTx = window['AscDFH'].historyitem_type_BubbleSeries | 11;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetXVal = window['AscDFH'].historyitem_type_BubbleSeries | 12;
|
||
window['AscDFH'].historyitem_BubbleSeries_SetYVal = window['AscDFH'].historyitem_type_BubbleSeries | 13;
|
||
|
||
window['AscDFH'].historyitem_ExternalData_SetAutoUpdate = window['AscDFH'].historyitem_type_ExternalData | 1;
|
||
window['AscDFH'].historyitem_ExternalData_SetId = window['AscDFH'].historyitem_type_ExternalData | 2;
|
||
|
||
window['AscDFH'].historyitem_PivotSource_SetFmtId = window['AscDFH'].historyitem_type_PivotSource | 1;
|
||
window['AscDFH'].historyitem_PivotSource_SetName = window['AscDFH'].historyitem_type_PivotSource | 2;
|
||
|
||
window['AscDFH'].historyitem_Protection_SetChartObject = window['AscDFH'].historyitem_type_Protection | 1;
|
||
window['AscDFH'].historyitem_Protection_SetData = window['AscDFH'].historyitem_type_Protection | 2;
|
||
window['AscDFH'].historyitem_Protection_SetFormatting = window['AscDFH'].historyitem_type_Protection | 3;
|
||
window['AscDFH'].historyitem_Protection_SetSelection = window['AscDFH'].historyitem_type_Protection | 4;
|
||
window['AscDFH'].historyitem_Protection_SetUserInterface = window['AscDFH'].historyitem_type_Protection | 5;
|
||
|
||
window['AscDFH'].historyitem_ChartWall_SetPictureOptions = window['AscDFH'].historyitem_type_ChartWall | 1;
|
||
window['AscDFH'].historyitem_ChartWall_SetSpPr = window['AscDFH'].historyitem_type_ChartWall | 2;
|
||
window['AscDFH'].historyitem_ChartWall_SetThickness = window['AscDFH'].historyitem_type_ChartWall | 3;
|
||
|
||
window['AscDFH'].historyitem_View3d_SetDepthPercent = window['AscDFH'].historyitem_type_View3d | 1;
|
||
window['AscDFH'].historyitem_View3d_SetHPercent = window['AscDFH'].historyitem_type_View3d | 2;
|
||
window['AscDFH'].historyitem_View3d_SetPerspective = window['AscDFH'].historyitem_type_View3d | 3;
|
||
window['AscDFH'].historyitem_View3d_SetRAngAx = window['AscDFH'].historyitem_type_View3d | 4;
|
||
window['AscDFH'].historyitem_View3d_SetRotX = window['AscDFH'].historyitem_type_View3d | 5;
|
||
window['AscDFH'].historyitem_View3d_SetRotY = window['AscDFH'].historyitem_type_View3d | 6;
|
||
|
||
window['AscDFH'].historyitem_ChartText_SetRich = window['AscDFH'].historyitem_type_ChartText | 1;
|
||
window['AscDFH'].historyitem_ChartText_SetStrRef = window['AscDFH'].historyitem_type_ChartText | 2;
|
||
|
||
window['AscDFH'].historyitem_ShapeStyle_SetLnRef = window['AscDFH'].historyitem_type_ShapeStyle | 1;
|
||
window['AscDFH'].historyitem_ShapeStyle_SetFillRef = window['AscDFH'].historyitem_type_ShapeStyle | 2;
|
||
window['AscDFH'].historyitem_ShapeStyle_SetFontRef = window['AscDFH'].historyitem_type_ShapeStyle | 3;
|
||
window['AscDFH'].historyitem_ShapeStyle_SetEffectRef = window['AscDFH'].historyitem_type_ShapeStyle | 4;
|
||
|
||
window['AscDFH'].historyitem_Xfrm_SetOffX = window['AscDFH'].historyitem_type_Xfrm | 1;
|
||
window['AscDFH'].historyitem_Xfrm_SetOffY = window['AscDFH'].historyitem_type_Xfrm | 2;
|
||
window['AscDFH'].historyitem_Xfrm_SetExtX = window['AscDFH'].historyitem_type_Xfrm | 3;
|
||
window['AscDFH'].historyitem_Xfrm_SetExtY = window['AscDFH'].historyitem_type_Xfrm | 4;
|
||
window['AscDFH'].historyitem_Xfrm_SetChOffX = window['AscDFH'].historyitem_type_Xfrm | 5;
|
||
window['AscDFH'].historyitem_Xfrm_SetChOffY = window['AscDFH'].historyitem_type_Xfrm | 6;
|
||
window['AscDFH'].historyitem_Xfrm_SetChExtX = window['AscDFH'].historyitem_type_Xfrm | 7;
|
||
window['AscDFH'].historyitem_Xfrm_SetChExtY = window['AscDFH'].historyitem_type_Xfrm | 8;
|
||
window['AscDFH'].historyitem_Xfrm_SetFlipH = window['AscDFH'].historyitem_type_Xfrm | 9;
|
||
window['AscDFH'].historyitem_Xfrm_SetFlipV = window['AscDFH'].historyitem_type_Xfrm | 10;
|
||
window['AscDFH'].historyitem_Xfrm_SetRot = window['AscDFH'].historyitem_type_Xfrm | 11;
|
||
window['AscDFH'].historyitem_Xfrm_SetParent = window['AscDFH'].historyitem_type_Xfrm | 12;
|
||
|
||
window['AscDFH'].historyitem_SpPr_SetBwMode = window['AscDFH'].historyitem_type_SpPr | 1;
|
||
window['AscDFH'].historyitem_SpPr_SetXfrm = window['AscDFH'].historyitem_type_SpPr | 2;
|
||
window['AscDFH'].historyitem_SpPr_SetGeometry = window['AscDFH'].historyitem_type_SpPr | 3;
|
||
window['AscDFH'].historyitem_SpPr_SetFill = window['AscDFH'].historyitem_type_SpPr | 4;
|
||
window['AscDFH'].historyitem_SpPr_SetLn = window['AscDFH'].historyitem_type_SpPr | 5;
|
||
window['AscDFH'].historyitem_SpPr_SetParent = window['AscDFH'].historyitem_type_SpPr | 6;
|
||
|
||
window['AscDFH'].historyitem_ClrScheme_AddClr = window['AscDFH'].historyitem_type_ClrScheme | 1;
|
||
window['AscDFH'].historyitem_ClrScheme_SetName = window['AscDFH'].historyitem_type_ClrScheme | 2;
|
||
|
||
window['AscDFH'].historyitem_ClrMap_SetClr = window['AscDFH'].historyitem_type_ClrMap | 1;
|
||
|
||
window['AscDFH'].historyitem_ExtraClrScheme_SetClrScheme = window['AscDFH'].historyitem_type_ExtraClrScheme | 1;
|
||
window['AscDFH'].historyitem_ExtraClrScheme_SetClrMap = window['AscDFH'].historyitem_type_ExtraClrScheme | 2;
|
||
|
||
window['AscDFH'].historyitem_FontCollection_SetFontScheme = window['AscDFH'].historyitem_type_FontCollection | 1;
|
||
window['AscDFH'].historyitem_FontCollection_SetLatin = window['AscDFH'].historyitem_type_FontCollection | 2;
|
||
window['AscDFH'].historyitem_FontCollection_SetEA = window['AscDFH'].historyitem_type_FontCollection | 3;
|
||
window['AscDFH'].historyitem_FontCollection_SetCS = window['AscDFH'].historyitem_type_FontCollection | 4;
|
||
|
||
window['AscDFH'].historyitem_FontScheme_SetName = window['AscDFH'].historyitem_type_FontScheme | 1;
|
||
window['AscDFH'].historyitem_FontScheme_SetMajorFont = window['AscDFH'].historyitem_type_FontScheme | 2;
|
||
window['AscDFH'].historyitem_FontScheme_SetMinorFont = window['AscDFH'].historyitem_type_FontScheme | 3;
|
||
|
||
window['AscDFH'].historyitem_FormatScheme_SetName = window['AscDFH'].historyitem_type_FormatScheme | 1;
|
||
window['AscDFH'].historyitem_FormatScheme_AddFillToStyleLst = window['AscDFH'].historyitem_type_FormatScheme | 2;
|
||
window['AscDFH'].historyitem_FormatScheme_AddLnToStyleLst = window['AscDFH'].historyitem_type_FormatScheme | 3;
|
||
window['AscDFH'].historyitem_FormatScheme_AddEffectToStyleLst = window['AscDFH'].historyitem_type_FormatScheme | 4;
|
||
window['AscDFH'].historyitem_FormatScheme_AddBgFillToStyleLst = window['AscDFH'].historyitem_type_FormatScheme | 5;
|
||
|
||
window['AscDFH'].historyitem_ThemeElements_SetClrScheme = window['AscDFH'].historyitem_type_ThemeElements | 1;
|
||
window['AscDFH'].historyitem_ThemeElements_SetFontScheme = window['AscDFH'].historyitem_type_ThemeElements | 2;
|
||
window['AscDFH'].historyitem_ThemeElements_SetFmtScheme = window['AscDFH'].historyitem_type_ThemeElements | 3;
|
||
|
||
window['AscDFH'].historyitem_HF_SetDt = window['AscDFH'].historyitem_type_HF | 1;
|
||
window['AscDFH'].historyitem_HF_SetFtr = window['AscDFH'].historyitem_type_HF | 2;
|
||
window['AscDFH'].historyitem_HF_SetHdr = window['AscDFH'].historyitem_type_HF | 3;
|
||
window['AscDFH'].historyitem_HF_SetSldNum = window['AscDFH'].historyitem_type_HF | 4;
|
||
|
||
window['AscDFH'].historyitem_BgPr_SetFill = window['AscDFH'].historyitem_type_BgPr | 1;
|
||
window['AscDFH'].historyitem_BgPr_SetShadeToTitle = window['AscDFH'].historyitem_type_BgPr | 2;
|
||
|
||
window['AscDFH'].historyitem_BgSetBwMode = window['AscDFH'].historyitem_type_Bg | 1;
|
||
window['AscDFH'].historyitem_BgSetBgPr = window['AscDFH'].historyitem_type_Bg | 2;
|
||
window['AscDFH'].historyitem_BgSetBgRef = window['AscDFH'].historyitem_type_Bg | 3;
|
||
|
||
window['AscDFH'].historyitem_PrintSettingsSetHeaderFooter = window['AscDFH'].historyitem_type_PrintSettings | 1;
|
||
window['AscDFH'].historyitem_PrintSettingsSetPageMargins = window['AscDFH'].historyitem_type_PrintSettings | 2;
|
||
window['AscDFH'].historyitem_PrintSettingsSetPageSetup = window['AscDFH'].historyitem_type_PrintSettings | 3;
|
||
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetAlignWithMargins = window['AscDFH'].historyitem_type_HeaderFooterChart | 1;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetDifferentFirst = window['AscDFH'].historyitem_type_HeaderFooterChart | 2;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetDifferentOddEven = window['AscDFH'].historyitem_type_HeaderFooterChart | 3;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetEvenFooter = window['AscDFH'].historyitem_type_HeaderFooterChart | 4;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetEvenHeader = window['AscDFH'].historyitem_type_HeaderFooterChart | 5;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetFirstFooter = window['AscDFH'].historyitem_type_HeaderFooterChart | 6;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetFirstHeader = window['AscDFH'].historyitem_type_HeaderFooterChart | 7;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetOddFooter = window['AscDFH'].historyitem_type_HeaderFooterChart | 8;
|
||
window['AscDFH'].historyitem_HeaderFooterChartSetOddHeader = window['AscDFH'].historyitem_type_HeaderFooterChart | 9;
|
||
|
||
window['AscDFH'].historyitem_PageMarginsSetB = window['AscDFH'].historyitem_type_PageMarginsChart | 1;
|
||
window['AscDFH'].historyitem_PageMarginsSetFooter = window['AscDFH'].historyitem_type_PageMarginsChart | 2;
|
||
window['AscDFH'].historyitem_PageMarginsSetHeader = window['AscDFH'].historyitem_type_PageMarginsChart | 3;
|
||
window['AscDFH'].historyitem_PageMarginsSetL = window['AscDFH'].historyitem_type_PageMarginsChart | 4;
|
||
window['AscDFH'].historyitem_PageMarginsSetR = window['AscDFH'].historyitem_type_PageMarginsChart | 5;
|
||
window['AscDFH'].historyitem_PageMarginsSetT = window['AscDFH'].historyitem_type_PageMarginsChart | 6;
|
||
|
||
window['AscDFH'].historyitem_PageSetupSetBlackAndWhite = window['AscDFH'].historyitem_type_PageSetup | 1;
|
||
window['AscDFH'].historyitem_PageSetupSetCopies = window['AscDFH'].historyitem_type_PageSetup | 2;
|
||
window['AscDFH'].historyitem_PageSetupSetDraft = window['AscDFH'].historyitem_type_PageSetup | 3;
|
||
window['AscDFH'].historyitem_PageSetupSetFirstPageNumber = window['AscDFH'].historyitem_type_PageSetup | 4;
|
||
window['AscDFH'].historyitem_PageSetupSetHorizontalDpi = window['AscDFH'].historyitem_type_PageSetup | 5;
|
||
window['AscDFH'].historyitem_PageSetupSetOrientation = window['AscDFH'].historyitem_type_PageSetup | 6;
|
||
window['AscDFH'].historyitem_PageSetupSetPaperHeight = window['AscDFH'].historyitem_type_PageSetup | 7;
|
||
window['AscDFH'].historyitem_PageSetupSetPaperSize = window['AscDFH'].historyitem_type_PageSetup | 8;
|
||
window['AscDFH'].historyitem_PageSetupSetPaperWidth = window['AscDFH'].historyitem_type_PageSetup | 9;
|
||
window['AscDFH'].historyitem_PageSetupSetUseFirstPageNumb = window['AscDFH'].historyitem_type_PageSetup | 10;
|
||
window['AscDFH'].historyitem_PageSetupSetVerticalDpi = window['AscDFH'].historyitem_type_PageSetup | 11;
|
||
|
||
window['AscDFH'].historyitem_ShapeSetBDeleted = window['AscDFH'].historyitem_type_Shape | 1;
|
||
window['AscDFH'].historyitem_ShapeSetNvSpPr = window['AscDFH'].historyitem_type_Shape | 2;
|
||
window['AscDFH'].historyitem_ShapeSetSpPr = window['AscDFH'].historyitem_type_Shape | 3;
|
||
window['AscDFH'].historyitem_ShapeSetStyle = window['AscDFH'].historyitem_type_Shape | 4;
|
||
window['AscDFH'].historyitem_ShapeSetTxBody = window['AscDFH'].historyitem_type_Shape | 5;
|
||
window['AscDFH'].historyitem_ShapeSetTextBoxContent = window['AscDFH'].historyitem_type_Shape | 6;
|
||
window['AscDFH'].historyitem_ShapeSetParent = window['AscDFH'].historyitem_type_Shape | 7;
|
||
window['AscDFH'].historyitem_ShapeSetGroup = window['AscDFH'].historyitem_type_Shape | 8;
|
||
window['AscDFH'].historyitem_ShapeSetBodyPr = window['AscDFH'].historyitem_type_Shape | 9;
|
||
window['AscDFH'].historyitem_ShapeSetWordShape = window['AscDFH'].historyitem_type_Shape | 10;
|
||
window['AscDFH'].historyitem_ShapeSetSignature = window['AscDFH'].historyitem_type_Shape | 11;
|
||
|
||
window['AscDFH'].historyitem_DispUnitsSetBuiltInUnit = window['AscDFH'].historyitem_type_DispUnits | 1;
|
||
window['AscDFH'].historyitem_DispUnitsSetCustUnit = window['AscDFH'].historyitem_type_DispUnits | 2;
|
||
window['AscDFH'].historyitem_DispUnitsSetDispUnitsLbl = window['AscDFH'].historyitem_type_DispUnits | 3;
|
||
window['AscDFH'].historyitem_DispUnitsSetParent = window['AscDFH'].historyitem_type_DispUnits | 4;
|
||
|
||
window['AscDFH'].historyitem_GroupShapeSetNvGrpSpPr = window['AscDFH'].historyitem_type_GroupShape | 1;
|
||
window['AscDFH'].historyitem_GroupShapeSetSpPr = window['AscDFH'].historyitem_type_GroupShape | 2;
|
||
window['AscDFH'].historyitem_GroupShapeAddToSpTree = window['AscDFH'].historyitem_type_GroupShape | 3;
|
||
window['AscDFH'].historyitem_GroupShapeSetParent = window['AscDFH'].historyitem_type_GroupShape | 4;
|
||
window['AscDFH'].historyitem_GroupShapeSetGroup = window['AscDFH'].historyitem_type_GroupShape | 5;
|
||
window['AscDFH'].historyitem_GroupShapeRemoveFromSpTree = window['AscDFH'].historyitem_type_GroupShape | 6;
|
||
|
||
window['AscDFH'].historyitem_ImageShapeSetNvPicPr = window['AscDFH'].historyitem_type_ImageShape | 1;
|
||
window['AscDFH'].historyitem_ImageShapeSetSpPr = window['AscDFH'].historyitem_type_ImageShape | 2;
|
||
window['AscDFH'].historyitem_ImageShapeSetBlipFill = window['AscDFH'].historyitem_type_ImageShape | 3;
|
||
window['AscDFH'].historyitem_ImageShapeSetParent = window['AscDFH'].historyitem_type_ImageShape | 4;
|
||
window['AscDFH'].historyitem_ImageShapeSetGroup = window['AscDFH'].historyitem_type_ImageShape | 5;
|
||
window['AscDFH'].historyitem_ImageShapeSetStyle = window['AscDFH'].historyitem_type_ImageShape | 6;
|
||
window['AscDFH'].historyitem_ImageShapeSetData = window['AscDFH'].historyitem_type_ImageShape | 7;
|
||
window['AscDFH'].historyitem_ImageShapeSetApplicationId = window['AscDFH'].historyitem_type_ImageShape | 8;
|
||
window['AscDFH'].historyitem_ImageShapeSetPixSizes = window['AscDFH'].historyitem_type_ImageShape | 9;
|
||
window['AscDFH'].historyitem_ImageShapeSetObjectFile = window['AscDFH'].historyitem_type_ImageShape | 10;
|
||
|
||
window['AscDFH'].historyitem_GeometrySetParent = window['AscDFH'].historyitem_type_Geometry | 1;
|
||
window['AscDFH'].historyitem_GeometryAddAdj = window['AscDFH'].historyitem_type_Geometry | 2;
|
||
window['AscDFH'].historyitem_GeometryAddGuide = window['AscDFH'].historyitem_type_Geometry | 3;
|
||
window['AscDFH'].historyitem_GeometryAddCnx = window['AscDFH'].historyitem_type_Geometry | 4;
|
||
window['AscDFH'].historyitem_GeometryAddHandleXY = window['AscDFH'].historyitem_type_Geometry | 5;
|
||
window['AscDFH'].historyitem_GeometryAddHandlePolar = window['AscDFH'].historyitem_type_Geometry | 6;
|
||
window['AscDFH'].historyitem_GeometryAddPath = window['AscDFH'].historyitem_type_Geometry | 7;
|
||
window['AscDFH'].historyitem_GeometryAddRect = window['AscDFH'].historyitem_type_Geometry | 8;
|
||
window['AscDFH'].historyitem_GeometrySetPreset = window['AscDFH'].historyitem_type_Geometry | 9;
|
||
|
||
window['AscDFH'].historyitem_PathSetStroke = window['AscDFH'].historyitem_type_Path | 1;
|
||
window['AscDFH'].historyitem_PathSetExtrusionOk = window['AscDFH'].historyitem_type_Path | 2;
|
||
window['AscDFH'].historyitem_PathSetFill = window['AscDFH'].historyitem_type_Path | 3;
|
||
window['AscDFH'].historyitem_PathSetPathH = window['AscDFH'].historyitem_type_Path | 4;
|
||
window['AscDFH'].historyitem_PathSetPathW = window['AscDFH'].historyitem_type_Path | 5;
|
||
window['AscDFH'].historyitem_PathAddPathCommand = window['AscDFH'].historyitem_type_Path | 6;
|
||
|
||
window['AscDFH'].historyitem_TextBodySetBodyPr = window['AscDFH'].historyitem_type_TextBody | 1;
|
||
window['AscDFH'].historyitem_TextBodySetLstStyle = window['AscDFH'].historyitem_type_TextBody | 2;
|
||
window['AscDFH'].historyitem_TextBodySetContent = window['AscDFH'].historyitem_type_TextBody | 3;
|
||
window['AscDFH'].historyitem_TextBodySetParent = window['AscDFH'].historyitem_type_TextBody | 4;
|
||
|
||
window['AscDFH'].historyitem_CatAxSetAuto = window['AscDFH'].historyitem_type_CatAx | 1;
|
||
window['AscDFH'].historyitem_CatAxSetAxId = window['AscDFH'].historyitem_type_CatAx | 2;
|
||
window['AscDFH'].historyitem_CatAxSetAxPos = window['AscDFH'].historyitem_type_CatAx | 3;
|
||
window['AscDFH'].historyitem_CatAxSetCrossAx = window['AscDFH'].historyitem_type_CatAx | 4;
|
||
window['AscDFH'].historyitem_CatAxSetCrosses = window['AscDFH'].historyitem_type_CatAx | 5;
|
||
window['AscDFH'].historyitem_CatAxSetCrossesAt = window['AscDFH'].historyitem_type_CatAx | 6;
|
||
window['AscDFH'].historyitem_CatAxSetDelete = window['AscDFH'].historyitem_type_CatAx | 7;
|
||
window['AscDFH'].historyitem_CatAxSetLblAlgn = window['AscDFH'].historyitem_type_CatAx | 8;
|
||
window['AscDFH'].historyitem_CatAxSetLblOffset = window['AscDFH'].historyitem_type_CatAx | 9;
|
||
window['AscDFH'].historyitem_CatAxSetMajorGridlines = window['AscDFH'].historyitem_type_CatAx | 10;
|
||
window['AscDFH'].historyitem_CatAxSetMajorTickMark = window['AscDFH'].historyitem_type_CatAx | 11;
|
||
window['AscDFH'].historyitem_CatAxSetMinorGridlines = window['AscDFH'].historyitem_type_CatAx | 12;
|
||
window['AscDFH'].historyitem_CatAxSetMinorTickMark = window['AscDFH'].historyitem_type_CatAx | 13;
|
||
window['AscDFH'].historyitem_CatAxSetNoMultiLvlLbl = window['AscDFH'].historyitem_type_CatAx | 14;
|
||
window['AscDFH'].historyitem_CatAxSetNumFmt = window['AscDFH'].historyitem_type_CatAx | 15;
|
||
window['AscDFH'].historyitem_CatAxSetScaling = window['AscDFH'].historyitem_type_CatAx | 16;
|
||
window['AscDFH'].historyitem_CatAxSetSpPr = window['AscDFH'].historyitem_type_CatAx | 17;
|
||
window['AscDFH'].historyitem_CatAxSetTickLblPos = window['AscDFH'].historyitem_type_CatAx | 18;
|
||
window['AscDFH'].historyitem_CatAxSetTickLblSkip = window['AscDFH'].historyitem_type_CatAx | 19;
|
||
window['AscDFH'].historyitem_CatAxSetTickMarkSkip = window['AscDFH'].historyitem_type_CatAx | 20;
|
||
window['AscDFH'].historyitem_CatAxSetTitle = window['AscDFH'].historyitem_type_CatAx | 21;
|
||
window['AscDFH'].historyitem_CatAxSetTxPr = window['AscDFH'].historyitem_type_CatAx | 22;
|
||
|
||
window['AscDFH'].historyitem_ValAxSetAxId = window['AscDFH'].historyitem_type_ValAx | 1;
|
||
window['AscDFH'].historyitem_ValAxSetAxPos = window['AscDFH'].historyitem_type_ValAx | 2;
|
||
window['AscDFH'].historyitem_ValAxSetCrossAx = window['AscDFH'].historyitem_type_ValAx | 3;
|
||
window['AscDFH'].historyitem_ValAxSetCrossBetween = window['AscDFH'].historyitem_type_ValAx | 4;
|
||
window['AscDFH'].historyitem_ValAxSetCrosses = window['AscDFH'].historyitem_type_ValAx | 5;
|
||
window['AscDFH'].historyitem_ValAxSetCrossesAt = window['AscDFH'].historyitem_type_ValAx | 6;
|
||
window['AscDFH'].historyitem_ValAxSetDelete = window['AscDFH'].historyitem_type_ValAx | 7;
|
||
window['AscDFH'].historyitem_ValAxSetDispUnits = window['AscDFH'].historyitem_type_ValAx | 8;
|
||
window['AscDFH'].historyitem_ValAxSetMajorGridlines = window['AscDFH'].historyitem_type_ValAx | 9;
|
||
window['AscDFH'].historyitem_ValAxSetMajorTickMark = window['AscDFH'].historyitem_type_ValAx | 10;
|
||
window['AscDFH'].historyitem_ValAxSetMajorUnit = window['AscDFH'].historyitem_type_ValAx | 11;
|
||
window['AscDFH'].historyitem_ValAxSetMinorGridlines = window['AscDFH'].historyitem_type_ValAx | 12;
|
||
window['AscDFH'].historyitem_ValAxSetMinorTickMark = window['AscDFH'].historyitem_type_ValAx | 13;
|
||
window['AscDFH'].historyitem_ValAxSetMinorUnit = window['AscDFH'].historyitem_type_ValAx | 14;
|
||
window['AscDFH'].historyitem_ValAxSetNumFmt = window['AscDFH'].historyitem_type_ValAx | 15;
|
||
window['AscDFH'].historyitem_ValAxSetScaling = window['AscDFH'].historyitem_type_ValAx | 16;
|
||
window['AscDFH'].historyitem_ValAxSetSpPr = window['AscDFH'].historyitem_type_ValAx | 17;
|
||
window['AscDFH'].historyitem_ValAxSetTickLblPos = window['AscDFH'].historyitem_type_ValAx | 18;
|
||
window['AscDFH'].historyitem_ValAxSetTitle = window['AscDFH'].historyitem_type_ValAx | 19;
|
||
window['AscDFH'].historyitem_ValAxSetTxPr = window['AscDFH'].historyitem_type_ValAx | 20;
|
||
|
||
window['AscDFH'].historyitem_WrapPolygonSetEdited = window['AscDFH'].historyitem_type_WrapPolygon | 1;
|
||
window['AscDFH'].historyitem_WrapPolygonSetRelPoints = window['AscDFH'].historyitem_type_WrapPolygon | 2;
|
||
window['AscDFH'].historyitem_WrapPolygonSetWrapSide = window['AscDFH'].historyitem_type_WrapPolygon | 3;
|
||
|
||
window['AscDFH'].historyitem_DateAxAuto = window['AscDFH'].historyitem_type_DateAx | 1;
|
||
window['AscDFH'].historyitem_DateAxAxId = window['AscDFH'].historyitem_type_DateAx | 2;
|
||
window['AscDFH'].historyitem_DateAxAxPos = window['AscDFH'].historyitem_type_DateAx | 3;
|
||
window['AscDFH'].historyitem_DateAxBaseTimeUnit = window['AscDFH'].historyitem_type_DateAx | 4;
|
||
window['AscDFH'].historyitem_DateAxCrossAx = window['AscDFH'].historyitem_type_DateAx | 5;
|
||
window['AscDFH'].historyitem_DateAxCrosses = window['AscDFH'].historyitem_type_DateAx | 6;
|
||
window['AscDFH'].historyitem_DateAxCrossesAt = window['AscDFH'].historyitem_type_DateAx | 7;
|
||
window['AscDFH'].historyitem_DateAxDelete = window['AscDFH'].historyitem_type_DateAx | 8;
|
||
window['AscDFH'].historyitem_DateAxLblOffset = window['AscDFH'].historyitem_type_DateAx | 9;
|
||
window['AscDFH'].historyitem_DateAxMajorGridlines = window['AscDFH'].historyitem_type_DateAx | 10;
|
||
window['AscDFH'].historyitem_DateAxMajorTickMark = window['AscDFH'].historyitem_type_DateAx | 11;
|
||
window['AscDFH'].historyitem_DateAxMajorTimeUnit = window['AscDFH'].historyitem_type_DateAx | 12;
|
||
window['AscDFH'].historyitem_DateAxMajorUnit = window['AscDFH'].historyitem_type_DateAx | 13;
|
||
window['AscDFH'].historyitem_DateAxMinorGridlines = window['AscDFH'].historyitem_type_DateAx | 14;
|
||
window['AscDFH'].historyitem_DateAxMinorTickMark = window['AscDFH'].historyitem_type_DateAx | 15;
|
||
window['AscDFH'].historyitem_DateAxMinorTimeUnit = window['AscDFH'].historyitem_type_DateAx | 16;
|
||
window['AscDFH'].historyitem_DateAxMinorUnit = window['AscDFH'].historyitem_type_DateAx | 17;
|
||
window['AscDFH'].historyitem_DateAxNumFmt = window['AscDFH'].historyitem_type_DateAx | 18;
|
||
window['AscDFH'].historyitem_DateAxScaling = window['AscDFH'].historyitem_type_DateAx | 19;
|
||
window['AscDFH'].historyitem_DateAxSpPr = window['AscDFH'].historyitem_type_DateAx | 20;
|
||
window['AscDFH'].historyitem_DateAxTickLblPos = window['AscDFH'].historyitem_type_DateAx | 21;
|
||
window['AscDFH'].historyitem_DateAxTitle = window['AscDFH'].historyitem_type_DateAx | 22;
|
||
window['AscDFH'].historyitem_DateAxTxPr = window['AscDFH'].historyitem_type_DateAx | 23;
|
||
|
||
window['AscDFH'].historyitem_SerAxSetAxId = window['AscDFH'].historyitem_type_SerAx | 1;
|
||
window['AscDFH'].historyitem_SerAxSetAxPos = window['AscDFH'].historyitem_type_SerAx | 2;
|
||
window['AscDFH'].historyitem_SerAxSetCrossAx = window['AscDFH'].historyitem_type_SerAx | 3;
|
||
window['AscDFH'].historyitem_SerAxSetCrosses = window['AscDFH'].historyitem_type_SerAx | 4;
|
||
window['AscDFH'].historyitem_SerAxSetCrossesAt = window['AscDFH'].historyitem_type_SerAx | 5;
|
||
window['AscDFH'].historyitem_SerAxSetDelete = window['AscDFH'].historyitem_type_SerAx | 6;
|
||
window['AscDFH'].historyitem_SerAxSetMajorGridlines = window['AscDFH'].historyitem_type_SerAx | 7;
|
||
window['AscDFH'].historyitem_SerAxSetMajorTickMark = window['AscDFH'].historyitem_type_SerAx | 8;
|
||
window['AscDFH'].historyitem_SerAxSetMinorGridlines = window['AscDFH'].historyitem_type_SerAx | 9;
|
||
window['AscDFH'].historyitem_SerAxSetMinorTickMark = window['AscDFH'].historyitem_type_SerAx | 10;
|
||
window['AscDFH'].historyitem_SerAxSetNumFmt = window['AscDFH'].historyitem_type_SerAx | 11;
|
||
window['AscDFH'].historyitem_SerAxSetScaling = window['AscDFH'].historyitem_type_SerAx | 12;
|
||
window['AscDFH'].historyitem_SerAxSetSpPr = window['AscDFH'].historyitem_type_SerAx | 13;
|
||
window['AscDFH'].historyitem_SerAxSetTickLblPos = window['AscDFH'].historyitem_type_SerAx | 14;
|
||
window['AscDFH'].historyitem_SerAxSetTickLblSkip = window['AscDFH'].historyitem_type_SerAx | 15;
|
||
window['AscDFH'].historyitem_SerAxSetTickMarkSkip = window['AscDFH'].historyitem_type_SerAx | 16;
|
||
window['AscDFH'].historyitem_SerAxSetTitle = window['AscDFH'].historyitem_type_SerAx | 17;
|
||
window['AscDFH'].historyitem_SerAxSetTxPr = window['AscDFH'].historyitem_type_SerAx | 18;
|
||
|
||
window['AscDFH'].historyitem_Title_SetLayout = window['AscDFH'].historyitem_type_Title | 1;
|
||
window['AscDFH'].historyitem_Title_SetOverlay = window['AscDFH'].historyitem_type_Title | 2;
|
||
window['AscDFH'].historyitem_Title_SetSpPr = window['AscDFH'].historyitem_type_Title | 3;
|
||
window['AscDFH'].historyitem_Title_SetTx = window['AscDFH'].historyitem_type_Title | 4;
|
||
window['AscDFH'].historyitem_Title_SetTxPr = window['AscDFH'].historyitem_type_Title | 5;
|
||
|
||
window['AscDFH'].historyitem_SlideSetComments = window['AscDFH'].historyitem_type_Slide | 1;
|
||
window['AscDFH'].historyitem_SlideSetShow = window['AscDFH'].historyitem_type_Slide | 2;
|
||
window['AscDFH'].historyitem_SlideSetShowPhAnim = window['AscDFH'].historyitem_type_Slide | 3;
|
||
window['AscDFH'].historyitem_SlideSetShowMasterSp = window['AscDFH'].historyitem_type_Slide | 4;
|
||
window['AscDFH'].historyitem_SlideSetLayout = window['AscDFH'].historyitem_type_Slide | 5;
|
||
window['AscDFH'].historyitem_SlideSetNum = window['AscDFH'].historyitem_type_Slide | 6;
|
||
window['AscDFH'].historyitem_SlideSetTiming = window['AscDFH'].historyitem_type_Slide | 7;
|
||
window['AscDFH'].historyitem_SlideSetSize = window['AscDFH'].historyitem_type_Slide | 8;
|
||
window['AscDFH'].historyitem_SlideSetBg = window['AscDFH'].historyitem_type_Slide | 9;
|
||
window['AscDFH'].historyitem_SlideSetLocks = window['AscDFH'].historyitem_type_Slide | 10;
|
||
window['AscDFH'].historyitem_SlideRemoveFromSpTree = window['AscDFH'].historyitem_type_Slide | 11;
|
||
window['AscDFH'].historyitem_SlideAddToSpTree = window['AscDFH'].historyitem_type_Slide | 12;
|
||
window['AscDFH'].historyitem_SlideSetCSldName = window['AscDFH'].historyitem_type_Slide | 13;
|
||
window['AscDFH'].historyitem_SlideSetClrMapOverride = window['AscDFH'].historyitem_type_Slide | 14;
|
||
window['AscDFH'].historyitem_SlideSetNotes = window['AscDFH'].historyitem_type_Slide | 15;
|
||
|
||
window['AscDFH'].historyitem_SlideLayoutSetMaster = window['AscDFH'].historyitem_type_SlideLayout | 1;
|
||
window['AscDFH'].historyitem_SlideLayoutSetMatchingName = window['AscDFH'].historyitem_type_SlideLayout | 2;
|
||
window['AscDFH'].historyitem_SlideLayoutSetType = window['AscDFH'].historyitem_type_SlideLayout | 3;
|
||
window['AscDFH'].historyitem_SlideLayoutSetBg = window['AscDFH'].historyitem_type_SlideLayout | 4;
|
||
window['AscDFH'].historyitem_SlideLayoutSetCSldName = window['AscDFH'].historyitem_type_SlideLayout | 5;
|
||
window['AscDFH'].historyitem_SlideLayoutSetShow = window['AscDFH'].historyitem_type_SlideLayout | 6;
|
||
window['AscDFH'].historyitem_SlideLayoutSetShowPhAnim = window['AscDFH'].historyitem_type_SlideLayout | 7;
|
||
window['AscDFH'].historyitem_SlideLayoutSetShowMasterSp = window['AscDFH'].historyitem_type_SlideLayout | 8;
|
||
window['AscDFH'].historyitem_SlideLayoutSetClrMapOverride = window['AscDFH'].historyitem_type_SlideLayout | 9;
|
||
window['AscDFH'].historyitem_SlideLayoutAddToSpTree = window['AscDFH'].historyitem_type_SlideLayout | 10;
|
||
window['AscDFH'].historyitem_SlideLayoutSetSize = window['AscDFH'].historyitem_type_SlideLayout | 11;
|
||
|
||
window['AscDFH'].historyitem_SlideMasterAddToSpTree = window['AscDFH'].historyitem_type_SlideMaster | 1;
|
||
window['AscDFH'].historyitem_SlideMasterSetTheme = window['AscDFH'].historyitem_type_SlideMaster | 2;
|
||
window['AscDFH'].historyitem_SlideMasterSetBg = window['AscDFH'].historyitem_type_SlideMaster | 3;
|
||
window['AscDFH'].historyitem_SlideMasterSetTxStyles = window['AscDFH'].historyitem_type_SlideMaster | 4;
|
||
window['AscDFH'].historyitem_SlideMasterSetCSldName = window['AscDFH'].historyitem_type_SlideMaster | 5;
|
||
window['AscDFH'].historyitem_SlideMasterSetClrMapOverride = window['AscDFH'].historyitem_type_SlideMaster | 6;
|
||
window['AscDFH'].historyitem_SlideMasterAddLayout = window['AscDFH'].historyitem_type_SlideMaster | 7;
|
||
window['AscDFH'].historyitem_SlideMasterSetThemeIndex = window['AscDFH'].historyitem_type_SlideMaster | 8;
|
||
window['AscDFH'].historyitem_SlideMasterSetSize = window['AscDFH'].historyitem_type_SlideMaster | 9;
|
||
|
||
window['AscDFH'].historyitem_SlideCommentsAddComment = window['AscDFH'].historyitem_type_SlideComments | 1;
|
||
window['AscDFH'].historyitem_SlideCommentsRemoveComment = window['AscDFH'].historyitem_type_SlideComments | 2;
|
||
|
||
window['AscDFH'].historyitem_PropLockerSetId = window['AscDFH'].historyitem_type_PropLocker | 1;
|
||
|
||
window['AscDFH'].historyitem_ThemeSetColorScheme = window['AscDFH'].historyitem_type_Theme | 1;
|
||
window['AscDFH'].historyitem_ThemeSetFontScheme = window['AscDFH'].historyitem_type_Theme | 2;
|
||
window['AscDFH'].historyitem_ThemeSetFmtScheme = window['AscDFH'].historyitem_type_Theme | 3;
|
||
window['AscDFH'].historyitem_ThemeSetName = window['AscDFH'].historyitem_type_Theme | 4;
|
||
window['AscDFH'].historyitem_ThemeSetIsThemeOverride = window['AscDFH'].historyitem_type_Theme | 5;
|
||
window['AscDFH'].historyitem_ThemeSetSpDef = window['AscDFH'].historyitem_type_Theme | 6;
|
||
window['AscDFH'].historyitem_ThemeSetLnDef = window['AscDFH'].historyitem_type_Theme | 7;
|
||
window['AscDFH'].historyitem_ThemeSetTxDef = window['AscDFH'].historyitem_type_Theme | 8;
|
||
window['AscDFH'].historyitem_ThemeAddExtraClrScheme = window['AscDFH'].historyitem_type_Theme | 9;
|
||
|
||
window['AscDFH'].historyitem_GraphicFrameSetSpPr = window['AscDFH'].historyitem_type_GraphicFrame | 1;
|
||
window['AscDFH'].historyitem_GraphicFrameSetGraphicObject = window['AscDFH'].historyitem_type_GraphicFrame | 2;
|
||
window['AscDFH'].historyitem_GraphicFrameSetSetNvSpPr = window['AscDFH'].historyitem_type_GraphicFrame | 3;
|
||
window['AscDFH'].historyitem_GraphicFrameSetSetParent = window['AscDFH'].historyitem_type_GraphicFrame | 4;
|
||
window['AscDFH'].historyitem_GraphicFrameSetSetGroup = window['AscDFH'].historyitem_type_GraphicFrame | 5;
|
||
|
||
|
||
window['AscDFH'].historyitem_Sparkline_Type = window['AscDFH'].historyitem_type_Sparkline | 1;
|
||
window['AscDFH'].historyitem_Sparkline_LineWeight = window['AscDFH'].historyitem_type_Sparkline | 2;
|
||
window['AscDFH'].historyitem_Sparkline_DisplayEmptyCellsAs = window['AscDFH'].historyitem_type_Sparkline | 3;
|
||
window['AscDFH'].historyitem_Sparkline_Markers = window['AscDFH'].historyitem_type_Sparkline | 4;
|
||
window['AscDFH'].historyitem_Sparkline_High = window['AscDFH'].historyitem_type_Sparkline | 5;
|
||
window['AscDFH'].historyitem_Sparkline_Low = window['AscDFH'].historyitem_type_Sparkline | 6;
|
||
window['AscDFH'].historyitem_Sparkline_First = window['AscDFH'].historyitem_type_Sparkline | 7;
|
||
window['AscDFH'].historyitem_Sparkline_Last = window['AscDFH'].historyitem_type_Sparkline | 8;
|
||
window['AscDFH'].historyitem_Sparkline_Negative = window['AscDFH'].historyitem_type_Sparkline | 9;
|
||
window['AscDFH'].historyitem_Sparkline_DisplayXAxis = window['AscDFH'].historyitem_type_Sparkline | 10;
|
||
window['AscDFH'].historyitem_Sparkline_DisplayHidden = window['AscDFH'].historyitem_type_Sparkline | 11;
|
||
window['AscDFH'].historyitem_Sparkline_MinAxisType = window['AscDFH'].historyitem_type_Sparkline | 12;
|
||
window['AscDFH'].historyitem_Sparkline_MaxAxisType = window['AscDFH'].historyitem_type_Sparkline | 13;
|
||
window['AscDFH'].historyitem_Sparkline_RightToLeft = window['AscDFH'].historyitem_type_Sparkline | 14;
|
||
window['AscDFH'].historyitem_Sparkline_ManualMax = window['AscDFH'].historyitem_type_Sparkline | 15;
|
||
window['AscDFH'].historyitem_Sparkline_ManualMin = window['AscDFH'].historyitem_type_Sparkline | 16;
|
||
window['AscDFH'].historyitem_Sparkline_DateAxis = window['AscDFH'].historyitem_type_Sparkline | 17;
|
||
window['AscDFH'].historyitem_Sparkline_ColorSeries = window['AscDFH'].historyitem_type_Sparkline | 18;
|
||
window['AscDFH'].historyitem_Sparkline_ColorNegative = window['AscDFH'].historyitem_type_Sparkline | 19;
|
||
window['AscDFH'].historyitem_Sparkline_ColorAxis = window['AscDFH'].historyitem_type_Sparkline | 20;
|
||
window['AscDFH'].historyitem_Sparkline_ColorMarkers = window['AscDFH'].historyitem_type_Sparkline | 21;
|
||
window['AscDFH'].historyitem_Sparkline_ColorFirst = window['AscDFH'].historyitem_type_Sparkline | 22;
|
||
window['AscDFH'].historyitem_Sparkline_colorLast = window['AscDFH'].historyitem_type_Sparkline | 23;
|
||
window['AscDFH'].historyitem_Sparkline_ColorHigh = window['AscDFH'].historyitem_type_Sparkline | 24;
|
||
window['AscDFH'].historyitem_Sparkline_ColorLow = window['AscDFH'].historyitem_type_Sparkline | 25;
|
||
window['AscDFH'].historyitem_Sparkline_F = window['AscDFH'].historyitem_type_Sparkline | 26;
|
||
window['AscDFH'].historyitem_Sparkline_ChangeData = window['AscDFH'].historyitem_type_Sparkline | 27;
|
||
window['AscDFH'].historyitem_Sparkline_RemoveData = window['AscDFH'].historyitem_type_Sparkline | 28;
|
||
window['AscDFH'].historyitem_Sparkline_RemoveSparkline = window['AscDFH'].historyitem_type_Sparkline | 29;
|
||
|
||
window['AscDFH'].historyitem_PivotTableDefinitionDelete = window['AscDFH'].historyitem_type_PivotTableDefinition | 1;
|
||
|
||
|
||
window['AscDFH'].historyitem_NotesMasterSetHF = window['AscDFH'].historyitem_type_NotesMaster | 1;
|
||
window['AscDFH'].historyitem_NotesMasterSetNotesStyle = window['AscDFH'].historyitem_type_NotesMaster | 2;
|
||
window['AscDFH'].historyitem_NotesMasterSetNotesTheme = window['AscDFH'].historyitem_type_NotesMaster | 3;
|
||
window['AscDFH'].historyitem_NotesMasterAddToSpTree = window['AscDFH'].historyitem_type_NotesMaster | 4;
|
||
window['AscDFH'].historyitem_NotesMasterRemoveFromTree = window['AscDFH'].historyitem_type_NotesMaster | 5;
|
||
window['AscDFH'].historyitem_NotesMasterSetBg = window['AscDFH'].historyitem_type_NotesMaster | 6;
|
||
window['AscDFH'].historyitem_NotesMasterAddToNotesLst = window['AscDFH'].historyitem_type_NotesMaster | 7;
|
||
window['AscDFH'].historyitem_NotesMasterSetName = window['AscDFH'].historyitem_type_NotesMaster | 8;
|
||
|
||
|
||
window['AscDFH'].historyitem_NotesSetClrMap = window['AscDFH'].historyitem_type_Notes | 1;
|
||
window['AscDFH'].historyitem_NotesSetShowMasterPhAnim = window['AscDFH'].historyitem_type_Notes | 2;
|
||
window['AscDFH'].historyitem_NotesSetShowMasterSp = window['AscDFH'].historyitem_type_Notes | 3;
|
||
window['AscDFH'].historyitem_NotesAddToSpTree = window['AscDFH'].historyitem_type_Notes | 4;
|
||
window['AscDFH'].historyitem_NotesRemoveFromTree = window['AscDFH'].historyitem_type_Notes | 5;
|
||
window['AscDFH'].historyitem_NotesSetBg = window['AscDFH'].historyitem_type_Notes | 6;
|
||
window['AscDFH'].historyitem_NotesSetName = window['AscDFH'].historyitem_type_Notes | 7;
|
||
window['AscDFH'].historyitem_NotesSetSlide = window['AscDFH'].historyitem_type_Notes | 8;
|
||
window['AscDFH'].historyitem_NotesSetNotesMaster = window['AscDFH'].historyitem_type_Notes | 9;
|
||
|
||
window['AscDFH'].historyitem_PresentationSectionSetName = window['AscDFH'].historyitem_type_PresentationSection | 1;
|
||
window['AscDFH'].historyitem_PresentationSectionSetGuid = window['AscDFH'].historyitem_type_PresentationSection | 2;
|
||
window['AscDFH'].historyitem_PresentationSectionSetStartIndex = window['AscDFH'].historyitem_type_PresentationSection | 3;
|
||
|
||
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Типы изменений класса CDocumentMacros
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
window['AscDFH'].historyitem_DocumentMacros_Data = window['Asc'].historyitem_type_DocumentMacros | 1;
|
||
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Типы действий, который может совершить пользователь
|
||
//
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
window['AscDFH'].historydescription_Cut = 0x0001;
|
||
window['AscDFH'].historydescription_PasteButtonIE = 0x0002;
|
||
window['AscDFH'].historydescription_PasteButtonNotIE = 0x0003;
|
||
window['AscDFH'].historydescription_ChartDrawingObjects = 0x0004;
|
||
window['AscDFH'].historydescription_CommonControllerCheckChartText = 0x0005;
|
||
window['AscDFH'].historydescription_CommonControllerUnGroup = 0x0006;
|
||
window['AscDFH'].historydescription_CommonControllerCheckSelected = 0x0007;
|
||
window['AscDFH'].historydescription_CommonControllerSetGraphicObject = 0x0008;
|
||
window['AscDFH'].historydescription_CommonStatesAddNewShape = 0x0009;
|
||
window['AscDFH'].historydescription_CommonStatesRotate = 0x000a;
|
||
window['AscDFH'].historydescription_PasteNative = 0x000b;
|
||
window['AscDFH'].historydescription_Document_GroupUnGroup = 0x000c;
|
||
window['AscDFH'].historydescription_Document_SetDefaultLanguage = 0x000d;
|
||
window['AscDFH'].historydescription_Document_ChangeColorScheme = 0x000e;
|
||
window['AscDFH'].historydescription_Document_AddChart = 0x000f;
|
||
window['AscDFH'].historydescription_Document_EditChart = 0x0010;
|
||
window['AscDFH'].historydescription_Document_DragText = 0x0011;
|
||
window['AscDFH'].historydescription_Document_DocumentContentExtendToPos = 0x0012;
|
||
window['AscDFH'].historydescription_Document_AddHeader = 0x0013;
|
||
window['AscDFH'].historydescription_Document_AddFooter = 0x0014;
|
||
window['AscDFH'].historydescription_Document_ParagraphExtendToPos = 0x0015;
|
||
window['AscDFH'].historydescription_Document_ParagraphChangeFrame = 0x0016;
|
||
window['AscDFH'].historydescription_Document_ReplaceAll = 0x0017;
|
||
window['AscDFH'].historydescription_Document_ReplaceSingle = 0x0018;
|
||
window['AscDFH'].historydescription_Document_TableAddNewRowByTab = 0x0019;
|
||
window['AscDFH'].historydescription_Document_AddNewShape = 0x001a;
|
||
window['AscDFH'].historydescription_Document_EditWrapPolygon = 0x001b;
|
||
window['AscDFH'].historydescription_Document_MoveInlineObject = 0x001c;
|
||
window['AscDFH'].historydescription_Document_CopyAndMoveInlineObject = 0x001d;
|
||
window['AscDFH'].historydescription_Document_RotateInlineDrawing = 0x001e;
|
||
window['AscDFH'].historydescription_Document_RotateFlowDrawingCtrl = 0x001f;
|
||
window['AscDFH'].historydescription_Document_RotateFlowDrawingNoCtrl = 0x0020;
|
||
window['AscDFH'].historydescription_Document_MoveInGroup = 0x0021;
|
||
window['AscDFH'].historydescription_Document_ChangeWrapContour = 0x0022;
|
||
window['AscDFH'].historydescription_Document_ChangeWrapContourAddPoint = 0x0023;
|
||
window['AscDFH'].historydescription_Document_GrObjectsBringToFront = 0x0024;
|
||
window['AscDFH'].historydescription_Document_GrObjectsBringForwardGroup = 0x0025;
|
||
window['AscDFH'].historydescription_Document_GrObjectsBringForward = 0x0026;
|
||
window['AscDFH'].historydescription_Document_GrObjectsSendToBackGroup = 0x0027;
|
||
window['AscDFH'].historydescription_Document_GrObjectsSendToBack = 0x0028;
|
||
window['AscDFH'].historydescription_Document_GrObjectsBringBackwardGroup = 0x0029;
|
||
window['AscDFH'].historydescription_Document_GrObjectsBringBackward = 0x002a;
|
||
window['AscDFH'].historydescription_Document_GrObjectsChangeWrapPolygon = 0x002b;
|
||
window['AscDFH'].historydescription_Document_MathAutoCorrect = 0x002c;
|
||
window['AscDFH'].historydescription_Document_SetFramePrWithFontFamily = 0x002d;
|
||
window['AscDFH'].historydescription_Document_SetFramePr = 0x002e;
|
||
window['AscDFH'].historydescription_Document_SetFramePrWithFontFamilyLong = 0x002f;
|
||
window['AscDFH'].historydescription_Document_SetTextFontName = 0x0030;
|
||
window['AscDFH'].historydescription_Document_SetTextFontSize = 0x0031;
|
||
window['AscDFH'].historydescription_Document_SetTextBold = 0x0032;
|
||
window['AscDFH'].historydescription_Document_SetTextItalic = 0x0033;
|
||
window['AscDFH'].historydescription_Document_SetTextUnderline = 0x0034;
|
||
window['AscDFH'].historydescription_Document_SetTextStrikeout = 0x0035;
|
||
window['AscDFH'].historydescription_Document_SetTextDStrikeout = 0x0036;
|
||
window['AscDFH'].historydescription_Document_SetTextSpacing = 0x0037;
|
||
window['AscDFH'].historydescription_Document_SetTextCaps = 0x0038;
|
||
window['AscDFH'].historydescription_Document_SetTextSmallCaps = 0x0039;
|
||
window['AscDFH'].historydescription_Document_SetTextPosition = 0x003a;
|
||
window['AscDFH'].historydescription_Document_SetTextLang = 0x003b;
|
||
window['AscDFH'].historydescription_Document_SetParagraphLineSpacing = 0x003c;
|
||
window['AscDFH'].historydescription_Document_SetParagraphLineSpacingBeforeAfter = 0x003d;
|
||
window['AscDFH'].historydescription_Document_IncFontSize = 0x003e;
|
||
window['AscDFH'].historydescription_Document_DecFontSize = 0x003f;
|
||
window['AscDFH'].historydescription_Document_SetParagraphBorders = 0x0040;
|
||
window['AscDFH'].historydescription_Document_SetParagraphPr = 0x0041;
|
||
window['AscDFH'].historydescription_Document_SetParagraphAlign = 0x0042;
|
||
window['AscDFH'].historydescription_Document_SetTextVertAlign = 0x0043;
|
||
window['AscDFH'].historydescription_Document_SetParagraphNumbering = 0x0044;
|
||
window['AscDFH'].historydescription_Document_SetParagraphStyle = 0x0045;
|
||
window['AscDFH'].historydescription_Document_SetParagraphPageBreakBefore = 0x0046;
|
||
window['AscDFH'].historydescription_Document_SetParagraphWidowControl = 0x0047;
|
||
window['AscDFH'].historydescription_Document_SetParagraphKeepLines = 0x0048;
|
||
window['AscDFH'].historydescription_Document_SetParagraphKeepNext = 0x0049;
|
||
window['AscDFH'].historydescription_Document_SetParagraphContextualSpacing = 0x004a;
|
||
window['AscDFH'].historydescription_Document_SetTextHighlightNone = 0x004b;
|
||
window['AscDFH'].historydescription_Document_SetTextHighlightColor = 0x004c;
|
||
window['AscDFH'].historydescription_Document_SetTextColor = 0x004d;
|
||
window['AscDFH'].historydescription_Document_SetParagraphShd = 0x004e;
|
||
window['AscDFH'].historydescription_Document_SetParagraphIndent = 0x004f;
|
||
window['AscDFH'].historydescription_Document_IncParagraphIndent = 0x0050;
|
||
window['AscDFH'].historydescription_Document_DecParagraphIndent = 0x0051;
|
||
window['AscDFH'].historydescription_Document_SetParagraphIndentRight = 0x0052;
|
||
window['AscDFH'].historydescription_Document_SetParagraphIndentFirstLine = 0x0053;
|
||
window['AscDFH'].historydescription_Document_SetPageOrientation = 0x0054;
|
||
window['AscDFH'].historydescription_Document_SetPageSize = 0x0055;
|
||
window['AscDFH'].historydescription_Document_AddPageBreak = 0x0056;
|
||
window['AscDFH'].historydescription_Document_AddPageNumToHdrFtr = 0x0057;
|
||
window['AscDFH'].historydescription_Document_AddPageNumToCurrentPos = 0x0058;
|
||
window['AscDFH'].historydescription_Document_SetHdrFtrDistance = 0x0059;
|
||
window['AscDFH'].historydescription_Document_SetHdrFtrFirstPage = 0x005a;
|
||
window['AscDFH'].historydescription_Document_SetHdrFtrEvenAndOdd = 0x005b;
|
||
window['AscDFH'].historydescription_Document_SetHdrFtrLink = 0x005c;
|
||
window['AscDFH'].historydescription_Document_AddTable = 0x005d;
|
||
window['AscDFH'].historydescription_Document_TableAddRowAbove = 0x005e;
|
||
window['AscDFH'].historydescription_Document_TableAddRowBelow = 0x005f;
|
||
window['AscDFH'].historydescription_Document_TableAddColumnLeft = 0x0060;
|
||
window['AscDFH'].historydescription_Document_TableAddColumnRight = 0x0061;
|
||
window['AscDFH'].historydescription_Document_TableRemoveRow = 0x0062;
|
||
window['AscDFH'].historydescription_Document_TableRemoveColumn = 0x0063;
|
||
window['AscDFH'].historydescription_Document_RemoveTable = 0x0064;
|
||
window['AscDFH'].historydescription_Document_MergeTableCells = 0x0065;
|
||
window['AscDFH'].historydescription_Document_SplitTableCells = 0x0066;
|
||
window['AscDFH'].historydescription_Document_ApplyTablePr = 0x0067;
|
||
window['AscDFH'].historydescription_Document_AddImageUrl = 0x0068;
|
||
window['AscDFH'].historydescription_Document_AddImageUrlLong = 0x0069;
|
||
window['AscDFH'].historydescription_Document_AddImageToPage = 0x006a;
|
||
window['AscDFH'].historydescription_Document_ApplyImagePrWithUrl = 0x006b;
|
||
window['AscDFH'].historydescription_Document_ApplyImagePrWithUrlLong = 0x006c;
|
||
window['AscDFH'].historydescription_Document_ApplyImagePrWithFillUrl = 0x006d;
|
||
window['AscDFH'].historydescription_Document_ApplyImagePrWithFillUrlLong = 0x006e;
|
||
window['AscDFH'].historydescription_Document_ApplyImagePr = 0x006f;
|
||
window['AscDFH'].historydescription_Document_AddHyperlink = 0x0070;
|
||
window['AscDFH'].historydescription_Document_ChangeHyperlink = 0x0071;
|
||
window['AscDFH'].historydescription_Document_RemoveHyperlink = 0x0072;
|
||
window['AscDFH'].historydescription_Document_ReplaceMisspelledWord = 0x0073;
|
||
window['AscDFH'].historydescription_Document_AddComment = 0x0074;
|
||
window['AscDFH'].historydescription_Document_RemoveComment = 0x0075;
|
||
window['AscDFH'].historydescription_Document_ChangeComment = 0x0076;
|
||
window['AscDFH'].historydescription_Document_SetTextFontNameLong = 0x0077;
|
||
window['AscDFH'].historydescription_Document_AddImage = 0x0078;
|
||
window['AscDFH'].historydescription_Document_ClearFormatting = 0x0079;
|
||
window['AscDFH'].historydescription_Document_AddSectionBreak = 0x007a;
|
||
window['AscDFH'].historydescription_Document_AddMath = 0x007b;
|
||
window['AscDFH'].historydescription_Document_SetParagraphTabs = 0x007c;
|
||
window['AscDFH'].historydescription_Document_SetParagraphIndentFromRulers = 0x007d;
|
||
window['AscDFH'].historydescription_Document_SetDocumentMargin_Hor = 0x007e;
|
||
window['AscDFH'].historydescription_Document_SetTableMarkup_Hor = 0x007f;
|
||
window['AscDFH'].historydescription_Document_SetDocumentMargin_Ver = 0x0080;
|
||
window['AscDFH'].historydescription_Document_SetHdrFtrBounds = 0x0081;
|
||
window['AscDFH'].historydescription_Document_SetTableMarkup_Ver = 0x0082;
|
||
window['AscDFH'].historydescription_Document_DocumentExtendToPos = 0x0083;
|
||
window['AscDFH'].historydescription_Document_AddDropCap = 0x0084;
|
||
window['AscDFH'].historydescription_Document_RemoveDropCap = 0x0085;
|
||
window['AscDFH'].historydescription_Document_SetTextHighlight = 0x0086;
|
||
window['AscDFH'].historydescription_Document_BackSpaceButton = 0x0087;
|
||
window['AscDFH'].historydescription_Document_MoveParagraphByTab = 0x0088;
|
||
window['AscDFH'].historydescription_Document_AddTab = 0x0089;
|
||
window['AscDFH'].historydescription_Document_EnterButton = 0x008a;
|
||
window['AscDFH'].historydescription_Document_SpaceButton = 0x008b;
|
||
window['AscDFH'].historydescription_Document_ShiftInsert = 0x008c;
|
||
window['AscDFH'].historydescription_Document_ShiftInsertSafari = 0x008d;
|
||
window['AscDFH'].historydescription_Document_DeleteButton = 0x008e;
|
||
window['AscDFH'].historydescription_Document_ShiftDeleteButton = 0x008f;
|
||
window['AscDFH'].historydescription_Document_SetStyleHeading1 = 0x0090;
|
||
window['AscDFH'].historydescription_Document_SetStyleHeading2 = 0x0091;
|
||
window['AscDFH'].historydescription_Document_SetStyleHeading3 = 0x0092;
|
||
window['AscDFH'].historydescription_Document_SetTextStrikeoutHotKey = 0x0093;
|
||
window['AscDFH'].historydescription_Document_SetTextBoldHotKey = 0x0094;
|
||
window['AscDFH'].historydescription_Document_SetParagraphAlignHotKey = 0x0095;
|
||
window['AscDFH'].historydescription_Document_AddEuroLetter = 0x0096;
|
||
window['AscDFH'].historydescription_Document_SetTextItalicHotKey = 0x0097;
|
||
window['AscDFH'].historydescription_Document_SetParagraphAlignHotKey2 = 0x0098;
|
||
window['AscDFH'].historydescription_Document_SetParagraphNumberingHotKey = 0x0099;
|
||
window['AscDFH'].historydescription_Document_SetParagraphAlignHotKey3 = 0x009a;
|
||
window['AscDFH'].historydescription_Document_AddPageNumHotKey = 0x009b;
|
||
window['AscDFH'].historydescription_Document_SetParagraphAlignHotKey4 = 0x009c;
|
||
window['AscDFH'].historydescription_Document_SetTextUnderlineHotKey = 0x009d;
|
||
window['AscDFH'].historydescription_Document_FormatPasteHotKey = 0x009e;
|
||
window['AscDFH'].historydescription_Document_PasteHotKey = 0x009f;
|
||
window['AscDFH'].historydescription_Document_PasteSafariHotKey = 0x00a0;
|
||
window['AscDFH'].historydescription_Document_CutHotKey = 0x00a1;
|
||
window['AscDFH'].historydescription_Document_SetTextVertAlignHotKey = 0x00a2;
|
||
window['AscDFH'].historydescription_Document_AddMathHotKey = 0x00a3;
|
||
window['AscDFH'].historydescription_Document_SetTextVertAlignHotKey2 = 0x00a4;
|
||
window['AscDFH'].historydescription_Document_MinusButton = 0x00a5;
|
||
window['AscDFH'].historydescription_Document_SetTextVertAlignHotKey3 = 0x00a6;
|
||
window['AscDFH'].historydescription_Document_AddLetter = 0x00a7;
|
||
window['AscDFH'].historydescription_Document_MoveTableBorder = 0x00a8;
|
||
window['AscDFH'].historydescription_Document_FormatPasteHotKey2 = 0x00a9;
|
||
window['AscDFH'].historydescription_Document_SetTextHighlight2 = 0x00aa;
|
||
window['AscDFH'].historydescription_Document_AddTextFromTextBox = 0x00ab;
|
||
window['AscDFH'].historydescription_Document_AddMailMergeField = 0x00ac;
|
||
window['AscDFH'].historydescription_Document_MoveInlineTable = 0x00ad;
|
||
window['AscDFH'].historydescription_Document_MoveFlowTable = 0x00ae;
|
||
window['AscDFH'].historydescription_Document_RestoreFieldTemplateText = 0x00af;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellFontName = 0x00b0;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellFontSize = 0x00b1;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellBold = 0x00b2;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellItalic = 0x00b3;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellUnderline = 0x00b4;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellStrikeout = 0x00b5;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellSubscript = 0x00b6;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellSuperscript = 0x00b7;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellAlign = 0x00b8;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellVertAlign = 0x00b9;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellTextColor = 0x00ba;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellBackgroundColor = 0x00bb;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellIncreaseFontSize = 0x00bc;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellDecreaseFontSize = 0x00bd;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellHyperlinkAdd = 0x00be;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellHyperlinkModify = 0x00bf;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetCellHyperlinkRemove = 0x00c0;
|
||
window['AscDFH'].historydescription_Spreadsheet_EditChart = 0x00c1;
|
||
window['AscDFH'].historydescription_Spreadsheet_Remove = 0x00c2;
|
||
window['AscDFH'].historydescription_Spreadsheet_AddTab = 0x00c3;
|
||
window['AscDFH'].historydescription_Spreadsheet_AddNewParagraph = 0x00c4;
|
||
window['AscDFH'].historydescription_Spreadsheet_AddSpace = 0x00c5;
|
||
window['AscDFH'].historydescription_Spreadsheet_AddItem = 0x00c6;
|
||
window['AscDFH'].historydescription_Spreadsheet_PutPrLineSpacing = 0x00c7;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetParagraphSpacing = 0x00c8;
|
||
window['AscDFH'].historydescription_Spreadsheet_SetGraphicObjectsProps = 0x00c9;
|
||
window['AscDFH'].historydescription_Spreadsheet_ParaApply = 0x00ca;
|
||
window['AscDFH'].historydescription_Spreadsheet_GraphicObjectLayer = 0x00cb;
|
||
window['AscDFH'].historydescription_Spreadsheet_ParagraphAdd = 0x00cc;
|
||
window['AscDFH'].historydescription_Spreadsheet_CreateGroup = 0x00cd;
|
||
window['AscDFH'].historydescription_CommonDrawings_ChangeAdj = 0x00ce;
|
||
window['AscDFH'].historydescription_CommonDrawings_EndTrack = 0x00cf;
|
||
window['AscDFH'].historydescription_CommonDrawings_CopyCtrl = 0x00d0;
|
||
window['AscDFH'].historydescription_Presentation_ParaApply = 0x00d1;
|
||
window['AscDFH'].historydescription_Presentation_ParaFormatPaste = 0x00d2;
|
||
window['AscDFH'].historydescription_Presentation_AddNewParagraph = 0x00d3;
|
||
window['AscDFH'].historydescription_Presentation_CreateGroup = 0x00d4;
|
||
window['AscDFH'].historydescription_Presentation_UnGroup = 0x00d5;
|
||
window['AscDFH'].historydescription_Presentation_AddChart = 0x00d6;
|
||
window['AscDFH'].historydescription_Presentation_EditChart = 0x00d7;
|
||
window['AscDFH'].historydescription_Presentation_ParagraphAdd = 0x00d8;
|
||
window['AscDFH'].historydescription_Presentation_ParagraphClearFormatting = 0x00d9;
|
||
window['AscDFH'].historydescription_Presentation_SetParagraphAlign = 0x00da;
|
||
window['AscDFH'].historydescription_Presentation_SetParagraphSpacing = 0x00db;
|
||
window['AscDFH'].historydescription_Presentation_SetParagraphTabs = 0x00dc;
|
||
window['AscDFH'].historydescription_Presentation_SetParagraphIndent = 0x00dd;
|
||
window['AscDFH'].historydescription_Presentation_SetParagraphNumbering = 0x00de;
|
||
window['AscDFH'].historydescription_Presentation_ParagraphIncDecFontSize = 0x00df;
|
||
window['AscDFH'].historydescription_Presentation_ParagraphIncDecIndent = 0x00e0;
|
||
window['AscDFH'].historydescription_Presentation_SetImageProps = 0x00e1;
|
||
window['AscDFH'].historydescription_Presentation_SetShapeProps = 0x00e2;
|
||
window['AscDFH'].historydescription_Presentation_ChartApply = 0x00e3;
|
||
window['AscDFH'].historydescription_Presentation_ChangeShapeType = 0x00e4;
|
||
window['AscDFH'].historydescription_Presentation_SetVerticalAlign = 0x00e5;
|
||
window['AscDFH'].historydescription_Presentation_HyperlinkAdd = 0x00e6;
|
||
window['AscDFH'].historydescription_Presentation_HyperlinkModify = 0x00e7;
|
||
window['AscDFH'].historydescription_Presentation_HyperlinkRemove = 0x00e8;
|
||
window['AscDFH'].historydescription_Presentation_DistHor = 0x00e9;
|
||
window['AscDFH'].historydescription_Presentation_DistVer = 0x00ea;
|
||
window['AscDFH'].historydescription_Presentation_BringToFront = 0x00eb;
|
||
window['AscDFH'].historydescription_Presentation_BringForward = 0x00ec;
|
||
window['AscDFH'].historydescription_Presentation_SendToBack = 0x00ed;
|
||
window['AscDFH'].historydescription_Presentation_BringBackward = 0x00ef;
|
||
window['AscDFH'].historydescription_Presentation_ApplyTiming = 0x00f0;
|
||
window['AscDFH'].historydescription_Presentation_MoveSlidesToEnd = 0x00f1;
|
||
window['AscDFH'].historydescription_Presentation_MoveSlidesNextPos = 0x00f2;
|
||
window['AscDFH'].historydescription_Presentation_MoveSlidesPrevPos = 0x00f3;
|
||
window['AscDFH'].historydescription_Presentation_MoveSlidesToStart = 0x00f4;
|
||
window['AscDFH'].historydescription_Presentation_MoveComments = 0x00f5;
|
||
window['AscDFH'].historydescription_Presentation_TableBorder = 0x00f6;
|
||
window['AscDFH'].historydescription_Presentation_AddFlowImage = 0x00f7;
|
||
window['AscDFH'].historydescription_Presentation_AddFlowTable = 0x00f8;
|
||
window['AscDFH'].historydescription_Presentation_ChangeBackground = 0x00f9;
|
||
window['AscDFH'].historydescription_Presentation_AddNextSlide = 0x00fa;
|
||
window['AscDFH'].historydescription_Presentation_ShiftSlides = 0x00fb;
|
||
window['AscDFH'].historydescription_Presentation_DeleteSlides = 0x00fc;
|
||
window['AscDFH'].historydescription_Presentation_ChangeLayout = 0x00fd;
|
||
window['AscDFH'].historydescription_Presentation_ChangeSlideSize = 0x00fe;
|
||
window['AscDFH'].historydescription_Presentation_ChangeColorScheme = 0x00ff;
|
||
window['AscDFH'].historydescription_Presentation_AddComment = 0x0100;
|
||
window['AscDFH'].historydescription_Presentation_ChangeComment = 0x0101;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrFontName = 0x0102;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrFontSize = 0x0103;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrBold = 0x0104;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrItalic = 0x0105;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrUnderline = 0x0106;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrStrikeout = 0x0107;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrLineSpacing = 0x0108;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrSpacingBeforeAfter = 0x0109;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrIncreaseFontSize = 0x010a;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrDecreaseFontSize = 0x010b;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrAlign = 0x010c;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrBaseline = 0x010d;
|
||
window['AscDFH'].historydescription_Presentation_PutTextPrListType = 0x010e;
|
||
window['AscDFH'].historydescription_Presentation_PutTextColor = 0x010f;
|
||
window['AscDFH'].historydescription_Presentation_PutTextColor2 = 0x010f;
|
||
window['AscDFH'].historydescription_Presentation_PutPrIndent = 0x010f;
|
||
window['AscDFH'].historydescription_Presentation_PutPrIndentRight = 0x010f;
|
||
window['AscDFH'].historydescription_Presentation_PutPrFirstLineIndent = 0x010f;
|
||
window['AscDFH'].historydescription_Presentation_AddPageBreak = 0x010f;
|
||
window['AscDFH'].historydescription_Presentation_AddRowAbove = 0x0110;
|
||
window['AscDFH'].historydescription_Presentation_AddRowBelow = 0x0111;
|
||
window['AscDFH'].historydescription_Presentation_AddColLeft = 0x0112;
|
||
window['AscDFH'].historydescription_Presentation_AddColRight = 0x0113;
|
||
window['AscDFH'].historydescription_Presentation_RemoveRow = 0x0114;
|
||
window['AscDFH'].historydescription_Presentation_RemoveCol = 0x0115;
|
||
window['AscDFH'].historydescription_Presentation_RemoveTable = 0x0116;
|
||
window['AscDFH'].historydescription_Presentation_MergeCells = 0x0117;
|
||
window['AscDFH'].historydescription_Presentation_SplitCells = 0x0118;
|
||
window['AscDFH'].historydescription_Presentation_TblApply = 0x0119;
|
||
window['AscDFH'].historydescription_Presentation_RemoveComment = 0x011a;
|
||
window['AscDFH'].historydescription_Presentation_EndFontLoad = 0x011b;
|
||
window['AscDFH'].historydescription_Presentation_ChangeTheme = 0x011c;
|
||
window['AscDFH'].historydescription_Presentation_TableMoveFromRulers = 0x011d;
|
||
window['AscDFH'].historydescription_Presentation_TableMoveFromRulersInline = 0x011e;
|
||
window['AscDFH'].historydescription_Presentation_PasteOnThumbnails = 0x011f;
|
||
window['AscDFH'].historydescription_Presentation_PasteOnThumbnailsSafari = 0x0120;
|
||
window['AscDFH'].historydescription_Document_ConvertOldEquation = 0x0121;
|
||
window['AscDFH'].historydescription_Presentation_SetVert = 0x0122;
|
||
window['AscDFH'].historydescription_Document_AddNewStyle = 0x0123;
|
||
window['AscDFH'].historydescription_Document_RemoveStyle = 0x0124;
|
||
window['AscDFH'].historydescription_Document_AddTextArt = 0x0125;
|
||
window['AscDFH'].historydescription_Document_RemoveAllCustomStyles = 0x0126;
|
||
window['AscDFH'].historydescription_Document_AcceptAllRevisionChanges = 0x0127;
|
||
window['AscDFH'].historydescription_Document_RejectAllRevisionChanges = 0x0128;
|
||
window['AscDFH'].historydescription_Document_AcceptRevisionChange = 0x0129;
|
||
window['AscDFH'].historydescription_Document_RejectRevisionChange = 0x012a;
|
||
window['AscDFH'].historydescription_Document_AcceptRevisionChangesBySelection = 0x012b;
|
||
window['AscDFH'].historydescription_Document_RejectRevisionChangesBySelection = 0x012c;
|
||
window['AscDFH'].historydescription_Document_AddLetterUnion = 0x012d;
|
||
window['AscDFH'].historydescription_Presentation_ApplyTimingToAll = 0x012e;
|
||
window['AscDFH'].historydescription_Document_SetColumnsFromRuler = 0x012f;
|
||
window['AscDFH'].historydescription_Document_SetColumnsProps = 0x0130;
|
||
window['AscDFH'].historydescription_Document_AddColumnBreak = 0x0131;
|
||
window['AscDFH'].historydescription_Document_SetSectionProps = 0x0132;
|
||
window['AscDFH'].historydescription_Document_AddTabToMath = 0x0133;
|
||
window['AscDFH'].historydescription_Document_SetMathProps = 0x0134;
|
||
window['AscDFH'].historydescription_Document_ApplyPrToMath = 0x0135;
|
||
window['AscDFH'].historydescription_Document_ApiBuilder = 0x0136;
|
||
window['AscDFH'].historydescription_Document_AddOleObject = 0x0137;
|
||
window['AscDFH'].historydescription_Document_EditOleObject = 0x0138;
|
||
window['AscDFH'].historydescription_Document_CompositeInput = 0x0139;
|
||
window['AscDFH'].historydescription_Document_CompositeInputReplace = 0x013a;
|
||
window['AscDFH'].historydescription_Document_AddPageCount = 0x013b;
|
||
window['AscDFH'].historydescription_Document_AddFootnote = 0x013c;
|
||
window['AscDFH'].historydescription_Document_SetFootnotePr = 0x013d;
|
||
window['AscDFH'].historydescription_Document_RemoveAllFootnotes = 0x013e;
|
||
window['AscDFH'].historydescription_Document_InsertDocumentsByUrls = 0x013f;
|
||
window['AscDFH'].historydescription_Document_InsertSignatureLine = 0x0140;
|
||
window['AscDFH'].historydescription_Document_AddBlockLevelContentControl = 0x0141;
|
||
window['AscDFH'].historydescription_Document_AddInlineLevelContentControl = 0x0142;
|
||
window['AscDFH'].historydescription_Document_RemoveContentControl = 0x0143;
|
||
window['AscDFH'].historydescription_Document_RemoveContentControlWrapper = 0x0144;
|
||
window['AscDFH'].historydescription_Document_ChangeContentControlProperties = 0x0145;
|
||
window['AscDFH'].historydescription_Presentation_HideSlides = 0x0146;
|
||
window['AscDFH'].historydescription_DocumentMacros_Data = 0x0147;
|
||
window['AscDFH'].historydescription_Document_AddBookmark = 0x0148;
|
||
window['AscDFH'].historydescription_Document_AddTableOfContents = 0x0149;
|
||
window['AscDFH'].historydescription_Document_ChangeOutlineLevel = 0x014a;
|
||
window['AscDFH'].historydescription_Document_AddElementToOutline = 0x014b;
|
||
window['AscDFH'].historydescription_Document_ResizeTable = 0x014c;
|
||
window['AscDFH'].historydescription_Document_RemoveComplexField = 0x014d;
|
||
window['AscDFH'].historydescription_Document_SetComplexFieldPr = 0x014e;
|
||
window['AscDFH'].historydescription_Document_UpdateTableOfContents = 0x014f;
|
||
window['AscDFH'].historydescription_Document_SectionStartPage = 0x0150;
|
||
window['AscDFH'].historydescription_Document_DistributeTableCells = 0x0151;
|
||
window['AscDFH'].historydescription_Document_RemoveBookmark = 0x0152;
|
||
window['AscDFH'].historydescription_Document_ContinueNumbering = 0x0153;
|
||
window['AscDFH'].historydescription_Document_RestartNumbering = 0x0154;
|
||
window['AscDFH'].historydescription_Document_AutomaticListAsType = 0x0155;
|
||
window['AscDFH'].historydescription_Document_CreateNum = 0x0156;
|
||
window['AscDFH'].historydescription_Document_ChangeNumLvl = 0x0157;
|
||
window['AscDFH'].historydescription_Document_AutoCorrectSmartQuotes = 0x0158;
|
||
window['AscDFH'].historydescription_Document_AutoCorrectHyphensWithDash = 0x0159;
|
||
window['AscDFH'].historydescription_Document_SetGlobalSdtHighlightColor = 0x015a;
|
||
window['AscDFH'].historydescription_Document_SetGlobalSdtShowHighlight = 0x015b;
|
||
|
||
|
||
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Фабрика изменений (заполняется там же, где и определяются классы изменений)
|
||
//
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
window['AscDFH'].changesFactory = {};
|
||
window['AscDFH'].changesFactory[window['AscDFH'].historyitem_Unknown_Unknown] = CChangesBase;
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Карта зависимости изменений. Изменения зависят только от изменений для того же класса, но вот типы могут быть
|
||
// разными. В основном изменения зависят только от изменений такого же типа.
|
||
//
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
window['AscDFH'].changesRelationMap = {};
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Базовые классы для изменений
|
||
//
|
||
// Разница между классами Property и Value в том, что Property могут быть undefined, а Value всегда значение
|
||
// заданного типа.
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
/**
|
||
* Базовый класс для всех изменений совместного редактирования.
|
||
* @constructor
|
||
*/
|
||
function CChangesBase(Class)
|
||
{
|
||
this.Class = Class;
|
||
|
||
this.Reverted = false;
|
||
}
|
||
CChangesBase.prototype.Type = window['AscDFH'].historyitem_Unknown_Unknown;
|
||
CChangesBase.prototype.Undo = function()
|
||
{
|
||
if (this.Class && this.Class.Undo)
|
||
this.Class.Undo(this);
|
||
};
|
||
CChangesBase.prototype.Redo = function()
|
||
{
|
||
if (this.Class && this.Class.Redo)
|
||
this.Class.Redo(this);
|
||
};
|
||
CChangesBase.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
if (this.Class && this.Class.Save_Changes)
|
||
this.Class.Save_Changes(this, Writer);
|
||
};
|
||
CChangesBase.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
|
||
};
|
||
CChangesBase.prototype.Load = function()
|
||
{
|
||
// В большинстве случаев загрузка чужого изменения работает как простое Redo
|
||
this.Redo();
|
||
};
|
||
CChangesBase.prototype.GetClass = function()
|
||
{
|
||
return this.Class;
|
||
};
|
||
CChangesBase.prototype.RefreshRecalcData = function()
|
||
{
|
||
if (this.Class && this.Class.Refresh_RecalcData)
|
||
this.Class.Refresh_RecalcData(this);
|
||
};
|
||
CChangesBase.prototype.IsContentChange = function()
|
||
{
|
||
return false;
|
||
};
|
||
CChangesBase.prototype.CreateReverseChange = function()
|
||
{
|
||
return null;
|
||
};
|
||
CChangesBase.prototype.Merge = function(oChange)
|
||
{
|
||
return true;
|
||
};
|
||
CChangesBase.prototype.IsPosExtChange = function(oChange)
|
||
{
|
||
return false;
|
||
};
|
||
CChangesBase.prototype.IsReverted = function()
|
||
{
|
||
return this.Reverted;
|
||
};
|
||
CChangesBase.prototype.SetReverted = function(isReverted)
|
||
{
|
||
this.Reverted = isReverted;
|
||
};
|
||
CChangesBase.prototype.IsParagraphSimpleChanges = function()
|
||
{
|
||
return false;
|
||
};
|
||
window['AscDFH'].CChangesBase = CChangesBase;
|
||
/**
|
||
* Базовый класс для изменений, которые меняют содержимое родительского класса.*
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBase}
|
||
*/
|
||
function CChangesBaseContentChange(Class, Pos, Items, isAdd)
|
||
{
|
||
CChangesBase.call(this, Class);
|
||
|
||
this.Pos = Pos;
|
||
this.Items = Items;
|
||
this.UseArray = false;
|
||
this.PosArray = [];
|
||
this.Add = isAdd;
|
||
|
||
this.Reverted = false;
|
||
}
|
||
|
||
CChangesBaseContentChange.prototype = Object.create(CChangesBase.prototype);
|
||
CChangesBaseContentChange.prototype.constructor = CChangesBaseContentChange;
|
||
CChangesBaseContentChange.prototype.IsContentChange = function()
|
||
{
|
||
return true;
|
||
};
|
||
CChangesBaseContentChange.prototype.IsAdd = function()
|
||
{
|
||
return this.Add;
|
||
};
|
||
CChangesBaseContentChange.prototype.Copy = function()
|
||
{
|
||
var oChanges = new this.constructor(this.Class, this.Pos, this.Items, this.Add);
|
||
|
||
oChanges.UseArray = this.UseArray;
|
||
|
||
for (var nIndex = 0, nCount = this.PosArray.length; nIndex < nCount; ++nIndex)
|
||
oChanges.PosArray[nIndex] = this.PosArray[nIndex];
|
||
|
||
return oChanges;
|
||
};
|
||
CChangesBaseContentChange.prototype.GetItemsCount = function()
|
||
{
|
||
return this.Items.length;
|
||
};
|
||
CChangesBaseContentChange.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Количество элементов
|
||
// Array of
|
||
// {
|
||
// Long : позиции элементов
|
||
// Variable : Item
|
||
// }
|
||
// Long : Поле Color
|
||
|
||
var bArray = this.UseArray;
|
||
var nCount = this.Items.length;
|
||
|
||
var nStartPos = Writer.GetCurPosition();
|
||
Writer.Skip(4);
|
||
var nRealCount = nCount;
|
||
|
||
for (var nIndex = 0; nIndex < nCount; ++nIndex)
|
||
{
|
||
if (true === bArray)
|
||
{
|
||
if (false === this.PosArray[nIndex])
|
||
{
|
||
nRealCount--;
|
||
}
|
||
else
|
||
{
|
||
Writer.WriteLong(this.PosArray[nIndex]);
|
||
this.private_WriteItem(Writer, this.Items[nIndex]);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
Writer.WriteLong(this.Pos);
|
||
this.private_WriteItem(Writer, this.Items[nIndex]);
|
||
}
|
||
}
|
||
|
||
var nEndPos = Writer.GetCurPosition();
|
||
Writer.Seek(nStartPos);
|
||
Writer.WriteLong(nRealCount);
|
||
Writer.Seek(nEndPos);
|
||
|
||
var nColor = 0;
|
||
if (undefined !== this.Color)
|
||
{
|
||
nColor |= 1;
|
||
if (true === this.Color)
|
||
nColor |= 2;
|
||
}
|
||
Writer.WriteLong(nColor);
|
||
};
|
||
CChangesBaseContentChange.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Количество элементов
|
||
// Array of
|
||
// {
|
||
// Long : позиции элементов
|
||
// Variable : Item
|
||
// }
|
||
// Long : поле Color
|
||
|
||
this.UseArray = true;
|
||
this.Items = [];
|
||
this.PosArray = [];
|
||
|
||
var nCount = Reader.GetLong();
|
||
for (var nIndex = 0; nIndex < nCount; ++nIndex)
|
||
{
|
||
this.PosArray[nIndex] = Reader.GetLong();
|
||
this.Items[nIndex] = this.private_ReadItem(Reader);
|
||
}
|
||
|
||
var nColor = Reader.GetLong();
|
||
if (nColor & 1)
|
||
this.Color = (nColor & 2) ? true : false;
|
||
};
|
||
CChangesBaseContentChange.prototype.private_WriteItem = function(Writer, Item)
|
||
{
|
||
};
|
||
CChangesBaseContentChange.prototype.private_ReadItem = function(Reader)
|
||
{
|
||
return null;
|
||
};
|
||
CChangesBaseContentChange.prototype.ConvertToSimpleActions = function()
|
||
{
|
||
var arrActions = [];
|
||
|
||
if (this.UseArray)
|
||
{
|
||
for (var nIndex = 0, nCount = this.Items.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
arrActions.push({
|
||
Item : this.Items[nIndex],
|
||
Pos : this.PosArray[nIndex],
|
||
Add : this.Add
|
||
});
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var Pos = this.Pos;
|
||
for (var nIndex = 0, nCount = this.Items.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
arrActions.push({
|
||
Item : this.Items[nIndex],
|
||
Pos : Pos + nIndex,
|
||
Add : this.Add
|
||
});
|
||
}
|
||
}
|
||
|
||
return arrActions;
|
||
};
|
||
CChangesBaseContentChange.prototype.ConvertFromSimpleActions = function(arrActions)
|
||
{
|
||
this.UseArray = true;
|
||
this.Pos = 0;
|
||
this.Items = [];
|
||
this.PosArray = [];
|
||
|
||
for (var nIndex = 0, nCount = arrActions.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
this.PosArray[nIndex] = arrActions[nIndex].Pos;
|
||
this.Items[nIndex] = arrActions[nIndex].Item;
|
||
}
|
||
};
|
||
CChangesBaseContentChange.prototype.IsRelated = function(oChanges)
|
||
{
|
||
if (this.Class !== oChanges.GetClass() || this.Type !== oChanges.Type)
|
||
return false;
|
||
|
||
return true;
|
||
};
|
||
CChangesBaseContentChange.prototype.private_CreateReverseChange = function(fConstructor)
|
||
{
|
||
var oChange = new fConstructor();
|
||
|
||
oChange.Class = this.Class;
|
||
oChange.Pos = this.Pos;
|
||
oChange.Items = this.Items;
|
||
oChange.Add = !this.Add;
|
||
oChange.UseArray = this.UseArray;
|
||
oChange.PosArray = [];
|
||
|
||
for (var nIndex = 0, nCount = this.PosArray.length; nIndex < nCount; ++nIndex)
|
||
oChange.PosArray[nIndex] = this.PosArray[nIndex];
|
||
|
||
return oChange;
|
||
};
|
||
CChangesBaseContentChange.prototype.Merge = function(oChange)
|
||
{
|
||
// TODO: Сюда надо бы перенести работу с ContentChanges
|
||
return true;
|
||
};
|
||
CChangesBaseContentChange.prototype.GetMinPos = function()
|
||
{
|
||
var nPos = null;
|
||
if (this.UseArray)
|
||
{
|
||
for (var nIndex = 0, nCount = this.PosArray.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
if (null === nPos || nPos > this.PosArray[nIndex])
|
||
nPos = this.PosArray[nIndex];
|
||
}
|
||
|
||
if (null === nPos)
|
||
nPos = 0;
|
||
}
|
||
else
|
||
{
|
||
nPos = this.Pos;
|
||
}
|
||
|
||
return nPos;
|
||
};
|
||
window['AscDFH'].CChangesBaseContentChange = CChangesBaseContentChange;
|
||
/**
|
||
* Базовый класс для изменения свойств.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBase}
|
||
*/
|
||
function CChangesBaseProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBase.call(this, Class);
|
||
|
||
this.Color = true === Color ? true : false;
|
||
this.Old = Old;
|
||
this.New = New;
|
||
}
|
||
|
||
CChangesBaseProperty.prototype = Object.create(CChangesBase.prototype);
|
||
CChangesBaseProperty.prototype.constructor = CChangesBaseProperty;
|
||
CChangesBaseProperty.prototype.Undo = function()
|
||
{
|
||
this.private_SetValue(this.Old);
|
||
};
|
||
CChangesBaseProperty.prototype.Redo = function()
|
||
{
|
||
this.private_SetValue(this.New);
|
||
};
|
||
CChangesBaseProperty.prototype.private_SetValue = function(Value)
|
||
{
|
||
// Эту функцию нужно переопределить в дочернем классе
|
||
};
|
||
CChangesBaseProperty.prototype.CreateReverseChange = function()
|
||
{
|
||
return new this.constructor(this.Class, this.New, this.Old, this.Color);
|
||
};
|
||
CChangesBaseProperty.prototype.Merge = function(oChange)
|
||
{
|
||
if (oChange.Class === this.Class && oChange.Type === this.Type)
|
||
{
|
||
this.New = oChange.New;
|
||
return false;
|
||
}
|
||
|
||
return true;
|
||
};
|
||
|
||
window['AscDFH'].CChangesBaseProperty = CChangesBaseProperty;
|
||
/**
|
||
* Базовый класс для изменения булевых свойств.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseBoolProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseBoolProperty.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseBoolProperty.prototype.constructor = CChangesBaseBoolProperty;
|
||
CChangesBaseBoolProperty.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : New value
|
||
// 4-bit : IsUndefined Old
|
||
// 5-bit : Old value
|
||
|
||
var nFlags = 0;
|
||
|
||
if (false !== this.Color)
|
||
nFlags |= 1;
|
||
|
||
if (undefined === this.New)
|
||
nFlags |= 2;
|
||
else if (true === this.New)
|
||
nFlags |= 4;
|
||
|
||
if (undefined === this.Old)
|
||
nFlags |= 8;
|
||
else if (true === this.Old)
|
||
nFlags |= 16;
|
||
|
||
Writer.WriteLong(nFlags);
|
||
};
|
||
CChangesBaseBoolProperty.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : New value
|
||
// 4-bit : IsUndefined Old
|
||
// 5-bit : Old value
|
||
|
||
var nFlags = Reader.GetLong();
|
||
|
||
if (nFlags & 1)
|
||
this.Color = true;
|
||
else
|
||
this.Color = false;
|
||
|
||
if (nFlags & 2)
|
||
this.New = undefined;
|
||
else if (nFlags & 4)
|
||
this.New = true;
|
||
else
|
||
this.New = false;
|
||
|
||
if (nFlags & 8)
|
||
this.Old = undefined;
|
||
else if (nFlags & 16)
|
||
this.Old = true;
|
||
else
|
||
this.Old = false;
|
||
};
|
||
window['AscDFH'].CChangesBaseBoolProperty = CChangesBaseBoolProperty;
|
||
/**
|
||
* Базовый класс для изменения числовых (double) свойств.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseDoubleProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseDoubleProperty.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseDoubleProperty.prototype.constructor = CChangesBaseDoubleProperty;
|
||
CChangesBaseDoubleProperty.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// double : New
|
||
// double : Old
|
||
|
||
var nFlags = 0;
|
||
|
||
if (false !== this.Color)
|
||
nFlags |= 1;
|
||
|
||
if (undefined === this.New)
|
||
nFlags |= 2;
|
||
|
||
if (undefined === this.Old)
|
||
nFlags |= 4;
|
||
|
||
Writer.WriteLong(nFlags);
|
||
|
||
if (undefined !== this.New)
|
||
Writer.WriteDouble(this.New);
|
||
|
||
if (undefined !== this.Old)
|
||
Writer.WriteDouble(this.Old);
|
||
};
|
||
CChangesBaseDoubleProperty.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// double : New
|
||
// double : Old
|
||
|
||
|
||
var nFlags = Reader.GetLong();
|
||
|
||
if (nFlags & 1)
|
||
this.Color = true;
|
||
else
|
||
this.Color = false;
|
||
|
||
if (nFlags & 2)
|
||
this.New = undefined;
|
||
else
|
||
this.New = Reader.GetDouble();
|
||
|
||
if (nFlags & 4)
|
||
this.Old = undefined;
|
||
else
|
||
this.Old = Reader.GetDouble();
|
||
};
|
||
window['AscDFH'].CChangesBaseDoubleProperty = CChangesBaseDoubleProperty;
|
||
/**
|
||
* Базовый класс для изменения объектных свойств, т.е. если свойство задано объектом.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseObjectProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseObjectProperty.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseObjectProperty.prototype.constructor = CChangesBaseObjectProperty;
|
||
CChangesBaseObjectProperty.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// Variable : New
|
||
// Variable : Old
|
||
|
||
var nFlags = 0;
|
||
|
||
if (false !== this.Color)
|
||
nFlags |= 1;
|
||
|
||
if (undefined === this.New)
|
||
nFlags |= 2;
|
||
|
||
if (undefined === this.Old)
|
||
nFlags |= 4;
|
||
|
||
Writer.WriteLong(nFlags);
|
||
|
||
if (undefined !== this.New && this.New.Write_ToBinary)
|
||
this.New.Write_ToBinary(Writer);
|
||
|
||
if (undefined !== this.Old && this.Old.Write_ToBinary)
|
||
this.Old.Write_ToBinary(Writer);
|
||
};
|
||
CChangesBaseObjectProperty.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// Variable : New
|
||
// Variable : Old
|
||
|
||
var nFlags = Reader.GetLong();
|
||
|
||
if (nFlags & 1)
|
||
this.Color = true;
|
||
else
|
||
this.Color = false;
|
||
|
||
if (nFlags & 2)
|
||
{
|
||
if (true === this.private_IsCreateEmptyObject())
|
||
this.New = this.private_CreateObject();
|
||
else
|
||
this.New = undefined;
|
||
}
|
||
else
|
||
{
|
||
this.New = this.private_CreateObject();
|
||
if (this.New && this.New.Read_FromBinary)
|
||
this.New.Read_FromBinary(Reader);
|
||
}
|
||
|
||
if (nFlags & 4)
|
||
{
|
||
if (true === this.private_IsCreateEmptyObject())
|
||
this.Old = this.private_CreateObject();
|
||
else
|
||
this.Old = undefined;
|
||
}
|
||
else
|
||
{
|
||
this.Old = this.private_CreateObject();
|
||
if (this.Old && this.Old.Read_FromBinary)
|
||
this.Old.Read_FromBinary(Reader);
|
||
}
|
||
};
|
||
CChangesBaseObjectProperty.prototype.private_CreateObject = function()
|
||
{
|
||
// Эту функцию нужно переопределить в дочернем классе
|
||
return null;
|
||
};
|
||
CChangesBaseObjectProperty.prototype.private_IsCreateEmptyObject = function()
|
||
{
|
||
return false;
|
||
};
|
||
window['AscDFH'].CChangesBaseObjectProperty = CChangesBaseObjectProperty;
|
||
/**
|
||
* Базовый класс для изменения числовых (long) свойств.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseLongProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseLongProperty.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseLongProperty.prototype.constructor = CChangesBaseLongProperty;
|
||
CChangesBaseLongProperty.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// long : New
|
||
// long : Old
|
||
|
||
var nFlags = 0;
|
||
|
||
if (false !== this.Color)
|
||
nFlags |= 1;
|
||
|
||
if (undefined === this.New)
|
||
nFlags |= 2;
|
||
|
||
if (undefined === this.Old)
|
||
nFlags |= 4;
|
||
|
||
Writer.WriteLong(nFlags);
|
||
|
||
if (undefined !== this.New)
|
||
Writer.WriteLong(this.New);
|
||
|
||
if (undefined !== this.Old)
|
||
Writer.WriteLong(this.Old);
|
||
};
|
||
CChangesBaseLongProperty.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// long : New
|
||
// long : Old
|
||
|
||
|
||
var nFlags = Reader.GetLong();
|
||
|
||
if (nFlags & 1)
|
||
this.Color = true;
|
||
else
|
||
this.Color = false;
|
||
|
||
if (nFlags & 2)
|
||
this.New = undefined;
|
||
else
|
||
this.New = Reader.GetLong();
|
||
|
||
if (nFlags & 4)
|
||
this.Old = undefined;
|
||
else
|
||
this.Old = Reader.GetLong();
|
||
};
|
||
window['AscDFH'].CChangesBaseLongProperty = CChangesBaseLongProperty;
|
||
/**
|
||
* Базовый класс для изменения строковых свойств.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseStringProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseStringProperty.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseStringProperty.prototype.constructor = CChangesBaseStringProperty;
|
||
CChangesBaseStringProperty.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// string : New
|
||
// string : Old
|
||
|
||
var nFlags = 0;
|
||
|
||
if (false !== this.Color)
|
||
nFlags |= 1;
|
||
|
||
if (undefined === this.New)
|
||
nFlags |= 2;
|
||
|
||
if (undefined === this.Old)
|
||
nFlags |= 4;
|
||
|
||
Writer.WriteLong(nFlags);
|
||
|
||
if (undefined !== this.New)
|
||
Writer.WriteString2(this.New);
|
||
|
||
if (undefined !== this.Old)
|
||
Writer.WriteString2(this.Old);
|
||
};
|
||
CChangesBaseStringProperty.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// string : New
|
||
// string : Old
|
||
|
||
|
||
var nFlags = Reader.GetLong();
|
||
|
||
if (nFlags & 1)
|
||
this.Color = true;
|
||
else
|
||
this.Color = false;
|
||
|
||
if (nFlags & 2)
|
||
this.New = undefined;
|
||
else
|
||
this.New = Reader.GetString2();
|
||
|
||
if (nFlags & 4)
|
||
this.Old = undefined;
|
||
else
|
||
this.Old = Reader.GetString2();
|
||
};
|
||
window['AscDFH'].CChangesBaseStringProperty = CChangesBaseStringProperty;
|
||
/**
|
||
* Базовый класс для изменения числовых (byte) свойств.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseByteProperty(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseByteProperty.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseByteProperty.prototype.constructor = CChangesBaseByteProperty;
|
||
CChangesBaseByteProperty.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// byte : New
|
||
// byte : Old
|
||
|
||
var nFlags = 0;
|
||
|
||
if (false !== this.Color)
|
||
nFlags |= 1;
|
||
|
||
if (undefined === this.New)
|
||
nFlags |= 2;
|
||
|
||
if (undefined === this.Old)
|
||
nFlags |= 4;
|
||
|
||
Writer.WriteLong(nFlags);
|
||
|
||
if (undefined !== this.New)
|
||
Writer.WriteByte(this.New);
|
||
|
||
if (undefined !== this.Old)
|
||
Writer.WriteByte(this.Old);
|
||
};
|
||
CChangesBaseByteProperty.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : Flag
|
||
// 1-bit : Подсвечивать ли данные изменения
|
||
// 2-bit : IsUndefined New
|
||
// 3-bit : IsUndefined Old
|
||
// byte : New
|
||
// byte : Old
|
||
|
||
|
||
var nFlags = Reader.GetLong();
|
||
|
||
if (nFlags & 1)
|
||
this.Color = true;
|
||
else
|
||
this.Color = false;
|
||
|
||
if (nFlags & 2)
|
||
this.New = undefined;
|
||
else
|
||
this.New = Reader.GetByte();
|
||
|
||
if (nFlags & 4)
|
||
this.Old = undefined;
|
||
else
|
||
this.Old = Reader.GetByte();
|
||
};
|
||
window['AscDFH'].CChangesBaseByteProperty = CChangesBaseByteProperty;
|
||
/**
|
||
* Базовый класс для изменения числовых(long) значений.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseLongValue(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseLongValue.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseLongValue.prototype.constructor = CChangesBaseLongValue;
|
||
CChangesBaseLongValue.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : New
|
||
// Long : Old
|
||
|
||
Writer.WriteLong(this.New);
|
||
Writer.WriteLong(this.Old);
|
||
};
|
||
CChangesBaseLongValue.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : New
|
||
// Long : Old
|
||
|
||
this.New = Reader.GetLong();
|
||
this.Old = Reader.GetLong();
|
||
};
|
||
window['AscDFH'].CChangesBaseLongValue = CChangesBaseLongValue;
|
||
/**
|
||
* Базовый класс для изменения булевых значений.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseBoolValue(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseBoolValue.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseBoolValue.prototype.constructor = CChangesBaseBoolValue;
|
||
CChangesBaseBoolValue.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Bool : New
|
||
// Bool : Old
|
||
|
||
Writer.WriteBool(this.New);
|
||
Writer.WriteBool(this.Old);
|
||
};
|
||
CChangesBaseBoolValue.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Bool : New
|
||
// Bool : Old
|
||
|
||
this.New = Reader.GetBool();
|
||
this.Old = Reader.GetBool();
|
||
};
|
||
window['AscDFH'].CChangesBaseBoolValue = CChangesBaseBoolValue;
|
||
/**
|
||
* Базовый класс для изменения объектных значений.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseObjectProperty}
|
||
*/
|
||
function CChangesBaseObjectValue(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseObjectProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseObjectValue.prototype = Object.create(CChangesBaseObjectProperty.prototype);
|
||
CChangesBaseObjectValue.prototype.constructor = CChangesBaseObjectValue;
|
||
CChangesBaseObjectValue.prototype.private_IsCreateEmptyObject = function()
|
||
{
|
||
return true;
|
||
};
|
||
window['AscDFH'].CChangesBaseObjectValue = CChangesBaseObjectValue;
|
||
/**
|
||
* Базовый класс для изменения строковых значений.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseStringValue(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseStringValue.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseStringValue.prototype.constructor = CChangesBaseStringValue;
|
||
CChangesBaseStringValue.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// String : New
|
||
// String : Old
|
||
|
||
Writer.WriteString2(this.New);
|
||
Writer.WriteString2(this.Old);
|
||
};
|
||
CChangesBaseStringValue.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// String : New
|
||
// String : Old
|
||
|
||
this.New = Reader.GetString2();
|
||
this.Old = Reader.GetString2();
|
||
};
|
||
window['AscDFH'].CChangesBaseStringValue = CChangesBaseStringValue;
|
||
/**
|
||
* Базовый класс для изменения числовых(byte) значений.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseByteValue(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseByteValue.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseByteValue.prototype.constructor = CChangesBaseByteValue;
|
||
CChangesBaseByteValue.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Byte : New
|
||
// Byte : Old
|
||
|
||
Writer.WriteByte(this.New);
|
||
Writer.WriteByte(this.Old);
|
||
};
|
||
CChangesBaseByteValue.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Byte : New
|
||
// Byte : Old
|
||
|
||
this.New = Reader.GetByte();
|
||
this.Old = Reader.GetByte();
|
||
};
|
||
window['AscDFH'].CChangesBaseByteValue = CChangesBaseByteValue;
|
||
/**
|
||
* Базовый класс для изменения числовых(double) значений.
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseProperty}
|
||
*/
|
||
function CChangesBaseDoubleValue(Class, Old, New, Color)
|
||
{
|
||
CChangesBaseProperty.call(this, Class, Old, New, Color);
|
||
}
|
||
|
||
CChangesBaseDoubleValue.prototype = Object.create(CChangesBaseProperty.prototype);
|
||
CChangesBaseDoubleValue.prototype.constructor = CChangesBaseDoubleValue;
|
||
CChangesBaseDoubleValue.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Double : New
|
||
// Double : Old
|
||
|
||
Writer.WriteDouble(this.New);
|
||
Writer.WriteDouble(this.Old);
|
||
};
|
||
CChangesBaseDoubleValue.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Double : New
|
||
// Double : Old
|
||
|
||
this.New = Reader.GetDouble();
|
||
this.Old = Reader.GetDouble();
|
||
};
|
||
window['AscDFH'].CChangesBaseDoubleValue = CChangesBaseDoubleValue;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
/**
|
||
* User: Ilja.Kirillov
|
||
* Date: 26.10.2016
|
||
* Time: 18:45
|
||
*/
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function(window, undefined)
|
||
{
|
||
function CTableId()
|
||
{
|
||
this.m_aPairs = null;
|
||
this.m_bTurnOff = false;
|
||
this.m_oFactoryClass = {};
|
||
this.Id = null;
|
||
this.isInit = false;
|
||
}
|
||
|
||
CTableId.prototype.checkInit = function()
|
||
{
|
||
return this.isInit;
|
||
};
|
||
CTableId.prototype.init = function()
|
||
{
|
||
this.m_aPairs = {};
|
||
this.m_bTurnOff = false;
|
||
this.m_oFactoryClass = {};
|
||
this.Id = AscCommon.g_oIdCounter.Get_NewId();
|
||
this.Add(this, this.Id);
|
||
this.private_InitFactoryClass();
|
||
this.isInit = true;
|
||
};
|
||
CTableId.prototype.Add = function(Class, Id)
|
||
{
|
||
if (false === this.m_bTurnOff)
|
||
{
|
||
Class.Id = Id;
|
||
this.m_aPairs[Id] = Class;
|
||
|
||
AscCommon.History.Add(new AscCommon.CChangesTableIdAdd(this, Id, Class));
|
||
}
|
||
};
|
||
CTableId.prototype.TurnOff = function()
|
||
{
|
||
this.m_bTurnOff = true;
|
||
};
|
||
CTableId.prototype.TurnOn = function()
|
||
{
|
||
this.m_bTurnOff = false;
|
||
};
|
||
/**
|
||
* Получаем указатель на класс по Id
|
||
* @param Id
|
||
* @returns {*}
|
||
*/
|
||
CTableId.prototype.Get_ById = function(Id)
|
||
{
|
||
if ("" === Id)
|
||
return null;
|
||
|
||
if (this.m_aPairs[Id])
|
||
return this.m_aPairs[Id];
|
||
|
||
return null;
|
||
};
|
||
/**
|
||
* Получаем Id, по классу (вообще, данную функцию лучше не использовать)
|
||
* @param Class
|
||
* @returns {*}
|
||
*/
|
||
CTableId.prototype.Get_ByClass = function(Class)
|
||
{
|
||
if (Class.Get_Id)
|
||
return Class.Get_Id();
|
||
|
||
if (Class.GetId())
|
||
return Class.GetId();
|
||
|
||
return null;
|
||
};
|
||
CTableId.prototype.Get_Id = function()
|
||
{
|
||
return this.Id;
|
||
};
|
||
CTableId.prototype.Clear = function()
|
||
{
|
||
this.m_aPairs = {};
|
||
this.m_bTurnOff = false;
|
||
this.Id = AscCommon.g_oIdCounter.Get_NewId();
|
||
this.Add(this, this.Id);
|
||
};
|
||
CTableId.prototype.private_InitFactoryClass = function()
|
||
{
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Paragraph] = AscCommonWord.Paragraph;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_TextPr] = AscCommonWord.ParaTextPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Hyperlink] = AscCommonWord.ParaHyperlink;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Drawing] = AscCommonWord.ParaDrawing;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Table] = AscCommonWord.CTable;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_TableRow] = AscCommonWord.CTableRow;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_TableCell] = AscCommonWord.CTableCell;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DocumentContent] = AscCommonWord.CDocumentContent;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_HdrFtr] = AscCommonWord.CHeaderFooter;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_AbstractNum] = AscCommonWord.CAbstractNum;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Comment] = AscCommon.CComment;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Style] = AscCommonWord.CStyle;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_CommentMark] = AscCommon.ParaComment;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ParaRun] = AscCommonWord.ParaRun;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Section] = AscCommonWord.CSectionPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Field] = AscCommonWord.ParaField;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_FootEndNote] = AscCommonWord.CFootEndnote;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DefaultShapeDefinition] = AscFormat.DefaultShapeDefinition;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_CNvPr] = AscFormat.CNvPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_NvPr] = AscFormat.NvPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Ph] = AscFormat.Ph;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_UniNvPr] = AscFormat.UniNvPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_StyleRef] = AscFormat.StyleRef;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_FontRef] = AscFormat.FontRef;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Chart] = AscFormat.CChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ChartSpace] = AscFormat.CChartSpace;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Legend] = AscFormat.CLegend;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Layout] = AscFormat.CLayout;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_LegendEntry] = AscFormat.CLegendEntry;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PivotFmt] = AscFormat.CPivotFmt;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DLbl] = AscFormat.CDLbl;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Marker] = AscFormat.CMarker;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PlotArea] = AscFormat.CPlotArea;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_NumFmt] = AscFormat.CNumFmt;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Scaling] = AscFormat.CScaling;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DTable] = AscFormat.CDTable;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_LineChart] = AscFormat.CLineChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DLbls] = AscFormat.CDLbls;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_UpDownBars] = AscFormat.CUpDownBars;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BarChart] = AscFormat.CBarChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BubbleChart] = AscFormat.CBubbleChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DoughnutChart] = AscFormat.CDoughnutChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_OfPieChart] = AscFormat.COfPieChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PieChart] = AscFormat.CPieChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_RadarChart] = AscFormat.CRadarChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ScatterChart] = AscFormat.CScatterChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_StockChart] = AscFormat.CStockChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SurfaceChart] = AscFormat.CSurfaceChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BandFmt] = AscFormat.CBandFmt;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_AreaChart] = AscFormat.CAreaChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ScatterSer] = AscFormat.CScatterSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DPt] = AscFormat.CDPt;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ErrBars] = AscFormat.CErrBars;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_MinusPlus] = AscFormat.CMinusPlus;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_NumLit] = AscFormat.CNumLit;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_NumericPoint] = AscFormat.CNumericPoint;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_NumRef] = AscFormat.CNumRef;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_TrendLine] = AscFormat.CTrendLine;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Tx] = AscFormat.CTx;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_StrRef] = AscFormat.CStrRef;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_StrCache] = AscFormat.CStrCache;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_StrPoint] = AscFormat.CStringPoint;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_XVal] = AscFormat.CXVal;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_MultiLvlStrRef] = AscFormat.CMultiLvlStrRef;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_MultiLvlStrCache] = AscFormat.CMultiLvlStrCache;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_StringLiteral] = AscFormat.CStringLiteral;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_YVal] = AscFormat.CYVal;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_AreaSeries] = AscFormat.CAreaSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Cat] = AscFormat.CCat;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PictureOptions] = AscFormat.CPictureOptions;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_RadarSeries] = AscFormat.CRadarSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BarSeries] = AscFormat.CBarSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_LineSeries] = AscFormat.CLineSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PieSeries] = AscFormat.CPieSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SurfaceSeries] = AscFormat.CSurfaceSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BubbleSeries] = AscFormat.CBubbleSeries;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ExternalData] = AscFormat.CExternalData;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PivotSource] = AscFormat.CPivotSource;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Protection] = AscFormat.CProtection;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ChartWall] = AscFormat.CChartWall;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_View3d] = AscFormat.CView3d;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ChartText] = AscFormat.CChartText;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ShapeStyle] = AscFormat.CShapeStyle;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Xfrm] = AscFormat.CXfrm;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SpPr] = AscFormat.CSpPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ClrScheme] = AscFormat.ClrScheme;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ClrMap] = AscFormat.ClrMap;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ExtraClrScheme] = AscFormat.ExtraClrScheme;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_FontCollection] = AscFormat.FontCollection;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_FontScheme] = AscFormat.FontScheme;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_FormatScheme] = AscFormat.FmtScheme;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ThemeElements] = AscFormat.ThemeElements;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_HF] = AscFormat.HF;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BgPr] = AscFormat.CBgPr;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Bg] = AscFormat.CBg;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PrintSettings] = AscFormat.CPrintSettings;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_HeaderFooterChart] = AscFormat.CHeaderFooterChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PageMarginsChart] = AscFormat.CPageMarginsChart;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PageSetup] = AscFormat.CPageSetup;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Shape] = AscFormat.CShape;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DispUnits] = AscFormat.CDispUnits;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_GroupShape] = AscFormat.CGroupShape;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ImageShape] = AscFormat.CImageShape;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Geometry] = AscFormat.Geometry;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Path] = AscFormat.Path;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_TextBody] = AscFormat.CTextBody;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_CatAx] = AscFormat.CCatAx;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ValAx] = AscFormat.CValAx;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_WrapPolygon] = AscCommonWord.CWrapPolygon;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DateAx] = AscFormat.CDateAx;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SerAx] = AscFormat.CSerAx;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Title] = AscFormat.CTitle;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_OleObject] = AscFormat.COleObject;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Cnx] = AscFormat.CConnectionShape;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DrawingContent] = AscFormat.CDrawingDocContent;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Math] = AscCommonWord.ParaMath;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_MathContent] = AscCommonWord.CMathContent;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_acc] = AscCommonWord.CAccent;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_bar] = AscCommonWord.CBar;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_box] = AscCommonWord.CBox;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_borderBox] = AscCommonWord.CBorderBox;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_delimiter] = AscCommonWord.CDelimiter;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_eqArr] = AscCommonWord.CEqArray;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_frac] = AscCommonWord.CFraction;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_mathFunc] = AscCommonWord.CMathFunc;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_groupChr] = AscCommonWord.CGroupCharacter;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_lim] = AscCommonWord.CLimit;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_matrix] = AscCommonWord.CMathMatrix;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_nary] = AscCommonWord.CNary;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_phant] = AscCommonWord.CPhantom;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_rad] = AscCommonWord.CRadical;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_deg_subsup] = AscCommonWord.CDegreeSubSup;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_deg] = AscCommonWord.CDegree;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_BlockLevelSdt] = AscCommonWord.CBlockLevelSdt;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_InlineLevelSdt] = AscCommonWord.CInlineLevelSdt;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_ParaBookmark] = AscCommonWord.CParagraphBookmark;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Num] = AscCommonWord.CNum;
|
||
|
||
|
||
if (window['AscCommonSlide'])
|
||
{
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Slide] = AscCommonSlide.Slide;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SlideLayout] = AscCommonSlide.SlideLayout;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SlideMaster] = AscCommonSlide.MasterSlide;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_SlideComments] = AscCommonSlide.SlideComments;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PropLocker] = AscCommonSlide.PropLocker;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_NotesMaster] = AscCommonSlide.CNotesMaster;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Notes] = AscCommonSlide.CNotes;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PresentationSection] = AscCommonSlide.CPrSection;
|
||
}
|
||
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Theme] = AscFormat.CTheme;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_GraphicFrame] = AscFormat.CGraphicFrame;
|
||
|
||
if (window['AscCommonExcel'])
|
||
{
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_Sparkline] = AscCommonExcel.sparklineGroup;
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_PivotTableDefinition] = Asc.CT_pivotTableDefinition;
|
||
}
|
||
|
||
this.m_oFactoryClass[AscDFH.historyitem_type_DocumentMacros] = AscCommon.CDocumentMacros;
|
||
};
|
||
CTableId.prototype.GetClassFromFactory = function(nType)
|
||
{
|
||
if (this.m_oFactoryClass[nType])
|
||
return new this.m_oFactoryClass[nType]();
|
||
|
||
return null;
|
||
};
|
||
CTableId.prototype.Refresh_RecalcData = function(Data)
|
||
{
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с совместным редактирования
|
||
//-----------------------------------------------------------------------------------
|
||
CTableId.prototype.Unlock = function(Data)
|
||
{
|
||
// Ничего не делаем
|
||
};
|
||
|
||
window["AscCommon"].g_oTableId = new CTableId();
|
||
window["AscCommon"].CTableId = CTableId;
|
||
})(window);
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
/**
|
||
* User: Ilja.Kirillov
|
||
* Date: 26.10.2016
|
||
* Time: 18:53
|
||
*/
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function(window, undefined)
|
||
{
|
||
/**
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBase}
|
||
*/
|
||
function CChangesTableIdAdd(Class, Id, NewClass)
|
||
{
|
||
AscDFH.CChangesBase.call(this, Class);
|
||
|
||
this.Id = Id;
|
||
this.NewClass = NewClass;
|
||
}
|
||
|
||
CChangesTableIdAdd.prototype = Object.create(AscDFH.CChangesBase.prototype);
|
||
CChangesTableIdAdd.prototype.constructor = CChangesTableIdAdd;
|
||
CChangesTableIdAdd.prototype.Type = AscDFH.historyitem_TableId_Add;
|
||
CChangesTableIdAdd.prototype.Undo = function()
|
||
{
|
||
};
|
||
CChangesTableIdAdd.prototype.Redo = function()
|
||
{
|
||
};
|
||
CChangesTableIdAdd.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// String : Id элемента
|
||
// Varibale : сам элемент
|
||
|
||
Writer.WriteString2(this.Id);
|
||
this.NewClass.Write_ToBinary2(Writer);
|
||
};
|
||
CChangesTableIdAdd.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// String : Id элемента
|
||
// Varibale : сам элемент
|
||
|
||
this.Id = Reader.GetString2();
|
||
this.NewClass = this.private_ReadClassFromBinary(Reader);
|
||
};
|
||
CChangesTableIdAdd.prototype.Load = function(Color)
|
||
{
|
||
this.Class.m_aPairs[this.Id] = this.NewClass;
|
||
};
|
||
CChangesTableIdAdd.prototype.RefreshRecalcData = function()
|
||
{
|
||
};
|
||
CChangesTableIdAdd.prototype.private_ReadClassFromBinary = function(Reader)
|
||
{
|
||
var oTableId = this.Class;
|
||
|
||
var ElementType = Reader.GetLong();
|
||
|
||
oTableId.TurnOff();
|
||
var Element = oTableId.GetClassFromFactory(ElementType);
|
||
|
||
if (null !== Element)
|
||
Element.Read_FromBinary2(Reader);
|
||
|
||
oTableId.TurnOn();
|
||
|
||
return Element;
|
||
};
|
||
CChangesTableIdAdd.prototype.CreateReverseChange = function()
|
||
{
|
||
return null;
|
||
};
|
||
window["AscCommon"].CChangesTableIdAdd = CChangesTableIdAdd;
|
||
/**
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBase}
|
||
*/
|
||
function CChangesTableIdDescription(Class, FileCheckSum, FileSize, Description, ItemsCount, PointIndex, StartPoint, LastPoint, SumIndex, DeletedIndex)
|
||
{
|
||
AscDFH.CChangesBase.call(this, Class);
|
||
|
||
this.FileCheckSum = FileCheckSum;
|
||
this.FileSize = FileSize;
|
||
this.Description = Description;
|
||
this.ItemsCount = ItemsCount;
|
||
this.PointIndex = PointIndex;
|
||
this.StartPoint = StartPoint;
|
||
this.LastPoint = LastPoint;
|
||
this.SumIndex = SumIndex;
|
||
this.DeletedIndex = DeletedIndex;
|
||
this.VersionString = "0.0.0.0.@@Rev";
|
||
}
|
||
|
||
CChangesTableIdDescription.prototype = Object.create(AscDFH.CChangesBase.prototype);
|
||
CChangesTableIdDescription.prototype.constructor = CChangesTableIdDescription;
|
||
CChangesTableIdDescription.prototype.Type = AscDFH.historyitem_TableId_Description;
|
||
CChangesTableIdDescription.prototype.Undo = function()
|
||
{
|
||
};
|
||
CChangesTableIdDescription.prototype.Redo = function()
|
||
{
|
||
};
|
||
CChangesTableIdDescription.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
// Long : FileCheckSum
|
||
// Long : FileSize
|
||
// Long : Description
|
||
// Long : ItemsCount
|
||
// Long : PointIndex
|
||
// Long : StartPoint
|
||
// Long : LastPoint
|
||
// Long : SumIndex
|
||
// Long : DeletedIndex
|
||
// String : Версия SDK
|
||
|
||
Writer.WriteLong(this.FileCheckSum);
|
||
Writer.WriteLong(this.FileSize);
|
||
Writer.WriteLong(this.Description);
|
||
Writer.WriteLong(this.ItemsCount);
|
||
Writer.WriteLong(this.PointIndex);
|
||
Writer.WriteLong(this.StartPoint);
|
||
Writer.WriteLong(this.LastPoint);
|
||
Writer.WriteLong(this.SumIndex);
|
||
Writer.WriteLong(null === this.DeletedIndex ? -10 : this.DeletedIndex);
|
||
Writer.WriteString2(this.VersionString);
|
||
};
|
||
CChangesTableIdDescription.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
// Long : FileCheckSum
|
||
// Long : FileSize
|
||
// Long : Description
|
||
// Long : ItemsCount
|
||
// Long : PointIndex
|
||
// Long : StartPoint
|
||
// Long : LastPoint
|
||
// Long : SumIndex
|
||
// Long : DeletedIndex
|
||
// String : Версия SDK
|
||
|
||
this.FileCheckSum = Reader.GetLong();
|
||
this.FileSize = Reader.GetLong();
|
||
this.Description = Reader.GetLong();
|
||
this.ItemsCount = Reader.GetLong();
|
||
this.PointIndex = Reader.GetLong();
|
||
this.StartPoint = Reader.GetLong();
|
||
this.LastPoint = Reader.GetLong();
|
||
this.SumIndex = Reader.GetLong();
|
||
this.DeletedIndex = Reader.GetLong();
|
||
this.VersionString = Reader.GetString2();
|
||
};
|
||
CChangesTableIdDescription.prototype.Load = function(Color)
|
||
{
|
||
// var CollaborativeEditing = AscCommon.CollaborativeEditing;
|
||
// // CollaborativeEditing LOG
|
||
// console.log("ItemsCount2 " + CollaborativeEditing.m_nErrorLog_PointChangesCount);
|
||
// if (CollaborativeEditing.m_nErrorLog_PointChangesCount !== CollaborativeEditing.m_nErrorLog_SavedPCC)
|
||
// console.log("========================= BAD Changes Count in Point =============================");
|
||
// if (CollaborativeEditing.m_nErrorLog_CurPointIndex + 1 !== this.PointIndex && 0 !== this.PointIndex)
|
||
// console.log("========================= BAD Point index ========================================");
|
||
// var bBadSumIndex = false;
|
||
// if (0 === this.PointIndex)
|
||
// {
|
||
// CollaborativeEditing.m_nErrorLog_SumIndex = 0;
|
||
// }
|
||
// else
|
||
// {
|
||
// // Потому что мы не учитываем данное изменение
|
||
// CollaborativeEditing.m_nErrorLog_SumIndex += CollaborativeEditing.m_nErrorLog_SavedPCC + 1;
|
||
// if (this.PointIndex === this.StartPoint)
|
||
// {
|
||
// if (CollaborativeEditing.m_nErrorLog_SumIndex !== this.SumIndex)
|
||
// bBadSumIndex = true;
|
||
//
|
||
// console.log("SumIndex2 " + CollaborativeEditing.m_nErrorLog_SumIndex);
|
||
// CollaborativeEditing.m_nErrorLog_SumIndex = this.SumIndex;
|
||
// }
|
||
// }
|
||
//
|
||
// console.log("----------------------------");
|
||
// console.log("FileCheckSum " + this.FileCheckSum);
|
||
// console.log("FileSize " + this.FileSize);
|
||
// console.log("Description " + this.Description + " " +
|
||
// AscDFH.GetHistoryPointStringDescription(this.Description));
|
||
// console.log("PointIndex " + this.PointIndex);
|
||
// console.log("StartPoint " + this.StartPoint);
|
||
// console.log("LastPoint " + this.LastPoint);
|
||
// console.log("ItemsCount " + this.ItemsCount);
|
||
// console.log("SumIndex " + this.SumIndex);
|
||
// console.log("DeletedIndex " + (-10 === this.DeletedIndex ? null : this.DeletedIndex));
|
||
// // -1 Чтобы не учитывалось данное изменение
|
||
// CollaborativeEditing.m_nErrorLog_SavedPCC = this.ItemsCount;
|
||
// CollaborativeEditing.m_nErrorLog_PointChangesCount = -1;
|
||
// CollaborativeEditing.m_nErrorLog_CurPointIndex = this.PointIndex;
|
||
// if (bBadSumIndex)
|
||
// console.log("========================= BAD Sum index ==========================================");
|
||
};
|
||
CChangesTableIdDescription.prototype.RefreshRecalcData = function()
|
||
{
|
||
};
|
||
CChangesTableIdDescription.prototype.CreateReverseChange = function()
|
||
{
|
||
return null;
|
||
};
|
||
window["AscCommon"].CChangesTableIdDescription = CChangesTableIdDescription;
|
||
/**
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBase}
|
||
*/
|
||
function CChangesCommonAddWaterMark(Class, Url)
|
||
{
|
||
AscDFH.CChangesBase.call(this, Class);
|
||
|
||
this.Url = Url ? Url : "";
|
||
}
|
||
|
||
CChangesCommonAddWaterMark.prototype = Object.create(AscDFH.CChangesBase.prototype);
|
||
CChangesCommonAddWaterMark.prototype.constructor = CChangesCommonAddWaterMark;
|
||
CChangesCommonAddWaterMark.prototype.Type = AscDFH.historyitem_Common_AddWatermark;
|
||
CChangesCommonAddWaterMark.prototype.Undo = function()
|
||
{
|
||
};
|
||
CChangesCommonAddWaterMark.prototype.Redo = function()
|
||
{
|
||
};
|
||
CChangesCommonAddWaterMark.prototype.WriteToBinary = function(Writer)
|
||
{
|
||
Writer.WriteString2(this.Url);
|
||
};
|
||
CChangesCommonAddWaterMark.prototype.ReadFromBinary = function(Reader)
|
||
{
|
||
this.Url = Reader.GetString2();
|
||
};
|
||
CChangesCommonAddWaterMark.prototype.Load = function(Color)
|
||
{
|
||
var sUrl = this.Url;
|
||
if (editor && editor.WordControl && editor.WordControl.m_oLogicDocument)
|
||
{
|
||
var oLogicDocument = editor.WordControl.m_oLogicDocument;
|
||
if (oLogicDocument instanceof AscCommonWord.CDocument)
|
||
{
|
||
var oParaDrawing = oLogicDocument.DrawingObjects.getTrialImage(sUrl);
|
||
var oFirstParagraph = oLogicDocument.Get_FirstParagraph();
|
||
AscFormat.ExecuteNoHistory(function()
|
||
{
|
||
var oRun = new AscCommonWord.ParaRun();
|
||
oRun.Content.splice(0, 0, oParaDrawing);
|
||
oFirstParagraph.Content.splice(0, 0, oRun);
|
||
oLogicDocument.DrawingObjects.addGraphicObject(oParaDrawing);
|
||
}, this, []);
|
||
}
|
||
else if (oLogicDocument instanceof AscCommonSlide.CPresentation)
|
||
{
|
||
if (oLogicDocument.Slides[0])
|
||
{
|
||
var oDrawing = oLogicDocument.Slides[0].graphicObjects.createWatermarkImage(sUrl);
|
||
oDrawing.spPr.xfrm.offX = (oLogicDocument.Width - oDrawing.spPr.xfrm.extX) / 2;
|
||
oDrawing.spPr.xfrm.offY = (oLogicDocument.Height - oDrawing.spPr.xfrm.extY) / 2;
|
||
oDrawing.parent = oLogicDocument.Slides[0];
|
||
oLogicDocument.Slides[0].cSld.spTree.push(oDrawing);
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var oWsModel = window["Asc"]["editor"].wbModel.aWorksheets[0];
|
||
if (oWsModel)
|
||
{
|
||
var objectRender = new AscFormat.DrawingObjects();
|
||
var oNewDrawing = objectRender.createDrawingObject(AscCommon.c_oAscCellAnchorType.cellanchorAbsolute);
|
||
var oImage = AscFormat.DrawingObjectsController.prototype.createWatermarkImage(sUrl);
|
||
oNewDrawing.ext.cx = oImage.spPr.xfrm.extX;
|
||
oNewDrawing.ext.cy = oImage.spPr.xfrm.extY;
|
||
oNewDrawing.graphicObject = oImage;
|
||
oWsModel.Drawings.push(oNewDrawing);
|
||
}
|
||
}
|
||
};
|
||
CChangesCommonAddWaterMark.prototype.RefreshRecalcData = function()
|
||
{
|
||
};
|
||
CChangesCommonAddWaterMark.prototype.CreateReverseChange = function()
|
||
{
|
||
return null;
|
||
};
|
||
window["AscCommon"].CChangesCommonAddWaterMark = CChangesCommonAddWaterMark;
|
||
})(window);
|
||
|
||
|
||
|
||
AscDFH.changesFactory[AscDFH.historyitem_TableId_Add] = AscCommon.CChangesTableIdAdd;
|
||
AscDFH.changesFactory[AscDFH.historyitem_TableId_Description] = AscCommon.CChangesTableIdDescription;
|
||
|
||
AscDFH.changesFactory[AscDFH.historyitem_Common_AddWatermark] = AscCommon.CChangesCommonAddWaterMark;
|
||
|
||
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Карта зависимости изменений
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
AscDFH.changesRelationMap[AscDFH.historyitem_TableId_Add] = [AscDFH.historyitem_TableId_Add];
|
||
AscDFH.changesRelationMap[AscDFH.historyitem_TableId_Reset] = [AscDFH.historyitem_TableId_Reset];
|
||
AscDFH.changesRelationMap[AscDFH.historyitem_TableId_Description] = [AscDFH.historyitem_TableId_Description];
|
||
AscDFH.changesRelationMap[AscDFH.historyitem_Common_AddWatermark] = [AscDFH.historyitem_Common_AddWatermark];
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(
|
||
/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function ( window, undefined) {
|
||
|
||
/** @constructor */
|
||
function asc_CAdvancedOptions(id,opt){
|
||
this.optionId = null;
|
||
this.options = null;
|
||
|
||
switch(id){
|
||
case Asc.c_oAscAdvancedOptionsID.CSV:
|
||
this.optionId = id;
|
||
this.options = new asc_CCSVOptions(opt);
|
||
break;
|
||
case Asc.c_oAscAdvancedOptionsID.TXT:
|
||
this.optionId = id;
|
||
this.options = new asc_CTXTOptions(opt);
|
||
break;
|
||
case Asc.c_oAscAdvancedOptionsID.DRM:
|
||
this.optionId = id;
|
||
break;
|
||
}
|
||
}
|
||
asc_CAdvancedOptions.prototype.asc_getOptionId = function(){ return this.optionId; };
|
||
asc_CAdvancedOptions.prototype.asc_getOptions = function(){ return this.options; };
|
||
|
||
/** @constructor */
|
||
function asc_CCSVOptions(opt){
|
||
this.codePages = function(){
|
||
var arr = [], c, encodings = opt["encodings"];
|
||
for(var i = 0; i < encodings.length; i++ ){
|
||
c = new asc_CCodePage();
|
||
c.init(encodings[i]);
|
||
arr.push(c);
|
||
}
|
||
return arr;
|
||
}();
|
||
this.recommendedSettings = new asc_CCSVAdvancedOptions (opt["codepage"], opt["delimiter"]);
|
||
this.data = opt["data"];
|
||
}
|
||
asc_CCSVOptions.prototype.asc_getCodePages = function(){ return this.codePages;};
|
||
asc_CCSVOptions.prototype.asc_getRecommendedSettings = function () { return this.recommendedSettings; };
|
||
asc_CCSVOptions.prototype.asc_getData = function () { return this.data; };
|
||
|
||
/** @constructor */
|
||
function asc_CTXTOptions(opt){
|
||
this.codePages = function(){
|
||
var arr = [], c, encodings = opt["encodings"];
|
||
for(var i = 0; i < encodings.length; i++ ){
|
||
c = new asc_CCodePage();
|
||
c.init(encodings[i]);
|
||
arr.push(c);
|
||
}
|
||
return arr;
|
||
}();
|
||
this.recommendedSettings = new asc_CTXTAdvancedOptions (opt["codepage"]);
|
||
this.data = opt["data"];
|
||
}
|
||
asc_CTXTOptions.prototype.asc_getCodePages = function(){ return this.codePages;};
|
||
asc_CTXTOptions.prototype.asc_getRecommendedSettings = function () { return this.recommendedSettings; };
|
||
asc_CTXTOptions.prototype.asc_getData = function () { return this.data; };
|
||
|
||
/** @constructor */
|
||
function asc_CCSVAdvancedOptions(codepage, delimiter, delimiterChar){
|
||
this.codePage = codepage;
|
||
this.delimiter = delimiter;
|
||
this.delimiterChar = delimiterChar;
|
||
}
|
||
asc_CCSVAdvancedOptions.prototype.asc_getDelimiter = function(){return this.delimiter;};
|
||
asc_CCSVAdvancedOptions.prototype.asc_setDelimiter = function(v){this.delimiter = v;};
|
||
asc_CCSVAdvancedOptions.prototype.asc_getDelimiterChar = function(){return this.delimiterChar;};
|
||
asc_CCSVAdvancedOptions.prototype.asc_setDelimiterChar = function(v){this.delimiterChar = v;};
|
||
asc_CCSVAdvancedOptions.prototype.asc_getCodePage = function(){return this.codePage;};
|
||
asc_CCSVAdvancedOptions.prototype.asc_setCodePage = function(v){this.codePage = v;};
|
||
|
||
/** @constructor */
|
||
function asc_CTXTAdvancedOptions(codepage){
|
||
this.codePage = codepage;
|
||
}
|
||
asc_CTXTAdvancedOptions.prototype.asc_getCodePage = function(){return this.codePage;};
|
||
asc_CTXTAdvancedOptions.prototype.asc_setCodePage = function(v){this.codePage = v;};
|
||
|
||
/** @constructor */
|
||
function asc_CDRMAdvancedOptions(password){
|
||
this.password = password;
|
||
}
|
||
asc_CDRMAdvancedOptions.prototype.asc_getPassword = function(){return this.password;};
|
||
asc_CDRMAdvancedOptions.prototype.asc_setPassword = function(v){this.password = v;};
|
||
|
||
/** @constructor */
|
||
function asc_CCodePage(){
|
||
this.codePageName = null;
|
||
this.codePage = null;
|
||
this.text = null;
|
||
this.lcid = null;
|
||
}
|
||
asc_CCodePage.prototype.init = function (encoding) {
|
||
this.codePageName = encoding["name"];
|
||
this.codePage = encoding["codepage"];
|
||
this.text = encoding["text"];
|
||
this.lcid = encoding["lcid"];
|
||
};
|
||
asc_CCodePage.prototype.asc_getCodePageName = function(){return this.codePageName;};
|
||
asc_CCodePage.prototype.asc_setCodePageName = function(v){this.codePageName = v;};
|
||
asc_CCodePage.prototype.asc_getCodePage = function(){return this.codePage;};
|
||
asc_CCodePage.prototype.asc_setCodePage = function(v){this.codePage = v;};
|
||
asc_CCodePage.prototype.asc_getText = function(){return this.text;};
|
||
asc_CCodePage.prototype.asc_setText = function(v){this.text = v;};
|
||
asc_CCodePage.prototype.asc_getLcid = function(){return this.lcid;};
|
||
asc_CCodePage.prototype.asc_setLcid = function(v){this.lcid = v;};
|
||
|
||
/** @constructor */
|
||
function asc_CDelimiter(delimiter){
|
||
this.delimiterName = delimiter;
|
||
}
|
||
asc_CDelimiter.prototype.asc_getDelimiterName = function(){return this.delimiterName;};
|
||
asc_CDelimiter.prototype.asc_setDelimiterName = function(v){ this.delimiterName = v;};
|
||
|
||
/** @constructor */
|
||
function asc_CFormulaGroup(name){
|
||
this.groupName = name;
|
||
this.formulasArray = [];
|
||
}
|
||
asc_CFormulaGroup.prototype.asc_getGroupName = function() { return this.groupName; };
|
||
asc_CFormulaGroup.prototype.asc_getFormulasArray = function() { return this.formulasArray; };
|
||
asc_CFormulaGroup.prototype.asc_addFormulaElement = function(o) { return this.formulasArray.push(o); };
|
||
|
||
/** @constructor */
|
||
function asc_CFormula(o){
|
||
this.name = o.name;
|
||
}
|
||
asc_CFormula.prototype.asc_getName = function () {
|
||
return this.name;
|
||
};
|
||
asc_CFormula.prototype.asc_getLocaleName = function () {
|
||
return AscCommonExcel.cFormulaFunctionToLocale ? AscCommonExcel.cFormulaFunctionToLocale[this.name] : this.name;
|
||
};
|
||
|
||
//----------------------------------------------------------export----------------------------------------------------
|
||
var prot;
|
||
window['Asc'] = window['Asc'] || {};
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window["AscCommon"].asc_CAdvancedOptions = asc_CAdvancedOptions;
|
||
prot = asc_CAdvancedOptions.prototype;
|
||
prot["asc_getOptionId"] = prot.asc_getOptionId;
|
||
prot["asc_getOptions"] = prot.asc_getOptions;
|
||
|
||
prot = asc_CCSVOptions.prototype;
|
||
prot["asc_getCodePages"] = prot.asc_getCodePages;
|
||
prot["asc_getRecommendedSettings"] = prot.asc_getRecommendedSettings;
|
||
prot["asc_getData"] = prot.asc_getData;
|
||
|
||
prot = asc_CTXTOptions.prototype;
|
||
prot["asc_getCodePages"] = prot.asc_getCodePages;
|
||
prot["asc_getRecommendedSettings"] = prot.asc_getRecommendedSettings;
|
||
prot["asc_getData"] = prot.asc_getData;
|
||
|
||
window["Asc"].asc_CCSVAdvancedOptions = window["Asc"]["asc_CCSVAdvancedOptions"] = asc_CCSVAdvancedOptions;
|
||
prot = asc_CCSVAdvancedOptions.prototype;
|
||
prot["asc_getDelimiter"] = prot.asc_getDelimiter;
|
||
prot["asc_setDelimiter"] = prot.asc_setDelimiter;
|
||
prot["asc_getDelimiterChar"] = prot.asc_getDelimiterChar;
|
||
prot["asc_setDelimiterChar"] = prot.asc_setDelimiterChar;
|
||
prot["asc_getCodePage"] = prot.asc_getCodePage;
|
||
prot["asc_setCodePage"] = prot.asc_setCodePage;
|
||
|
||
window["Asc"].asc_CTXTAdvancedOptions = window["Asc"]["asc_CTXTAdvancedOptions"] = asc_CTXTAdvancedOptions;
|
||
prot = asc_CTXTAdvancedOptions.prototype;
|
||
prot["asc_getCodePage"] = prot.asc_getCodePage;
|
||
prot["asc_setCodePage"] = prot.asc_setCodePage;
|
||
|
||
window["Asc"].asc_CDRMAdvancedOptions = window["Asc"]["asc_CDRMAdvancedOptions"] = asc_CDRMAdvancedOptions;
|
||
prot = asc_CDRMAdvancedOptions.prototype;
|
||
prot["asc_getPassword"] = prot.asc_getPassword;
|
||
prot["asc_setPassword"] = prot.asc_setPassword;
|
||
|
||
prot = asc_CCodePage.prototype;
|
||
prot["asc_getCodePageName"] = prot.asc_getCodePageName;
|
||
prot["asc_setCodePageName"] = prot.asc_setCodePageName;
|
||
prot["asc_getCodePage"] = prot.asc_getCodePage;
|
||
prot["asc_setCodePage"] = prot.asc_setCodePage;
|
||
prot["asc_getText"] = prot.asc_getText;
|
||
prot["asc_setText"] = prot.asc_setText;
|
||
prot["asc_getLcid"] = prot.asc_getLcid;
|
||
prot["asc_setLcid"] = prot.asc_setLcid;
|
||
|
||
prot = asc_CDelimiter.prototype;
|
||
prot["asc_getDelimiterName"] = prot.asc_getDelimiterName;
|
||
prot["asc_setDelimiterName"] = prot.asc_setDelimiterName;
|
||
|
||
window["AscCommon"].asc_CFormulaGroup = asc_CFormulaGroup;
|
||
prot = asc_CFormulaGroup.prototype;
|
||
prot["asc_getGroupName"] = prot.asc_getGroupName;
|
||
prot["asc_getFormulasArray"] = prot.asc_getFormulasArray;
|
||
prot["asc_addFormulaElement"] = prot.asc_addFormulaElement;
|
||
|
||
window["AscCommon"].asc_CFormula = asc_CFormula;
|
||
prot = asc_CFormula.prototype;
|
||
prot["asc_getName"] = prot.asc_getName;
|
||
prot["asc_getLocaleName"] = prot.asc_getLocaleName;
|
||
}
|
||
)(window);
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
/** @enum {number} */
|
||
var c_oAscZoomType = {
|
||
Current : 0,
|
||
FitWidth : 1,
|
||
FitPage : 2
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscCollaborativeMarksShowType = {
|
||
All : 0,
|
||
LastChanges : 1
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscVertAlignJc = {
|
||
Top : 0x00, // var vertalignjc_Top = 0x00;
|
||
Center : 0x01, // var vertalignjc_Center = 0x01;
|
||
Bottom : 0x02 // var vertalignjc_Bottom = 0x02
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscAlignType = {
|
||
LEFT : 0,
|
||
CENTER : 1,
|
||
RIGHT : 2,
|
||
JUSTIFY : 3,
|
||
TOP : 4,
|
||
MIDDLE : 5,
|
||
BOTTOM : 6
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscContextMenuTypes = {
|
||
Main : 0,
|
||
Thumbnails : 1
|
||
};
|
||
|
||
var THEME_THUMBNAIL_WIDTH = 180;
|
||
var THEME_THUMBNAIL_HEIGHT = 135;
|
||
var LAYOUT_THUMBNAIL_WIDTH = 180;
|
||
var LAYOUT_THUMBNAIL_HEIGHT = 135;
|
||
|
||
/** @enum {number} */
|
||
var c_oAscTableSelectionType = {
|
||
Cell : 0,
|
||
Row : 1,
|
||
Column : 2,
|
||
Table : 3
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscAlignShapeType = {
|
||
ALIGN_LEFT : 0,
|
||
ALIGN_RIGHT : 1,
|
||
ALIGN_TOP : 2,
|
||
ALIGN_BOTTOM : 3,
|
||
ALIGN_CENTER : 4,
|
||
ALIGN_MIDDLE : 5
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscTableLayout = {
|
||
AutoFit : 0x00,
|
||
Fixed : 0x01
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscSlideTransitionTypes = {
|
||
None : 0,
|
||
Fade : 1,
|
||
Push : 2,
|
||
Wipe : 3,
|
||
Split : 4,
|
||
UnCover : 5,
|
||
Cover : 6,
|
||
Clock : 7,
|
||
Zoom : 8
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscSlideTransitionParams = {
|
||
Fade_Smoothly : 0,
|
||
Fade_Through_Black : 1,
|
||
|
||
Param_Left : 0,
|
||
Param_Top : 1,
|
||
Param_Right : 2,
|
||
Param_Bottom : 3,
|
||
Param_TopLeft : 4,
|
||
Param_TopRight : 5,
|
||
Param_BottomLeft : 6,
|
||
Param_BottomRight : 7,
|
||
|
||
Split_VerticalIn : 8,
|
||
Split_VerticalOut : 9,
|
||
Split_HorizontalIn : 10,
|
||
Split_HorizontalOut : 11,
|
||
|
||
Clock_Clockwise : 0,
|
||
Clock_Counterclockwise : 1,
|
||
Clock_Wedge : 2,
|
||
|
||
Zoom_In : 0,
|
||
Zoom_Out : 1,
|
||
Zoom_AndRotate : 2
|
||
};
|
||
|
||
/** @enum {number} */
|
||
var c_oAscLockTypeElemPresentation = {
|
||
Object : 1,
|
||
Slide : 2,
|
||
Presentation : 3
|
||
};
|
||
|
||
var c_oSerFormat = {
|
||
Version : 1,
|
||
Signature : "PPTY"
|
||
};
|
||
|
||
var TABLE_STYLE_WIDTH_PIX = 70;
|
||
var TABLE_STYLE_HEIGHT_PIX = 50;
|
||
|
||
//------------------------------------------------------------export---------------------------------------------------
|
||
var prot;
|
||
window['Asc'] = window['Asc'] || {};
|
||
|
||
prot = window['Asc']['c_oAscCollaborativeMarksShowType'] = c_oAscCollaborativeMarksShowType;
|
||
prot['All'] = c_oAscCollaborativeMarksShowType.All;
|
||
prot['LastChanges'] = c_oAscCollaborativeMarksShowType.LastChanges;
|
||
|
||
prot = window['Asc']['c_oAscVertAlignJc'] = c_oAscVertAlignJc;
|
||
prot['Top'] = c_oAscVertAlignJc.Top;
|
||
prot['Center'] = c_oAscVertAlignJc.Center;
|
||
prot['Bottom'] = c_oAscVertAlignJc.Bottom;
|
||
|
||
prot = window['Asc']['c_oAscContextMenuTypes'] = window['Asc'].c_oAscContextMenuTypes = c_oAscContextMenuTypes;
|
||
prot['Main'] = c_oAscContextMenuTypes.Main;
|
||
prot['Thumbnails'] = c_oAscContextMenuTypes.Thumbnails;
|
||
|
||
prot = window['Asc']['c_oAscAlignShapeType'] = c_oAscAlignShapeType;
|
||
prot['ALIGN_LEFT'] = c_oAscAlignShapeType.ALIGN_LEFT;
|
||
prot['ALIGN_RIGHT'] = c_oAscAlignShapeType.ALIGN_RIGHT;
|
||
prot['ALIGN_TOP'] = c_oAscAlignShapeType.ALIGN_TOP;
|
||
prot['ALIGN_BOTTOM'] = c_oAscAlignShapeType.ALIGN_BOTTOM;
|
||
prot['ALIGN_CENTER'] = c_oAscAlignShapeType.ALIGN_CENTER;
|
||
prot['ALIGN_MIDDLE'] = c_oAscAlignShapeType.ALIGN_MIDDLE;
|
||
|
||
prot = window['Asc']['c_oAscTableLayout'] = c_oAscTableLayout;
|
||
prot['AutoFit'] = c_oAscTableLayout.AutoFit;
|
||
prot['Fixed'] = c_oAscTableLayout.Fixed;
|
||
|
||
prot = window['Asc']['c_oAscSlideTransitionTypes'] = c_oAscSlideTransitionTypes;
|
||
prot['None'] = c_oAscSlideTransitionTypes.None;
|
||
prot['Fade'] = c_oAscSlideTransitionTypes.Fade;
|
||
prot['Push'] = c_oAscSlideTransitionTypes.Push;
|
||
prot['Wipe'] = c_oAscSlideTransitionTypes.Wipe;
|
||
prot['Split'] = c_oAscSlideTransitionTypes.Split;
|
||
prot['UnCover'] = c_oAscSlideTransitionTypes.UnCover;
|
||
prot['Cover'] = c_oAscSlideTransitionTypes.Cover;
|
||
prot['Clock'] = c_oAscSlideTransitionTypes.Clock;
|
||
prot['Zoom'] = c_oAscSlideTransitionTypes.Zoom;
|
||
|
||
prot = window['Asc']['c_oAscSlideTransitionParams'] = c_oAscSlideTransitionParams;
|
||
prot['Fade_Smoothly'] = c_oAscSlideTransitionParams.Fade_Smoothly;
|
||
prot['Fade_Through_Black'] = c_oAscSlideTransitionParams.Fade_Through_Black;
|
||
prot['Param_Left'] = c_oAscSlideTransitionParams.Param_Left;
|
||
prot['Param_Top'] = c_oAscSlideTransitionParams.Param_Top;
|
||
prot['Param_Right'] = c_oAscSlideTransitionParams.Param_Right;
|
||
prot['Param_Bottom'] = c_oAscSlideTransitionParams.Param_Bottom;
|
||
prot['Param_TopLeft'] = c_oAscSlideTransitionParams.Param_TopLeft;
|
||
prot['Param_TopRight'] = c_oAscSlideTransitionParams.Param_TopRight;
|
||
prot['Param_BottomLeft'] = c_oAscSlideTransitionParams.Param_BottomLeft;
|
||
prot['Param_BottomRight'] = c_oAscSlideTransitionParams.Param_BottomRight;
|
||
prot['Split_VerticalIn'] = c_oAscSlideTransitionParams.Split_VerticalIn;
|
||
prot['Split_VerticalOut'] = c_oAscSlideTransitionParams.Split_VerticalOut;
|
||
prot['Split_HorizontalIn'] = c_oAscSlideTransitionParams.Split_HorizontalIn;
|
||
prot['Split_HorizontalOut'] = c_oAscSlideTransitionParams.Split_HorizontalOut;
|
||
prot['Clock_Clockwise'] = c_oAscSlideTransitionParams.Clock_Clockwise;
|
||
prot['Clock_Counterclockwise'] = c_oAscSlideTransitionParams.Clock_Counterclockwise;
|
||
prot['Clock_Wedge'] = c_oAscSlideTransitionParams.Clock_Wedge;
|
||
prot['Zoom_In'] = c_oAscSlideTransitionParams.Zoom_In;
|
||
prot['Zoom_Out'] = c_oAscSlideTransitionParams.Zoom_Out;
|
||
prot['Zoom_AndRotate'] = c_oAscSlideTransitionParams.Zoom_AndRotate;
|
||
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].c_oSerFormat = c_oSerFormat;
|
||
window['AscCommon'].CurFileVersion = c_oSerFormat.Version;
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(function(window, undefined){
|
||
|
||
var FOREIGN_CURSOR_LABEL_HIDETIME = 1500;
|
||
|
||
function CCollaborativeChanges()
|
||
{
|
||
this.m_pData = null;
|
||
this.m_oColor = null;
|
||
}
|
||
CCollaborativeChanges.prototype.Set_Data = function(pData)
|
||
{
|
||
this.m_pData = pData;
|
||
};
|
||
CCollaborativeChanges.prototype.Set_Color = function(oColor)
|
||
{
|
||
this.m_oColor = oColor;
|
||
};
|
||
CCollaborativeChanges.prototype.Set_FromUndoRedo = function(Class, Data, Binary)
|
||
{
|
||
if (!Class.Get_Id)
|
||
return false;
|
||
|
||
this.m_pData = this.private_SaveData(Binary);
|
||
return true;
|
||
};
|
||
CCollaborativeChanges.prototype.Apply_Data = function()
|
||
{
|
||
var CollaborativeEditing = AscCommon.CollaborativeEditing;
|
||
|
||
var Reader = this.private_LoadData(this.m_pData);
|
||
var ClassId = Reader.GetString2();
|
||
var Class = AscCommon.g_oTableId.Get_ById(ClassId);
|
||
|
||
if (!Class)
|
||
return false;
|
||
|
||
//------------------------------------------------------------------------------------------------------------------
|
||
// Новая схема
|
||
var nReaderPos = Reader.GetCurPos();
|
||
var nChangesType = Reader.GetLong();
|
||
|
||
var fChangesClass = AscDFH.changesFactory[nChangesType];
|
||
if (fChangesClass)
|
||
{
|
||
var oChange = new fChangesClass(Class);
|
||
oChange.ReadFromBinary(Reader);
|
||
|
||
if (true === CollaborativeEditing.private_AddOverallChange(oChange))
|
||
oChange.Load(this.m_oColor);
|
||
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
CollaborativeEditing.private_AddOverallChange(this.m_pData);
|
||
// Сюда мы попадаем, когда у данного изменения нет класса и он все еще работает по старой схеме через объект
|
||
|
||
Reader.Seek2(nReaderPos);
|
||
//\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
|
||
// Старая схема
|
||
|
||
if (!Class.Load_Changes)
|
||
return false;
|
||
|
||
return Class.Load_Changes(Reader, null, this.m_oColor);
|
||
}
|
||
};
|
||
CCollaborativeChanges.prototype.private_LoadData = function(szSrc)
|
||
{
|
||
return this.GetStream(szSrc, 0, szSrc.length);
|
||
};
|
||
CCollaborativeChanges.prototype.GetStream = function(szSrc, offset, srcLen)
|
||
{
|
||
var nWritten = 0;
|
||
|
||
var index = -1 + offset;
|
||
var dst_len = "";
|
||
|
||
while (true)
|
||
{
|
||
index++;
|
||
var _c = szSrc.charCodeAt(index);
|
||
if (_c == ";".charCodeAt(0))
|
||
{
|
||
index++;
|
||
break;
|
||
}
|
||
|
||
dst_len += String.fromCharCode(_c);
|
||
}
|
||
|
||
var dstLen = parseInt(dst_len);
|
||
|
||
var pointer = AscFonts.g_memory.Alloc(dstLen);
|
||
var stream = new AscCommon.FT_Stream2(pointer.data, dstLen);
|
||
stream.obj = pointer.obj;
|
||
|
||
var dstPx = stream.data;
|
||
|
||
if (window.chrome)
|
||
{
|
||
while (index < srcLen)
|
||
{
|
||
var dwCurr = 0;
|
||
var i;
|
||
var nBits = 0;
|
||
for (i = 0; i < 4; i++)
|
||
{
|
||
if (index >= srcLen)
|
||
break;
|
||
var nCh = AscFonts.DecodeBase64Char(szSrc.charCodeAt(index++));
|
||
if (nCh == -1)
|
||
{
|
||
i--;
|
||
continue;
|
||
}
|
||
dwCurr <<= 6;
|
||
dwCurr |= nCh;
|
||
nBits += 6;
|
||
}
|
||
|
||
dwCurr <<= 24 - nBits;
|
||
for (i = 0; i < nBits / 8; i++)
|
||
{
|
||
dstPx[nWritten++] = ((dwCurr & 0x00ff0000) >>> 16);
|
||
dwCurr <<= 8;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var p = AscFonts.b64_decode;
|
||
while (index < srcLen)
|
||
{
|
||
var dwCurr = 0;
|
||
var i;
|
||
var nBits = 0;
|
||
for (i = 0; i < 4; i++)
|
||
{
|
||
if (index >= srcLen)
|
||
break;
|
||
var nCh = p[szSrc.charCodeAt(index++)];
|
||
if (nCh == undefined)
|
||
{
|
||
i--;
|
||
continue;
|
||
}
|
||
dwCurr <<= 6;
|
||
dwCurr |= nCh;
|
||
nBits += 6;
|
||
}
|
||
|
||
dwCurr <<= 24 - nBits;
|
||
for (i = 0; i < nBits / 8; i++)
|
||
{
|
||
dstPx[nWritten++] = ((dwCurr & 0x00ff0000) >>> 16);
|
||
dwCurr <<= 8;
|
||
}
|
||
}
|
||
}
|
||
|
||
return stream;
|
||
};
|
||
CCollaborativeChanges.prototype.private_SaveData = function(Binary)
|
||
{
|
||
var Writer = AscCommon.History.BinaryWriter;
|
||
var Pos = Binary.Pos;
|
||
var Len = Binary.Len;
|
||
return Len + ";" + Writer.GetBase64Memory2(Pos, Len);
|
||
};
|
||
|
||
|
||
function CCollaborativeEditingBase()
|
||
{
|
||
this.m_nUseType = 1; // 1 - 1 клиент и мы сохраняем историю, -1 - несколько клиентов, 0 - переход из -1 в 1
|
||
|
||
this.m_aUsers = []; // Список текущих пользователей, редактирующих данный документ
|
||
this.m_aChanges = []; // Массив с изменениями других пользователей
|
||
|
||
this.m_aNeedUnlock = []; // Массив со списком залоченных объектов(которые были залочены другими пользователями)
|
||
this.m_aNeedUnlock2 = []; // Массив со списком залоченных объектов(которые были залочены на данном клиенте)
|
||
this.m_aNeedLock = []; // Массив со списком залоченных объектов(которые были залочены, но еще не были добавлены на данном клиенте)
|
||
|
||
this.m_aLinkData = []; // Массив, указателей, которые нам надо выставить при загрузке чужих изменений
|
||
this.m_aEndActions = []; // Массив действий, которые надо выполнить после принятия чужих изменений
|
||
|
||
|
||
this.m_bGlobalLock = 0; // Запрещаем производить любые "редактирующие" действия (т.е. то, что в историю запишется)
|
||
this.m_bGlobalLockSelection = 0; // Запрещаем изменять селект и курсор
|
||
this.m_aCheckLocks = []; // Массив для проверки залоченности объектов, которые мы собираемся изменять
|
||
|
||
this.m_aNewObjects = []; // Массив со списком чужих новых объектов
|
||
this.m_aNewImages = []; // Массив со списком картинок, которые нужно будет загрузить на сервере
|
||
this.m_aDC = {}; // Массив(ассоциативный) классов DocumentContent
|
||
this.m_aChangedClasses = {}; // Массив(ассоциативный) классов, в которых есть изменения выделенные цветом
|
||
|
||
this.m_oMemory = null; // Глобальные класс для сохранения (создадим позднее, когда понадобится)
|
||
|
||
this.m_aCursorsToUpdate = {}; // Курсоры, которые нужно обновить после принятия изменений
|
||
this.m_aCursorsToUpdateShortId = {};
|
||
|
||
// // CollaborativeEditing LOG
|
||
// this.m_nErrorLog_PointChangesCount = 0;
|
||
// this.m_nErrorLog_SavedPCC = 0;
|
||
// this.m_nErrorLog_CurPointIndex = -1;
|
||
// this.m_nErrorLog_SumIndex = 0;
|
||
|
||
this.m_bFast = false;
|
||
|
||
this.m_oLogicDocument = null;
|
||
this.m_aDocumentPositions = new CDocumentPositionsManager();
|
||
this.m_aForeignCursorsPos = new CDocumentPositionsManager();
|
||
this.m_aForeignCursors = {};
|
||
this.m_aForeignCursorsId = {};
|
||
|
||
|
||
this.m_nAllChangesSavedIndex = 0;
|
||
|
||
this.m_aAllChanges = []; // Список всех изменений
|
||
this.m_aOwnChangesIndexes = []; // Список номеров своих изменений в общем списке, которые мы можем откатить
|
||
|
||
this.m_oOwnChanges = [];
|
||
}
|
||
|
||
CCollaborativeEditingBase.prototype.Clear = function()
|
||
{
|
||
this.m_nUseType = 1;
|
||
|
||
this.m_aUsers = [];
|
||
this.m_aChanges = [];
|
||
this.m_aNeedUnlock = [];
|
||
this.m_aNeedUnlock2 = [];
|
||
this.m_aNeedLock = [];
|
||
this.m_aLinkData = [];
|
||
this.m_aEndActions = [];
|
||
this.m_aCheckLocks = [];
|
||
this.m_aNewObjects = [];
|
||
this.m_aNewImages = [];
|
||
};
|
||
CCollaborativeEditingBase.prototype.Set_Fast = function(bFast)
|
||
{
|
||
this.m_bFast = bFast;
|
||
|
||
if (false === bFast)
|
||
{
|
||
this.Remove_AllForeignCursors();
|
||
this.RemoveMyCursorFromOthers();
|
||
}
|
||
};
|
||
CCollaborativeEditingBase.prototype.Is_Fast = function()
|
||
{
|
||
return this.m_bFast;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Is_SingleUser = function()
|
||
{
|
||
return (1 === this.m_nUseType);
|
||
};
|
||
CCollaborativeEditingBase.prototype.getCollaborativeEditing = function()
|
||
{
|
||
return !this.Is_SingleUser();
|
||
};
|
||
CCollaborativeEditingBase.prototype.Start_CollaborationEditing = function()
|
||
{
|
||
this.m_nUseType = -1;
|
||
};
|
||
CCollaborativeEditingBase.prototype.End_CollaborationEditing = function()
|
||
{
|
||
if (this.m_nUseType <= 0)
|
||
this.m_nUseType = 0;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_User = function(UserId)
|
||
{
|
||
if (-1 === this.Find_User(UserId))
|
||
this.m_aUsers.push(UserId);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Find_User = function(UserId)
|
||
{
|
||
var Len = this.m_aUsers.length;
|
||
for (var Index = 0; Index < Len; Index++)
|
||
{
|
||
if (this.m_aUsers[Index] === UserId)
|
||
return Index;
|
||
}
|
||
|
||
return -1;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Remove_User = function(UserId)
|
||
{
|
||
var Pos = this.Find_User( UserId );
|
||
if ( -1 != Pos )
|
||
this.m_aUsers.splice( Pos, 1 );
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_Changes = function(Changes)
|
||
{
|
||
this.m_aChanges.push(Changes);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_Unlock = function(LockClass)
|
||
{
|
||
this.m_aNeedUnlock.push( LockClass );
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_Unlock2 = function(Lock)
|
||
{
|
||
this.m_aNeedUnlock2.push(Lock);
|
||
editor._onUpdateDocumentCanSave();
|
||
};
|
||
CCollaborativeEditingBase.prototype.Have_OtherChanges = function()
|
||
{
|
||
return (0 < this.m_aChanges.length);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Apply_Changes = function()
|
||
{
|
||
var OtherChanges = (this.m_aChanges.length > 0);
|
||
|
||
// Если нет чужих изменений, тогда и делать ничего не надо
|
||
if (true === OtherChanges)
|
||
{
|
||
AscFonts.IsCheckSymbols = true;
|
||
editor.WordControl.m_oLogicDocument.Stop_Recalculate();
|
||
editor.WordControl.m_oLogicDocument.EndPreview_MailMergeResult();
|
||
|
||
editor.sync_StartAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.ApplyChanges);
|
||
|
||
var DocState = this.private_SaveDocumentState();
|
||
this.Clear_NewImages();
|
||
|
||
this.Apply_OtherChanges();
|
||
|
||
// После того как мы приняли чужие изменения, мы должны залочить новые объекты, которые были залочены
|
||
this.Lock_NeedLock();
|
||
this.private_RestoreDocumentState(DocState);
|
||
this.OnStart_Load_Objects();
|
||
AscFonts.IsCheckSymbols = false;
|
||
}
|
||
};
|
||
CCollaborativeEditingBase.prototype.Apply_OtherChanges = function()
|
||
{
|
||
// Чтобы заново созданные параграфы не отображались залоченными
|
||
AscCommon.g_oIdCounter.Set_Load( true );
|
||
|
||
if (this.m_aChanges.length > 0)
|
||
this.private_CollectOwnChanges();
|
||
|
||
// Применяем изменения, пока они есть
|
||
var _count = this.m_aChanges.length;
|
||
for (var i = 0; i < _count; i++)
|
||
{
|
||
if (window["NATIVE_EDITOR_ENJINE"] === true && window["native"]["CheckNextChange"])
|
||
{
|
||
if (!window["native"]["CheckNextChange"]())
|
||
break;
|
||
}
|
||
|
||
var Changes = this.m_aChanges[i];
|
||
Changes.Apply_Data();
|
||
// // CollaborativeEditing LOG
|
||
// this.m_nErrorLog_PointChangesCount++;
|
||
}
|
||
|
||
this.private_ClearChanges();
|
||
|
||
// У новых элементов выставляем указатели на другие классы
|
||
this.Apply_LinkData();
|
||
|
||
// Делаем проверки корректности новых изменений
|
||
this.Check_MergeData();
|
||
|
||
this.OnEnd_ReadForeignChanges();
|
||
|
||
AscCommon.g_oIdCounter.Set_Load( false );
|
||
};
|
||
CCollaborativeEditingBase.prototype.getOwnLocksLength = function()
|
||
{
|
||
return this.m_aNeedUnlock2.length;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Send_Changes = function()
|
||
{
|
||
};
|
||
CCollaborativeEditingBase.prototype.Release_Locks = function()
|
||
{
|
||
};
|
||
|
||
|
||
CCollaborativeEditingBase.prototype.CheckWaitingImages = function (aImages) {
|
||
|
||
};
|
||
|
||
CCollaborativeEditingBase.prototype.SendImagesUrlsFromChanges = function (aImages) {
|
||
var rData = {}, oApi = editor || Asc['editor'], i;
|
||
if(!oApi){
|
||
return;
|
||
}
|
||
rData['id'] = oApi.documentId;
|
||
rData['c'] = 'pathurls';
|
||
rData['data'] = [];
|
||
for(i = 0; i < aImages.length; ++i)
|
||
{
|
||
rData['data'].push(aImages[i]);
|
||
}
|
||
var aImagesToLoad = [].concat(AscCommon.CollaborativeEditing.m_aNewImages);
|
||
this.CheckWaitingImages(aImagesToLoad);
|
||
AscCommon.CollaborativeEditing.m_aNewImages.length = 0;
|
||
if(false === oApi.isSaveFonts_Images){
|
||
oApi.isSaveFonts_Images = true;
|
||
}
|
||
oApi.fCurCallback = function (oRes) {
|
||
var aData, i, oUrls;
|
||
if(oRes['status'] === 'ok')
|
||
{
|
||
aData = oRes['data'];
|
||
oUrls= {};
|
||
for(i = 0; i < aData.length; ++i)
|
||
{
|
||
oUrls[aImages[i]] = aData[i];
|
||
}
|
||
AscCommon.g_oDocumentUrls.addUrls(oUrls);
|
||
}
|
||
AscCommon.CollaborativeEditing.SendImagesCallback(aImagesToLoad);
|
||
};
|
||
AscCommon.sendCommand(oApi, null, rData);
|
||
};
|
||
|
||
CCollaborativeEditingBase.prototype.SendImagesCallback = function (aImages) {
|
||
var oApi = editor || Asc['editor'];
|
||
oApi.pre_Save(aImages);
|
||
};
|
||
|
||
|
||
CCollaborativeEditingBase.prototype.CollectImagesFromChanges = function () {
|
||
var oApi = editor || Asc['editor'];
|
||
var aImages = [], sImagePath, i, sImageFromChanges, oThemeUrls = {};
|
||
var aNewImages = this.m_aNewImages;
|
||
var oMap = {};
|
||
for(i = 0; i < aNewImages.length; ++i)
|
||
{
|
||
sImageFromChanges = aNewImages[i];
|
||
if(oMap[sImageFromChanges])
|
||
{
|
||
continue;
|
||
}
|
||
oMap[sImageFromChanges] = 1;
|
||
if(sImageFromChanges.indexOf('theme') === 0 && oApi.ThemeLoader)
|
||
{
|
||
oThemeUrls[sImageFromChanges] = oApi.ThemeLoader.ThemesUrlAbs + sImageFromChanges;
|
||
}
|
||
else if (0 === sImageFromChanges.indexOf('http:') || 0 === sImageFromChanges.indexOf('data:') || 0 === sImageFromChanges.indexOf('https:') ||
|
||
0 === sImageFromChanges.indexOf('file:') || 0 === sImageFromChanges.indexOf('ftp:'))
|
||
{
|
||
}
|
||
else
|
||
{
|
||
sImagePath = AscCommon.g_oDocumentUrls.mediaPrefix + sImageFromChanges;
|
||
if(!AscCommon.g_oDocumentUrls.getUrl(sImagePath))
|
||
{
|
||
aImages.push(sImagePath);
|
||
}
|
||
}
|
||
}
|
||
AscCommon.g_oDocumentUrls.addUrls(oThemeUrls);
|
||
return aImages;
|
||
};
|
||
|
||
|
||
CCollaborativeEditingBase.prototype.OnStart_Load_Objects = function()
|
||
{
|
||
this.Set_GlobalLock(true);
|
||
this.Set_GlobalLockSelection(true);
|
||
// Вызываем функцию для загрузки необходимых элементов (новые картинки и шрифты)
|
||
var aImages = this.CollectImagesFromChanges();
|
||
if(aImages.length > 0)
|
||
{
|
||
this.SendImagesUrlsFromChanges(aImages);
|
||
}
|
||
else
|
||
{
|
||
this.SendImagesCallback([].concat(this.m_aNewImages));
|
||
this.m_aNewImages.length = 0;
|
||
}
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnEnd_Load_Objects = function()
|
||
{
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с ссылками, у новых объектов
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Clear_LinkData = function()
|
||
{
|
||
this.m_aLinkData.length = 0;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_LinkData = function(Class, LinkData)
|
||
{
|
||
this.m_aLinkData.push( { Class : Class, LinkData : LinkData } );
|
||
};
|
||
CCollaborativeEditingBase.prototype.Apply_LinkData = function()
|
||
{
|
||
var Count = this.m_aLinkData.length;
|
||
for ( var Index = 0; Index < Count; Index++ )
|
||
{
|
||
var Item = this.m_aLinkData[Index];
|
||
Item.Class.Load_LinkData( Item.LinkData );
|
||
}
|
||
|
||
this.Clear_LinkData();
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для проверки корректности новых изменений
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Check_MergeData = function()
|
||
{
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для проверки залоченности объектов
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Get_GlobalLock = function()
|
||
{
|
||
return (0 === this.m_bGlobalLock ? false : true);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Set_GlobalLock = function(isLock)
|
||
{
|
||
if (isLock)
|
||
this.m_bGlobalLock++;
|
||
else
|
||
this.m_bGlobalLock = Math.max(0, this.m_bGlobalLock - 1);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Set_GlobalLockSelection = function(isLock)
|
||
{
|
||
if (isLock)
|
||
this.m_bGlobalLockSelection++;
|
||
else
|
||
this.m_bGlobalLockSelection = Math.max(0, this.m_bGlobalLockSelection - 1);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Get_GlobalLockSelection = function()
|
||
{
|
||
return (0 === this.m_bGlobalLockSelection ? false : true);
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnStart_CheckLock = function()
|
||
{
|
||
this.m_aCheckLocks.length = 0;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_CheckLock = function(oItem)
|
||
{
|
||
this.m_aCheckLocks.push(oItem);
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnEnd_CheckLock = function()
|
||
{
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnCallback_AskLock = function(result)
|
||
{
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с залоченными объектами, которые еще не были добавлены
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Reset_NeedLock = function()
|
||
{
|
||
this.m_aNeedLock = {};
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_NeedLock = function(Id, sUser)
|
||
{
|
||
this.m_aNeedLock[Id] = sUser;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Remove_NeedLock = function(Id)
|
||
{
|
||
delete this.m_aNeedLock[Id];
|
||
};
|
||
CCollaborativeEditingBase.prototype.Lock_NeedLock = function()
|
||
{
|
||
for ( var Id in this.m_aNeedLock )
|
||
{
|
||
var Class = AscCommon.g_oTableId.Get_ById( Id );
|
||
|
||
if ( null != Class )
|
||
{
|
||
var Lock = Class.Lock;
|
||
Lock.Set_Type( AscCommon.locktype_Other, false );
|
||
if(Class.getObjectType && Class.getObjectType() === AscDFH.historyitem_type_Slide)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide && editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(Class.num);
|
||
}
|
||
Lock.Set_UserId( this.m_aNeedLock[Id] );
|
||
}
|
||
}
|
||
|
||
this.Reset_NeedLock();
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с новыми объектами, созданными на других клиентах
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Clear_NewObjects = function()
|
||
{
|
||
this.m_aNewObjects.length = 0;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_NewObject = function(Class)
|
||
{
|
||
this.m_aNewObjects.push(Class);
|
||
Class.FromBinary = true;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Clear_EndActions = function()
|
||
{
|
||
this.m_aEndActions.length = 0;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_EndActions = function(Class, Data)
|
||
{
|
||
this.m_aEndActions.push({Class : Class, Data : Data});
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnEnd_ReadForeignChanges = function()
|
||
{
|
||
var Count = this.m_aNewObjects.length;
|
||
|
||
for (var Index = 0; Index < Count; Index++)
|
||
{
|
||
var Class = this.m_aNewObjects[Index];
|
||
Class.FromBinary = false;
|
||
}
|
||
|
||
Count = this.m_aEndActions.length;
|
||
for (var Index = 0; Index < Count; Index++)
|
||
{
|
||
var Item = this.m_aEndActions[Index];
|
||
Item.Class.Process_EndLoad(Item.Data);
|
||
}
|
||
|
||
this.Clear_EndActions();
|
||
this.Clear_NewObjects();
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с новыми объектами, созданными на других клиентах
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Clear_NewImages = function()
|
||
{
|
||
this.m_aNewImages.length = 0;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_NewImage = function(Url)
|
||
{
|
||
this.m_aNewImages.push( Url );
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с массивом m_aDC
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Add_NewDC = function(Class)
|
||
{
|
||
var Id = Class.Get_Id();
|
||
this.m_aDC[Id] = Class;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Clear_DCChanges = function()
|
||
{
|
||
for (var Id in this.m_aDC)
|
||
{
|
||
this.m_aDC[Id].Clear_ContentChanges();
|
||
}
|
||
|
||
// Очищаем массив
|
||
this.m_aDC = {};
|
||
};
|
||
CCollaborativeEditingBase.prototype.Refresh_DCChanges = function()
|
||
{
|
||
for (var Id in this.m_aDC)
|
||
{
|
||
this.m_aDC[Id].Refresh_ContentChanges();
|
||
}
|
||
|
||
this.Clear_DCChanges();
|
||
};
|
||
|
||
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с массивами PosExtChangesX, PosExtChangesY
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.AddPosExtChanges = function(Item, ChangeObject){
|
||
|
||
};
|
||
CCollaborativeEditingBase.prototype.RefreshPosExtChanges = function(){
|
||
|
||
};
|
||
CCollaborativeEditingBase.prototype.RewritePosExtChanges = function(changesArr, scale, Binary_Writer)
|
||
{
|
||
};
|
||
|
||
CCollaborativeEditingBase.prototype.RefreshPosExtChanges = function()
|
||
{
|
||
};
|
||
//-----------------------------------------------------------------------------------
|
||
// Функции для работы с отметками изменений
|
||
//-----------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Add_ChangedClass = function(Class)
|
||
{
|
||
var Id = Class.Get_Id();
|
||
this.m_aChangedClasses[Id] = Class;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Clear_CollaborativeMarks = function(bRepaint)
|
||
{
|
||
for ( var Id in this.m_aChangedClasses )
|
||
{
|
||
this.m_aChangedClasses[Id].Clear_CollaborativeMarks();
|
||
}
|
||
|
||
// Очищаем массив
|
||
this.m_aChangedClasses = {};
|
||
|
||
|
||
if (true === bRepaint)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.ClearCachePages();
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.FirePaint();
|
||
}
|
||
};
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Функции для работы с обновлением курсоров после принятия изменений
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Add_ForeignCursorToUpdate = function(UserId, CursorInfo, UserShortId)
|
||
{
|
||
this.m_aCursorsToUpdate[UserId] = CursorInfo;
|
||
this.m_aCursorsToUpdateShortId[UserId] = UserShortId;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Refresh_ForeignCursors = function()
|
||
{
|
||
if (!this.m_oLogicDocument)
|
||
return;
|
||
|
||
for (var UserId in this.m_aCursorsToUpdate)
|
||
{
|
||
var CursorInfo = this.m_aCursorsToUpdate[UserId];
|
||
this.m_oLogicDocument.Update_ForeignCursor(CursorInfo, UserId, false, this.m_aCursorsToUpdateShortId[UserId]);
|
||
|
||
if (this.Add_ForeignCursorToShow)
|
||
this.Add_ForeignCursorToShow(UserId);
|
||
}
|
||
this.m_aCursorsToUpdate = {};
|
||
this.m_aCursorsToUpdateShortId = {};
|
||
};
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Функции для работы с сохраненными позициями в Word-документах. Они объявлены в базовом классе, потому что вызываются
|
||
// из общих классов Paragraph, Run, Table. Вообщем, для совместимости.
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.Clear_DocumentPositions = function(){
|
||
this.m_aDocumentPositions.Clear_DocumentPositions();
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_DocumentPosition = function(DocumentPos){
|
||
this.m_aDocumentPositions.Add_DocumentPosition(DocumentPos);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Add_ForeignCursor = function(UserId, DocumentPos, UserShortId){
|
||
this.m_aForeignCursorsPos.Remove_DocumentPosition(this.m_aCursorsToUpdate[UserId]);
|
||
this.m_aForeignCursors[UserId] = DocumentPos;
|
||
this.m_aForeignCursorsPos.Add_DocumentPosition(DocumentPos);
|
||
this.m_aForeignCursorsId[UserId] = UserShortId;
|
||
};
|
||
CCollaborativeEditingBase.prototype.Remove_ForeignCursor = function(UserId){
|
||
this.m_aForeignCursorsPos.Remove_DocumentPosition(this.m_aCursorsToUpdate[UserId]);
|
||
delete this.m_aForeignCursors[UserId];
|
||
};
|
||
CCollaborativeEditingBase.prototype.Remove_AllForeignCursors = function(){};
|
||
CCollaborativeEditingBase.prototype.RemoveMyCursorFromOthers = function(){};
|
||
CCollaborativeEditingBase.prototype.Update_DocumentPositionsOnAdd = function(Class, Pos){
|
||
this.m_aDocumentPositions.Update_DocumentPositionsOnAdd(Class, Pos);
|
||
this.m_aForeignCursorsPos.Update_DocumentPositionsOnAdd(Class, Pos);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Update_DocumentPositionsOnRemove = function(Class, Pos, Count){
|
||
this.m_aDocumentPositions.Update_DocumentPositionsOnRemove(Class, Pos, Count);
|
||
this.m_aForeignCursorsPos.Update_DocumentPositionsOnRemove(Class, Pos, Count);
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnStart_SplitRun = function(SplitRun, SplitPos){
|
||
this.m_aDocumentPositions.OnStart_SplitRun(SplitRun, SplitPos);
|
||
this.m_aForeignCursorsPos.OnStart_SplitRun(SplitRun, SplitPos);
|
||
};
|
||
CCollaborativeEditingBase.prototype.OnEnd_SplitRun = function(NewRun){
|
||
this.m_aDocumentPositions.OnEnd_SplitRun(NewRun);
|
||
this.m_aForeignCursorsPos.OnEnd_SplitRun(NewRun);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Update_DocumentPosition = function(DocPos){
|
||
this.m_aDocumentPositions.Update_DocumentPosition(DocPos);
|
||
};
|
||
CCollaborativeEditingBase.prototype.Update_ForeignCursorsPositions = function(){
|
||
|
||
};
|
||
CCollaborativeEditingBase.prototype.InitMemory = function() {
|
||
if (!this.m_oMemory) {
|
||
this.m_oMemory = new AscCommon.CMemory();
|
||
}
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_SaveDocumentState = function()
|
||
{
|
||
var LogicDocument = editor.WordControl.m_oLogicDocument;
|
||
|
||
var DocState;
|
||
if (true !== this.Is_Fast())
|
||
{
|
||
DocState = LogicDocument.Get_SelectionState2();
|
||
this.m_aCursorsToUpdate = {};
|
||
}
|
||
else
|
||
{
|
||
DocState = LogicDocument.Save_DocumentStateBeforeLoadChanges();
|
||
this.Clear_DocumentPositions();
|
||
|
||
if (DocState.Pos)
|
||
this.Add_DocumentPosition(DocState.Pos);
|
||
if (DocState.StartPos)
|
||
this.Add_DocumentPosition(DocState.StartPos);
|
||
if (DocState.EndPos)
|
||
this.Add_DocumentPosition(DocState.EndPos);
|
||
|
||
if (DocState.FootnotesStart && DocState.FootnotesStart.Pos)
|
||
this.Add_DocumentPosition(DocState.FootnotesStart.Pos);
|
||
if (DocState.FootnotesStart && DocState.FootnotesStart.StartPos)
|
||
this.Add_DocumentPosition(DocState.FootnotesStart.StartPos);
|
||
if (DocState.FootnotesStart && DocState.FootnotesStart.EndPos)
|
||
this.Add_DocumentPosition(DocState.FootnotesStart.EndPos);
|
||
if (DocState.FootnotesEnd && DocState.FootnotesEnd.Pos)
|
||
this.Add_DocumentPosition(DocState.FootnotesEnd.Pos);
|
||
if (DocState.FootnotesEnd && DocState.FootnotesEnd.StartPos)
|
||
this.Add_DocumentPosition(DocState.FootnotesEnd.StartPos);
|
||
if (DocState.FootnotesEnd && DocState.FootnotesEnd.EndPos)
|
||
this.Add_DocumentPosition(DocState.FootnotesEnd.EndPos);
|
||
}
|
||
return DocState;
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_RestoreDocumentState = function(DocState)
|
||
{
|
||
var LogicDocument = editor.WordControl.m_oLogicDocument;
|
||
if (true !== this.Is_Fast())
|
||
{
|
||
LogicDocument.Set_SelectionState2(DocState);
|
||
}
|
||
else
|
||
{
|
||
if (DocState.Pos)
|
||
this.Update_DocumentPosition(DocState.Pos);
|
||
if (DocState.StartPos)
|
||
this.Update_DocumentPosition(DocState.StartPos);
|
||
if (DocState.EndPos)
|
||
this.Update_DocumentPosition(DocState.EndPos);
|
||
|
||
if (DocState.FootnotesStart && DocState.FootnotesStart.Pos)
|
||
this.Update_DocumentPosition(DocState.FootnotesStart.Pos);
|
||
if (DocState.FootnotesStart && DocState.FootnotesStart.StartPos)
|
||
this.Update_DocumentPosition(DocState.FootnotesStart.StartPos);
|
||
if (DocState.FootnotesStart && DocState.FootnotesStart.EndPos)
|
||
this.Update_DocumentPosition(DocState.FootnotesStart.EndPos);
|
||
if (DocState.FootnotesEnd && DocState.FootnotesEnd.Pos)
|
||
this.Update_DocumentPosition(DocState.FootnotesEnd.Pos);
|
||
if (DocState.FootnotesEnd && DocState.FootnotesEnd.StartPos)
|
||
this.Update_DocumentPosition(DocState.FootnotesEnd.StartPos);
|
||
if (DocState.FootnotesEnd && DocState.FootnotesEnd.EndPos)
|
||
this.Update_DocumentPosition(DocState.FootnotesEnd.EndPos);
|
||
|
||
|
||
LogicDocument.Load_DocumentStateAfterLoadChanges(DocState);
|
||
this.Refresh_ForeignCursors();
|
||
}
|
||
};
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Private area
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.private_ClearChanges = function()
|
||
{
|
||
this.m_aChanges = [];
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_CollectOwnChanges = function()
|
||
{
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_AddOverallChange = function(oChange)
|
||
{
|
||
return true;
|
||
};
|
||
|
||
|
||
//-------------------------------------
|
||
///
|
||
/////----------------------------------------
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
//
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
CCollaborativeEditingBase.prototype.private_ClearChanges = function()
|
||
{
|
||
this.m_aChanges = [];
|
||
this.m_oOwnChanges = [];
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_CollectOwnChanges = function()
|
||
{
|
||
var StartPoint = ( null === AscCommon.History.SavedIndex ? 0 : AscCommon.History.SavedIndex + 1 );
|
||
var LastPoint = -1;
|
||
|
||
if (this.m_nUseType <= 0)
|
||
LastPoint = AscCommon.History.Points.length - 1;
|
||
else
|
||
LastPoint = AscCommon.History.Index;
|
||
|
||
for (var PointIndex = StartPoint; PointIndex <= LastPoint; PointIndex++)
|
||
{
|
||
var Point = AscCommon.History.Points[PointIndex];
|
||
for (var Index = 0; Index < Point.Items.length; Index++)
|
||
{
|
||
var Item = Point.Items[Index];
|
||
|
||
this.m_oOwnChanges.push(Item.Data);
|
||
}
|
||
}
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_AddOverallChange = function(oChange, isSave)
|
||
{
|
||
// Здесь мы должны смержить пришедшее изменение с одним из наших изменений
|
||
for (var nIndex = 0, nCount = this.m_oOwnChanges.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
if (oChange && oChange.Merge && false === oChange.Merge(this.m_oOwnChanges[nIndex]))
|
||
return false;
|
||
}
|
||
|
||
if (false !== isSave)
|
||
this.m_aAllChanges.push(oChange);
|
||
|
||
return true;
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_OnSendOwnChanges = function(arrChanges, nDeleteIndex)
|
||
{
|
||
if (null !== nDeleteIndex)
|
||
{
|
||
this.m_aAllChanges.length = this.m_nAllChangesSavedIndex + nDeleteIndex;
|
||
}
|
||
else
|
||
{
|
||
this.m_nAllChangesSavedIndex = this.m_aAllChanges.length;
|
||
}
|
||
|
||
// TODO: Пока мы делаем это как одну точку, которую надо откатить. Надо пробежаться по массиву и разбить его
|
||
// по отдельным действиям. В принципе, данная схема срабатывает в быстром совместном редактировании,
|
||
// так что как правило две точки не успевают попасть в одно сохранение.
|
||
if (arrChanges.length > 0)
|
||
{
|
||
this.m_aOwnChangesIndexes.push({
|
||
Position : this.m_aAllChanges.length,
|
||
Count : arrChanges.length
|
||
});
|
||
|
||
this.m_aAllChanges = this.m_aAllChanges.concat(arrChanges);
|
||
}
|
||
};
|
||
CCollaborativeEditingBase.prototype.Undo = function()
|
||
{
|
||
if (true === this.Get_GlobalLock())
|
||
return;
|
||
|
||
if (this.m_aOwnChangesIndexes.length <= 0)
|
||
return false;
|
||
|
||
// Формируем новую пачку действий, которые будут откатывать нужные нам действия.
|
||
|
||
// На первом шаге мы заданнуюю пачку изменений коммутируем с последними измениями. Смотрим на то какой набор
|
||
// изменений у нас получается.
|
||
// Объектная модель у нас простая: класс, в котором возможно есть массив элементов(тоже классов), у которого воможно
|
||
// есть набор свойств. Поэтому у нас ровно 2 типа изменений: изменения внутри массива элементов, либо изменения
|
||
// свойств. Изменения этих двух типов коммутируют между собой, изменения разных классов тоже коммутируют.
|
||
var arrChanges = [];
|
||
var oIndexes = this.m_aOwnChangesIndexes[this.m_aOwnChangesIndexes.length - 1];
|
||
var nPosition = oIndexes.Position;
|
||
var nCount = oIndexes.Count;
|
||
|
||
for (var nIndex = nCount - 1; nIndex >= 0; --nIndex)
|
||
{
|
||
var oChange = this.m_aAllChanges[nPosition + nIndex];
|
||
if (!oChange)
|
||
continue;
|
||
|
||
var oClass = oChange.GetClass();
|
||
if (oChange.IsContentChange())
|
||
{
|
||
var _oChange = oChange.Copy();
|
||
|
||
if (this.private_CommutateContentChanges(_oChange, nPosition + nCount))
|
||
arrChanges.push(_oChange);
|
||
|
||
oChange.SetReverted(true);
|
||
}
|
||
else
|
||
{
|
||
var _oChange = oChange; // TODO: Тут надо бы сделать копирование
|
||
|
||
if (this.private_CommutatePropertyChanges(oClass, _oChange, nPosition + nCount))
|
||
arrChanges.push(_oChange);
|
||
}
|
||
}
|
||
|
||
// Удаляем запись о последнем изменении
|
||
this.m_aOwnChangesIndexes.length = this.m_aOwnChangesIndexes.length - 1;
|
||
|
||
var arrReverseChanges = [];
|
||
for (var nIndex = 0, nCount = arrChanges.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
var oReverseChange = arrChanges[nIndex].CreateReverseChange();
|
||
if (oReverseChange)
|
||
{
|
||
arrReverseChanges.push(oReverseChange);
|
||
oReverseChange.SetReverted(true);
|
||
}
|
||
}
|
||
|
||
// Накатываем изменения в данном клиенте
|
||
var oLogicDocument = this.m_oLogicDocument;
|
||
|
||
oLogicDocument.DrawingDocument.EndTrackTable(null, true);
|
||
oLogicDocument.TurnOffCheckChartSelection();
|
||
|
||
var DocState = this.private_SaveDocumentState();
|
||
var mapDrawings = {};
|
||
for (var nIndex = 0, nCount = arrReverseChanges.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
var oClass = arrReverseChanges[nIndex].GetClass();
|
||
if(oClass && oClass.parent && oClass.parent instanceof AscCommonWord.ParaDrawing){
|
||
mapDrawings[oClass.parent.Get_Id()] = oClass.parent;
|
||
}
|
||
arrReverseChanges[nIndex].Load();
|
||
this.m_aAllChanges.push(arrReverseChanges[nIndex]);
|
||
}
|
||
|
||
// Может так случиться, что в каких-то классах DocumentContent удалились все элементы, либо
|
||
// в классе Paragraph удалился знак конца параграфа. Нам необходимо проверить все классы на корректность, и если
|
||
// нужно, добавить дополнительные изменения.
|
||
|
||
var mapDocumentContents = {};
|
||
var mapParagraphs = {};
|
||
var mapRuns = {};
|
||
var mapTables = {};
|
||
var mapGrObjects = {};
|
||
var mapSlides = {};
|
||
var mapLayouts = {};
|
||
var bChangedLayout = false;
|
||
var bAddSlides = false;
|
||
var mapAddedSlides = {};
|
||
for (var nIndex = 0, nCount = arrReverseChanges.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
var oChange = arrReverseChanges[nIndex];
|
||
var oClass = oChange.GetClass();
|
||
if (oClass instanceof AscCommonWord.CDocument || oClass instanceof AscCommonWord.CDocumentContent)
|
||
mapDocumentContents[oClass.Get_Id()] = oClass;
|
||
else if (oClass instanceof AscCommonWord.Paragraph)
|
||
mapParagraphs[oClass.Get_Id()] = oClass;
|
||
else if (oClass.IsParagraphContentElement && true === oClass.IsParagraphContentElement() && true === oChange.IsContentChange() && oClass.GetParagraph())
|
||
{
|
||
mapParagraphs[oClass.GetParagraph().Get_Id()] = oClass.GetParagraph();
|
||
if (oClass instanceof AscCommonWord.ParaRun)
|
||
mapRuns[oClass.Get_Id()] = oClass;
|
||
}
|
||
else if (oClass instanceof AscCommonWord.ParaDrawing)
|
||
mapDrawings[oClass.Get_Id()] = oClass;
|
||
else if (oClass instanceof AscCommonWord.ParaRun)
|
||
mapRuns[oClass.Get_Id()] = oClass;
|
||
else if (oClass instanceof AscCommonWord.CTable)
|
||
mapTables[oClass.Get_Id()] = oClass;
|
||
else if(oClass instanceof AscFormat.CShape || oClass instanceof AscFormat.CImageShape || oClass instanceof AscFormat.CChartSpace || oClass instanceof AscFormat.CGroupShape || oClass instanceof AscFormat.CGraphicFrame)
|
||
mapGrObjects[oClass.Get_Id()] = oClass;
|
||
else if(typeof AscCommonSlide !== "undefined") {
|
||
if (AscCommonSlide.Slide && oClass instanceof AscCommonSlide.Slide) {
|
||
mapSlides[oClass.Get_Id()] = oClass;
|
||
}
|
||
else if(AscCommonSlide.SlideLayout && oClass instanceof AscCommonSlide.SlideLayout){
|
||
mapLayouts[oClass.Get_Id()] = oClass;
|
||
bChangedLayout = true;
|
||
}
|
||
else if(AscCommonSlide.CPresentation && oClass instanceof AscCommonSlide.CPresentation){
|
||
if(oChange.Type === AscDFH.historyitem_Presentation_RemoveSlide || oChange.Type === AscDFH.historyitem_Presentation_AddSlide){
|
||
bAddSlides = true;
|
||
for(var i = 0; i < oChange.Items.length; ++i){
|
||
mapAddedSlides[oChange.Items[i].Get_Id()] = oChange.Items[i];
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
// Создаем точку в истории. Делаем действия через обычные функции (с отключенным пересчетом), которые пишут в
|
||
// историю. Сохраняем список изменений в новой точке, удаляем данную точку.
|
||
var oHistory = AscCommon.History;
|
||
oHistory.CreateNewPointForCollectChanges();
|
||
if(bAddSlides){
|
||
for(var i = oLogicDocument.Slides.length - 1; i > -1; --i){
|
||
if(mapAddedSlides[oLogicDocument.Slides[i].Get_Id()] && !oLogicDocument.Slides[i].Layout){
|
||
oLogicDocument.removeSlide(i);
|
||
}
|
||
}
|
||
}
|
||
|
||
for(var sId in mapSlides){
|
||
if(mapSlides.hasOwnProperty(sId)){
|
||
mapSlides[sId].correctContent();
|
||
}
|
||
}
|
||
|
||
if(bChangedLayout){
|
||
for(var i = oLogicDocument.Slides.length - 1; i > -1 ; --i){
|
||
var Layout = oLogicDocument.Slides[i].Layout;
|
||
if(!Layout || mapLayouts[Layout.Get_Id()]){
|
||
if(!oLogicDocument.Slides[i].CheckLayout()){
|
||
oLogicDocument.removeSlide(i);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
for(var sId in mapGrObjects){
|
||
var oShape = mapGrObjects[sId];
|
||
if(!oShape.checkCorrect()){
|
||
oShape.setBDeleted(true);
|
||
if(oShape.group){
|
||
oShape.group.removeFromSpTree(oShape.Get_Id());
|
||
}
|
||
else if(AscFormat.Slide && (oShape.parent instanceof AscFormat.Slide)){
|
||
oShape.parent.removeFromSpTreeById(oShape.Get_Id());
|
||
}
|
||
else if(AscCommonWord.ParaDrawing && (oShape.parent instanceof AscCommonWord.ParaDrawing)){
|
||
mapDrawings[oShape.parent.Get_Id()] = oShape.parent;
|
||
}
|
||
}
|
||
else{
|
||
if(oShape.resetGroups){
|
||
oShape.resetGroups();
|
||
}
|
||
}
|
||
}
|
||
var oDrawing;
|
||
for (var sId in mapDrawings)
|
||
{
|
||
if (mapDrawings.hasOwnProperty(sId))
|
||
{
|
||
oDrawing = mapDrawings[sId];
|
||
if (!oDrawing.CheckCorrect())
|
||
{
|
||
var oParentParagraph = oDrawing.Get_ParentParagraph();
|
||
oDrawing.Remove_FromDocument(false);
|
||
if (oParentParagraph)
|
||
{
|
||
mapParagraphs[oParentParagraph.Get_Id()] = oParentParagraph;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
for(var sId in mapRuns){
|
||
if (mapRuns.hasOwnProperty(sId))
|
||
{
|
||
var oRun = mapRuns[sId];
|
||
for(var nIndex = oRun.Content.length - 1; nIndex > - 1; --nIndex){
|
||
if(oRun.Content[nIndex] instanceof AscCommonWord.ParaDrawing){
|
||
if(!oRun.Content[nIndex].CheckCorrect()){
|
||
oRun.Remove_FromContent(nIndex, 1, false);
|
||
if(oRun.Paragraph){
|
||
mapParagraphs[oRun.Paragraph.Get_Id()] = oRun.Paragraph;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
for (var sId in mapTables)
|
||
{
|
||
var oTable = mapTables[sId];
|
||
for (var nCurRow = oTable.Content.length - 1; nCurRow >= 0; --nCurRow)
|
||
{
|
||
var oRow = oTable.Get_Row(nCurRow);
|
||
if (oRow.Get_CellsCount() <= 0)
|
||
oTable.Internal_Remove_Row(nCurRow);
|
||
}
|
||
|
||
if (oTable.Parent instanceof AscCommonWord.CDocument || oTable.Parent instanceof AscCommonWord.CDocumentContent)
|
||
mapDocumentContents[oTable.Parent.Get_Id()] = oTable.Parent;
|
||
}
|
||
|
||
for (var sId in mapDocumentContents)
|
||
{
|
||
var oDocumentContent = mapDocumentContents[sId];
|
||
var nContentLen = oDocumentContent.Content.length;
|
||
for (var nIndex = nContentLen - 1; nIndex >= 0; --nIndex)
|
||
{
|
||
var oElement = oDocumentContent.Content[nIndex];
|
||
if ((AscCommonWord.type_Paragraph === oElement.GetType() || AscCommonWord.type_Table === oElement.GetType()) && oElement.Content.length <= 0)
|
||
{
|
||
oDocumentContent.Remove_FromContent(nIndex, 1);
|
||
}
|
||
}
|
||
|
||
nContentLen = oDocumentContent.Content.length;
|
||
if (nContentLen <= 0 || AscCommonWord.type_Paragraph !== oDocumentContent.Content[nContentLen - 1].GetType())
|
||
{
|
||
var oNewParagraph = new AscCommonWord.Paragraph(oLogicDocument.Get_DrawingDocument(), oDocumentContent, 0, 0, 0, 0, 0, false);
|
||
oDocumentContent.Add_ToContent(nContentLen, oNewParagraph);
|
||
}
|
||
}
|
||
|
||
for (var sId in mapParagraphs)
|
||
{
|
||
var oParagraph = mapParagraphs[sId];
|
||
oParagraph.CheckParaEnd();
|
||
oParagraph.Correct_Content(null, null, true);
|
||
}
|
||
|
||
var oBinaryWriter = AscCommon.History.BinaryWriter;
|
||
var aSendingChanges = [];
|
||
for (var nIndex = 0, nCount = arrReverseChanges.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
var oReverseChange = arrReverseChanges[nIndex];
|
||
var oChangeClass = oReverseChange.GetClass();
|
||
|
||
var nBinaryPos = oBinaryWriter.GetCurPosition();
|
||
oBinaryWriter.WriteString2(oChangeClass.Get_Id());
|
||
oBinaryWriter.WriteLong(oReverseChange.Type);
|
||
oReverseChange.WriteToBinary(oBinaryWriter);
|
||
|
||
var nBinaryLen = oBinaryWriter.GetCurPosition() - nBinaryPos;
|
||
|
||
var oChange = new AscCommon.CCollaborativeChanges();
|
||
oChange.Set_FromUndoRedo(oChangeClass, oReverseChange, {Pos : nBinaryPos, Len : nBinaryLen});
|
||
aSendingChanges.push(oChange.m_pData);
|
||
}
|
||
|
||
var oHistoryPoint = oHistory.Points[oHistory.Points.length - 1];
|
||
for (var nIndex = 0, nCount = oHistoryPoint.Items.length; nIndex < nCount; ++nIndex)
|
||
{
|
||
var oReverseChange = oHistoryPoint.Items[nIndex].Data;
|
||
var oChangeClass = oReverseChange.GetClass();
|
||
|
||
var oChange = new AscCommon.CCollaborativeChanges();
|
||
oChange.Set_FromUndoRedo(oChangeClass, oReverseChange, {Pos : oHistoryPoint.Items[nIndex].Binary.Pos, Len : oHistoryPoint.Items[nIndex].Binary.Len});
|
||
aSendingChanges.push(oChange.m_pData);
|
||
|
||
arrReverseChanges.push(oHistoryPoint.Items[nIndex].Data);
|
||
}
|
||
oHistory.Remove_LastPoint();
|
||
this.Clear_DCChanges();
|
||
|
||
editor.CoAuthoringApi.saveChanges(aSendingChanges, null, null, false, this.getCollaborativeEditing());
|
||
|
||
this.private_RestoreDocumentState(DocState);
|
||
|
||
oLogicDocument.TurnOnCheckChartSelection();
|
||
this.private_RecalculateDocument(AscCommon.History.Get_RecalcData(null, arrReverseChanges));
|
||
|
||
oLogicDocument.Document_UpdateSelectionState();
|
||
oLogicDocument.Document_UpdateInterfaceState();
|
||
oLogicDocument.Document_UpdateRulersState();
|
||
};
|
||
CCollaborativeEditingBase.prototype.CanUndo = function()
|
||
{
|
||
return this.m_aOwnChangesIndexes.length <= 0 ? false : true;
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_CommutateContentChanges = function(oChange, nStartPosition)
|
||
{
|
||
var arrActions = oChange.ConvertToSimpleActions();
|
||
var arrCommutateActions = [];
|
||
|
||
for (var nActionIndex = arrActions.length - 1; nActionIndex >= 0; --nActionIndex)
|
||
{
|
||
var oAction = arrActions[nActionIndex];
|
||
var oResult = oAction;
|
||
|
||
for (var nIndex = nStartPosition, nOverallCount = this.m_aAllChanges.length; nIndex < nOverallCount; ++nIndex)
|
||
{
|
||
var oTempChange = this.m_aAllChanges[nIndex];
|
||
if (!oTempChange)
|
||
continue;
|
||
|
||
if (oChange.IsRelated(oTempChange) && true !== oTempChange.IsReverted())
|
||
{
|
||
var arrOtherActions = oTempChange.ConvertToSimpleActions();
|
||
for (var nIndex2 = 0, nOtherActionsCount2 = arrOtherActions.length; nIndex2 < nOtherActionsCount2; ++nIndex2)
|
||
{
|
||
var oOtherAction = arrOtherActions[nIndex2];
|
||
|
||
if (false === this.private_Commutate(oAction, oOtherAction))
|
||
{
|
||
arrOtherActions.splice(nIndex2, 1);
|
||
oResult = null;
|
||
break;
|
||
}
|
||
}
|
||
|
||
oTempChange.ConvertFromSimpleActions(arrOtherActions);
|
||
}
|
||
|
||
if (!oResult)
|
||
break;
|
||
|
||
}
|
||
|
||
if (null !== oResult)
|
||
arrCommutateActions.push(oResult);
|
||
}
|
||
|
||
if (arrCommutateActions.length > 0)
|
||
oChange.ConvertFromSimpleActions(arrCommutateActions);
|
||
else
|
||
return false;
|
||
|
||
return true;
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_Commutate = function(oActionL, oActionR)
|
||
{
|
||
if (oActionL.Add)
|
||
{
|
||
if (oActionR.Add)
|
||
{
|
||
if (oActionL.Pos >= oActionR.Pos)
|
||
oActionL.Pos++;
|
||
else
|
||
oActionR.Pos--;
|
||
}
|
||
else
|
||
{
|
||
if (oActionL.Pos > oActionR.Pos)
|
||
oActionL.Pos--;
|
||
else if (oActionL.Pos === oActionR.Pos)
|
||
return false;
|
||
else
|
||
oActionR.Pos--;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (oActionR.Add)
|
||
{
|
||
if (oActionL.Pos >= oActionR.Pos)
|
||
oActionL.Pos++;
|
||
else
|
||
oActionR.Pos++;
|
||
}
|
||
else
|
||
{
|
||
if (oActionL.Pos > oActionR.Pos)
|
||
oActionL.Pos--;
|
||
else
|
||
oActionR.Pos++;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
};
|
||
CCollaborativeEditingBase.prototype.private_CommutatePropertyChanges = function(oClass, oChange, nStartPosition)
|
||
{
|
||
// В GoogleDocs если 2 пользователя исправляют одно и тоже свойство у одного и того же класса, тогда Undo работает
|
||
// у обоих. Например, первый выставляет параграф по центру (изначально по левому), второй после этого по правому
|
||
// краю. Тогда на Undo первого пользователя возвращает параграф по левому краю, а у второго по центру, неважно в
|
||
// какой последовательности они вызывают Undo.
|
||
// Далем как у них: т.е. изменения свойств мы всегда откатываем, даже если данное свойсво менялось в последующих
|
||
// изменениях.
|
||
|
||
// Здесь вариант: свойство не откатываем, если оно менялось в одном из последующих действий. (для работы этого
|
||
// варианта нужно реализовать функцию IsRelated у всех изменений).
|
||
|
||
// // Значит это изменение свойства. Пробегаемся по всем следующим изменениям и смотрим, менялось ли такое
|
||
// // свойство у данного класса, если да, тогда данное изменение невозможно скоммутировать.
|
||
// for (var nIndex = nStartPosition, nOverallCount = this.m_aAllChanges.length; nIndex < nOverallCount; ++nIndex)
|
||
// {
|
||
// var oTempChange = this.m_aAllChanges[nIndex];
|
||
// if (!oTempChange || !oTempChange.IsChangesClass || !oTempChangeIsChangesClass())
|
||
// continue;
|
||
//
|
||
// if (oChange.IsRelated(oTempChange))
|
||
// return false;
|
||
// }
|
||
|
||
if(oChange.CheckCorrect && !oChange.CheckCorrect())
|
||
{
|
||
return false;
|
||
}
|
||
return true;
|
||
};
|
||
|
||
|
||
CCollaborativeEditingBase.prototype.private_RecalculateDocument = function(oRecalcData){
|
||
|
||
};
|
||
|
||
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Класс для работы с сохраненными позициями документа.
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Принцип следующий. Заданная позиция - это Run + Позиция внутри данного Run.
|
||
// Если заданный ран был разбит (операция Split), тогда отслеживаем куда перешла
|
||
// заданная позиция, в новый ран или осталась в старом? Если в новый, тогда сохраняем
|
||
// новый ран как отдельную позицию в массив m_aDocumentPositions, и добавляем мап
|
||
// старой позиции в новую m_aDocumentPositionsMap. В конце действия, когда нам нужно
|
||
// определить где же находистся наша позиция, мы сначала проверяем Map, если в нем есть
|
||
// конечная позиция, проверяем является ли заданная позиция валидной в документе.
|
||
// Если да, тогда выставляем ее, если нет, тогда берем Run исходной позиции, и
|
||
// пытаемся сформировать полную позицию по данному Run. Если и это не получается,
|
||
// тогда восстанавливаем позицию по измененной полной исходной позиции.
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
function CDocumentPositionsManager()
|
||
{
|
||
this.m_aDocumentPositions = [];
|
||
this.m_aDocumentPositionsSplit = [];
|
||
this.m_aDocumentPositionsMap = [];
|
||
}
|
||
CDocumentPositionsManager.prototype.Clear_DocumentPositions = function()
|
||
{
|
||
this.m_aDocumentPositions = [];
|
||
this.m_aDocumentPositionsSplit = [];
|
||
this.m_aDocumentPositionsMap = [];
|
||
};
|
||
CDocumentPositionsManager.prototype.Add_DocumentPosition = function(Position)
|
||
{
|
||
this.m_aDocumentPositions.push(Position);
|
||
};
|
||
CDocumentPositionsManager.prototype.Update_DocumentPositionsOnAdd = function(Class, Pos)
|
||
{
|
||
for (var PosIndex = 0, PosCount = this.m_aDocumentPositions.length; PosIndex < PosCount; ++PosIndex)
|
||
{
|
||
var DocPos = this.m_aDocumentPositions[PosIndex];
|
||
for (var ClassPos = 0, ClassLen = DocPos.length; ClassPos < ClassLen; ++ClassPos)
|
||
{
|
||
var _Pos = DocPos[ClassPos];
|
||
if (Class === _Pos.Class
|
||
&& undefined !== _Pos.Position
|
||
&& (_Pos.Position > Pos
|
||
|| (_Pos.Position === Pos && !(Class instanceof AscCommonWord.ParaRun))))
|
||
{
|
||
_Pos.Position++;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
};
|
||
CDocumentPositionsManager.prototype.Update_DocumentPositionsOnRemove = function(Class, Pos, Count)
|
||
{
|
||
for (var PosIndex = 0, PosCount = this.m_aDocumentPositions.length; PosIndex < PosCount; ++PosIndex)
|
||
{
|
||
var DocPos = this.m_aDocumentPositions[PosIndex];
|
||
for (var ClassPos = 0, ClassLen = DocPos.length; ClassPos < ClassLen; ++ClassPos)
|
||
{
|
||
var _Pos = DocPos[ClassPos];
|
||
if (Class === _Pos.Class && undefined !== _Pos.Position)
|
||
{
|
||
if (_Pos.Position > Pos + Count)
|
||
{
|
||
_Pos.Position -= Count;
|
||
}
|
||
else if (_Pos.Position >= Pos)
|
||
{
|
||
if (Class instanceof AscCommonWord.CTable)
|
||
{
|
||
_Pos.Position = Pos;
|
||
if (DocPos[ClassPos + 1]
|
||
&& DocPos[ClassPos + 1].Class instanceof AscCommonWord.CTableRow
|
||
&& undefined !== DocPos[ClassPos + 1].Position
|
||
&& Class.Content[Pos])
|
||
{
|
||
DocPos[ClassPos + 1].Position = Math.max(0, Math.min(DocPos[ClassPos + 1].Position, Class.Content.length - 1));
|
||
}
|
||
}
|
||
else
|
||
{
|
||
// Элемент, в котором находится наша позиция, удаляется. Ставим специальную отметку об этом.
|
||
_Pos.Position = Pos;
|
||
_Pos.Deleted = true;
|
||
}
|
||
}
|
||
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
};
|
||
CDocumentPositionsManager.prototype.OnStart_SplitRun = function(SplitRun, SplitPos)
|
||
{
|
||
this.m_aDocumentPositionsSplit = [];
|
||
|
||
for (var PosIndex = 0, PosCount = this.m_aDocumentPositions.length; PosIndex < PosCount; ++PosIndex)
|
||
{
|
||
var DocPos = this.m_aDocumentPositions[PosIndex];
|
||
for (var ClassPos = 0, ClassLen = DocPos.length; ClassPos < ClassLen; ++ClassPos)
|
||
{
|
||
var _Pos = DocPos[ClassPos];
|
||
if (SplitRun === _Pos.Class && _Pos.Position && _Pos.Position >= SplitPos)
|
||
{
|
||
this.m_aDocumentPositionsSplit.push({DocPos : DocPos, NewRunPos : _Pos.Position - SplitPos});
|
||
}
|
||
}
|
||
}
|
||
};
|
||
CDocumentPositionsManager.prototype.OnEnd_SplitRun = function(NewRun)
|
||
{
|
||
if (!NewRun)
|
||
return;
|
||
|
||
for (var PosIndex = 0, PosCount = this.m_aDocumentPositionsSplit.length; PosIndex < PosCount; ++PosIndex)
|
||
{
|
||
var NewDocPos = [];
|
||
NewDocPos.push({Class : NewRun, Position : this.m_aDocumentPositionsSplit[PosIndex].NewRunPos});
|
||
this.m_aDocumentPositions.push(NewDocPos);
|
||
this.m_aDocumentPositionsMap.push({StartPos : this.m_aDocumentPositionsSplit[PosIndex].DocPos, EndPos : NewDocPos});
|
||
}
|
||
};
|
||
CDocumentPositionsManager.prototype.Update_DocumentPosition = function(DocPos)
|
||
{
|
||
// Смотрим куда мапится заданная позиция
|
||
var NewDocPos = DocPos;
|
||
for (var PosIndex = 0, PosCount = this.m_aDocumentPositionsMap.length; PosIndex < PosCount; ++PosIndex)
|
||
{
|
||
if (this.m_aDocumentPositionsMap[PosIndex].StartPos === NewDocPos)
|
||
NewDocPos = this.m_aDocumentPositionsMap[PosIndex].EndPos;
|
||
}
|
||
|
||
// Нашли результирующую позицию. Проверим является ли она валидной для документа.
|
||
if (NewDocPos !== DocPos && NewDocPos.length === 1 && NewDocPos[0].Class instanceof AscCommonWord.ParaRun)
|
||
{
|
||
var Run = NewDocPos[0].Class;
|
||
var Para = Run.GetParagraph();
|
||
if (AscCommonWord.CanUpdatePosition(Para, Run))
|
||
{
|
||
DocPos.length = 0;
|
||
DocPos.push({Class : Run, Position : NewDocPos[0].Position});
|
||
Run.GetDocumentPositionFromObject(DocPos);
|
||
}
|
||
}
|
||
// Возможно ран с позицией переместился в другой класс
|
||
else if (DocPos.length > 0 && DocPos[DocPos.length - 1].Class instanceof AscCommonWord.ParaRun)
|
||
{
|
||
var Run = DocPos[DocPos.length - 1].Class;
|
||
var RunPos = DocPos[DocPos.length - 1].Position;
|
||
var Para = Run.GetParagraph();
|
||
if (AscCommonWord.CanUpdatePosition(Para, Run))
|
||
{
|
||
DocPos.length = 0;
|
||
DocPos.push({Class : Run, Position : RunPos});
|
||
Run.GetDocumentPositionFromObject(DocPos);
|
||
}
|
||
}
|
||
};
|
||
CDocumentPositionsManager.prototype.Remove_DocumentPosition = function(DocPos)
|
||
{
|
||
for (var Pos = 0, Count = this.m_aDocumentPositions.length; Pos < Count; ++Pos)
|
||
{
|
||
if (this.m_aDocumentPositions[Pos] === DocPos)
|
||
{
|
||
this.m_aDocumentPositions.splice(Pos, 1);
|
||
return;
|
||
}
|
||
}
|
||
};
|
||
//--------------------------------------------------------export----------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].FOREIGN_CURSOR_LABEL_HIDETIME = FOREIGN_CURSOR_LABEL_HIDETIME;
|
||
window['AscCommon'].CCollaborativeChanges = CCollaborativeChanges;
|
||
window['AscCommon'].CCollaborativeEditingBase = CCollaborativeEditingBase;
|
||
window['AscCommon'].CDocumentPositionsManager = CDocumentPositionsManager;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
/**
|
||
*
|
||
* @constructor
|
||
* @extends {AscCommon.CCollaborativeEditingBase}
|
||
*/
|
||
function CCollaborativeEditing()
|
||
{
|
||
AscCommon.CCollaborativeEditingBase.call(this);
|
||
|
||
this.m_oLogicDocument = null;
|
||
this.m_aDocumentPositions = new AscCommon.CDocumentPositionsManager();
|
||
this.m_aForeignCursorsPos = new AscCommon.CDocumentPositionsManager();
|
||
this.m_aForeignCursors = {};
|
||
this.PosExtChangesX = [];
|
||
this.PosExtChangesY = [];
|
||
this.ScaleX = null;
|
||
this.ScaleY = null;
|
||
|
||
this.m_aForeignCursorsXY = {};
|
||
this.m_aForeignCursorsToShow = {};
|
||
}
|
||
|
||
CCollaborativeEditing.prototype = Object.create(AscCommon.CCollaborativeEditingBase.prototype);
|
||
CCollaborativeEditing.prototype.constructor = CCollaborativeEditing;
|
||
|
||
CCollaborativeEditing.prototype.Send_Changes = function(IsUserSave, AdditionalInfo, IsUpdateInterface, isAfterAskSave)
|
||
{
|
||
// Пересчитываем позиции
|
||
this.Refresh_DCChanges();
|
||
this.RefreshPosExtChanges();
|
||
// Генерируем свои изменения
|
||
var StartPoint = ( null === AscCommon.History.SavedIndex ? 0 : AscCommon.History.SavedIndex + 1 );
|
||
var LastPoint = -1;
|
||
if ( this.m_nUseType <= 0 )
|
||
{
|
||
// (ненужные точки предварительно удаляем)
|
||
AscCommon.History.Clear_Redo();
|
||
LastPoint = AscCommon.History.Points.length - 1;
|
||
}
|
||
else
|
||
{
|
||
LastPoint = AscCommon.History.Index;
|
||
}
|
||
// Просчитаем сколько изменений на сервер пересылать не надо
|
||
var SumIndex = 0;
|
||
var StartPoint2 = Math.min( StartPoint, LastPoint + 1 );
|
||
for ( var PointIndex = 0; PointIndex < StartPoint2; PointIndex++ )
|
||
{
|
||
var Point = AscCommon.History.Points[PointIndex];
|
||
SumIndex += Point.Items.length;
|
||
}
|
||
var deleteIndex = ( null === AscCommon.History.SavedIndex ? null : SumIndex );
|
||
|
||
var aChanges = [], aChanges2 = [];
|
||
for ( var PointIndex = StartPoint; PointIndex <= LastPoint; PointIndex++ )
|
||
{
|
||
var Point = AscCommon.History.Points[PointIndex];
|
||
|
||
AscCommon.History.Update_PointInfoItem(PointIndex, StartPoint, LastPoint, SumIndex, deleteIndex);
|
||
for ( var Index = 0; Index < Point.Items.length; Index++ )
|
||
{
|
||
var Item = Point.Items[Index];
|
||
var oChanges = new AscCommon.CCollaborativeChanges();
|
||
oChanges.Set_FromUndoRedo( Item.Class, Item.Data, Item.Binary );
|
||
aChanges2.push(Item.Data);
|
||
aChanges.push( oChanges.m_pData );
|
||
}
|
||
}
|
||
|
||
|
||
// Пока пользователь сидит один, мы не чистим его локи до тех пор пока не зайдет второй
|
||
var bCollaborative = this.getCollaborativeEditing();
|
||
|
||
var num_arr = [];
|
||
if (bCollaborative)
|
||
{
|
||
var map = this.Release_Locks();
|
||
|
||
var UnlockCount2 = this.m_aNeedUnlock2.length;
|
||
for ( var Index = 0; Index < UnlockCount2; Index++ )
|
||
{
|
||
var Class = this.m_aNeedUnlock2[Index];
|
||
Class.Lock.Set_Type( AscCommon.locktype_None, false);
|
||
if(Class.getObjectType && Class.getObjectType() === AscDFH.historyitem_type_Slide)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(Class.num);
|
||
}
|
||
if(Class instanceof AscCommonSlide.PropLocker)
|
||
{
|
||
var Class2 = AscCommon.g_oTableId.Get_ById(Class.objectId);
|
||
if(Class2 && Class2.getObjectType && Class2.getObjectType() === AscDFH.historyitem_type_Slide && Class2.deleteLock === Class)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(Class2.num);
|
||
}
|
||
}
|
||
|
||
var check_obj = null;
|
||
if(Class.getObjectType)
|
||
{
|
||
if( (Class.getObjectType() === AscDFH.historyitem_type_Shape
|
||
|| Class.getObjectType() === AscDFH.historyitem_type_ImageShape
|
||
|| Class.getObjectType() === AscDFH.historyitem_type_GroupShape
|
||
|| Class.getObjectType() === AscDFH.historyitem_type_GraphicFrame
|
||
|| Class.getObjectType() === AscDFH.historyitem_type_ChartSpace
|
||
|| Class.getObjectType() === AscDFH.historyitem_type_OleObject
|
||
|| Class.getObjectType() === AscDFH.historyitem_type_Cnx) && AscCommon.isRealObject(Class.parent))
|
||
{
|
||
if(Class.parent && AscFormat.isRealNumber(Class.parent.num))
|
||
{
|
||
map[Class.parent.num] = true;
|
||
}
|
||
|
||
check_obj =
|
||
{
|
||
"type": c_oAscLockTypeElemPresentation.Object,
|
||
"slideId": Class.parent.Get_Id(),
|
||
"objId": Class.Get_Id(),
|
||
"guid": Class.Get_Id()
|
||
};
|
||
}
|
||
else if(Class.getObjectType() === AscDFH.historyitem_type_Slide)
|
||
{
|
||
check_obj =
|
||
{
|
||
"type": c_oAscLockTypeElemPresentation.Slide,
|
||
"val": Class.Get_Id(),
|
||
"guid": Class.Get_Id()
|
||
};
|
||
}
|
||
else if(Class instanceof AscCommon.CComment){
|
||
if(Class.Parent && Class.Parent.slide){
|
||
if(Class.Parent.slide === editor.WordControl.m_oLogicDocument){
|
||
check_obj =
|
||
{
|
||
"type": c_oAscLockTypeElemPresentation.Slide,
|
||
"val": editor.WordControl.m_oLogicDocument.commentsLock.Get_Id(),
|
||
"guid": editor.WordControl.m_oLogicDocument.commentsLock.Get_Id()
|
||
};
|
||
}
|
||
else {
|
||
check_obj =
|
||
{
|
||
"type": c_oAscLockTypeElemPresentation.Object,
|
||
"slideId": Class.Parent.slide.deleteLock.Get_Id(),
|
||
"objId": Class.Get_Id(),
|
||
"guid": Class.Get_Id()
|
||
};
|
||
map[Class.Parent.slide.num] = true;
|
||
}
|
||
}
|
||
}
|
||
if(check_obj)
|
||
editor.CoAuthoringApi.releaseLocks( check_obj );
|
||
}
|
||
}
|
||
|
||
|
||
if(editor.WordControl.m_oDrawingDocument.IsLockObjectsEnable)
|
||
{
|
||
for(var key in map)
|
||
{
|
||
if(map.hasOwnProperty(key))
|
||
{
|
||
num_arr.push(parseInt(key, 10));
|
||
}
|
||
}
|
||
num_arr.sort(AscCommon.fSortAscending);
|
||
}
|
||
this.m_aNeedUnlock.length = 0;
|
||
this.m_aNeedUnlock2.length = 0;
|
||
}
|
||
|
||
if (0 < aChanges.length || null !== deleteIndex) {
|
||
this.private_OnSendOwnChanges(aChanges2, deleteIndex);
|
||
editor.CoAuthoringApi.saveChanges(aChanges, deleteIndex, AdditionalInfo, editor.canUnlockDocument2, bCollaborative);
|
||
AscCommon.History.CanNotAddChanges = true;
|
||
} else
|
||
editor.CoAuthoringApi.unLockDocument(!!isAfterAskSave, editor.canUnlockDocument2, null, bCollaborative);
|
||
editor.canUnlockDocument2 = false;
|
||
|
||
if ( -1 === this.m_nUseType )
|
||
{
|
||
// Чистим Undo/Redo только во время совместного редактирования
|
||
AscCommon.History.Clear();
|
||
AscCommon.History.SavedIndex = null;
|
||
}
|
||
else if ( 0 === this.m_nUseType )
|
||
{
|
||
// Чистим Undo/Redo только во время совместного редактирования
|
||
AscCommon.History.Clear();
|
||
AscCommon.History.SavedIndex = null;
|
||
|
||
this.m_nUseType = 1;
|
||
}
|
||
else
|
||
{
|
||
// Обновляем точку последнего сохранения в истории
|
||
AscCommon.History.Reset_SavedIndex(IsUserSave);
|
||
}
|
||
|
||
for(var i = 0; i < num_arr.length; ++i)
|
||
{
|
||
editor.WordControl.m_oDrawingDocument.OnRecalculatePage(num_arr[i], editor.WordControl.m_oLogicDocument.Slides[num_arr[i]]);
|
||
}
|
||
if(num_arr.length > 0)
|
||
{
|
||
editor.WordControl.m_oDrawingDocument.OnEndRecalculate();
|
||
}
|
||
var oSlide = editor.WordControl.m_oLogicDocument.Slides[editor.WordControl.m_oLogicDocument.CurPage];
|
||
if(oSlide && oSlide.notesShape){
|
||
editor.WordControl.m_oDrawingDocument.Notes_OnRecalculate(editor.WordControl.m_oLogicDocument.CurPage, oSlide.NotesWidth, oSlide.getNotesHeight());
|
||
}
|
||
editor.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
editor.WordControl.m_oLogicDocument.Document_UpdateUndoRedoState();
|
||
|
||
// editor.WordControl.m_oLogicDocument.DrawingDocument.ClearCachePages();
|
||
// editor.WordControl.m_oLogicDocument.DrawingDocument.FirePaint();
|
||
};
|
||
|
||
AscCommon.CCollaborativeEditingBase.prototype.Refresh_ForeignCursors = function()
|
||
{
|
||
for (var UserId in this.m_aCursorsToUpdate)
|
||
{
|
||
var CursorInfo = this.m_aCursorsToUpdate[UserId];
|
||
editor.WordControl.m_oLogicDocument.Update_ForeignCursor(CursorInfo, UserId, false, this.m_aCursorsToUpdateShortId[UserId]);
|
||
|
||
if (this.Add_ForeignCursorToShow)
|
||
this.Add_ForeignCursorToShow(UserId);
|
||
}
|
||
this.m_aCursorsToUpdate = {};
|
||
this.m_aCursorsToUpdateShortId = {};
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.Release_Locks = function()
|
||
{
|
||
var map_redraw = {};
|
||
var UnlockCount = this.m_aNeedUnlock.length;
|
||
for ( var Index = 0; Index < UnlockCount; Index++ )
|
||
{
|
||
var CurLockType = this.m_aNeedUnlock[Index].Lock.Get_Type();
|
||
if ( AscCommon.locktype_Other3 != CurLockType && AscCommon.locktype_Other != CurLockType )
|
||
{
|
||
//if(this.m_aNeedUnlock[Index] instanceof AscCommonSlide.Slide) //TODO: проверять LockObject
|
||
// editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(this.m_aNeedUnlock[Index].num);
|
||
var Class = this.m_aNeedUnlock[Index];
|
||
this.m_aNeedUnlock[Index].Lock.Set_Type( AscCommon.locktype_None, false);
|
||
if ( Class instanceof AscCommonSlide.PropLocker )
|
||
{
|
||
var object = AscCommon.g_oTableId.Get_ById(Class.objectId);
|
||
if(object instanceof AscCommonSlide.CPresentation)
|
||
{
|
||
if(Class === editor.WordControl.m_oLogicDocument.themeLock)
|
||
{
|
||
editor.sendEvent("asc_onUnLockDocumentTheme");
|
||
}
|
||
else if(Class === editor.WordControl.m_oLogicDocument.schemeLock)
|
||
{
|
||
editor.sendEvent("asc_onUnLockDocumentSchema");
|
||
}
|
||
else if(Class === editor.WordControl.m_oLogicDocument.slideSizeLock)
|
||
{
|
||
editor.sendEvent("asc_onUnLockDocumentProps");
|
||
}
|
||
}
|
||
if(object.getObjectType && object.getObjectType() === AscDFH.historyitem_type_Slide && object.deleteLock === Class)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(object.num);
|
||
}
|
||
}
|
||
if(Class instanceof AscCommon.CComment)
|
||
{
|
||
editor.sync_UnLockComment(Class.Get_Id());
|
||
if(Class.Parent && Class.Parent.slide && editor.WordControl.m_oLogicDocument !== Class.Parent.slide)
|
||
{
|
||
map_redraw[Class.Parent.slide.num] = true;
|
||
}
|
||
}
|
||
}
|
||
else if ( AscCommon.locktype_Other3 === CurLockType )
|
||
{
|
||
this.m_aNeedUnlock[Index].Lock.Set_Type( AscCommon.locktype_Other, false);
|
||
if(this.m_aNeedUnlock[Index] instanceof AscCommonSlide.Slide)
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.LockSlide(this.m_aNeedUnlock[Index].num);
|
||
}
|
||
if(this.m_aNeedUnlock[Index].parent && AscFormat.isRealNumber(this.m_aNeedUnlock[Index].parent.num))
|
||
{
|
||
map_redraw[this.m_aNeedUnlock[Index].parent.num] = true;
|
||
}
|
||
}
|
||
return map_redraw;
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.OnEnd_Load_Objects = function()
|
||
{
|
||
// Данная функция вызывается, когда загрузились внешние объекты (картинки и шрифты)
|
||
|
||
// Снимаем лок
|
||
AscCommon.CollaborativeEditing.Set_GlobalLock(false);
|
||
AscCommon.CollaborativeEditing.Set_GlobalLockSelection(false);
|
||
|
||
// Запускаем полный пересчет документа
|
||
var LogicDocument = editor.WordControl.m_oLogicDocument;
|
||
|
||
var RecalculateData =
|
||
{
|
||
Drawings: {
|
||
All: true
|
||
},
|
||
Map: {
|
||
|
||
}
|
||
};
|
||
|
||
LogicDocument.Recalculate(RecalculateData);
|
||
LogicDocument.Document_UpdateSelectionState();
|
||
LogicDocument.Document_UpdateInterfaceState();
|
||
|
||
editor.sync_EndAction(Asc.c_oAscAsyncActionType.BlockInteraction, Asc.c_oAscAsyncAction.ApplyChanges);
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.OnEnd_CheckLock = function()
|
||
{
|
||
var aIds = [];
|
||
|
||
var Count = this.m_aCheckLocks.length;
|
||
for ( var Index = 0; Index < Count; Index++ )
|
||
{
|
||
var oItem = this.m_aCheckLocks[Index];
|
||
|
||
if ( true === oItem ) // сравниваем по значению и типу обязательно
|
||
return true;
|
||
else if ( false !== oItem )
|
||
aIds.push( oItem );
|
||
}
|
||
|
||
if ( aIds.length > 0 )
|
||
{
|
||
// Отправляем запрос на сервер со списком Id
|
||
editor.CoAuthoringApi.askLock( aIds, this.OnCallback_AskLock );
|
||
|
||
// Ставим глобальный лок, только во время совместного редактирования
|
||
if ( -1 === this.m_nUseType )
|
||
{
|
||
this.Set_GlobalLock(true);
|
||
}
|
||
else
|
||
{
|
||
// Пробегаемся по массиву и проставляем, что залочено нами
|
||
var Count = this.m_aCheckLocks.length;
|
||
for ( var Index = 0; Index < Count; Index++ )
|
||
{
|
||
var oItem = this.m_aCheckLocks[Index];
|
||
var items = [];
|
||
switch(oItem["type"])
|
||
{
|
||
case c_oAscLockTypeElemPresentation.Object:
|
||
{
|
||
items.push(oItem["objId"]);
|
||
items.push(oItem["slideId"]);
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Slide:
|
||
{
|
||
items.push(oItem["val"]);
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Presentation:
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
|
||
for(var i = 0; i < items.length; ++i)
|
||
{
|
||
var item = items[i];
|
||
if ( true !== item && false !== item ) // сравниваем по значению и типу обязательно
|
||
{
|
||
var Class = AscCommon.g_oTableId.Get_ById( item );
|
||
if ( null != Class )
|
||
{
|
||
Class.Lock.Set_Type( AscCommon.locktype_Mine, false );
|
||
if(Class instanceof AscCommonSlide.Slide)
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(Class.num);
|
||
this.Add_Unlock2( Class );
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
this.m_aCheckLocks.length = 0;
|
||
}
|
||
}
|
||
|
||
return false;
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.OnCallback_AskLock = function(result)
|
||
{
|
||
if (true === AscCommon.CollaborativeEditing.Get_GlobalLock())
|
||
{
|
||
if (false == editor.checkLongActionCallback(AscCommon.CollaborativeEditing.OnCallback_AskLock, result))
|
||
return;
|
||
|
||
// Снимаем глобальный лок
|
||
AscCommon.CollaborativeEditing.Set_GlobalLock(false);
|
||
|
||
if (result["lock"])
|
||
{
|
||
// Пробегаемся по массиву и проставляем, что залочено нами
|
||
|
||
var Count = AscCommon.CollaborativeEditing.m_aCheckLocks.length;
|
||
for ( var Index = 0; Index < Count; Index++ )
|
||
{
|
||
var oItem = AscCommon.CollaborativeEditing.m_aCheckLocks[Index];
|
||
var item;
|
||
switch(oItem["type"])
|
||
{
|
||
case c_oAscLockTypeElemPresentation.Object:
|
||
{
|
||
item = oItem["objId"];
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Slide:
|
||
{
|
||
item = oItem["val"];
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Presentation:
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
if ( true !== oItem && false !== oItem ) // сравниваем по значению и типу обязательно
|
||
{
|
||
var Class = AscCommon.g_oTableId.Get_ById( item );
|
||
if ( null != Class )
|
||
{
|
||
Class.Lock.Set_Type( AscCommon.locktype_Mine );
|
||
if(Class instanceof AscCommonSlide.Slide)
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(Class.num);
|
||
AscCommon.CollaborativeEditing.Add_Unlock2( Class );
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else if (result["error"])
|
||
{
|
||
// Если у нас началось редактирование диаграммы, а вернулось, что ее редактировать нельзя,
|
||
// посылаем сообщение о закрытии редактора диаграмм.
|
||
if ( true === editor.isChartEditor )
|
||
editor.sync_closeChartEditor();
|
||
|
||
// Делаем откат на 1 шаг назад и удаляем из Undo/Redo эту последнюю точку
|
||
editor.WordControl.m_oLogicDocument.Document_Undo();
|
||
AscCommon.History.Clear_Redo();
|
||
}
|
||
|
||
}
|
||
editor.isChartEditor = false;
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.AddPosExtChanges = function(Item, ChangeObject)
|
||
{
|
||
if(ChangeObject.IsHorizontal())
|
||
{
|
||
this.PosExtChangesX.push(Item);
|
||
}
|
||
else
|
||
{
|
||
this.PosExtChangesY.push(Item);
|
||
}
|
||
};
|
||
|
||
|
||
CCollaborativeEditing.prototype.RewritePosExtChanges = function(changesArr, scale)
|
||
{
|
||
for(var i = 0; i < changesArr.length; ++i)
|
||
{
|
||
var changes = changesArr[i];
|
||
var data = changes.Data;
|
||
data.New *= scale;
|
||
data.Old *= scale;
|
||
var Binary_Writer = AscCommon.History.BinaryWriter;
|
||
var Binary_Pos = Binary_Writer.GetCurPosition();
|
||
Binary_Writer.WriteString2(changes.Class.Get_Id());
|
||
Binary_Writer.WriteLong(changes.Data.Type);
|
||
changes.Data.WriteToBinary(Binary_Writer);
|
||
|
||
var Binary_Len = Binary_Writer.GetCurPosition() - Binary_Pos;
|
||
|
||
changes.Binary.Pos = Binary_Pos;
|
||
changes.Binary.Len = Binary_Len;
|
||
}
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.RefreshPosExtChanges = function()
|
||
{
|
||
if(this.ScaleX != null && this.ScaleY != null)
|
||
{
|
||
this.RewritePosExtChanges(this.PosExtChangesX, this.ScaleX);
|
||
this.RewritePosExtChanges(this.PosExtChangesY, this.ScaleY);
|
||
}
|
||
this.PosExtChangesX.length = 0;
|
||
this.PosExtChangesY.length = 0;
|
||
this.ScaleX = null;
|
||
this.ScaleY = null;
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.Update_ForeignCursorsPositions = function()
|
||
{
|
||
var DrawingDocument = editor.WordControl.m_oDrawingDocument;
|
||
var oPresentation = editor.WordControl.m_oLogicDocument;
|
||
var oTargetDocContentOrTable;
|
||
var oCurController = oPresentation.GetCurrentController();
|
||
if(oCurController){
|
||
oTargetDocContentOrTable = oCurController.getTargetDocContent(undefined, true);
|
||
}
|
||
if(!oTargetDocContentOrTable){
|
||
for (var UserId in this.m_aForeignCursors){
|
||
DrawingDocument.Collaborative_RemoveTarget(UserId);
|
||
}
|
||
return;
|
||
}
|
||
var bTable = (oTargetDocContentOrTable instanceof AscCommonWord.CTable);
|
||
for (var UserId in this.m_aForeignCursors){
|
||
var DocPos = this.m_aForeignCursors[UserId];
|
||
if (!DocPos || DocPos.length <= 0)
|
||
continue;
|
||
|
||
this.m_aForeignCursorsPos.Update_DocumentPosition(DocPos);
|
||
|
||
var Run = DocPos[DocPos.length - 1].Class;
|
||
var InRunPos = DocPos[DocPos.length - 1].Position;
|
||
this.Update_ForeignCursorPosition(UserId, Run, InRunPos, false, oTargetDocContentOrTable, bTable);
|
||
}
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.Update_ForeignCursorPosition = function(UserId, Run, InRunPos, isRemoveLabel, oTargetDocContentOrTable, bTable){
|
||
if (!(Run instanceof AscCommonWord.ParaRun))
|
||
return;
|
||
|
||
var DrawingDocument = editor.WordControl.m_oDrawingDocument;
|
||
var oPresentation = editor.WordControl.m_oLogicDocument;
|
||
var Paragraph = Run.GetParagraph();
|
||
if (!Paragraph || !Paragraph.Parent){
|
||
DrawingDocument.Collaborative_RemoveTarget(UserId);
|
||
return;
|
||
}
|
||
|
||
if(!bTable){
|
||
if(oTargetDocContentOrTable !== Paragraph.Parent){
|
||
DrawingDocument.Collaborative_RemoveTarget(UserId);
|
||
return;
|
||
}
|
||
}
|
||
else{
|
||
if(!Paragraph.Parent.Parent || !Paragraph.Parent.Parent.Row ||
|
||
!Paragraph.Parent.Parent.Row.Table || Paragraph.Parent.Parent.Row.Table !== oTargetDocContentOrTable){
|
||
DrawingDocument.Collaborative_RemoveTarget(UserId);
|
||
return;
|
||
}
|
||
}
|
||
|
||
var ParaContentPos = Paragraph.Get_PosByElement(Run);
|
||
if (!ParaContentPos){
|
||
DrawingDocument.Collaborative_RemoveTarget(UserId);
|
||
return;
|
||
}
|
||
ParaContentPos.Update(InRunPos, ParaContentPos.Get_Depth() + 1);
|
||
var XY = Paragraph.Get_XYByContentPos(ParaContentPos);
|
||
if (XY && XY.Height > 0.001){
|
||
var ShortId = this.m_aForeignCursorsId[UserId] ? this.m_aForeignCursorsId[UserId] : UserId;
|
||
DrawingDocument.Collaborative_UpdateTarget(UserId, ShortId, XY.X, XY.Y, XY.Height, oPresentation.CurPage, Paragraph.Get_ParentTextTransform());
|
||
this.Add_ForeignCursorXY(UserId, XY.X, XY.Y, XY.PageNum, XY.Height, Paragraph, isRemoveLabel);
|
||
if (true === this.m_aForeignCursorsToShow[UserId]){
|
||
this.Show_ForeignCursorLabel(UserId);
|
||
this.Remove_ForeignCursorToShow(UserId);
|
||
}
|
||
}
|
||
else{
|
||
DrawingDocument.Collaborative_RemoveTarget(UserId);
|
||
this.Remove_ForeignCursorXY(UserId);
|
||
this.Remove_ForeignCursorToShow(UserId);
|
||
}
|
||
};
|
||
|
||
CCollaborativeEditing.prototype.Check_ForeignCursorsLabels = function(X, Y, PageIndex){
|
||
|
||
var DrawingDocument = editor.WordControl.m_oDrawingDocument;
|
||
var Px7 = DrawingDocument.GetMMPerDot(7);
|
||
var Px3 = DrawingDocument.GetMMPerDot(3);
|
||
|
||
for (var UserId in this.m_aForeignCursorsXY){
|
||
var Cursor = this.m_aForeignCursorsXY[UserId];
|
||
if (true === Cursor.Transform && Cursor.PageIndex === PageIndex && Cursor.X0 - Px3 < X && X < Cursor.X1 + Px3 && Cursor.Y0 - Px3 < Y && Y < Cursor.Y1 + Px3){
|
||
this.Show_ForeignCursorLabel(UserId);
|
||
}
|
||
}
|
||
};
|
||
CCollaborativeEditing.prototype.Show_ForeignCursorLabel = function(UserId)
|
||
{
|
||
|
||
var Api = editor;
|
||
var DrawingDocument = editor.WordControl.m_oDrawingDocument;
|
||
|
||
if (!this.m_aForeignCursorsXY[UserId])
|
||
return;
|
||
|
||
var Cursor = this.m_aForeignCursorsXY[UserId];
|
||
if (Cursor.ShowId)
|
||
clearTimeout(Cursor.ShowId);
|
||
|
||
Cursor.ShowId = setTimeout(function()
|
||
{
|
||
Cursor.ShowId = null;
|
||
Api.sync_HideForeignCursorLabel(UserId);
|
||
}, AscCommon.FOREIGN_CURSOR_LABEL_HIDETIME);
|
||
|
||
var UserShortId = this.m_aForeignCursorsId[UserId] ? this.m_aForeignCursorsId[UserId] : UserId;
|
||
var Color = AscCommon.getUserColorById(UserShortId, null, true);
|
||
var Coords = DrawingDocument.Collaborative_GetTargetPosition(UserId);
|
||
if (!Color || !Coords)
|
||
return;
|
||
|
||
this.Update_ForeignCursorLabelPosition(UserId, Coords.X, Coords.Y, Color);
|
||
};
|
||
CCollaborativeEditing.prototype.Add_ForeignCursorToShow = function(UserId)
|
||
{
|
||
this.m_aForeignCursorsToShow[UserId] = true;
|
||
};
|
||
CCollaborativeEditing.prototype.Remove_ForeignCursorToShow = function(UserId)
|
||
{
|
||
delete this.m_aForeignCursorsToShow[UserId];
|
||
};
|
||
CCollaborativeEditing.prototype.Add_ForeignCursorXY = function(UserId, X, Y, PageIndex, H, Paragraph, isRemoveLabel)
|
||
{
|
||
var Cursor;
|
||
if (!this.m_aForeignCursorsXY[UserId])
|
||
{
|
||
Cursor = {X: X, Y: Y, H: H, PageIndex: PageIndex, Transform: false, ShowId: null};
|
||
this.m_aForeignCursorsXY[UserId] = Cursor;
|
||
}
|
||
else
|
||
{
|
||
Cursor = this.m_aForeignCursorsXY[UserId];
|
||
if (Cursor.ShowId)
|
||
{
|
||
if (true === isRemoveLabel)
|
||
{
|
||
clearTimeout(Cursor.ShowId);
|
||
Cursor.ShowId = null;
|
||
editor.sync_HideForeignCursorLabel(UserId);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
Cursor.ShowId = null;
|
||
}
|
||
|
||
Cursor.X = X;
|
||
Cursor.Y = Y;
|
||
Cursor.PageIndex = PageIndex;
|
||
Cursor.H = H;
|
||
}
|
||
|
||
var Transform = Paragraph.Get_ParentTextTransform();
|
||
if (Transform)
|
||
{
|
||
Cursor.Transform = true;
|
||
var X0 = Transform.TransformPointX(Cursor.X, Cursor.Y);
|
||
var Y0 = Transform.TransformPointY(Cursor.X, Cursor.Y);
|
||
var X1 = Transform.TransformPointX(Cursor.X, Cursor.Y + Cursor.H);
|
||
var Y1 = Transform.TransformPointY(Cursor.X, Cursor.Y + Cursor.H);
|
||
|
||
Cursor.X0 = Math.min(X0, X1);
|
||
Cursor.Y0 = Math.min(Y0, Y1);
|
||
Cursor.X1 = Math.max(X0, X1);
|
||
Cursor.Y1 = Math.max(Y0, Y1);
|
||
}
|
||
else
|
||
{
|
||
Cursor.Transform = false;
|
||
}
|
||
|
||
};
|
||
CCollaborativeEditing.prototype.Remove_ForeignCursorXY = function(UserId)
|
||
{
|
||
if (this.m_aForeignCursorsXY[UserId])
|
||
{
|
||
if (this.m_aForeignCursorsXY[UserId].ShowId)
|
||
{
|
||
editor.sync_HideForeignCursorLabel(UserId);
|
||
clearTimeout(this.m_aForeignCursorsXY[UserId].ShowId);
|
||
}
|
||
|
||
delete this.m_aForeignCursorsXY[UserId];
|
||
}
|
||
};
|
||
CCollaborativeEditing.prototype.Update_ForeignCursorLabelPosition = function(UserId, X, Y, Color)
|
||
{
|
||
|
||
var Cursor = this.m_aForeignCursorsXY[UserId];
|
||
if (!Cursor || !Cursor.ShowId)
|
||
return;
|
||
|
||
editor.sync_ShowForeignCursorLabel(UserId, X, Y, Color);
|
||
};
|
||
|
||
|
||
CCollaborativeEditing.prototype.private_RecalculateDocument = function(oRecalcData){
|
||
this.m_oLogicDocument.Recalculate(oRecalcData);
|
||
};
|
||
|
||
|
||
//--------------------------------------------------------export----------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].CollaborativeEditing = new CCollaborativeEditing();
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(/**
|
||
* @param {Window} window
|
||
* @param {undefined} undefined
|
||
*/
|
||
function (window, undefined)
|
||
{
|
||
/** @constructor */
|
||
function CDocumentMacros()
|
||
{
|
||
this.Id = "_macrosGlobalId";//AscCommon.g_oIdCounter.Get_NewId();
|
||
|
||
this.Lock = new AscCommon.CLock();
|
||
|
||
this.Data = "";
|
||
|
||
AscCommon.g_oTableId.Add(this, this.Id);
|
||
}
|
||
CDocumentMacros.prototype.SetData = function(sData)
|
||
{
|
||
AscCommon.History.Add(new CChangesDocumentMacrosData(this, this.Data, sData));
|
||
this.Data = sData;
|
||
};
|
||
CDocumentMacros.prototype.GetData = function()
|
||
{
|
||
return this.Data;
|
||
};
|
||
CDocumentMacros.prototype.Get_Id = function()
|
||
{
|
||
return this.Id;
|
||
};
|
||
CDocumentMacros.prototype.CheckLock = function()
|
||
{
|
||
this.Lock.Check(this.Id);
|
||
};
|
||
CDocumentMacros.prototype.Write_ToBinary2 = function(Writer)
|
||
{
|
||
Writer.WriteLong(AscDFH.historyitem_type_DocumentMacros);
|
||
|
||
// String2 : Id
|
||
// String2 : Data
|
||
|
||
Writer.WriteString2("" + this.Id);
|
||
Writer.WriteString2(this.Data);
|
||
};
|
||
CDocumentMacros.prototype.Read_FromBinary2 = function(Reader)
|
||
{
|
||
// String2 : Id
|
||
// String2 : Data
|
||
|
||
this.Id = Reader.GetString2();
|
||
this.Data = Reader.GetString2();
|
||
};
|
||
|
||
CDocumentMacros.prototype.Refresh_RecalcData = function()
|
||
{
|
||
};
|
||
|
||
AscDFH.changesFactory[AscDFH.historyitem_DocumentMacros_Data] = CChangesDocumentMacrosData;
|
||
AscDFH.changesRelationMap[AscDFH.historyitem_DocumentMacros_Data] = [AscDFH.historyitem_DocumentMacros_Data];
|
||
|
||
/**
|
||
* @constructor
|
||
* @extends {AscDFH.CChangesBaseStringProperty}
|
||
*/
|
||
function CChangesDocumentMacrosData(Class, Old, New)
|
||
{
|
||
AscDFH.CChangesBaseStringProperty.call(this, Class, Old, New);
|
||
}
|
||
CChangesDocumentMacrosData.prototype = Object.create(AscDFH.CChangesBaseStringProperty.prototype);
|
||
CChangesDocumentMacrosData.prototype.constructor = CChangesDocumentMacrosData;
|
||
CChangesDocumentMacrosData.prototype.Type = AscDFH.historyitem_DocumentMacros_Data;
|
||
CChangesDocumentMacrosData.prototype.private_SetValue = function(Value)
|
||
{
|
||
this.Class.Data = Value;
|
||
};
|
||
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window["AscCommon"].CDocumentMacros = CDocumentMacros;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(function(window, undefined)
|
||
{
|
||
var prot;
|
||
|
||
// Import
|
||
var c_oEditorId = AscCommon.c_oEditorId;
|
||
var c_oCloseCode = AscCommon.c_oCloseCode;
|
||
|
||
var c_oAscError = Asc.c_oAscError;
|
||
var c_oAscAsyncAction = Asc.c_oAscAsyncAction;
|
||
var c_oAscAsyncActionType = Asc.c_oAscAsyncActionType;
|
||
|
||
/** @constructor */
|
||
function baseEditorsApi(config, editorId)
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["CreateEditorApi"]();
|
||
|
||
this.editorId = editorId;
|
||
this.isLoadFullApi = false;
|
||
this.openResult = null;
|
||
|
||
this.HtmlElementName = config['id-view'] || '';
|
||
this.HtmlElement = null;
|
||
|
||
this.isMobileVersion = (config['mobile'] === true);
|
||
this.isEmbedVersion = (config['embedded'] === true);
|
||
|
||
this.isViewMode = false;
|
||
this.restrictions = Asc.c_oAscRestrictionType.None;
|
||
|
||
this.FontLoader = null;
|
||
this.ImageLoader = null;
|
||
|
||
this.LoadedObject = null;
|
||
this.DocumentType = 0; // 0 - empty, 1 - test, 2 - document (from json)
|
||
this.DocInfo = null;
|
||
this.documentId = undefined;
|
||
this.documentUserId = undefined;
|
||
this.documentUrl = "null";
|
||
this.documentUrlChanges = null;
|
||
this.documentCallbackUrl = undefined; // Ссылка для отправления информации о документе
|
||
this.documentFormat = "null";
|
||
this.documentTitle = "null";
|
||
this.documentFormatSave = Asc.c_oAscFileType.UNKNOWN;
|
||
|
||
this.documentOpenOptions = undefined; // Опции при открытии (пока только опции для CSV)
|
||
|
||
// Тип состояния на данный момент (сохранение, открытие или никакое)
|
||
this.advancedOptionsAction = AscCommon.c_oAscAdvancedOptionsAction.None;
|
||
// Тип скачивания файлы(download или event).нужен для txt, csv. запоминаем на asc_DownloadAs используем asc_setAdvancedOptions
|
||
this.downloadType = AscCommon.DownloadType.None;
|
||
this.OpenDocumentProgress = new AscCommon.COpenProgress();
|
||
var sProtocol = window.location.protocol;
|
||
this.documentOrigin = ((sProtocol && '' !== sProtocol) ? sProtocol + '//' : '') + window.location.host; // for presentation theme url
|
||
this.documentPathname = window.location.pathname; // for presentation theme url
|
||
|
||
// Переменная отвечает, получили ли мы ответ с сервера совместного редактирования
|
||
this.ServerIdWaitComplete = false;
|
||
|
||
// Long action
|
||
this.IsLongActionCurrent = 0;
|
||
this.LongActionCallbacks = [];
|
||
this.LongActionCallbacksParams = [];
|
||
|
||
// AutoSave
|
||
this.autoSaveGap = 0; // Интервал автосохранения (0 - означает, что автосохранения нет) в милесекундах
|
||
this.lastSaveTime = null; // Время последнего сохранения
|
||
this.autoSaveGapFast = 2000; // Интервал быстрого автосохранения (когда человек один) - 2 сек.
|
||
this.autoSaveGapSlow = 10 * 60 * 1000; // Интервал медленного автосохранения (когда совместно) - 10 минут
|
||
this.intervalWaitAutoSave = 1000;
|
||
|
||
// Unlock document
|
||
this.canUnlockDocument = false;
|
||
this.canUnlockDocument2 = false; // Дублирующий флаг, только для saveChanges или unLockDocument
|
||
this.canStartCoAuthoring = false;
|
||
|
||
this.isDocumentCanSave = false; // Флаг, говорит о возможности сохранять документ (активна кнопка save или нет)
|
||
|
||
// translate manager
|
||
this.translateManager = AscCommon.translateManager.init(config['translate']);
|
||
|
||
// Chart
|
||
this.chartPreviewManager = null;
|
||
this.textArtPreviewManager = null;
|
||
this.shapeElementId = null;
|
||
// Режим вставки диаграмм в редакторе документов
|
||
this.isChartEditor = false;
|
||
this.isOpenedChartFrame = false;
|
||
|
||
this.MathMenuLoad = false;
|
||
|
||
// CoAuthoring and Chat
|
||
this.User = undefined;
|
||
this.CoAuthoringApi = new AscCommon.CDocsCoApi();
|
||
this.isCoAuthoringEnable = true;
|
||
// Массив lock-ов, которые были на открытии документа
|
||
this.arrPreOpenLocksObjects = [];
|
||
|
||
// Spell Checking
|
||
this.SpellCheckUrl = ''; // Ссылка сервиса для проверки орфографии
|
||
|
||
// Результат получения лицензии
|
||
this.licenseResult = null;
|
||
// Подключились ли уже к серверу
|
||
this.isOnFirstConnectEnd = false;
|
||
// Получили ли лицензию
|
||
this.isOnLoadLicense = false;
|
||
// Переменная, которая отвечает, послали ли мы окончание открытия документа
|
||
this.isDocumentLoadComplete = false;
|
||
// Переменная, которая отвечает, послали ли мы окончание открытия документа
|
||
this.isPreOpenLocks = true;
|
||
this.isApplyChangesOnOpenEnabled = true;
|
||
|
||
this.canSave = true; // Флаг нужен чтобы не происходило сохранение пока не завершится предыдущее сохранение
|
||
this.IsUserSave = false; // Флаг, контролирующий сохранение было сделано пользователем или нет (по умолчанию - нет)
|
||
this.isForceSaveOnUserSave = false;
|
||
this.forceSaveButtonTimeout = null;
|
||
this.forceSaveButtonContinue = false;
|
||
this.forceSaveTimeoutTimeout = null;
|
||
this.disconnectOnSave = null;
|
||
this.forceSaveUndoRequest = false; // Флаг нужен, чтобы мы знали, что данное сохранение пришло по запросу Undo в совместке
|
||
|
||
// Version History
|
||
this.VersionHistory = null; // Объект, который отвечает за точку в списке версий
|
||
|
||
//Флаги для применения свойств через слайдеры
|
||
this.noCreatePoint = false;
|
||
this.exucuteHistory = false;
|
||
this.exucuteHistoryEnd = false;
|
||
|
||
this.selectSearchingResults = false;
|
||
|
||
this.isSendStandartTextures = false;
|
||
|
||
this.tmpFocus = null;
|
||
|
||
this.fCurCallback = null;
|
||
|
||
this.pluginsManager = null;
|
||
|
||
this.isLockTargetUpdate = false;
|
||
|
||
this.lastWorkTime = 0;
|
||
|
||
this.signatures = [];
|
||
|
||
this.currentPassword = "";
|
||
|
||
this.macros = null;
|
||
|
||
this.openFileCryptBinary = null;
|
||
|
||
this.copyOutEnabled = (config['copyoutenabled'] !== false);
|
||
|
||
//config['watermark_on_draw'] = window.TEST_WATERMARK_STRING;
|
||
this.watermarkDraw =
|
||
config['watermark_on_draw'] ? new AscCommon.CWatermarkOnDraw(config['watermark_on_draw']) : null;
|
||
|
||
return this;
|
||
}
|
||
|
||
baseEditorsApi.prototype._init = function()
|
||
{
|
||
var t = this;
|
||
//Asc.editor = Asc['editor'] = AscCommon['editor'] = AscCommon.editor = this; // ToDo сделать это!
|
||
this.HtmlElement = document.getElementById(this.HtmlElementName);
|
||
|
||
// init OnMessage
|
||
AscCommon.InitOnMessage(function(error, url)
|
||
{
|
||
if (c_oAscError.ID.No !== error)
|
||
{
|
||
t.sendEvent("asc_onError", error, c_oAscError.Level.NoCritical);
|
||
}
|
||
else
|
||
{
|
||
t._addImageUrl([url]);
|
||
}
|
||
|
||
t.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
});
|
||
|
||
AscCommon.loadSdk(this._editorNameById(), function()
|
||
{
|
||
t.isLoadFullApi = true;
|
||
|
||
t._onEndLoadSdk();
|
||
t.onEndLoadDocInfo();
|
||
}, function(err) {
|
||
t.sendEvent("asc_onError", Asc.c_oAscError.ID.LoadingScriptError, c_oAscError.Level.Critical);
|
||
});
|
||
|
||
var oldOnError = window.onerror;
|
||
window.onerror = function(errorMsg, url, lineNumber, column, errorObj) {
|
||
var msg = 'Error: ' + errorMsg + ' Script: ' + url + ' Line: ' + lineNumber + ':' + column +
|
||
' userAgent: ' + (navigator.userAgent || navigator.vendor || window.opera) + ' platform: ' +
|
||
navigator.platform + ' isLoadFullApi: ' + t.isLoadFullApi + ' isDocumentLoadComplete: ' +
|
||
t.isDocumentLoadComplete + ' StackTrace: ' + (errorObj ? errorObj.stack : "");
|
||
t.CoAuthoringApi.sendChangesError(msg);
|
||
//send only first error to reduce number of requests. also following error may be consequences of first
|
||
window.onerror = oldOnError;
|
||
if (oldOnError) {
|
||
return oldOnError.apply(this, arguments);
|
||
} else {
|
||
return false;
|
||
}
|
||
}
|
||
};
|
||
baseEditorsApi.prototype._editorNameById = function()
|
||
{
|
||
var res = '';
|
||
switch (this.editorId)
|
||
{
|
||
case c_oEditorId.Word:
|
||
res = 'word';
|
||
break;
|
||
case c_oEditorId.Spreadsheet:
|
||
res = 'cell';
|
||
break;
|
||
case c_oEditorId.Presentation:
|
||
res = 'slide';
|
||
break;
|
||
}
|
||
return res;
|
||
};
|
||
baseEditorsApi.prototype.getEditorId = function()
|
||
{
|
||
return this.editorId;
|
||
};
|
||
baseEditorsApi.prototype.asc_GetFontThumbnailsPath = function()
|
||
{
|
||
return '../Common/Images/';
|
||
};
|
||
baseEditorsApi.prototype.asc_getDocumentName = function()
|
||
{
|
||
return this.documentTitle;
|
||
};
|
||
baseEditorsApi.prototype.asc_setDocInfo = function(oDocInfo)
|
||
{
|
||
var oldInfo = this.DocInfo;
|
||
if (oDocInfo)
|
||
{
|
||
this.DocInfo = oDocInfo;
|
||
}
|
||
|
||
if (this.DocInfo)
|
||
{
|
||
this.documentId = this.DocInfo.get_Id();
|
||
this.documentUserId = this.DocInfo.get_UserId();
|
||
this.documentUrl = this.DocInfo.get_Url();
|
||
this.documentTitle = this.DocInfo.get_Title();
|
||
this.documentFormat = this.DocInfo.get_Format();
|
||
this.documentCallbackUrl = this.DocInfo.get_CallbackUrl();
|
||
|
||
this.documentOpenOptions = this.DocInfo.asc_getOptions();
|
||
|
||
this.User = new AscCommon.asc_CUser();
|
||
this.User.setId(this.DocInfo.get_UserId());
|
||
this.User.setUserName(this.DocInfo.get_UserName());
|
||
this.User.setFirstName(this.DocInfo.get_FirstName());
|
||
this.User.setLastName(this.DocInfo.get_LastName());
|
||
|
||
//чтобы в versionHistory был один documentId для auth и open
|
||
this.CoAuthoringApi.setDocId(this.documentId);
|
||
|
||
if (this.watermarkDraw)
|
||
{
|
||
this.watermarkDraw.CheckParams(this);
|
||
}
|
||
}
|
||
|
||
if (AscCommon.chartMode === this.documentUrl)
|
||
{
|
||
this.isChartEditor = true;
|
||
AscCommon.EncryptionWorker.isChartEditor = true;
|
||
this.DocInfo.put_OfflineApp(true);
|
||
}
|
||
else if (AscCommon.offlineMode === this.documentUrl)
|
||
{
|
||
this.DocInfo.put_OfflineApp(true);
|
||
}
|
||
|
||
if (undefined !== window["AscDesktopEditor"] && !(this.DocInfo && this.DocInfo.get_OfflineApp()))
|
||
{
|
||
window["AscDesktopEditor"]["SetDocumentName"](this.documentTitle);
|
||
}
|
||
|
||
if (!this.isChartEditor && undefined !== window["AscDesktopEditor"] && undefined !== window["AscDesktopEditor"]["CryptoMode"])
|
||
{
|
||
this.DocInfo.put_Encrypted(0 < window["AscDesktopEditor"]["CryptoMode"]);
|
||
}
|
||
|
||
if (!oldInfo)
|
||
{
|
||
this.onEndLoadDocInfo();
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.asc_enableKeyEvents = function(isEnabled, isFromInput)
|
||
{
|
||
};
|
||
// Copy/Past/Cut
|
||
baseEditorsApi.prototype.asc_IsFocus = function(bIsNaturalFocus)
|
||
{
|
||
var _ret = false;
|
||
if (this.WordControl.IsFocus)
|
||
_ret = true;
|
||
if (_ret && bIsNaturalFocus && this.WordControl.TextBoxInputFocus)
|
||
_ret = false;
|
||
return _ret;
|
||
};
|
||
baseEditorsApi.prototype.isCopyOutEnabled = function()
|
||
{
|
||
return this.copyOutEnabled;
|
||
};
|
||
// target pos
|
||
baseEditorsApi.prototype.asc_LockTargetUpdate = function(isLock)
|
||
{
|
||
this.isLockTargetUpdate = isLock;
|
||
};
|
||
// Просмотр PDF
|
||
baseEditorsApi.prototype.isPdfViewer = function()
|
||
{
|
||
return false;
|
||
};
|
||
// Events
|
||
baseEditorsApi.prototype.sendEvent = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.SendOpenProgress = function()
|
||
{
|
||
this.sendEvent("asc_onOpenDocumentProgress", this.OpenDocumentProgress);
|
||
};
|
||
baseEditorsApi.prototype.sync_InitEditorFonts = function(gui_fonts)
|
||
{
|
||
if (!this.isViewMode) {
|
||
this.sendEvent("asc_onInitEditorFonts", gui_fonts);
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.sync_StartAction = function(type, id)
|
||
{
|
||
this.sendEvent('asc_onStartAction', type, id);
|
||
//console.log("asc_onStartAction: type = " + type + " id = " + id);
|
||
|
||
if (c_oAscAsyncActionType.BlockInteraction === type)
|
||
{
|
||
this.incrementCounterLongAction();
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.sync_EndAction = function(type, id)
|
||
{
|
||
this.sendEvent('asc_onEndAction', type, id);
|
||
//console.log("asc_onEndAction: type = " + type + " id = " + id);
|
||
|
||
if (c_oAscAsyncActionType.BlockInteraction === type)
|
||
{
|
||
this.decrementCounterLongAction();
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.sync_TryUndoInFastCollaborative = function()
|
||
{
|
||
this.sendEvent("asc_OnTryUndoInFastCollaborative");
|
||
};
|
||
baseEditorsApi.prototype.asc_setViewMode = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asc_setRestriction = function(val)
|
||
{
|
||
this.restrictions = val;
|
||
};
|
||
baseEditorsApi.prototype.getViewMode = function()
|
||
{
|
||
return this.isViewMode;
|
||
};
|
||
baseEditorsApi.prototype.canEdit = function()
|
||
{
|
||
return !this.isViewMode && this.restrictions === Asc.c_oAscRestrictionType.None;
|
||
};
|
||
baseEditorsApi.prototype.isRestrictionForms = function()
|
||
{
|
||
return (this.restrictions === Asc.c_oAscRestrictionType.OnlyForms);
|
||
};
|
||
baseEditorsApi.prototype.isRestrictionComments = function()
|
||
{
|
||
return (this.restrictions === Asc.c_oAscRestrictionType.OnlyComments);
|
||
};
|
||
baseEditorsApi.prototype.isRestrictionSignatures = function()
|
||
{
|
||
return (this.restrictions === Asc.c_oAscRestrictionType.OnlySignatures);
|
||
};
|
||
baseEditorsApi.prototype.isRestrictionView = function()
|
||
{
|
||
return (this.restrictions === Asc.c_oAscRestrictionType.View);
|
||
};
|
||
baseEditorsApi.prototype.isLongAction = function()
|
||
{
|
||
return (0 !== this.IsLongActionCurrent);
|
||
};
|
||
baseEditorsApi.prototype.incrementCounterLongAction = function()
|
||
{
|
||
++this.IsLongActionCurrent;
|
||
};
|
||
baseEditorsApi.prototype.decrementCounterLongAction = function()
|
||
{
|
||
this.IsLongActionCurrent--;
|
||
if (this.IsLongActionCurrent < 0)
|
||
{
|
||
this.IsLongActionCurrent = 0;
|
||
}
|
||
|
||
if (!this.isLongAction())
|
||
{
|
||
var _length = this.LongActionCallbacks.length;
|
||
for (var i = 0; i < _length; i++)
|
||
{
|
||
this.LongActionCallbacks[i](this.LongActionCallbacksParams[i]);
|
||
}
|
||
this.LongActionCallbacks.splice(0, _length);
|
||
this.LongActionCallbacksParams.splice(0, _length);
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.checkLongActionCallback = function(_callback, _param)
|
||
{
|
||
if (this.isLongAction())
|
||
{
|
||
this.LongActionCallbacks[this.LongActionCallbacks.length] = _callback;
|
||
this.LongActionCallbacksParams[this.LongActionCallbacksParams.length] = _param;
|
||
return false;
|
||
}
|
||
else
|
||
{
|
||
return true;
|
||
}
|
||
};
|
||
/**
|
||
* Функция для загрузчика шрифтов (нужно ли грузить default шрифты). Для Excel всегда возвращаем false
|
||
* @returns {boolean}
|
||
*/
|
||
baseEditorsApi.prototype.IsNeedDefaultFonts = function()
|
||
{
|
||
var res = false;
|
||
switch (this.editorId)
|
||
{
|
||
case c_oEditorId.Word:
|
||
res = !this.isPdfViewer();
|
||
break;
|
||
case c_oEditorId.Presentation:
|
||
res = true;
|
||
break;
|
||
}
|
||
return res;
|
||
};
|
||
baseEditorsApi.prototype.onPrint = function()
|
||
{
|
||
this.sendEvent("asc_onPrint");
|
||
};
|
||
// Open
|
||
baseEditorsApi.prototype.asc_LoadDocument = function(versionHistory, isRepeat)
|
||
{
|
||
// Меняем тип состояния (на открытие)
|
||
this.advancedOptionsAction = AscCommon.c_oAscAdvancedOptionsAction.Open;
|
||
var rData = null;
|
||
if (!(this.DocInfo && this.DocInfo.get_OfflineApp()))
|
||
{
|
||
rData = {
|
||
"c" : 'open',
|
||
"id" : this.documentId,
|
||
"userid" : this.documentUserId,
|
||
"format" : this.documentFormat,
|
||
"url" : this.documentUrl,
|
||
"title" : this.documentTitle,
|
||
"nobase64" : true
|
||
};
|
||
if (versionHistory)
|
||
{
|
||
rData["serverVersion"] = versionHistory.serverVersion;
|
||
rData["closeonerror"] = versionHistory.isRequested;
|
||
rData["jwt"] = versionHistory.token;
|
||
//чтобы результат пришел только этому соединению, а не всем кто в документе
|
||
rData["userconnectionid"] = this.CoAuthoringApi.getUserConnectionId();
|
||
}
|
||
}
|
||
if (versionHistory) {
|
||
this.CoAuthoringApi.versionHistory(rData);
|
||
} else {
|
||
this.CoAuthoringApi.auth(this.getViewMode(), rData);
|
||
}
|
||
|
||
if (!isRepeat) {
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.Open);
|
||
}
|
||
|
||
if (this.DocInfo.get_Encrypted() && window["AscDesktopEditor"] && !window["AscDesktopEditor"]["IsLocalFile"](true))
|
||
{
|
||
window["AscDesktopEditor"]["OpenFileCrypt"](this.DocInfo.get_Title(), this.DocInfo.get_Url(), window.openFileCryptCallback);
|
||
}
|
||
};
|
||
baseEditorsApi.prototype._OfflineAppDocumentStartLoad = function()
|
||
{
|
||
this._OfflineAppDocumentEndLoad();
|
||
};
|
||
baseEditorsApi.prototype._OfflineAppDocumentEndLoad = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype._onOpenCommand = function(data)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype._onNeedParams = function(data, opt_isPassword)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asyncServerIdEndLoaded = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asyncFontStartLoaded = function()
|
||
{
|
||
// здесь прокинуть евент о заморозке меню
|
||
this.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadFont);
|
||
};
|
||
baseEditorsApi.prototype.asyncImageStartLoaded = function()
|
||
{
|
||
// здесь прокинуть евент о заморозке меню
|
||
};
|
||
baseEditorsApi.prototype.asyncImagesDocumentStartLoaded = function()
|
||
{
|
||
// евент о заморозке не нужен... оно и так заморожено
|
||
// просто нужно вывести информацию в статус бар (что началась загрузка картинок)
|
||
};
|
||
baseEditorsApi.prototype.onDocumentContentReady = function()
|
||
{
|
||
var t = this;
|
||
this.isDocumentLoadComplete = true;
|
||
if (!window['IS_NATIVE_EDITOR']) {
|
||
setInterval(function() {t._autoSave();}, 40);
|
||
}
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.Open);
|
||
this.sendEvent('asc_onDocumentContentReady');
|
||
|
||
if (this.editorId == c_oEditorId.Spreadsheet)
|
||
this.onUpdateDocumentModified(this.asc_isDocumentModified());
|
||
};
|
||
// Save
|
||
baseEditorsApi.prototype.processSavedFile = function(url, downloadType)
|
||
{
|
||
if (AscCommon.DownloadType.None !== downloadType)
|
||
{
|
||
this.sendEvent(downloadType, url, function(hasError)
|
||
{
|
||
});
|
||
}
|
||
else
|
||
{
|
||
AscCommon.getFile(url);
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.forceSave = function()
|
||
{
|
||
return this.CoAuthoringApi.forceSave();
|
||
};
|
||
baseEditorsApi.prototype.asc_setIsForceSaveOnUserSave = function(val)
|
||
{
|
||
this.isForceSaveOnUserSave = val;
|
||
};
|
||
baseEditorsApi.prototype._onUpdateDocumentCanSave = function () {
|
||
};
|
||
baseEditorsApi.prototype._onUpdateDocumentCanUndoRedo = function () {
|
||
};
|
||
baseEditorsApi.prototype._saveCheck = function () {
|
||
return false;
|
||
};
|
||
// Переопределяется во всех редакторах
|
||
baseEditorsApi.prototype._haveOtherChanges = function () {
|
||
return false;
|
||
};
|
||
baseEditorsApi.prototype._onSaveCallback = function (e) {
|
||
var t = this;
|
||
var nState;
|
||
if (false == e["saveLock"]) {
|
||
if (this.isLongAction()) {
|
||
// Мы не можем в этот момент сохранять, т.к. попали в ситуацию, когда мы залочили сохранение и успели нажать вставку до ответа
|
||
// Нужно снять lock с сохранения
|
||
this.CoAuthoringApi.onUnSaveLock = function () {
|
||
t.canSave = true;
|
||
t.IsUserSave = false;
|
||
t.lastSaveTime = null;
|
||
|
||
if (t.canUnlockDocument) {
|
||
t._unlockDocument();
|
||
}
|
||
};
|
||
this.CoAuthoringApi.unSaveLock();
|
||
return;
|
||
}
|
||
|
||
this.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save);
|
||
|
||
this.canUnlockDocument2 = this.canUnlockDocument;
|
||
if (this.canUnlockDocument && this.canStartCoAuthoring) {
|
||
this.CoAuthoringApi.onStartCoAuthoring(true);
|
||
}
|
||
this.canStartCoAuthoring = false;
|
||
this.canUnlockDocument = false;
|
||
|
||
this._onSaveCallbackInner();
|
||
} else {
|
||
nState = this.CoAuthoringApi.get_state();
|
||
if (AscCommon.ConnectionState.ClosedCoAuth === nState || AscCommon.ConnectionState.ClosedAll === nState) {
|
||
// Отключаемся от сохранения, соединение потеряно
|
||
this.IsUserSave = false;
|
||
this.canSave = true;
|
||
} else {
|
||
// Если автосохранение, то не будем ждать ответа, а просто перезапустим таймер на немного
|
||
if (!this.IsUserSave) {
|
||
this.canSave = true;
|
||
if (this.canUnlockDocument) {
|
||
this._unlockDocument();
|
||
}
|
||
return;
|
||
}
|
||
|
||
setTimeout(function() {
|
||
t.CoAuthoringApi.askSaveChanges(function(event) {
|
||
t._onSaveCallback(event);
|
||
});
|
||
}, 1000);
|
||
}
|
||
}
|
||
};
|
||
// Функция сохранения. Переопределяется во всех редакторах
|
||
baseEditorsApi.prototype._onSaveCallbackInner = function () {
|
||
};
|
||
baseEditorsApi.prototype._autoSave = function () {
|
||
if (this.canSave && !this.isViewMode && (this.canUnlockDocument || 0 !== this.autoSaveGap)) {
|
||
if (this.canUnlockDocument) {
|
||
this.lastSaveTime = new Date();
|
||
// Check edit mode after unlock document http://bugzilla.onlyoffice.com/show_bug.cgi?id=35971
|
||
// Close cell edit without errors (isIdle = true)
|
||
this.asc_Save(true, true);
|
||
} else {
|
||
this._autoSaveInner();
|
||
}
|
||
}
|
||
};
|
||
// Функция автосохранения. Переопределяется во всех редакторах
|
||
baseEditorsApi.prototype._autoSaveInner = function () {
|
||
};
|
||
baseEditorsApi.prototype._prepareSave = function (isIdle) {
|
||
return true;
|
||
};
|
||
// Unlock document when start co-authoring
|
||
baseEditorsApi.prototype._unlockDocument = function () {
|
||
if (this.isDocumentLoadComplete) {
|
||
// Document is load
|
||
this.canUnlockDocument = true;
|
||
this.canStartCoAuthoring = true;
|
||
if (this.canSave) {
|
||
// We can only unlock with delete index
|
||
this.CoAuthoringApi.unLockDocument(false, true, AscCommon.History.GetDeleteIndex());
|
||
this.startCollaborationEditing();
|
||
AscCommon.History.RemovePointsByDeleteIndex();
|
||
this._onUpdateDocumentCanSave();
|
||
this._onUpdateDocumentCanUndoRedo();
|
||
this.canStartCoAuthoring = false;
|
||
this.canUnlockDocument = false;
|
||
} else {
|
||
// ToDo !!!!
|
||
}
|
||
} else {
|
||
// Когда документ еще не загружен, нужно отпустить lock (при быстром открытии 2-мя пользователями)
|
||
this.startCollaborationEditing();
|
||
this.CoAuthoringApi.unLockDocument(false, true);
|
||
}
|
||
};
|
||
// Выставление интервала автосохранения (0 - означает, что автосохранения нет)
|
||
baseEditorsApi.prototype.asc_setAutoSaveGap = function(autoSaveGap)
|
||
{
|
||
if (typeof autoSaveGap === "number")
|
||
{
|
||
this.autoSaveGap = autoSaveGap * 1000; // Нам выставляют в секундах
|
||
}
|
||
};
|
||
// send chart message
|
||
baseEditorsApi.prototype.asc_coAuthoringChatSendMessage = function(message)
|
||
{
|
||
this.CoAuthoringApi.sendMessage(message);
|
||
};
|
||
// get chart messages
|
||
baseEditorsApi.prototype.asc_coAuthoringChatGetMessages = function()
|
||
{
|
||
this.CoAuthoringApi.getMessages();
|
||
};
|
||
// get users, возвращается массив users
|
||
baseEditorsApi.prototype.asc_coAuthoringGetUsers = function()
|
||
{
|
||
this.CoAuthoringApi.getUsers();
|
||
};
|
||
// get permissions
|
||
baseEditorsApi.prototype.asc_getEditorPermissions = function()
|
||
{
|
||
this._coAuthoringInit();
|
||
};
|
||
baseEditorsApi.prototype._onEndPermissions = function()
|
||
{
|
||
if (this.isOnFirstConnectEnd && this.isOnLoadLicense)
|
||
{
|
||
this.sendEvent('asc_onGetEditorPermissions', new AscCommon.asc_CAscEditorPermissions());
|
||
}
|
||
};
|
||
// CoAuthoring
|
||
baseEditorsApi.prototype._coAuthoringInit = function()
|
||
{
|
||
var t = this;
|
||
//Если User не задан, отключаем коавторинг.
|
||
if (null == this.User || null == this.User.asc_getId())
|
||
{
|
||
this.User = new AscCommon.asc_CUser();
|
||
this.User.setId("Unknown");
|
||
this.User.setUserName("Unknown");
|
||
}
|
||
//в обычном серверном режиме портим ссылку, потому что CoAuthoring теперь имеет встроенный адрес
|
||
//todo надо использовать проверку get_OfflineApp
|
||
if (!(window['NATIVE_EDITOR_ENJINE'] || (this.DocInfo && this.DocInfo.get_OfflineApp())) || window['IS_NATIVE_EDITOR'])
|
||
{
|
||
this.CoAuthoringApi.set_url(null);
|
||
}
|
||
|
||
this.CoAuthoringApi.onMessage = function(e, clear)
|
||
{
|
||
t.sendEvent('asc_onCoAuthoringChatReceiveMessage', e, clear);
|
||
};
|
||
this.CoAuthoringApi.onServerVersion = function (buildVersion, buildNumber) {
|
||
t.sendEvent('asc_onServerVersion', buildVersion, buildNumber);
|
||
};
|
||
this.CoAuthoringApi.onAuthParticipantsChanged = function(users, userId)
|
||
{
|
||
t.sendEvent("asc_onAuthParticipantsChanged", users, userId);
|
||
};
|
||
this.CoAuthoringApi.onParticipantsChanged = function(users)
|
||
{
|
||
t.sendEvent("asc_onParticipantsChanged", users);
|
||
};
|
||
this.CoAuthoringApi.onSpellCheckInit = function(e)
|
||
{
|
||
t.SpellCheckUrl = e;
|
||
t._coSpellCheckInit();
|
||
};
|
||
this.CoAuthoringApi.onSetIndexUser = function(e)
|
||
{
|
||
AscCommon.g_oIdCounter.Set_UserId('' + e);
|
||
};
|
||
this.CoAuthoringApi.onFirstLoadChangesEnd = function()
|
||
{
|
||
t.asyncServerIdEndLoaded();
|
||
};
|
||
this.CoAuthoringApi.onFirstConnect = function()
|
||
{
|
||
if (t.isOnFirstConnectEnd)
|
||
{
|
||
if (t.CoAuthoringApi.get_isAuth()) {
|
||
t.CoAuthoringApi.auth(t.getViewMode(), undefined, t.isIdle());
|
||
} else {
|
||
//первый запрос или ответ не дошел надо повторить открытие
|
||
t.asc_LoadDocument(undefined, true);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
t.isOnFirstConnectEnd = true;
|
||
t._onEndPermissions();
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onLicense = function(res)
|
||
{
|
||
t.licenseResult = res;
|
||
t.isOnLoadLicense = true;
|
||
t._onEndPermissions();
|
||
};
|
||
this.CoAuthoringApi.onLicenseChanged = function(res)
|
||
{
|
||
t.licenseResult = res;
|
||
t.isOnLoadLicense = true;
|
||
var oResult = new AscCommon.asc_CAscEditorPermissions();
|
||
oResult.setLicenseType(res);
|
||
t.sendEvent('asc_onLicenseChanged', oResult);
|
||
};
|
||
this.CoAuthoringApi.onWarning = function(code)
|
||
{
|
||
t.sendEvent('asc_onError', code || c_oAscError.ID.Warning, c_oAscError.Level.NoCritical);
|
||
};
|
||
this.CoAuthoringApi.onMeta = function(data)
|
||
{
|
||
var newDocumentTitle = data["title"];
|
||
if (newDocumentTitle) {
|
||
t.documentTitle = newDocumentTitle;
|
||
if (t.DocInfo) {
|
||
t.DocInfo.asc_putTitle(newDocumentTitle);
|
||
}
|
||
}
|
||
t.sendEvent('asc_onMeta', data);
|
||
};
|
||
this.CoAuthoringApi.onSession = function(data) {
|
||
var code = data["code"];
|
||
var reason = data["reason"];
|
||
var interval = data["interval"];
|
||
var extendSession = true;
|
||
if (c_oCloseCode.sessionIdle == code) {
|
||
var idleTime = t.isIdle();
|
||
if (idleTime > interval) {
|
||
extendSession = false;
|
||
} else {
|
||
t.CoAuthoringApi.extendSession(idleTime);
|
||
}
|
||
} else if (c_oCloseCode.sessionAbsolute == code) {
|
||
extendSession = false;
|
||
}
|
||
if (!extendSession) {
|
||
if (t.asc_Save(false, true)) {
|
||
//enter view mode because save async
|
||
t.setViewModeDisconnect();
|
||
t.disconnectOnSave = {code: code, reason: reason};
|
||
} else {
|
||
t.CoAuthoringApi.disconnect(code, reason);
|
||
}
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onForceSave = function(data) {
|
||
if (AscCommon.c_oAscForceSaveTypes.Button === data.type) {
|
||
if (data.start) {
|
||
if (null === t.forceSaveButtonTimeout && !t.forceSaveButtonContinue) {
|
||
t.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.ForceSaveButton);
|
||
} else {
|
||
clearInterval(t.forceSaveButtonTimeout);
|
||
}
|
||
t.forceSaveButtonTimeout = setTimeout(function() {
|
||
t.forceSaveButtonTimeout = null;
|
||
if (t.forceSaveButtonContinue) {
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save);
|
||
} else {
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.ForceSaveButton);
|
||
}
|
||
t.forceSaveButtonContinue = false;
|
||
t.sendEvent('asc_onError', Asc.c_oAscError.ID.ForceSaveButton, c_oAscError.Level.NoCritical);
|
||
}, Asc.c_nMaxConversionTime);
|
||
} else if (data.refuse) {
|
||
if (t.forceSaveButtonContinue) {
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save);
|
||
}
|
||
t.forceSaveButtonContinue = false;
|
||
} else {
|
||
if (null !== t.forceSaveButtonTimeout) {
|
||
clearInterval(t.forceSaveButtonTimeout);
|
||
t.forceSaveButtonTimeout = null;
|
||
if (t.forceSaveButtonContinue) {
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save);
|
||
} else {
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.ForceSaveButton);
|
||
}
|
||
t.forceSaveButtonContinue = false;
|
||
if (!data.success) {
|
||
t.sendEvent('asc_onError', Asc.c_oAscError.ID.ForceSaveButton, c_oAscError.Level.NoCritical);
|
||
}
|
||
}
|
||
}
|
||
} else {
|
||
if (AscCommon.CollaborativeEditing.Is_Fast() || null !== t.forceSaveTimeoutTimeout) {
|
||
if (data.start) {
|
||
if (null === t.forceSaveTimeoutTimeout) {
|
||
t.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.ForceSaveTimeout);
|
||
} else {
|
||
clearInterval(t.forceSaveTimeoutTimeout);
|
||
}
|
||
t.forceSaveTimeoutTimeout = setTimeout(function() {
|
||
t.forceSaveTimeoutTimeout = null;
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.ForceSaveTimeout);
|
||
t.sendEvent('asc_onError', Asc.c_oAscError.ID.ForceSaveTimeout, c_oAscError.Level.NoCritical);
|
||
}, Asc.c_nMaxConversionTime);
|
||
} else {
|
||
if (null !== t.forceSaveTimeoutTimeout) {
|
||
clearInterval(t.forceSaveTimeoutTimeout);
|
||
t.forceSaveTimeoutTimeout = null;
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.ForceSaveTimeout);
|
||
if (!data.success) {
|
||
t.sendEvent('asc_onError', Asc.c_oAscError.ID.ForceSaveTimeout, c_oAscError.Level.NoCritical);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onExpiredToken = function() {
|
||
t.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.Open);
|
||
t.VersionHistory = null;
|
||
t.sendEvent('asc_onExpiredToken');
|
||
};
|
||
this.CoAuthoringApi.onHasForgotten = function() {
|
||
//todo very bad way, need rewrite
|
||
var isDocumentCanSaveOld = t.isDocumentCanSave;
|
||
var canSaveOld = t.canSave;
|
||
t.isDocumentCanSave = true;
|
||
t.canSave = false;
|
||
t.sendEvent("asc_onDocumentModifiedChanged");
|
||
t.isDocumentCanSave = isDocumentCanSaveOld;
|
||
t.canSave = canSaveOld;
|
||
t.sendEvent("asc_onDocumentModifiedChanged");
|
||
};
|
||
/**
|
||
* Event об отсоединении от сервера
|
||
* @param {jQuery} e event об отсоединении с причиной
|
||
* @param {Bool} isDisconnectAtAll окончательно ли отсоединяемся(true) или будем пробовать сделать reconnect(false) + сами отключились
|
||
* @param {Bool} isCloseCoAuthoring
|
||
*/
|
||
this.CoAuthoringApi.onDisconnect = function(e, error)
|
||
{
|
||
if (AscCommon.ConnectionState.None === t.CoAuthoringApi.get_state())
|
||
{
|
||
t.asyncServerIdEndLoaded();
|
||
}
|
||
if (null != error)
|
||
{
|
||
t.setViewModeDisconnect();
|
||
t.sendEvent('asc_onError', error.code, error.level);
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onDocumentOpen = function (inputWrap) {
|
||
if (AscCommon.EncryptionWorker.isNeedCrypt())
|
||
{
|
||
if (t.fCurCallback) {
|
||
t.fCurCallback(inputWrap ? inputWrap["data"] : undefined);
|
||
t.fCurCallback = null;
|
||
}
|
||
return;
|
||
}
|
||
if (inputWrap["data"]) {
|
||
var input = inputWrap["data"];
|
||
switch (input["type"]) {
|
||
case 'reopen':
|
||
case 'open':
|
||
switch (input["status"]) {
|
||
case "updateversion":
|
||
case "ok":
|
||
var urls = input["data"];
|
||
AscCommon.g_oDocumentUrls.init(urls);
|
||
if (null != urls['Editor.bin']) {
|
||
if ('ok' === input["status"] || t.getViewMode()) {
|
||
t._onOpenCommand(urls['Editor.bin']);
|
||
} else {
|
||
t.sendEvent("asc_onDocumentUpdateVersion", function () {
|
||
if (t.isCoAuthoringEnable) {
|
||
t.asc_coAuthoringDisconnect();
|
||
}
|
||
t._onOpenCommand(urls['Editor.bin']);
|
||
})
|
||
}
|
||
} else {
|
||
t.sendEvent("asc_onError", c_oAscError.ID.ConvertationOpenError,
|
||
c_oAscError.Level.Critical);
|
||
}
|
||
break;
|
||
case "needparams":
|
||
t._onNeedParams(input["data"]);
|
||
break;
|
||
case "needpassword":
|
||
t._onNeedParams(null, true);
|
||
break;
|
||
case "err":
|
||
t.sendEvent("asc_onError",
|
||
AscCommon.mapAscServerErrorToAscError(parseInt(input["data"]),
|
||
Asc.c_oAscError.ID.ConvertationOpenError), c_oAscError.Level.Critical);
|
||
break;
|
||
}
|
||
break;
|
||
default:
|
||
if (t.fCurCallback) {
|
||
t.fCurCallback(input);
|
||
t.fCurCallback = null;
|
||
} else {
|
||
t.sendEvent("asc_onError", c_oAscError.ID.Unknown, c_oAscError.Level.NoCritical);
|
||
}
|
||
break;
|
||
}
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onStartCoAuthoring = function (isStartEvent) {
|
||
if (t.isViewMode) {
|
||
return;
|
||
}
|
||
// На старте не нужно ничего делать
|
||
if (isStartEvent) {
|
||
t.startCollaborationEditing();
|
||
} else {
|
||
t._unlockDocument();
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
|
||
if (t.canUnlockDocument) {
|
||
t.canStartCoAuthoring = false;
|
||
} else {
|
||
t.endCollaborationEditing();
|
||
}
|
||
};
|
||
|
||
this._coAuthoringInitEnd();
|
||
this.CoAuthoringApi.init(this.User, this.documentId, this.documentCallbackUrl, 'fghhfgsjdgfjs', this.editorId, this.documentFormatSave, this.DocInfo);
|
||
};
|
||
baseEditorsApi.prototype._coAuthoringInitEnd = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.startCollaborationEditing = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.endCollaborationEditing = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype._coAuthoringCheckEndOpenDocument = function(f)
|
||
{
|
||
if (this.isPreOpenLocks)
|
||
{
|
||
var context = this.CoAuthoringApi;
|
||
var args = Array.prototype.slice.call(arguments, 1);
|
||
|
||
// Пока документ еще не загружен, будем сохранять функцию и аргументы
|
||
this.arrPreOpenLocksObjects.push(function()
|
||
{
|
||
f.apply(context, args);
|
||
});
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
baseEditorsApi.prototype._applyPreOpenLocks = function()
|
||
{
|
||
this.isPreOpenLocks = false;
|
||
// Применяем все lock-и (ToDo возможно стоит пересмотреть вообще Lock-и)
|
||
for (var i = 0; i < this.arrPreOpenLocksObjects.length; ++i)
|
||
{
|
||
this.arrPreOpenLocksObjects[i]();
|
||
}
|
||
this.arrPreOpenLocksObjects = [];
|
||
};
|
||
// server disconnect
|
||
baseEditorsApi.prototype.asc_coAuthoringDisconnect = function()
|
||
{
|
||
this.CoAuthoringApi.disconnect();
|
||
this.isCoAuthoringEnable = false;
|
||
|
||
// Выставляем view-режим
|
||
this.asc_setViewMode(true);
|
||
};
|
||
baseEditorsApi.prototype.asc_stopSaving = function()
|
||
{
|
||
this.incrementCounterLongAction();
|
||
};
|
||
baseEditorsApi.prototype.asc_continueSaving = function()
|
||
{
|
||
this.decrementCounterLongAction();
|
||
};
|
||
// SpellCheck
|
||
baseEditorsApi.prototype._coSpellCheckInit = function()
|
||
{
|
||
};
|
||
// Images & Charts & TextArts
|
||
baseEditorsApi.prototype.asc_getChartPreviews = function(chartType)
|
||
{
|
||
return this.chartPreviewManager.getChartPreviews(chartType);
|
||
};
|
||
baseEditorsApi.prototype.asc_getTextArtPreviews = function()
|
||
{
|
||
return this.textArtPreviewManager.getWordArtStyles();
|
||
};
|
||
baseEditorsApi.prototype.asc_onOpenChartFrame = function()
|
||
{
|
||
if(this.isMobileVersion){
|
||
return;
|
||
}
|
||
this.isOpenedChartFrame = true;
|
||
};
|
||
baseEditorsApi.prototype.asc_onCloseChartFrame = function()
|
||
{
|
||
this.isOpenedChartFrame = false;
|
||
};
|
||
baseEditorsApi.prototype.asc_setInterfaceDrawImagePlaceShape = function(elementId)
|
||
{
|
||
this.shapeElementId = elementId;
|
||
};
|
||
baseEditorsApi.prototype.asc_getPropertyEditorShapes = function()
|
||
{
|
||
return [AscCommon.g_oAutoShapesGroups, AscCommon.g_oAutoShapesTypes];
|
||
};
|
||
baseEditorsApi.prototype.asc_getPropertyEditorTextArts = function()
|
||
{
|
||
return [AscCommon.g_oPresetTxWarpGroups, AscCommon.g_PresetTxWarpTypes];
|
||
};
|
||
// Add image
|
||
baseEditorsApi.prototype._addImageUrl = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asc_addImage = function()
|
||
{
|
||
var t = this;
|
||
AscCommon.ShowImageFileDialog(this.documentId, this.documentUserId, this.CoAuthoringApi.get_jwt(), function(error, files)
|
||
{
|
||
t._uploadCallback(error, files);
|
||
}, function(error)
|
||
{
|
||
if (c_oAscError.ID.No !== error)
|
||
{
|
||
t.sendEvent("asc_onError", error, c_oAscError.Level.NoCritical);
|
||
}
|
||
t.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
});
|
||
};
|
||
baseEditorsApi.prototype._uploadCallback = function(error, files)
|
||
{
|
||
var t = this;
|
||
if (c_oAscError.ID.No !== error)
|
||
{
|
||
this.sendEvent("asc_onError", error, c_oAscError.Level.NoCritical);
|
||
}
|
||
else
|
||
{
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
AscCommon.UploadImageFiles(files, this.documentId, this.documentUserId, this.CoAuthoringApi.get_jwt(), function(error, urls)
|
||
{
|
||
if (c_oAscError.ID.No !== error)
|
||
{
|
||
t.sendEvent("asc_onError", error, c_oAscError.Level.NoCritical);
|
||
}
|
||
else
|
||
{
|
||
t._addImageUrl(urls);
|
||
}
|
||
t.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
});
|
||
}
|
||
};
|
||
|
||
//метод, который подменяет callback загрузки в каждом редакторе, TODO: переделать, сделать одинаково в о всех редакторах
|
||
baseEditorsApi.prototype.asc_replaceLoadImageCallback = function(fCallback)
|
||
{
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_loadLocalImageAndAction = function(sLocalImage, fCallback)
|
||
{
|
||
var _loadedUrl = this.ImageLoader.LoadImage(AscCommon.getFullImageSrc2(sLocalImage), 1);
|
||
if (_loadedUrl != null)
|
||
fCallback(_loadedUrl);
|
||
else
|
||
this.asc_replaceLoadImageCallback(fCallback);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_checkImageUrlAndAction = function(sImageUrl, fCallback)
|
||
{
|
||
var oThis = this;
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
var fCallback2 = function()
|
||
{
|
||
oThis.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
fCallback.apply(oThis, arguments);
|
||
};
|
||
var sLocalImage = AscCommon.g_oDocumentUrls.getImageLocal(sImageUrl);
|
||
if (sLocalImage)
|
||
{
|
||
this.asc_loadLocalImageAndAction(sLocalImage, fCallback2);
|
||
return;
|
||
}
|
||
|
||
AscCommon.sendImgUrls(oThis, [sImageUrl], function(data)
|
||
{
|
||
if (data[0] && data[0].path != null)
|
||
{
|
||
oThis.asc_loadLocalImageAndAction(AscCommon.g_oDocumentUrls.imagePath2Local(data[0].path), fCallback2);
|
||
}
|
||
}, this.editorId === c_oEditorId.Spreadsheet);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_addOleObject = function(oPluginData)
|
||
{
|
||
if(this.isViewMode){
|
||
return;
|
||
}
|
||
Asc.CPluginData_wrap(oPluginData);
|
||
var oThis = this;
|
||
var sImgSrc = oPluginData.getAttribute("imgSrc");
|
||
var nWidthPix = oPluginData.getAttribute("widthPix");
|
||
var nHeightPix = oPluginData.getAttribute("heightPix");
|
||
var fWidth = oPluginData.getAttribute("width");
|
||
var fHeight = oPluginData.getAttribute("height");
|
||
var sData = oPluginData.getAttribute("data");
|
||
var sGuid = oPluginData.getAttribute("guid");
|
||
if (typeof sImgSrc === "string" && sImgSrc.length > 0 && typeof sData === "string"
|
||
&& typeof sGuid === "string" && sGuid.length > 0
|
||
&& AscFormat.isRealNumber(nWidthPix) && AscFormat.isRealNumber(nHeightPix)
|
||
&& AscFormat.isRealNumber(fWidth) && AscFormat.isRealNumber(fHeight)
|
||
)
|
||
|
||
this.asc_checkImageUrlAndAction(sImgSrc, function(oImage)
|
||
{
|
||
oThis.asc_addOleObjectAction(AscCommon.g_oDocumentUrls.getImageLocal(oImage.src), sData, sGuid, fWidth, fHeight, nWidthPix, nHeightPix);
|
||
});
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_editOleObject = function(oPluginData)
|
||
{
|
||
if(this.isViewMode){
|
||
return;
|
||
}
|
||
Asc.CPluginData_wrap(oPluginData);
|
||
var oThis = this;
|
||
var bResize = oPluginData.getAttribute("resize");
|
||
var sImgSrc = oPluginData.getAttribute("imgSrc");
|
||
var oOleObject = AscCommon.g_oTableId.Get_ById(oPluginData.getAttribute("objectId"));
|
||
var nWidthPix = oPluginData.getAttribute("widthPix");
|
||
var nHeightPix = oPluginData.getAttribute("heightPix");
|
||
var sData = oPluginData.getAttribute("data");
|
||
if (typeof sImgSrc === "string" && sImgSrc.length > 0 && typeof sData === "string"
|
||
&& oOleObject && AscFormat.isRealNumber(nWidthPix) && AscFormat.isRealNumber(nHeightPix))
|
||
{
|
||
this.asc_checkImageUrlAndAction(sImgSrc, function(oImage)
|
||
{
|
||
oThis.asc_editOleObjectAction(bResize, oOleObject, AscCommon.g_oDocumentUrls.getImageLocal(oImage.src), sData, nWidthPix, nHeightPix);
|
||
});
|
||
}
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_addOleObjectAction = function(sLocalUrl, sData, sApplicationId, fWidth, fHeight)
|
||
{
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_editOleObjectAction = function(bResize, oOleObject, sImageUrl, sData, nPixWidth, nPixHeight)
|
||
{
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_selectSearchingResults = function(value)
|
||
{
|
||
if (this.selectSearchingResults === value)
|
||
{
|
||
return;
|
||
}
|
||
this.selectSearchingResults = value;
|
||
this._selectSearchingResults(value);
|
||
};
|
||
|
||
|
||
baseEditorsApi.prototype.asc_startEditCurrentOleObject = function(){
|
||
|
||
};
|
||
// Version History
|
||
baseEditorsApi.prototype.asc_showRevision = function(newObj)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asc_undoAllChanges = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asc_Save = function (isAutoSave, isIdle) {
|
||
var t = this;
|
||
var res = false;
|
||
if (this.canSave && this._saveCheck()) {
|
||
this.IsUserSave = !isAutoSave;
|
||
|
||
if (this.asc_isDocumentCanSave() || AscCommon.History.Have_Changes() || this._haveOtherChanges() ||
|
||
this.canUnlockDocument || this.forceSaveUndoRequest) {
|
||
if (this._prepareSave(isIdle)) {
|
||
// Не даем пользователю сохранять, пока не закончится сохранение (если оно началось)
|
||
this.canSave = false;
|
||
this.CoAuthoringApi.askSaveChanges(function (e) {
|
||
t._onSaveCallback(e);
|
||
});
|
||
res = true;
|
||
}
|
||
} else if (this.isForceSaveOnUserSave && this.IsUserSave) {
|
||
this.forceSave();
|
||
}
|
||
}
|
||
return res;
|
||
};
|
||
/**
|
||
* Эта функция возвращает true, если есть изменения или есть lock-и в документе
|
||
*/
|
||
baseEditorsApi.prototype.asc_isDocumentCanSave = function()
|
||
{
|
||
return this.isDocumentCanSave;
|
||
};
|
||
baseEditorsApi.prototype.asc_getCanUndo = function()
|
||
{
|
||
return AscCommon.History.Can_Undo();
|
||
};
|
||
baseEditorsApi.prototype.asc_getCanRedo = function()
|
||
{
|
||
return AscCommon.History.Can_Redo();
|
||
};
|
||
// Offline mode
|
||
baseEditorsApi.prototype.asc_isOffline = function()
|
||
{
|
||
return (window.location.protocol.indexOf("file") == 0) ? true : false;
|
||
};
|
||
baseEditorsApi.prototype.asc_getUrlType = function(url)
|
||
{
|
||
return AscCommon.getUrlType(url);
|
||
};
|
||
|
||
baseEditorsApi.prototype.openDocument = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.openDocumentFromZip = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.onEndLoadDocInfo = function()
|
||
{
|
||
if (this.isLoadFullApi && this.DocInfo)
|
||
{
|
||
if (this.DocInfo.get_OfflineApp())
|
||
{
|
||
if (this.editorId === c_oEditorId.Spreadsheet && this.isChartEditor)
|
||
{
|
||
this.onEndLoadFile(AscCommonExcel.getEmptyWorkbook());
|
||
}
|
||
else
|
||
{
|
||
this._OfflineAppDocumentStartLoad();
|
||
}
|
||
}
|
||
this.onEndLoadFile(null);
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.onEndLoadFile = function(result)
|
||
{
|
||
if (result)
|
||
{
|
||
this.openResult = result;
|
||
}
|
||
if (this.isLoadFullApi && this.DocInfo && this.openResult)
|
||
{
|
||
this.openDocument(this.openResult);
|
||
this.openResult = null;
|
||
}
|
||
|
||
};
|
||
baseEditorsApi.prototype._onEndLoadSdk = function()
|
||
{
|
||
AscCommon.g_oTableId.init();
|
||
|
||
// init drag&drop
|
||
var t = this;
|
||
AscCommon.InitDragAndDrop(this.HtmlElement, function(error, files)
|
||
{
|
||
t._uploadCallback(error, files);
|
||
});
|
||
|
||
AscFonts.g_fontApplication.Init();
|
||
|
||
this.FontLoader = AscCommon.g_font_loader;
|
||
this.ImageLoader = AscCommon.g_image_loader;
|
||
this.FontLoader.put_Api(this);
|
||
this.ImageLoader.put_Api(this);
|
||
this.FontLoader.SetStandartFonts();
|
||
|
||
this.chartPreviewManager = new AscCommon.ChartPreviewManager();
|
||
this.textArtPreviewManager = new AscCommon.TextArtPreviewManager();
|
||
|
||
AscFormat.initStyleManager();
|
||
|
||
if (null !== this.tmpFocus)
|
||
{
|
||
this.asc_enableKeyEvents(this.tmpFocus);
|
||
}
|
||
|
||
this.pluginsManager = Asc.createPluginsManager(this);
|
||
|
||
this.macros = new AscCommon.CDocumentMacros();
|
||
};
|
||
|
||
baseEditorsApi.prototype.sendStandartTextures = function()
|
||
{
|
||
if (this.isSendStandartTextures)
|
||
return;
|
||
|
||
this.isSendStandartTextures = true;
|
||
|
||
var _count = AscCommon.g_oUserTexturePresets.length;
|
||
var arr = new Array(_count);
|
||
for (var i = 0; i < _count; ++i)
|
||
{
|
||
arr[i] = new AscCommon.asc_CTexture();
|
||
arr[i].Id = i;
|
||
arr[i].Image = AscCommon.g_oUserTexturePresets[i];
|
||
this.ImageLoader.LoadImage(AscCommon.g_oUserTexturePresets[i], 1);
|
||
}
|
||
|
||
this.sendEvent('asc_onInitStandartTextures', arr);
|
||
};
|
||
|
||
baseEditorsApi.prototype.sendMathToMenu = function ()
|
||
{
|
||
if (this.MathMenuLoad)
|
||
return;
|
||
// GENERATE_IMAGES
|
||
//var _MathPainter = new CMathPainter(this.m_oWordControl.m_oApi);
|
||
//_MathPainter.StartLoad();
|
||
//return;
|
||
var _MathPainter = new AscFormat.CMathPainter(this);
|
||
_MathPainter.Generate();
|
||
this.MathMenuLoad = true;
|
||
};
|
||
|
||
baseEditorsApi.prototype.sendMathTypesToMenu = function(_math)
|
||
{
|
||
this.sendEvent("asc_onMathTypes", _math);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asyncFontEndLoaded_MathDraw = function(Obj)
|
||
{
|
||
this.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadFont);
|
||
Obj.Generate2();
|
||
};
|
||
|
||
baseEditorsApi.prototype.sendColorThemes = function (theme) {
|
||
var result = AscCommon.g_oUserColorScheme.slice();
|
||
|
||
// theme colors
|
||
var elem, _c;
|
||
var _extra = theme.extraClrSchemeLst;
|
||
var _count = _extra.length;
|
||
var _rgba = {R: 0, G: 0, B: 0, A: 255};
|
||
for (var i = 0; i < _count; ++i) {
|
||
var _scheme = _extra[i].clrScheme;
|
||
|
||
elem = new AscCommon.CAscColorScheme();
|
||
elem.name = _scheme.name;
|
||
|
||
_scheme.colors[8].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[8].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[12].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[12].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[9].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[9].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[13].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[13].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[0].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[0].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[1].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[1].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[2].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[2].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[3].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[3].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[4].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[4].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[5].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[5].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[11].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[11].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
_scheme.colors[10].Calculate(theme, null, null, null, _rgba);
|
||
_c = _scheme.colors[10].RGBA;
|
||
elem.colors.push(new AscCommon.CColor(_c.R, _c.G, _c.B));
|
||
|
||
result.push(elem)
|
||
}
|
||
|
||
this.sendEvent("asc_onSendThemeColorSchemes", result);
|
||
return result;
|
||
};
|
||
|
||
// plugins
|
||
baseEditorsApi.prototype._checkLicenseApiFunctions = function()
|
||
{
|
||
return this.licenseResult && true === this.licenseResult['plugins'];
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_pluginsRegister = function(basePath, plugins)
|
||
{
|
||
if (null != this.pluginsManager)
|
||
this.pluginsManager.register(basePath, plugins);
|
||
};
|
||
baseEditorsApi.prototype.asc_pluginRun = function(guid, variation, pluginData)
|
||
{
|
||
if (null != this.pluginsManager)
|
||
this.pluginsManager.run(guid, variation, pluginData);
|
||
};
|
||
baseEditorsApi.prototype.asc_pluginResize = function(pluginData)
|
||
{
|
||
if (null != this.pluginsManager)
|
||
this.pluginsManager.runResize(pluginData);
|
||
};
|
||
baseEditorsApi.prototype.asc_pluginButtonClick = function(id)
|
||
{
|
||
if (null != this.pluginsManager)
|
||
this.pluginsManager.buttonClick(id);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_pluginEnableMouseEvents = function(isEnable)
|
||
{
|
||
if (!this.pluginsManager)
|
||
return;
|
||
|
||
this.pluginsManager.onEnableMouseEvents(isEnable);
|
||
};
|
||
|
||
baseEditorsApi.prototype.isEnabledDropTarget = function()
|
||
{
|
||
return true;
|
||
};
|
||
baseEditorsApi.prototype.beginInlineDropTarget = function(e)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.endInlineDropTarget = function(e)
|
||
{
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_GetFontList"] = function()
|
||
{
|
||
return AscFonts.g_fontApplication.g_fontSelections.SerializeList();
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_PasteHtml"] = function(htmlText)
|
||
{
|
||
if (!AscCommon.g_clipboardBase)
|
||
return null;
|
||
|
||
var _elem = document.createElement("div");
|
||
|
||
if (this.editorId == c_oEditorId.Word || this.editorId == c_oEditorId.Presentation)
|
||
{
|
||
var textPr = this.get_TextProps();
|
||
if (textPr)
|
||
{
|
||
if (undefined !== textPr.TextPr.FontSize)
|
||
_elem.style.fontSize = textPr.TextPr.FontSize + "pt";
|
||
|
||
_elem.style.fontWeight = (true === textPr.TextPr.Bold) ? "bold" : "normal";
|
||
_elem.style.fontStyle = (true === textPr.TextPr.Italic) ? "italic" : "normal";
|
||
|
||
var _color = textPr.TextPr.Color;
|
||
if (_color)
|
||
_elem.style.color = "rgb(" + _color.r + "," + _color.g + "," + _color.b + ")";
|
||
else
|
||
_elem.style.color = "rgb(0,0,0)";
|
||
}
|
||
}
|
||
else if (this.editorId == c_oEditorId.Spreadsheet)
|
||
{
|
||
var props = this.asc_getCellInfo();
|
||
|
||
if (props && props.font)
|
||
{
|
||
if (undefined != props.font.size)
|
||
_elem.style.fontSize = props.font.size + "pt";
|
||
|
||
_elem.style.fontWeight = (true === props.font.bold) ? "bold" : "normal";
|
||
_elem.style.fontStyle = (true === props.font.italic) ? "italic" : "normal";
|
||
}
|
||
}
|
||
|
||
_elem.innerHTML = htmlText;
|
||
document.body.appendChild(_elem);
|
||
this.incrementCounterLongAction();
|
||
var b_old_save_format = AscCommon.g_clipboardBase.bSaveFormat;
|
||
AscCommon.g_clipboardBase.bSaveFormat = true;
|
||
this.asc_PasteData(AscCommon.c_oAscClipboardDataFormat.HtmlElement, _elem, null, null, null, true);
|
||
this.decrementCounterLongAction();
|
||
|
||
if (true)
|
||
{
|
||
var fCallback = function ()
|
||
{
|
||
document.body.removeChild(_elem);
|
||
_elem = null;
|
||
AscCommon.g_clipboardBase.bSaveFormat = b_old_save_format;
|
||
};
|
||
if(this.checkLongActionCallback(fCallback, null)){
|
||
fCallback();
|
||
}
|
||
}
|
||
else
|
||
{
|
||
document.body.removeChild(_elem);
|
||
_elem = null;
|
||
AscCommon.g_clipboardBase.bSaveFormat = b_old_save_format;
|
||
}
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_PasteText"] = function(text)
|
||
{
|
||
if (!AscCommon.g_clipboardBase)
|
||
return null;
|
||
|
||
this.asc_PasteData(AscCommon.c_oAscClipboardDataFormat.Text, text);
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_GetMacros"] = function()
|
||
{
|
||
return this.asc_getMacros();
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_SetMacros"] = function(data)
|
||
{
|
||
return this.asc_setMacros(data);
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_StartAction"] = function(type, description)
|
||
{
|
||
this.sync_StartAction((type == "Block") ? c_oAscAsyncActionType.BlockInteraction : c_oAscAsyncActionType.Information, description);
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_EndAction"] = function(type, description)
|
||
{
|
||
this.sync_EndAction((type == "Block") ? c_oAscAsyncActionType.BlockInteraction : c_oAscAsyncActionType.Information, description);
|
||
|
||
if (this._callbackPluginEndAction)
|
||
{
|
||
this._callbackPluginEndAction.call(this);
|
||
}
|
||
};
|
||
|
||
baseEditorsApi.prototype["pluginMethod_OnEncryption"] = function(obj)
|
||
{
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
switch (obj.type)
|
||
{
|
||
case "generatePassword":
|
||
{
|
||
if ("" == obj["password"])
|
||
{
|
||
_editor.sendEvent("asc_onError", "There is no connection with the blockchain", c_oAscError.Level.Critical);
|
||
return;
|
||
}
|
||
|
||
var _ret = _editor.asc_nativeGetFile3();
|
||
AscCommon.EncryptionWorker.isPasswordCryptoPresent = true;
|
||
window["AscDesktopEditor"]["buildCryptedStart"](_ret.data, _ret.header, obj["password"], obj["docinfo"] ? obj["docinfo"] : "");
|
||
break;
|
||
}
|
||
case "getPasswordByFile":
|
||
{
|
||
if ("" != obj["password"])
|
||
{
|
||
var _param = ("<m_sPassword>" + AscCommon.CopyPasteCorrectString(obj["password"]) + "</m_sPassword>");
|
||
_editor.currentPassword = obj["password"];
|
||
_editor.currentDocumentHash = obj["hash"];
|
||
_editor.currentDocumentInfo = obj["docinfo"];
|
||
|
||
AscCommon.EncryptionWorker.isPasswordCryptoPresent = true;
|
||
|
||
if (window.isNativeOpenPassword)
|
||
{
|
||
window["AscDesktopEditor"]["NativeViewerOpen"](obj["password"]);
|
||
}
|
||
else
|
||
{
|
||
window["AscDesktopEditor"]["SetAdvancedOptions"](_param);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
this._onNeedParams(undefined, true);
|
||
}
|
||
break;
|
||
}
|
||
case "encryptData":
|
||
case "decryptData":
|
||
{
|
||
AscCommon.EncryptionWorker.receiveChanges(obj);
|
||
break;
|
||
}
|
||
}
|
||
};
|
||
|
||
// Builder
|
||
baseEditorsApi.prototype.asc_nativeInitBuilder = function()
|
||
{
|
||
this.asc_setDocInfo(new Asc.asc_CDocInfo());
|
||
};
|
||
baseEditorsApi.prototype.asc_SetSilentMode = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asc_canPaste = function()
|
||
{
|
||
return false;
|
||
};
|
||
baseEditorsApi.prototype.asc_Recalculate = function()
|
||
{
|
||
};
|
||
|
||
// Native
|
||
baseEditorsApi.prototype['asc_nativeCheckPdfRenderer'] = function (_memory1, _memory2) {
|
||
if (true) {
|
||
// pos не должен минимизироваться!!!
|
||
|
||
_memory1.Copy = _memory1["Copy"];
|
||
_memory1.ClearNoAttack = _memory1["ClearNoAttack"];
|
||
_memory1.WriteByte = _memory1["WriteByte"];
|
||
_memory1.WriteBool = _memory1["WriteBool"];
|
||
_memory1.WriteLong = _memory1["WriteLong"];
|
||
_memory1.WriteDouble = _memory1["WriteDouble"];
|
||
_memory1.WriteString = _memory1["WriteString"];
|
||
_memory1.WriteString2 = _memory1["WriteString2"];
|
||
|
||
_memory2.Copy = _memory1["Copy"];
|
||
_memory2.ClearNoAttack = _memory1["ClearNoAttack"];
|
||
_memory2.WriteByte = _memory1["WriteByte"];
|
||
_memory2.WriteBool = _memory1["WriteBool"];
|
||
_memory2.WriteLong = _memory1["WriteLong"];
|
||
_memory2.WriteDouble = _memory1["WriteDouble"];
|
||
_memory2.WriteString = _memory1["WriteString"];
|
||
_memory2.WriteString2 = _memory1["WriteString2"];
|
||
}
|
||
|
||
var _printer = new AscCommon.CDocumentRenderer();
|
||
_printer.Memory = _memory1;
|
||
_printer.VectorMemoryForPrint = _memory2;
|
||
return _printer;
|
||
};
|
||
|
||
// input
|
||
baseEditorsApi.prototype.Begin_CompositeInput = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Add_CompositeText = function(nCharCode)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Remove_CompositeText = function(nCount)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Replace_CompositeText = function(arrCharCodes)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Set_CursorPosInCompositeText = function(nPos)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Get_CursorPosInCompositeText = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.End_CompositeInput = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Get_MaxCursorPosInCompositeText = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.Input_UpdatePos = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype["setInputParams"] = function(_obj)
|
||
{
|
||
window["AscInputMethod"] = window["AscInputMethod"] || {};
|
||
|
||
for (var _prop in _obj)
|
||
{
|
||
window["AscInputMethod"][_prop] = _obj[_prop];
|
||
}
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_addSignatureLine = function (sGuid, sSigner, sSigner2, sEmail, Width, Height, sImgUrl) {
|
||
|
||
};
|
||
baseEditorsApi.prototype.asc_getAllSignatures = function () {
|
||
return [];
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_CallSignatureDblClickEvent = function(sGuid){
|
||
|
||
};
|
||
|
||
// signatures
|
||
baseEditorsApi.prototype.asc_AddSignatureLine2 = function(_obj)
|
||
{
|
||
var _w = 50;
|
||
var _h = 50;
|
||
var _w_pix = (_w * AscCommon.g_dKoef_mm_to_pix) >> 0;
|
||
var _h_pix = (_h * AscCommon.g_dKoef_mm_to_pix) >> 0;
|
||
var _canvas = document.createElement("canvas");
|
||
_canvas.width = _w_pix;
|
||
_canvas.height = _h_pix;
|
||
var _ctx = _canvas.getContext("2d");
|
||
_ctx.fillStyle = "#000000";
|
||
_ctx.strokeStyle = "#000000";
|
||
_ctx.font = "10pt 'Courier New'";
|
||
_ctx.lineWidth = 3;
|
||
|
||
_ctx.beginPath();
|
||
var _y_line = (_h_pix >> 1) + 0.5;
|
||
_ctx.moveTo(0, _y_line);
|
||
_ctx.lineTo(_w_pix, _y_line);
|
||
_ctx.stroke();
|
||
_ctx.beginPath();
|
||
|
||
_ctx.lineWidth = 2;
|
||
_y_line -= 10;
|
||
_ctx.moveTo(10, _y_line);
|
||
_ctx.lineTo(25, _y_line - 10);
|
||
_ctx.lineTo(10, _y_line - 20);
|
||
_ctx.stroke();
|
||
_ctx.beginPath();
|
||
|
||
_ctx.fillText(_obj.asc_getSigner1(), 10, _y_line + 25);
|
||
_ctx.fillText(_obj.asc_getSigner2(), 10, _y_line + 40);
|
||
_ctx.fillText(_obj.asc_getEmail(), 10, _y_line + 55);
|
||
|
||
var _url = _canvas.toDataURL("image/png");
|
||
_canvas = null;
|
||
|
||
var _args = [AscCommon.CreateGUID(), _obj.asc_getSigner1(), _obj.asc_getSigner2(), _obj.asc_getEmail(), _w, _h, _url];
|
||
|
||
this.ImageLoader.LoadImagesWithCallback([_url], function(_args) {
|
||
this.asc_addSignatureLine(_args[0], _args[1], _args[2], _args[3], _args[4], _args[5], _args[6]);
|
||
}, _args);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_getRequestSignatures = function()
|
||
{
|
||
var _sigs = this.asc_getAllSignatures();
|
||
var _sigs_ret = [];
|
||
|
||
var _found;
|
||
for (var i = _sigs.length - 1; i >= 0; i--)
|
||
{
|
||
var _sig = _sigs[i];
|
||
_found = false;
|
||
|
||
for (var j = this.signatures.length - 1; j >= 0; j--)
|
||
{
|
||
if (this.signatures[j].guid == _sig.id)
|
||
{
|
||
_found = true;
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (!_found)
|
||
{
|
||
var _add_sig = new AscCommon.asc_CSignatureLine();
|
||
_add_sig.guid = _sig.id;
|
||
_add_sig.signer1 = _sig.signer;
|
||
_add_sig.signer2 = _sig.signer2;
|
||
_add_sig.email = _sig.email;
|
||
|
||
_sigs_ret.push(_add_sig);
|
||
}
|
||
}
|
||
|
||
return _sigs_ret;
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_Sign = function(id, guid, url1, url2)
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["Sign"](id, guid, url1, url2);
|
||
};
|
||
baseEditorsApi.prototype.asc_RequestSign = function(guid)
|
||
{
|
||
var signGuid = (guid == "unvisibleAdd") ? AscCommon.CreateGUID() : guid;
|
||
|
||
if (window["asc_LocalRequestSign"])
|
||
window["asc_LocalRequestSign"](signGuid);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_ViewCertificate = function(id)
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["ViewCertificate"](parseInt("" + id)); // integer or string!
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_SelectCertificate = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["SelectCertificate"]();
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_GetDefaultCertificate = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["GetDefaultCertificate"]();
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_getSignatures = function()
|
||
{
|
||
return this.signatures;
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_RemoveSignature = function(guid)
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["RemoveSignature"](guid);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_RemoveAllSignatures = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
window["AscDesktopEditor"]["RemoveAllSignatures"]();
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_isSignaturesSupport = function()
|
||
{
|
||
if (window["AscDesktopEditor"] && window["AscDesktopEditor"]["IsSignaturesSupport"])
|
||
return window["AscDesktopEditor"]["IsSignaturesSupport"]();
|
||
return false;
|
||
};
|
||
baseEditorsApi.prototype.asc_isProtectionSupport = function()
|
||
{
|
||
if (window["AscDesktopEditor"] && window["AscDesktopEditor"]["IsProtectionSupport"])
|
||
return window["AscDesktopEditor"]["IsProtectionSupport"]();
|
||
return false;
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_gotoSignature = function(guid)
|
||
{
|
||
if (window["AscDesktopEditor"] && window["asc_IsVisibleSign"] && window["asc_IsVisibleSign"](guid))
|
||
{
|
||
if (this.asc_MoveCursorToSignature)
|
||
this.asc_MoveCursorToSignature(guid);
|
||
}
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_getSignatureSetup = function(guid)
|
||
{
|
||
var _sigs = this.asc_getAllSignatures();
|
||
|
||
for (var i = _sigs.length - 1; i >= 0; i--)
|
||
{
|
||
var _sig = _sigs[i];
|
||
if (_sig.id == guid)
|
||
{
|
||
var _add_sig = new AscCommon.asc_CSignatureLine();
|
||
_add_sig.guid = _sig.id;
|
||
_add_sig.signer1 = _sig.signer;
|
||
_add_sig.signer2 = _sig.signer2;
|
||
_add_sig.email = _sig.email;
|
||
|
||
_add_sig.isrequested = true;
|
||
for (var j = 0; j < this.signatures.length; j++)
|
||
{
|
||
var signDoc = this.signatures[j];
|
||
if (signDoc.guid == _add_sig.guid)
|
||
{
|
||
_add_sig.valid = signDoc.valid;
|
||
_add_sig.isrequested = false;
|
||
break;
|
||
}
|
||
}
|
||
|
||
return _add_sig;
|
||
}
|
||
}
|
||
|
||
return null;
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_getSignatureImage = function (sGuid) {
|
||
|
||
var count = this.signatures.length;
|
||
for (var i = 0; i < count; i++)
|
||
{
|
||
if (this.signatures[i].guid == sGuid)
|
||
return this.signatures[i].image;
|
||
}
|
||
return "";
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_getSessionToken = function () {
|
||
return this.CoAuthoringApi.get_jwt()
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_InputClearKeyboardElement = function()
|
||
{
|
||
if (AscCommon.g_inputContext)
|
||
AscCommon.g_inputContext.nativeFocusElement = null;
|
||
};
|
||
|
||
baseEditorsApi.prototype.onKeyDown = function(e)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.onKeyPress = function(e)
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.onKeyUp = function(e)
|
||
{
|
||
};
|
||
/**
|
||
* Получаем текст (в виде массива юникодных значений), который будет добавлен на ивенте KeyDown
|
||
* @param e
|
||
* @returns {Number[]}
|
||
*/
|
||
baseEditorsApi.prototype.getAddedTextOnKeyDown = function(e)
|
||
{
|
||
return [];
|
||
};
|
||
baseEditorsApi.prototype.pre_Paste = function(_fonts, _images, callback)
|
||
{
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_Remove = function()
|
||
{
|
||
if (AscCommon.g_inputContext)
|
||
AscCommon.g_inputContext.emulateKeyDownApi(46);
|
||
};
|
||
|
||
// System input
|
||
baseEditorsApi.prototype.SetTextBoxInputMode = function(bIsEnable)
|
||
{
|
||
AscCommon.TextBoxInputMode = bIsEnable;
|
||
if (AscCommon.g_inputContext)
|
||
AscCommon.g_inputContext.systemInputEnable(AscCommon.TextBoxInputMode);
|
||
};
|
||
baseEditorsApi.prototype.GetTextBoxInputMode = function()
|
||
{
|
||
return AscCommon.TextBoxInputMode;
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_OnHideContextMenu = function()
|
||
{
|
||
};
|
||
baseEditorsApi.prototype.asc_OnShowContextMenu = function()
|
||
{
|
||
};
|
||
|
||
baseEditorsApi.prototype.isIdle = function()
|
||
{
|
||
// пока не стартовали - считаем работаем
|
||
if (0 == this.lastWorkTime)
|
||
return 0;
|
||
|
||
// если плагин работает - то и мы тоже
|
||
if (this.pluginsManager && this.pluginsManager.isWorked())
|
||
return 0;
|
||
|
||
if (this.isEmbedVersion)
|
||
return 0;
|
||
|
||
if (!this.canSave || !this._saveCheck())
|
||
return 0;
|
||
|
||
return new Date().getTime() - this.lastWorkTime;
|
||
};
|
||
|
||
baseEditorsApi.prototype.checkLastWork = function()
|
||
{
|
||
this.lastWorkTime = new Date().getTime();
|
||
};
|
||
|
||
baseEditorsApi.prototype.setViewModeDisconnect = function()
|
||
{
|
||
// Посылаем наверх эвент об отключении от сервера
|
||
this.sendEvent('asc_onCoAuthoringDisconnect');
|
||
// И переходим в режим просмотра т.к. мы не можем сохранить файл
|
||
this.asc_setViewMode(true);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_setCurrentPassword = function(password)
|
||
{
|
||
this.currentPassword = password;
|
||
this.asc_Save(false, undefined, true);
|
||
};
|
||
baseEditorsApi.prototype.asc_resetPassword = function()
|
||
{
|
||
this.currentPassword = "";
|
||
this.asc_Save(false, undefined, true);
|
||
};
|
||
|
||
baseEditorsApi.prototype.asc_setMacros = function(sData)
|
||
{
|
||
if (!this.macros)
|
||
return true;
|
||
|
||
if (true === AscCommon.CollaborativeEditing.Get_GlobalLock())
|
||
return true;
|
||
|
||
AscCommon.CollaborativeEditing.OnStart_CheckLock();
|
||
this.macros.CheckLock();
|
||
|
||
if (this.editorId == AscCommon.c_oEditorId.Spreadsheet)
|
||
{
|
||
var locker = Asc.editor.wb.getWorksheet().objectRender.objectLocker;
|
||
locker.addObjectId(this.macros.Get_Id());
|
||
|
||
var _this = this;
|
||
locker.checkObjects(function(bNoLock) {
|
||
if (bNoLock)
|
||
{
|
||
AscCommon.History.Create_NewPoint(AscDFH.historydescription_DocumentMacros_Data);
|
||
_this.macros.SetData(sData);
|
||
}
|
||
});
|
||
}
|
||
else
|
||
{
|
||
if (false === AscCommon.CollaborativeEditing.OnEnd_CheckLock(false))
|
||
{
|
||
AscCommon.History.Create_NewPoint(AscDFH.historydescription_DocumentMacros_Data);
|
||
this.macros.SetData(sData);
|
||
}
|
||
}
|
||
};
|
||
baseEditorsApi.prototype.asc_getMacros = function()
|
||
{
|
||
return this.macros.GetData();
|
||
};
|
||
|
||
function parseCSV(text, options) {
|
||
var delimiterChar;
|
||
if (options.asc_getDelimiterChar()) {
|
||
delimiterChar = options.asc_getDelimiterChar();
|
||
} else {
|
||
switch (options.asc_getDelimiter()) {
|
||
case AscCommon.c_oAscCsvDelimiter.None:
|
||
delimiterChar = undefined;
|
||
break;
|
||
case AscCommon.c_oAscCsvDelimiter.Tab:
|
||
delimiterChar = "\t";
|
||
break;
|
||
case AscCommon.c_oAscCsvDelimiter.Semicolon:
|
||
delimiterChar = ";";
|
||
break;
|
||
case AscCommon.c_oAscCsvDelimiter.Colon:
|
||
delimiterChar = ":";
|
||
break;
|
||
case AscCommon.c_oAscCsvDelimiter.Comma:
|
||
delimiterChar = ",";
|
||
break;
|
||
case AscCommon.c_oAscCsvDelimiter.Space:
|
||
delimiterChar = " ";
|
||
break;
|
||
}
|
||
}
|
||
var matrix = [];
|
||
var rows = text.match(/[^\r\n]+/g);
|
||
for (var i = 0; i < rows.length; ++i) {
|
||
var row = rows[i];
|
||
//todo quotes
|
||
matrix.push(row.split(delimiterChar));
|
||
}
|
||
return matrix;
|
||
}
|
||
|
||
baseEditorsApi.prototype.asc_decodeBuffer = function(buffer, options, callback) {
|
||
var reader = new FileReader();
|
||
//todo onerror
|
||
reader.onload = reader.onerror = function(e) {
|
||
var text = e.target.result ? e.target.result : "";
|
||
if (options instanceof Asc.asc_CCSVAdvancedOptions) {
|
||
callback(parseCSV(text, options));
|
||
} else {
|
||
callback(text.match(/[^\r\n]+/g));
|
||
}
|
||
};
|
||
|
||
reader.readAsText(new Blob([buffer]), AscCommon.c_oAscEncodings[options.asc_getCodePage()][2]);
|
||
};
|
||
|
||
//----------------------------------------------------------export----------------------------------------------------
|
||
window['AscCommon'] = window['AscCommon'] || {};
|
||
window['AscCommon'].baseEditorsApi = baseEditorsApi;
|
||
|
||
prot = baseEditorsApi.prototype;
|
||
prot['asc_selectSearchingResults'] = prot.asc_selectSearchingResults;
|
||
})(window);
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
AscCommon.baseEditorsApi.prototype._onEndPermissions = function () {
|
||
if (this.isOnFirstConnectEnd && this.isOnLoadLicense) {
|
||
var oResult = new AscCommon.asc_CAscEditorPermissions();
|
||
if (null !== this.licenseResult) {
|
||
var type = this.licenseResult['type'];
|
||
oResult.setLicenseType(type);
|
||
oResult.setCanBranding(this.licenseResult['branding']);
|
||
oResult.setIsLight(this.licenseResult['light']);
|
||
oResult.setLicenseMode(this.licenseResult['mode']);
|
||
oResult.setRights(this.licenseResult['rights']);
|
||
oResult.setBuildVersion(this.licenseResult['buildVersion']);
|
||
oResult.setBuildNumber(this.licenseResult['buildNumber']);
|
||
}
|
||
this.sendEvent('asc_onGetEditorPermissions', oResult);
|
||
}
|
||
};
|
||
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(function (window, undefined)
|
||
{
|
||
window['Asc'] = window['Asc'] || {};
|
||
// ---------------------------------------------------------------
|
||
function CAscTableStyle()
|
||
{
|
||
this.Id = "";
|
||
this.Type = 0;
|
||
this.Image = "";
|
||
}
|
||
|
||
CAscTableStyle.prototype.get_Id = function ()
|
||
{
|
||
return this.Id;
|
||
};
|
||
CAscTableStyle.prototype.get_Image = function ()
|
||
{
|
||
return this.Image;
|
||
};
|
||
CAscTableStyle.prototype.get_Type = function ()
|
||
{
|
||
return this.Type;
|
||
};
|
||
window['Asc']['CAscTableStyle'] = window['Asc'].CAscTableStyle = CAscTableStyle;
|
||
CAscTableStyle.prototype['get_Id'] = CAscTableStyle.prototype.get_Id;
|
||
CAscTableStyle.prototype['get_Image'] = CAscTableStyle.prototype.get_Image;
|
||
CAscTableStyle.prototype['get_Type'] = CAscTableStyle.prototype.get_Type;
|
||
|
||
// ---------------------------------------------------------------
|
||
// CBackground
|
||
// Value : тип заливки(прозрачная или нет),
|
||
// Color : { r : 0, g : 0, b : 0 }
|
||
function CBackground(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
if (obj.Unifill && obj.Unifill.fill && obj.Unifill.fill.type === window['Asc'].c_oAscFill.FILL_TYPE_SOLID && obj.Unifill.fill.color)
|
||
{
|
||
this.Color = AscCommon.CreateAscColor(obj.Unifill.fill.color);
|
||
}
|
||
else
|
||
{
|
||
this.Color = (undefined != obj.Color && null != obj.Color) ? AscCommon.CreateAscColorCustom(obj.Color.r, obj.Color.g, obj.Color.b) : null;
|
||
}
|
||
this.Value = (undefined != obj.Value) ? obj.Value : null;
|
||
}
|
||
else
|
||
{
|
||
this.Color = AscCommon.CreateAscColorCustom(0, 0, 0);
|
||
this.Value = 1;
|
||
}
|
||
}
|
||
|
||
CBackground.prototype.get_Color = function ()
|
||
{
|
||
return this.Color;
|
||
};
|
||
CBackground.prototype.put_Color = function (v)
|
||
{
|
||
this.Color = (v) ? v : null;
|
||
};
|
||
CBackground.prototype.get_Value = function ()
|
||
{
|
||
return this.Value;
|
||
};
|
||
CBackground.prototype.put_Value = function (v)
|
||
{
|
||
this.Value = v;
|
||
};
|
||
|
||
window['Asc']['CBackground'] = window['Asc'].CBackground = CBackground;
|
||
CBackground.prototype['get_Color'] = CBackground.prototype.get_Color;
|
||
CBackground.prototype['put_Color'] = CBackground.prototype.put_Color;
|
||
CBackground.prototype['get_Value'] = CBackground.prototype.get_Value;
|
||
CBackground.prototype['put_Value'] = CBackground.prototype.put_Value;
|
||
|
||
// ---------------------------------------------------------------
|
||
function CTablePositionH(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.RelativeFrom = ( undefined === obj.RelativeFrom ) ? Asc.c_oAscHAnchor.Margin : obj.RelativeFrom;
|
||
this.UseAlign = ( undefined === obj.UseAlign ) ? false : obj.UseAlign;
|
||
this.Align = ( undefined === obj.Align ) ? undefined : obj.Align;
|
||
this.Value = ( undefined === obj.Value ) ? 0 : obj.Value;
|
||
}
|
||
else
|
||
{
|
||
this.RelativeFrom = Asc.c_oAscHAnchor.Column;
|
||
this.UseAlign = false;
|
||
this.Align = undefined;
|
||
this.Value = 0;
|
||
}
|
||
}
|
||
|
||
CTablePositionH.prototype.get_RelativeFrom = function ()
|
||
{
|
||
return this.RelativeFrom;
|
||
};
|
||
CTablePositionH.prototype.put_RelativeFrom = function (v)
|
||
{
|
||
this.RelativeFrom = v;
|
||
};
|
||
CTablePositionH.prototype.get_UseAlign = function ()
|
||
{
|
||
return this.UseAlign;
|
||
};
|
||
CTablePositionH.prototype.put_UseAlign = function (v)
|
||
{
|
||
this.UseAlign = v;
|
||
};
|
||
CTablePositionH.prototype.get_Align = function ()
|
||
{
|
||
return this.Align;
|
||
};
|
||
CTablePositionH.prototype.put_Align = function (v)
|
||
{
|
||
this.Align = v;
|
||
};
|
||
CTablePositionH.prototype.get_Value = function ()
|
||
{
|
||
return this.Value;
|
||
};
|
||
CTablePositionH.prototype.put_Value = function (v)
|
||
{
|
||
this.Value = v;
|
||
};
|
||
|
||
function CTablePositionV(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.RelativeFrom = ( undefined === obj.RelativeFrom ) ? Asc.c_oAscVAnchor.Text : obj.RelativeFrom;
|
||
this.UseAlign = ( undefined === obj.UseAlign ) ? false : obj.UseAlign;
|
||
this.Align = ( undefined === obj.Align ) ? undefined : obj.Align;
|
||
this.Value = ( undefined === obj.Value ) ? 0 : obj.Value;
|
||
}
|
||
else
|
||
{
|
||
this.RelativeFrom = Asc.c_oAscVAnchor.Text;
|
||
this.UseAlign = false;
|
||
this.Align = undefined;
|
||
this.Value = 0;
|
||
}
|
||
}
|
||
|
||
CTablePositionV.prototype.get_RelativeFrom = function ()
|
||
{
|
||
return this.RelativeFrom;
|
||
};
|
||
CTablePositionV.prototype.put_RelativeFrom = function (v)
|
||
{
|
||
this.RelativeFrom = v;
|
||
};
|
||
CTablePositionV.prototype.get_UseAlign = function ()
|
||
{
|
||
return this.UseAlign;
|
||
};
|
||
CTablePositionV.prototype.put_UseAlign = function (v)
|
||
{
|
||
this.UseAlign = v;
|
||
};
|
||
CTablePositionV.prototype.get_Align = function ()
|
||
{
|
||
return this.Align;
|
||
};
|
||
CTablePositionV.prototype.put_Align = function (v)
|
||
{
|
||
this.Align = v;
|
||
};
|
||
CTablePositionV.prototype.get_Value = function ()
|
||
{
|
||
return this.Value;
|
||
};
|
||
CTablePositionV.prototype.put_Value = function (v)
|
||
{
|
||
this.Value = v;
|
||
};
|
||
|
||
window['Asc']['CTablePositionH'] = CTablePositionH;
|
||
CTablePositionH.prototype['get_RelativeFrom'] = CTablePositionH.prototype.get_RelativeFrom;
|
||
CTablePositionH.prototype['put_RelativeFrom'] = CTablePositionH.prototype.put_RelativeFrom;
|
||
CTablePositionH.prototype['get_UseAlign'] = CTablePositionH.prototype.get_UseAlign;
|
||
CTablePositionH.prototype['put_UseAlign'] = CTablePositionH.prototype.put_UseAlign;
|
||
CTablePositionH.prototype['get_Align'] = CTablePositionH.prototype.get_Align;
|
||
CTablePositionH.prototype['put_Align'] = CTablePositionH.prototype.put_Align;
|
||
CTablePositionH.prototype['get_Value'] = CTablePositionH.prototype.get_Value;
|
||
CTablePositionH.prototype['put_Value'] = CTablePositionH.prototype.put_Value;
|
||
window['Asc']['CTablePositionV'] = CTablePositionV;
|
||
CTablePositionV.prototype['get_RelativeFrom'] = CTablePositionV.prototype.get_RelativeFrom;
|
||
CTablePositionV.prototype['put_RelativeFrom'] = CTablePositionV.prototype.put_RelativeFrom;
|
||
CTablePositionV.prototype['get_UseAlign'] = CTablePositionV.prototype.get_UseAlign;
|
||
CTablePositionV.prototype['put_UseAlign'] = CTablePositionV.prototype.put_UseAlign;
|
||
CTablePositionV.prototype['get_Align'] = CTablePositionV.prototype.get_Align;
|
||
CTablePositionV.prototype['put_Align'] = CTablePositionV.prototype.put_Align;
|
||
CTablePositionV.prototype['get_Value'] = CTablePositionV.prototype.get_Value;
|
||
CTablePositionV.prototype['put_Value'] = CTablePositionV.prototype.put_Value;
|
||
|
||
// ---------------------------------------------------------------
|
||
function CTablePropLook(obj)
|
||
{
|
||
this.FirstCol = false;
|
||
this.FirstRow = false;
|
||
this.LastCol = false;
|
||
this.LastRow = false;
|
||
this.BandHor = false;
|
||
this.BandVer = false;
|
||
|
||
if (obj)
|
||
{
|
||
this.FirstCol = ( undefined === obj.m_bFirst_Col ? false : obj.m_bFirst_Col );
|
||
this.FirstRow = ( undefined === obj.m_bFirst_Row ? false : obj.m_bFirst_Row );
|
||
this.LastCol = ( undefined === obj.m_bLast_Col ? false : obj.m_bLast_Col );
|
||
this.LastRow = ( undefined === obj.m_bLast_Row ? false : obj.m_bLast_Row );
|
||
this.BandHor = ( undefined === obj.m_bBand_Hor ? false : obj.m_bBand_Hor );
|
||
this.BandVer = ( undefined === obj.m_bBand_Ver ? false : obj.m_bBand_Ver );
|
||
}
|
||
}
|
||
|
||
CTablePropLook.prototype.get_FirstCol = function ()
|
||
{
|
||
return this.FirstCol;
|
||
};
|
||
CTablePropLook.prototype.put_FirstCol = function (v)
|
||
{
|
||
this.FirstCol = v;
|
||
};
|
||
CTablePropLook.prototype.get_FirstRow = function ()
|
||
{
|
||
return this.FirstRow;
|
||
};
|
||
CTablePropLook.prototype.put_FirstRow = function (v)
|
||
{
|
||
this.FirstRow = v;
|
||
};
|
||
CTablePropLook.prototype.get_LastCol = function ()
|
||
{
|
||
return this.LastCol;
|
||
};
|
||
CTablePropLook.prototype.put_LastCol = function (v)
|
||
{
|
||
this.LastCol = v;
|
||
};
|
||
CTablePropLook.prototype.get_LastRow = function ()
|
||
{
|
||
return this.LastRow;
|
||
};
|
||
CTablePropLook.prototype.put_LastRow = function (v)
|
||
{
|
||
this.LastRow = v;
|
||
};
|
||
CTablePropLook.prototype.get_BandHor = function ()
|
||
{
|
||
return this.BandHor;
|
||
};
|
||
CTablePropLook.prototype.put_BandHor = function (v)
|
||
{
|
||
this.BandHor = v;
|
||
};
|
||
CTablePropLook.prototype.get_BandVer = function ()
|
||
{
|
||
return this.BandVer;
|
||
};
|
||
CTablePropLook.prototype.put_BandVer = function (v)
|
||
{
|
||
this.BandVer = v;
|
||
};
|
||
|
||
window['Asc']['CTablePropLook'] = window['Asc'].CTablePropLook = CTablePropLook;
|
||
CTablePropLook.prototype['get_FirstCol'] = CTablePropLook.prototype.get_FirstCol;
|
||
CTablePropLook.prototype['put_FirstCol'] = CTablePropLook.prototype.put_FirstCol;
|
||
CTablePropLook.prototype['get_FirstRow'] = CTablePropLook.prototype.get_FirstRow;
|
||
CTablePropLook.prototype['put_FirstRow'] = CTablePropLook.prototype.put_FirstRow;
|
||
CTablePropLook.prototype['get_LastCol'] = CTablePropLook.prototype.get_LastCol;
|
||
CTablePropLook.prototype['put_LastCol'] = CTablePropLook.prototype.put_LastCol;
|
||
CTablePropLook.prototype['get_LastRow'] = CTablePropLook.prototype.get_LastRow;
|
||
CTablePropLook.prototype['put_LastRow'] = CTablePropLook.prototype.put_LastRow;
|
||
CTablePropLook.prototype['get_BandHor'] = CTablePropLook.prototype.get_BandHor;
|
||
CTablePropLook.prototype['put_BandHor'] = CTablePropLook.prototype.put_BandHor;
|
||
CTablePropLook.prototype['get_BandVer'] = CTablePropLook.prototype.get_BandVer;
|
||
CTablePropLook.prototype['put_BandVer'] = CTablePropLook.prototype.put_BandVer;
|
||
|
||
/*
|
||
{
|
||
TableWidth : null - галочка убрана, либо заданное значение в мм
|
||
TableSpacing : null - галочка убрана, либо заданное значение в мм
|
||
|
||
TableDefaultMargins : // маргины для всей таблицы(значение по умолчанию)
|
||
{
|
||
Left : 1.9,
|
||
Right : 1.9,
|
||
Top : 0,
|
||
Bottom : 0
|
||
}
|
||
|
||
CellMargins :
|
||
{
|
||
Left : 1.9, (null - неопределенное значение)
|
||
Right : 1.9, (null - неопределенное значение)
|
||
Top : 0, (null - неопределенное значение)
|
||
Bottom : 0, (null - неопределенное значение)
|
||
Flag : 0 - У всех выделенных ячеек значение берется из TableDefaultMargins
|
||
1 - У выделенных ячеек есть ячейки с дефолтовыми значениями, и есть со своими собственными
|
||
2 - У всех ячеек свои собственные значения
|
||
}
|
||
|
||
TableAlignment : 0, 1, 2 (слева, по центру, справа)
|
||
TableIndent : значение в мм,
|
||
TableWrappingStyle : 0, 1 (inline, flow)
|
||
TablePaddings:
|
||
{
|
||
Left : 3.2,
|
||
Right : 3.2,
|
||
Top : 0,
|
||
Bottom : 0
|
||
}
|
||
|
||
TableBorders : // границы таблицы
|
||
{
|
||
Bottom :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Left :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Right :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Top :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideH :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideV :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
}
|
||
}
|
||
|
||
CellBorders : // границы выделенных ячеек
|
||
{
|
||
ForSelectedCells : true,
|
||
|
||
Bottom :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Left :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Right :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Top :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideH : // данного элемента может не быть, если у выделенных ячеек
|
||
// нет горизонтальных внутренних границ
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideV : // данного элемента может не быть, если у выделенных ячеек
|
||
// нет вертикальных внутренних границ
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
}
|
||
}
|
||
|
||
TableBackground :
|
||
{
|
||
Value : тип заливки(прозрачная или нет),
|
||
Color : { r : 0, g : 0, b : 0 }
|
||
}
|
||
CellsBackground : null если заливка не определена для выделенных ячеек
|
||
{
|
||
Value : тип заливки(прозрачная или нет),
|
||
Color : { r : 0, g : 0, b : 0 }
|
||
}
|
||
|
||
Position:
|
||
{
|
||
X:0,
|
||
Y:0
|
||
}
|
||
}
|
||
*/
|
||
function CTableProp(tblProp)
|
||
{
|
||
if (tblProp)
|
||
{
|
||
this.CanBeFlow = (undefined != tblProp.CanBeFlow ? tblProp.CanBeFlow : false );
|
||
this.CellSelect = (undefined != tblProp.CellSelect ? tblProp.CellSelect : false );
|
||
this.CellSelect = (undefined != tblProp.CellSelect) ? tblProp.CellSelect : false;
|
||
this.TableWidth = (undefined != tblProp.TableWidth) ? tblProp.TableWidth : null;
|
||
this.TableSpacing = (undefined != tblProp.TableSpacing) ? tblProp.TableSpacing : null;
|
||
this.TableDefaultMargins = (undefined != tblProp.TableDefaultMargins && null != tblProp.TableDefaultMargins) ? new Asc.asc_CPaddings(tblProp.TableDefaultMargins) : null;
|
||
|
||
this.CellMargins = (undefined != tblProp.CellMargins && null != tblProp.CellMargins) ? new CMargins(tblProp.CellMargins) : null;
|
||
|
||
this.TableAlignment = (undefined != tblProp.TableAlignment) ? tblProp.TableAlignment : null;
|
||
this.TableIndent = (undefined != tblProp.TableIndent) ? tblProp.TableIndent : null;
|
||
this.TableWrappingStyle = (undefined != tblProp.TableWrappingStyle) ? tblProp.TableWrappingStyle : null;
|
||
|
||
this.TablePaddings = (undefined != tblProp.TablePaddings && null != tblProp.TablePaddings) ? new Asc.asc_CPaddings(tblProp.TablePaddings) : null;
|
||
|
||
this.TableBorders = (undefined != tblProp.TableBorders && null != tblProp.TableBorders) ? new CBorders(tblProp.TableBorders) : null;
|
||
this.CellBorders = (undefined != tblProp.CellBorders && null != tblProp.CellBorders) ? new CBorders(tblProp.CellBorders) : null;
|
||
this.TableBackground = (undefined != tblProp.TableBackground && null != tblProp.TableBackground) ? new CBackground(tblProp.TableBackground) : null;
|
||
this.CellsBackground = (undefined != tblProp.CellsBackground && null != tblProp.CellsBackground) ? new CBackground(tblProp.CellsBackground) : null;
|
||
this.Position = (undefined != tblProp.Position && null != tblProp.Position) ? new Asc.CPosition(tblProp.Position) : null;
|
||
this.PositionH = ( undefined != tblProp.PositionH && null != tblProp.PositionH ) ? new CTablePositionH(tblProp.PositionH) : undefined;
|
||
this.PositionV = ( undefined != tblProp.PositionV && null != tblProp.PositionV ) ? new CTablePositionV(tblProp.PositionV) : undefined;
|
||
this.Internal_Position = ( undefined != tblProp.Internal_Position ) ? tblProp.Internal_Position : undefined;
|
||
|
||
this.ForSelectedCells = (undefined != tblProp.ForSelectedCells) ? tblProp.ForSelectedCells : true;
|
||
this.TableStyle = (undefined != tblProp.TableStyle) ? tblProp.TableStyle : null;
|
||
this.TableLook = (undefined != tblProp.TableLook) ? new CTablePropLook(tblProp.TableLook) : null;
|
||
this.RowsInHeader = (undefined !== tblProp.RowsInHeader) ? tblProp.RowsInHeader : false;
|
||
this.CellsVAlign = (undefined != tblProp.CellsVAlign) ? tblProp.CellsVAlign : c_oAscVertAlignJc.Top;
|
||
this.AllowOverlap = (undefined != tblProp.AllowOverlap) ? tblProp.AllowOverlap : undefined;
|
||
this.TableLayout = tblProp.TableLayout;
|
||
this.CellsTextDirection = tblProp.CellsTextDirection;
|
||
this.CellsNoWrap = tblProp.CellsNoWrap;
|
||
this.CellsWidth = tblProp.CellsWidth;
|
||
this.CellsWidthNotEqual = tblProp.CellsWidthNotEqual;
|
||
this.Locked = (undefined != tblProp.Locked) ? tblProp.Locked : false;
|
||
this.PercentFullWidth = tblProp.PercentFullWidth;
|
||
this.TableDescription = tblProp.TableDescription;
|
||
this.TableCaption = tblProp.TableCaption;
|
||
|
||
this.ColumnWidth = tblProp.ColumnWidth;
|
||
this.RowHeight = tblProp.RowHeight;
|
||
}
|
||
else
|
||
{
|
||
//Все свойства класса CTableProp должны быть undefined если они не изменялись
|
||
//this.CanBeFlow = false;
|
||
this.CellSelect = false; //обязательное свойство
|
||
/*this.TableWidth = null;
|
||
this.TableSpacing = null;
|
||
this.TableDefaultMargins = new Asc.asc_CPaddings ();
|
||
|
||
this.CellMargins = new CMargins ();
|
||
|
||
this.TableAlignment = 0;
|
||
this.TableIndent = 0;
|
||
this.TableWrappingStyle = c_oAscWrapStyle.Inline;
|
||
|
||
this.TablePaddings = new Asc.asc_CPaddings ();
|
||
|
||
this.TableBorders = new CBorders ();
|
||
this.CellBorders = new CBorders ();
|
||
this.TableBackground = new CBackground ();
|
||
this.CellsBackground = new CBackground ();;
|
||
this.Position = new CPosition ();
|
||
this.ForSelectedCells = true;*/
|
||
|
||
this.Locked = false;
|
||
}
|
||
}
|
||
|
||
CTableProp.prototype.get_Width = function ()
|
||
{
|
||
return this.TableWidth;
|
||
};
|
||
CTableProp.prototype.put_Width = function (v)
|
||
{
|
||
this.TableWidth = v;
|
||
};
|
||
CTableProp.prototype.get_Spacing = function ()
|
||
{
|
||
return this.TableSpacing;
|
||
};
|
||
CTableProp.prototype.put_Spacing = function (v)
|
||
{
|
||
this.TableSpacing = v;
|
||
};
|
||
CTableProp.prototype.get_DefaultMargins = function ()
|
||
{
|
||
return this.TableDefaultMargins;
|
||
};
|
||
CTableProp.prototype.put_DefaultMargins = function (v)
|
||
{
|
||
this.TableDefaultMargins = v;
|
||
};
|
||
CTableProp.prototype.get_CellMargins = function ()
|
||
{
|
||
return this.CellMargins;
|
||
};
|
||
CTableProp.prototype.put_CellMargins = function (v)
|
||
{
|
||
this.CellMargins = v;
|
||
};
|
||
CTableProp.prototype.get_TableAlignment = function ()
|
||
{
|
||
return this.TableAlignment;
|
||
};
|
||
CTableProp.prototype.put_TableAlignment = function (v)
|
||
{
|
||
this.TableAlignment = v;
|
||
};
|
||
CTableProp.prototype.get_TableIndent = function ()
|
||
{
|
||
return this.TableIndent;
|
||
};
|
||
CTableProp.prototype.put_TableIndent = function (v)
|
||
{
|
||
this.TableIndent = v;
|
||
};
|
||
CTableProp.prototype.get_TableWrap = function ()
|
||
{
|
||
return this.TableWrappingStyle;
|
||
};
|
||
CTableProp.prototype.put_TableWrap = function (v)
|
||
{
|
||
this.TableWrappingStyle = v;
|
||
};
|
||
CTableProp.prototype.get_TablePaddings = function ()
|
||
{
|
||
return this.TablePaddings;
|
||
};
|
||
CTableProp.prototype.put_TablePaddings = function (v)
|
||
{
|
||
this.TablePaddings = v;
|
||
};
|
||
CTableProp.prototype.get_TableBorders = function ()
|
||
{
|
||
return this.TableBorders;
|
||
};
|
||
CTableProp.prototype.put_TableBorders = function (v)
|
||
{
|
||
this.TableBorders = v;
|
||
};
|
||
CTableProp.prototype.get_CellBorders = function ()
|
||
{
|
||
return this.CellBorders;
|
||
};
|
||
CTableProp.prototype.put_CellBorders = function (v)
|
||
{
|
||
this.CellBorders = v;
|
||
};
|
||
CTableProp.prototype.get_TableBackground = function ()
|
||
{
|
||
return this.TableBackground;
|
||
};
|
||
CTableProp.prototype.put_TableBackground = function (v)
|
||
{
|
||
this.TableBackground = v;
|
||
};
|
||
CTableProp.prototype.get_CellsBackground = function ()
|
||
{
|
||
return this.CellsBackground;
|
||
};
|
||
CTableProp.prototype.put_CellsBackground = function (v)
|
||
{
|
||
this.CellsBackground = v;
|
||
};
|
||
CTableProp.prototype.get_Position = function ()
|
||
{
|
||
return this.Position;
|
||
};
|
||
CTableProp.prototype.put_Position = function (v)
|
||
{
|
||
this.Position = v;
|
||
};
|
||
CTableProp.prototype.get_PositionH = function ()
|
||
{
|
||
return this.PositionH;
|
||
};
|
||
CTableProp.prototype.put_PositionH = function (v)
|
||
{
|
||
this.PositionH = v;
|
||
};
|
||
CTableProp.prototype.get_PositionV = function ()
|
||
{
|
||
return this.PositionV;
|
||
};
|
||
CTableProp.prototype.put_PositionV = function (v)
|
||
{
|
||
this.PositionV = v;
|
||
};
|
||
CTableProp.prototype.get_Value_X = function (RelativeFrom)
|
||
{
|
||
if (undefined != this.Internal_Position) return this.Internal_Position.Calculate_X_Value(RelativeFrom);
|
||
return 0;
|
||
};
|
||
CTableProp.prototype.get_Value_Y = function (RelativeFrom)
|
||
{
|
||
if (undefined != this.Internal_Position) return this.Internal_Position.Calculate_Y_Value(RelativeFrom);
|
||
return 0;
|
||
};
|
||
CTableProp.prototype.get_ForSelectedCells = function ()
|
||
{
|
||
return this.ForSelectedCells;
|
||
};
|
||
CTableProp.prototype.put_ForSelectedCells = function (v)
|
||
{
|
||
this.ForSelectedCells = v;
|
||
};
|
||
CTableProp.prototype.put_CellSelect = function (v)
|
||
{
|
||
this.CellSelect = v;
|
||
};
|
||
CTableProp.prototype.get_CellSelect = function ()
|
||
{
|
||
return this.CellSelect
|
||
};
|
||
CTableProp.prototype.get_CanBeFlow = function ()
|
||
{
|
||
return this.CanBeFlow;
|
||
};
|
||
CTableProp.prototype.get_RowsInHeader = function ()
|
||
{
|
||
return this.RowsInHeader;
|
||
};
|
||
CTableProp.prototype.put_RowsInHeader = function (v)
|
||
{
|
||
this.RowsInHeader = v;
|
||
};
|
||
CTableProp.prototype.get_Locked = function ()
|
||
{
|
||
return this.Locked;
|
||
};
|
||
CTableProp.prototype.get_CellsVAlign = function ()
|
||
{
|
||
return this.CellsVAlign;
|
||
};
|
||
CTableProp.prototype.put_CellsVAlign = function (v)
|
||
{
|
||
this.CellsVAlign = v;
|
||
};
|
||
CTableProp.prototype.get_TableLook = function ()
|
||
{
|
||
return this.TableLook;
|
||
};
|
||
CTableProp.prototype.put_TableLook = function (v)
|
||
{
|
||
this.TableLook = v;
|
||
};
|
||
CTableProp.prototype.get_TableStyle = function ()
|
||
{
|
||
return this.TableStyle;
|
||
};
|
||
CTableProp.prototype.put_TableStyle = function (v)
|
||
{
|
||
this.TableStyle = v;
|
||
};
|
||
CTableProp.prototype.get_AllowOverlap = function ()
|
||
{
|
||
return this.AllowOverlap;
|
||
};
|
||
CTableProp.prototype.put_AllowOverlap = function (v)
|
||
{
|
||
this.AllowOverlap = v;
|
||
};
|
||
CTableProp.prototype.get_TableLayout = function ()
|
||
{
|
||
return this.TableLayout;
|
||
};
|
||
CTableProp.prototype.put_TableLayout = function (v)
|
||
{
|
||
this.TableLayout = v;
|
||
};
|
||
CTableProp.prototype.get_CellsTextDirection = function ()
|
||
{
|
||
return this.CellsTextDirection;
|
||
};
|
||
CTableProp.prototype.put_CellsTextDirection = function (v)
|
||
{
|
||
this.CellsTextDirection = v;
|
||
};
|
||
CTableProp.prototype.get_CellsNoWrap = function ()
|
||
{
|
||
return this.CellsNoWrap;
|
||
};
|
||
CTableProp.prototype.put_CellsNoWrap = function (v)
|
||
{
|
||
this.CellsNoWrap = v;
|
||
};
|
||
CTableProp.prototype.get_CellsWidth = function ()
|
||
{
|
||
return this.CellsWidth;
|
||
};
|
||
CTableProp.prototype.put_CellsWidth = function (v)
|
||
{
|
||
this.CellsWidth = v;
|
||
};
|
||
CTableProp.prototype.get_PercentFullWidth = function ()
|
||
{
|
||
return this.PercentFullWidth;
|
||
};
|
||
CTableProp.prototype.get_CellsWidthNotEqual = function ()
|
||
{
|
||
return this.CellsWidthNotEqual;
|
||
};
|
||
CTableProp.prototype.get_TableDescription = function ()
|
||
{
|
||
return this.TableDescription;
|
||
};
|
||
CTableProp.prototype.put_TableDescription = function (v)
|
||
{
|
||
this.TableDescription = v;
|
||
};
|
||
CTableProp.prototype.get_TableCaption = function ()
|
||
{
|
||
return this.TableCaption;
|
||
};
|
||
CTableProp.prototype.put_TableCaption = function (v)
|
||
{
|
||
this.TableCaption = v;
|
||
};
|
||
CTableProp.prototype.get_ColumnWidth = function()
|
||
{
|
||
return this.ColumnWidth;
|
||
};
|
||
CTableProp.prototype.put_ColumnWidth = function(v)
|
||
{
|
||
this.ColumnWidth = v;
|
||
};
|
||
CTableProp.prototype.get_RowHeight = function()
|
||
{
|
||
return this.RowHeight;
|
||
};
|
||
CTableProp.prototype.put_RowHeight = function(v)
|
||
{
|
||
this.RowHeight = v;
|
||
};
|
||
|
||
window['Asc']['CTableProp'] = window['Asc'].CTableProp = CTableProp;
|
||
CTableProp.prototype['get_Width'] = CTableProp.prototype.get_Width;
|
||
CTableProp.prototype['put_Width'] = CTableProp.prototype.put_Width;
|
||
CTableProp.prototype['get_Spacing'] = CTableProp.prototype.get_Spacing;
|
||
CTableProp.prototype['put_Spacing'] = CTableProp.prototype.put_Spacing;
|
||
CTableProp.prototype['get_DefaultMargins'] = CTableProp.prototype.get_DefaultMargins;
|
||
CTableProp.prototype['put_DefaultMargins'] = CTableProp.prototype.put_DefaultMargins;
|
||
CTableProp.prototype['get_CellMargins'] = CTableProp.prototype.get_CellMargins;
|
||
CTableProp.prototype['put_CellMargins'] = CTableProp.prototype.put_CellMargins;
|
||
CTableProp.prototype['get_TableAlignment'] = CTableProp.prototype.get_TableAlignment;
|
||
CTableProp.prototype['put_TableAlignment'] = CTableProp.prototype.put_TableAlignment;
|
||
CTableProp.prototype['get_TableIndent'] = CTableProp.prototype.get_TableIndent;
|
||
CTableProp.prototype['put_TableIndent'] = CTableProp.prototype.put_TableIndent;
|
||
CTableProp.prototype['get_TableWrap'] = CTableProp.prototype.get_TableWrap;
|
||
CTableProp.prototype['put_TableWrap'] = CTableProp.prototype.put_TableWrap;
|
||
CTableProp.prototype['get_TablePaddings'] = CTableProp.prototype.get_TablePaddings;
|
||
CTableProp.prototype['put_TablePaddings'] = CTableProp.prototype.put_TablePaddings;
|
||
CTableProp.prototype['get_TableBorders'] = CTableProp.prototype.get_TableBorders;
|
||
CTableProp.prototype['put_TableBorders'] = CTableProp.prototype.put_TableBorders;
|
||
CTableProp.prototype['get_CellBorders'] = CTableProp.prototype.get_CellBorders;
|
||
CTableProp.prototype['put_CellBorders'] = CTableProp.prototype.put_CellBorders;
|
||
CTableProp.prototype['get_TableBackground'] = CTableProp.prototype.get_TableBackground;
|
||
CTableProp.prototype['put_TableBackground'] = CTableProp.prototype.put_TableBackground;
|
||
CTableProp.prototype['get_CellsBackground'] = CTableProp.prototype.get_CellsBackground;
|
||
CTableProp.prototype['put_CellsBackground'] = CTableProp.prototype.put_CellsBackground;
|
||
CTableProp.prototype['get_Position'] = CTableProp.prototype.get_Position;
|
||
CTableProp.prototype['put_Position'] = CTableProp.prototype.put_Position;
|
||
CTableProp.prototype['get_PositionH'] = CTableProp.prototype.get_PositionH;
|
||
CTableProp.prototype['put_PositionH'] = CTableProp.prototype.put_PositionH;
|
||
CTableProp.prototype['get_PositionV'] = CTableProp.prototype.get_PositionV;
|
||
CTableProp.prototype['put_PositionV'] = CTableProp.prototype.put_PositionV;
|
||
CTableProp.prototype['get_Value_X'] = CTableProp.prototype.get_Value_X;
|
||
CTableProp.prototype['get_Value_Y'] = CTableProp.prototype.get_Value_Y;
|
||
CTableProp.prototype['get_ForSelectedCells'] = CTableProp.prototype.get_ForSelectedCells;
|
||
CTableProp.prototype['put_ForSelectedCells'] = CTableProp.prototype.put_ForSelectedCells;
|
||
CTableProp.prototype['put_CellSelect'] = CTableProp.prototype.put_CellSelect;
|
||
CTableProp.prototype['get_CellSelect'] = CTableProp.prototype.get_CellSelect;
|
||
CTableProp.prototype['get_CanBeFlow'] = CTableProp.prototype.get_CanBeFlow;
|
||
CTableProp.prototype['get_RowsInHeader'] = CTableProp.prototype.get_RowsInHeader;
|
||
CTableProp.prototype['put_RowsInHeader'] = CTableProp.prototype.put_RowsInHeader;
|
||
CTableProp.prototype['get_Locked'] = CTableProp.prototype.get_Locked;
|
||
CTableProp.prototype['get_CellsVAlign'] = CTableProp.prototype.get_CellsVAlign;
|
||
CTableProp.prototype['put_CellsVAlign'] = CTableProp.prototype.put_CellsVAlign;
|
||
CTableProp.prototype['get_TableLook'] = CTableProp.prototype.get_TableLook;
|
||
CTableProp.prototype['put_TableLook'] = CTableProp.prototype.put_TableLook;
|
||
CTableProp.prototype['get_TableStyle'] = CTableProp.prototype.get_TableStyle;
|
||
CTableProp.prototype['put_TableStyle'] = CTableProp.prototype.put_TableStyle;
|
||
CTableProp.prototype['get_AllowOverlap'] = CTableProp.prototype.get_AllowOverlap;
|
||
CTableProp.prototype['put_AllowOverlap'] = CTableProp.prototype.put_AllowOverlap;
|
||
CTableProp.prototype['get_TableLayout'] = CTableProp.prototype.get_TableLayout;
|
||
CTableProp.prototype['put_TableLayout'] = CTableProp.prototype.put_TableLayout;
|
||
CTableProp.prototype['get_CellsTextDirection'] = CTableProp.prototype.get_CellsTextDirection;
|
||
CTableProp.prototype['put_CellsTextDirection'] = CTableProp.prototype.put_CellsTextDirection;
|
||
CTableProp.prototype['get_CellsNoWrap'] = CTableProp.prototype.get_CellsNoWrap;
|
||
CTableProp.prototype['put_CellsNoWrap'] = CTableProp.prototype.put_CellsNoWrap;
|
||
CTableProp.prototype['get_CellsWidth'] = CTableProp.prototype.get_CellsWidth;
|
||
CTableProp.prototype['put_CellsWidth'] = CTableProp.prototype.put_CellsWidth;
|
||
CTableProp.prototype['get_PercentFullWidth'] = CTableProp.prototype.get_PercentFullWidth;
|
||
CTableProp.prototype['get_CellsWidthNotEqual'] = CTableProp.prototype.get_CellsWidthNotEqual;
|
||
CTableProp.prototype['get_TableDescription'] = CTableProp.prototype.get_TableDescription;
|
||
CTableProp.prototype['put_TableDescription'] = CTableProp.prototype.put_TableDescription;
|
||
CTableProp.prototype['get_TableCaption'] = CTableProp.prototype.get_TableCaption;
|
||
CTableProp.prototype['put_TableCaption'] = CTableProp.prototype.put_TableCaption;
|
||
CTableProp.prototype['get_ColumnWidth'] = CTableProp.prototype.get_ColumnWidth;
|
||
CTableProp.prototype['put_ColumnWidth'] = CTableProp.prototype.put_ColumnWidth;
|
||
CTableProp.prototype['get_RowHeight'] = CTableProp.prototype.get_RowHeight;
|
||
CTableProp.prototype['put_RowHeight'] = CTableProp.prototype.put_RowHeight;
|
||
|
||
// ---------------------------------------------------------------
|
||
function CBorders(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.Left = (undefined != obj.Left && null != obj.Left) ? new Asc.asc_CTextBorder(obj.Left) : null;
|
||
this.Top = (undefined != obj.Top && null != obj.Top) ? new Asc.asc_CTextBorder(obj.Top) : null;
|
||
this.Right = (undefined != obj.Right && null != obj.Right) ? new Asc.asc_CTextBorder(obj.Right) : null;
|
||
this.Bottom = (undefined != obj.Bottom && null != obj.Bottom) ? new Asc.asc_CTextBorder(obj.Bottom) : null;
|
||
this.InsideH = (undefined != obj.InsideH && null != obj.InsideH) ? new Asc.asc_CTextBorder(obj.InsideH) : null;
|
||
this.InsideV = (undefined != obj.InsideV && null != obj.InsideV) ? new Asc.asc_CTextBorder(obj.InsideV) : null;
|
||
}
|
||
//Все свойства класса CBorders должны быть undefined если они не изменялись
|
||
/*else
|
||
{
|
||
this.Left = null;
|
||
this.Top = null;
|
||
this.Right = null;
|
||
this.Bottom = null;
|
||
this.InsideH = null;
|
||
this.InsideV = null;
|
||
}*/
|
||
}
|
||
|
||
CBorders.prototype.get_Left = function ()
|
||
{
|
||
return this.Left;
|
||
};
|
||
CBorders.prototype.put_Left = function (v)
|
||
{
|
||
this.Left = (v) ? new Asc.asc_CTextBorder(v) : null;
|
||
};
|
||
CBorders.prototype.get_Top = function ()
|
||
{
|
||
return this.Top;
|
||
};
|
||
CBorders.prototype.put_Top = function (v)
|
||
{
|
||
this.Top = (v) ? new Asc.asc_CTextBorder(v) : null;
|
||
};
|
||
CBorders.prototype.get_Right = function ()
|
||
{
|
||
return this.Right;
|
||
};
|
||
CBorders.prototype.put_Right = function (v)
|
||
{
|
||
this.Right = (v) ? new Asc.asc_CTextBorder(v) : null;
|
||
};
|
||
CBorders.prototype.get_Bottom = function ()
|
||
{
|
||
return this.Bottom;
|
||
};
|
||
CBorders.prototype.put_Bottom = function (v)
|
||
{
|
||
this.Bottom = (v) ? new Asc.asc_CTextBorder(v) : null;
|
||
};
|
||
CBorders.prototype.get_InsideH = function ()
|
||
{
|
||
return this.InsideH;
|
||
};
|
||
CBorders.prototype.put_InsideH = function (v)
|
||
{
|
||
this.InsideH = (v) ? new Asc.asc_CTextBorder(v) : null;
|
||
};
|
||
CBorders.prototype.get_InsideV = function ()
|
||
{
|
||
return this.InsideV;
|
||
};
|
||
CBorders.prototype.put_InsideV = function (v)
|
||
{
|
||
this.InsideV = (v) ? new Asc.asc_CTextBorder(v) : null;
|
||
};
|
||
|
||
function CMargins(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.Left = (undefined != obj.Left) ? obj.Left : null;
|
||
this.Right = (undefined != obj.Right) ? obj.Right : null;
|
||
this.Top = (undefined != obj.Top) ? obj.Top : null;
|
||
this.Bottom = (undefined != obj.Bottom) ? obj.Bottom : null;
|
||
this.Flag = (undefined != obj.Flag) ? obj.Flag : null;
|
||
}
|
||
else
|
||
{
|
||
this.Left = null;
|
||
this.Right = null;
|
||
this.Top = null;
|
||
this.Bottom = null;
|
||
this.Flag = null;
|
||
}
|
||
}
|
||
|
||
CMargins.prototype.get_Left = function ()
|
||
{
|
||
return this.Left;
|
||
};
|
||
CMargins.prototype.put_Left = function (v)
|
||
{
|
||
this.Left = v;
|
||
};
|
||
CMargins.prototype.get_Right = function ()
|
||
{
|
||
return this.Right;
|
||
};
|
||
CMargins.prototype.put_Right = function (v)
|
||
{
|
||
this.Right = v;
|
||
};
|
||
CMargins.prototype.get_Top = function ()
|
||
{
|
||
return this.Top;
|
||
};
|
||
CMargins.prototype.put_Top = function (v)
|
||
{
|
||
this.Top = v;
|
||
};
|
||
CMargins.prototype.get_Bottom = function ()
|
||
{
|
||
return this.Bottom;
|
||
};
|
||
CMargins.prototype.put_Bottom = function (v)
|
||
{
|
||
this.Bottom = v;
|
||
};
|
||
CMargins.prototype.get_Flag = function ()
|
||
{
|
||
return this.Flag;
|
||
};
|
||
CMargins.prototype.put_Flag = function (v)
|
||
{
|
||
this.Flag = v;
|
||
};
|
||
|
||
window['Asc']['CBorders'] = window['Asc'].CBorders = CBorders;
|
||
CBorders.prototype['get_Left'] = CBorders.prototype.get_Left;
|
||
CBorders.prototype['put_Left'] = CBorders.prototype.put_Left;
|
||
CBorders.prototype['get_Top'] = CBorders.prototype.get_Top;
|
||
CBorders.prototype['put_Top'] = CBorders.prototype.put_Top;
|
||
CBorders.prototype['get_Right'] = CBorders.prototype.get_Right;
|
||
CBorders.prototype['put_Right'] = CBorders.prototype.put_Right;
|
||
CBorders.prototype['get_Bottom'] = CBorders.prototype.get_Bottom;
|
||
CBorders.prototype['put_Bottom'] = CBorders.prototype.put_Bottom;
|
||
CBorders.prototype['get_InsideH'] = CBorders.prototype.get_InsideH;
|
||
CBorders.prototype['put_InsideH'] = CBorders.prototype.put_InsideH;
|
||
CBorders.prototype['get_InsideV'] = CBorders.prototype.get_InsideV;
|
||
CBorders.prototype['put_InsideV'] = CBorders.prototype.put_InsideV;
|
||
window['Asc']['CMargins'] = window['Asc'].CMargins = CMargins;
|
||
CMargins.prototype['get_Left'] = CMargins.prototype.get_Left;
|
||
CMargins.prototype['put_Left'] = CMargins.prototype.put_Left;
|
||
CMargins.prototype['get_Right'] = CMargins.prototype.get_Right;
|
||
CMargins.prototype['put_Right'] = CMargins.prototype.put_Right;
|
||
CMargins.prototype['get_Top'] = CMargins.prototype.get_Top;
|
||
CMargins.prototype['put_Top'] = CMargins.prototype.put_Top;
|
||
CMargins.prototype['get_Bottom'] = CMargins.prototype.get_Bottom;
|
||
CMargins.prototype['put_Bottom'] = CMargins.prototype.put_Bottom;
|
||
CMargins.prototype['get_Flag'] = CMargins.prototype.get_Flag;
|
||
CMargins.prototype['put_Flag'] = CMargins.prototype.put_Flag;
|
||
|
||
// ---------------------------------------------------------------
|
||
function CParagraphPropEx(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.ContextualSpacing = (undefined != obj.ContextualSpacing) ? obj.ContextualSpacing : null;
|
||
this.Ind = (undefined != obj.Ind && null != obj.Ind) ? new Asc.asc_CParagraphInd(obj.Ind) : null;
|
||
this.Jc = (undefined != obj.Jc) ? obj.Jc : null;
|
||
this.KeepLines = (undefined != obj.KeepLines) ? obj.KeepLines : null;
|
||
this.KeepNext = (undefined != obj.KeepNext) ? obj.KeepNext : null;
|
||
this.PageBreakBefore = (undefined != obj.PageBreakBefore) ? obj.PageBreakBefore : null;
|
||
this.Spacing = (undefined != obj.Spacing && null != obj.Spacing) ? new AscCommon.asc_CParagraphSpacing(obj.Spacing) : null;
|
||
this.Shd = (undefined != obj.Shd && null != obj.Shd) ? new Asc.asc_CParagraphShd(obj.Shd) : null;
|
||
this.WidowControl = (undefined != obj.WidowControl) ? obj.WidowControl : null; // Запрет висячих строк
|
||
this.Tabs = obj.Tabs;
|
||
}
|
||
else
|
||
{
|
||
//ContextualSpacing : false, // Удалять ли интервал между параграфами одинакового стиля
|
||
//
|
||
// Ind :
|
||
// {
|
||
// Left : 0, // Левый отступ
|
||
// Right : 0, // Правый отступ
|
||
// FirstLine : 0 // Первая строка
|
||
// },
|
||
//
|
||
// Jc : align_Left, // Прилегание параграфа
|
||
//
|
||
// KeepLines : false, // переносить параграф на новую страницу,
|
||
// // если на текущей он целиком не убирается
|
||
// KeepNext : false, // переносить параграф вместе со следующим параграфом
|
||
//
|
||
// PageBreakBefore : false, // начинать параграф с новой страницы
|
||
// Spacing :
|
||
// {
|
||
// Line : 1.15, // Расстояние между строками внутри абзаца
|
||
// LineRule : linerule_Auto, // Тип расстрояния между строками
|
||
// Before : 0, // Дополнительное расстояние до абзаца
|
||
// After : 10 * g_dKoef_pt_to_mm // Дополнительное расстояние после абзаца
|
||
// },
|
||
//
|
||
// Shd :
|
||
// {
|
||
// Value : shd_Nil,
|
||
// Color :
|
||
// {
|
||
// r : 255,
|
||
// g : 255,
|
||
// b : 255
|
||
// }
|
||
// },
|
||
//
|
||
// WidowControl : true, // Запрет висячих строк
|
||
//
|
||
// Tabs : []
|
||
this.ContextualSpacing = false;
|
||
this.Ind = new Asc.asc_CParagraphInd();
|
||
this.Jc = AscCommon.align_Left;
|
||
this.KeepLines = false;
|
||
this.KeepNext = false;
|
||
this.PageBreakBefore = false;
|
||
this.Spacing = new AscCommon.asc_CParagraphSpacing();
|
||
this.Shd = new Asc.asc_CParagraphShd();
|
||
this.WidowControl = true; // Запрет висячих строк
|
||
this.Tabs = null;
|
||
}
|
||
}
|
||
|
||
CParagraphPropEx.prototype.get_ContextualSpacing = function ()
|
||
{
|
||
return this.ContextualSpacing;
|
||
};
|
||
CParagraphPropEx.prototype.get_Ind = function ()
|
||
{
|
||
return this.Ind;
|
||
};
|
||
CParagraphPropEx.prototype.get_Jc = function ()
|
||
{
|
||
return this.Jc;
|
||
};
|
||
CParagraphPropEx.prototype.get_KeepLines = function ()
|
||
{
|
||
return this.KeepLines;
|
||
};
|
||
CParagraphPropEx.prototype.get_KeepNext = function ()
|
||
{
|
||
return this.KeepNext;
|
||
};
|
||
CParagraphPropEx.prototype.get_PageBreakBefore = function ()
|
||
{
|
||
return this.PageBreakBefore;
|
||
};
|
||
CParagraphPropEx.prototype.get_Spacing = function ()
|
||
{
|
||
return this.Spacing;
|
||
};
|
||
CParagraphPropEx.prototype.get_Shd = function ()
|
||
{
|
||
return this.Shd;
|
||
};
|
||
CParagraphPropEx.prototype.get_WidowControl = function ()
|
||
{
|
||
return this.WidowControl;
|
||
};
|
||
CParagraphPropEx.prototype.get_Tabs = function ()
|
||
{
|
||
return this.Tabs;
|
||
};
|
||
|
||
function CTextProp(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.Bold = (undefined != obj.Bold) ? obj.Bold : null;
|
||
this.Italic = (undefined != obj.Italic) ? obj.Italic : null;
|
||
this.Underline = (undefined != obj.Underline) ? obj.Underline : null;
|
||
this.Strikeout = (undefined != obj.Strikeout) ? obj.Strikeout : null;
|
||
this.FontFamily = (undefined != obj.FontFamily && null != obj.FontFamily) ? new AscCommon.asc_CTextFontFamily(obj.FontFamily) : new AscCommon.asc_CTextFontFamily({Name : "", Index : -1});
|
||
this.FontSize = (undefined != obj.FontSize) ? obj.FontSize : null;
|
||
this.Color = (undefined != obj.Color && null != obj.Color) ? AscCommon.CreateAscColorCustom(obj.Color.r, obj.Color.g, obj.Color.b) : null;
|
||
this.VertAlign = (undefined != obj.VertAlign) ? obj.VertAlign : null;
|
||
this.HighLight = (undefined != obj.HighLight) ? obj.HighLight == AscCommonWord.highlight_None ? obj.HighLight : new AscCommon.CColor(obj.HighLight.r, obj.HighLight.g, obj.HighLight.b) : null;
|
||
this.DStrikeout = (undefined != obj.DStrikeout) ? obj.DStrikeout : null;
|
||
this.Spacing = (undefined != obj.Spacing) ? obj.Spacing : null;
|
||
this.Caps = (undefined != obj.Caps) ? obj.Caps : null;
|
||
this.SmallCaps = (undefined != obj.SmallCaps) ? obj.SmallCaps : null;
|
||
}
|
||
else
|
||
{
|
||
// Bold : false,
|
||
// Italic : false,
|
||
// Underline : false,
|
||
// Strikeout : false,
|
||
// FontFamily :
|
||
// {
|
||
// Name : "Times New Roman",
|
||
// Index : -1
|
||
// },
|
||
// FontSize : 12,
|
||
// Color :
|
||
// {
|
||
// r : 0,
|
||
// g : 0,
|
||
// b : 0
|
||
// },
|
||
// VertAlign : vertalign_Baseline,
|
||
// HighLight : highlight_None
|
||
this.Bold = false;
|
||
this.Italic = false;
|
||
this.Underline = false;
|
||
this.Strikeout = false;
|
||
this.FontFamily = new AscCommon.asc_CTextFontFamily();
|
||
this.FontSize = 12;
|
||
this.Color = AscCommon.CreateAscColorCustom(0, 0, 0);
|
||
this.VertAlign = AscCommon.vertalign_Baseline;
|
||
this.HighLight = AscCommonWord.highlight_None;
|
||
this.DStrikeout = false;
|
||
this.Spacing = 0;
|
||
this.Caps = false;
|
||
this.SmallCaps = false;
|
||
}
|
||
}
|
||
|
||
CTextProp.prototype.get_Bold = function ()
|
||
{
|
||
return this.Bold;
|
||
};
|
||
CTextProp.prototype.get_Italic = function ()
|
||
{
|
||
return this.Italic;
|
||
};
|
||
CTextProp.prototype.get_Underline = function ()
|
||
{
|
||
return this.Underline;
|
||
};
|
||
CTextProp.prototype.get_Strikeout = function ()
|
||
{
|
||
return this.Strikeout;
|
||
};
|
||
CTextProp.prototype.get_FontFamily = function ()
|
||
{
|
||
return this.FontFamily;
|
||
};
|
||
CTextProp.prototype.get_FontSize = function ()
|
||
{
|
||
return this.FontSize;
|
||
};
|
||
CTextProp.prototype.get_Color = function ()
|
||
{
|
||
return this.Color;
|
||
};
|
||
CTextProp.prototype.get_VertAlign = function ()
|
||
{
|
||
return this.VertAlign;
|
||
};
|
||
CTextProp.prototype.get_HighLight = function ()
|
||
{
|
||
return this.HighLight;
|
||
};
|
||
CTextProp.prototype.get_Spacing = function ()
|
||
{
|
||
return this.Spacing;
|
||
};
|
||
CTextProp.prototype.get_DStrikeout = function ()
|
||
{
|
||
return this.DStrikeout;
|
||
};
|
||
CTextProp.prototype.get_Caps = function ()
|
||
{
|
||
return this.Caps;
|
||
};
|
||
CTextProp.prototype.get_SmallCaps = function ()
|
||
{
|
||
return this.SmallCaps;
|
||
};
|
||
|
||
CParagraphPropEx.prototype['get_ContextualSpacing'] = CParagraphPropEx.prototype.get_ContextualSpacing;
|
||
CParagraphPropEx.prototype['get_Ind'] = CParagraphPropEx.prototype.get_Ind;
|
||
CParagraphPropEx.prototype['get_Jc'] = CParagraphPropEx.prototype.get_Jc;
|
||
CParagraphPropEx.prototype['get_KeepLines'] = CParagraphPropEx.prototype.get_KeepLines;
|
||
CParagraphPropEx.prototype['get_KeepNext'] = CParagraphPropEx.prototype.get_KeepNext;
|
||
CParagraphPropEx.prototype['get_PageBreakBefore'] = CParagraphPropEx.prototype.get_PageBreakBefore;
|
||
CParagraphPropEx.prototype['get_Spacing'] = CParagraphPropEx.prototype.get_Spacing;
|
||
CParagraphPropEx.prototype['get_Shd'] = CParagraphPropEx.prototype.get_Shd;
|
||
CParagraphPropEx.prototype['get_WidowControl'] = CParagraphPropEx.prototype.get_WidowControl;
|
||
CParagraphPropEx.prototype['get_Tabs'] = CParagraphPropEx.prototype.get_Tabs;
|
||
CTextProp.prototype['get_Bold'] = CTextProp.prototype.get_Bold;
|
||
CTextProp.prototype['get_Italic'] = CTextProp.prototype.get_Italic;
|
||
CTextProp.prototype['get_Underline'] = CTextProp.prototype.get_Underline;
|
||
CTextProp.prototype['get_Strikeout'] = CTextProp.prototype.get_Strikeout;
|
||
CTextProp.prototype['get_FontFamily'] = CTextProp.prototype.get_FontFamily;
|
||
CTextProp.prototype['get_FontSize'] = CTextProp.prototype.get_FontSize;
|
||
CTextProp.prototype['get_Color'] = CTextProp.prototype.get_Color;
|
||
CTextProp.prototype['get_VertAlign'] = CTextProp.prototype.get_VertAlign;
|
||
CTextProp.prototype['get_HighLight'] = CTextProp.prototype.get_HighLight;
|
||
CTextProp.prototype['get_Spacing'] = CTextProp.prototype.get_Spacing;
|
||
CTextProp.prototype['get_DStrikeout'] = CTextProp.prototype.get_DStrikeout;
|
||
CTextProp.prototype['get_Caps'] = CTextProp.prototype.get_Caps;
|
||
CTextProp.prototype['get_SmallCaps'] = CTextProp.prototype.get_SmallCaps;
|
||
|
||
/**
|
||
* Paragraph and text properties objects container
|
||
* @param paragraphProp
|
||
* @param textProp
|
||
* @constructor
|
||
*/
|
||
function CParagraphAndTextProp(paragraphProp, textProp)
|
||
{
|
||
this.ParaPr = (undefined != paragraphProp && null != paragraphProp) ? new CParagraphPropEx(paragraphProp) : null;
|
||
this.TextPr = (undefined != textProp && null != textProp) ? new CTextProp(textProp) : null;
|
||
}
|
||
|
||
/**
|
||
* @returns {?CParagraphPropEx}
|
||
*/
|
||
CParagraphAndTextProp.prototype.get_ParaPr = function ()
|
||
{
|
||
return this.ParaPr;
|
||
};
|
||
/**
|
||
* @returns {?CTextProp}
|
||
*/
|
||
CParagraphAndTextProp.prototype.get_TextPr = function ()
|
||
{
|
||
return this.TextPr;
|
||
};
|
||
|
||
window['Asc']['CParagraphAndTextProp'] = window['Asc'].CParagraphAndTextProp = CParagraphAndTextProp;
|
||
CParagraphAndTextProp.prototype['get_ParaPr'] = CParagraphAndTextProp.prototype.get_ParaPr;
|
||
CParagraphAndTextProp.prototype['get_TextPr'] = CParagraphAndTextProp.prototype.get_TextPr;
|
||
// ---------------------------------------------------------------
|
||
|
||
function GenerateTableStyles(drawingDoc, logicDoc, tableLook)
|
||
{
|
||
var _dst_styles = [];
|
||
|
||
var _styles = logicDoc.Styles.Get_AllTableStyles();
|
||
var _styles_len = _styles.length;
|
||
|
||
if (_styles_len == 0)
|
||
return _dst_styles;
|
||
|
||
var _x_mar = 10;
|
||
var _y_mar = 10;
|
||
var _r_mar = 10;
|
||
var _b_mar = 10;
|
||
var _pageW = 297;
|
||
var _pageH = 210;
|
||
|
||
var W = (_pageW - _x_mar - _r_mar);
|
||
var H = (_pageH - _y_mar - _b_mar);
|
||
var Grid = [];
|
||
|
||
var Rows = 5;
|
||
var Cols = 5;
|
||
|
||
for (var i = 0; i < Cols; i++)
|
||
Grid[i] = W / Cols;
|
||
|
||
var _canvas = document.createElement('canvas');
|
||
if (!this.m_oWordControl.bIsRetinaSupport)
|
||
{
|
||
_canvas.width = TABLE_STYLE_WIDTH_PIX;
|
||
_canvas.height = TABLE_STYLE_HEIGHT_PIX;
|
||
}
|
||
else
|
||
{
|
||
_canvas.width = AscCommon.AscBrowser.convertToRetinaValue(TABLE_STYLE_WIDTH_PIX, true);
|
||
_canvas.height = AscCommon.AscBrowser.convertToRetinaValue(TABLE_STYLE_HEIGHT_PIX, true);
|
||
}
|
||
var ctx = _canvas.getContext('2d');
|
||
|
||
AscCommon.History.TurnOff();
|
||
for (var i1 = 0; i1 < _styles_len; i1++)
|
||
{
|
||
var i = _styles[i1];
|
||
var _style = logicDoc.Styles.Style[i];
|
||
|
||
if (!_style || _style.Type != styletype_Table)
|
||
continue;
|
||
|
||
var table = new CTable(drawingDoc, logicDoc, true, Rows, Cols, Grid);
|
||
table.Set_Props({TableStyle: i});
|
||
|
||
for (var j = 0; j < Rows; j++)
|
||
table.Content[j].Set_Height(H / Rows, Asc.linerule_AtLeast);
|
||
|
||
ctx.fillStyle = "#FFFFFF";
|
||
ctx.fillRect(0, 0, _canvas.width, _canvas.height);
|
||
|
||
var graphics = new AscCommon.CGraphics();
|
||
graphics.init(ctx, _canvas.width, _canvas.height, _pageW, _pageH);
|
||
graphics.m_oFontManager = AscCommon.g_fontManager;
|
||
graphics.transform(1, 0, 0, 1, 0, 0);
|
||
|
||
table.Reset(_x_mar, _y_mar, 1000, 1000, 0, 0, 1);
|
||
table.Recalculate_Page(0);
|
||
table.Draw(0, graphics);
|
||
|
||
var _styleD = new CAscTableStyle();
|
||
_styleD.Type = 0;
|
||
_styleD.Image = _canvas.toDataURL("image/png");
|
||
_styleD.Id = i;
|
||
_dst_styles.push(_styleD);
|
||
}
|
||
AscCommon.History.TurnOn();
|
||
|
||
return _dst_styles;
|
||
}
|
||
|
||
/*
|
||
структура заголовков, предварительно, выглядит так
|
||
{
|
||
headerText: "Header1",//заголовок
|
||
pageNumber: 0, //содержит номер страницы, где находится искомая последовательность
|
||
X: 0,//координаты по OX начала последовательности на данной страницы
|
||
Y: 0,//координаты по OY начала последовательности на данной страницы
|
||
level: 0//уровень заголовка
|
||
}
|
||
заголовки приходят либо в списке, либо последовательно.
|
||
*/
|
||
|
||
function CHeader(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.headerText = (undefined != obj.headerText) ? obj.headerText : null; //заголовок
|
||
this.pageNumber = (undefined != obj.pageNumber) ? obj.pageNumber : null; //содержит номер страницы, где находится искомая последовательность
|
||
this.X = (undefined != obj.X) ? obj.X : null; //координаты по OX начала последовательности на данной страницы
|
||
this.Y = (undefined != obj.Y) ? obj.Y : null; //координаты по OY начала последовательности на данной страницы
|
||
this.level = (undefined != obj.level) ? obj.level : null; //позиция заголовка
|
||
}
|
||
else
|
||
{
|
||
this.headerText = null; //заголовок
|
||
this.pageNumber = null; //содержит номер страницы, где находится искомая последовательность
|
||
this.X = null; //координаты по OX начала последовательности на данной страницы
|
||
this.Y = null; //координаты по OY начала последовательности на данной страницы
|
||
this.level = null; //позиция заголовка
|
||
}
|
||
}
|
||
|
||
CHeader.prototype.get_headerText = function ()
|
||
{
|
||
return this.headerText;
|
||
};
|
||
CHeader.prototype.get_pageNumber = function ()
|
||
{
|
||
return this.pageNumber;
|
||
};
|
||
CHeader.prototype.get_X = function ()
|
||
{
|
||
return this.X;
|
||
};
|
||
CHeader.prototype.get_Y = function ()
|
||
{
|
||
return this.Y;
|
||
};
|
||
CHeader.prototype.get_Level = function ()
|
||
{
|
||
return this.level;
|
||
};
|
||
|
||
window['Asc']['CHeader'] = window['Asc'].CHeader = CHeader;
|
||
CHeader.prototype['get_headerText'] = CHeader.prototype.get_headerText;
|
||
CHeader.prototype['get_pageNumber'] = CHeader.prototype.get_pageNumber;
|
||
CHeader.prototype['get_X'] = CHeader.prototype.get_X;
|
||
CHeader.prototype['get_Y'] = CHeader.prototype.get_Y;
|
||
CHeader.prototype['get_Level'] = CHeader.prototype.get_Level;
|
||
|
||
/**
|
||
* Класс для работы с настройками таблицы содержимого
|
||
* @constructor
|
||
*/
|
||
function CTableOfContentsPr()
|
||
{
|
||
this.Hyperlink = true;
|
||
this.OutlineStart = -1;
|
||
this.OutlineEnd = -1;
|
||
this.Styles = [];
|
||
this.PageNumbers = true;
|
||
this.RightTab = true;
|
||
|
||
// Эти параметры задаются только из интерфейса
|
||
this.TabLeader = undefined;
|
||
|
||
this.StylesType = Asc.c_oAscTOCStylesType.Current;
|
||
|
||
this.ComplexField = null;
|
||
}
|
||
CTableOfContentsPr.prototype.InitFromTOCInstruction = function(oComplexField)
|
||
{
|
||
if (!oComplexField)
|
||
return;
|
||
|
||
var oInstruction = oComplexField.GetInstruction();
|
||
if (!oInstruction)
|
||
return;
|
||
|
||
this.Hyperlink = oInstruction.IsHyperlinks();
|
||
this.OutlineStart = oInstruction.GetHeadingRangeStart();
|
||
this.OutlineEnd = oInstruction.GetHeadingRangeEnd();
|
||
this.Styles = oInstruction.GetStylesArray();
|
||
|
||
this.PageNumbers = !oInstruction.IsSkipPageRefLvl();
|
||
this.RightTab = "" === oInstruction.GetSeparator();
|
||
|
||
var oBeginChar = oComplexField.GetBeginChar();
|
||
if (oBeginChar && oBeginChar.GetRun() && oBeginChar.GetRun().GetParagraph())
|
||
{
|
||
var oTabs = oBeginChar.GetRun().GetParagraph().GetParagraphTabs();
|
||
|
||
if (oTabs.Tabs.length > 0)
|
||
{
|
||
this.TabLeader = oTabs.Tabs[oTabs.Tabs.length - 1].Leader;
|
||
}
|
||
}
|
||
|
||
this.ComplexField = oComplexField;
|
||
};
|
||
CTableOfContentsPr.prototype.InitFromSdtTOC = function(oSdtTOC)
|
||
{
|
||
this.ComplexField = oSdtTOC;
|
||
};
|
||
CTableOfContentsPr.prototype.CheckStylesType = function(oStyles)
|
||
{
|
||
if (oStyles)
|
||
this.StylesType = oStyles.GetTOCStylesType();
|
||
};
|
||
CTableOfContentsPr.prototype.get_Hyperlink = function()
|
||
{
|
||
return this.Hyperlink;
|
||
};
|
||
CTableOfContentsPr.prototype.put_Hyperlink = function(isHyperlink)
|
||
{
|
||
this.Hyperlink = isHyperlink;
|
||
};
|
||
CTableOfContentsPr.prototype.get_OutlineStart = function()
|
||
{
|
||
return this.OutlineStart;
|
||
};
|
||
CTableOfContentsPr.prototype.get_OutlineEnd = function()
|
||
{
|
||
return this.OutlineEnd;
|
||
};
|
||
CTableOfContentsPr.prototype.put_OutlineRange = function(nStart, nEnd)
|
||
{
|
||
this.OutlineStart = nStart;
|
||
this.OutlineEnd = nEnd;
|
||
};
|
||
CTableOfContentsPr.prototype.get_StylesCount = function()
|
||
{
|
||
return this.Styles.length;
|
||
};
|
||
CTableOfContentsPr.prototype.get_StyleName = function(nIndex)
|
||
{
|
||
if (nIndex < 0 || nIndex >= this.Styles.length)
|
||
return "";
|
||
|
||
return this.Styles[nIndex].Name;
|
||
};
|
||
CTableOfContentsPr.prototype.get_StyleLevel = function(nIndex)
|
||
{
|
||
if (nIndex < 0 || nIndex >= this.Styles.length)
|
||
return -1;
|
||
|
||
return this.Styles[nIndex].Lvl;
|
||
};
|
||
CTableOfContentsPr.prototype.get_Styles = function()
|
||
{
|
||
return this.Styles;
|
||
};
|
||
CTableOfContentsPr.prototype.clear_Styles = function()
|
||
{
|
||
this.Styles = [];
|
||
};
|
||
CTableOfContentsPr.prototype.add_Style = function(sName, nLvl)
|
||
{
|
||
this.Styles.push({Name : sName, Lvl : nLvl});
|
||
};
|
||
CTableOfContentsPr.prototype.put_ShowPageNumbers = function(isShow)
|
||
{
|
||
this.PageNumbers = isShow;
|
||
};
|
||
CTableOfContentsPr.prototype.get_ShowPageNumbers = function()
|
||
{
|
||
return this.PageNumbers;
|
||
};
|
||
CTableOfContentsPr.prototype.put_RightAlignTab = function(isRightTab)
|
||
{
|
||
this.RightTab = isRightTab;
|
||
};
|
||
CTableOfContentsPr.prototype.get_RightAlignTab = function()
|
||
{
|
||
return this.RightTab;
|
||
};
|
||
CTableOfContentsPr.prototype.put_TabLeader = function(nTabLeader)
|
||
{
|
||
this.TabLeader = nTabLeader;
|
||
};
|
||
CTableOfContentsPr.prototype.get_TabLeader = function()
|
||
{
|
||
return this.TabLeader;
|
||
};
|
||
CTableOfContentsPr.prototype.get_StylesType = function()
|
||
{
|
||
return this.StylesType;
|
||
};
|
||
CTableOfContentsPr.prototype.put_StylesType = function(nType)
|
||
{
|
||
this.StylesType = nType;
|
||
};
|
||
CTableOfContentsPr.prototype.get_InternalClass = function()
|
||
{
|
||
return this.ComplexField;
|
||
};
|
||
|
||
|
||
window['Asc']['CTableOfContentsPr'] = window['Asc'].CTableOfContentsPr = CTableOfContentsPr;
|
||
CTableOfContentsPr.prototype['get_Hyperlink'] = CTableOfContentsPr.prototype.get_Hyperlink;
|
||
CTableOfContentsPr.prototype['put_Hyperlink'] = CTableOfContentsPr.prototype.put_Hyperlink;
|
||
CTableOfContentsPr.prototype['get_OutlineStart'] = CTableOfContentsPr.prototype.get_OutlineStart;
|
||
CTableOfContentsPr.prototype['get_OutlineEnd'] = CTableOfContentsPr.prototype.get_OutlineEnd;
|
||
CTableOfContentsPr.prototype['put_OutlineRange'] = CTableOfContentsPr.prototype.put_OutlineRange;
|
||
CTableOfContentsPr.prototype['get_StylesCount'] = CTableOfContentsPr.prototype.get_StylesCount;
|
||
CTableOfContentsPr.prototype['get_StyleName'] = CTableOfContentsPr.prototype.get_StyleName;
|
||
CTableOfContentsPr.prototype['get_StyleLevel'] = CTableOfContentsPr.prototype.get_StyleLevel;
|
||
CTableOfContentsPr.prototype['clear_Styles'] = CTableOfContentsPr.prototype.clear_Styles;
|
||
CTableOfContentsPr.prototype['add_Style'] = CTableOfContentsPr.prototype.add_Style;
|
||
CTableOfContentsPr.prototype['put_ShowPageNumbers'] = CTableOfContentsPr.prototype.put_ShowPageNumbers;
|
||
CTableOfContentsPr.prototype['get_ShowPageNumbers'] = CTableOfContentsPr.prototype.get_ShowPageNumbers;
|
||
CTableOfContentsPr.prototype['put_RightAlignTab'] = CTableOfContentsPr.prototype.put_RightAlignTab;
|
||
CTableOfContentsPr.prototype['get_RightAlignTab'] = CTableOfContentsPr.prototype.get_RightAlignTab;
|
||
CTableOfContentsPr.prototype['get_TabLeader'] = CTableOfContentsPr.prototype.get_TabLeader;
|
||
CTableOfContentsPr.prototype['put_TabLeader'] = CTableOfContentsPr.prototype.put_TabLeader;
|
||
CTableOfContentsPr.prototype['get_StylesType'] = CTableOfContentsPr.prototype.get_StylesType;
|
||
CTableOfContentsPr.prototype['put_StylesType'] = CTableOfContentsPr.prototype.put_StylesType;
|
||
CTableOfContentsPr.prototype['get_InternalClass'] = CTableOfContentsPr.prototype.get_InternalClass;
|
||
|
||
|
||
/**
|
||
* Класс для работы с настройками стиля
|
||
* @constructor
|
||
*/
|
||
function CAscStyle()
|
||
{
|
||
this.Name = "";
|
||
this.Type = Asc.c_oAscStyleType.Paragraph;
|
||
|
||
this.qFormat = undefined;
|
||
this.uiPriority = undefined;
|
||
|
||
this.StyleId = "";
|
||
}
|
||
CAscStyle.prototype.get_Name = function()
|
||
{
|
||
return this.Name;
|
||
};
|
||
CAscStyle.prototype.put_Name = function(sName)
|
||
{
|
||
this.Name = sName;
|
||
};
|
||
CAscStyle.prototype.get_Type = function()
|
||
{
|
||
return this.Type;
|
||
};
|
||
CAscStyle.prototype.put_Type = function(nType)
|
||
{
|
||
this.Type = nType;
|
||
};
|
||
CAscStyle.prototype.get_QFormat = function()
|
||
{
|
||
return this.qFormat;
|
||
};
|
||
CAscStyle.prototype.put_QFormat = function(isQFormat)
|
||
{
|
||
this.qFormat = isQFormat;
|
||
};
|
||
CAscStyle.prototype.get_UIPriority = function()
|
||
{
|
||
return this.uiPriority;
|
||
};
|
||
CAscStyle.prototype.put_UIPriority = function(nPriority)
|
||
{
|
||
this.uiPriority = nPriority;
|
||
};
|
||
CAscStyle.prototype.get_StyleId = function()
|
||
{
|
||
return this.StyleId;
|
||
};
|
||
|
||
window['Asc']['CAscStyle'] = window['Asc'].CAscStyle = CAscStyle;
|
||
CAscStyle.prototype['get_Name'] = CAscStyle.prototype.get_Name;
|
||
CAscStyle.prototype['put_Name'] = CAscStyle.prototype.put_Name;
|
||
CAscStyle.prototype['get_Type'] = CAscStyle.prototype.get_Type;
|
||
CAscStyle.prototype['put_Type'] = CAscStyle.prototype.put_Type;
|
||
CAscStyle.prototype['get_QFormat'] = CAscStyle.prototype.get_QFormat;
|
||
CAscStyle.prototype['put_QFormat'] = CAscStyle.prototype.put_QFormat;
|
||
CAscStyle.prototype['get_UIPriority'] = CAscStyle.prototype.get_UIPriority;
|
||
CAscStyle.prototype['put_UIPriority'] = CAscStyle.prototype.put_UIPriority;
|
||
CAscStyle.prototype['get_StyleId'] = CAscStyle.prototype.get_StyleId;
|
||
|
||
|
||
/**
|
||
* Класс для работы с настройками нумерации
|
||
* @constructor
|
||
*/
|
||
function CAscNumbering()
|
||
{
|
||
this.NumId = "";
|
||
this.Lvl = new Array(9);
|
||
for (var nLvl = 0; nLvl < 9; ++nLvl)
|
||
{
|
||
this.Lvl[nLvl] = new CAscNumberingLvl(nLvl);
|
||
}
|
||
}
|
||
CAscNumbering.prototype.get_InternalId = function()
|
||
{
|
||
return this.NumId;
|
||
};
|
||
CAscNumbering.prototype.get_Lvl = function(nLvl)
|
||
{
|
||
if (nLvl < 0)
|
||
return this.Lvl[0];
|
||
else if (nLvl > 8)
|
||
return this.Lvl[8];
|
||
else if (!this.Lvl[nLvl])
|
||
return this.Lvl[0];
|
||
|
||
return this.Lvl[nLvl];
|
||
};
|
||
window['Asc']['CAscNumbering'] = window['Asc'].CAscNumbering = CAscNumbering;
|
||
CAscNumbering.prototype['get_InternalId'] = CAscNumbering.prototype.get_InternalId;
|
||
CAscNumbering.prototype['get_Lvl'] = CAscNumbering.prototype.get_Lvl;
|
||
|
||
|
||
/**
|
||
* Класс для работы с текстом конкретного уровня нумерации
|
||
* @constructor
|
||
*/
|
||
function CAscNumberingLvlText(Type, Value)
|
||
{
|
||
this.Type = undefined !== Type ? Type : Asc.c_oAscNumberingLvlTextType.Text;
|
||
this.Value = undefined !== Value ? Value : "";
|
||
}
|
||
CAscNumberingLvlText.prototype.get_Type = function()
|
||
{
|
||
return this.Type;
|
||
};
|
||
CAscNumberingLvlText.prototype.put_Type = function(nType)
|
||
{
|
||
this.Type = nType;
|
||
};
|
||
CAscNumberingLvlText.prototype.get_Value = function()
|
||
{
|
||
return this.Value;
|
||
};
|
||
CAscNumberingLvlText.prototype.put_Value = function(vVal)
|
||
{
|
||
this.Value = vVal;
|
||
};
|
||
window['Asc']['CAscNumberingLvlText'] = window['Asc'].CAscNumberingLvlText = CAscNumberingLvlText;
|
||
CAscNumberingLvlText.prototype['get_Type'] = CAscNumberingLvlText.prototype.get_Type;
|
||
CAscNumberingLvlText.prototype['put_Type'] = CAscNumberingLvlText.prototype.put_Type;
|
||
CAscNumberingLvlText.prototype['get_Value'] = CAscNumberingLvlText.prototype.get_Value;
|
||
CAscNumberingLvlText.prototype['put_Value'] = CAscNumberingLvlText.prototype.put_Value;
|
||
|
||
|
||
/**
|
||
* Класс для работы с настройками конкретного уровня нумерации
|
||
* @constructor
|
||
*/
|
||
function CAscNumberingLvl(nLvlNum)
|
||
{
|
||
this.LvlNum = nLvlNum;
|
||
this.Format = Asc.c_oAscNumberingFormat.Bullet;
|
||
this.Text = [];
|
||
this.TextPr = new AscCommonWord.CTextPr();
|
||
this.ParaPr = new AscCommonWord.CParaPr();
|
||
this.Start = 1;
|
||
this.Restart = -1;
|
||
this.Suff = Asc.c_oAscNumberingSuff.Tab;
|
||
this.Align = AscCommon.align_Left;
|
||
}
|
||
CAscNumberingLvl.prototype.get_LvlNum = function()
|
||
{
|
||
return this.LvlNum;
|
||
};
|
||
CAscNumberingLvl.prototype.get_Format = function()
|
||
{
|
||
return this.Format;
|
||
};
|
||
CAscNumberingLvl.prototype.put_Format = function(nFormat)
|
||
{
|
||
this.Format = nFormat;
|
||
};
|
||
CAscNumberingLvl.prototype.get_Text = function()
|
||
{
|
||
return this.Text;
|
||
};
|
||
CAscNumberingLvl.prototype.put_Text = function(arrText)
|
||
{
|
||
this.Text = arrText;
|
||
};
|
||
CAscNumberingLvl.prototype.get_TextPr = function()
|
||
{
|
||
return this.TextPr;
|
||
};
|
||
CAscNumberingLvl.prototype.get_ParaPr = function()
|
||
{
|
||
return this.ParaPr;
|
||
};
|
||
CAscNumberingLvl.prototype.get_Start = function()
|
||
{
|
||
return this.Start;
|
||
};
|
||
CAscNumberingLvl.prototype.put_Start = function(nStart)
|
||
{
|
||
this.Start = nStart;
|
||
};
|
||
CAscNumberingLvl.prototype.get_Restart = function()
|
||
{
|
||
return this.Restart;
|
||
};
|
||
CAscNumberingLvl.prototype.put_Restart = function(nRestart)
|
||
{
|
||
this.Restart = nRestart;
|
||
};
|
||
CAscNumberingLvl.prototype.get_Suff = function()
|
||
{
|
||
return this.Suff;
|
||
};
|
||
CAscNumberingLvl.prototype.put_Suff = function(nSuff)
|
||
{
|
||
this.Suff = nSuff;
|
||
};
|
||
CAscNumberingLvl.prototype.get_Align = function()
|
||
{
|
||
return this.Align;
|
||
};
|
||
CAscNumberingLvl.prototype.put_Align = function(nAlign)
|
||
{
|
||
this.Align = nAlign;
|
||
};
|
||
window['Asc']['CAscNumberingLvl'] = window['Asc'].CAscNumberingLvl = CAscNumberingLvl;
|
||
CAscNumberingLvl.prototype['get_LvlNum'] = CAscNumberingLvl.prototype.get_LvlNum;
|
||
CAscNumberingLvl.prototype['get_Format'] = CAscNumberingLvl.prototype.get_Format;
|
||
CAscNumberingLvl.prototype['put_Format'] = CAscNumberingLvl.prototype.put_Format;
|
||
CAscNumberingLvl.prototype['get_Text'] = CAscNumberingLvl.prototype.get_Text;
|
||
CAscNumberingLvl.prototype['put_Text'] = CAscNumberingLvl.prototype.put_Text;
|
||
CAscNumberingLvl.prototype['get_TextPr'] = CAscNumberingLvl.prototype.get_TextPr;
|
||
CAscNumberingLvl.prototype['get_ParaPr'] = CAscNumberingLvl.prototype.get_ParaPr;
|
||
CAscNumberingLvl.prototype['get_Start'] = CAscNumberingLvl.prototype.get_Start;
|
||
CAscNumberingLvl.prototype['put_Start'] = CAscNumberingLvl.prototype.put_Start;
|
||
CAscNumberingLvl.prototype['get_Restart'] = CAscNumberingLvl.prototype.get_Restart;
|
||
CAscNumberingLvl.prototype['put_Restart'] = CAscNumberingLvl.prototype.put_Restart;
|
||
CAscNumberingLvl.prototype['get_Suff'] = CAscNumberingLvl.prototype.get_Suff;
|
||
CAscNumberingLvl.prototype['put_Suff'] = CAscNumberingLvl.prototype.put_Suff;
|
||
CAscNumberingLvl.prototype['get_Align'] = CAscNumberingLvl.prototype.get_Align;
|
||
CAscNumberingLvl.prototype['put_Align'] = CAscNumberingLvl.prototype.put_Align;
|
||
})(window, undefined);
|
||
/*
|
||
* (c) Copyright Ascensio System SIA 2010-2018
|
||
*
|
||
* This program is a free software product. You can redistribute it and/or
|
||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||
* version 3 as published by the Free Software Foundation. In accordance with
|
||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||
* of any third-party rights.
|
||
*
|
||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||
*
|
||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||
* EU, LV-1021.
|
||
*
|
||
* The interactive user interfaces in modified source and object code versions
|
||
* of the Program must display Appropriate Legal Notices, as required under
|
||
* Section 5 of the GNU AGPL version 3.
|
||
*
|
||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||
* grant you any rights under trademark law for use of our trademarks.
|
||
*
|
||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||
* well as technical writing content are licensed under the terms of the
|
||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||
*
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
(function(window, document)
|
||
{
|
||
|
||
// Import
|
||
var c_oAscAdvancedOptionsAction = AscCommon.c_oAscAdvancedOptionsAction;
|
||
var DownloadType = AscCommon.DownloadType;
|
||
var locktype_None = AscCommon.locktype_None;
|
||
var locktype_Mine = AscCommon.locktype_Mine;
|
||
var locktype_Other = AscCommon.locktype_Other;
|
||
var locktype_Other2 = AscCommon.locktype_Other2;
|
||
var locktype_Other3 = AscCommon.locktype_Other3;
|
||
var changestype_Drawing_Props = AscCommon.changestype_Drawing_Props;
|
||
var asc_CSelectedObject = AscCommon.asc_CSelectedObject;
|
||
var g_oDocumentUrls = AscCommon.g_oDocumentUrls;
|
||
var sendCommand = AscCommon.sendCommand;
|
||
var mapAscServerErrorToAscError = AscCommon.mapAscServerErrorToAscError;
|
||
var g_oIdCounter = AscCommon.g_oIdCounter;
|
||
var g_oTableId = AscCommon.g_oTableId;
|
||
var PasteElementsId = null;
|
||
var global_mouseEvent = null;
|
||
var History = null;
|
||
|
||
var c_oAscError = Asc.c_oAscError;
|
||
var c_oAscFileType = Asc.c_oAscFileType;
|
||
var c_oAscAsyncAction = Asc.c_oAscAsyncAction;
|
||
var c_oAscAdvancedOptionsID = Asc.c_oAscAdvancedOptionsID;
|
||
var c_oAscAsyncActionType = Asc.c_oAscAsyncActionType;
|
||
var c_oAscTypeSelectElement = Asc.c_oAscTypeSelectElement;
|
||
var c_oAscFill = Asc.c_oAscFill;
|
||
var asc_CShapeFill = Asc.asc_CShapeFill;
|
||
var asc_CFillBlip = Asc.asc_CFillBlip;
|
||
|
||
function CAscSlideProps()
|
||
{
|
||
this.Background = null;
|
||
this.Timing = null;
|
||
this.LayoutIndex = null;
|
||
this.lockDelete = null;
|
||
this.lockLayout = null;
|
||
this.lockTiming = null;
|
||
this.lockBackground = null;
|
||
this.lockTranzition = null;
|
||
this.lockRemove = null;
|
||
this.isHidden = false;
|
||
}
|
||
|
||
CAscSlideProps.prototype.get_background = function()
|
||
{
|
||
return this.Background;
|
||
};
|
||
CAscSlideProps.prototype.put_background = function(v)
|
||
{
|
||
this.Background = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LayoutIndex = function()
|
||
{
|
||
return this.LayoutIndex;
|
||
};
|
||
CAscSlideProps.prototype.put_LayoutIndex = function(v)
|
||
{
|
||
this.LayoutIndex = v;
|
||
};
|
||
CAscSlideProps.prototype.get_timing = function()
|
||
{
|
||
return this.Timing;
|
||
};
|
||
CAscSlideProps.prototype.put_timing = function(v)
|
||
{
|
||
this.Timing = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LockDelete = function()
|
||
{
|
||
return this.lockDelete;
|
||
};
|
||
CAscSlideProps.prototype.put_LockDelete = function(v)
|
||
{
|
||
this.lockDelete = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LockLayout = function()
|
||
{
|
||
return this.lockLayout;
|
||
};
|
||
CAscSlideProps.prototype.put_LockLayout = function(v)
|
||
{
|
||
this.lockLayout = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LockTiming = function()
|
||
{
|
||
return this.lockTiming;
|
||
};
|
||
CAscSlideProps.prototype.put_LockTiming = function(v)
|
||
{
|
||
this.lockTiming = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LockBackground = function()
|
||
{
|
||
return this.lockBackground;
|
||
};
|
||
CAscSlideProps.prototype.put_LockBackground = function(v)
|
||
{
|
||
this.lockBackground = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LockTranzition = function()
|
||
{
|
||
return this.lockTranzition;
|
||
};
|
||
CAscSlideProps.prototype.put_LockTranzition = function(v)
|
||
{
|
||
this.lockTranzition = v;
|
||
};
|
||
CAscSlideProps.prototype.get_LockRemove = function()
|
||
{
|
||
return this.lockRemove;
|
||
};
|
||
CAscSlideProps.prototype.put_LockRemove = function(v)
|
||
{
|
||
this.lockRemove = v;
|
||
};
|
||
CAscSlideProps.prototype.get_IsHidden = function()
|
||
{
|
||
return this.isHidden;
|
||
};
|
||
|
||
function CAscChartProp(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
|
||
this.Width = (undefined != obj.w) ? obj.w : undefined;
|
||
this.Height = (undefined != obj.h) ? obj.h : undefined;
|
||
this.Position = new Asc.CPosition({X : obj.x, Y : obj.y});
|
||
|
||
this.Locked = (undefined != obj.locked) ? obj.locked : false;
|
||
this.lockAspect = (undefined != obj.lockAspect) ? obj.lockAspect : false;
|
||
this.ChartProperties = (undefined != obj.chartProps) ? obj.chartProps : null;
|
||
|
||
this.severalCharts = obj.severalCharts != undefined ? obj.severalCharts : false;
|
||
this.severalChartTypes = obj.severalChartTypes != undefined ? obj.severalChartTypes : undefined;
|
||
this.severalChartStyles = obj.severalChartStyles != undefined ? obj.severalChartStyles : undefined;
|
||
|
||
this.title = obj.title != undefined ? obj.title : undefined;
|
||
this.description = obj.description != undefined ? obj.description : undefined;
|
||
}
|
||
else
|
||
{
|
||
this.Width = undefined;
|
||
this.Height = undefined;
|
||
this.Position = undefined;
|
||
this.Locked = false;
|
||
this.lockAspect = undefined;
|
||
this.ChartProperties = new Asc.asc_ChartSettings();
|
||
|
||
this.severalCharts = false;
|
||
this.severalChartTypes = undefined;
|
||
this.severalChartStyles = undefined;
|
||
this.title = undefined;
|
||
this.description = undefined;
|
||
}
|
||
}
|
||
|
||
CAscChartProp.prototype.get_ChangeLevel = function()
|
||
{
|
||
return this.ChangeLevel;
|
||
};
|
||
CAscChartProp.prototype.put_ChangeLevel = function(v)
|
||
{
|
||
this.ChangeLevel = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_CanBeFlow = function()
|
||
{
|
||
return this.CanBeFlow;
|
||
};
|
||
CAscChartProp.prototype.get_Width = function()
|
||
{
|
||
return this.Width;
|
||
};
|
||
CAscChartProp.prototype.put_Width = function(v)
|
||
{
|
||
this.Width = v;
|
||
};
|
||
CAscChartProp.prototype.get_Height = function()
|
||
{
|
||
return this.Height;
|
||
};
|
||
CAscChartProp.prototype.put_Height = function(v)
|
||
{
|
||
this.Height = v;
|
||
};
|
||
CAscChartProp.prototype.get_WrappingStyle = function()
|
||
{
|
||
return this.WrappingStyle;
|
||
};
|
||
CAscChartProp.prototype.put_WrappingStyle = function(v)
|
||
{
|
||
this.WrappingStyle = v;
|
||
};
|
||
// Возвращается объект класса Asc.asc_CPaddings
|
||
CAscChartProp.prototype.get_Paddings = function()
|
||
{
|
||
return this.Paddings;
|
||
};
|
||
// Аргумент объект класса Asc.asc_CPaddings
|
||
CAscChartProp.prototype.put_Paddings = function(v)
|
||
{
|
||
this.Paddings = v;
|
||
};
|
||
CAscChartProp.prototype.get_AllowOverlap = function()
|
||
{
|
||
return this.AllowOverlap;
|
||
};
|
||
CAscChartProp.prototype.put_AllowOverlap = function(v)
|
||
{
|
||
this.AllowOverlap = v;
|
||
};
|
||
// Возвращается объект класса CPosition
|
||
CAscChartProp.prototype.get_Position = function()
|
||
{
|
||
return this.Position;
|
||
};
|
||
// Аргумент объект класса CPosition
|
||
CAscChartProp.prototype.put_Position = function(v)
|
||
{
|
||
this.Position = v;
|
||
};
|
||
CAscChartProp.prototype.get_PositionH = function()
|
||
{
|
||
return this.PositionH;
|
||
};
|
||
CAscChartProp.prototype.put_PositionH = function(v)
|
||
{
|
||
this.PositionH = v;
|
||
};
|
||
CAscChartProp.prototype.get_PositionV = function()
|
||
{
|
||
return this.PositionV;
|
||
};
|
||
CAscChartProp.prototype.put_PositionV = function(v)
|
||
{
|
||
this.PositionV = v;
|
||
};
|
||
CAscChartProp.prototype.get_Value_X = function(RelativeFrom)
|
||
{
|
||
if (null != this.Internal_Position) return this.Internal_Position.Calculate_X_Value(RelativeFrom);
|
||
return 0;
|
||
};
|
||
CAscChartProp.prototype.get_Value_Y = function(RelativeFrom)
|
||
{
|
||
if (null != this.Internal_Position) return this.Internal_Position.Calculate_Y_Value(RelativeFrom);
|
||
return 0;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_ImageUrl = function()
|
||
{
|
||
return this.ImageUrl;
|
||
};
|
||
CAscChartProp.prototype.put_ImageUrl = function(v)
|
||
{
|
||
this.ImageUrl = v;
|
||
};
|
||
CAscChartProp.prototype.get_Group = function()
|
||
{
|
||
return this.Group;
|
||
};
|
||
CAscChartProp.prototype.put_Group = function(v)
|
||
{
|
||
this.Group = v;
|
||
};
|
||
CAscChartProp.prototype.asc_getFromGroup = function()
|
||
{
|
||
return this.fromGroup;
|
||
};
|
||
CAscChartProp.prototype.asc_putFromGroup = function(v)
|
||
{
|
||
this.fromGroup = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_isChartProps = function()
|
||
{
|
||
return this.isChartProps;
|
||
};
|
||
CAscChartProp.prototype.put_isChartPross = function(v)
|
||
{
|
||
this.isChartProps = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_SeveralCharts = function()
|
||
{
|
||
return this.severalCharts;
|
||
};
|
||
CAscChartProp.prototype.put_SeveralCharts = function(v)
|
||
{
|
||
this.severalCharts = v;
|
||
};
|
||
CAscChartProp.prototype.get_SeveralChartTypes = function()
|
||
{
|
||
return this.severalChartTypes;
|
||
};
|
||
CAscChartProp.prototype.put_SeveralChartTypes = function(v)
|
||
{
|
||
this.severalChartTypes = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_SeveralChartStyles = function()
|
||
{
|
||
return this.severalChartStyles;
|
||
};
|
||
CAscChartProp.prototype.put_SeveralChartStyles = function(v)
|
||
{
|
||
this.severalChartStyles = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_VerticalTextAlign = function()
|
||
{
|
||
return this.verticalTextAlign;
|
||
};
|
||
CAscChartProp.prototype.put_VerticalTextAlign = function(v)
|
||
{
|
||
this.verticalTextAlign = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_Locked = function()
|
||
{
|
||
return this.Locked;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_ChartProperties = function()
|
||
{
|
||
return this.ChartProperties;
|
||
};
|
||
|
||
CAscChartProp.prototype.put_ChartProperties = function(v)
|
||
{
|
||
this.ChartProperties = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.get_ShapeProperties = function()
|
||
{
|
||
return this.ShapeProperties;
|
||
};
|
||
|
||
CAscChartProp.prototype.put_ShapeProperties = function(v)
|
||
{
|
||
this.ShapeProperties = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_getType = function()
|
||
{
|
||
return this.ChartProperties.asc_getType();
|
||
};
|
||
CAscChartProp.prototype.asc_getSubType = function()
|
||
{
|
||
return this.ChartProperties.asc_getSubType();
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_getStyleId = function()
|
||
{
|
||
return this.ChartProperties.asc_getStyleId();
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_getHeight = function()
|
||
{
|
||
return this.Height;
|
||
};
|
||
CAscChartProp.prototype.asc_getWidth = function()
|
||
{
|
||
return this.Width;
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_setType = function(v)
|
||
{
|
||
this.ChartProperties.asc_setType(v);
|
||
};
|
||
CAscChartProp.prototype.asc_setSubType = function(v)
|
||
{
|
||
this.ChartProperties.asc_setSubType(v);
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_setStyleId = function(v)
|
||
{
|
||
this.ChartProperties.asc_setStyleId(v);
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_setHeight = function(v)
|
||
{
|
||
this.Height = v;
|
||
};
|
||
CAscChartProp.prototype.asc_setWidth = function(v)
|
||
{
|
||
this.Width = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_setTitle = function(v)
|
||
{
|
||
this.title = v;
|
||
};
|
||
CAscChartProp.prototype.asc_setDescription = function(v)
|
||
{
|
||
this.description = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.asc_getTitle = function()
|
||
{
|
||
return this.title;
|
||
};
|
||
CAscChartProp.prototype.asc_getDescription = function()
|
||
{
|
||
return this.description;
|
||
};
|
||
|
||
CAscChartProp.prototype.getType = function()
|
||
{
|
||
return this.ChartProperties && this.ChartProperties.getType();
|
||
};
|
||
CAscChartProp.prototype.putType = function(v)
|
||
{
|
||
return this.ChartProperties && this.ChartProperties.putType(v);
|
||
};
|
||
|
||
CAscChartProp.prototype.getStyle = function()
|
||
{
|
||
return this.ChartProperties && this.ChartProperties.getStyle();
|
||
};
|
||
CAscChartProp.prototype.putStyle = function(v)
|
||
{
|
||
return this.ChartProperties && this.ChartProperties.putStyle(v);
|
||
};
|
||
CAscChartProp.prototype.getLockAspect = function()
|
||
{
|
||
return this.lockAspect;
|
||
};
|
||
CAscChartProp.prototype.putLockAspect = function(v)
|
||
{
|
||
return this.lockAspect = v;
|
||
};
|
||
|
||
CAscChartProp.prototype.changeType = function(v)
|
||
{
|
||
return this.ChartProperties && this.ChartProperties.changeType(v);
|
||
};
|
||
|
||
function CDocInfoProp(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.PageCount = obj.PageCount;
|
||
this.WordsCount = obj.WordsCount;
|
||
this.ParagraphCount = obj.ParagraphCount;
|
||
this.SymbolsCount = obj.SymbolsCount;
|
||
this.SymbolsWSCount = obj.SymbolsWSCount;
|
||
}
|
||
else
|
||
{
|
||
this.PageCount = -1;
|
||
this.WordsCount = -1;
|
||
this.ParagraphCount = -1;
|
||
this.SymbolsCount = -1;
|
||
this.SymbolsWSCount = -1;
|
||
}
|
||
}
|
||
|
||
CDocInfoProp.prototype.get_PageCount = function()
|
||
{
|
||
return this.PageCount;
|
||
};
|
||
CDocInfoProp.prototype.put_PageCount = function(v)
|
||
{
|
||
this.PageCount = v;
|
||
};
|
||
CDocInfoProp.prototype.get_WordsCount = function()
|
||
{
|
||
return this.WordsCount;
|
||
};
|
||
CDocInfoProp.prototype.put_WordsCount = function(v)
|
||
{
|
||
this.WordsCount = v;
|
||
};
|
||
CDocInfoProp.prototype.get_ParagraphCount = function()
|
||
{
|
||
return this.ParagraphCount;
|
||
};
|
||
CDocInfoProp.prototype.put_ParagraphCount = function(v)
|
||
{
|
||
this.ParagraphCount = v;
|
||
};
|
||
CDocInfoProp.prototype.get_SymbolsCount = function()
|
||
{
|
||
return this.SymbolsCount;
|
||
};
|
||
CDocInfoProp.prototype.put_SymbolsCount = function(v)
|
||
{
|
||
this.SymbolsCount = v;
|
||
};
|
||
CDocInfoProp.prototype.get_SymbolsWSCount = function()
|
||
{
|
||
return this.SymbolsWSCount;
|
||
};
|
||
CDocInfoProp.prototype.put_SymbolsWSCount = function(v)
|
||
{
|
||
this.SymbolsWSCount = v;
|
||
};
|
||
|
||
// CSearchResult - returns result of searching
|
||
function CSearchResult(obj)
|
||
{
|
||
this.Object = obj;
|
||
}
|
||
|
||
CSearchResult.prototype.get_Text = function()
|
||
{
|
||
return this.Object.text;
|
||
};
|
||
|
||
CSearchResult.prototype.get_Navigator = function()
|
||
{
|
||
return this.Object.navigator;
|
||
};
|
||
|
||
CSearchResult.prototype.put_Navigator = function(obj)
|
||
{
|
||
this.Object.navigator = obj;
|
||
};
|
||
CSearchResult.prototype.put_Text = function(obj)
|
||
{
|
||
this.Object.text = obj;
|
||
};
|
||
|
||
/**
|
||
*
|
||
* @param config
|
||
* @constructor
|
||
* @extends {AscCommon.baseEditorsApi}
|
||
*/
|
||
function asc_docs_api(config)
|
||
{
|
||
AscCommon.baseEditorsApi.call(this, config, AscCommon.c_oEditorId.Presentation);
|
||
|
||
/************ private!!! **************/
|
||
this.WordControl = null;
|
||
|
||
this.documentFormatSave = c_oAscFileType.PPTX;
|
||
|
||
this.ThemeLoader = null;
|
||
this.tmpThemesPath = null;
|
||
this.tmpIsFreeze = null;
|
||
this.tmpSlideDiv = null;
|
||
this.tmpTextArtDiv = null;
|
||
this.tmpViewRulers = null;
|
||
this.tmpZoomType = null;
|
||
|
||
// Spell Checking
|
||
this.SpellCheckApi = new AscCommon.CSpellCheckApi();
|
||
this.isSpellCheckEnable = true;
|
||
|
||
|
||
this.DocumentUrl = "";
|
||
this.bNoSendComments = false;
|
||
|
||
this.isApplyChangesOnOpen = false;
|
||
|
||
this.IsSpellCheckCurrentWord = false;
|
||
|
||
this.IsSupportEmptyPresentation = true;
|
||
|
||
this.ShowParaMarks = false;
|
||
this.ShowSnapLines = true;
|
||
this.isAddSpaceBetweenPrg = false;
|
||
this.isPageBreakBefore = false;
|
||
this.isKeepLinesTogether = false;
|
||
this.isPresentationEditor = true;
|
||
this.bAlignBySelected = false;
|
||
this.bSelectedSlidesTheme = false;
|
||
|
||
this.isPaintFormat = AscCommon.c_oAscFormatPainterState.kOff;
|
||
this.isShowTableEmptyLine = false;//true;
|
||
this.isShowTableEmptyLineAttack = false;//true;
|
||
|
||
this.bInit_word_control = false;
|
||
this.isDocumentModify = false;
|
||
|
||
this.isImageChangeUrl = false;
|
||
this.isShapeImageChangeUrl = false;
|
||
this.isSlideImageChangeUrl = false;
|
||
this.textureType = null;
|
||
|
||
this.isPasteFonts_Images = false;
|
||
|
||
this.nCurPointItemsLength = -1;
|
||
|
||
this.pasteCallback = null;
|
||
this.pasteImageMap = null;
|
||
this.EndActionLoadImages = 0;
|
||
|
||
this.isSaveFonts_Images = false;
|
||
this.saveImageMap = null;
|
||
|
||
this.ServerImagesWaitComplete = false;
|
||
|
||
this.DocumentOrientation = false;
|
||
|
||
this.SelectedObjectsStack = [];
|
||
|
||
this.CoAuthoringApi.isPowerPoint = true;
|
||
|
||
// объекты, нужные для отправки в тулбар (шрифты, стили)
|
||
this._gui_editor_themes = null;
|
||
this._gui_document_themes = null;
|
||
|
||
this.EndShowMessage = undefined;
|
||
|
||
this.isOnlyDemonstration = false;
|
||
|
||
if (window.editor == undefined)
|
||
{
|
||
window.editor = this;
|
||
window.editor;
|
||
window['editor'] = window.editor;
|
||
|
||
if (window["NATIVE_EDITOR_ENJINE"])
|
||
editor = window.editor;
|
||
}
|
||
|
||
this.reporterWindow = null;
|
||
this.reporterWindowCounter = 0;
|
||
this.reporterStartObject = null;
|
||
this.isReporterMode = ("reporter" == config['using']) ? true : false;
|
||
this.disableReporterEvents = false;
|
||
|
||
if (this.isReporterMode)
|
||
{
|
||
var _windowOnResize = function() {
|
||
if (undefined != window._resizeTimeout && -1 != window._resizeTimeout)
|
||
clearTimeout(window._resizeTimeout);
|
||
window._resizeTimeout = setTimeout(function() {
|
||
window.editor.Resize();
|
||
window._resizeTimeout = -1;
|
||
}, 50);
|
||
};
|
||
|
||
if (window.addEventListener)
|
||
{
|
||
window.addEventListener("resize", _windowOnResize, false);
|
||
}
|
||
else if (window.attachEvent)
|
||
{
|
||
window.attachEvent("onresize", _windowOnResize);
|
||
}
|
||
else
|
||
{
|
||
window["onresize"] = _windowOnResize;
|
||
}
|
||
}
|
||
|
||
if (this.isReporterMode)
|
||
this.watermarkDraw = null;
|
||
|
||
this._init();
|
||
}
|
||
|
||
asc_docs_api.prototype = Object.create(AscCommon.baseEditorsApi.prototype);
|
||
asc_docs_api.prototype.constructor = asc_docs_api;
|
||
|
||
asc_docs_api.prototype.sendEvent = function()
|
||
{
|
||
var name = arguments[0];
|
||
if (_callbacks.hasOwnProperty(name))
|
||
{
|
||
for (var i = 0; i < _callbacks[name].length; ++i)
|
||
{
|
||
_callbacks[name][i].apply(this || window, Array.prototype.slice.call(arguments, 1));
|
||
}
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
|
||
/////////////////////////////////////////////////////////////////////////
|
||
///////////////////CoAuthoring and Chat api//////////////////////////////
|
||
/////////////////////////////////////////////////////////////////////////
|
||
// Init CoAuthoring
|
||
asc_docs_api.prototype._coAuthoringSetChange = function(change, oColor)
|
||
{
|
||
var oChange = new AscCommon.CCollaborativeChanges();
|
||
oChange.Set_Data(change);
|
||
oChange.Set_Color(oColor);
|
||
AscCommon.CollaborativeEditing.Add_Changes(oChange);
|
||
};
|
||
|
||
asc_docs_api.prototype._coAuthoringSetChanges = function(e, oColor)
|
||
{
|
||
var Count = e.length;
|
||
for (var Index = 0; Index < Count; ++Index)
|
||
this._coAuthoringSetChange(e[Index], oColor);
|
||
};
|
||
|
||
asc_docs_api.prototype._coAuthoringInitEnd = function()
|
||
{
|
||
var t = this;
|
||
this.CoAuthoringApi.onCursor = function(e)
|
||
{
|
||
if (true === AscCommon.CollaborativeEditing.Is_Fast())
|
||
{
|
||
t.WordControl.m_oLogicDocument.Update_ForeignCursor(e[e.length - 1]['cursor'], e[e.length - 1]['user'], true, e[e.length - 1]['useridoriginal']);
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onConnectionStateChanged = function(e)
|
||
{
|
||
if (true === AscCommon.CollaborativeEditing.Is_Fast() && false === e['state'])
|
||
{
|
||
editor.WordControl.m_oLogicDocument.Remove_ForeignCursor(e['id']);
|
||
}
|
||
t.sendEvent("asc_onConnectionStateChanged", e);
|
||
};
|
||
this.CoAuthoringApi.onLocksAcquired = function(e)
|
||
{
|
||
if (t._coAuthoringCheckEndOpenDocument(t.CoAuthoringApi.onLocksAcquired, e))
|
||
{
|
||
return;
|
||
}
|
||
|
||
if (2 != e["state"])
|
||
{
|
||
|
||
var block_value = e["blockValue"];
|
||
var classes = [];
|
||
switch (block_value["type"])
|
||
{
|
||
case c_oAscLockTypeElemPresentation.Object:
|
||
{
|
||
classes.push(block_value["objId"]);
|
||
//classes.push(block_value["slideId"]);
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Slide:
|
||
{
|
||
classes.push(block_value["val"]);
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Presentation:
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
|
||
for (var i = 0; i < classes.length; ++i)
|
||
{
|
||
var Class = g_oTableId.Get_ById(classes[i]);// g_oTableId.Get_ById( Id );
|
||
if (null != Class)
|
||
{
|
||
var Lock = Class.Lock;
|
||
|
||
var OldType = Class.Lock.Get_Type();
|
||
if (locktype_Other2 === OldType || locktype_Other3 === OldType)
|
||
{
|
||
Lock.Set_Type(locktype_Other3, true);
|
||
}
|
||
else
|
||
{
|
||
Lock.Set_Type(locktype_Other, true);
|
||
}
|
||
if (Class instanceof AscCommonSlide.PropLocker)
|
||
{
|
||
var object = g_oTableId.Get_ById(Class.objectId);
|
||
if (object instanceof AscCommonSlide.Slide && Class === object.deleteLock)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.LockSlide(object.num);
|
||
}
|
||
}
|
||
// Выставляем ID пользователя, залочившего данный элемент
|
||
Lock.Set_UserId(e["user"]);
|
||
|
||
if (Class instanceof AscCommonSlide.PropLocker)
|
||
{
|
||
var object = g_oTableId.Get_ById(Class.objectId);
|
||
if (object instanceof AscCommonSlide.CPresentation)
|
||
{
|
||
if (Class === editor.WordControl.m_oLogicDocument.themeLock)
|
||
{
|
||
editor.sendEvent("asc_onLockDocumentTheme");
|
||
}
|
||
else if (Class === editor.WordControl.m_oLogicDocument.schemeLock)
|
||
{
|
||
editor.sendEvent("asc_onLockDocumentSchema");
|
||
}
|
||
else if (Class === editor.WordControl.m_oLogicDocument.slideSizeLock)
|
||
{
|
||
editor.sendEvent("asc_onLockDocumentProps");
|
||
}
|
||
}
|
||
}
|
||
if (Class instanceof AscCommon.CComment)
|
||
{
|
||
editor.sync_LockComment(Class.Get_Id(), e["user"]);
|
||
}
|
||
|
||
// TODO: Здесь для ускорения надо сделать проверку, является ли текущим элемент с
|
||
// заданным Id. Если нет, тогда и не надо обновлять состояние.
|
||
editor.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
}
|
||
else
|
||
{
|
||
if (classes[i].indexOf("new_object") > -1 && block_value["type"] === c_oAscLockTypeElemPresentation.Object)
|
||
{
|
||
var slide_id = block_value["slideId"];
|
||
var delete_lock = g_oTableId.Get_ById(slide_id);
|
||
if (AscCommon.isRealObject(delete_lock))
|
||
{
|
||
var Lock = delete_lock.Lock;
|
||
var OldType = Lock.Get_Type();
|
||
if (locktype_Other2 === OldType || locktype_Other3 === OldType)
|
||
{
|
||
Lock.Set_Type(locktype_Other3, true);
|
||
}
|
||
else
|
||
{
|
||
Lock.Set_Type(locktype_Other, true);
|
||
}
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.LockSlide(g_oTableId.Get_ById(delete_lock.objectId).num);
|
||
}
|
||
else
|
||
{
|
||
AscCommon.CollaborativeEditing.Add_NeedLock(slide_id, e["user"]);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
AscCommon.CollaborativeEditing.Add_NeedLock(classes[i], e["user"]);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onLocksReleased = function(e, bChanges)
|
||
{
|
||
if (t._coAuthoringCheckEndOpenDocument(t.CoAuthoringApi.onLocksReleased, e, bChanges))
|
||
{
|
||
return;
|
||
}
|
||
|
||
var Id;
|
||
var block_value = e["block"];
|
||
var classes = [];
|
||
switch (block_value["type"])
|
||
{
|
||
case c_oAscLockTypeElemPresentation.Object:
|
||
{
|
||
classes.push(block_value["objId"]);
|
||
//classes.push(block_value["slideId"]);
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Slide:
|
||
{
|
||
classes.push(block_value["val"]);
|
||
break;
|
||
}
|
||
case c_oAscLockTypeElemPresentation.Presentation:
|
||
{
|
||
break;
|
||
}
|
||
}
|
||
for (var i = 0; i < classes.length; ++i)
|
||
{
|
||
Id = classes[i];
|
||
var Class = g_oTableId.Get_ById(Id);
|
||
if (null != Class)
|
||
{
|
||
var Lock = Class.Lock;
|
||
|
||
if ("undefined" != typeof(Lock))
|
||
{
|
||
var CurType = Lock.Get_Type();
|
||
|
||
var NewType = locktype_None;
|
||
|
||
if (CurType === locktype_Other)
|
||
{
|
||
if (true != bChanges)
|
||
{
|
||
NewType = locktype_None;
|
||
}
|
||
else
|
||
{
|
||
NewType = locktype_Other2;
|
||
AscCommon.CollaborativeEditing.Add_Unlock(Class);
|
||
}
|
||
}
|
||
else if (CurType === locktype_Mine)
|
||
{
|
||
// Такого быть не должно
|
||
NewType = locktype_Mine;
|
||
}
|
||
else if (CurType === locktype_Other2 || CurType === locktype_Other3)
|
||
{
|
||
NewType = locktype_Other2;
|
||
}
|
||
|
||
Lock.Set_Type(NewType, true);
|
||
if (Class instanceof AscCommonSlide.PropLocker)
|
||
{
|
||
var object = g_oTableId.Get_ById(Class.objectId);
|
||
if (object instanceof AscCommonSlide.Slide && Class === object.deleteLock)
|
||
{
|
||
if (NewType !== locktype_Mine && NewType !== locktype_None)
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.LockSlide(object.num);
|
||
}
|
||
else
|
||
{
|
||
editor.WordControl.m_oLogicDocument.DrawingDocument.UnLockSlide(object.num);
|
||
}
|
||
}
|
||
if (object instanceof AscCommonSlide.CPresentation)
|
||
{
|
||
if (Class === object.themeLock)
|
||
{
|
||
if (NewType !== locktype_Mine && NewType !== locktype_None)
|
||
{
|
||
editor.sendEvent("asc_onLockDocumentTheme");
|
||
}
|
||
else
|
||
{
|
||
editor.sendEvent("asc_onUnLockDocumentTheme");
|
||
}
|
||
}
|
||
if (Class === object.slideSizeLock)
|
||
{
|
||
if (NewType !== locktype_Mine && NewType !== locktype_None)
|
||
{
|
||
editor.sendEvent("asc_onLockDocumentProps");
|
||
}
|
||
else
|
||
{
|
||
editor.sendEvent("asc_onUnLockDocumentProps");
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
}
|
||
else
|
||
{
|
||
AscCommon.CollaborativeEditing.Remove_NeedLock(Id);
|
||
}
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onSaveChanges = function(e, userId, bFirstLoad)
|
||
{
|
||
// bSendEvent = false - это означает, что мы загружаем имеющиеся изменения при открытии
|
||
var Changes = new AscCommon.CCollaborativeChanges();
|
||
Changes.Set_Data(e);
|
||
AscCommon.CollaborativeEditing.Add_Changes(Changes);
|
||
|
||
// т.е. если bSendEvent не задан, то посылаем сообщение + когда загрузился документ
|
||
if (!bFirstLoad && t.bInit_word_control)
|
||
{
|
||
t.sync_CollaborativeChanges();
|
||
}
|
||
};
|
||
this.CoAuthoringApi.onRecalcLocks = function(e)
|
||
{
|
||
if (e && true === AscCommon.CollaborativeEditing.Is_Fast())
|
||
{
|
||
var CursorInfo = JSON.parse(e);
|
||
AscCommon.CollaborativeEditing.Add_ForeignCursorToUpdate(CursorInfo.UserId, CursorInfo.CursorInfo, CursorInfo.UserShortId);
|
||
}
|
||
};
|
||
};
|
||
|
||
asc_docs_api.prototype.startCollaborationEditing = function()
|
||
{
|
||
AscCommon.CollaborativeEditing.Start_CollaborationEditing();
|
||
this.asc_setDrawCollaborationMarks(true);
|
||
if (this.WordControl && this.WordControl.m_oDrawingDocument)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.Start_CollaborationEditing();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.endCollaborationEditing = function()
|
||
{
|
||
AscCommon.CollaborativeEditing.End_CollaborationEditing();
|
||
if (this.WordControl && this.WordControl.m_oLogicDocument &&
|
||
false !== this.WordControl.m_oLogicDocument.DrawingDocument.IsLockObjectsEnable)
|
||
{
|
||
this.WordControl.m_oLogicDocument.DrawingDocument.IsLockObjectsEnable = false;
|
||
this.WordControl.m_oLogicDocument.DrawingDocument.FirePaint();
|
||
}
|
||
};
|
||
|
||
|
||
/////////////////////////////////////////////////////////////////////////
|
||
//////////////////////////SpellChecking api//////////////////////////////
|
||
/////////////////////////////////////////////////////////////////////////
|
||
// Init SpellCheck
|
||
asc_docs_api.prototype._coSpellCheckInit = function()
|
||
{
|
||
if (!this.SpellCheckApi)
|
||
{
|
||
return; // Error
|
||
}
|
||
|
||
var t = this;
|
||
if (window["AscDesktopEditor"]) {
|
||
|
||
window["asc_nativeOnSpellCheck"] = function(response) {
|
||
var _editor = window["Asc"]["editor"] ? window["Asc"]["editor"] : window.editor;
|
||
if (_editor.SpellCheckApi)
|
||
_editor.SpellCheckApi.onSpellCheck(response);
|
||
};
|
||
|
||
this.SpellCheckApi.spellCheck = function (spellData) {
|
||
window["AscDesktopEditor"]["SpellCheck"](spellData);
|
||
};
|
||
this.SpellCheckApi.disconnect = function () {
|
||
};
|
||
if (window["AscDesktopEditor"]["IsLocalFile"] && !window["AscDesktopEditor"]["IsLocalFile"]())
|
||
{
|
||
this.sendEvent('asc_onSpellCheckInit', [
|
||
"1026",
|
||
"1027",
|
||
"1029",
|
||
"1030",
|
||
"1031",
|
||
"1032",
|
||
"1033",
|
||
"1036",
|
||
"1038",
|
||
"1040",
|
||
"1042",
|
||
"1043",
|
||
"1044",
|
||
"1045",
|
||
"1046",
|
||
"1048",
|
||
"1049",
|
||
"1050",
|
||
"1051",
|
||
"1053",
|
||
"1055",
|
||
"1057",
|
||
"1058",
|
||
"1060",
|
||
"1062",
|
||
"1063",
|
||
"1066",
|
||
"1068",
|
||
"1069",
|
||
"1087",
|
||
"1104",
|
||
"1110",
|
||
"1134",
|
||
"2051",
|
||
"2055",
|
||
"2057",
|
||
"2068",
|
||
"2070",
|
||
"3079",
|
||
"3081",
|
||
"3082",
|
||
"4105",
|
||
"7177",
|
||
"9242",
|
||
"10266"
|
||
]);
|
||
}
|
||
} else {
|
||
if (this.SpellCheckUrl && this.isSpellCheckEnable) {
|
||
this.SpellCheckApi.set_url(this.SpellCheckUrl);
|
||
}
|
||
}
|
||
|
||
this.SpellCheckApi.onInit = function (e) {
|
||
t.sendEvent('asc_onSpellCheckInit', e);
|
||
};
|
||
this.SpellCheckApi.onSpellCheck = function (e) {
|
||
t.SpellCheck_CallBack(e);
|
||
};
|
||
this.SpellCheckApi.init(this.documentId);
|
||
};
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// SpellCheck_CallBack
|
||
// Функция ответа от сервера.
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
asc_docs_api.prototype.SpellCheck_CallBack = function(Obj)
|
||
{
|
||
if (undefined != Obj && undefined != Obj["ParagraphId"])
|
||
{
|
||
var ParaId = Obj["ParagraphId"];
|
||
var Paragraph = g_oTableId.Get_ById(ParaId);
|
||
var Type = Obj["type"];
|
||
if (null != Paragraph)
|
||
{
|
||
if ("spell" === Type)
|
||
{
|
||
Paragraph.SpellChecker.Check_CallBack(Obj["RecalcId"], Obj["usrCorrect"]);
|
||
Paragraph.ReDraw();
|
||
}
|
||
else if ("suggest" === Type)
|
||
{
|
||
Paragraph.SpellChecker.Check_CallBack2(Obj["RecalcId"], Obj["ElementId"], Obj["usrSuggest"]);
|
||
this.sync_SpellCheckVariantsFound();
|
||
}
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SpellCheckDisconnect = function()
|
||
{
|
||
if (!this.SpellCheckApi)
|
||
return; // Error
|
||
this.SpellCheckApi.disconnect();
|
||
this.isSpellCheckEnable = false;
|
||
if (this.WordControl.m_oLogicDocument)
|
||
this.WordControl.m_oLogicDocument.TurnOff_CheckSpelling();
|
||
};
|
||
|
||
asc_docs_api.prototype.pre_Save = function(_images)
|
||
{
|
||
this.isSaveFonts_Images = true;
|
||
this.saveImageMap = _images;
|
||
this.WordControl.m_oDrawingDocument.CheckFontNeeds();
|
||
this.FontLoader.LoadDocumentFonts2(this.WordControl.m_oLogicDocument.Fonts);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_GetRevisionsChangesStack = function()
|
||
{
|
||
return [];
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SetFastCollaborative = function(isOn)
|
||
{
|
||
if (AscCommon.CollaborativeEditing)
|
||
AscCommon.CollaborativeEditing.Set_Fast(isOn);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_CollaborativeChanges = function()
|
||
{
|
||
if (true !== AscCommon.CollaborativeEditing.Is_Fast())
|
||
this.sendEvent("asc_onCollaborativeChanges");
|
||
};
|
||
|
||
asc_docs_api.prototype.asyncServerIdEndLoaded = function()
|
||
{
|
||
this.ServerIdWaitComplete = true;
|
||
this.OpenDocumentEndCallback();
|
||
};
|
||
|
||
// Эвент о пришедщих изменениях
|
||
asc_docs_api.prototype.syncCollaborativeChanges = function()
|
||
{
|
||
this.sendEvent("asc_onCollaborativeChanges");
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.SetCollaborativeMarksShowType = function(Type)
|
||
{
|
||
this.CollaborativeMarksShowType = Type;
|
||
};
|
||
|
||
asc_docs_api.prototype.GetCollaborativeMarksShowType = function(Type)
|
||
{
|
||
return this.CollaborativeMarksShowType;
|
||
};
|
||
|
||
asc_docs_api.prototype.Clear_CollaborativeMarks = function()
|
||
{
|
||
AscCommon.CollaborativeEditing.Clear_CollaborativeMarks(true);
|
||
};
|
||
|
||
asc_docs_api.prototype._onUpdateDocumentCanSave = function()
|
||
{
|
||
var CollEditing = AscCommon.CollaborativeEditing;
|
||
|
||
// Можно модифицировать это условие на более быстрое (менять самим состояние в аргументах, а не запрашивать каждый раз)
|
||
var isCanSave = this.isDocumentModified() || (true !== CollEditing.Is_SingleUser() && 0 !== CollEditing.getOwnLocksLength());
|
||
|
||
if (true === CollEditing.Is_Fast() && true !== CollEditing.Is_SingleUser())
|
||
isCanSave = false;
|
||
|
||
if (isCanSave !== this.isDocumentCanSave)
|
||
{
|
||
this.isDocumentCanSave = isCanSave;
|
||
this.sendEvent('asc_onDocumentCanSaveChanged', this.isDocumentCanSave);
|
||
}
|
||
};
|
||
asc_docs_api.prototype._onUpdateDocumentCanUndoRedo = function ()
|
||
{
|
||
if (this.WordControl && this.WordControl.m_oLogicDocument)
|
||
this.WordControl.m_oLogicDocument.Document_UpdateUndoRedoState();
|
||
};
|
||
|
||
///////////////////////////////////////////
|
||
asc_docs_api.prototype.CheckChangedDocument = function()
|
||
{
|
||
if (true === History.Have_Changes())
|
||
{
|
||
// дублирование евента. когда будет undo-redo - тогда
|
||
// эти евенты начнут отличаться
|
||
this.SetDocumentModified(true);
|
||
}
|
||
else
|
||
{
|
||
this.SetDocumentModified(false);
|
||
}
|
||
|
||
this._onUpdateDocumentCanSave();
|
||
};
|
||
asc_docs_api.prototype.SetUnchangedDocument = function()
|
||
{
|
||
this.SetDocumentModified(false);
|
||
this._onUpdateDocumentCanSave();
|
||
};
|
||
|
||
asc_docs_api.prototype.SetDocumentModified = function(bValue)
|
||
{
|
||
this.isDocumentModify = bValue;
|
||
this.sendEvent("asc_onDocumentModifiedChanged");
|
||
|
||
if (undefined !== window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["onDocumentModifiedChanged"](bValue);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.isDocumentModified = function()
|
||
{
|
||
if (!this.canSave)
|
||
{
|
||
// Пока идет сохранение, мы не закрываем документ
|
||
return true;
|
||
}
|
||
return this.isDocumentModify;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_getCurrentFocusObject = function()
|
||
{
|
||
if (!this.WordControl || !this.WordControl.Thumbnails)
|
||
return 1;
|
||
return this.WordControl.Thumbnails.FocusObjType;
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_BeginCatchSelectedElements = function()
|
||
{
|
||
if (0 != this.SelectedObjectsStack.length)
|
||
this.SelectedObjectsStack.splice(0, this.SelectedObjectsStack.length);
|
||
};
|
||
asc_docs_api.prototype.sync_EndCatchSelectedElements = function()
|
||
{
|
||
this.sendEvent("asc_onFocusObject", this.SelectedObjectsStack);
|
||
};
|
||
asc_docs_api.prototype.getSelectedElements = function(bUpdate)
|
||
{
|
||
if (true === bUpdate){
|
||
if(this.WordControl && this.WordControl.m_oLogicDocument){
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
}
|
||
}
|
||
|
||
return this.SelectedObjectsStack;
|
||
};
|
||
asc_docs_api.prototype.sync_ChangeLastSelectedElement = function(type, obj)
|
||
{
|
||
var oUnkTypeObj = null;
|
||
|
||
switch (type)
|
||
{
|
||
case c_oAscTypeSelectElement.Paragraph:
|
||
oUnkTypeObj = new Asc.asc_CParagraphProperty(obj);
|
||
break;
|
||
case c_oAscTypeSelectElement.Image:
|
||
oUnkTypeObj = new Asc.asc_CImgProperty(obj);
|
||
break;
|
||
case c_oAscTypeSelectElement.Table:
|
||
oUnkTypeObj = new Asc.CTableProp(obj);
|
||
break;
|
||
case c_oAscTypeSelectElement.Shape:
|
||
oUnkTypeObj = obj;
|
||
break;
|
||
}
|
||
|
||
var _i = this.SelectedObjectsStack.length - 1;
|
||
var bIsFound = false;
|
||
while (_i >= 0)
|
||
{
|
||
if (this.SelectedObjectsStack[_i].Type == type)
|
||
{
|
||
|
||
this.SelectedObjectsStack[_i].Value = oUnkTypeObj;
|
||
bIsFound = true;
|
||
break;
|
||
}
|
||
_i--;
|
||
}
|
||
|
||
if (!bIsFound)
|
||
{
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(type, oUnkTypeObj);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.Init = function()
|
||
{
|
||
this.WordControl.Init();
|
||
};
|
||
asc_docs_api.prototype.asc_setLocale = function(val)
|
||
{
|
||
this.locale = val;
|
||
};
|
||
|
||
asc_docs_api.prototype.SetThemesPath = function(path)
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpThemesPath = path;
|
||
return;
|
||
}
|
||
|
||
this.ThemeLoader.ThemesUrl = path;
|
||
if (this.documentOrigin)
|
||
{
|
||
this.ThemeLoader.ThemesUrlAbs = AscCommon.joinUrls(this.documentOrigin + this.documentPathname, path);
|
||
}
|
||
else
|
||
{
|
||
this.ThemeLoader.ThemesUrlAbs = path;
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.CreateCSS = function()
|
||
{
|
||
if (window["flat_desine"] === true)
|
||
{
|
||
AscCommonSlide.updateGlobalSkin(AscCommonSlide.GlobalSkinFlat2);
|
||
}
|
||
|
||
var _head = document.getElementsByTagName('head')[0];
|
||
|
||
var style0 = document.createElement('style');
|
||
style0.type = 'text/css';
|
||
style0.innerHTML = ".block_elem { position:absolute;padding:0;margin:0; }";
|
||
_head.appendChild(style0);
|
||
|
||
var style1 = document.createElement('style');
|
||
style1.type = 'text/css';
|
||
style1.innerHTML = ".buttonTabs {\
|
||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAA5CAMAAADjueCuAAAABGdBTUEAALGPC/xhBQAAAEhQTFRFAAAAWFhYZWVlSEhIY2NjV1dXQ0NDYWFhYmJiTk5OVlZWYGBgVFRUS0tLbGxsRERETExMZmZmVVVVXl5eR0dHa2trPj4+u77CpAZQrwAAAAF0Uk5TAEDm2GYAAABwSURBVDjL1dHHDoAgEEVR7NLr4P//qQm6EMaFxtje8oTF5ELIpU35Fstf3GegsPEBG+uwSYpNB1qNKreoDeNw/r6dLr/tnFpbbNZj8wKbk8W/1d6ZPjfrhdHx9c4fbA9wzMYWm3OFhbQmbC2ue6z9DCH/Exf/mU3YAAAAAElFTkSuQmCC);\
|
||
background-position: 0px 0px;\
|
||
background-repeat: no-repeat;\
|
||
}";
|
||
_head.appendChild(style1);
|
||
|
||
var style3 = document.createElement('style');
|
||
style3.type = 'text/css';
|
||
style3.innerHTML = ".buttonPrevPage {\
|
||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAABgBAMAAADm/++TAAAABGdBTUEAALGPC/xhBQAAABJQTFRFAAAA////UVNVu77Cenp62Nrc3x8hMQAAAAF0Uk5TAEDm2GYAAABySURBVCjPY2AgETDBGEoKUAElJcJSxANjKGAwDQWDYAKMIBhDSRXCCFJSIixF0GS4M+AMExcwcCbAcIQxBEUgDEdBQcJSBE2GO4PU6IJHASxS4NGER4p28YWIAlikwKMJjxTt4gsRBbBIgUcTHini4wsAwMmIvYZODL0AAAAASUVORK5CYII=);\
|
||
background-position: 0px 0px;\
|
||
background-repeat: no-repeat;\
|
||
}";
|
||
_head.appendChild(style3);
|
||
|
||
var style4 = document.createElement('style');
|
||
style4.type = 'text/css';
|
||
style4.innerHTML = ".buttonNextPage {\
|
||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAABgBAMAAADm/++TAAAABGdBTUEAALGPC/xhBQAAABJQTFRFAAAA////UVNVu77Cenp62Nrc3x8hMQAAAAF0Uk5TAEDm2GYAAABySURBVCjPY2AgETDBGEoKUAElJcJSxANjKGAwDQWDYAKMIBhDSRXCCFJSIixF0GS4M+AMExcwcCbAcIQxBEUgDEdBQcJSBE2GO4PU6IJHASxS4NGER4p28YWIAlikwKMJjxTt4gsRBbBIgUcTHini4wsAwMmIvYZODL0AAAAASUVORK5CYII=);\
|
||
background-position: 0px -48px;\
|
||
background-repeat: no-repeat;\
|
||
}";
|
||
_head.appendChild(style4);
|
||
};
|
||
|
||
asc_docs_api.prototype.CreateComponents = function()
|
||
{
|
||
this.CreateCSS();
|
||
|
||
var _innerHTML = "<div id=\"id_panel_thumbnails\" class=\"block_elem\" style=\"background-color:" + AscCommonSlide.GlobalSkin.BackgroundColorThumbnails + ";\">\
|
||
<div id=\"id_panel_thumbnails_split\" class=\"block_elem\" style=\"pointer-events:none;background-color:" + AscCommonSlide.GlobalSkin.BackgroundColorThumbnails + ";\"></div>\
|
||
<canvas id=\"id_thumbnails_background\" class=\"block_elem\" style=\"-ms-touch-action: none;-webkit-user-select: none;z-index:1\"></canvas>\
|
||
<canvas id=\"id_thumbnails\" class=\"block_elem\" style=\"-ms-touch-action: none;-webkit-user-select: none;z-index:2\"></canvas>\
|
||
<div id=\"id_vertical_scroll_thmbnl\" style=\"left:0;top:0;width:1px;overflow:hidden;position:absolute;\">\
|
||
<div id=\"panel_right_scroll_thmbnl\" class=\"block_elem\" style=\"left:0;top:0;width:1px;height:6000px;\"></div>\
|
||
</div>\
|
||
</div>\
|
||
<div id=\"id_main_parent\" class=\"block_elem\" style=\"-ms-touch-action: none;-moz-user-select:none;-khtml-user-select:none;user-select:none;overflow:hidden;border-left-width: 1px;border-left-color:" + AscCommonSlide.GlobalSkin.BorderSplitterColor + "; border-left-style: solid;\" UNSELECTABLE=\"on\">\
|
||
<div id=\"id_main\" class=\"block_elem\" style=\"z-index:5;-ms-touch-action: none;-moz-user-select:none;-khtml-user-select:none;user-select:none;background-color:" + AscCommonSlide.GlobalSkin.BackgroundColor + ";overflow:hidden;\" UNSELECTABLE=\"on\">\
|
||
<div id=\"id_panel_left\" class=\"block_elem\">\
|
||
<canvas id=\"id_buttonTabs\" class=\"block_elem\"></canvas>\
|
||
<canvas id=\"id_vert_ruler\" class=\"block_elem\"></canvas>\
|
||
</div>\
|
||
<div id=\"id_panel_top\" class=\"block_elem\">\
|
||
<canvas id=\"id_hor_ruler\" class=\"block_elem\"></canvas>\
|
||
</div>\
|
||
<div id=\"id_main_view\" class=\"block_elem\" style=\"overflow:hidden\">\
|
||
<canvas id=\"id_viewer\" class=\"block_elem\" style=\"-ms-touch-action: none;-webkit-user-select: none;background-color:#B0B0B0;z-index:6\"></canvas>\
|
||
<canvas id=\"id_viewer_overlay\" class=\"block_elem\" style=\"-ms-touch-action: none;-webkit-user-select: none;z-index:7\"></canvas>\
|
||
<canvas id=\"id_target_cursor\" class=\"block_elem\" width=\"1\" height=\"1\" style=\"-ms-touch-action: none;-webkit-user-select: none;width:2px;height:13px;display:none;z-index:9;\"></canvas>\
|
||
</div>\
|
||
<div id=\"id_panel_right\" class=\"block_elem\" style=\"margin-right:1px;background-color:" + AscCommonSlide.GlobalSkin.BackgroundColor + ";z-index:0;\">\
|
||
<div id=\"id_buttonRulers\" class=\"block_elem buttonRuler\"></div>\
|
||
<div id=\"id_vertical_scroll\" style=\"left:0;top:0;width:14px;overflow:hidden;position:absolute;\">\
|
||
<div id=\"panel_right_scroll\" class=\"block_elem\" style=\"left:0;top:0;width:1px;height:6000px;\"></div>\
|
||
</div>\
|
||
<div id=\"id_buttonPrevPage\" class=\"block_elem buttonPrevPage\"></div>\
|
||
<div id=\"id_buttonNextPage\" class=\"block_elem buttonNextPage\"></div>\
|
||
</div>\
|
||
<div id=\"id_horscrollpanel\" class=\"block_elem\" style=\"margin-bottom:1px;background-color:#F1F1F1;\">\
|
||
<div id=\"id_horizontal_scroll\" style=\"left:0;top:0;height:14px;overflow:hidden;position:absolute;width:100%;\">\
|
||
<div id=\"panel_hor_scroll\" class=\"block_elem\" style=\"left:0;top:0;width:6000px;height:1px;\"></div>\
|
||
</div>\
|
||
</div>\
|
||
</div>";
|
||
|
||
if (true)
|
||
{
|
||
_innerHTML += "<div id=\"id_panel_notes\" class=\"block_elem\" style=\"-ms-touch-action: none;-moz-user-select:none;-khtml-user-select:none;user-select:none;overflow:hidden;background-color:#FFFFFF;\">\
|
||
<canvas id=\"id_notes\" class=\"block_elem\" style=\"-ms-touch-action: none;-webkit-user-select: none;background-color:#FFFFFF;z-index:6\"></canvas>\
|
||
<canvas id=\"id_notes_overlay\" class=\"block_elem\" style=\"-ms-touch-action: none;-webkit-user-select: none;z-index:7\"></canvas>\
|
||
<div id=\"id_vertical_scroll_notes\" style=\"left:0;top:0;width:16px;overflow:hidden;position:absolute;\">\
|
||
<div id=\"panel_right_scroll_notes\" class=\"block_elem\" style=\"left:0;top:0;width:1px;height:1px;\"></div>\
|
||
</div>\
|
||
</div>\
|
||
</div>";
|
||
}
|
||
|
||
if (this.HtmlElement != null)
|
||
{
|
||
this.HtmlElement.style.backgroundColor = AscCommonSlide.GlobalSkin.BackgroundColor;
|
||
this.HtmlElement.innerHTML = _innerHTML;
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.InitEditor = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument = new AscCommonSlide.CPresentation(this.WordControl.m_oDrawingDocument);
|
||
this.WordControl.m_oDrawingDocument.m_oLogicDocument = this.WordControl.m_oLogicDocument;
|
||
|
||
if (this.WordControl.MobileTouchManager)
|
||
this.WordControl.MobileTouchManager.delegate.LogicDocument = this.WordControl.m_oLogicDocument;
|
||
};
|
||
|
||
asc_docs_api.prototype.SetInterfaceDrawImagePlaceSlide = function(div_id)
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpSlideDiv = div_id;
|
||
return;
|
||
}
|
||
this.WordControl.m_oDrawingDocument.InitGuiCanvasSlide(div_id);
|
||
};
|
||
|
||
asc_docs_api.prototype.SetInterfaceDrawImagePlaceTextArt = function(div_id)
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpTextArtDiv = div_id;
|
||
return;
|
||
}
|
||
this.WordControl.m_oDrawingDocument.InitGuiCanvasTextArt(div_id);
|
||
};
|
||
|
||
asc_docs_api.prototype.OpenDocument2 = function(url, gObject)
|
||
{
|
||
this.InitEditor();
|
||
this.DocumentType = 2;
|
||
|
||
var _loader = new AscCommon.BinaryPPTYLoader();
|
||
|
||
_loader.Api = this;
|
||
g_oIdCounter.Set_Load(true);
|
||
AscFonts.IsCheckSymbols = true;
|
||
_loader.Load(gObject, this.WordControl.m_oLogicDocument);
|
||
this.WordControl.m_oLogicDocument.Set_FastCollaborativeEditing(true);
|
||
|
||
if (History && History.Update_FileDescription)
|
||
History.Update_FileDescription(_loader.stream);
|
||
|
||
this.LoadedObject = 1;
|
||
g_oIdCounter.Set_Load(false);
|
||
_loader.Check_TextFit();
|
||
AscFonts.IsCheckSymbols = false;
|
||
|
||
this.WordControl.m_oDrawingDocument.CheckFontNeeds();
|
||
this.FontLoader.LoadDocumentFonts(this.WordControl.m_oLogicDocument.Fonts, false);
|
||
|
||
g_oIdCounter.Set_Load(false);
|
||
|
||
if (this.isMobileVersion)
|
||
{
|
||
AscCommon.AscBrowser.isSafariMacOs = false;
|
||
PasteElementsId.PASTE_ELEMENT_ID = "wrd_pastebin";
|
||
PasteElementsId.ELEMENT_DISPAY_STYLE = "none";
|
||
}
|
||
|
||
if (AscCommon.AscBrowser.isSafariMacOs)
|
||
setInterval(AscCommon.SafariIntervalFocus, 10);
|
||
};
|
||
|
||
asc_docs_api.prototype._OfflineAppDocumentEndLoad = function()
|
||
{
|
||
if (undefined == window["editor_bin"])
|
||
return;
|
||
|
||
this.OpenDocument2(this.documentUrl, window["editor_bin"]);
|
||
//callback
|
||
this.DocumentOrientation = (null == this.WordControl.m_oLogicDocument) ? true : !this.WordControl.m_oLogicDocument.Orientation;
|
||
};
|
||
// Callbacks
|
||
/* все имена callback'оф начинаются с On. Пока сделаны:
|
||
OnBold,
|
||
OnItalic,
|
||
OnUnderline,
|
||
OnTextPrBaseline(возвращается расположение строки - supstring, superstring, baseline),
|
||
OnPrAlign(выравнивание по ширине, правому краю, левому краю, по центру),
|
||
OnListType( возвращается AscCommon.asc_CListType )
|
||
|
||
фейк-функции ожидающие TODO:
|
||
Print,Undo,Redo,Copy,Cut,Paste,Share,Save,Download & callbacks
|
||
OnFontName, OnFontSize, OnLineSpacing
|
||
|
||
OnFocusObject( возвращается массив asc_CSelectedObject )
|
||
OnInitEditorStyles( возвращается CStylesPainter )
|
||
OnSearchFound( возвращается CSearchResult );
|
||
OnParaSpacingLine( возвращается AscCommon.asc_CParagraphSpacing )
|
||
OnLineSpacing( не используется? )
|
||
OnTextColor( возвращается AscCommon.CColor )
|
||
OnTextHighLight( возвращается AscCommon.CColor )
|
||
OnInitEditorFonts( возвращается массив объектов СFont )
|
||
OnFontFamily( возвращается asc_CTextFontFamily )
|
||
*/
|
||
var _callbacks = {};
|
||
|
||
asc_docs_api.prototype.asc_registerCallback = function(name, callback)
|
||
{
|
||
if (!_callbacks.hasOwnProperty(name))
|
||
_callbacks[name] = [];
|
||
_callbacks[name].push(callback);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_unregisterCallback = function(name, callback)
|
||
{
|
||
if (_callbacks.hasOwnProperty(name))
|
||
{
|
||
for (var i = _callbacks[name].length - 1; i >= 0; --i)
|
||
{
|
||
if (_callbacks[name][i] == callback)
|
||
_callbacks[name].splice(i, 1);
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_checkNeedCallback = function(name)
|
||
{
|
||
if (_callbacks.hasOwnProperty(name))
|
||
{
|
||
return true;
|
||
}
|
||
return false;
|
||
};
|
||
|
||
// get functions
|
||
asc_docs_api.prototype.get_TextProps = function()
|
||
{
|
||
var Doc = this.WordControl.m_oLogicDocument;
|
||
var ParaPr = Doc.GetCalculatedParaPr();
|
||
var TextPr = Doc.GetCalculatedTextPr();
|
||
|
||
// return { ParaPr: ParaPr, TextPr : TextPr };
|
||
return new Asc.CParagraphAndTextProp(ParaPr, TextPr); // uncomment if this method will be used externally. 20/03/2012 uncommented for testers
|
||
};
|
||
|
||
// -------
|
||
// тут методы, замены евентов
|
||
asc_docs_api.prototype.get_PropertyEditorThemes = function()
|
||
{
|
||
var ret = [this._gui_editor_themes, this._gui_document_themes];
|
||
return ret;
|
||
};
|
||
|
||
// -------
|
||
|
||
asc_docs_api.prototype.UpdateTextPr = function(TextPr)
|
||
{
|
||
if ("undefined" != typeof(TextPr))
|
||
{
|
||
if (TextPr.Color !== undefined)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.TargetCursorColor.R = TextPr.Color.r;
|
||
this.WordControl.m_oDrawingDocument.TargetCursorColor.G = TextPr.Color.g;
|
||
this.WordControl.m_oDrawingDocument.TargetCursorColor.B = TextPr.Color.b;
|
||
}
|
||
if (TextPr.Bold === undefined)
|
||
TextPr.Bold = false;
|
||
if (TextPr.Italic === undefined)
|
||
TextPr.Italic = false;
|
||
if (TextPr.Underline === undefined)
|
||
TextPr.Underline = false;
|
||
if (TextPr.Strikeout === undefined)
|
||
TextPr.Strikeout = false;
|
||
if (TextPr.FontFamily === undefined)
|
||
TextPr.FontFamily = {Index : 0, Name : ""};
|
||
if (TextPr.FontSize === undefined)
|
||
TextPr.FontSize = "";
|
||
|
||
this.sync_BoldCallBack(TextPr.Bold);
|
||
this.sync_ItalicCallBack(TextPr.Italic);
|
||
this.sync_UnderlineCallBack(TextPr.Underline);
|
||
this.sync_StrikeoutCallBack(TextPr.Strikeout);
|
||
this.sync_TextPrFontSizeCallBack(TextPr.FontSize);
|
||
this.sync_TextPrFontFamilyCallBack(TextPr.FontFamily);
|
||
|
||
if (TextPr.VertAlign !== undefined)
|
||
this.sync_VerticalAlign(TextPr.VertAlign);
|
||
if (TextPr.Spacing !== undefined)
|
||
this.sync_TextSpacing(TextPr.Spacing);
|
||
if (TextPr.DStrikeout !== undefined)
|
||
this.sync_TextDStrikeout(TextPr.DStrikeout);
|
||
if (TextPr.Caps !== undefined)
|
||
this.sync_TextCaps(TextPr.Caps);
|
||
if (TextPr.SmallCaps !== undefined)
|
||
this.sync_TextSmallCaps(TextPr.SmallCaps);
|
||
if (TextPr.Position !== undefined)
|
||
this.sync_TextPosition(TextPr.Position);
|
||
if (TextPr.Lang !== undefined)
|
||
this.sync_TextLangCallBack(TextPr.Lang);
|
||
|
||
if (TextPr.Unifill !== undefined)
|
||
{
|
||
this.sync_TextColor2(TextPr.Unifill);
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_TextSpacing = function(Spacing)
|
||
{
|
||
this.sendEvent("asc_onTextSpacing", Spacing);
|
||
};
|
||
asc_docs_api.prototype.sync_TextDStrikeout = function(Value)
|
||
{
|
||
this.sendEvent("asc_onTextDStrikeout", Value);
|
||
};
|
||
asc_docs_api.prototype.sync_TextCaps = function(Value)
|
||
{
|
||
this.sendEvent("asc_onTextCaps", Value);
|
||
};
|
||
asc_docs_api.prototype.sync_TextSmallCaps = function(Value)
|
||
{
|
||
this.sendEvent("asc_onTextSmallCaps", Value);
|
||
};
|
||
asc_docs_api.prototype.sync_TextPosition = function(Value)
|
||
{
|
||
this.sendEvent("asc_onTextPosition", Value);
|
||
};
|
||
asc_docs_api.prototype.sync_TextLangCallBack = function(Lang)
|
||
{
|
||
this.sendEvent("asc_onTextLanguage", Lang.Val);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_VerticalTextAlign = function(align)
|
||
{
|
||
this.sendEvent("asc_onVerticalTextAlign", align);
|
||
};
|
||
asc_docs_api.prototype.sync_Vert = function(vert)
|
||
{
|
||
this.sendEvent("asc_onVert", vert);
|
||
};
|
||
|
||
asc_docs_api.prototype.UpdateParagraphProp = function(ParaPr, bParaPr)
|
||
{
|
||
|
||
ParaPr.StyleName = "";
|
||
var TextPr = editor.WordControl.m_oLogicDocument.GetCalculatedTextPr();
|
||
var oDrawingProps = editor.WordControl.m_oLogicDocument.Get_GraphicObjectsProps();
|
||
if (oDrawingProps.shapeProps && oDrawingProps.shapeProps.locked
|
||
|| oDrawingProps.chartProps && oDrawingProps.chartProps.locked
|
||
|| oDrawingProps.tableProps && oDrawingProps.tableProps.Locked)
|
||
{
|
||
ParaPr.Locked = true;
|
||
}
|
||
ParaPr.Subscript = ( TextPr.VertAlign === AscCommon.vertalign_SubScript ? true : false );
|
||
ParaPr.Superscript = ( TextPr.VertAlign === AscCommon.vertalign_SuperScript ? true : false );
|
||
ParaPr.Strikeout = TextPr.Strikeout;
|
||
ParaPr.DStrikeout = TextPr.DStrikeout;
|
||
ParaPr.AllCaps = TextPr.Caps;
|
||
ParaPr.SmallCaps = TextPr.SmallCaps;
|
||
ParaPr.TextSpacing = TextPr.Spacing;
|
||
ParaPr.Position = TextPr.Position;
|
||
ParaPr.ListType = AscFormat.fGetListTypeFromBullet(ParaPr.Bullet);
|
||
this.sync_ParaSpacingLine(ParaPr.Spacing);
|
||
this.Update_ParaInd(ParaPr.Ind);
|
||
this.sync_PrAlignCallBack(ParaPr.Jc);
|
||
this.sync_ParaStyleName(ParaPr.StyleName);
|
||
this.sync_ListType(ParaPr.ListType);
|
||
if (!(bParaPr === true))
|
||
this.sync_PrPropCallback(ParaPr);
|
||
};
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with clipboard, document*/
|
||
/*TODO: Print,Undo,Redo,Copy,Cut,Paste,Share,Save,DownloadAs,ReturnToDocuments(вернуться на предыдущую страницу) & callbacks for these functions*/
|
||
asc_docs_api.prototype.asc_Print = function(bIsDownloadEvent)
|
||
{
|
||
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["Print"]();
|
||
return;
|
||
}
|
||
var options = {downloadType : bIsDownloadEvent ? DownloadType.Print : DownloadType.None};
|
||
this._downloadAs(c_oAscFileType.PDF, c_oAscAsyncAction.Print, options);
|
||
};
|
||
asc_docs_api.prototype.Undo = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.Document_Undo();
|
||
};
|
||
asc_docs_api.prototype.Redo = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.Document_Redo();
|
||
};
|
||
asc_docs_api.prototype.Copy = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["asc_desktop_copypaste"](this, "Copy");
|
||
return true;
|
||
}
|
||
return AscCommon.g_clipboardBase.Button_Copy();
|
||
};
|
||
asc_docs_api.prototype.Update_ParaTab = function(Default_Tab, ParaTabs)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.Update_ParaTab(Default_Tab, ParaTabs);
|
||
};
|
||
asc_docs_api.prototype.Cut = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["asc_desktop_copypaste"](this, "Cut");
|
||
return true;
|
||
}
|
||
return AscCommon.g_clipboardBase.Button_Cut();
|
||
};
|
||
asc_docs_api.prototype.Paste = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["asc_desktop_copypaste"](this, "Paste");
|
||
return true;
|
||
}
|
||
|
||
if (!this.WordControl.m_oLogicDocument)
|
||
return false;
|
||
|
||
if (AscCommon.g_clipboardBase.IsWorking())
|
||
return false;
|
||
|
||
return AscCommon.g_clipboardBase.Button_Paste();
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_ShowSpecialPasteButton = function(props)
|
||
{
|
||
var presentation = editor.WordControl.m_oLogicDocument;
|
||
var drawingDocument = presentation.DrawingDocument;
|
||
var notesFocus = presentation.IsFocusOnNotes();
|
||
|
||
var htmlElement = this.WordControl.m_oEditor.HtmlElement;
|
||
var fixPos = props.fixPosition;
|
||
var curCoord = props.asc_getCellCoord();
|
||
var startShapePos;
|
||
|
||
var specialPasteElemHeight = 22;
|
||
var specialPasteElemWidth = 33;
|
||
if(fixPos && fixPos.h && fixPos.w)
|
||
{
|
||
startShapePos = drawingDocument.ConvertCoordsToCursorWR(fixPos.x - fixPos.w, fixPos.y - fixPos.h, fixPos.pageNum);
|
||
}
|
||
|
||
if(!notesFocus && curCoord._y > htmlElement.height - specialPasteElemHeight)
|
||
{
|
||
if(startShapePos && startShapePos.Y < htmlElement.height - specialPasteElemHeight)
|
||
{
|
||
curCoord._y = htmlElement.height - specialPasteElemHeight;
|
||
}
|
||
else
|
||
{
|
||
curCoord = new AscCommon.asc_CRect( -1, -1, 0, 0 );
|
||
}
|
||
}
|
||
|
||
var thumbnailsLeft = this.WordControl.m_oMainParent.AbsolutePosition.L* AscCommon.g_dKoef_mm_to_pix;
|
||
if(!notesFocus && curCoord._x > htmlElement.width + thumbnailsLeft - specialPasteElemWidth)
|
||
{
|
||
if(startShapePos && startShapePos.X < htmlElement.width + thumbnailsLeft - specialPasteElemWidth)
|
||
{
|
||
curCoord._x = htmlElement.width - specialPasteElemWidth + thumbnailsLeft;
|
||
}
|
||
else
|
||
{
|
||
curCoord = new AscCommon.asc_CRect( -1, -1, 0, 0 );
|
||
}
|
||
}
|
||
|
||
if(curCoord)
|
||
{
|
||
props.asc_setCellCoord(curCoord);
|
||
}
|
||
|
||
this.sendEvent("asc_onShowSpecialPasteOptions", props);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_HideSpecialPasteButton = function()
|
||
{
|
||
this.sendEvent("asc_onHideSpecialPasteOptions");
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_UpdateSpecialPasteButton = function()
|
||
{
|
||
var props = AscCommon.g_specialPasteHelper.buttonInfo;
|
||
var presentation = editor.WordControl.m_oLogicDocument;
|
||
var drawingDocument = presentation.DrawingDocument;
|
||
var _coord, curCoord;
|
||
|
||
var fixPos = props.fixPosition;
|
||
var notesFocus = presentation.IsFocusOnNotes();
|
||
if(props.shapeId)//при переходе между шейпами, скрываем значок спец.вставки
|
||
{
|
||
var targetDocContent = presentation ? presentation.Get_TargetDocContent() : null;
|
||
if(targetDocContent && targetDocContent.Id === props.shapeId)
|
||
{
|
||
if(fixPos)
|
||
{
|
||
_coord = drawingDocument.ConvertCoordsToCursorWR(fixPos.x, fixPos.y, fixPos.pageNum);
|
||
curCoord = new AscCommon.asc_CRect( _coord.X, _coord.Y, 0, 0 );
|
||
}
|
||
}
|
||
else
|
||
{
|
||
curCoord = new AscCommon.asc_CRect( -1, -1, 0, 0 );
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if(true === notesFocus)
|
||
{
|
||
curCoord = new AscCommon.asc_CRect( -1, -1, 0, 0 );
|
||
}
|
||
else if(fixPos && fixPos.pageNum === presentation.CurPage)
|
||
{
|
||
_coord = drawingDocument.ConvertCoordsToCursorWR(fixPos.x, fixPos.y, fixPos.pageNum);
|
||
curCoord = new AscCommon.asc_CRect( _coord.X, _coord.Y, 0, 0 );
|
||
}
|
||
else
|
||
{
|
||
curCoord = new AscCommon.asc_CRect( -1, -1, 0, 0 );
|
||
}
|
||
}
|
||
|
||
if(curCoord)
|
||
{
|
||
props.asc_setCellCoord(curCoord);
|
||
}
|
||
|
||
this.asc_ShowSpecialPasteButton(props);
|
||
};
|
||
|
||
asc_docs_api.prototype.Share = function()
|
||
{
|
||
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_CheckCopy = function(_clipboard /* CClipboardData */, _formats)
|
||
{
|
||
if (!this.WordControl.m_oLogicDocument)
|
||
{
|
||
var _text_object = (AscCommon.c_oAscClipboardDataFormat.Text & _formats) ? {Text : ""} : null;
|
||
var _html_data = this.WordControl.m_oDrawingDocument.m_oDocumentRenderer.Copy(_text_object);
|
||
|
||
//TEXT
|
||
if (AscCommon.c_oAscClipboardDataFormat.Text & _formats)
|
||
{
|
||
_clipboard.pushData(AscCommon.c_oAscClipboardDataFormat.Text, _text_object.Text);
|
||
}
|
||
//HTML
|
||
if (AscCommon.c_oAscClipboardDataFormat.Html & _formats)
|
||
{
|
||
_clipboard.pushData(AscCommon.c_oAscClipboardDataFormat.Html, _html_data);
|
||
}
|
||
return;
|
||
}
|
||
|
||
var sBase64 = null, _data;
|
||
|
||
//TEXT
|
||
if (AscCommon.c_oAscClipboardDataFormat.Text & _formats)
|
||
{
|
||
_data = this.WordControl.m_oLogicDocument.GetSelectedText(false, {NewLineParagraph : true, NewLine : true});
|
||
_clipboard.pushData(AscCommon.c_oAscClipboardDataFormat.Text, _data)
|
||
}
|
||
//HTML
|
||
if (AscCommon.c_oAscClipboardDataFormat.Html & _formats)
|
||
{
|
||
var oCopyProcessor = new AscCommon.CopyProcessor(this);
|
||
sBase64 = oCopyProcessor.Start();
|
||
_data = oCopyProcessor.getInnerHtml();
|
||
|
||
_clipboard.pushData(AscCommon.c_oAscClipboardDataFormat.Html, _data)
|
||
}
|
||
//INTERNAL
|
||
if (AscCommon.c_oAscClipboardDataFormat.Internal & _formats)
|
||
{
|
||
if (sBase64 === null)
|
||
{
|
||
var oCopyProcessor = new AscCommon.CopyProcessor(this);
|
||
sBase64 = oCopyProcessor.Start();
|
||
}
|
||
|
||
_data = sBase64;
|
||
_clipboard.pushData(AscCommon.c_oAscClipboardDataFormat.Internal, _data)
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_PasteData = function(_format, data1, data2, text_data)
|
||
{
|
||
if (!this.canEdit())
|
||
return;
|
||
|
||
//slide show
|
||
if(this.WordControl && this.WordControl.DemonstrationManager && this.WordControl.DemonstrationManager.Mode) {
|
||
return;
|
||
}
|
||
|
||
if (false === this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_Paragraph_Content, null, false)) {
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Document_PasteHotKey);
|
||
|
||
window['AscCommon'].g_specialPasteHelper.Paste_Process_Start(arguments[5]);
|
||
AscCommon.Editor_Paste_Exec(this, _format, data1, data2, text_data);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SpecialPaste = function(props)
|
||
{
|
||
return AscCommon.g_specialPasteHelper.Special_Paste(props);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SpecialPasteData = function(props)
|
||
{
|
||
if (AscCommon.CollaborativeEditing.Get_GlobalLock())
|
||
return;
|
||
|
||
var _logicDoc = this.WordControl.m_oLogicDocument;
|
||
if (!_logicDoc)
|
||
return;
|
||
|
||
//TODO пересмотреть проверку лока и добавление новой точки(AscDFH.historydescription_Document_PasteHotKey)
|
||
if (false === _logicDoc.Document_Is_SelectionLocked(AscCommon.changestype_Paragraph_Content, null, true, false))
|
||
{
|
||
window['AscCommon'].g_specialPasteHelper.Paste_Process_Start();
|
||
window['AscCommon'].g_specialPasteHelper.Special_Paste_Start();
|
||
|
||
//undo previous action
|
||
|
||
this.WordControl.m_oLogicDocument.TurnOffInterfaceEvents = true;
|
||
this.WordControl.m_oLogicDocument.Document_Undo();
|
||
this.WordControl.m_oLogicDocument.TurnOffInterfaceEvents = false;
|
||
//if (!useCurrentPoint) {
|
||
_logicDoc.Create_NewHistoryPoint(AscDFH.historydescription_Document_PasteHotKey);
|
||
//}
|
||
|
||
AscCommon.Editor_Paste_Exec(this, null, null, null, null, props);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_IsFocus = function(bIsNaturalFocus)
|
||
{
|
||
var _ret = false;
|
||
if (this.WordControl.IsFocus)
|
||
_ret = true;
|
||
if (_ret && bIsNaturalFocus && this.WordControl.TextBoxInputFocus)
|
||
_ret = false;
|
||
return _ret;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SelectionCut = function()
|
||
{
|
||
if (!this.canEdit())
|
||
return;
|
||
var _logicDoc = this.WordControl.m_oLogicDocument;
|
||
if (!_logicDoc)
|
||
return;
|
||
_logicDoc.Remove(1, true, true);
|
||
};
|
||
|
||
asc_docs_api.prototype._onSaveCallbackInner = function()
|
||
{
|
||
var t = this;
|
||
if (c_oAscCollaborativeMarksShowType.LastChanges === this.CollaborativeMarksShowType)
|
||
{
|
||
AscCommon.CollaborativeEditing.Clear_CollaborativeMarks();
|
||
}
|
||
|
||
// Принимаем чужие изменения
|
||
AscCommon.CollaborativeEditing.Apply_Changes();
|
||
|
||
this.CoAuthoringApi.onUnSaveLock = function()
|
||
{
|
||
t.CoAuthoringApi.onUnSaveLock = null;
|
||
if (t.isForceSaveOnUserSave && t.IsUserSave) {
|
||
t.forceSaveButtonContinue = t.forceSave();
|
||
}
|
||
// Выставляем, что документ не модифицирован
|
||
t.CheckChangedDocument();
|
||
t.canSave = true;
|
||
t.IsUserSave = false;
|
||
if (!t.forceSaveButtonContinue) {
|
||
t.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save);
|
||
}
|
||
|
||
// Обновляем состояние возможности сохранения документа
|
||
t._onUpdateDocumentCanSave();
|
||
|
||
if (undefined !== window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["OnSave"]();
|
||
}
|
||
if (t.disconnectOnSave) {
|
||
t.CoAuthoringApi.disconnect(t.disconnectOnSave.code, t.disconnectOnSave.reason);
|
||
t.disconnectOnSave = null;
|
||
}
|
||
|
||
if (t.canUnlockDocument) {
|
||
t._unlockDocument();
|
||
}
|
||
};
|
||
var CursorInfo = null;
|
||
if (true === AscCommon.CollaborativeEditing.Is_Fast())
|
||
{
|
||
CursorInfo = History.Get_DocumentPositionBinary();
|
||
}
|
||
|
||
// Пересылаем свои изменения
|
||
if (this.forceSaveUndoRequest)
|
||
{
|
||
AscCommon.CollaborativeEditing.Set_GlobalLock(false);
|
||
AscCommon.CollaborativeEditing.Undo();
|
||
this.forceSaveUndoRequest = false;
|
||
}
|
||
else
|
||
{
|
||
AscCommon.CollaborativeEditing.Send_Changes(this.IsUserSave, {
|
||
UserId : this.CoAuthoringApi.getUserConnectionId(),
|
||
UserShortId : this.DocInfo.get_UserId(),
|
||
CursorInfo : CursorInfo
|
||
}, undefined, true);
|
||
}
|
||
};
|
||
asc_docs_api.prototype._autoSaveInner = function () {
|
||
if (this.WordControl.DemonstrationManager.Mode) {
|
||
return;
|
||
}
|
||
|
||
var _curTime = new Date();
|
||
if (null === this.lastSaveTime) {
|
||
this.lastSaveTime = _curTime;
|
||
}
|
||
|
||
if (AscCommon.CollaborativeEditing.Is_Fast() && !AscCommon.CollaborativeEditing.Is_SingleUser()) {
|
||
this.WordControl.m_oLogicDocument.Continue_FastCollaborativeEditing();
|
||
} else {
|
||
var _bIsWaitScheme = false;
|
||
if (this.WordControl.m_oDrawingDocument &&
|
||
!this.WordControl.m_oDrawingDocument.TransitionSlide.IsPlaying() && History.Points &&
|
||
History.Index >= 0 && History.Index < History.Points.length) {
|
||
if ((_curTime - History.Points[History.Index].Time) < this.intervalWaitAutoSave) {
|
||
_bIsWaitScheme = true;
|
||
}
|
||
}
|
||
|
||
if (!_bIsWaitScheme) {
|
||
var _interval = (AscCommon.CollaborativeEditing.m_nUseType <= 0) ? this.autoSaveGapSlow :
|
||
this.autoSaveGapFast;
|
||
|
||
if ((_curTime - this.lastSaveTime) > _interval) {
|
||
if (History.Have_Changes(true) == true) {
|
||
this.asc_Save(true);
|
||
}
|
||
this.lastSaveTime = _curTime;
|
||
}
|
||
}
|
||
}
|
||
};
|
||
asc_docs_api.prototype._saveCheck = function() {
|
||
return !this.isLongAction() && !this.WordControl.DemonstrationManager.Mode;
|
||
};
|
||
asc_docs_api.prototype._haveOtherChanges = function () {
|
||
return AscCommon.CollaborativeEditing.Have_OtherChanges();
|
||
};
|
||
asc_docs_api.prototype.asc_DownloadAs = function(typeFile, bIsDownloadEvent)
|
||
{//передаем число соответствующее своему формату.
|
||
var options = {downloadType : bIsDownloadEvent ? DownloadType.Download : DownloadType.None};
|
||
this._downloadAs(typeFile, c_oAscAsyncAction.DownloadAs, options);
|
||
};
|
||
asc_docs_api.prototype.Resize = function()
|
||
{
|
||
if (false === this.bInit_word_control)
|
||
return;
|
||
this.WordControl.OnResize(false);
|
||
};
|
||
asc_docs_api.prototype.AddURL = function(url)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.Help = function()
|
||
{
|
||
|
||
};
|
||
/*
|
||
idOption идентификатор дополнительного параметра, c_oAscAdvancedOptionsID.TXT.
|
||
option - какие свойства применить, пока массив. для TXT объект asc_CTXTAdvancedOptions(codepage)
|
||
exp: asc_setAdvancedOptions(c_oAscAdvancedOptionsID.TXT, new Asc.asc_CCSVAdvancedOptions(1200) );
|
||
*/
|
||
asc_docs_api.prototype.asc_setAdvancedOptions = function(idOption, option)
|
||
{
|
||
if (AscCommon.EncryptionWorker.asc_setAdvancedOptions(this, idOption, option))
|
||
return;
|
||
|
||
switch (idOption)
|
||
{
|
||
case c_oAscAdvancedOptionsID.DRM:
|
||
var v = {
|
||
"id": this.documentId,
|
||
"userid": this.documentUserId,
|
||
"format": this.documentFormat,
|
||
"c": "reopen",
|
||
"url": this.documentUrl,
|
||
"title": this.documentTitle,
|
||
"password": option.asc_getPassword(),
|
||
"nobase64": true
|
||
};
|
||
|
||
sendCommand(this, null, v);
|
||
break;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.startGetDocInfo = function()
|
||
{
|
||
/*
|
||
Возвращаем объект следующего вида:
|
||
{
|
||
PageCount: 12,
|
||
WordsCount: 2321,
|
||
ParagraphCount: 45,
|
||
SymbolsCount: 232345,
|
||
SymbolsWSCount: 34356
|
||
}
|
||
*/
|
||
this.sync_GetDocInfoStartCallback();
|
||
|
||
this.WordControl.m_oLogicDocument.Statistics_Start();
|
||
};
|
||
asc_docs_api.prototype.stopGetDocInfo = function()
|
||
{
|
||
this.sync_GetDocInfoStopCallback();
|
||
this.WordControl.m_oLogicDocument.Statistics_Stop();
|
||
};
|
||
asc_docs_api.prototype.sync_DocInfoCallback = function(obj)
|
||
{
|
||
this.sendEvent("asc_onDocInfo", new CDocInfoProp(obj));
|
||
};
|
||
asc_docs_api.prototype.sync_GetDocInfoStartCallback = function()
|
||
{
|
||
this.sendEvent("asc_onGetDocInfoStart");
|
||
};
|
||
asc_docs_api.prototype.sync_GetDocInfoStopCallback = function()
|
||
{
|
||
this.sendEvent("asc_onGetDocInfoStop");
|
||
};
|
||
asc_docs_api.prototype.sync_GetDocInfoEndCallback = function()
|
||
{
|
||
this.sendEvent("asc_onGetDocInfoEnd");
|
||
};
|
||
asc_docs_api.prototype.sync_CanUndoCallback = function(bCanUndo)
|
||
{
|
||
this.sendEvent("asc_onCanUndo", bCanUndo);
|
||
};
|
||
asc_docs_api.prototype.sync_CanRedoCallback = function(bCanRedo)
|
||
{
|
||
if (true === AscCommon.CollaborativeEditing.Is_Fast() && true !== AscCommon.CollaborativeEditing.Is_SingleUser())
|
||
bCanRedo = false;
|
||
|
||
this.sendEvent("asc_onCanRedo", bCanRedo);
|
||
};
|
||
|
||
|
||
/*callbacks*/
|
||
/*asc_docs_api.prototype.sync_CursorLockCallBack = function(isLock){
|
||
this.sendEvent("asc_onCursorLock",isLock);
|
||
}*/
|
||
asc_docs_api.prototype.sync_UndoCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onUndo");
|
||
};
|
||
asc_docs_api.prototype.sync_RedoCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onRedo");
|
||
};
|
||
asc_docs_api.prototype.sync_CopyCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onCopy");
|
||
};
|
||
asc_docs_api.prototype.sync_CutCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onCut");
|
||
};
|
||
asc_docs_api.prototype.sync_PasteCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onPaste");
|
||
};
|
||
asc_docs_api.prototype.sync_ShareCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onShare");
|
||
};
|
||
asc_docs_api.prototype.sync_SaveCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onSave");
|
||
};
|
||
asc_docs_api.prototype.sync_DownloadAsCallBack = function()
|
||
{
|
||
this.sendEvent("asc_onDownload");
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_AddURLCallback = function()
|
||
{
|
||
this.sendEvent("asc_onAddURL");
|
||
};
|
||
asc_docs_api.prototype.sync_ErrorCallback = function(errorID, errorLevel)
|
||
{
|
||
this.sendEvent("asc_onError", errorID, errorLevel);
|
||
};
|
||
asc_docs_api.prototype.sync_HelpCallback = function(url)
|
||
{
|
||
this.sendEvent("asc_onHelp", url);
|
||
};
|
||
asc_docs_api.prototype.sync_UpdateZoom = function(zoom)
|
||
{
|
||
this.sendEvent("asc_onZoom", zoom);
|
||
};
|
||
asc_docs_api.prototype.ClearPropObjCallback = function(prop)
|
||
{//колбэк предшествующий приходу свойств объекта, prop а всякий случай
|
||
|
||
this.sendEvent("asc_onClearPropObj", prop);
|
||
};
|
||
|
||
// mobile version methods:
|
||
asc_docs_api.prototype.asc_GetDefaultTableStyles = function()
|
||
{
|
||
var logicDoc = this.WordControl.m_oLogicDocument;
|
||
if (!logicDoc)
|
||
return;
|
||
|
||
if (logicDoc.CurPage >= logicDoc.Slides.length)
|
||
return;
|
||
|
||
if (logicDoc.Slides.length == 0)
|
||
{
|
||
logicDoc.addNextSlide();
|
||
}
|
||
|
||
logicDoc.CheckTableStylesDefault(logicDoc.Slides[logicDoc.CurPage]);
|
||
};
|
||
|
||
asc_docs_api.prototype.CollectHeaders = function()
|
||
{
|
||
this.sync_ReturnHeadersCallback([]);
|
||
};
|
||
asc_docs_api.prototype.GetActiveHeader = function()
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.gotoHeader = function(page, X, Y)
|
||
{
|
||
this.goToPage(page);
|
||
};
|
||
asc_docs_api.prototype.sync_ChangeActiveHeaderCallback = function(position, header)
|
||
{
|
||
this.sendEvent("asc_onChangeActiveHeader", position, new Asc.CHeader(header));
|
||
};
|
||
asc_docs_api.prototype.sync_ReturnHeadersCallback = function(headers)
|
||
{
|
||
var _headers = [];
|
||
for (var i = 0; i < headers.length; i++)
|
||
{
|
||
_headers[i] = new CHeader(headers[i]);
|
||
}
|
||
|
||
this.sendEvent("asc_onReturnHeaders", _headers);
|
||
};
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with search*/
|
||
/*
|
||
структура поиска, предварительно, выглядит так
|
||
{
|
||
text: "...<b>слово поиска</b>...",
|
||
pageNumber: 0, //содержит номер страницы, где находится искомая последовательность
|
||
X: 0,//координаты по OX начала последовательности на данной страницы
|
||
Y: 0//координаты по OY начала последовательности на данной страницы
|
||
}
|
||
*/
|
||
asc_docs_api.prototype.startSearchText = function(what)
|
||
{// "what" means word(s) what we search
|
||
this._searchCur = 0;
|
||
this.sync_SearchStartCallback();
|
||
|
||
if (null != this.WordControl.m_oLogicDocument)
|
||
this.WordControl.m_oLogicDocument.Search_Start(what);
|
||
else
|
||
this.WordControl.m_oDrawingDocument.m_oDocumentRenderer.StartSearch(what);
|
||
};
|
||
|
||
asc_docs_api.prototype.goToNextSearchResult = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.goToNextSearchResult();
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.gotoSearchResultText = function(navigator)
|
||
{//переход к результату.
|
||
|
||
this.WordControl.m_oDrawingDocument.CurrentSearchNavi = navigator;
|
||
this.WordControl.ToSearchResult();
|
||
};
|
||
asc_docs_api.prototype.stopSearchText = function()
|
||
{
|
||
this.sync_SearchStopCallback();
|
||
|
||
this.WordControl.m_oLogicDocument.Search_Stop();
|
||
};
|
||
asc_docs_api.prototype.findText = function(text, isNext)
|
||
{
|
||
|
||
var SearchEngine = editor.WordControl.m_oLogicDocument.Search(text, {MatchCase : false});
|
||
|
||
var Id = this.WordControl.m_oLogicDocument.Search_GetId(isNext);
|
||
|
||
if (null != Id)
|
||
this.WordControl.m_oLogicDocument.Search_Select(Id);
|
||
|
||
return SearchEngine.Count;
|
||
|
||
//return this.WordControl.m_oLogicDocument.findText(text, scanForward);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_searchEnabled = function(bIsEnabled)
|
||
{
|
||
// пустой метод
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_findText = function(text, isNext, isMatchCase)
|
||
{
|
||
return this.WordControl.m_oLogicDocument.findText(text, isNext === true);
|
||
};
|
||
// returns: CSearchResult
|
||
asc_docs_api.prototype.sync_SearchFoundCallback = function(obj)
|
||
{
|
||
this.sendEvent("asc_onSearchFound", new CSearchResult(obj));
|
||
};
|
||
asc_docs_api.prototype.sync_SearchStartCallback = function()
|
||
{
|
||
this.sendEvent("asc_onSearchStart");
|
||
};
|
||
asc_docs_api.prototype.sync_SearchStopCallback = function()
|
||
{
|
||
this.sendEvent("asc_onSearchStop");
|
||
};
|
||
asc_docs_api.prototype.sync_SearchEndCallback = function()
|
||
{
|
||
this.sendEvent("asc_onSearchEnd");
|
||
};
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with font*/
|
||
/*setters*/
|
||
asc_docs_api.prototype.put_TextPrFontName = function(name)
|
||
{
|
||
var loader = AscCommon.g_font_loader;
|
||
var fontinfo = AscFonts.g_fontApplication.GetFontInfo(name);
|
||
var isasync = loader.LoadFont(fontinfo);
|
||
if (false === isasync)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({
|
||
FontFamily : {
|
||
Name : name,
|
||
Index : -1
|
||
}
|
||
}), false);
|
||
}
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_TextPrFontSize = function(size)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({FontSize : Math.min(size, 100)}), false);
|
||
|
||
// для мобильной версии это важно
|
||
if (this.isMobileVersion)
|
||
this.UpdateInterfaceState();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_TextPrLang = function(value)
|
||
{
|
||
if (false === this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_Paragraph_Content))
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Document_SetTextLang);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({Lang : {Val : value}}), false);
|
||
|
||
this.WordControl.m_oLogicDocument.Spelling.Check_CurParas();
|
||
|
||
//if (true === this.isMarkerFormat)
|
||
// this.sync_MarkerFormatCallback(false);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.put_TextPrBold = function(value)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({Bold : value}), false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_TextPrItalic = function(value)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({Italic : value}), false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_TextPrUnderline = function(value)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({Underline : value}), false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_TextPrStrikeout = function(value)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({
|
||
Strikeout : value,
|
||
DStrikeout : false
|
||
}), false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_PrLineSpacing = function(Type, Value)
|
||
{
|
||
this.WordControl.m_oLogicDocument.SetParagraphSpacing({LineRule : Type, Line : Value});
|
||
};
|
||
asc_docs_api.prototype.put_LineSpacingBeforeAfter = function(type, value)//"type == 0" means "Before", "type == 1" means "After"
|
||
{
|
||
switch (type)
|
||
{
|
||
case 0:
|
||
this.WordControl.m_oLogicDocument.SetParagraphSpacing({Before : value});
|
||
break;
|
||
case 1:
|
||
this.WordControl.m_oLogicDocument.SetParagraphSpacing({After : value});
|
||
break;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.FontSizeIn = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.IncreaseDecreaseFontSize(true);
|
||
};
|
||
asc_docs_api.prototype.FontSizeOut = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.IncreaseDecreaseFontSize(false);
|
||
};
|
||
|
||
asc_docs_api.prototype.put_AlignBySelect = function(val)
|
||
{
|
||
this.bAlignBySelected = val;
|
||
};
|
||
|
||
asc_docs_api.prototype.get_AlignBySelect = function()
|
||
{
|
||
return this.bAlignBySelected;
|
||
};
|
||
|
||
/*callbacks*/
|
||
asc_docs_api.prototype.sync_BoldCallBack = function(isBold)
|
||
{
|
||
this.sendEvent("asc_onBold", isBold);
|
||
};
|
||
asc_docs_api.prototype.sync_ItalicCallBack = function(isItalic)
|
||
{
|
||
this.sendEvent("asc_onItalic", isItalic);
|
||
};
|
||
asc_docs_api.prototype.sync_UnderlineCallBack = function(isUnderline)
|
||
{
|
||
this.sendEvent("asc_onUnderline", isUnderline);
|
||
};
|
||
asc_docs_api.prototype.sync_StrikeoutCallBack = function(isStrikeout)
|
||
{
|
||
this.sendEvent("asc_onStrikeout", isStrikeout);
|
||
};
|
||
asc_docs_api.prototype.sync_TextPrFontFamilyCallBack = function(FontFamily)
|
||
{
|
||
this.sendEvent("asc_onFontFamily", new AscCommon.asc_CTextFontFamily(FontFamily));
|
||
};
|
||
asc_docs_api.prototype.sync_TextPrFontSizeCallBack = function(FontSize)
|
||
{
|
||
this.sendEvent("asc_onFontSize", FontSize);
|
||
};
|
||
asc_docs_api.prototype.sync_PrLineSpacingCallBack = function(LineSpacing)
|
||
{
|
||
this.sendEvent("asc_onLineSpacing", new AscCommon.asc_CParagraphSpacing(LineSpacing));
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_InitEditorThemes = function(gui_editor_themes, gui_document_themes)
|
||
{
|
||
this._gui_editor_themes = gui_editor_themes;
|
||
this._gui_document_themes = gui_document_themes;
|
||
if (!this.isViewMode) {
|
||
this.sendEvent("asc_onInitEditorStyles", [gui_editor_themes, gui_document_themes]);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.sync_InitEditorTableStyles = function(styles)
|
||
{
|
||
if (!this.isViewMode) {
|
||
this.sendEvent("asc_onInitTableTemplates", styles);
|
||
}
|
||
};
|
||
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with paragraph*/
|
||
/*setters*/
|
||
// Right = 0; Left = 1; Center = 2; Justify = 3; or using enum that written above
|
||
|
||
/* структура для параграфа
|
||
Ind :
|
||
{
|
||
Left : 0, // Левый отступ
|
||
Right : 0, // Правый отступ
|
||
FirstLine : 0 // Первая строка
|
||
}
|
||
Spacing :
|
||
{
|
||
Line : 1.15, // Расстояние между строками внутри абзаца
|
||
LineRule : linerule_Auto, // Тип расстрояния между строками
|
||
Before : 0, // Дополнительное расстояние до абзаца
|
||
After : 10 * g_dKoef_pt_to_mm // Дополнительное расстояние после абзаца
|
||
},
|
||
KeepLines : false, // переносить параграф на новую страницу,
|
||
// если на текущей он целиком не убирается
|
||
PageBreakBefore : false
|
||
*/
|
||
|
||
asc_docs_api.prototype.paraApply = function(Props)
|
||
{
|
||
var _presentation = editor.WordControl.m_oLogicDocument;
|
||
var graphicObjects = _presentation.GetCurrentController();
|
||
if (graphicObjects)
|
||
{
|
||
graphicObjects.checkSelectedObjectsAndCallback(function()
|
||
{
|
||
|
||
if ("undefined" != typeof(Props.Ind) && null != Props.Ind)
|
||
graphicObjects.setParagraphIndent(Props.Ind);
|
||
|
||
if ("undefined" != typeof(Props.Jc) && null != Props.Jc)
|
||
graphicObjects.setParagraphAlign(Props.Jc);
|
||
|
||
|
||
if ("undefined" != typeof(Props.Spacing) && null != Props.Spacing)
|
||
graphicObjects.setParagraphSpacing(Props.Spacing);
|
||
|
||
|
||
if (undefined != Props.Tabs)
|
||
{
|
||
var Tabs = new AscCommonWord.CParaTabs();
|
||
Tabs.Set_FromObject(Props.Tabs.Tabs);
|
||
graphicObjects.setParagraphTabs(Tabs);
|
||
}
|
||
|
||
if (undefined != Props.DefaultTab)
|
||
{
|
||
graphicObjects.setDefaultTabSize(Props.DefaultTab);
|
||
}
|
||
var TextPr = new AscCommonWord.CTextPr();
|
||
|
||
if (true === Props.Subscript)
|
||
TextPr.VertAlign = AscCommon.vertalign_SubScript;
|
||
else if (true === Props.Superscript)
|
||
TextPr.VertAlign = AscCommon.vertalign_SuperScript;
|
||
else if (false === Props.Superscript || false === Props.Subscript)
|
||
TextPr.VertAlign = AscCommon.vertalign_Baseline;
|
||
|
||
if (undefined != Props.Strikeout)
|
||
{
|
||
TextPr.Strikeout = Props.Strikeout;
|
||
TextPr.DStrikeout = false;
|
||
}
|
||
|
||
if (undefined != Props.DStrikeout)
|
||
{
|
||
TextPr.DStrikeout = Props.DStrikeout;
|
||
if (true === TextPr.DStrikeout)
|
||
TextPr.Strikeout = false;
|
||
}
|
||
|
||
if (undefined != Props.SmallCaps)
|
||
{
|
||
TextPr.SmallCaps = Props.SmallCaps;
|
||
TextPr.AllCaps = false;
|
||
}
|
||
|
||
if (undefined != Props.AllCaps)
|
||
{
|
||
TextPr.Caps = Props.AllCaps;
|
||
if (true === TextPr.AllCaps)
|
||
TextPr.SmallCaps = false;
|
||
}
|
||
|
||
if (undefined != Props.TextSpacing)
|
||
TextPr.Spacing = Props.TextSpacing;
|
||
|
||
if (undefined != Props.Position)
|
||
TextPr.Position = Props.Position;
|
||
graphicObjects.paragraphAdd(new AscCommonWord.ParaTextPr(TextPr));
|
||
_presentation.Recalculate();
|
||
_presentation.Document_UpdateInterfaceState();
|
||
}, [], false, AscDFH.historydescription_Presentation_ParaApply);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.put_PrAlign = function(value)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_PutTextPrAlign);
|
||
this.WordControl.m_oLogicDocument.SetParagraphAlign(value);
|
||
};
|
||
// 0- baseline, 2-subscript, 1-superscript
|
||
asc_docs_api.prototype.put_TextPrBaseline = function(value)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({VertAlign : value}), false);
|
||
}
|
||
};
|
||
/* Маркированный список Type = 0
|
||
нет - SubType = -1
|
||
черная точка - SubType = 1
|
||
круг - SubType = 2
|
||
квадрат - SubType = 3
|
||
картинка - SubType = -1
|
||
4 ромба - SubType = 4
|
||
ч/б стрелка - SubType = 5
|
||
галка - SubType = 6
|
||
|
||
Нумерованный список Type = 1
|
||
нет - SubType = -1
|
||
1. - SubType = 1
|
||
1) - SubType = 2
|
||
I. - SubType = 3
|
||
A. - SubType = 4
|
||
a) - SubType = 5
|
||
a. - SubType = 6
|
||
i. - SubType = 7
|
||
|
||
Многоуровневый список Type = 2
|
||
нет - SubType = -1
|
||
1)a)i) - SubType = 1
|
||
1.1.1 - SubType = 2
|
||
маркированный - SubType = 3
|
||
*/
|
||
asc_docs_api.prototype.put_ListType = function(type, subtype)
|
||
{
|
||
var oPresentation = this.WordControl.m_oLogicDocument;
|
||
var sBullet = "";
|
||
if(type === 0)
|
||
{
|
||
switch(subtype)
|
||
{
|
||
case 0:
|
||
case 1:
|
||
{
|
||
sBullet = "•";
|
||
break;
|
||
}
|
||
case 2:
|
||
{
|
||
sBullet = "o";
|
||
break;
|
||
}
|
||
case 3:
|
||
{
|
||
sBullet = "§";
|
||
break;
|
||
}
|
||
case 4:
|
||
{
|
||
sBullet = String.fromCharCode( 0x0076 );
|
||
break;
|
||
}
|
||
case 5:
|
||
{
|
||
sBullet = String.fromCharCode( 0x00D8 );
|
||
break;
|
||
}
|
||
case 6:
|
||
{
|
||
sBullet = String.fromCharCode( 0x00FC );
|
||
break;
|
||
}
|
||
case 7:
|
||
{
|
||
|
||
sBullet = String.fromCharCode(119);
|
||
break;
|
||
}
|
||
case 8:
|
||
{
|
||
sBullet = String.fromCharCode(0x2013);
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
|
||
var fCallback = function () {
|
||
|
||
var NumberInfo =
|
||
{
|
||
Type : 0,
|
||
SubType : -1
|
||
};
|
||
|
||
NumberInfo.Type = type;
|
||
NumberInfo.SubType = subtype;
|
||
oPresentation.SetParagraphNumbering(NumberInfo);
|
||
};
|
||
if(sBullet.length > 0)
|
||
{
|
||
AscFonts.FontPickerByCharacter.checkText(sBullet, this, fCallback);
|
||
}
|
||
else
|
||
{
|
||
fCallback();
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.put_ShowSnapLines = function(isShow)
|
||
{
|
||
this.ShowSnapLines = isShow;
|
||
};
|
||
asc_docs_api.prototype.get_ShowSnapLines = function()
|
||
{
|
||
return this.ShowSnapLines;
|
||
};
|
||
|
||
asc_docs_api.prototype.put_ShowParaMarks = function(isShow)
|
||
{
|
||
this.ShowParaMarks = isShow;
|
||
this.WordControl.OnRePaintAttack();
|
||
return this.ShowParaMarks;
|
||
};
|
||
asc_docs_api.prototype.get_ShowParaMarks = function()
|
||
{
|
||
return this.ShowParaMarks;
|
||
};
|
||
asc_docs_api.prototype.put_ShowTableEmptyLine = function(isShow)
|
||
{
|
||
this.isShowTableEmptyLine = isShow;
|
||
this.WordControl.OnRePaintAttack();
|
||
|
||
return this.isShowTableEmptyLine;
|
||
};
|
||
asc_docs_api.prototype.get_ShowTableEmptyLine = function()
|
||
{
|
||
return this.isShowTableEmptyLine;
|
||
};
|
||
|
||
asc_docs_api.prototype.ShapeApply = function(prop)
|
||
{
|
||
// нужно определить, картинка это или нет
|
||
var image_url = "";
|
||
prop.Width = prop.w;
|
||
prop.Height = prop.h;
|
||
|
||
var bShapeTexture = true;
|
||
if (prop.fill != null)
|
||
{
|
||
if (prop.fill.fill != null && prop.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
image_url = prop.fill.fill.asc_getUrl();
|
||
|
||
var _tx_id = prop.fill.fill.asc_getTextureId();
|
||
if (null != _tx_id && 0 <= _tx_id && _tx_id < AscCommon.g_oUserTexturePresets.length)
|
||
{
|
||
image_url = AscCommon.g_oUserTexturePresets[_tx_id];
|
||
}
|
||
}
|
||
}
|
||
var oFill;
|
||
if (prop.textArtProperties)
|
||
{
|
||
oFill = prop.textArtProperties.asc_getFill();
|
||
if (oFill && oFill.fill != null && oFill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
image_url = oFill.fill.asc_getUrl();
|
||
|
||
var _tx_id = oFill.fill.asc_getTextureId();
|
||
if (null != _tx_id && 0 <= _tx_id && _tx_id < AscCommon.g_oUserTexturePresets.length)
|
||
{
|
||
image_url = AscCommon.g_oUserTexturePresets[_tx_id];
|
||
}
|
||
bShapeTexture = false;
|
||
}
|
||
}
|
||
if (!AscCommon.isNullOrEmptyString(image_url))
|
||
{
|
||
var sImageUrl = null;
|
||
if (!g_oDocumentUrls.getImageLocal(image_url))
|
||
{
|
||
sImageUrl = image_url;
|
||
}
|
||
var oApi = this;
|
||
var fApplyCallback = function()
|
||
{
|
||
var _image = oApi.ImageLoader.LoadImage(image_url, 1);
|
||
var srcLocal = g_oDocumentUrls.getImageLocal(image_url);
|
||
if (srcLocal)
|
||
{
|
||
image_url = srcLocal;
|
||
}
|
||
if (bShapeTexture)
|
||
{
|
||
prop.fill.fill.asc_putUrl(image_url); // erase documentUrl
|
||
}
|
||
else
|
||
{
|
||
oFill.fill.asc_putUrl(image_url);
|
||
}
|
||
if (null != _image)
|
||
{
|
||
oApi.WordControl.m_oLogicDocument.ShapeApply(prop);
|
||
if (bShapeTexture)
|
||
{
|
||
oApi.WordControl.m_oDrawingDocument.DrawImageTextureFillShape(image_url);
|
||
}
|
||
else
|
||
{
|
||
oApi.WordControl.m_oDrawingDocument.DrawImageTextureFillTextArt(image_url);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
oApi.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadImage);
|
||
var oProp = prop;
|
||
oApi.asyncImageEndLoaded2 = function(_image)
|
||
{
|
||
oApi.WordControl.m_oLogicDocument.ShapeApply(oProp);
|
||
oApi.WordControl.m_oDrawingDocument.DrawImageTextureFillShape(image_url);
|
||
oApi.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadImage);
|
||
oApi.asyncImageEndLoaded2 = null;
|
||
}
|
||
}
|
||
};
|
||
if (!sImageUrl)
|
||
{
|
||
fApplyCallback();
|
||
}
|
||
else
|
||
{
|
||
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
image_url = window["AscDesktopEditor"]["LocalFileGetImageUrl"](sImageUrl);
|
||
image_url = g_oDocumentUrls.getImageUrl(image_url);
|
||
fApplyCallback();
|
||
return;
|
||
}
|
||
|
||
AscCommon.sendImgUrls(this, [sImageUrl], function(data) {
|
||
|
||
if (data && data[0])
|
||
{
|
||
image_url = data[0].url;
|
||
fApplyCallback();
|
||
}
|
||
|
||
}, false);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (!this.noCreatePoint || this.exucuteHistory)
|
||
{
|
||
if (!this.noCreatePoint && !this.exucuteHistory && this.exucuteHistoryEnd)
|
||
{
|
||
if (-1 !== this.nCurPointItemsLength)
|
||
{
|
||
History.UndoLastPoint();
|
||
var slide = this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage];
|
||
slide.graphicObjects.applyDrawingProps(prop);
|
||
this.WordControl.m_oLogicDocument.Recalculate();
|
||
this.WordControl.m_oDrawingDocument.OnRecalculatePage(this.WordControl.m_oLogicDocument.CurPage, slide);
|
||
this.WordControl.m_oDrawingDocument.OnEndRecalculate();
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oLogicDocument.ShapeApply(prop);
|
||
}
|
||
this.exucuteHistoryEnd = false;
|
||
this.nCurPointItemsLength = -1;
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oLogicDocument.ShapeApply(prop);
|
||
}
|
||
if (this.exucuteHistory)
|
||
{
|
||
var oPoint = History.Points[History.Index];
|
||
if (oPoint)
|
||
{
|
||
this.nCurPointItemsLength = oPoint.Items.length;
|
||
}
|
||
else
|
||
{
|
||
this.nCurPointItemsLength = -1;
|
||
}
|
||
this.exucuteHistory = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage])
|
||
{
|
||
if (-1 !== this.nCurPointItemsLength)
|
||
{
|
||
History.UndoLastPoint();
|
||
var slide = this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage];
|
||
slide.graphicObjects.applyDrawingProps(prop);
|
||
this.WordControl.m_oLogicDocument.Recalculate();
|
||
this.WordControl.m_oDrawingDocument.OnRecalculatePage(this.WordControl.m_oLogicDocument.CurPage, slide);
|
||
this.WordControl.m_oDrawingDocument.OnEndRecalculate();
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oLogicDocument.ShapeApply(prop);
|
||
var oPoint = History.Points[History.Index];
|
||
if (oPoint)
|
||
{
|
||
this.nCurPointItemsLength = oPoint.Items.length;
|
||
}
|
||
else
|
||
{
|
||
this.nCurPointItemsLength = -1;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
this.exucuteHistoryEnd = false;
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.setStartPointHistory = function()
|
||
{
|
||
this.noCreatePoint = true;
|
||
this.exucuteHistory = true;
|
||
this.incrementCounterLongAction();
|
||
};
|
||
asc_docs_api.prototype.setEndPointHistory = function()
|
||
{
|
||
this.noCreatePoint = false;
|
||
this.exucuteHistoryEnd = true;
|
||
this.decrementCounterLongAction();
|
||
};
|
||
asc_docs_api.prototype.SetSlideProps = function(prop)
|
||
{
|
||
if (null == prop)
|
||
return;
|
||
|
||
var arr_ind = this.WordControl.m_oLogicDocument.GetSelectedSlides()
|
||
var _back_fill = prop.get_background();
|
||
|
||
if (_back_fill)
|
||
{
|
||
if (_back_fill.asc_getType() == c_oAscFill.FILL_TYPE_NOFILL)
|
||
{
|
||
var bg = new AscFormat.CBg();
|
||
bg.bgPr = new AscFormat.CBgPr();
|
||
bg.bgPr.Fill = AscFormat.CorrectUniFill(_back_fill, null, 0);
|
||
|
||
this.WordControl.m_oLogicDocument.changeBackground(bg, arr_ind);
|
||
return;
|
||
}
|
||
|
||
var _old_fill = this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage].backgroundFill;
|
||
if (AscCommon.isRealObject(_old_fill))
|
||
_old_fill = _old_fill.createDuplicate();
|
||
var bg = new AscFormat.CBg();
|
||
bg.bgPr = new AscFormat.CBgPr();
|
||
bg.bgPr.Fill = AscFormat.CorrectUniFill(_back_fill, _old_fill, 0);
|
||
var image_url = "";
|
||
if (_back_fill.asc_getType() == c_oAscFill.FILL_TYPE_BLIP && _back_fill.fill && typeof _back_fill.fill.url === "string" && _back_fill.fill.url.length > 0)
|
||
{
|
||
image_url = _back_fill.fill.url;
|
||
}
|
||
if (image_url != "")
|
||
{
|
||
var sImageUrl = null;
|
||
if (!g_oDocumentUrls.getImageLocal(image_url))
|
||
{
|
||
sImageUrl = image_url;
|
||
}
|
||
var oApi = this;
|
||
var fApplyCallback = function()
|
||
{
|
||
|
||
var _image = oApi.ImageLoader.LoadImage(image_url, 1);
|
||
var srcLocal = g_oDocumentUrls.getImageLocal(image_url);
|
||
if (srcLocal)
|
||
{
|
||
image_url = srcLocal;
|
||
bg.bgPr.Fill.fill.RasterImageId = image_url; // erase documentUrl
|
||
}
|
||
|
||
if (null != _image)
|
||
{
|
||
if (bg.bgPr.Fill != null && bg.bgPr.Fill.fill != null && bg.bgPr.Fill.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
oApi.WordControl.m_oDrawingDocument.DrawImageTextureFillSlide(bg.bgPr.Fill.fill.RasterImageId);
|
||
}
|
||
|
||
oApi.WordControl.m_oLogicDocument.changeBackground(bg, arr_ind);
|
||
}
|
||
else
|
||
{
|
||
oApi.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadImage);
|
||
|
||
var oProp = prop;
|
||
oApi.asyncImageEndLoaded2 = function(_image)
|
||
{
|
||
if (bg.bgPr.Fill != null && bg.bgPr.Fill.fill != null && bg.bgPr.Fill.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
oApi.WordControl.m_oDrawingDocument.DrawImageTextureFillSlide(bg.bgPr.Fill.fill.RasterImageId);
|
||
}
|
||
|
||
oApi.WordControl.m_oLogicDocument.changeBackground(bg, arr_ind);
|
||
oApi.asyncImageEndLoaded2 = null;
|
||
|
||
oApi.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadImage);
|
||
}
|
||
}
|
||
};
|
||
if (!sImageUrl)
|
||
{
|
||
fApplyCallback();
|
||
}
|
||
else
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
image_url = window["AscDesktopEditor"]["LocalFileGetImageUrl"](sImageUrl);
|
||
image_url = g_oDocumentUrls.getImageUrl(image_url);
|
||
fApplyCallback();
|
||
return;
|
||
}
|
||
|
||
AscCommon.sendImgUrls(this, [sImageUrl], function(data) {
|
||
|
||
if (data && data[0])
|
||
{
|
||
image_url = data[0].url;
|
||
fApplyCallback();
|
||
}
|
||
|
||
}, false);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (bg.bgPr.Fill != null && bg.bgPr.Fill.fill != null && bg.bgPr.Fill.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillSlide(bg.bgPr.Fill.fill.RasterImageId);
|
||
}
|
||
|
||
if (!this.noCreatePoint || this.exucuteHistory)
|
||
{
|
||
if (!this.noCreatePoint && !this.exucuteHistory && this.exucuteHistoryEnd)
|
||
{
|
||
this.WordControl.m_oLogicDocument.changeBackground(bg, arr_ind, true);
|
||
this.exucuteHistoryEnd = false;
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oLogicDocument.changeBackground(bg, arr_ind);
|
||
}
|
||
if (this.exucuteHistory)
|
||
{
|
||
this.exucuteHistory = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage])
|
||
{
|
||
AscFormat.ExecuteNoHistory(function()
|
||
{
|
||
|
||
this.WordControl.m_oLogicDocument.changeBackground(bg, arr_ind, true);
|
||
for (var i = 0; i < arr_ind.length; ++i)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Slides[arr_ind[i]].recalculateBackground()
|
||
}
|
||
for (i = 0; i < arr_ind.length; ++i)
|
||
{
|
||
this.WordControl.m_oLogicDocument.DrawingDocument.OnRecalculatePage(arr_ind[i], this.WordControl.m_oLogicDocument.Slides[arr_ind[i]]);
|
||
}
|
||
this.WordControl.m_oLogicDocument.DrawingDocument.OnEndRecalculate(true, false);
|
||
}, this, []);
|
||
}
|
||
}
|
||
|
||
|
||
}
|
||
}
|
||
|
||
var _timing = prop.get_timing();
|
||
if (_timing)
|
||
{
|
||
this.ApplySlideTiming(_timing);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.put_LineCap = function(_cap)
|
||
{
|
||
this.WordControl.m_oLogicDocument.putLineCap(_cap);
|
||
};
|
||
asc_docs_api.prototype.put_LineJoin = function(_join)
|
||
{
|
||
this.WordControl.m_oLogicDocument.putLineJoin(_join);
|
||
};
|
||
|
||
asc_docs_api.prototype.put_LineBeginStyle = function(_style)
|
||
{
|
||
this.WordControl.m_oLogicDocument.putLineBeginStyle(_style);
|
||
};
|
||
asc_docs_api.prototype.put_LineBeginSize = function(_size)
|
||
{
|
||
this.WordControl.m_oLogicDocument.putLineBeginSize(_size);
|
||
};
|
||
|
||
asc_docs_api.prototype.put_LineEndStyle = function(_style)
|
||
{
|
||
this.WordControl.m_oLogicDocument.putLineEndStyle(_style);
|
||
};
|
||
asc_docs_api.prototype.put_LineEndSize = function(_size)
|
||
{
|
||
this.WordControl.m_oLogicDocument.putLineEndSize(_size);
|
||
};
|
||
|
||
asc_docs_api.prototype.put_TextColor2 = function(r, g, b)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({
|
||
Color : {
|
||
r : r,
|
||
g : g,
|
||
b : b
|
||
}
|
||
}), false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.put_TextColor = function(color)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
var _unifill = new AscFormat.CUniFill();
|
||
_unifill.fill = new AscFormat.CSolidFill();
|
||
_unifill.fill.color = AscFormat.CorrectUniColor(color, _unifill.fill.color, 0);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({Unifill : _unifill}), false);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.put_PrIndent = function(value, levelValue)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_PutPrIndent);
|
||
this.WordControl.m_oLogicDocument.SetParagraphIndent({Left : value, ChangeLevel : levelValue});
|
||
};
|
||
asc_docs_api.prototype.IncreaseIndent = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.IncreaseDecreaseIndent(true);
|
||
};
|
||
asc_docs_api.prototype.DecreaseIndent = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.IncreaseDecreaseIndent(false);
|
||
};
|
||
asc_docs_api.prototype.put_PrIndentRight = function(value)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_PutPrIndentRight);
|
||
this.WordControl.m_oLogicDocument.SetParagraphIndent({Right : value});
|
||
};
|
||
asc_docs_api.prototype.put_PrFirstLineIndent = function(value)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_PutPrFirstLineIndent);
|
||
this.WordControl.m_oLogicDocument.SetParagraphIndent({FirstLine : value});
|
||
};
|
||
asc_docs_api.prototype.getFocusObject = function()
|
||
{//возвратит тип элемента - параграф c_oAscTypeSelectElement.Paragraph, изображение c_oAscTypeSelectElement.Image, таблица c_oAscTypeSelectElement.Table, колонтитул c_oAscTypeSelectElement.Header.
|
||
|
||
};
|
||
|
||
/*callbacks*/
|
||
asc_docs_api.prototype.sync_VerticalAlign = function(typeBaseline)
|
||
{
|
||
this.sendEvent("asc_onVerticalAlign", typeBaseline);
|
||
};
|
||
asc_docs_api.prototype.sync_PrAlignCallBack = function(value)
|
||
{
|
||
this.sendEvent("asc_onPrAlign", value);
|
||
};
|
||
asc_docs_api.prototype.sync_ListType = function(NumPr)
|
||
{
|
||
this.sendEvent("asc_onListType", new AscCommon.asc_CListType(NumPr));
|
||
};
|
||
asc_docs_api.prototype.sync_TextColor = function(Color)
|
||
{
|
||
this.sendEvent("asc_onTextColor", new AscCommon.CColor(Color.r, Color.g, Color.b));
|
||
};
|
||
asc_docs_api.prototype.sync_TextColor2 = function(unifill)
|
||
{
|
||
var _color;
|
||
if (unifill.fill == null)
|
||
return;
|
||
else if (unifill.fill.type == c_oAscFill.FILL_TYPE_SOLID)
|
||
{
|
||
_color = unifill.getRGBAColor();
|
||
var color = AscCommon.CreateAscColor(unifill.fill.color);
|
||
color.asc_putR(_color.R);
|
||
color.asc_putG(_color.G);
|
||
color.asc_putB(_color.B);
|
||
this.sendEvent("asc_onTextColor", color);
|
||
}
|
||
else if (unifill.fill.type == c_oAscFill.FILL_TYPE_GRAD)
|
||
{
|
||
_color = unifill.getRGBAColor();
|
||
var color = AscCommon.CreateAscColor(unifill.fill.colors[0].color);
|
||
color.asc_putR(_color.R);
|
||
color.asc_putG(_color.G);
|
||
color.asc_putB(_color.B);
|
||
this.sendEvent("asc_onTextColor", color);
|
||
}
|
||
else
|
||
{
|
||
_color = unifill.getRGBAColor();
|
||
var color = new Asc.asc_CColor();
|
||
color.asc_putR(_color.R);
|
||
color.asc_putG(_color.G);
|
||
color.asc_putB(_color.B);
|
||
this.sendEvent("asc_onTextColor", color);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.sync_TextHighLight = function(HighLight)
|
||
{
|
||
this.sendEvent("asc_onTextHighLight", new AscCommon.CColor(HighLight.r, HighLight.g, HighLight.b));
|
||
};
|
||
asc_docs_api.prototype.sync_ParaStyleName = function(Name)
|
||
{
|
||
this.sendEvent("asc_onParaStyleName", Name);
|
||
};
|
||
asc_docs_api.prototype.sync_ParaSpacingLine = function(SpacingLine)
|
||
{
|
||
this.sendEvent("asc_onParaSpacingLine", new AscCommon.asc_CParagraphSpacing(SpacingLine));
|
||
};
|
||
asc_docs_api.prototype.sync_PageBreakCallback = function(isBreak)
|
||
{
|
||
this.sendEvent("asc_onPageBreak", isBreak);
|
||
};
|
||
asc_docs_api.prototype.sync_KeepLinesCallback = function(isKeepLines)
|
||
{
|
||
this.sendEvent("asc_onKeepLines", isKeepLines);
|
||
};
|
||
asc_docs_api.prototype.sync_ShowParaMarksCallback = function()
|
||
{
|
||
this.sendEvent("asc_onShowParaMarks");
|
||
};
|
||
asc_docs_api.prototype.sync_SpaceBetweenPrgCallback = function()
|
||
{
|
||
this.sendEvent("asc_onSpaceBetweenPrg");
|
||
};
|
||
asc_docs_api.prototype.sync_PrPropCallback = function(prProp)
|
||
{
|
||
var _len = this.SelectedObjectsStack.length;
|
||
if (_len > 0)
|
||
{
|
||
if (this.SelectedObjectsStack[_len - 1].Type == c_oAscTypeSelectElement.Paragraph)
|
||
{
|
||
this.SelectedObjectsStack[_len - 1].Value = new Asc.asc_CParagraphProperty(prProp);
|
||
return;
|
||
}
|
||
}
|
||
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Paragraph, new Asc.asc_CParagraphProperty(prProp));
|
||
};
|
||
|
||
asc_docs_api.prototype.SetDrawImagePlaceParagraph = function(element_id, props)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.InitGuiCanvasTextProps(element_id);
|
||
this.WordControl.m_oDrawingDocument.DrawGuiCanvasTextProps(props);
|
||
};
|
||
|
||
/*----------------------------------------------------------------*/
|
||
|
||
asc_docs_api.prototype.get_DocumentOrientation = function()
|
||
{
|
||
return this.DocumentOrientation;
|
||
};
|
||
|
||
asc_docs_api.prototype.Update_ParaInd = function(Ind)
|
||
{
|
||
var FirstLine = 0;
|
||
var Left = 0;
|
||
var Right = 0;
|
||
if ("undefined" != typeof(Ind))
|
||
{
|
||
if ("undefined" != typeof(Ind.FirstLine))
|
||
{
|
||
FirstLine = Ind.FirstLine;
|
||
}
|
||
if ("undefined" != typeof(Ind.Left))
|
||
{
|
||
Left = Ind.Left;
|
||
}
|
||
if ("undefined" != typeof(Ind.Right))
|
||
{
|
||
Right = Ind.Right;
|
||
}
|
||
}
|
||
|
||
this.Internal_Update_Ind_Left(Left);
|
||
this.Internal_Update_Ind_FirstLine(FirstLine, Left);
|
||
this.Internal_Update_Ind_Right(Right);
|
||
};
|
||
asc_docs_api.prototype.Internal_Update_Ind_FirstLine = function(FirstLine, Left)
|
||
{
|
||
if (this.WordControl.m_oHorRuler.m_dIndentLeftFirst != (FirstLine + Left))
|
||
{
|
||
this.WordControl.m_oHorRuler.m_dIndentLeftFirst = (FirstLine + Left);
|
||
this.WordControl.UpdateHorRuler();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.Internal_Update_Ind_Left = function(Left)
|
||
{
|
||
if (this.WordControl.m_oHorRuler.m_dIndentLeft != Left)
|
||
{
|
||
this.WordControl.m_oHorRuler.m_dIndentLeft = Left;
|
||
this.WordControl.UpdateHorRuler();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.Internal_Update_Ind_Right = function(Right)
|
||
{
|
||
if (this.WordControl.m_oHorRuler.m_dIndentRight != Right)
|
||
{
|
||
this.WordControl.m_oHorRuler.m_dIndentRight = Right;
|
||
this.WordControl.UpdateHorRuler();
|
||
}
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.sync_DocSizeCallback = function(width, height)
|
||
{
|
||
this.sendEvent("asc_onDocSize", width, height);
|
||
};
|
||
asc_docs_api.prototype.sync_PageOrientCallback = function(isPortrait)
|
||
{
|
||
this.sendEvent("asc_onPageOrient", isPortrait);
|
||
};
|
||
asc_docs_api.prototype.sync_HeadersAndFootersPropCallback = function(hafProp)
|
||
{
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Header, new CHeaderProp(hafProp));
|
||
};
|
||
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with table*/
|
||
asc_docs_api.prototype.put_Table = function(col, row)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Add_FlowTable(col, row);
|
||
};
|
||
asc_docs_api.prototype.addRowAbove = function(count)
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_AddRowAbove);
|
||
this.WordControl.m_oLogicDocument.AddTableRow(true);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.addRowBelow = function(count)
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_AddRowBelow);
|
||
this.WordControl.m_oLogicDocument.AddTableRow(false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.addColumnLeft = function(count)
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_AddColLeft);
|
||
this.WordControl.m_oLogicDocument.AddTableColumn(true);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.addColumnRight = function(count)
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_AddColRight);
|
||
this.WordControl.m_oLogicDocument.AddTableColumn(false);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.remRow = function()
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_RemoveRow);
|
||
this.WordControl.m_oLogicDocument.RemoveTableRow();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.remColumn = function()
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_RemoveCol);
|
||
this.WordControl.m_oLogicDocument.RemoveTableColumn();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.remTable = function()
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_RemoveTable);
|
||
this.WordControl.m_oLogicDocument.RemoveTable();
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_DistributeTableCells = function(isHorizontally)
|
||
{
|
||
var oLogicDocument = this.WordControl.m_oLogicDocument;
|
||
if (!oLogicDocument)
|
||
return;
|
||
|
||
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Document_DistributeTableCells);
|
||
if (!oLogicDocument.DistributeTableCells(isHorizontally))
|
||
{
|
||
oLogicDocument.History.RemoveLastPoint();
|
||
return false;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
};
|
||
asc_docs_api.prototype.selectRow = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.SelectTable(c_oAscTableSelectionType.Row);
|
||
};
|
||
asc_docs_api.prototype.selectColumn = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.SelectTable(c_oAscTableSelectionType.Column);
|
||
};
|
||
asc_docs_api.prototype.selectCell = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.SelectTable(c_oAscTableSelectionType.Cell);
|
||
};
|
||
asc_docs_api.prototype.selectTable = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.SelectTable(c_oAscTableSelectionType.Table);
|
||
};
|
||
asc_docs_api.prototype.setColumnWidth = function(width)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.setRowHeight = function(height)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_TblDistanceFromText = function(left, top, right, bottom)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.CheckBeforeMergeCells = function()
|
||
{
|
||
return this.WordControl.m_oLogicDocument.CanMergeTableCells();
|
||
};
|
||
asc_docs_api.prototype.CheckBeforeSplitCells = function()
|
||
{
|
||
return this.WordControl.m_oLogicDocument.CanSplitTableCells();
|
||
};
|
||
asc_docs_api.prototype.MergeCells = function()
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_MergeCells);
|
||
this.WordControl.m_oLogicDocument.MergeTableCells();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.SplitCell = function(Cols, Rows)
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_SplitCells);
|
||
this.WordControl.m_oLogicDocument.SplitTableCells(Cols, Rows);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.widthTable = function(width)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.put_CellsMargin = function(left, top, right, bottom)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_TblWrap = function(type)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_TblIndentLeft = function(spacing)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_Borders = function(typeBorders, size, Color)
|
||
{//если size == 0 то границы нет.
|
||
|
||
};
|
||
asc_docs_api.prototype.set_TableBackground = function(Color)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_AlignCell = function(align)
|
||
{// c_oAscAlignType.RIGHT, c_oAscAlignType.LEFT, c_oAscAlignType.CENTER
|
||
switch (align)
|
||
{
|
||
case c_oAscAlignType.LEFT :
|
||
break;
|
||
case c_oAscAlignType.CENTER :
|
||
break;
|
||
case c_oAscAlignType.RIGHT :
|
||
break;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.set_TblAlign = function(align)
|
||
{// c_oAscAlignType.RIGHT, c_oAscAlignType.LEFT, c_oAscAlignType.CENTER
|
||
switch (align)
|
||
{
|
||
case c_oAscAlignType.LEFT :
|
||
break;
|
||
case c_oAscAlignType.CENTER :
|
||
break;
|
||
case c_oAscAlignType.RIGHT :
|
||
break;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.set_SpacingBetweenCells = function(isOn, spacing)
|
||
{// c_oAscAlignType.RIGHT, c_oAscAlignType.LEFT, c_oAscAlignType.CENTER
|
||
if (isOn)
|
||
{
|
||
|
||
}
|
||
};
|
||
|
||
|
||
/*
|
||
{
|
||
TableWidth : null - галочка убрана, либо заданное значение в мм
|
||
TableSpacing : null - галочка убрана, либо заданное значение в мм
|
||
|
||
TableDefaultMargins : // маргины для всей таблицы(значение по умолчанию)
|
||
{
|
||
Left : 1.9,
|
||
Right : 1.9,
|
||
Top : 0,
|
||
Bottom : 0
|
||
}
|
||
|
||
CellMargins :
|
||
{
|
||
Left : 1.9, (null - неопределенное значение)
|
||
Right : 1.9, (null - неопределенное значение)
|
||
Top : 0, (null - неопределенное значение)
|
||
Bottom : 0, (null - неопределенное значение)
|
||
Flag : 0 - У всех выделенных ячеек значение берется из TableDefaultMargins
|
||
1 - У выделенных ячеек есть ячейки с дефолтовыми значениями, и есть со своими собственными
|
||
2 - У всех ячеек свои собственные значения
|
||
}
|
||
|
||
TableAlignment : 0, 1, 2 (слева, по центру, справа)
|
||
TableIndent : значение в мм,
|
||
TableWrappingStyle : 0, 1 (inline, flow)
|
||
TablePaddings:
|
||
{
|
||
Left : 3.2,
|
||
Right : 3.2,
|
||
Top : 0,
|
||
Bottom : 0
|
||
}
|
||
|
||
TableBorders : // границы таблицы
|
||
{
|
||
Bottom :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Left :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Right :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Top :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideH :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideV :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
}
|
||
}
|
||
|
||
CellBorders : // границы выделенных ячеек
|
||
{
|
||
ForSelectedCells : true,
|
||
|
||
Bottom :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Left :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Right :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
Top :
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideH : // данного элемента может не быть, если у выделенных ячеек
|
||
// нет горизонтальных внутренних границ
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
},
|
||
|
||
InsideV : // данного элемента может не быть, если у выделенных ячеек
|
||
// нет вертикальных внутренних границ
|
||
{
|
||
Color : { r : 0, g : 0, b : 0 },
|
||
Value : border_Single,
|
||
Size : 0.5 * g_dKoef_pt_to_mm
|
||
Space :
|
||
}
|
||
}
|
||
|
||
TableBackground :
|
||
{
|
||
Value : тип заливки(прозрачная или нет),
|
||
Color : { r : 0, g : 0, b : 0 }
|
||
}
|
||
CellsBackground : null если заливка не определена для выделенных ячеек
|
||
{
|
||
Value : тип заливки(прозрачная или нет),
|
||
Color : { r : 0, g : 0, b : 0 }
|
||
}
|
||
|
||
Position:
|
||
{
|
||
X:0,
|
||
Y:0
|
||
}
|
||
}
|
||
*/
|
||
asc_docs_api.prototype.tblApply = function(obj)
|
||
{
|
||
var doc = this.WordControl.m_oLogicDocument;
|
||
var oController = doc.GetCurrentController();
|
||
if(!oController){
|
||
return;
|
||
}
|
||
var aAdditionalObjects = oController.getConnectorsForCheck2();
|
||
if (doc.Document_Is_SelectionLocked(changestype_Drawing_Props, undefined, undefined, aAdditionalObjects) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_TblApply);
|
||
if (obj.CellBorders)
|
||
{
|
||
if (obj.CellBorders.Left && obj.CellBorders.Left.Color)
|
||
{
|
||
obj.CellBorders.Left.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellBorders.Left.Color, 0);
|
||
}
|
||
if (obj.CellBorders.Top && obj.CellBorders.Top.Color)
|
||
{
|
||
obj.CellBorders.Top.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellBorders.Top.Color, 0);
|
||
}
|
||
if (obj.CellBorders.Right && obj.CellBorders.Right.Color)
|
||
{
|
||
obj.CellBorders.Right.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellBorders.Right.Color, 0);
|
||
}
|
||
if (obj.CellBorders.Bottom && obj.CellBorders.Bottom.Color)
|
||
{
|
||
obj.CellBorders.Bottom.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellBorders.Bottom.Color, 0);
|
||
}
|
||
if (obj.CellBorders.InsideH && obj.CellBorders.InsideH.Color)
|
||
{
|
||
obj.CellBorders.InsideH.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellBorders.InsideH.Color, 0);
|
||
}
|
||
if (obj.CellBorders.InsideV && obj.CellBorders.InsideV.Color)
|
||
{
|
||
obj.CellBorders.InsideV.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellBorders.InsideV.Color, 0);
|
||
}
|
||
}
|
||
if (obj.CellsBackground && obj.CellsBackground.Color)
|
||
{
|
||
obj.CellsBackground.Unifill = AscFormat.CreateUnifillFromAscColor(obj.CellsBackground.Color, 0);
|
||
}
|
||
this.WordControl.m_oLogicDocument.SetTableProps(obj);
|
||
}
|
||
};
|
||
/*callbacks*/
|
||
asc_docs_api.prototype.sync_AddTableCallback = function()
|
||
{
|
||
this.sendEvent("asc_onAddTable");
|
||
};
|
||
asc_docs_api.prototype.sync_AlignCellCallback = function(align)
|
||
{
|
||
this.sendEvent("asc_onAlignCell", align);
|
||
};
|
||
asc_docs_api.prototype.sync_TblPropCallback = function(tblProp)
|
||
{
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Table, new Asc.CTableProp(tblProp));
|
||
};
|
||
asc_docs_api.prototype.sync_TblWrapStyleChangedCallback = function(style)
|
||
{
|
||
this.sendEvent("asc_onTblWrapStyleChanged", style);
|
||
};
|
||
asc_docs_api.prototype.sync_TblAlignChangedCallback = function(style)
|
||
{
|
||
this.sendEvent("asc_onTblAlignChanged", style);
|
||
};
|
||
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with images*/
|
||
asc_docs_api.prototype.ChangeImageFromFile = function()
|
||
{
|
||
this.isImageChangeUrl = true;
|
||
this.asc_addImage();
|
||
};
|
||
asc_docs_api.prototype.ChangeShapeImageFromFile = function(type)
|
||
{
|
||
this.isShapeImageChangeUrl = true;
|
||
this.textureType = type;
|
||
this.asc_addImage();
|
||
};
|
||
asc_docs_api.prototype.ChangeSlideImageFromFile = function(type)
|
||
{
|
||
this.isSlideImageChangeUrl = true;
|
||
this.textureType = type;
|
||
this.asc_addImage();
|
||
};
|
||
asc_docs_api.prototype.ChangeArtImageFromFile = function(type)
|
||
{
|
||
this.isTextArtChangeUrl = true;
|
||
this.textureType = type;
|
||
this.asc_addImage();
|
||
};
|
||
|
||
asc_docs_api.prototype.AddImage = function()
|
||
{
|
||
this.asc_addImage();
|
||
};
|
||
asc_docs_api.prototype.StartAddShape = function(prst, is_apply)
|
||
{
|
||
this.WordControl.m_oLogicDocument.StartAddShape(prst, is_apply);
|
||
|
||
if (is_apply)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.LockCursorType("crosshair");
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_addOleObjectAction = function(sLocalUrl, sData, sApplicationId, fWidth, fHeight, nWidthPix, nHeightPix)
|
||
{
|
||
var _image = this.ImageLoader.LoadImage(AscCommon.getFullImageSrc2(sLocalUrl), 1);
|
||
if (null != _image)//картинка уже должна быть загружена
|
||
{
|
||
this.WordControl.m_oLogicDocument.AddOleObject(fWidth, fHeight, nWidthPix, nHeightPix, sLocalUrl, sData, sApplicationId);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_editOleObjectAction = function(bResize, oOleObject, sImageUrl, sData, nPixWidth, nPixHeight)
|
||
{
|
||
if (oOleObject)
|
||
{
|
||
this.WordControl.m_oLogicDocument.EditOleObject(oOleObject, sData, sImageUrl, nPixWidth, nPixHeight);
|
||
this.WordControl.m_oLogicDocument.Recalculate();
|
||
}
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.asc_startEditCurrentOleObject = function(){
|
||
if(this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage])
|
||
this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage].graphicObjects.startEditCurrentOleObject();
|
||
};
|
||
|
||
|
||
// signatures
|
||
asc_docs_api.prototype.asc_addSignatureLine = function (sGuid, sSigner, sSigner2, sEmail, Width, Height, sImgUrl) {
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false){
|
||
this.WordControl.m_oLogicDocument.AddSignatureLine(sGuid, sSigner, sSigner2, sEmail, Width, Height, sImgUrl);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_getAllSignatures = function(){
|
||
return this.WordControl.m_oLogicDocument.GetAllSignatures();
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.asc_CallSignatureDblClickEvent = function(sGuid){
|
||
return this.WordControl.m_oLogicDocument.CallSignatureDblClickEvent(sGuid);
|
||
};
|
||
//-------------------------------------------------------
|
||
|
||
asc_docs_api.prototype.AddTextArt = function(nStyle)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.AddTextArt(nStyle);
|
||
}
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.canGroup = function()
|
||
{
|
||
return this.WordControl.m_oLogicDocument.canGroup();
|
||
};
|
||
|
||
asc_docs_api.prototype.canUnGroup = function()
|
||
{
|
||
return this.WordControl.m_oLogicDocument.canUnGroup();
|
||
};
|
||
|
||
asc_docs_api.prototype._addImageUrl = function(urls)
|
||
{
|
||
if(this.isImageChangeUrl || this.isShapeImageChangeUrl || this.isSlideImageChangeUrl || this.isTextArtChangeUrl){
|
||
this.AddImageUrl(urls[0]);
|
||
}
|
||
else{
|
||
if(this.ImageLoader){
|
||
var oApi = this;
|
||
this.ImageLoader.LoadImagesWithCallback(urls, function(){
|
||
var aImages = [];
|
||
for(var i = 0; i < urls.length; ++i){
|
||
var _image = oApi.ImageLoader.LoadImage(urls[i], 1);
|
||
if(_image){
|
||
aImages.push(_image);
|
||
}
|
||
}
|
||
oApi.WordControl.m_oLogicDocument.addImages(aImages);
|
||
}, []);
|
||
}
|
||
}
|
||
};
|
||
asc_docs_api.prototype.AddImageUrl = function(url)
|
||
{
|
||
if (g_oDocumentUrls.getLocal(url))
|
||
{
|
||
this.AddImageUrlAction(url);
|
||
}
|
||
else
|
||
{
|
||
var t = this;
|
||
AscCommon.sendImgUrls(this, [url], function(data) {
|
||
|
||
if (data && data[0])
|
||
t.AddImageUrlAction(data[0].url);
|
||
|
||
}, false);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.AddImageUrlActionCallback = function(_image)
|
||
{
|
||
var _w = AscCommon.Page_Width - (AscCommon.X_Left_Margin + AscCommon.X_Right_Margin);
|
||
var _h = AscCommon.Page_Height - (AscCommon.Y_Top_Margin + AscCommon.Y_Bottom_Margin);
|
||
if (_image.Image != null)
|
||
{
|
||
var __w = Math.max((_image.Image.width * AscCommon.g_dKoef_pix_to_mm), 1);
|
||
var __h = Math.max((_image.Image.height * AscCommon.g_dKoef_pix_to_mm), 1);
|
||
_w = Math.max(5, Math.min(_w, __w));
|
||
_h = Math.max(5, Math.min((_w * __h / __w)));
|
||
}
|
||
|
||
var src = _image.src;
|
||
if (this.isShapeImageChangeUrl)
|
||
{
|
||
var AscShapeProp = new Asc.asc_CShapeProperty();
|
||
AscShapeProp.fill = new asc_CShapeFill();
|
||
AscShapeProp.fill.type = c_oAscFill.FILL_TYPE_BLIP;
|
||
AscShapeProp.fill.fill = new asc_CFillBlip();
|
||
AscShapeProp.fill.fill.asc_putUrl(src);
|
||
if(this.textureType !== null && this.textureType !== undefined){
|
||
AscShapeProp.fill.fill.asc_putType(this.textureType);
|
||
}
|
||
this.ShapeApply(AscShapeProp);
|
||
this.isShapeImageChangeUrl = false;
|
||
this.textureType = null;
|
||
}
|
||
else if (this.isSlideImageChangeUrl)
|
||
{
|
||
var AscSlideProp = new CAscSlideProps();
|
||
AscSlideProp.Background = new asc_CShapeFill();
|
||
AscSlideProp.Background.type = c_oAscFill.FILL_TYPE_BLIP;
|
||
AscSlideProp.Background.fill = new asc_CFillBlip();
|
||
AscSlideProp.Background.fill.asc_putUrl(src);
|
||
if(this.textureType !== null && this.textureType !== undefined){
|
||
AscSlideProp.Background.fill.asc_putType(this.textureType);
|
||
}
|
||
this.SetSlideProps(AscSlideProp);
|
||
this.isSlideImageChangeUrl = false;
|
||
this.textureType = null;
|
||
}
|
||
else if (this.isImageChangeUrl)
|
||
{
|
||
var AscImageProp = new Asc.asc_CImgProperty();
|
||
AscImageProp.ImageUrl = src;
|
||
this.ImgApply(AscImageProp);
|
||
this.isImageChangeUrl = false;
|
||
}
|
||
else if (this.isTextArtChangeUrl)
|
||
{
|
||
var AscShapeProp = new Asc.asc_CShapeProperty();
|
||
var oFill = new asc_CShapeFill();
|
||
oFill.type = c_oAscFill.FILL_TYPE_BLIP;
|
||
oFill.fill = new asc_CFillBlip();
|
||
oFill.fill.asc_putUrl(src);
|
||
if(this.textureType !== null && this.textureType !== undefined){
|
||
oFill.fill.asc_putType(this.textureType);
|
||
}
|
||
AscShapeProp.textArtProperties = new Asc.asc_TextArtProperties();
|
||
AscShapeProp.textArtProperties.asc_putFill(oFill);
|
||
this.ShapeApply(AscShapeProp);
|
||
this.isTextArtChangeUrl = false;
|
||
this.textureType = null;
|
||
}
|
||
else
|
||
{
|
||
var srcLocal = g_oDocumentUrls.getImageLocal(src);
|
||
if (srcLocal)
|
||
{
|
||
src = srcLocal;
|
||
}
|
||
|
||
this.WordControl.m_oLogicDocument.Add_FlowImage(_w, _h, src);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.AddImageUrlAction = function(url)
|
||
{
|
||
var _image = this.ImageLoader.LoadImage(url, 1);
|
||
if (null != _image)
|
||
{
|
||
this.AddImageUrlActionCallback(_image);
|
||
}
|
||
else
|
||
{
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadImage);
|
||
this.asyncImageEndLoaded2 = function(_image)
|
||
{
|
||
this.AddImageUrlActionCallback(_image);
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadImage);
|
||
|
||
this.asyncImageEndLoaded2 = null;
|
||
}
|
||
}
|
||
};
|
||
/* В качестве параметра передается объект класса Asc.asc_CImgProperty, он же приходит на OnImgProp
|
||
Asc.asc_CImgProperty заменяет пережнюю структуру:
|
||
если параметр не имеет значения то передвать следует null, напримере inline-картинок: в качестве left,top,bottom,right,X,Y,ImageUrl необходимо передавать null.
|
||
{
|
||
Width: 0,
|
||
Height: 0,
|
||
WrappingStyle: 0,
|
||
Paddings: { Left : 0, Top : 0, Bottom: 0, Right: 0 },
|
||
Position : {X : 0, Y : 0},
|
||
ImageUrl : ""
|
||
}
|
||
*/
|
||
asc_docs_api.prototype.ImgApply = function(obj)
|
||
{
|
||
var ImagePr = {};
|
||
ImagePr.lockAspect = obj.lockAspect;
|
||
ImagePr.Width = null === obj.Width ? null : parseFloat(obj.Width);
|
||
ImagePr.Height = null === obj.Height ? null : parseFloat(obj.Height);
|
||
|
||
ImagePr.title = obj.title;
|
||
ImagePr.description = obj.description;
|
||
|
||
if (undefined != obj.Position)
|
||
{
|
||
ImagePr.Position =
|
||
{
|
||
X : null === obj.Position.X ? null : parseFloat(obj.Position.X),
|
||
Y : null === obj.Position.Y ? null : parseFloat(obj.Position.Y)
|
||
};
|
||
}
|
||
else
|
||
{
|
||
ImagePr.Position = {X : null, Y : null};
|
||
}
|
||
|
||
ImagePr.ImageUrl = obj.ImageUrl;
|
||
|
||
|
||
if (!AscCommon.isNullOrEmptyString(ImagePr.ImageUrl))
|
||
{
|
||
var sImageUrl = null;
|
||
if (!g_oDocumentUrls.getImageLocal(ImagePr.ImageUrl))
|
||
{
|
||
sImageUrl = ImagePr.ImageUrl;
|
||
}
|
||
|
||
var oApi = this;
|
||
var fApplyCallback = function()
|
||
{
|
||
var _img = oApi.ImageLoader.LoadImage(ImagePr.ImageUrl, 1);
|
||
var srcLocal = g_oDocumentUrls.getImageLocal(ImagePr.ImageUrl);
|
||
if (srcLocal)
|
||
{
|
||
ImagePr.ImageUrl = srcLocal;
|
||
}
|
||
if (null != _img)
|
||
{
|
||
oApi.WordControl.m_oLogicDocument.SetImageProps(ImagePr);
|
||
}
|
||
else
|
||
{
|
||
oApi.asyncImageEndLoaded2 = function(_image)
|
||
{
|
||
oApi.WordControl.m_oLogicDocument.SetImageProps(ImagePr);
|
||
oApi.asyncImageEndLoaded2 = null;
|
||
}
|
||
}
|
||
};
|
||
if (!sImageUrl)
|
||
{
|
||
fApplyCallback();
|
||
}
|
||
else
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
var _url = window["AscDesktopEditor"]["LocalFileGetImageUrl"](sImageUrl);
|
||
_url = g_oDocumentUrls.getImageUrl(_url);
|
||
ImagePr.ImageUrl = _url;
|
||
fApplyCallback();
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.UploadImage);
|
||
return;
|
||
}
|
||
|
||
AscCommon.sendImgUrls(this, [sImageUrl], function(data) {
|
||
|
||
if (data && data[0])
|
||
{
|
||
ImagePr.ImageUrl = data[0].url;
|
||
fApplyCallback();
|
||
}
|
||
|
||
}, false);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
ImagePr.ImageUrl = null;
|
||
this.WordControl.m_oLogicDocument.SetImageProps(ImagePr);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.ChartApply = function(obj)
|
||
{
|
||
if (obj.ChartProperties && obj.ChartProperties.type === Asc.c_oAscChartTypeSettings.stock && this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage])
|
||
{
|
||
if (!AscFormat.CheckStockChart(this.WordControl.m_oLogicDocument.Slides[this.WordControl.m_oLogicDocument.CurPage].graphicObjects, this))
|
||
{
|
||
return;
|
||
}
|
||
}
|
||
this.WordControl.m_oLogicDocument.ChartApply(obj);
|
||
};
|
||
asc_docs_api.prototype.set_Size = function(width, height)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_ConstProportions = function(isOn)
|
||
{
|
||
if (isOn)
|
||
{
|
||
|
||
}
|
||
else
|
||
{
|
||
|
||
}
|
||
};
|
||
asc_docs_api.prototype.set_WrapStyle = function(type)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.deleteImage = function()
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_ImgDistanceFromText = function(left, top, right, bottom)
|
||
{
|
||
|
||
};
|
||
asc_docs_api.prototype.set_PositionOnPage = function(X, Y)
|
||
{//расположение от начала страницы
|
||
|
||
};
|
||
asc_docs_api.prototype.get_OriginalSizeImage = function()
|
||
{
|
||
for(var i = 0; i < this.SelectedObjectsStack.length; ++i){
|
||
if(this.SelectedObjectsStack[i].Type == c_oAscTypeSelectElement.Image && this.SelectedObjectsStack[i].Value && this.SelectedObjectsStack[i].Value.ImageUrl){
|
||
return this.SelectedObjectsStack[i].Value.asc_getOriginSize(this);
|
||
}
|
||
}
|
||
return null;
|
||
};
|
||
/*callbacks*/
|
||
asc_docs_api.prototype.sync_AddImageCallback = function()
|
||
{
|
||
this.sendEvent("asc_onAddImage");
|
||
};
|
||
asc_docs_api.prototype.sync_ImgPropCallback = function(imgProp)
|
||
{
|
||
var type = imgProp.chartProps ? c_oAscTypeSelectElement.Chart : c_oAscTypeSelectElement.Image;
|
||
var objects;
|
||
if (type === c_oAscTypeSelectElement.Chart)
|
||
{
|
||
objects = new CAscChartProp(imgProp);
|
||
}
|
||
else
|
||
{
|
||
objects = new Asc.asc_CImgProperty(imgProp);
|
||
}
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(type, objects);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_MathPropCallback = function(MathProp)
|
||
{
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Math, MathProp);
|
||
};
|
||
|
||
asc_docs_api.prototype.SetDrawingFreeze = function(bIsFreeze)
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpIsFreeze = bIsFreeze;
|
||
return;
|
||
}
|
||
|
||
this.WordControl.DrawingFreeze = bIsFreeze;
|
||
|
||
var _elem1 = document.getElementById("id_main");
|
||
if (_elem1)
|
||
{
|
||
var _elem2 = document.getElementById("id_panel_thumbnails");
|
||
var _elem3 = document.getElementById("id_panel_notes");
|
||
if (bIsFreeze)
|
||
{
|
||
_elem1.style.display = "none";
|
||
_elem2.style.display = "none";
|
||
_elem3.style.display = "none";
|
||
}
|
||
else
|
||
{
|
||
_elem1.style.display = "block";
|
||
_elem2.style.display = "block";
|
||
_elem3.style.display = "block";
|
||
}
|
||
}
|
||
|
||
if (!bIsFreeze)
|
||
this.WordControl.OnScroll();
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.AddShapeOnCurrentPage = function(sPreset){
|
||
if(!this.WordControl.m_oLogicDocument){
|
||
return;
|
||
}
|
||
this.WordControl.m_oLogicDocument.AddShapeOnCurrentPage(sPreset);
|
||
}
|
||
asc_docs_api.prototype.can_CopyCut = function(){
|
||
if(!this.WordControl.m_oLogicDocument){
|
||
return false;
|
||
}
|
||
return this.WordControl.m_oLogicDocument.Can_CopyCut();
|
||
}
|
||
|
||
/*----------------------------------------------------------------*/
|
||
/*functions for working with zoom & navigation*/
|
||
asc_docs_api.prototype.zoomIn = function()
|
||
{
|
||
this.WordControl.zoom_In();
|
||
};
|
||
asc_docs_api.prototype.zoomOut = function()
|
||
{
|
||
this.WordControl.zoom_Out();
|
||
};
|
||
asc_docs_api.prototype.zoomFitToPage = function()
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpZoomType = AscCommon.c_oZoomType.FitToPage;
|
||
return;
|
||
}
|
||
this.WordControl.zoom_FitToPage();
|
||
};
|
||
asc_docs_api.prototype.zoomFitToWidth = function()
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpZoomType = AscCommon.c_oZoomType.FitToWidth;
|
||
return;
|
||
}
|
||
this.WordControl.zoom_FitToWidth();
|
||
};
|
||
asc_docs_api.prototype.zoomCustomMode = function()
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpZoomType = AscCommon.c_oZoomType.CustomMode;
|
||
return;
|
||
}
|
||
this.WordControl.m_nZoomType = 0;
|
||
this.WordControl.zoom_Fire();
|
||
};
|
||
asc_docs_api.prototype.zoom100 = function()
|
||
{
|
||
this.WordControl.m_nZoomValue = 100;
|
||
this.WordControl.zoom_Fire();
|
||
};
|
||
asc_docs_api.prototype.zoom = function(percent)
|
||
{
|
||
this.WordControl.m_nZoomValue = percent;
|
||
this.WordControl.zoom_Fire(0);
|
||
};
|
||
asc_docs_api.prototype.goToPage = function(number)
|
||
{
|
||
this.WordControl.GoToPage(number);
|
||
};
|
||
asc_docs_api.prototype.getCountPages = function()
|
||
{
|
||
return this.WordControl.m_oDrawingDocument.SlidesCount;
|
||
};
|
||
asc_docs_api.prototype.getCurrentPage = function()
|
||
{
|
||
return this.WordControl.m_oDrawingDocument.SlideCurrent;
|
||
};
|
||
/*callbacks*/
|
||
asc_docs_api.prototype.sync_zoomChangeCallback = function(percent, type)
|
||
{ //c_oAscZoomType.Current, c_oAscZoomType.FitWidth, c_oAscZoomType.FitPage
|
||
this.sendEvent("asc_onZoomChange", percent, type);
|
||
};
|
||
asc_docs_api.prototype.sync_countPagesCallback = function(count)
|
||
{
|
||
this.sendEvent("asc_onCountPages", count);
|
||
};
|
||
asc_docs_api.prototype.sync_currentPageCallback = function(number)
|
||
{
|
||
this.sendEvent("asc_onCurrentPage", number);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_SendThemeColors = function(colors, standart_colors)
|
||
{
|
||
this.sendEvent("asc_onSendThemeColors", colors, standart_colors);
|
||
};
|
||
|
||
asc_docs_api.prototype.ChangeColorScheme = function(index_scheme)
|
||
{
|
||
var scheme = AscCommon.getColorThemeByIndex(index_scheme);
|
||
if (!scheme)
|
||
{
|
||
index_scheme -= AscCommon.g_oUserColorScheme.length;
|
||
if (null == this.WordControl.MasterLayouts)
|
||
return;
|
||
|
||
var theme = this.WordControl.MasterLayouts.Theme;
|
||
if (null == theme)
|
||
return;
|
||
|
||
if (index_scheme < 0 || index_scheme >= theme.extraClrSchemeLst.length)
|
||
return;
|
||
|
||
scheme = theme.extraClrSchemeLst[index_scheme].clrScheme;
|
||
}
|
||
|
||
this.WordControl.m_oLogicDocument.changeColorScheme(scheme);
|
||
this.WordControl.m_oDrawingDocument.CheckGuiControlColors();
|
||
};
|
||
|
||
/*----------------------------------------------------------------*/
|
||
asc_docs_api.prototype.asc_enableKeyEvents = function(value, isFromInput)
|
||
{
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpFocus = value;
|
||
return;
|
||
}
|
||
|
||
if (this.WordControl && this.WordControl.IsFocus != value)
|
||
{
|
||
this.WordControl.IsFocus = value;
|
||
this.sendEvent("asc_onEnableKeyEventsChanged", value);
|
||
}
|
||
|
||
if (isFromInput !== true && AscCommon.g_inputContext)
|
||
AscCommon.g_inputContext.setInterfaceEnableKeyEvents(value);
|
||
};
|
||
|
||
|
||
//-----------------------------------------------------------------
|
||
// Функции для работы с комментариями
|
||
//-----------------------------------------------------------------
|
||
function asc_CCommentData(obj)
|
||
{
|
||
if (obj)
|
||
{
|
||
this.m_sText = (undefined != obj.m_sText ) ? obj.m_sText : "";
|
||
this.m_sTime = (undefined != obj.m_sTime ) ? obj.m_sTime : "";
|
||
this.m_sOOTime = (undefined != obj.m_sOOTime ) ? obj.m_sOOTime : "";
|
||
this.m_sUserId = (undefined != obj.m_sUserId ) ? obj.m_sUserId : "";
|
||
this.m_sQuoteText = (undefined != obj.m_sQuoteText) ? obj.m_sQuoteText : null;
|
||
this.m_bSolved = (undefined != obj.m_bSolved ) ? obj.m_bSolved : false;
|
||
this.m_sUserName = (undefined != obj.m_sUserName ) ? obj.m_sUserName : "";
|
||
this.bDocument = (undefined != obj.bDocument ) ? obj.bDocument : false;
|
||
this.m_aReplies = [];
|
||
if (undefined != obj.m_aReplies)
|
||
{
|
||
var Count = obj.m_aReplies.length;
|
||
for (var Index = 0; Index < Count; Index++)
|
||
{
|
||
var Reply = new asc_CCommentData(obj.m_aReplies[Index]);
|
||
this.m_aReplies.push(Reply);
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
this.m_sText = "";
|
||
this.m_sTime = "";
|
||
this.m_sOOTime = "";
|
||
this.m_sUserId = "";
|
||
this.m_sQuoteText = null;
|
||
this.m_bSolved = false;
|
||
this.m_sUserName = "";
|
||
this.m_aReplies = [];
|
||
this.bDocument = false;
|
||
}
|
||
}
|
||
|
||
asc_CCommentData.prototype.asc_getText = function()
|
||
{
|
||
return this.m_sText;
|
||
};
|
||
asc_CCommentData.prototype.asc_putText = function(v)
|
||
{
|
||
this.m_sText = v ? v.slice(0, Asc.c_oAscMaxCellOrCommentLength) : v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getTime = function()
|
||
{
|
||
return this.m_sTime;
|
||
};
|
||
asc_CCommentData.prototype.asc_putTime = function(v)
|
||
{
|
||
this.m_sTime = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getOnlyOfficeTime = function()
|
||
{
|
||
return this.m_sOOTime;
|
||
};
|
||
asc_CCommentData.prototype.asc_putOnlyOfficeTime = function(v)
|
||
{
|
||
this.m_sOOTime = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getUserId = function()
|
||
{
|
||
return this.m_sUserId;
|
||
};
|
||
asc_CCommentData.prototype.asc_putUserId = function(v)
|
||
{
|
||
this.m_sUserId = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getUserName = function()
|
||
{
|
||
return this.m_sUserName;
|
||
};
|
||
asc_CCommentData.prototype.asc_putUserName = function(v)
|
||
{
|
||
this.m_sUserName = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getQuoteText = function()
|
||
{
|
||
return this.m_sQuoteText;
|
||
};
|
||
asc_CCommentData.prototype.asc_putQuoteText = function(v)
|
||
{
|
||
this.m_sQuoteText = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getSolved = function()
|
||
{
|
||
return this.m_bSolved;
|
||
};
|
||
asc_CCommentData.prototype.asc_putSolved = function(v)
|
||
{
|
||
this.m_bSolved = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getReply = function(i)
|
||
{
|
||
return this.m_aReplies[i];
|
||
};
|
||
asc_CCommentData.prototype.asc_addReply = function(v)
|
||
{
|
||
this.m_aReplies.push(v);
|
||
};
|
||
asc_CCommentData.prototype.asc_getRepliesCount = function(v)
|
||
{
|
||
return this.m_aReplies.length;
|
||
};
|
||
asc_CCommentData.prototype.asc_putDocumentFlag = function(v)
|
||
{
|
||
this.bDocument = v;
|
||
};
|
||
asc_CCommentData.prototype.asc_getDocumentFlag = function()
|
||
{
|
||
return this.bDocument;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_showComments = function()
|
||
{
|
||
if (null == this.WordControl.m_oLogicDocument)
|
||
return;
|
||
|
||
this.WordControl.m_oLogicDocument.ShowComments();
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_hideComments = function()
|
||
{
|
||
if (null == this.WordControl.m_oLogicDocument)
|
||
return;
|
||
|
||
this.WordControl.m_oLogicDocument.HideComments();
|
||
editor.sync_HideComment();
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_addComment = function(AscCommentData)
|
||
{
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_getMasterCommentId = function()
|
||
{
|
||
return -1;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_getAnchorPosition = function()
|
||
{
|
||
var AnchorPos = this.WordControl.m_oLogicDocument.GetSelectionAnchorPos();
|
||
return new AscCommon.asc_CRect(AnchorPos.X0, AnchorPos.Y, AnchorPos.X1 - AnchorPos.X0, 0);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_removeComment = function(Id)
|
||
{
|
||
if (null == this.WordControl.m_oLogicDocument)
|
||
return;
|
||
|
||
var comment = g_oTableId.Get_ById(Id);
|
||
if(!comment)
|
||
{
|
||
return;
|
||
}
|
||
var oComments = comment.Parent;
|
||
if(!oComments)
|
||
{
|
||
return;
|
||
}
|
||
var bPresComments = (oComments === this.WordControl.m_oLogicDocument.comments);
|
||
var nCheckType = bPresComments ? AscCommon.changestype_AddComment : AscCommon.changestype_MoveComment;
|
||
var oCheckData = bPresComments ? comment : Id;
|
||
if (this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(nCheckType, oCheckData, this.WordControl.m_oLogicDocument.IsEditCommentsMode()) === false)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_RemoveComment);
|
||
this.WordControl.m_oLogicDocument.RemoveComment(Id, true);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_changeComment = function(Id, AscCommentData)
|
||
{
|
||
if (null == this.WordControl.m_oLogicDocument)
|
||
return;
|
||
|
||
//if ( false === this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_MoveComment, Id ) )
|
||
{
|
||
var CommentData = new AscCommon.CCommentData();
|
||
CommentData.Read_FromAscCommentData(AscCommentData);
|
||
|
||
this.WordControl.m_oLogicDocument.EditComment(Id, CommentData);
|
||
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_selectComment = function(Id)
|
||
{
|
||
if (null == this.WordControl.m_oLogicDocument)
|
||
return;
|
||
|
||
this.WordControl.m_oLogicDocument.SelectComment(Id);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_showComment = function(Id)
|
||
{
|
||
this.WordControl.m_oLogicDocument.ShowComment(Id);
|
||
};
|
||
|
||
asc_docs_api.prototype.can_AddQuotedComment = function()
|
||
{
|
||
//if ( true === CollaborativeEditing.Get_GlobalLock() )
|
||
// return false;
|
||
|
||
return this.WordControl.m_oLogicDocument.CanAddComment();
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_RemoveComment = function(Id)
|
||
{
|
||
this.sendEvent("asc_onRemoveComment", Id);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_AddComment = function(Id, CommentData)
|
||
{
|
||
if (this.bNoSendComments === false)
|
||
{
|
||
var AscCommentData = new asc_CCommentData(CommentData);
|
||
AscCommentData.asc_putQuoteText("");
|
||
this.sendEvent("asc_onAddComment", Id, AscCommentData);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_ShowComment = function(Id, X, Y)
|
||
{
|
||
/*
|
||
if (this.WordControl.m_oMainContent)
|
||
{
|
||
X -= ((this.WordControl.m_oMainContent.Bounds.L * g_dKoef_mm_to_pix) >> 0);
|
||
}
|
||
*/
|
||
// TODO: Переделать на нормальный массив
|
||
this.sendEvent("asc_onShowComment", [Id], X, Y);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_HideComment = function()
|
||
{
|
||
this.sendEvent("asc_onHideComment");
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_UpdateCommentPosition = function(Id, X, Y)
|
||
{
|
||
// TODO: Переделать на нормальный массив
|
||
this.sendEvent("asc_onUpdateCommentPosition", [Id], X, Y);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_ChangeCommentData = function(Id, CommentData)
|
||
{
|
||
var AscCommentData = new asc_CCommentData(CommentData);
|
||
this.sendEvent("asc_onChangeCommentData", Id, AscCommentData);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_LockComment = function(Id, UserId)
|
||
{
|
||
this.sendEvent("asc_onLockComment", Id, UserId);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_UnLockComment = function(Id)
|
||
{
|
||
this.sendEvent("asc_onUnLockComment", Id);
|
||
};
|
||
|
||
// работа с шрифтами
|
||
asc_docs_api.prototype.asyncFontsDocumentStartLoaded = function()
|
||
{
|
||
// здесь прокинуть евент о заморозке меню
|
||
// и нужно вывести информацию в статус бар
|
||
if (this.isPasteFonts_Images)
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadFont);
|
||
else
|
||
{
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadDocumentFonts);
|
||
|
||
// заполним прогресс
|
||
var _progress = this.OpenDocumentProgress;
|
||
_progress.Type = c_oAscAsyncAction.LoadDocumentFonts;
|
||
_progress.FontsCount = this.FontLoader.fonts_loading.length;
|
||
_progress.CurrentFont = 0;
|
||
|
||
var _loader_object = this.WordControl.m_oLogicDocument;
|
||
var _count = 0;
|
||
if (_loader_object !== undefined && _loader_object != null)
|
||
{
|
||
for (var i in _loader_object.ImageMap)
|
||
{
|
||
if (this.DocInfo.get_OfflineApp())
|
||
{
|
||
var localUrl = _loader_object.ImageMap[i];
|
||
g_oDocumentUrls.addImageUrl(localUrl, this.documentUrl + 'media/' + localUrl);
|
||
}
|
||
++_count;
|
||
}
|
||
}
|
||
|
||
_progress.ImagesCount = _count + AscCommon.g_oUserTexturePresets.length;
|
||
_progress.CurrentImage = 0;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.GenerateStyles = function()
|
||
{
|
||
return;
|
||
};
|
||
asc_docs_api.prototype.asyncFontsDocumentEndLoaded = function()
|
||
{
|
||
// все, шрифты загружены. Теперь нужно подгрузить картинки
|
||
if (this.isPasteFonts_Images)
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadFont);
|
||
else
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadDocumentFonts);
|
||
|
||
if (undefined !== this.asyncMethodCallback)
|
||
{
|
||
this.asyncMethodCallback();
|
||
this.asyncMethodCallback = undefined;
|
||
return;
|
||
}
|
||
|
||
this.EndActionLoadImages = 0;
|
||
if (this.isPasteFonts_Images)
|
||
{
|
||
var _count = 0;
|
||
for (var i in this.pasteImageMap)
|
||
++_count;
|
||
|
||
if (_count > 0)
|
||
{
|
||
this.EndActionLoadImages = 2;
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadImage);
|
||
}
|
||
|
||
this.ImageLoader.LoadDocumentImages(this.pasteImageMap, false);
|
||
return;
|
||
}
|
||
else if (this.isSaveFonts_Images)
|
||
{
|
||
var _count = 0;
|
||
for (var i in this.saveImageMap)
|
||
++_count;
|
||
|
||
if (_count > 0)
|
||
{
|
||
this.EndActionLoadImages = 2;
|
||
this.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadImage);
|
||
}
|
||
|
||
this.ImageLoader.LoadDocumentImages(this.saveImageMap, false);
|
||
return;
|
||
}
|
||
|
||
this.GenerateStyles();
|
||
// открытие после загрузки документа
|
||
|
||
var _loader_object = this.WordControl.m_oLogicDocument;
|
||
if (null == _loader_object)
|
||
_loader_object = this.WordControl.m_oDrawingDocument.m_oDocumentRenderer;
|
||
|
||
var _count = 0;
|
||
for (var i in _loader_object.ImageMap)
|
||
++_count;
|
||
|
||
// add const textures
|
||
var _st_count = AscCommon.g_oUserTexturePresets.length;
|
||
for (var i = 0; i < _st_count; i++)
|
||
_loader_object.ImageMap[_count + i] = AscCommon.g_oUserTexturePresets[i];
|
||
|
||
if (_count > 0)
|
||
{
|
||
this.EndActionLoadImages = 1;
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadDocumentImages);
|
||
}
|
||
|
||
this.ImageLoader.bIsLoadDocumentFirst = true;
|
||
this.ImageLoader.LoadDocumentImages(_loader_object.ImageMap, true);
|
||
};
|
||
asc_docs_api.prototype.asyncImagesDocumentEndLoaded = function()
|
||
{
|
||
this.ImageLoader.bIsLoadDocumentFirst = false;
|
||
var _bIsOldPaste = this.isPasteFonts_Images;
|
||
|
||
if (this.EndActionLoadImages == 1)
|
||
{
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadDocumentImages);
|
||
}
|
||
else if (this.EndActionLoadImages == 2)
|
||
{
|
||
if (_bIsOldPaste)
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadImage);
|
||
else
|
||
this.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadImage);
|
||
}
|
||
|
||
this.EndActionLoadImages = 0;
|
||
|
||
// размораживаем меню... и начинаем считать документ
|
||
if (this.isPasteFonts_Images)
|
||
{
|
||
this.isPasteFonts_Images = false;
|
||
this.pasteImageMap = null;
|
||
this.pasteCallback();
|
||
this.pasteCallback = null;
|
||
this.decrementCounterLongAction();
|
||
}
|
||
else if (this.isSaveFonts_Images)
|
||
{
|
||
this.isSaveFonts_Images = false;
|
||
this.saveImageMap = null;
|
||
this.pre_SaveCallback();
|
||
}
|
||
else
|
||
{
|
||
this.ServerImagesWaitComplete = true;
|
||
this.OpenDocumentEndCallback();
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.OpenDocumentEndCallback = function()
|
||
{
|
||
if (this.isDocumentLoadComplete || !this.ServerImagesWaitComplete || !this.ServerIdWaitComplete ||
|
||
!this.WordControl || !this.WordControl.m_oLogicDocument)
|
||
return;
|
||
|
||
var bIsScroll = false;
|
||
|
||
if (0 == this.DocumentType)
|
||
this.WordControl.m_oLogicDocument.LoadEmptyDocument();
|
||
else
|
||
{
|
||
if (this.LoadedObject)
|
||
{
|
||
if (this.LoadedObject === 1)
|
||
{
|
||
if (this.isApplyChangesOnOpenEnabled)
|
||
{
|
||
if (AscCommon.EncryptionWorker)
|
||
{
|
||
AscCommon.EncryptionWorker.init();
|
||
if (!AscCommon.EncryptionWorker.isChangesHandled)
|
||
return AscCommon.EncryptionWorker.handleChanges(AscCommon.CollaborativeEditing.m_aChanges, this, this.OpenDocumentEndCallback);
|
||
}
|
||
|
||
this.isApplyChangesOnOpenEnabled = false;
|
||
this.bNoSendComments = true;
|
||
var OtherChanges = AscCommon.CollaborativeEditing.m_aChanges.length > 0;
|
||
this._applyPreOpenLocks();
|
||
AscCommon.CollaborativeEditing.Apply_Changes();
|
||
AscCommon.CollaborativeEditing.Release_Locks();
|
||
this.bNoSendComments = false;
|
||
this.isApplyChangesOnOpen = true;
|
||
if(OtherChanges && this.isSaveFonts_Images){
|
||
return;
|
||
}
|
||
}
|
||
}
|
||
this.WordControl.m_oLogicDocument.Recalculate({Drawings : {All : true, Map : {}}});
|
||
var presentation = this.WordControl.m_oLogicDocument;
|
||
|
||
presentation.DrawingDocument.OnEndRecalculate();
|
||
|
||
|
||
this.asc_registerCallback('asc_doubleClickOnChart', function(){
|
||
// next tick
|
||
setTimeout(function() {
|
||
window.editor.WordControl.onMouseUpMainSimple();
|
||
}, 0);
|
||
});
|
||
|
||
if(!window["NATIVE_EDITOR_ENJINE"]){
|
||
|
||
this.WordControl.m_oLayoutDrawer.IsRetina = this.WordControl.bIsRetinaSupport;
|
||
|
||
this.WordControl.m_oLayoutDrawer.WidthMM = presentation.Width;
|
||
this.WordControl.m_oLayoutDrawer.HeightMM = presentation.Height;
|
||
this.WordControl.m_oMasterDrawer.WidthMM = presentation.Width;
|
||
this.WordControl.m_oMasterDrawer.HeightMM = presentation.Height;
|
||
|
||
this.WordControl.m_oLogicDocument.SendThemesThumbnails();
|
||
}
|
||
|
||
this.sendEvent("asc_onPresentationSize", presentation.Width, presentation.Height);
|
||
|
||
this.WordControl.GoToPage(0);
|
||
bIsScroll = true;
|
||
}
|
||
}
|
||
|
||
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
this.WordControl.m_oLogicDocument.Document_UpdateRulersState();
|
||
this.WordControl.m_oLogicDocument.Document_UpdateSelectionState();
|
||
this.LoadedObject = null;
|
||
this.bInit_word_control = true;
|
||
if (!this.bNoSendComments)
|
||
{
|
||
var _slides = this.WordControl.m_oLogicDocument.Slides;
|
||
var _slidesCount = _slides.length;
|
||
for (var i = 0; i < _slidesCount; i++)
|
||
{
|
||
var slideComments = _slides[i].slideComments;
|
||
if (slideComments)
|
||
{
|
||
var _comments = slideComments.comments;
|
||
var _commentsCount = _comments.length;
|
||
for (var j = 0; j < _commentsCount; j++)
|
||
{
|
||
this.sync_AddComment(_comments[j].Get_Id(), _comments[j].Data);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
var slideComments = this.WordControl.m_oLogicDocument.comments;
|
||
if (slideComments)
|
||
{
|
||
var _comments = slideComments.comments;
|
||
var _commentsCount = _comments.length;
|
||
for (var j = 0; j < _commentsCount; j++)
|
||
{
|
||
_comments[j].Data.bDocument = true;
|
||
this.sync_AddComment(_comments[j].Get_Id(), _comments[j].Data);
|
||
}
|
||
}
|
||
this.onDocumentContentReady();
|
||
this.isApplyChangesOnOpen = false;
|
||
|
||
this.WordControl.InitControl();
|
||
if (bIsScroll)
|
||
{
|
||
this.WordControl.OnScroll();
|
||
}
|
||
|
||
if (!this.isViewMode)
|
||
{
|
||
this.sendStandartTextures();
|
||
this.sendMathToMenu();
|
||
if (this.shapeElementId)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.InitGuiCanvasShape(this.shapeElementId);
|
||
}
|
||
}
|
||
|
||
if (this.isViewMode)
|
||
this.asc_setViewMode(true);
|
||
|
||
// Меняем тип состояния (на никакое)
|
||
this.advancedOptionsAction = AscCommon.c_oAscAdvancedOptionsAction.None;
|
||
};
|
||
|
||
|
||
asc_docs_api.prototype.asc_AddMath = function(Type)
|
||
{
|
||
var loader = AscCommon.g_font_loader;
|
||
var fontinfo = AscFonts.g_fontApplication.GetFontInfo("Cambria Math");
|
||
var isasync = loader.LoadFont(fontinfo);
|
||
if (false === isasync)
|
||
{
|
||
return this.asc_AddMath2(Type);
|
||
}
|
||
else
|
||
{
|
||
this.asyncMethodCallback = function()
|
||
{
|
||
return this.asc_AddMath2(Type);
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_AddMath2 = function(Type)
|
||
{
|
||
if (false === this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_Paragraph_Content))
|
||
{
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Document_AddMath);
|
||
var MathElement = new AscCommonWord.MathMenu(Type);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(MathElement, false);
|
||
}
|
||
};
|
||
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
// Работаем с формулами
|
||
//----------------------------------------------------------------------------------------------------------------------
|
||
asc_docs_api.prototype.asc_SetMathProps = function(MathProps)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Set_MathProps(MathProps);
|
||
};
|
||
|
||
|
||
|
||
asc_docs_api.prototype.asyncFontEndLoaded = function(fontinfo)
|
||
{
|
||
this.sync_EndAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.LoadFont);
|
||
|
||
if (undefined !== this.asyncMethodCallback)
|
||
{
|
||
this.asyncMethodCallback();
|
||
this.asyncMethodCallback = undefined;
|
||
return;
|
||
}
|
||
|
||
if (editor.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ParagraphAdd);
|
||
this.WordControl.m_oLogicDocument.AddToParagraph(new AscCommonWord.ParaTextPr({
|
||
FontFamily : {
|
||
Name : fontinfo.Name,
|
||
Index : -1
|
||
}
|
||
}), false);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_replaceLoadImageCallback = function(fCallback)
|
||
{
|
||
this.asyncImageEndLoaded2 = fCallback;
|
||
};
|
||
|
||
asc_docs_api.prototype.asyncImageEndLoaded = function(_image)
|
||
{
|
||
// отжать заморозку меню
|
||
if (this.asyncImageEndLoaded2)
|
||
this.asyncImageEndLoaded2(_image);
|
||
else
|
||
{
|
||
this.WordControl.m_oLogicDocument.Add_FlowImage(50, 50, _image.src);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.openDocument = function(sData)
|
||
{
|
||
this.OpenDocument2(sData.url, sData.data);
|
||
this.DocumentOrientation = (null == this.WordControl.m_oLogicDocument) ? true : !this.WordControl.m_oLogicDocument.Orientation;
|
||
this.sync_DocSizeCallback(AscCommon.Page_Width, AscCommon.Page_Height);
|
||
this.sync_PageOrientCallback(this.get_DocumentOrientation());
|
||
};
|
||
|
||
asc_docs_api.prototype.get_PresentationWidth = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument == null)
|
||
return 0;
|
||
return this.WordControl.m_oLogicDocument.Width;
|
||
};
|
||
asc_docs_api.prototype.get_PresentationHeight = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument == null)
|
||
return 0;
|
||
return this.WordControl.m_oLogicDocument.Height;
|
||
};
|
||
|
||
asc_docs_api.prototype.pre_Paste = function(_fonts, _images, callback)
|
||
{
|
||
this.pasteCallback = callback;
|
||
this.pasteImageMap = _images;
|
||
|
||
var _count = 0;
|
||
for (var i in this.pasteImageMap)
|
||
++_count;
|
||
|
||
AscFonts.FontPickerByCharacter.extendFonts(_fonts);
|
||
if (0 == _count && false === this.FontLoader.CheckFontsNeedLoading(_fonts))
|
||
{
|
||
// никаких евентов. ничего грузить не нужно. сделано для сафари под макОс.
|
||
// там при LongActions теряется фокус и вставляются пробелы
|
||
this.pasteCallback();
|
||
this.pasteCallback = null;
|
||
return;
|
||
}
|
||
|
||
this.incrementCounterLongAction();
|
||
this.isPasteFonts_Images = true;
|
||
this.FontLoader.LoadDocumentFonts2(_fonts);
|
||
};
|
||
|
||
asc_docs_api.prototype.pre_SaveCallback = function()
|
||
{
|
||
AscCommon.CollaborativeEditing.OnEnd_Load_Objects();
|
||
|
||
if (this.isApplyChangesOnOpen)
|
||
{
|
||
this.isApplyChangesOnOpen = false;
|
||
this.OpenDocumentEndCallback();
|
||
}
|
||
|
||
this.WordControl.SlideDrawer.CheckRecalculateSlide();
|
||
};
|
||
|
||
asc_docs_api.prototype.initEvents2MobileAdvances = function()
|
||
{
|
||
this.WordControl.initEvents2MobileAdvances();
|
||
};
|
||
asc_docs_api.prototype.ViewScrollToX = function(x)
|
||
{
|
||
this.WordControl.m_oScrollHorApi.scrollToX(x);
|
||
};
|
||
asc_docs_api.prototype.ViewScrollToY = function(y)
|
||
{
|
||
this.WordControl.m_oScrollVerApi.scrollToY(y);
|
||
};
|
||
asc_docs_api.prototype.GetDocWidthPx = function()
|
||
{
|
||
return this.WordControl.m_dDocumentWidth;
|
||
};
|
||
asc_docs_api.prototype.GetDocHeightPx = function()
|
||
{
|
||
return this.WordControl.m_dDocumentHeight;
|
||
};
|
||
asc_docs_api.prototype.ClearSearch = function()
|
||
{
|
||
return this.WordControl.m_oDrawingDocument.EndSearch(true);
|
||
};
|
||
asc_docs_api.prototype.GetCurrentVisiblePage = function()
|
||
{
|
||
return this.WordControl.m_oDrawingDocument.SlideCurrent;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SetDocumentPlaceChangedEnabled = function(bEnabled)
|
||
{
|
||
if (this.WordControl)
|
||
this.WordControl.m_bDocumentPlaceChangedEnabled = bEnabled;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_SetViewRulers = function(bRulers)
|
||
{
|
||
//if (false === this.bInit_word_control || true === this.isViewMode)
|
||
// return;
|
||
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
this.tmpViewRulers = bRulers;
|
||
return;
|
||
}
|
||
|
||
if (this.WordControl.m_bIsRuler != bRulers)
|
||
{
|
||
this.WordControl.m_bIsRuler = bRulers;
|
||
this.WordControl.checkNeedRules();
|
||
this.WordControl.OnResize(true);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.asc_SetViewRulersChange = function()
|
||
{
|
||
//if (false === this.bInit_word_control || true === this.isViewMode)
|
||
// return;
|
||
|
||
this.WordControl.m_bIsRuler = !this.WordControl.m_bIsRuler;
|
||
this.WordControl.checkNeedRules();
|
||
this.WordControl.OnResize(true);
|
||
return this.WordControl.m_bIsRuler;
|
||
};
|
||
asc_docs_api.prototype.asc_GetViewRulers = function()
|
||
{
|
||
return this.WordControl.m_bIsRuler;
|
||
};
|
||
asc_docs_api.prototype.asc_SetDocumentUnits = function(_units)
|
||
{
|
||
if (this.WordControl && this.WordControl.m_oHorRuler && this.WordControl.m_oVerRuler)
|
||
{
|
||
this.WordControl.m_oHorRuler.Units = _units;
|
||
this.WordControl.m_oVerRuler.Units = _units;
|
||
this.WordControl.UpdateHorRulerBack(true);
|
||
this.WordControl.UpdateVerRulerBack(true);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.GoToHeader = function(pageNumber)
|
||
{
|
||
if (this.WordControl.m_oDrawingDocument.IsFreezePage(pageNumber))
|
||
return;
|
||
|
||
var oldClickCount = global_mouseEvent.ClickCount;
|
||
global_mouseEvent.ClickCount = 2;
|
||
this.WordControl.m_oLogicDocument.OnMouseDown(global_mouseEvent, 0, 0, pageNumber);
|
||
this.WordControl.m_oLogicDocument.OnMouseUp(global_mouseEvent, 0, 0, pageNumber);
|
||
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
|
||
global_mouseEvent.ClickCount = oldClickCount;
|
||
};
|
||
|
||
asc_docs_api.prototype.changeSlideSize = function(width, height)
|
||
{
|
||
if (this.isMobileVersion && this.WordControl.MobileTouchManager)
|
||
this.WordControl.MobileTouchManager.BeginZoomCheck();
|
||
|
||
this.WordControl.m_oLogicDocument.changeSlideSize(width, height);
|
||
|
||
if (this.isMobileVersion && this.WordControl.MobileTouchManager)
|
||
this.WordControl.MobileTouchManager.EndZoomCheck();
|
||
};
|
||
|
||
asc_docs_api.prototype.AddSlide = function(layoutIndex)
|
||
{
|
||
this.WordControl.m_oLogicDocument.addNextSlide(layoutIndex);
|
||
};
|
||
asc_docs_api.prototype.DeleteSlide = function()
|
||
{
|
||
var _delete_array = this.WordControl.Thumbnails.GetSelectedArray();
|
||
|
||
if (!this.IsSupportEmptyPresentation)
|
||
{
|
||
if (_delete_array.length == this.WordControl.m_oDrawingDocument.SlidesCount)
|
||
_delete_array.splice(0, 1);
|
||
}
|
||
|
||
if (_delete_array.length != 0)
|
||
{
|
||
this.WordControl.m_oLogicDocument.deleteSlides(_delete_array);
|
||
}
|
||
};
|
||
asc_docs_api.prototype.DublicateSlide = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.DublicateSlide();
|
||
};
|
||
|
||
asc_docs_api.prototype.SelectAllSlides = function(layoutType)
|
||
{
|
||
var drDoc = this.WordControl.m_oDrawingDocument;
|
||
var slidesCount = drDoc.SlidesCount;
|
||
|
||
for (var i = 0; i < slidesCount; i++)
|
||
{
|
||
this.WordControl.Thumbnails.m_arrPages[i].IsSelected = true;
|
||
}
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
this.WordControl.Thumbnails.OnUpdateOverlay();
|
||
};
|
||
|
||
asc_docs_api.prototype.AddShape = function(shapetype)
|
||
{
|
||
};
|
||
asc_docs_api.prototype.ChangeShapeType = function(shapetype)
|
||
{
|
||
this.WordControl.m_oLogicDocument.changeShapeType(shapetype);
|
||
};
|
||
asc_docs_api.prototype.AddText = function()
|
||
{
|
||
};
|
||
|
||
asc_docs_api.prototype["asc_IsSpellCheckCurrentWord"] = function()
|
||
{
|
||
return this.IsSpellCheckCurrentWord;
|
||
};
|
||
asc_docs_api.prototype["asc_putSpellCheckCurrentWord"] = function(value)
|
||
{
|
||
this.IsSpellCheckCurrentWord = value;
|
||
};
|
||
|
||
asc_docs_api.prototype.groupShapes = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.groupShapes();
|
||
};
|
||
|
||
asc_docs_api.prototype.unGroupShapes = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.unGroupShapes();
|
||
};
|
||
|
||
asc_docs_api.prototype.setVerticalAlign = function(align)
|
||
{
|
||
this.WordControl.m_oLogicDocument.setVerticalAlign(align);
|
||
};
|
||
|
||
asc_docs_api.prototype.setVert = function(vert)
|
||
{
|
||
this.WordControl.m_oLogicDocument.setVert(vert);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_MouseMoveStartCallback = function()
|
||
{
|
||
this.sendEvent("asc_onMouseMoveStart");
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_MouseMoveEndCallback = function()
|
||
{
|
||
this.sendEvent("asc_onMouseMoveEnd");
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_MouseMoveCallback = function(Data)
|
||
{
|
||
if (Data.Hyperlink && typeof Data.Hyperlink.Value === "string")
|
||
{
|
||
var indAction = Data.Hyperlink.Value.indexOf("ppaction://hlink");
|
||
var Url = Data.Hyperlink.Value;
|
||
if (0 == indAction)
|
||
{
|
||
if (Url == "ppaction://hlinkshowjump?jump=firstslide")
|
||
{
|
||
Data.Hyperlink.Value = "First Slide";
|
||
}
|
||
else if (Url == "ppaction://hlinkshowjump?jump=lastslide")
|
||
{
|
||
Data.Hyperlink.Value = "Last Slide";
|
||
}
|
||
else if (Url == "ppaction://hlinkshowjump?jump=nextslide")
|
||
{
|
||
Data.Hyperlink.Value = "Next Slide";
|
||
}
|
||
else if (Url == "ppaction://hlinkshowjump?jump=previousslide")
|
||
{
|
||
Data.Hyperlink.Value = "Previous Slide";
|
||
}
|
||
else
|
||
{
|
||
var mask = "ppaction://hlinksldjumpslide";
|
||
var indSlide = Url.indexOf(mask);
|
||
if (0 == indSlide)
|
||
{
|
||
var slideNum = parseInt(Url.substring(mask.length));
|
||
Data.Hyperlink.Value = "Slide" + slideNum;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
this.sendEvent("asc_onMouseMove", Data);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_ShowForeignCursorLabel = function(UserId, X, Y, Color)
|
||
{
|
||
if (this.WordControl.m_oLogicDocument.IsFocusOnNotes())
|
||
{
|
||
Y += parseInt(this.WordControl.m_oNotesContainer.HtmlElement.style.top);
|
||
}
|
||
this.sendEvent("asc_onShowForeignCursorLabel", UserId, X, Y, new AscCommon.CColor(Color.r, Color.g, Color.b, 255));
|
||
};
|
||
asc_docs_api.prototype.sync_HideForeignCursorLabel = function(UserId)
|
||
{
|
||
this.sendEvent("asc_onHideForeignCursorLabel", UserId);
|
||
};
|
||
|
||
asc_docs_api.prototype.ShowThumbnails = function(bIsShow)
|
||
{
|
||
if (bIsShow)
|
||
{
|
||
this.WordControl.Splitter1Pos = this.WordControl.OldSplitter1Pos;
|
||
if (this.WordControl.Splitter1Pos == 0)
|
||
this.WordControl.Splitter1Pos = 70;
|
||
this.WordControl.OnResizeSplitter();
|
||
}
|
||
else
|
||
{
|
||
var old = this.WordControl.OldSplitter1Pos;
|
||
this.WordControl.Splitter1Pos = 0;
|
||
this.WordControl.OnResizeSplitter();
|
||
this.WordControl.OldSplitter1Pos = old;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.asc_DeleteVerticalScroll = function()
|
||
{
|
||
this.WordControl.DeleteVerticalScroll();
|
||
};
|
||
|
||
asc_docs_api.prototype.syncOnThumbnailsShow = function()
|
||
{
|
||
var bIsShow = true;
|
||
if (0 == this.WordControl.Splitter1Pos)
|
||
bIsShow = false;
|
||
|
||
this.sendEvent("asc_onThumbnailsShow", bIsShow);
|
||
};
|
||
|
||
|
||
//-----------------------------------------------------------------
|
||
// Функции для работы с гиперссылками
|
||
//-----------------------------------------------------------------
|
||
asc_docs_api.prototype.can_AddHyperlink = function()
|
||
{
|
||
//if ( true === CollaborativeEditing.Get_GlobalLock() )
|
||
// return false;
|
||
|
||
var bCanAdd = this.WordControl.m_oLogicDocument.CanAddHyperlink();
|
||
if (true === bCanAdd)
|
||
return this.WordControl.m_oLogicDocument.GetSelectedText(true);
|
||
|
||
return false;
|
||
};
|
||
|
||
// HyperProps - объект CHyperlinkProperty
|
||
asc_docs_api.prototype.add_Hyperlink = function(HyperProps)
|
||
{
|
||
if(null !== HyperProps.Text && undefined !== HyperProps.Text)
|
||
{
|
||
AscFonts.FontPickerByCharacter.checkText(HyperProps.Text, this, function() {
|
||
|
||
this.WordControl.m_oLogicDocument.AddHyperlink(HyperProps);
|
||
|
||
});
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oLogicDocument.AddHyperlink(HyperProps);
|
||
}
|
||
};
|
||
|
||
// HyperProps - объект CHyperlinkProperty
|
||
asc_docs_api.prototype.change_Hyperlink = function(HyperProps)
|
||
{
|
||
this.WordControl.m_oLogicDocument.ModifyHyperlink(HyperProps);
|
||
};
|
||
|
||
asc_docs_api.prototype.remove_Hyperlink = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.RemoveHyperlink();
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_HyperlinkPropCallback = function(hyperProp)
|
||
{
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Hyperlink, new Asc.CHyperlinkProperty(hyperProp));
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_HyperlinkClickCallback = function(Url)
|
||
{
|
||
this.sendEvent("asc_onHyperlinkClick", Url);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_CanAddHyperlinkCallback = function(bCanAdd)
|
||
{
|
||
//if ( true === CollaborativeEditing.Get_GlobalLock() )
|
||
// this.sendEvent("asc_onCanAddHyperlink", false);
|
||
//else
|
||
this.sendEvent("asc_onCanAddHyperlink", bCanAdd);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_DialogAddHyperlink = function()
|
||
{
|
||
this.sendEvent("asc_onDialogAddHyperlink");
|
||
};
|
||
|
||
//-----------------------------------------------------------------
|
||
// Функции для работы с орфографией
|
||
//-----------------------------------------------------------------
|
||
asc_docs_api.prototype.sync_SpellCheckCallback = function(Word, Checked, Variants, ParaId, Element)
|
||
{
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.SpellCheck, new AscCommon.asc_CSpellCheckProperty(Word, Checked, Variants, ParaId, Element));
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_SpellCheckVariantsFound = function()
|
||
{
|
||
this.sendEvent("asc_onSpellCheckVariantsFound");
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_replaceMisspelledWord = function(Word, SpellCheckProperty)
|
||
{
|
||
if(this.WordControl.m_oLogicDocument){
|
||
this.WordControl.m_oLogicDocument.replaceMisspelledWord(Word, SpellCheckProperty);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_ignoreMisspelledWord = function(SpellCheckProperty, bAll)
|
||
{
|
||
if (false === bAll)
|
||
{
|
||
var ParaId = SpellCheckProperty.ParaId;
|
||
|
||
var Paragraph = g_oTableId.Get_ById(ParaId);
|
||
if (null != Paragraph)
|
||
{
|
||
Paragraph.IgnoreMisspelledWord(SpellCheckProperty.Element);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var LogicDocument = editor.WordControl.m_oLogicDocument;
|
||
LogicDocument.Spelling.Add_Word(SpellCheckProperty.Word);
|
||
LogicDocument.DrawingDocument.ClearCachePages();
|
||
LogicDocument.DrawingDocument.FirePaint();
|
||
if(LogicDocument.Slides[LogicDocument.CurPage])
|
||
{
|
||
LogicDocument.DrawingDocument.Notes_OnRecalculate(LogicDocument.CurPage,LogicDocument.NotesWidth, LogicDocument.Slides[LogicDocument.CurPage].getNotesHeight());
|
||
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_setDefaultLanguage = function(Lang)
|
||
{
|
||
if (false === this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_PresDefaultLang))
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Document_SetDefaultLanguage);
|
||
editor.WordControl.m_oLogicDocument.Set_DefaultLanguage(Lang);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_getDefaultLanguage = function()
|
||
{
|
||
return editor.WordControl.m_oLogicDocument.Get_DefaultLanguage();
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_getKeyboardLanguage = function()
|
||
{
|
||
if (undefined !== window["asc_current_keyboard_layout"])
|
||
return window["asc_current_keyboard_layout"];
|
||
return -1;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_setSpellCheck = function(isOn)
|
||
{
|
||
if (editor.WordControl.m_oLogicDocument)
|
||
{
|
||
var _presentation = editor.WordControl.m_oLogicDocument;
|
||
_presentation.Spelling.Use = isOn;
|
||
var _drawing_document = editor.WordControl.m_oDrawingDocument;
|
||
_drawing_document.ClearCachePages();
|
||
_drawing_document.FirePaint();
|
||
if(_presentation.Slides[_presentation.CurPage] && _presentation.Slides[_presentation.CurPage].notes){
|
||
_drawing_document.Notes_OnRecalculate(_presentation.CurPage, _presentation.Slides[_presentation.CurPage].NotesWidth, _presentation.Slides[_presentation.CurPage].getNotesHeight());
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.spellCheck = function(rdata)
|
||
{
|
||
// ToDo проверка на подключение
|
||
switch (rdata.type)
|
||
{
|
||
case "spell":
|
||
case "suggest":
|
||
this.SpellCheckApi.spellCheck(JSON.stringify(rdata));
|
||
break;
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_shapePropCallback = function(pr)
|
||
{
|
||
var obj = AscFormat.CreateAscShapePropFromProp(pr);
|
||
if (pr.fill != null && pr.fill.fill != null && pr.fill.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillShape(pr.fill.fill.RasterImageId);
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillShape(null);
|
||
}
|
||
|
||
var oTextArtProperties = pr.textArtProperties;
|
||
if (oTextArtProperties && oTextArtProperties.Fill && oTextArtProperties.Fill.fill && oTextArtProperties.Fill.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillTextArt(oTextArtProperties.Fill.fill.RasterImageId);
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillTextArt(null);
|
||
}
|
||
|
||
|
||
var _len = this.SelectedObjectsStack.length;
|
||
if (_len > 0)
|
||
{
|
||
if (this.SelectedObjectsStack[_len - 1].Type == c_oAscTypeSelectElement.Shape)
|
||
{
|
||
this.SelectedObjectsStack[_len - 1].Value = obj;
|
||
return;
|
||
}
|
||
}
|
||
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Shape, obj);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_slidePropCallback = function(slide)
|
||
{
|
||
if(!this.WordControl)
|
||
{
|
||
return;
|
||
}
|
||
if(!this.WordControl.m_oLogicDocument)
|
||
{
|
||
return;
|
||
}
|
||
var obj = new CAscSlideProps();
|
||
var aSlides = [];
|
||
var oPresentation = this.WordControl.m_oLogicDocument, i;
|
||
if(this.WordControl.Thumbnails){
|
||
|
||
var oTh = editor.WordControl.Thumbnails;
|
||
var aSelectedArray = oTh.GetSelectedArray();
|
||
obj.isHidden = oTh.IsSlideHidden(aSelectedArray);
|
||
for(i = 0; i < aSelectedArray.length; ++i)
|
||
{
|
||
if(oPresentation.Slides[aSelectedArray[i]])
|
||
{
|
||
aSlides.push(oPresentation.Slides[aSelectedArray[i]]);
|
||
}
|
||
}
|
||
}
|
||
else{
|
||
obj.isHidden = false;
|
||
aSlides.push(slide);
|
||
}
|
||
if (!slide)
|
||
return;
|
||
if(aSlides.length === 0)
|
||
{
|
||
aSlides.push(slide);
|
||
}
|
||
|
||
var bgFill = aSlides[0].backgroundFill ? aSlides[0].backgroundFill.createDuplicate() : aSlides[0].backgroundFill;
|
||
for(i = 1; i < aSlides.length; ++i)
|
||
{
|
||
bgFill = AscFormat.CompareUniFill(bgFill, aSlides[i].backgroundFill);
|
||
if(!bgFill){
|
||
break;
|
||
}
|
||
}
|
||
if (!bgFill)
|
||
{
|
||
obj.Background = new asc_CShapeFill();
|
||
obj.Background.type = c_oAscFill.FILL_TYPE_NOFILL;
|
||
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillSlide(null);
|
||
}
|
||
else
|
||
{
|
||
obj.Background = AscFormat.CreateAscFill(bgFill);
|
||
|
||
if (bgFill != null && bgFill.fill != null && bgFill.fill.type == c_oAscFill.FILL_TYPE_BLIP)
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillSlide(bgFill.fill.RasterImageId);
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.m_oDrawingDocument.DrawImageTextureFillSlide(null);
|
||
}
|
||
}
|
||
var timing = aSlides[0].timing ? aSlides[0].timing.createDuplicate() : aSlides[0].timing;
|
||
for(i = 1; i < aSlides.length; ++i)
|
||
{
|
||
timing = AscCommonSlide.CompareTiming(timing, aSlides[i].timing);
|
||
if(!timing){
|
||
break;
|
||
}
|
||
}
|
||
|
||
if(timing){
|
||
obj.Timing = timing.createDuplicate();
|
||
}
|
||
else{
|
||
obj.Timing = Asc.CAscSlideTiming();
|
||
}
|
||
obj.Timing.ShowLoop = this.WordControl.m_oLogicDocument.isLoopShowMode();
|
||
|
||
obj.lockDelete = !(slide.deleteLock.Lock.Type === locktype_Mine || slide.deleteLock.Lock.Type === locktype_None);
|
||
obj.lockLayout = !(slide.layoutLock.Lock.Type === locktype_Mine || slide.layoutLock.Lock.Type === locktype_None);
|
||
obj.lockTiming = !(slide.timingLock.Lock.Type === locktype_Mine || slide.timingLock.Lock.Type === locktype_None);
|
||
obj.lockTranzition = !(slide.transitionLock.Lock.Type === locktype_Mine || slide.transitionLock.Lock.Type === locktype_None);
|
||
obj.lockBackground = !(slide.backgroundLock.Lock.Type === locktype_Mine || slide.backgroundLock.Lock.Type === locktype_None);
|
||
obj.lockRemove = obj.lockDelete ||
|
||
obj.lockLayout ||
|
||
obj.lockTiming ||
|
||
obj.lockTranzition ||
|
||
obj.lockBackground || slide.isLockedObject();
|
||
|
||
if(slide && slide.Layout && slide.Layout.Master){
|
||
var aLayouts = slide.Layout.Master.sldLayoutLst;
|
||
for(i = 0; i < aLayouts.length; ++i){
|
||
if(slide.Layout === aLayouts[i]){
|
||
obj.LayoutIndex = i;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
var _len = this.SelectedObjectsStack.length;
|
||
if (_len > 0)
|
||
{
|
||
if (this.SelectedObjectsStack[_len - 1].Type == c_oAscTypeSelectElement.Slide)
|
||
{
|
||
this.SelectedObjectsStack[_len - 1].Value = obj;
|
||
return;
|
||
}
|
||
}
|
||
|
||
this.SelectedObjectsStack[this.SelectedObjectsStack.length] = new asc_CSelectedObject(c_oAscTypeSelectElement.Slide, obj);
|
||
};
|
||
|
||
asc_docs_api.prototype.ExitHeader_Footer = function(pageNumber)
|
||
{
|
||
if (this.WordControl.m_oDrawingDocument.IsFreezePage(pageNumber))
|
||
return;
|
||
|
||
var oldClickCount = global_mouseEvent.ClickCount;
|
||
global_mouseEvent.ClickCount = 2;
|
||
this.WordControl.m_oLogicDocument.OnMouseDown(global_mouseEvent, 0, AscCommon.Page_Height / 2, pageNumber);
|
||
this.WordControl.m_oLogicDocument.OnMouseUp(global_mouseEvent, 0, AscCommon.Page_Height / 2, pageNumber);
|
||
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
|
||
global_mouseEvent.ClickCount = oldClickCount;
|
||
};
|
||
|
||
asc_docs_api.prototype.GetCurrentPixOffsetY = function()
|
||
{
|
||
return this.WordControl.m_dScrollY;
|
||
};
|
||
|
||
asc_docs_api.prototype.SetPaintFormat = function(value)
|
||
{
|
||
this.isPaintFormat = value;
|
||
this.WordControl.m_oLogicDocument.Document_Format_Copy();
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_PaintFormatCallback = function(value)
|
||
{
|
||
this.isPaintFormat = value;
|
||
return this.sendEvent("asc_onPaintFormatChanged", value);
|
||
};
|
||
asc_docs_api.prototype.ClearFormating = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.ClearParagraphFormatting(false, true);
|
||
};
|
||
|
||
window.ID_KEYBOARD_AREA = undefined;
|
||
window.ID_KEYBOARD_AREA;
|
||
asc_docs_api.prototype.SetDeviceInputHelperId = function(idKeyboard)
|
||
{
|
||
if (window.ID_KEYBOARD_AREA === undefined && this.WordControl.m_oMainView != null)
|
||
{
|
||
window.ID_KEYBOARD_AREA = document.getElementById(idKeyboard);
|
||
|
||
window.ID_KEYBOARD_AREA.onkeypress = function(e)
|
||
{
|
||
if (false === editor.WordControl.IsFocus)
|
||
{
|
||
editor.WordControl.IsFocus = true;
|
||
var ret = editor.WordControl.onKeyPress(e);
|
||
editor.WordControl.IsFocus = false;
|
||
return ret;
|
||
}
|
||
};
|
||
window.ID_KEYBOARD_AREA.onkeydown = function(e)
|
||
{
|
||
if (false === editor.WordControl.IsFocus)
|
||
{
|
||
editor.WordControl.IsFocus = true;
|
||
var ret = editor.WordControl.onKeyDown(e);
|
||
editor.WordControl.IsFocus = false;
|
||
return ret;
|
||
}
|
||
};
|
||
}
|
||
window.ID_KEYBOARD_AREA.focus();
|
||
};
|
||
asc_docs_api.prototype.asc_setViewMode = function(isViewMode)
|
||
{
|
||
this.isViewMode = !!isViewMode;
|
||
if (!this.isLoadFullApi)
|
||
{
|
||
return;
|
||
}
|
||
|
||
this.WordControl.setNodesEnable((this.isMobileVersion && !this.isReporterMode) ? false : true);
|
||
if (isViewMode)
|
||
{
|
||
this.ShowParaMarks = false;
|
||
this.WordControl.m_bIsRuler = false;
|
||
this.WordControl.m_oDrawingDocument.ClearCachePages();
|
||
this.WordControl.HideRulers();
|
||
|
||
AscCommon.CollaborativeEditing.Set_GlobalLock(true);
|
||
if (null != this.WordControl.m_oLogicDocument)
|
||
{
|
||
this.WordControl.m_oLogicDocument.viewMode = true;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
this.WordControl.checkNeedRules();
|
||
this.WordControl.m_oDrawingDocument.ClearCachePages();
|
||
this.WordControl.OnResize(true);
|
||
|
||
if (null != this.WordControl.m_oLogicDocument)
|
||
{
|
||
this.WordControl.m_oLogicDocument.viewMode = false;
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_HyperlinkClickCallback = function(Url)
|
||
{
|
||
var indAction = Url.indexOf("ppaction://hlink");
|
||
if (0 == indAction)
|
||
{
|
||
if (Url == "ppaction://hlinkshowjump?jump=firstslide")
|
||
{
|
||
this.WordControl.GoToPage(0);
|
||
}
|
||
else if (Url == "ppaction://hlinkshowjump?jump=lastslide")
|
||
{
|
||
this.WordControl.GoToPage(this.WordControl.m_oDrawingDocument.SlidesCount - 1);
|
||
}
|
||
else if (Url == "ppaction://hlinkshowjump?jump=nextslide")
|
||
{
|
||
this.WordControl.onNextPage();
|
||
}
|
||
else if (Url == "ppaction://hlinkshowjump?jump=previousslide")
|
||
{
|
||
this.WordControl.onPrevPage();
|
||
}
|
||
else
|
||
{
|
||
var mask = "ppaction://hlinksldjumpslide";
|
||
var indSlide = Url.indexOf(mask);
|
||
if (0 == indSlide)
|
||
{
|
||
var slideNum = parseInt(Url.substring(mask.length));
|
||
if (slideNum >= 0 && slideNum < this.WordControl.m_oDrawingDocument.SlidesCount)
|
||
this.WordControl.GoToPage(slideNum);
|
||
}
|
||
}
|
||
return;
|
||
}
|
||
|
||
this.sendEvent("asc_onHyperlinkClick", Url);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_GoToInternalHyperlink = function(url)
|
||
{
|
||
for(var i = 0; i < this.SelectedObjectsStack.length; ++i){
|
||
if(this.SelectedObjectsStack[i].Type === c_oAscTypeSelectElement.Hyperlink){
|
||
var oHyperProp = this.SelectedObjectsStack[i].Value;
|
||
if(typeof oHyperProp.Value === "string" && oHyperProp.Value.indexOf("ppaction://hlink") === 0){
|
||
this.sync_HyperlinkClickCallback(oHyperProp.Value);
|
||
}
|
||
return;
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.UpdateInterfaceState = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument != null)
|
||
{
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
this.WordControl.CheckLayouts(true);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.OnMouseUp = function(x, y)
|
||
{
|
||
var _e = AscCommon.CreateMouseUpEventObject(x, y);
|
||
AscCommon.Window_OnMouseUp(_e);
|
||
|
||
//this.WordControl.onMouseUpExternal(x, y);
|
||
};
|
||
|
||
asc_docs_api.prototype.asyncImageEndLoaded2 = null;
|
||
|
||
asc_docs_api.prototype.ChangeTheme = function(indexTheme, bSelectedSlides)
|
||
{
|
||
if (true === AscCommon.CollaborativeEditing.Get_GlobalLock())
|
||
return;
|
||
|
||
if (!this.isViewMode && this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_Theme) === false)
|
||
{
|
||
AscCommon.CollaborativeEditing.Set_GlobalLock(true);
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Presentation_ChangeTheme);
|
||
this.bSelectedSlidesTheme = (bSelectedSlides === true);
|
||
this.ThemeLoader.StartLoadTheme(indexTheme);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.StartLoadTheme = function()
|
||
{
|
||
};
|
||
asc_docs_api.prototype.EndLoadTheme = function(theme_load_info)
|
||
{
|
||
AscCommon.CollaborativeEditing.Set_GlobalLock(false);
|
||
|
||
// применение темы
|
||
var _array = this.WordControl.Thumbnails.GetSelectedArray();
|
||
this.WordControl.m_oLogicDocument.changeTheme(theme_load_info, (_array.length <= 1 && !this.bSelectedSlidesTheme) ? null : _array);
|
||
this.WordControl.ThemeGenerateThumbnails(theme_load_info.Master);
|
||
// меняем шаблоны в меню
|
||
this.WordControl.CheckLayouts();
|
||
|
||
this.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, c_oAscAsyncAction.LoadTheme);
|
||
};
|
||
|
||
asc_docs_api.prototype.ChangeLayout = function(layout_index)
|
||
{
|
||
var _array = this.WordControl.Thumbnails.GetSelectedArray();
|
||
|
||
var _master = this.WordControl.MasterLayouts;
|
||
this.WordControl.m_oLogicDocument.changeLayout(_array, this.WordControl.MasterLayouts, layout_index);
|
||
};
|
||
|
||
asc_docs_api.prototype.put_ShapesAlign = function(type)
|
||
{
|
||
switch (type)
|
||
{
|
||
case c_oAscAlignShapeType.ALIGN_LEFT:
|
||
{
|
||
this.shapes_alignLeft();
|
||
break;
|
||
}
|
||
case c_oAscAlignShapeType.ALIGN_RIGHT:
|
||
{
|
||
this.shapes_alignRight();
|
||
break;
|
||
}
|
||
case c_oAscAlignShapeType.ALIGN_TOP:
|
||
{
|
||
this.shapes_alignTop();
|
||
break;
|
||
}
|
||
case c_oAscAlignShapeType.ALIGN_BOTTOM:
|
||
{
|
||
this.shapes_alignBottom();
|
||
break;
|
||
}
|
||
case c_oAscAlignShapeType.ALIGN_CENTER:
|
||
{
|
||
this.shapes_alignCenter();
|
||
break;
|
||
}
|
||
case c_oAscAlignShapeType.ALIGN_MIDDLE:
|
||
{
|
||
this.shapes_alignMiddle();
|
||
break;
|
||
}
|
||
default:
|
||
break;
|
||
}
|
||
};
|
||
asc_docs_api.prototype.DistributeHorizontally = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.distributeHor();
|
||
};
|
||
asc_docs_api.prototype.DistributeVertically = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.distributeVer();
|
||
};
|
||
asc_docs_api.prototype.shapes_alignLeft = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.alignLeft();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_alignRight = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.alignRight();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_alignTop = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.alignTop();
|
||
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_alignBottom = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.alignBottom();
|
||
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_alignCenter = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.alignCenter();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_alignMiddle = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.alignMiddle();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_bringToFront = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.bringToFront();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_bringForward = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.bringForward();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_bringToBack = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.sendToBack();
|
||
};
|
||
|
||
asc_docs_api.prototype.shapes_bringBackward = function()
|
||
{
|
||
this.WordControl.m_oLogicDocument.bringBackward();
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_setLoopShow = function(isLoop)
|
||
{
|
||
this.WordControl.m_oLogicDocument.setShowLoop(isLoop);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_endDemonstration = function()
|
||
{
|
||
this.sendEvent("asc_onEndDemonstration");
|
||
};
|
||
asc_docs_api.prototype.sync_DemonstrationSlideChanged = function(slideNum)
|
||
{
|
||
this.sendEvent("asc_onDemonstrationSlideChanged", slideNum);
|
||
};
|
||
|
||
asc_docs_api.prototype.StartDemonstration = function(div_id, slidestart_num, reporterStartObject)
|
||
{
|
||
if (window.g_asc_plugins)
|
||
window.g_asc_plugins.stopWorked();
|
||
|
||
var is_reporter = (reporterStartObject && !this.isReporterMode);
|
||
if (is_reporter)
|
||
this.DemonstrationReporterStart(reporterStartObject);
|
||
|
||
if (is_reporter && (this.reporterWindow || window["AscDesktopEditor"]))
|
||
this.WordControl.DemonstrationManager.StartWaitReporter(div_id, slidestart_num, true);
|
||
else
|
||
this.WordControl.DemonstrationManager.Start(div_id, slidestart_num, true);
|
||
};
|
||
|
||
asc_docs_api.prototype.EndDemonstration = function(isNoUseFullScreen)
|
||
{
|
||
if (this.windowReporter)
|
||
this.windowReporter.close();
|
||
|
||
this.WordControl.DemonstrationManager.End(isNoUseFullScreen);
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationReporterStart = function(startObject)
|
||
{
|
||
this.reporterStartObject = startObject;
|
||
this.reporterStartObject["translate"] = AscCommon.translateManager.mapTranslate;
|
||
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["startReporter"](window.location.href);
|
||
this.reporterWindow = {};
|
||
return;
|
||
}
|
||
|
||
var dualScreenLeft = (window.screenLeft != undefined) ? window.screenLeft : screen.left;
|
||
var dualScreenTop = (window.screenTop != undefined) ? window.screenTop : screen.top;
|
||
|
||
var width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
|
||
var height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
|
||
|
||
var w = 800;
|
||
var h = 600;
|
||
var left = ((width / 2) - (w / 2)) + dualScreenLeft;
|
||
var top = ((height / 2) - (h / 2)) + dualScreenTop;
|
||
|
||
var _windowPos = "width=" + w + ",height=" + h + ",left=" + left + ",top=" + top;
|
||
var _url = "index.reporter.html";
|
||
if (this.locale)
|
||
_url += ("?lang=" + this.locale);
|
||
this.reporterWindow = window.open(_url, "_blank", "resizable=yes,status=0,toolbar=0,location=0,menubar=0,directories=0,scrollbars=0," + _windowPos);
|
||
|
||
if (!this.reporterWindow)
|
||
return;
|
||
|
||
this.reporterWindowCounter = 0;
|
||
if (!AscCommon.AscBrowser.isSafariMacOs)
|
||
{
|
||
this.reporterWindow.onbeforeunload = function ()
|
||
{
|
||
window.editor.EndDemonstration();
|
||
};
|
||
}
|
||
|
||
this.reporterWindow.onunload = function () {
|
||
window.editor.reporterWindowCounter++;
|
||
if (1 < window.editor.reporterWindowCounter)
|
||
{
|
||
window.editor.EndDemonstration();
|
||
}
|
||
};
|
||
|
||
if ( this.reporterWindow.attachEvent )
|
||
this.reporterWindow.attachEvent('onmessage', this.DemonstrationReporterMessages);
|
||
else
|
||
this.reporterWindow.addEventListener('message', this.DemonstrationReporterMessages, false);
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationReporterEnd = function()
|
||
{
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["endReporter"]();
|
||
this.reporterWindow = null;
|
||
return;
|
||
}
|
||
|
||
try
|
||
{
|
||
this.reporterWindowCounter = 0;
|
||
if (!this.reporterWindow)
|
||
return;
|
||
|
||
if (this.reporterWindow.attachEvent)
|
||
this.reporterWindow.detachEvent('onmessage', this.DemonstrationReporterMessages);
|
||
else
|
||
this.reporterWindow.removeEventListener('message', this.DemonstrationReporterMessages, false);
|
||
|
||
this.reporterWindow.close();
|
||
this.reporterWindow = null;
|
||
this.reporterStartObject = null;
|
||
}
|
||
catch (err)
|
||
{
|
||
this.reporterWindow = null;
|
||
this.reporterStartObject = null;
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationReporterMessages = function(e)
|
||
{
|
||
var _this = window.editor;
|
||
if ( e.data == 'i:am:ready' )
|
||
{
|
||
var _msg_ = {
|
||
type: 'file:open',
|
||
data: _this.reporterStartObject
|
||
};
|
||
|
||
if (AscCommon.EncryptionWorker.isPasswordCryptoPresent)
|
||
{
|
||
_msg_.data["cryptoCurrentPassword"] = this.currentPassword;
|
||
_msg_.data["cryptoCurrentDocumentHash"] = this.currentDocumentHash;
|
||
_msg_.data["cryptoCurrentDocumentInfo"] = this.currentDocumentInfo;
|
||
}
|
||
|
||
this.reporterStartObject = null;
|
||
_this.sendToReporter(JSON.stringify(_msg_));
|
||
|
||
return;
|
||
}
|
||
|
||
try
|
||
{
|
||
var _obj = JSON.parse(e.data);
|
||
|
||
if (undefined == _obj["reporter_command"])
|
||
return;
|
||
|
||
switch (_obj["reporter_command"])
|
||
{
|
||
case "end":
|
||
{
|
||
_this.EndDemonstration();
|
||
break;
|
||
}
|
||
case "next":
|
||
{
|
||
_this.WordControl.DemonstrationManager.NextSlide();
|
||
break;
|
||
}
|
||
case "prev":
|
||
{
|
||
_this.WordControl.DemonstrationManager.PrevSlide();
|
||
break;
|
||
}
|
||
case "go_to_slide":
|
||
{
|
||
_this.WordControl.DemonstrationManager.GoToSlide(_obj["slide"]);
|
||
break;
|
||
}
|
||
case "start_show":
|
||
{
|
||
_this.WordControl.DemonstrationManager.EndWaitReporter();
|
||
break;
|
||
}
|
||
case "pointer_move":
|
||
{
|
||
_this.WordControl.DemonstrationManager.PointerMove(_obj["x"], _obj["y"], _obj["w"], _obj["h"]);
|
||
break;
|
||
}
|
||
case "pointer_remove":
|
||
{
|
||
_this.WordControl.DemonstrationManager.PointerRemove();
|
||
break;
|
||
}
|
||
case "pause":
|
||
{
|
||
_this.WordControl.DemonstrationManager.Pause();
|
||
_this.sendEvent("asc_onDemonstrationStatus", "pause");
|
||
break;
|
||
}
|
||
case "play":
|
||
{
|
||
_this.WordControl.DemonstrationManager.Play();
|
||
_this.sendEvent("asc_onDemonstrationStatus", "play");
|
||
break;
|
||
}
|
||
case "resize":
|
||
{
|
||
_this.WordControl.DemonstrationManager.Resize(true);
|
||
break;
|
||
}
|
||
default:
|
||
break;
|
||
}
|
||
}
|
||
catch (err)
|
||
{
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.preloadReporter = function(data)
|
||
{
|
||
if (data["translate"])
|
||
this.translateManager = AscCommon.translateManager.init(data["translate"]);
|
||
|
||
this.reporterTranslates = [data["translations"]["reset"], data["translations"]["slideOf"], data["translations"]["endSlideshow"], data["translations"]["finalMessage"]];
|
||
|
||
if (data["cryptoCurrentPassword"])
|
||
{
|
||
this.currentPassword = data["cryptoCurrentPassword"];
|
||
this.currentDocumentHash = data["cryptoCurrentDocumentHash"];
|
||
this.currentDocumentInfo = data["cryptoCurrentDocumentInfo"];
|
||
|
||
if (this.pluginsManager)
|
||
this.pluginsManager.checkCryptoReporter();
|
||
else
|
||
this.isCheckCryptoReporter = true;
|
||
}
|
||
|
||
if (!this.WordControl)
|
||
return;
|
||
|
||
this.WordControl.reporterTranslates = this.reporterTranslates;
|
||
|
||
var _button1 = document.getElementById("dem_id_reset");
|
||
var _button2 = document.getElementById("dem_id_end");
|
||
|
||
if (_button1)
|
||
_button1.innerHTML = this.reporterTranslates[0];
|
||
if (_button2)
|
||
{
|
||
_button2.innerHTML = this.reporterTranslates[2];
|
||
this.WordControl.OnResizeReporter();
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.sendToReporter = function(value)
|
||
{
|
||
if (this.disableReporterEvents)
|
||
return;
|
||
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["sendToReporter"](value);
|
||
return;
|
||
}
|
||
|
||
if (this.reporterWindow)
|
||
this.reporterWindow.postMessage(value, "*");
|
||
};
|
||
|
||
asc_docs_api.prototype.sendFromReporter = function(value)
|
||
{
|
||
if (this.disableReporterEvents)
|
||
return;
|
||
|
||
if (window["AscDesktopEditor"])
|
||
{
|
||
window["AscDesktopEditor"]["sendFromReporter"](value);
|
||
return;
|
||
}
|
||
|
||
window.postMessage(value, "*");
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationToReporterMessages = function(e)
|
||
{
|
||
var _this = window.editor;
|
||
|
||
try
|
||
{
|
||
var _obj = JSON.parse(e.data);
|
||
|
||
if (window["AscDesktopEditor"] && (_obj["type"] == "file:open"))
|
||
{
|
||
window.postMessage(e.data, "*");
|
||
return;
|
||
}
|
||
|
||
if (undefined == _obj["main_command"])
|
||
return;
|
||
|
||
if (undefined !== _obj["keyCode"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.onKeyDownCode(_obj["keyCode"]);
|
||
}
|
||
else if (undefined !== _obj["mouseUp"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.onMouseUp({}, true, true);
|
||
}
|
||
else if (undefined !== _obj["mouseWhell"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.onMouseWheelDelta(_obj["mouseWhell"]);
|
||
}
|
||
else if (undefined !== _obj["resize"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.Resize(true);
|
||
}
|
||
else if (true === _obj["next"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.NextSlide(true);
|
||
}
|
||
else if (true === _obj["prev"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.PrevSlide(true);
|
||
}
|
||
else if (undefined !== _obj["go_to_slide"])
|
||
{
|
||
_this.WordControl.DemonstrationManager.GoToSlide(_obj["go_to_slide"], true);
|
||
}
|
||
else if (true === _obj["play"])
|
||
{
|
||
var _isNowPlaying = _this.WordControl.DemonstrationManager.IsPlayMode;
|
||
_this.WordControl.DemonstrationManager.Play(true);
|
||
var _elem = document.getElementById("dem_id_play_span");
|
||
if (_elem && !_isNowPlaying)
|
||
{
|
||
_elem.classList.remove("btn-play");
|
||
_elem.classList.add("btn-pause");
|
||
|
||
_this.WordControl.reporterTimerLastStart = new Date().getTime();
|
||
|
||
_this.WordControl.reporterTimer = setInterval(_this.WordControl.reporterTimerFunc, 1000);
|
||
}
|
||
}
|
||
else if (true === _obj["pause"])
|
||
{
|
||
var _isNowPlaying = _this.WordControl.DemonstrationManager.IsPlayMode;
|
||
_this.WordControl.DemonstrationManager.Pause();
|
||
var _elem = document.getElementById("dem_id_play_span");
|
||
if (_elem && _isNowPlaying)
|
||
{
|
||
_elem.classList.remove("btn-pause");
|
||
_elem.classList.add("btn-play");
|
||
|
||
if (-1 != _this.WordControl.reporterTimer)
|
||
{
|
||
clearInterval(_this.WordControl.reporterTimer);
|
||
_this.WordControl.reporterTimer = -1;
|
||
}
|
||
|
||
_this.WordControl.reporterTimerAdd = _this.WordControl.reporterTimerFunc(true);
|
||
}
|
||
}
|
||
}
|
||
catch (err)
|
||
{
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationPlay = function()
|
||
{
|
||
if (undefined !== this.EndShowMessage)
|
||
{
|
||
this.WordControl.DemonstrationManager.EndShowMessage = this.EndShowMessage;
|
||
this.EndShowMessage = undefined;
|
||
}
|
||
this.WordControl.DemonstrationManager.Play(true);
|
||
|
||
if (this.reporterWindow)
|
||
this.sendToReporter("{ \"main_command\" : true, \"play\" : true }");
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationPause = function()
|
||
{
|
||
this.WordControl.DemonstrationManager.Pause();
|
||
if (this.reporterWindow)
|
||
this.sendToReporter("{ \"main_command\" : true, \"pause\" : true }");
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationEndShowMessage = function(message)
|
||
{
|
||
if (!this.WordControl)
|
||
this.EndShowMessage = message;
|
||
else
|
||
this.WordControl.DemonstrationManager.EndShowMessage = message;
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationNextSlide = function()
|
||
{
|
||
this.WordControl.DemonstrationManager.NextSlide();
|
||
if (this.reporterWindow)
|
||
this.sendToReporter("{ \"main_command\" : true, \"next\" : true }");
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationPrevSlide = function()
|
||
{
|
||
this.WordControl.DemonstrationManager.PrevSlide();
|
||
if (this.reporterWindow)
|
||
this.sendToReporter("{ \"main_command\" : true, \"prev\" : true }");
|
||
};
|
||
|
||
asc_docs_api.prototype.DemonstrationGoToSlide = function(slideNum)
|
||
{
|
||
this.WordControl.DemonstrationManager.GoToSlide(slideNum);
|
||
|
||
if (this.isReporterMode)
|
||
this.sendFromReporter("{ \"reporter_command\" : \"go_to_slide\", \"slide\" : " + slideNum + " }");
|
||
|
||
if (this.reporterWindow)
|
||
this.sendToReporter("{ \"main_command\" : true, \"go_to_slide\" : " + slideNum + " }");
|
||
};
|
||
|
||
asc_docs_api.prototype.SetDemonstrationModeOnly = function()
|
||
{
|
||
this.isOnlyDemonstration = true;
|
||
};
|
||
|
||
asc_docs_api.prototype.ApplySlideTiming = function(oTiming)
|
||
{
|
||
if (this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_SlideTiming) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ApplyTiming);
|
||
var _count = this.WordControl.m_oDrawingDocument.SlidesCount;
|
||
var _cur = this.WordControl.m_oDrawingDocument.SlideCurrent;
|
||
if (_cur < 0 || _cur >= _count)
|
||
return;
|
||
|
||
var aSelectedSlides = this.WordControl.Thumbnails.GetSelectedArray();
|
||
for(var i = 0; i < aSelectedSlides.length; ++i)
|
||
{
|
||
var _curSlide = this.WordControl.m_oLogicDocument.Slides[aSelectedSlides[i]];
|
||
_curSlide.applyTiming(oTiming);
|
||
}
|
||
|
||
if(oTiming){
|
||
if(AscFormat.isRealBool(oTiming.get_ShowLoop()) && oTiming.get_ShowLoop() !== this.WordControl.m_oLogicDocument.isLoopShowMode()){
|
||
this.WordControl.m_oLogicDocument.setShowLoop(oTiming.get_ShowLoop());
|
||
}
|
||
}
|
||
}
|
||
this.WordControl.m_oLogicDocument.Document_UpdateInterfaceState();
|
||
};
|
||
asc_docs_api.prototype.SlideTimingApplyToAll = function()
|
||
{
|
||
|
||
if (this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_SlideTiming, {All : true}) === false)
|
||
{
|
||
History.Create_NewPoint(AscDFH.historydescription_Presentation_ApplyTimingToAll);
|
||
var _count = this.WordControl.m_oDrawingDocument.SlidesCount;
|
||
var _cur = this.WordControl.m_oDrawingDocument.SlideCurrent;
|
||
var _slides = this.WordControl.m_oLogicDocument.Slides;
|
||
if (_cur < 0 || _cur >= _count)
|
||
return;
|
||
var _curSlide = _slides[_cur];
|
||
|
||
_curSlide.timing.makeDuplicate(this.WordControl.m_oLogicDocument.DefaultSlideTiming);
|
||
var _default = this.WordControl.m_oLogicDocument.DefaultSlideTiming;
|
||
|
||
for (var i = 0; i < _count; i++)
|
||
{
|
||
if (i == _cur)
|
||
continue;
|
||
|
||
_slides[i].applyTiming(_default);
|
||
}
|
||
}
|
||
};
|
||
asc_docs_api.prototype.SlideTransitionPlay = function()
|
||
{
|
||
var _count = this.WordControl.m_oDrawingDocument.SlidesCount;
|
||
var _cur = this.WordControl.m_oDrawingDocument.SlideCurrent;
|
||
if (_cur < 0 || _cur >= _count)
|
||
return;
|
||
var _timing = this.WordControl.m_oLogicDocument.Slides[_cur].timing;
|
||
|
||
var _tr = this.WordControl.m_oDrawingDocument.TransitionSlide;
|
||
_tr.Type = _timing.TransitionType;
|
||
_tr.Param = _timing.TransitionOption;
|
||
_tr.Duration = _timing.TransitionDuration;
|
||
|
||
_tr.Start(true);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_HideSlides = function(isHide)
|
||
{
|
||
this.WordControl.m_oLogicDocument.hideSlides(isHide);
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_EndAddShape = function()
|
||
{
|
||
editor.sendEvent("asc_onEndAddShape");
|
||
if (this.WordControl.m_oDrawingDocument.m_sLockedCursorType == "crosshair")
|
||
{
|
||
this.WordControl.m_oDrawingDocument.UnlockCursorType();
|
||
}
|
||
};
|
||
|
||
// Вставка диаграмм
|
||
asc_docs_api.prototype.asc_getChartObject = function(type)
|
||
{
|
||
this.isChartEditor = true; // Для совместного редактирования
|
||
if (!AscFormat.isRealNumber(type))
|
||
{
|
||
this.asc_onOpenChartFrame();
|
||
this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_Drawing_Props);
|
||
}
|
||
return this.WordControl.m_oLogicDocument.GetChartObject(type);
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_addChartDrawingObject = function(chartBinary)
|
||
{
|
||
/**/
|
||
|
||
// Приводим бинарик к объекту типа CChartAsGroup и добавляем объект
|
||
if (AscFormat.isObject(chartBinary))
|
||
{
|
||
//if ( false === this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(changestype_Drawing_Props) )
|
||
{
|
||
AscFonts.IsCheckSymbols = true;
|
||
this.WordControl.m_oLogicDocument.addChart(chartBinary, true);
|
||
AscFonts.IsCheckSymbols = false;
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_editChartDrawingObject = function(chartBinary)
|
||
{
|
||
/**/
|
||
|
||
// Находим выделенную диаграмму и накатываем бинарник
|
||
if (AscCommon.isRealObject(chartBinary))
|
||
{
|
||
this.WordControl.m_oLogicDocument.EditChart(chartBinary);
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_onCloseChartFrame = function()
|
||
{
|
||
AscCommon.baseEditorsApi.prototype.asc_onCloseChartFrame.call(this);
|
||
this.WordControl.m_bIsMouseLock = false;
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_closeChartEditor = function()
|
||
{
|
||
this.sendEvent("asc_onCloseChartEditor");
|
||
};
|
||
asc_docs_api.prototype.asc_setDrawCollaborationMarks = function()
|
||
{
|
||
};
|
||
|
||
//-----------------------------------------------------------------
|
||
// События контекстного меню
|
||
//-----------------------------------------------------------------
|
||
|
||
function CContextMenuData(oData)
|
||
{
|
||
if (AscCommon.isRealObject(oData))
|
||
{
|
||
this.Type = oData.Type;
|
||
this.X_abs = oData.X_abs;
|
||
this.Y_abs = oData.Y_abs;
|
||
this.IsSlideSelect = oData.IsSlideSelect;
|
||
this.IsSlideHidden = oData.IsSlideHidden;
|
||
}
|
||
else
|
||
{
|
||
this.Type = Asc.c_oAscContextMenuTypes.Main;
|
||
this.X_abs = 0;
|
||
this.Y_abs = 0;
|
||
this.IsSlideSelect = true;
|
||
this.IsSlideHidden = false;
|
||
}
|
||
}
|
||
|
||
CContextMenuData.prototype.get_Type = function()
|
||
{
|
||
return this.Type;
|
||
};
|
||
CContextMenuData.prototype.get_X = function()
|
||
{
|
||
return this.X_abs;
|
||
};
|
||
CContextMenuData.prototype.get_Y = function()
|
||
{
|
||
return this.Y_abs;
|
||
};
|
||
CContextMenuData.prototype.get_IsSlideSelect = function()
|
||
{
|
||
return this.IsSlideSelect;
|
||
};
|
||
|
||
CContextMenuData.prototype.get_IsSlideHidden = function()
|
||
{
|
||
return this.IsSlideHidden;
|
||
};
|
||
|
||
asc_docs_api.prototype.sync_ContextMenuCallback = function(Data)
|
||
{
|
||
this.sendEvent("asc_onContextMenu", Data);
|
||
};
|
||
|
||
asc_docs_api.prototype._onNeedParams = function(data, opt_isPassword)
|
||
{
|
||
if (opt_isPassword) {
|
||
if (this.asc_checkNeedCallback("asc_onAdvancedOptions")) {
|
||
this.sendEvent("asc_onAdvancedOptions", new AscCommon.asc_CAdvancedOptions(c_oAscAdvancedOptionsID.DRM), c_oAscAdvancedOptionsAction.Open);
|
||
} else {
|
||
this.sendEvent("asc_onError", c_oAscError.ID.ConvertationPassword, c_oAscError.Level.Critical);
|
||
}
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype._onOpenCommand = function(data)
|
||
{
|
||
var t = this;
|
||
AscCommon.openFileCommand(data, this.documentUrlChanges, AscCommon.c_oSerFormat.Signature, function(error, result)
|
||
{
|
||
if (error || !result.bSerFormat)
|
||
{
|
||
var err = error ? c_oAscError.ID.Unknown : c_oAscError.ID.ConvertationOpenError;
|
||
t.sendEvent("asc_onError", err, c_oAscError.Level.Critical);
|
||
return;
|
||
}
|
||
t.onEndLoadFile(result);
|
||
});
|
||
};
|
||
asc_docs_api.prototype._onEndLoadSdk = function()
|
||
{
|
||
AscCommon.baseEditorsApi.prototype._onEndLoadSdk.call(this);
|
||
|
||
History = AscCommon.History;
|
||
PasteElementsId = AscCommon.PasteElementsId;
|
||
global_mouseEvent = AscCommon.global_mouseEvent;
|
||
|
||
this.WordControl = new AscCommonSlide.CEditorPage(this);
|
||
this.WordControl.Name = this.HtmlElementName;
|
||
|
||
this.ThemeLoader = new AscCommonSlide.CThemeLoader();
|
||
this.ThemeLoader.Api = this;
|
||
|
||
//выставляем тип copypaste
|
||
PasteElementsId.g_bIsDocumentCopyPaste = false;
|
||
|
||
this.CreateComponents();
|
||
this.WordControl.Init();
|
||
|
||
if (this.tmpThemesPath)
|
||
{
|
||
this.SetThemesPath(this.tmpThemesPath);
|
||
}
|
||
if (null !== this.tmpIsFreeze)
|
||
{
|
||
this.SetDrawingFreeze(this.tmpIsFreeze);
|
||
}
|
||
if (this.tmpSlideDiv)
|
||
{
|
||
this.SetInterfaceDrawImagePlaceSlide(this.tmpSlideDiv);
|
||
}
|
||
if (this.tmpTextArtDiv)
|
||
{
|
||
this.SetInterfaceDrawImagePlaceTextArt(this.tmpTextArtDiv);
|
||
}
|
||
if (null !== this.tmpViewRulers)
|
||
{
|
||
this.asc_SetViewRulers(this.tmpViewRulers);
|
||
}
|
||
if (null !== this.tmpZoomType)
|
||
{
|
||
switch (this.tmpZoomType)
|
||
{
|
||
case AscCommon.c_oZoomType.FitToPage:
|
||
this.zoomFitToPage();
|
||
break;
|
||
case AscCommon.c_oZoomType.FitToWidth:
|
||
this.zoomFitToWidth();
|
||
break;
|
||
case AscCommon.c_oZoomType.CustomMode:
|
||
this.zoomCustomMode();
|
||
break;
|
||
}
|
||
}
|
||
|
||
this.asc_setViewMode(this.isViewMode);
|
||
|
||
if (this.isReporterMode)
|
||
{
|
||
var _onbeforeunload = function ()
|
||
{
|
||
window.editor.EndDemonstration();
|
||
};
|
||
if (window.attachEvent)
|
||
window.attachEvent('onbeforeunload', _onbeforeunload);
|
||
else
|
||
window.addEventListener('beforeunload', _onbeforeunload, false);
|
||
}
|
||
|
||
if (this.openFileCryptBinary)
|
||
{
|
||
window.openFileCryptCallback(this.openFileCryptBinary);
|
||
this.openFileCryptBinary = null;
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype._downloadAs = function(filetype, actionType, options)
|
||
{
|
||
var isCloudCrypto = (window["AscDesktopEditor"] && (0 < window["AscDesktopEditor"]["CryptoMode"])) ? true : false;
|
||
var t = this;
|
||
if (!options)
|
||
{
|
||
options = {};
|
||
}
|
||
if (actionType)
|
||
{
|
||
this.sync_StartAction(c_oAscAsyncActionType.BlockInteraction, actionType);
|
||
}
|
||
var isNoBase64 = (typeof ArrayBuffer !== 'undefined') && !isCloudCrypto;
|
||
|
||
var dataContainer = {data : null, part : null, index : 0, count : 0};
|
||
var command = "save";
|
||
var oAdditionalData = {};
|
||
oAdditionalData["c"] = command;
|
||
oAdditionalData["id"] = this.documentId;
|
||
oAdditionalData["userid"] = this.documentUserId;
|
||
oAdditionalData["jwt"] = this.CoAuthoringApi.get_jwt();
|
||
oAdditionalData["outputformat"] = filetype;
|
||
oAdditionalData["title"] = AscCommon.changeFileExtention(this.documentTitle, AscCommon.getExtentionByFormat(filetype), Asc.c_nMaxDownloadTitleLen);
|
||
oAdditionalData["savetype"] = AscCommon.c_oAscSaveTypes.CompleteAll;
|
||
oAdditionalData["nobase64"] = isNoBase64;
|
||
if (DownloadType.Print === options.downloadType)
|
||
{
|
||
oAdditionalData["inline"] = 1;
|
||
}
|
||
if (c_oAscFileType.PDF == filetype || c_oAscFileType.PDFA == filetype)
|
||
{
|
||
var dd = this.WordControl.m_oDrawingDocument;
|
||
dataContainer.data = dd.ToRendererPart(isNoBase64);
|
||
}
|
||
else
|
||
dataContainer.data = this.WordControl.SaveDocument(isNoBase64);
|
||
|
||
if (isCloudCrypto)
|
||
{
|
||
window["AscDesktopEditor"]["CryptoDownloadAs"](dataContainer.data, filetype);
|
||
return;
|
||
}
|
||
|
||
var fCallback = function(input)
|
||
{
|
||
var error = c_oAscError.ID.Unknown;
|
||
if (null != input && command == input["type"])
|
||
{
|
||
if ('ok' == input["status"])
|
||
{
|
||
var url = input["data"];
|
||
if (url)
|
||
{
|
||
error = c_oAscError.ID.No;
|
||
t.processSavedFile(url, options.downloadType);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
error = mapAscServerErrorToAscError(parseInt(input["data"]),
|
||
AscCommon.c_oAscAdvancedOptionsAction.Save);
|
||
}
|
||
}
|
||
if (c_oAscError.ID.No != error)
|
||
{
|
||
t.sendEvent("asc_onError", error, c_oAscError.Level.NoCritical);
|
||
}
|
||
if (actionType)
|
||
{
|
||
t.sync_EndAction(c_oAscAsyncActionType.BlockInteraction, actionType);
|
||
}
|
||
};
|
||
this.fCurCallback = fCallback;
|
||
AscCommon.saveWithParts(function(fCallback1, oAdditionalData1, dataContainer1)
|
||
{
|
||
sendCommand(t, fCallback1, oAdditionalData1, dataContainer1);
|
||
}, fCallback, null, oAdditionalData, dataContainer);
|
||
};
|
||
|
||
|
||
|
||
asc_docs_api.prototype.asc_Recalculate = function(bIsUpdateInterface)
|
||
{
|
||
if (!this.WordControl.m_oLogicDocument)
|
||
return;
|
||
this.WordControl.m_oLogicDocument.Recalculate({Drawings : {All : true, Map : {}}});
|
||
this.WordControl.m_oLogicDocument.DrawingDocument.OnEndRecalculate();
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_canPaste = function()
|
||
{
|
||
if (!this.WordControl ||
|
||
!this.WordControl.m_oLogicDocument ||
|
||
this.WordControl.m_oLogicDocument.Document_Is_SelectionLocked(AscCommon.changestype_Drawing_Props))
|
||
return false;
|
||
|
||
this.WordControl.m_oLogicDocument.Create_NewHistoryPoint(AscDFH.historydescription_Document_AddSectionBreak);
|
||
return true;
|
||
};
|
||
|
||
// input
|
||
asc_docs_api.prototype.Begin_CompositeInput = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Begin_CompositeInput();
|
||
return null;
|
||
};
|
||
asc_docs_api.prototype.Add_CompositeText = function(nCharCode)
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Add_CompositeText(nCharCode);
|
||
return null;
|
||
};
|
||
asc_docs_api.prototype.Remove_CompositeText = function(nCount)
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Remove_CompositeText(nCount);
|
||
return null;
|
||
};
|
||
asc_docs_api.prototype.Replace_CompositeText = function(arrCharCodes)
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Replace_CompositeText(arrCharCodes);
|
||
return null;
|
||
};
|
||
asc_docs_api.prototype.Set_CursorPosInCompositeText = function(nPos)
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Set_CursorPosInCompositeText(nPos);
|
||
return null;
|
||
};
|
||
asc_docs_api.prototype.Get_CursorPosInCompositeText = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Get_CursorPosInCompositeText();
|
||
return 0;
|
||
};
|
||
asc_docs_api.prototype.End_CompositeInput = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.End_CompositeInput();
|
||
return null;
|
||
};
|
||
asc_docs_api.prototype.Get_MaxCursorPosInCompositeText = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
return this.WordControl.m_oLogicDocument.Get_MaxCursorPosInCompositeText();
|
||
return 0;
|
||
};
|
||
asc_docs_api.prototype.Input_UpdatePos = function()
|
||
{
|
||
if (this.WordControl.m_oLogicDocument)
|
||
this.WordControl.m_oDrawingDocument.MoveTargetInInputContext();
|
||
};
|
||
|
||
asc_docs_api.prototype.onKeyDown = function(e)
|
||
{
|
||
return this.WordControl.onKeyDown(e);
|
||
};
|
||
asc_docs_api.prototype.onKeyPress = function(e)
|
||
{
|
||
return this.WordControl.onKeyPress(e);
|
||
};
|
||
asc_docs_api.prototype.onKeyUp = function(e)
|
||
{
|
||
return this.WordControl.onKeyUp(e);
|
||
};
|
||
|
||
asc_docs_api.prototype.getAddedTextOnKeyDown = function(e)
|
||
{
|
||
var oLogicDocument = this.WordControl.m_oLogicDocument;
|
||
if (!oLogicDocument)
|
||
return [];
|
||
|
||
return oLogicDocument.GetAddedTextOnKeyDown(e);
|
||
};
|
||
|
||
//test
|
||
window["asc_docs_api"] = asc_docs_api;
|
||
window["asc_docs_api"].prototype["asc_nativeOpenFile"] = function(base64File, version)
|
||
{
|
||
this.SpellCheckUrl = '';
|
||
|
||
this.User = new AscCommon.asc_CUser();
|
||
this.User.setId("TM");
|
||
this.User.setUserName("native");
|
||
|
||
this.WordControl.m_bIsRuler = false;
|
||
this.WordControl.Init();
|
||
|
||
this.InitEditor();
|
||
|
||
g_oIdCounter.Set_Load(true);
|
||
|
||
var _loader = new AscCommon.BinaryPPTYLoader();
|
||
_loader.Api = this;
|
||
|
||
_loader.Load(base64File, this.WordControl.m_oLogicDocument);
|
||
_loader.Check_TextFit();
|
||
|
||
this.LoadedObject = 1;
|
||
g_oIdCounter.Set_Load(false);
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeCalculateFile"] = function()
|
||
{
|
||
this.bNoSendComments = false;
|
||
this.ShowParaMarks = false;
|
||
|
||
var presentation = this.WordControl.m_oLogicDocument;
|
||
if(presentation){
|
||
presentation.Recalculate({Drawings : {All : true, Map : {}}});
|
||
presentation.DrawingDocument.OnEndRecalculate();
|
||
}
|
||
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeApplyChanges"] = function(changes)
|
||
{
|
||
var _len = changes.length;
|
||
for (var i = 0; i < _len; i++)
|
||
{
|
||
var Changes = new AscCommon.CCollaborativeChanges();
|
||
Changes.Set_Data(changes[i]);
|
||
AscCommon.CollaborativeEditing.Add_Changes(Changes);
|
||
}
|
||
AscCommon.CollaborativeEditing.Apply_OtherChanges();
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeApplyChanges2"] = function(data, isFull)
|
||
{
|
||
// Чтобы заново созданные параграфы не отображались залоченными
|
||
g_oIdCounter.Set_Load(true);
|
||
|
||
var stream = new AscCommon.FT_Stream2(data, data.length);
|
||
stream.obj = null;
|
||
var Loader = {Reader : stream, Reader2 : null};
|
||
var _color = new AscCommonWord.CDocumentColor(191, 255, 199);
|
||
|
||
// Применяем изменения, пока они есть
|
||
var _count = Loader.Reader.GetLong();
|
||
|
||
var _pos = 4;
|
||
for (var i = 0; i < _count; i++)
|
||
{
|
||
if (window["NATIVE_EDITOR_ENJINE"] === true && window["native"]["CheckNextChange"])
|
||
{
|
||
if (!window["native"]["CheckNextChange"]())
|
||
break;
|
||
}
|
||
|
||
var nChangeLen = stream.GetLong();
|
||
_pos += 4;
|
||
stream.size = _pos + nChangeLen;
|
||
|
||
var ClassId = stream.GetString2();
|
||
var Class = AscCommon.g_oTableId.Get_ById(ClassId);
|
||
|
||
var nReaderPos = stream.GetCurPos();
|
||
var nChangeType = stream.GetLong();
|
||
|
||
if (Class)
|
||
{
|
||
var fChangesClass = AscDFH.changesFactory[nChangeType];
|
||
if (fChangesClass)
|
||
{
|
||
var oChange = new fChangesClass(Class);
|
||
oChange.ReadFromBinary(stream);
|
||
|
||
if (true === AscCommon.CollaborativeEditing.private_AddOverallChange(oChange, false))
|
||
oChange.Load(_color);
|
||
}
|
||
else
|
||
{
|
||
AscCommon.CollaborativeEditing.private_AddOverallChange(data, false);
|
||
|
||
stream.Seek(nReaderPos);
|
||
stream.Seek2(nReaderPos);
|
||
|
||
Class.Load_Changes(stream, null, _color);
|
||
}
|
||
}
|
||
|
||
_pos += nChangeLen;
|
||
stream.Seek2(_pos);
|
||
stream.size = data.length;
|
||
}
|
||
|
||
if (isFull)
|
||
{
|
||
AscCommon.CollaborativeEditing.m_aChanges = [];
|
||
|
||
// У новых элементов выставляем указатели на другие классы
|
||
AscCommon.CollaborativeEditing.Apply_LinkData();
|
||
|
||
// Делаем проверки корректности новых изменений
|
||
AscCommon.CollaborativeEditing.Check_MergeData();
|
||
|
||
AscCommon.CollaborativeEditing.OnEnd_ReadForeignChanges();
|
||
}
|
||
|
||
g_oIdCounter.Set_Load(false);
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeGetFile"] = function()
|
||
{
|
||
var writer = new AscCommon.CBinaryFileWriter();
|
||
this.WordControl.m_oLogicDocument.CalculateComments();
|
||
return writer.WriteDocument(this.WordControl.m_oLogicDocument);
|
||
};
|
||
|
||
window["asc_docs_api"].prototype.asc_nativeGetFile3 = function()
|
||
{
|
||
var writer = new AscCommon.CBinaryFileWriter();
|
||
this.WordControl.m_oLogicDocument.CalculateComments();
|
||
return { data: writer.WriteDocument3(this.WordControl.m_oLogicDocument, true), header: ("PPTY;v10;" + writer.pos + ";") };
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeGetFileData"] = function()
|
||
{
|
||
var writer = new AscCommon.CBinaryFileWriter();
|
||
this.WordControl.m_oLogicDocument.CalculateComments();
|
||
writer.WriteDocument3(this.WordControl.m_oLogicDocument);
|
||
|
||
var _header = "PPTY;v10;" + writer.pos + ";";
|
||
window["native"]["Save_End"](_header, writer.pos);
|
||
|
||
return writer.ImData.data;
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeCalculate"] = function()
|
||
{
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativePrint"] = function(_printer, _page)
|
||
{
|
||
if (undefined === _printer && _page === undefined)
|
||
{
|
||
if (undefined !== window["AscDesktopEditor"])
|
||
{
|
||
var _drawing_document = this.WordControl.m_oDrawingDocument;
|
||
var pagescount = _drawing_document.SlidesCount;
|
||
|
||
window["AscDesktopEditor"]["Print_Start"](this.DocumentUrl, pagescount, this.ThemeLoader.ThemesUrl, this.getCurrentPage());
|
||
|
||
var oDocRenderer = new AscCommon.CDocumentRenderer();
|
||
oDocRenderer.InitPicker(AscCommon.g_oTextMeasurer.m_oManager);
|
||
oDocRenderer.VectorMemoryForPrint = new AscCommon.CMemory();
|
||
var bOldShowMarks = this.ShowParaMarks;
|
||
this.ShowParaMarks = false;
|
||
oDocRenderer.IsNoDrawingEmptyPlaceholder = true;
|
||
|
||
for (var i = 0; i < pagescount; i++)
|
||
{
|
||
oDocRenderer.Memory.Seek(0);
|
||
oDocRenderer.VectorMemoryForPrint.ClearNoAttack();
|
||
|
||
oDocRenderer.BeginPage(_drawing_document.m_oLogicDocument.Width, _drawing_document.m_oLogicDocument.Height);
|
||
this.WordControl.m_oLogicDocument.DrawPage(i, oDocRenderer);
|
||
oDocRenderer.EndPage();
|
||
|
||
window["AscDesktopEditor"]["Print_Page"](oDocRenderer.Memory.GetBase64Memory(), _drawing_document.m_oLogicDocument.Width, _drawing_document.m_oLogicDocument.Height);
|
||
}
|
||
|
||
if (0 == pagescount)
|
||
{
|
||
oDocRenderer.BeginPage(_drawing_document.m_oLogicDocument.Width, _drawing_document.m_oLogicDocument.Height);
|
||
oDocRenderer.EndPage();
|
||
|
||
window["AscDesktopEditor"]["Print_Page"](oDocRenderer.Memory.GetBase64Memory());
|
||
}
|
||
|
||
this.ShowParaMarks = bOldShowMarks;
|
||
|
||
window["AscDesktopEditor"]["Print_End"]();
|
||
}
|
||
return;
|
||
}
|
||
|
||
var _logic_doc = this.WordControl.m_oLogicDocument;
|
||
_printer.BeginPage(_logic_doc.Width, _logic_doc.Height);
|
||
_logic_doc.DrawPage(_page, _printer);
|
||
_printer.EndPage();
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativePrintPagesCount"] = function()
|
||
{
|
||
return this.WordControl.m_oDrawingDocument.SlidesCount;
|
||
};
|
||
|
||
window["asc_docs_api"].prototype["asc_nativeGetPDF"] = function(_param)
|
||
{
|
||
var pagescount = this["asc_nativePrintPagesCount"]();
|
||
if (0x0100 & _param)
|
||
pagescount = 1;
|
||
|
||
var _renderer = new AscCommon.CDocumentRenderer();
|
||
_renderer.InitPicker(AscCommon.g_oTextMeasurer.m_oManager);
|
||
_renderer.VectorMemoryForPrint = new AscCommon.CMemory();
|
||
var _bOldShowMarks = this.ShowParaMarks;
|
||
this.ShowParaMarks = false;
|
||
_renderer.IsNoDrawingEmptyPlaceholder = true;
|
||
|
||
for (var i = 0; i < pagescount; i++)
|
||
{
|
||
this["asc_nativePrint"](_renderer, i);
|
||
}
|
||
|
||
this.ShowParaMarks = _bOldShowMarks;
|
||
|
||
window["native"]["Save_End"]("", _renderer.Memory.GetCurPosition());
|
||
|
||
return _renderer.Memory.data;
|
||
};
|
||
|
||
asc_docs_api.prototype.asc_OnHideContextMenu = function()
|
||
{
|
||
if (this.WordControl.MobileTouchManager)
|
||
{
|
||
this.WordControl.checkBodyOffset();
|
||
this.WordControl.MobileTouchManager.showKeyboard();
|
||
}
|
||
};
|
||
asc_docs_api.prototype.asc_OnShowContextMenu = function()
|
||
{
|
||
if (this.WordControl.MobileTouchManager)
|
||
{
|
||
this.WordControl.checkBodyOffset();
|
||
}
|
||
};
|
||
|
||
asc_docs_api.prototype.getDefaultFontFamily = function () {
|
||
//TODO переделать и отдавать дефолтовый шрифт
|
||
var defaultFont = "Arial";
|
||
return defaultFont;
|
||
};
|
||
|
||
asc_docs_api.prototype.getDefaultFontSize = function () {
|
||
//TODO переделать и отдавать дефолтовый шрифт
|
||
var defaultSize = 11;
|
||
return defaultSize;
|
||
};
|
||
|
||
//-------------------------------------------------------------export---------------------------------------------------
|
||
window['Asc'] = window['Asc'] || {};
|
||
window['AscCommonSlide'] = window['AscCommonSlide'] || {};
|
||
window['Asc']['asc_docs_api'] = asc_docs_api;
|
||
asc_docs_api.prototype['asc_GetFontThumbnailsPath'] = asc_docs_api.prototype.asc_GetFontThumbnailsPath;
|
||
asc_docs_api.prototype['pre_Save'] = asc_docs_api.prototype.pre_Save;
|
||
asc_docs_api.prototype['sync_CollaborativeChanges'] = asc_docs_api.prototype.sync_CollaborativeChanges;
|
||
asc_docs_api.prototype['asc_coAuthoringDisconnect'] = asc_docs_api.prototype.asc_coAuthoringDisconnect;
|
||
asc_docs_api.prototype['asc_coAuthoringChatSendMessage'] = asc_docs_api.prototype.asc_coAuthoringChatSendMessage;
|
||
asc_docs_api.prototype['asc_coAuthoringChatGetMessages'] = asc_docs_api.prototype.asc_coAuthoringChatGetMessages;
|
||
asc_docs_api.prototype['asc_coAuthoringGetUsers'] = asc_docs_api.prototype.asc_coAuthoringGetUsers;
|
||
asc_docs_api.prototype['syncCollaborativeChanges'] = asc_docs_api.prototype.syncCollaborativeChanges;
|
||
asc_docs_api.prototype['SetCollaborativeMarksShowType'] = asc_docs_api.prototype.SetCollaborativeMarksShowType;
|
||
asc_docs_api.prototype['GetCollaborativeMarksShowType'] = asc_docs_api.prototype.GetCollaborativeMarksShowType;
|
||
asc_docs_api.prototype['Clear_CollaborativeMarks'] = asc_docs_api.prototype.Clear_CollaborativeMarks;
|
||
asc_docs_api.prototype['_onUpdateDocumentCanSave'] = asc_docs_api.prototype._onUpdateDocumentCanSave;
|
||
asc_docs_api.prototype['SetUnchangedDocument'] = asc_docs_api.prototype.SetUnchangedDocument;
|
||
asc_docs_api.prototype['SetDocumentModified'] = asc_docs_api.prototype.SetDocumentModified;
|
||
asc_docs_api.prototype['isDocumentModified'] = asc_docs_api.prototype.isDocumentModified;
|
||
asc_docs_api.prototype['asc_isDocumentCanSave'] = asc_docs_api.prototype.asc_isDocumentCanSave;
|
||
asc_docs_api.prototype['asc_getCanUndo'] = asc_docs_api.prototype.asc_getCanUndo;
|
||
asc_docs_api.prototype['asc_getCanRedo'] = asc_docs_api.prototype.asc_getCanRedo;
|
||
asc_docs_api.prototype['sync_BeginCatchSelectedElements'] = asc_docs_api.prototype.sync_BeginCatchSelectedElements;
|
||
asc_docs_api.prototype['sync_EndCatchSelectedElements'] = asc_docs_api.prototype.sync_EndCatchSelectedElements;
|
||
asc_docs_api.prototype['getSelectedElements'] = asc_docs_api.prototype.getSelectedElements;
|
||
asc_docs_api.prototype['sync_ChangeLastSelectedElement'] = asc_docs_api.prototype.sync_ChangeLastSelectedElement;
|
||
asc_docs_api.prototype['asc_getEditorPermissions'] = asc_docs_api.prototype.asc_getEditorPermissions;
|
||
asc_docs_api.prototype['asc_setDocInfo'] = asc_docs_api.prototype.asc_setDocInfo;
|
||
asc_docs_api.prototype['asc_setLocale'] = asc_docs_api.prototype.asc_setLocale;
|
||
asc_docs_api.prototype['asc_LoadDocument'] = asc_docs_api.prototype.asc_LoadDocument;
|
||
asc_docs_api.prototype['SetThemesPath'] = asc_docs_api.prototype.SetThemesPath;
|
||
asc_docs_api.prototype['InitEditor'] = asc_docs_api.prototype.InitEditor;
|
||
asc_docs_api.prototype['SetInterfaceDrawImagePlaceSlide'] = asc_docs_api.prototype.SetInterfaceDrawImagePlaceSlide;
|
||
asc_docs_api.prototype['SetInterfaceDrawImagePlaceTextArt'] = asc_docs_api.prototype.SetInterfaceDrawImagePlaceTextArt;
|
||
asc_docs_api.prototype['OpenDocument2'] = asc_docs_api.prototype.OpenDocument2;
|
||
asc_docs_api.prototype['asc_getDocumentName'] = asc_docs_api.prototype.asc_getDocumentName;
|
||
asc_docs_api.prototype['asc_registerCallback'] = asc_docs_api.prototype.asc_registerCallback;
|
||
asc_docs_api.prototype['asc_unregisterCallback'] = asc_docs_api.prototype.asc_unregisterCallback;
|
||
asc_docs_api.prototype['asc_checkNeedCallback'] = asc_docs_api.prototype.asc_checkNeedCallback;
|
||
asc_docs_api.prototype['get_TextProps'] = asc_docs_api.prototype.get_TextProps;
|
||
asc_docs_api.prototype['asc_getPropertyEditorShapes'] = asc_docs_api.prototype.asc_getPropertyEditorShapes;
|
||
asc_docs_api.prototype['asc_getPropertyEditorTextArts'] = asc_docs_api.prototype.asc_getPropertyEditorTextArts;
|
||
asc_docs_api.prototype['get_PropertyEditorThemes'] = asc_docs_api.prototype.get_PropertyEditorThemes;
|
||
asc_docs_api.prototype['get_ContentCount'] = asc_docs_api.prototype.get_ContentCount;
|
||
asc_docs_api.prototype['UpdateTextPr'] = asc_docs_api.prototype.UpdateTextPr;
|
||
asc_docs_api.prototype['sync_TextSpacing'] = asc_docs_api.prototype.sync_TextSpacing;
|
||
asc_docs_api.prototype['sync_TextDStrikeout'] = asc_docs_api.prototype.sync_TextDStrikeout;
|
||
asc_docs_api.prototype['sync_TextCaps'] = asc_docs_api.prototype.sync_TextCaps;
|
||
asc_docs_api.prototype['sync_TextSmallCaps'] = asc_docs_api.prototype.sync_TextSmallCaps;
|
||
asc_docs_api.prototype['sync_TextPosition'] = asc_docs_api.prototype.sync_TextPosition;
|
||
asc_docs_api.prototype['sync_TextLangCallBack'] = asc_docs_api.prototype.sync_TextLangCallBack;
|
||
asc_docs_api.prototype['sync_VerticalTextAlign'] = asc_docs_api.prototype.sync_VerticalTextAlign;
|
||
asc_docs_api.prototype['sync_Vert'] = asc_docs_api.prototype.sync_Vert;
|
||
asc_docs_api.prototype['UpdateParagraphProp'] = asc_docs_api.prototype.UpdateParagraphProp;
|
||
asc_docs_api.prototype['asc_Print'] = asc_docs_api.prototype.asc_Print;
|
||
asc_docs_api.prototype['Undo'] = asc_docs_api.prototype.Undo;
|
||
asc_docs_api.prototype['Redo'] = asc_docs_api.prototype.Redo;
|
||
asc_docs_api.prototype['Copy'] = asc_docs_api.prototype.Copy;
|
||
asc_docs_api.prototype['Update_ParaTab'] = asc_docs_api.prototype.Update_ParaTab;
|
||
asc_docs_api.prototype['Cut'] = asc_docs_api.prototype.Cut;
|
||
asc_docs_api.prototype['Paste'] = asc_docs_api.prototype.Paste;
|
||
asc_docs_api.prototype['Share'] = asc_docs_api.prototype.Share;
|
||
asc_docs_api.prototype['asc_Save'] = asc_docs_api.prototype.asc_Save;
|
||
asc_docs_api.prototype['forceSave'] = asc_docs_api.prototype.forceSave;
|
||
asc_docs_api.prototype['asc_setIsForceSaveOnUserSave'] = asc_docs_api.prototype.asc_setIsForceSaveOnUserSave;
|
||
asc_docs_api.prototype['asc_DownloadAs'] = asc_docs_api.prototype.asc_DownloadAs;
|
||
asc_docs_api.prototype['Resize'] = asc_docs_api.prototype.Resize;
|
||
asc_docs_api.prototype['AddURL'] = asc_docs_api.prototype.AddURL;
|
||
asc_docs_api.prototype['Help'] = asc_docs_api.prototype.Help;
|
||
asc_docs_api.prototype['startGetDocInfo'] = asc_docs_api.prototype.startGetDocInfo;
|
||
asc_docs_api.prototype['asc_setAdvancedOptions'] = asc_docs_api.prototype.asc_setAdvancedOptions;
|
||
asc_docs_api.prototype['stopGetDocInfo'] = asc_docs_api.prototype.stopGetDocInfo;
|
||
asc_docs_api.prototype['sync_DocInfoCallback'] = asc_docs_api.prototype.sync_DocInfoCallback;
|
||
asc_docs_api.prototype['sync_GetDocInfoStartCallback'] = asc_docs_api.prototype.sync_GetDocInfoStartCallback;
|
||
asc_docs_api.prototype['sync_GetDocInfoStopCallback'] = asc_docs_api.prototype.sync_GetDocInfoStopCallback;
|
||
asc_docs_api.prototype['sync_GetDocInfoEndCallback'] = asc_docs_api.prototype.sync_GetDocInfoEndCallback;
|
||
asc_docs_api.prototype['sync_CanUndoCallback'] = asc_docs_api.prototype.sync_CanUndoCallback;
|
||
asc_docs_api.prototype['sync_CanRedoCallback'] = asc_docs_api.prototype.sync_CanRedoCallback;
|
||
asc_docs_api.prototype['sync_CursorLockCallBack'] = asc_docs_api.prototype.sync_CursorLockCallBack;
|
||
asc_docs_api.prototype['sync_UndoCallBack'] = asc_docs_api.prototype.sync_UndoCallBack;
|
||
asc_docs_api.prototype['sync_RedoCallBack'] = asc_docs_api.prototype.sync_RedoCallBack;
|
||
asc_docs_api.prototype['sync_CopyCallBack'] = asc_docs_api.prototype.sync_CopyCallBack;
|
||
asc_docs_api.prototype['sync_CutCallBack'] = asc_docs_api.prototype.sync_CutCallBack;
|
||
asc_docs_api.prototype['sync_PasteCallBack'] = asc_docs_api.prototype.sync_PasteCallBack;
|
||
asc_docs_api.prototype['sync_ShareCallBack'] = asc_docs_api.prototype.sync_ShareCallBack;
|
||
asc_docs_api.prototype['sync_SaveCallBack'] = asc_docs_api.prototype.sync_SaveCallBack;
|
||
asc_docs_api.prototype['sync_DownloadAsCallBack'] = asc_docs_api.prototype.sync_DownloadAsCallBack;
|
||
asc_docs_api.prototype['sync_StartAction'] = asc_docs_api.prototype.sync_StartAction;
|
||
asc_docs_api.prototype['sync_EndAction'] = asc_docs_api.prototype.sync_EndAction;
|
||
asc_docs_api.prototype['sync_AddURLCallback'] = asc_docs_api.prototype.sync_AddURLCallback;
|
||
asc_docs_api.prototype['sync_ErrorCallback'] = asc_docs_api.prototype.sync_ErrorCallback;
|
||
asc_docs_api.prototype['sync_HelpCallback'] = asc_docs_api.prototype.sync_HelpCallback;
|
||
asc_docs_api.prototype['sync_UpdateZoom'] = asc_docs_api.prototype.sync_UpdateZoom;
|
||
asc_docs_api.prototype['ClearPropObjCallback'] = asc_docs_api.prototype.ClearPropObjCallback;
|
||
asc_docs_api.prototype['CollectHeaders'] = asc_docs_api.prototype.CollectHeaders;
|
||
asc_docs_api.prototype['GetActiveHeader'] = asc_docs_api.prototype.GetActiveHeader;
|
||
asc_docs_api.prototype['gotoHeader'] = asc_docs_api.prototype.gotoHeader;
|
||
asc_docs_api.prototype['sync_ChangeActiveHeaderCallback'] = asc_docs_api.prototype.sync_ChangeActiveHeaderCallback;
|
||
asc_docs_api.prototype['sync_ReturnHeadersCallback'] = asc_docs_api.prototype.sync_ReturnHeadersCallback;
|
||
asc_docs_api.prototype['startSearchText'] = asc_docs_api.prototype.startSearchText;
|
||
asc_docs_api.prototype['goToNextSearchResult'] = asc_docs_api.prototype.goToNextSearchResult;
|
||
asc_docs_api.prototype['gotoSearchResultText'] = asc_docs_api.prototype.gotoSearchResultText;
|
||
asc_docs_api.prototype['stopSearchText'] = asc_docs_api.prototype.stopSearchText;
|
||
asc_docs_api.prototype['findText'] = asc_docs_api.prototype.findText;
|
||
asc_docs_api.prototype['asc_searchEnabled'] = asc_docs_api.prototype.asc_searchEnabled;
|
||
asc_docs_api.prototype['asc_findText'] = asc_docs_api.prototype.asc_findText;
|
||
asc_docs_api.prototype['sync_SearchFoundCallback'] = asc_docs_api.prototype.sync_SearchFoundCallback;
|
||
asc_docs_api.prototype['sync_SearchStartCallback'] = asc_docs_api.prototype.sync_SearchStartCallback;
|
||
asc_docs_api.prototype['sync_SearchStopCallback'] = asc_docs_api.prototype.sync_SearchStopCallback;
|
||
asc_docs_api.prototype['sync_SearchEndCallback'] = asc_docs_api.prototype.sync_SearchEndCallback;
|
||
asc_docs_api.prototype['put_TextPrFontName'] = asc_docs_api.prototype.put_TextPrFontName;
|
||
asc_docs_api.prototype['put_TextPrFontSize'] = asc_docs_api.prototype.put_TextPrFontSize;
|
||
asc_docs_api.prototype['put_TextPrLang'] = asc_docs_api.prototype.put_TextPrLang;
|
||
asc_docs_api.prototype['put_TextPrBold'] = asc_docs_api.prototype.put_TextPrBold;
|
||
asc_docs_api.prototype['put_TextPrItalic'] = asc_docs_api.prototype.put_TextPrItalic;
|
||
asc_docs_api.prototype['put_TextPrUnderline'] = asc_docs_api.prototype.put_TextPrUnderline;
|
||
asc_docs_api.prototype['put_TextPrStrikeout'] = asc_docs_api.prototype.put_TextPrStrikeout;
|
||
asc_docs_api.prototype['put_PrLineSpacing'] = asc_docs_api.prototype.put_PrLineSpacing;
|
||
asc_docs_api.prototype['put_LineSpacingBeforeAfter'] = asc_docs_api.prototype.put_LineSpacingBeforeAfter;
|
||
asc_docs_api.prototype['FontSizeIn'] = asc_docs_api.prototype.FontSizeIn;
|
||
asc_docs_api.prototype['FontSizeOut'] = asc_docs_api.prototype.FontSizeOut;
|
||
asc_docs_api.prototype['put_AlignBySelect'] = asc_docs_api.prototype.put_AlignBySelect;
|
||
asc_docs_api.prototype['get_AlignBySelect'] = asc_docs_api.prototype.get_AlignBySelect;
|
||
asc_docs_api.prototype['sync_BoldCallBack'] = asc_docs_api.prototype.sync_BoldCallBack;
|
||
asc_docs_api.prototype['sync_ItalicCallBack'] = asc_docs_api.prototype.sync_ItalicCallBack;
|
||
asc_docs_api.prototype['sync_UnderlineCallBack'] = asc_docs_api.prototype.sync_UnderlineCallBack;
|
||
asc_docs_api.prototype['sync_StrikeoutCallBack'] = asc_docs_api.prototype.sync_StrikeoutCallBack;
|
||
asc_docs_api.prototype['sync_TextPrFontFamilyCallBack'] = asc_docs_api.prototype.sync_TextPrFontFamilyCallBack;
|
||
asc_docs_api.prototype['sync_TextPrFontSizeCallBack'] = asc_docs_api.prototype.sync_TextPrFontSizeCallBack;
|
||
asc_docs_api.prototype['sync_PrLineSpacingCallBack'] = asc_docs_api.prototype.sync_PrLineSpacingCallBack;
|
||
asc_docs_api.prototype['sync_InitEditorThemes'] = asc_docs_api.prototype.sync_InitEditorThemes;
|
||
asc_docs_api.prototype['sync_InitEditorTableStyles'] = asc_docs_api.prototype.sync_InitEditorTableStyles;
|
||
asc_docs_api.prototype['paraApply'] = asc_docs_api.prototype.paraApply;
|
||
asc_docs_api.prototype['put_PrAlign'] = asc_docs_api.prototype.put_PrAlign;
|
||
asc_docs_api.prototype['put_TextPrBaseline'] = asc_docs_api.prototype.put_TextPrBaseline;
|
||
asc_docs_api.prototype['put_ListType'] = asc_docs_api.prototype.put_ListType;
|
||
asc_docs_api.prototype['put_ShowSnapLines'] = asc_docs_api.prototype.put_ShowSnapLines;
|
||
asc_docs_api.prototype['get_ShowSnapLines'] = asc_docs_api.prototype.get_ShowSnapLines;
|
||
asc_docs_api.prototype['put_ShowParaMarks'] = asc_docs_api.prototype.put_ShowParaMarks;
|
||
asc_docs_api.prototype['get_ShowParaMarks'] = asc_docs_api.prototype.get_ShowParaMarks;
|
||
asc_docs_api.prototype['put_ShowTableEmptyLine'] = asc_docs_api.prototype.put_ShowTableEmptyLine;
|
||
asc_docs_api.prototype['get_ShowTableEmptyLine'] = asc_docs_api.prototype.get_ShowTableEmptyLine;
|
||
asc_docs_api.prototype['ShapeApply'] = asc_docs_api.prototype.ShapeApply;
|
||
asc_docs_api.prototype['setStartPointHistory'] = asc_docs_api.prototype.setStartPointHistory;
|
||
asc_docs_api.prototype['setEndPointHistory'] = asc_docs_api.prototype.setEndPointHistory;
|
||
asc_docs_api.prototype['SetSlideProps'] = asc_docs_api.prototype.SetSlideProps;
|
||
asc_docs_api.prototype['put_LineCap'] = asc_docs_api.prototype.put_LineCap;
|
||
asc_docs_api.prototype['put_LineJoin'] = asc_docs_api.prototype.put_LineJoin;
|
||
asc_docs_api.prototype['put_LineBeginStyle'] = asc_docs_api.prototype.put_LineBeginStyle;
|
||
asc_docs_api.prototype['put_LineBeginSize'] = asc_docs_api.prototype.put_LineBeginSize;
|
||
asc_docs_api.prototype['put_LineEndStyle'] = asc_docs_api.prototype.put_LineEndStyle;
|
||
asc_docs_api.prototype['put_LineEndSize'] = asc_docs_api.prototype.put_LineEndSize;
|
||
asc_docs_api.prototype['put_TextColor2'] = asc_docs_api.prototype.put_TextColor2;
|
||
asc_docs_api.prototype['put_TextColor'] = asc_docs_api.prototype.put_TextColor;
|
||
asc_docs_api.prototype['put_PrIndent'] = asc_docs_api.prototype.put_PrIndent;
|
||
asc_docs_api.prototype['IncreaseIndent'] = asc_docs_api.prototype.IncreaseIndent;
|
||
asc_docs_api.prototype['DecreaseIndent'] = asc_docs_api.prototype.DecreaseIndent;
|
||
asc_docs_api.prototype['put_PrIndentRight'] = asc_docs_api.prototype.put_PrIndentRight;
|
||
asc_docs_api.prototype['put_PrFirstLineIndent'] = asc_docs_api.prototype.put_PrFirstLineIndent;
|
||
asc_docs_api.prototype['getFocusObject'] = asc_docs_api.prototype.getFocusObject;
|
||
asc_docs_api.prototype['sync_VerticalAlign'] = asc_docs_api.prototype.sync_VerticalAlign;
|
||
asc_docs_api.prototype['sync_PrAlignCallBack'] = asc_docs_api.prototype.sync_PrAlignCallBack;
|
||
asc_docs_api.prototype['sync_ListType'] = asc_docs_api.prototype.sync_ListType;
|
||
asc_docs_api.prototype['sync_TextColor'] = asc_docs_api.prototype.sync_TextColor;
|
||
asc_docs_api.prototype['sync_TextColor2'] = asc_docs_api.prototype.sync_TextColor2;
|
||
asc_docs_api.prototype['sync_TextHighLight'] = asc_docs_api.prototype.sync_TextHighLight;
|
||
asc_docs_api.prototype['sync_ParaStyleName'] = asc_docs_api.prototype.sync_ParaStyleName;
|
||
asc_docs_api.prototype['sync_ParaSpacingLine'] = asc_docs_api.prototype.sync_ParaSpacingLine;
|
||
asc_docs_api.prototype['sync_PageBreakCallback'] = asc_docs_api.prototype.sync_PageBreakCallback;
|
||
asc_docs_api.prototype['sync_KeepLinesCallback'] = asc_docs_api.prototype.sync_KeepLinesCallback;
|
||
asc_docs_api.prototype['sync_ShowParaMarksCallback'] = asc_docs_api.prototype.sync_ShowParaMarksCallback;
|
||
asc_docs_api.prototype['sync_SpaceBetweenPrgCallback'] = asc_docs_api.prototype.sync_SpaceBetweenPrgCallback;
|
||
asc_docs_api.prototype['sync_PrPropCallback'] = asc_docs_api.prototype.sync_PrPropCallback;
|
||
asc_docs_api.prototype['SetDrawImagePlaceParagraph'] = asc_docs_api.prototype.SetDrawImagePlaceParagraph;
|
||
asc_docs_api.prototype['get_DocumentOrientation'] = asc_docs_api.prototype.get_DocumentOrientation;
|
||
asc_docs_api.prototype['put_AddPageBreak'] = asc_docs_api.prototype.put_AddPageBreak;
|
||
asc_docs_api.prototype['Update_ParaInd'] = asc_docs_api.prototype.Update_ParaInd;
|
||
asc_docs_api.prototype['Internal_Update_Ind_FirstLine'] = asc_docs_api.prototype.Internal_Update_Ind_FirstLine;
|
||
asc_docs_api.prototype['Internal_Update_Ind_Left'] = asc_docs_api.prototype.Internal_Update_Ind_Left;
|
||
asc_docs_api.prototype['Internal_Update_Ind_Right'] = asc_docs_api.prototype.Internal_Update_Ind_Right;
|
||
asc_docs_api.prototype['sync_DocSizeCallback'] = asc_docs_api.prototype.sync_DocSizeCallback;
|
||
asc_docs_api.prototype['sync_PageOrientCallback'] = asc_docs_api.prototype.sync_PageOrientCallback;
|
||
asc_docs_api.prototype['sync_HeadersAndFootersPropCallback'] = asc_docs_api.prototype.sync_HeadersAndFootersPropCallback;
|
||
asc_docs_api.prototype['put_Table'] = asc_docs_api.prototype.put_Table;
|
||
asc_docs_api.prototype['addRowAbove'] = asc_docs_api.prototype.addRowAbove;
|
||
asc_docs_api.prototype['addRowBelow'] = asc_docs_api.prototype.addRowBelow;
|
||
asc_docs_api.prototype['addColumnLeft'] = asc_docs_api.prototype.addColumnLeft;
|
||
asc_docs_api.prototype['addColumnRight'] = asc_docs_api.prototype.addColumnRight;
|
||
asc_docs_api.prototype['remRow'] = asc_docs_api.prototype.remRow;
|
||
asc_docs_api.prototype['remColumn'] = asc_docs_api.prototype.remColumn;
|
||
asc_docs_api.prototype['remTable'] = asc_docs_api.prototype.remTable;
|
||
asc_docs_api.prototype['asc_DistributeTableCells'] = asc_docs_api.prototype.asc_DistributeTableCells;
|
||
asc_docs_api.prototype['selectRow'] = asc_docs_api.prototype.selectRow;
|
||
asc_docs_api.prototype['selectColumn'] = asc_docs_api.prototype.selectColumn;
|
||
asc_docs_api.prototype['selectCell'] = asc_docs_api.prototype.selectCell;
|
||
asc_docs_api.prototype['selectTable'] = asc_docs_api.prototype.selectTable;
|
||
asc_docs_api.prototype['setColumnWidth'] = asc_docs_api.prototype.setColumnWidth;
|
||
asc_docs_api.prototype['setRowHeight'] = asc_docs_api.prototype.setRowHeight;
|
||
asc_docs_api.prototype['set_TblDistanceFromText'] = asc_docs_api.prototype.set_TblDistanceFromText;
|
||
asc_docs_api.prototype['CheckBeforeMergeCells'] = asc_docs_api.prototype.CheckBeforeMergeCells;
|
||
asc_docs_api.prototype['CheckBeforeSplitCells'] = asc_docs_api.prototype.CheckBeforeSplitCells;
|
||
asc_docs_api.prototype['MergeCells'] = asc_docs_api.prototype.MergeCells;
|
||
asc_docs_api.prototype['SplitCell'] = asc_docs_api.prototype.SplitCell;
|
||
asc_docs_api.prototype['widthTable'] = asc_docs_api.prototype.widthTable;
|
||
asc_docs_api.prototype['put_CellsMargin'] = asc_docs_api.prototype.put_CellsMargin;
|
||
asc_docs_api.prototype['set_TblWrap'] = asc_docs_api.prototype.set_TblWrap;
|
||
asc_docs_api.prototype['set_TblIndentLeft'] = asc_docs_api.prototype.set_TblIndentLeft;
|
||
asc_docs_api.prototype['set_Borders'] = asc_docs_api.prototype.set_Borders;
|
||
asc_docs_api.prototype['set_TableBackground'] = asc_docs_api.prototype.set_TableBackground;
|
||
asc_docs_api.prototype['set_AlignCell'] = asc_docs_api.prototype.set_AlignCell;
|
||
asc_docs_api.prototype['set_TblAlign'] = asc_docs_api.prototype.set_TblAlign;
|
||
asc_docs_api.prototype['set_SpacingBetweenCells'] = asc_docs_api.prototype.set_SpacingBetweenCells;
|
||
asc_docs_api.prototype['tblApply'] = asc_docs_api.prototype.tblApply;
|
||
asc_docs_api.prototype['sync_AddTableCallback'] = asc_docs_api.prototype.sync_AddTableCallback;
|
||
asc_docs_api.prototype['sync_AlignCellCallback'] = asc_docs_api.prototype.sync_AlignCellCallback;
|
||
asc_docs_api.prototype['sync_TblPropCallback'] = asc_docs_api.prototype.sync_TblPropCallback;
|
||
asc_docs_api.prototype['sync_TblWrapStyleChangedCallback'] = asc_docs_api.prototype.sync_TblWrapStyleChangedCallback;
|
||
asc_docs_api.prototype['sync_TblAlignChangedCallback'] = asc_docs_api.prototype.sync_TblAlignChangedCallback;
|
||
asc_docs_api.prototype['ChangeImageFromFile'] = asc_docs_api.prototype.ChangeImageFromFile;
|
||
asc_docs_api.prototype['ChangeShapeImageFromFile'] = asc_docs_api.prototype.ChangeShapeImageFromFile;
|
||
asc_docs_api.prototype['ChangeSlideImageFromFile'] = asc_docs_api.prototype.ChangeSlideImageFromFile;
|
||
asc_docs_api.prototype['ChangeArtImageFromFile'] = asc_docs_api.prototype.ChangeArtImageFromFile;
|
||
asc_docs_api.prototype['AddImage'] = asc_docs_api.prototype.AddImage;
|
||
asc_docs_api.prototype['asc_addImage'] = asc_docs_api.prototype.asc_addImage;
|
||
asc_docs_api.prototype['StartAddShape'] = asc_docs_api.prototype.StartAddShape;
|
||
asc_docs_api.prototype['AddTextArt'] = asc_docs_api.prototype.AddTextArt;
|
||
asc_docs_api.prototype['canGroup'] = asc_docs_api.prototype.canGroup;
|
||
asc_docs_api.prototype['canUnGroup'] = asc_docs_api.prototype.canUnGroup;
|
||
asc_docs_api.prototype['AddImageUrl'] = asc_docs_api.prototype.AddImageUrl;
|
||
asc_docs_api.prototype['AddImageUrlActionCallback'] = asc_docs_api.prototype.AddImageUrlActionCallback;
|
||
asc_docs_api.prototype['AddImageUrlAction'] = asc_docs_api.prototype.AddImageUrlAction;
|
||
asc_docs_api.prototype['ImgApply'] = asc_docs_api.prototype.ImgApply;
|
||
asc_docs_api.prototype['ChartApply'] = asc_docs_api.prototype.ChartApply;
|
||
asc_docs_api.prototype['set_Size'] = asc_docs_api.prototype.set_Size;
|
||
asc_docs_api.prototype['set_ConstProportions'] = asc_docs_api.prototype.set_ConstProportions;
|
||
asc_docs_api.prototype['set_WrapStyle'] = asc_docs_api.prototype.set_WrapStyle;
|
||
asc_docs_api.prototype['deleteImage'] = asc_docs_api.prototype.deleteImage;
|
||
asc_docs_api.prototype['set_ImgDistanceFromText'] = asc_docs_api.prototype.set_ImgDistanceFromText;
|
||
asc_docs_api.prototype['set_PositionOnPage'] = asc_docs_api.prototype.set_PositionOnPage;
|
||
asc_docs_api.prototype['get_OriginalSizeImage'] = asc_docs_api.prototype.get_OriginalSizeImage;
|
||
asc_docs_api.prototype['asc_onCloseChartFrame'] = asc_docs_api.prototype.asc_onCloseChartFrame;
|
||
asc_docs_api.prototype['sync_AddImageCallback'] = asc_docs_api.prototype.sync_AddImageCallback;
|
||
asc_docs_api.prototype['sync_ImgPropCallback'] = asc_docs_api.prototype.sync_ImgPropCallback;
|
||
asc_docs_api.prototype['SetDrawingFreeze'] = asc_docs_api.prototype.SetDrawingFreeze;
|
||
asc_docs_api.prototype['zoomIn'] = asc_docs_api.prototype.zoomIn;
|
||
asc_docs_api.prototype['zoomOut'] = asc_docs_api.prototype.zoomOut;
|
||
asc_docs_api.prototype['zoomFitToPage'] = asc_docs_api.prototype.zoomFitToPage;
|
||
asc_docs_api.prototype['zoomFitToWidth'] = asc_docs_api.prototype.zoomFitToWidth;
|
||
asc_docs_api.prototype['zoomCustomMode'] = asc_docs_api.prototype.zoomCustomMode;
|
||
asc_docs_api.prototype['zoom100'] = asc_docs_api.prototype.zoom100;
|
||
asc_docs_api.prototype['zoom'] = asc_docs_api.prototype.zoom;
|
||
asc_docs_api.prototype['goToPage'] = asc_docs_api.prototype.goToPage;
|
||
asc_docs_api.prototype['getCountPages'] = asc_docs_api.prototype.getCountPages;
|
||
asc_docs_api.prototype['getCurrentPage'] = asc_docs_api.prototype.getCurrentPage;
|
||
asc_docs_api.prototype['sync_countPagesCallback'] = asc_docs_api.prototype.sync_countPagesCallback;
|
||
asc_docs_api.prototype['sync_currentPageCallback'] = asc_docs_api.prototype.sync_currentPageCallback;
|
||
asc_docs_api.prototype['sync_SendThemeColors'] = asc_docs_api.prototype.sync_SendThemeColors;
|
||
asc_docs_api.prototype['ChangeColorScheme'] = asc_docs_api.prototype.ChangeColorScheme;
|
||
asc_docs_api.prototype['asc_enableKeyEvents'] = asc_docs_api.prototype.asc_enableKeyEvents;
|
||
asc_docs_api.prototype['asc_showComments'] = asc_docs_api.prototype.asc_showComments;
|
||
asc_docs_api.prototype['asc_hideComments'] = asc_docs_api.prototype.asc_hideComments;
|
||
asc_docs_api.prototype['asc_addComment'] = asc_docs_api.prototype.asc_addComment;
|
||
asc_docs_api.prototype['asc_getMasterCommentId'] = asc_docs_api.prototype.asc_getMasterCommentId;
|
||
asc_docs_api.prototype['asc_getAnchorPosition'] = asc_docs_api.prototype.asc_getAnchorPosition;
|
||
asc_docs_api.prototype['asc_removeComment'] = asc_docs_api.prototype.asc_removeComment;
|
||
asc_docs_api.prototype['asc_changeComment'] = asc_docs_api.prototype.asc_changeComment;
|
||
asc_docs_api.prototype['asc_selectComment'] = asc_docs_api.prototype.asc_selectComment;
|
||
asc_docs_api.prototype['asc_showComment'] = asc_docs_api.prototype.asc_showComment;
|
||
asc_docs_api.prototype['can_AddQuotedComment'] = asc_docs_api.prototype.can_AddQuotedComment;
|
||
asc_docs_api.prototype['sync_RemoveComment'] = asc_docs_api.prototype.sync_RemoveComment;
|
||
asc_docs_api.prototype['sync_AddComment'] = asc_docs_api.prototype.sync_AddComment;
|
||
asc_docs_api.prototype['sync_ShowComment'] = asc_docs_api.prototype.sync_ShowComment;
|
||
asc_docs_api.prototype['sync_HideComment'] = asc_docs_api.prototype.sync_HideComment;
|
||
asc_docs_api.prototype['sync_UpdateCommentPosition'] = asc_docs_api.prototype.sync_UpdateCommentPosition;
|
||
asc_docs_api.prototype['sync_ChangeCommentData'] = asc_docs_api.prototype.sync_ChangeCommentData;
|
||
asc_docs_api.prototype['sync_LockComment'] = asc_docs_api.prototype.sync_LockComment;
|
||
asc_docs_api.prototype['sync_UnLockComment'] = asc_docs_api.prototype.sync_UnLockComment;
|
||
asc_docs_api.prototype['GenerateStyles'] = asc_docs_api.prototype.GenerateStyles;
|
||
asc_docs_api.prototype['asyncFontsDocumentEndLoaded'] = asc_docs_api.prototype.asyncFontsDocumentEndLoaded;
|
||
asc_docs_api.prototype['asyncImagesDocumentEndLoaded'] = asc_docs_api.prototype.asyncImagesDocumentEndLoaded;
|
||
asc_docs_api.prototype['asyncFontEndLoaded'] = asc_docs_api.prototype.asyncFontEndLoaded;
|
||
asc_docs_api.prototype['asyncImageEndLoaded'] = asc_docs_api.prototype.asyncImageEndLoaded;
|
||
asc_docs_api.prototype['get_PresentationWidth'] = asc_docs_api.prototype.get_PresentationWidth;
|
||
asc_docs_api.prototype['get_PresentationHeight'] = asc_docs_api.prototype.get_PresentationHeight;
|
||
asc_docs_api.prototype['pre_Paste'] = asc_docs_api.prototype.pre_Paste;
|
||
asc_docs_api.prototype['initEvents2MobileAdvances'] = asc_docs_api.prototype.initEvents2MobileAdvances;
|
||
asc_docs_api.prototype['ViewScrollToX'] = asc_docs_api.prototype.ViewScrollToX;
|
||
asc_docs_api.prototype['ViewScrollToY'] = asc_docs_api.prototype.ViewScrollToY;
|
||
asc_docs_api.prototype['GetDocWidthPx'] = asc_docs_api.prototype.GetDocWidthPx;
|
||
asc_docs_api.prototype['GetDocHeightPx'] = asc_docs_api.prototype.GetDocHeightPx;
|
||
asc_docs_api.prototype['ClearSearch'] = asc_docs_api.prototype.ClearSearch;
|
||
asc_docs_api.prototype['GetCurrentVisiblePage'] = asc_docs_api.prototype.GetCurrentVisiblePage;
|
||
asc_docs_api.prototype['asc_setAutoSaveGap'] = asc_docs_api.prototype.asc_setAutoSaveGap;
|
||
asc_docs_api.prototype['asc_SetDocumentPlaceChangedEnabled'] = asc_docs_api.prototype.asc_SetDocumentPlaceChangedEnabled;
|
||
asc_docs_api.prototype['asc_SetViewRulers'] = asc_docs_api.prototype.asc_SetViewRulers;
|
||
asc_docs_api.prototype['asc_SetViewRulersChange'] = asc_docs_api.prototype.asc_SetViewRulersChange;
|
||
asc_docs_api.prototype['asc_GetViewRulers'] = asc_docs_api.prototype.asc_GetViewRulers;
|
||
asc_docs_api.prototype['asc_SetDocumentUnits'] = asc_docs_api.prototype.asc_SetDocumentUnits;
|
||
asc_docs_api.prototype['GoToHeader'] = asc_docs_api.prototype.GoToHeader;
|
||
asc_docs_api.prototype['changeSlideSize'] = asc_docs_api.prototype.changeSlideSize;
|
||
asc_docs_api.prototype['AddSlide'] = asc_docs_api.prototype.AddSlide;
|
||
asc_docs_api.prototype['DeleteSlide'] = asc_docs_api.prototype.DeleteSlide;
|
||
asc_docs_api.prototype['DublicateSlide'] = asc_docs_api.prototype.DublicateSlide;
|
||
asc_docs_api.prototype['SelectAllSlides'] = asc_docs_api.prototype.SelectAllSlides;
|
||
asc_docs_api.prototype['AddShape'] = asc_docs_api.prototype.AddShape;
|
||
asc_docs_api.prototype['ChangeShapeType'] = asc_docs_api.prototype.ChangeShapeType;
|
||
asc_docs_api.prototype['AddText'] = asc_docs_api.prototype.AddText;
|
||
asc_docs_api.prototype['groupShapes'] = asc_docs_api.prototype.groupShapes;
|
||
asc_docs_api.prototype['unGroupShapes'] = asc_docs_api.prototype.unGroupShapes;
|
||
asc_docs_api.prototype['setVerticalAlign'] = asc_docs_api.prototype.setVerticalAlign;
|
||
asc_docs_api.prototype['setVert'] = asc_docs_api.prototype.setVert;
|
||
asc_docs_api.prototype['sync_MouseMoveStartCallback'] = asc_docs_api.prototype.sync_MouseMoveStartCallback;
|
||
asc_docs_api.prototype['sync_MouseMoveEndCallback'] = asc_docs_api.prototype.sync_MouseMoveEndCallback;
|
||
asc_docs_api.prototype['sync_MouseMoveCallback'] = asc_docs_api.prototype.sync_MouseMoveCallback;
|
||
asc_docs_api.prototype['ShowThumbnails'] = asc_docs_api.prototype.ShowThumbnails;
|
||
asc_docs_api.prototype['asc_DeleteVerticalScroll'] = asc_docs_api.prototype.asc_DeleteVerticalScroll;
|
||
asc_docs_api.prototype['syncOnThumbnailsShow'] = asc_docs_api.prototype.syncOnThumbnailsShow;
|
||
asc_docs_api.prototype['can_AddHyperlink'] = asc_docs_api.prototype.can_AddHyperlink;
|
||
asc_docs_api.prototype['add_Hyperlink'] = asc_docs_api.prototype.add_Hyperlink;
|
||
asc_docs_api.prototype['change_Hyperlink'] = asc_docs_api.prototype.change_Hyperlink;
|
||
asc_docs_api.prototype['remove_Hyperlink'] = asc_docs_api.prototype.remove_Hyperlink;
|
||
asc_docs_api.prototype['sync_HyperlinkPropCallback'] = asc_docs_api.prototype.sync_HyperlinkPropCallback;
|
||
asc_docs_api.prototype['sync_HyperlinkClickCallback'] = asc_docs_api.prototype.sync_HyperlinkClickCallback;
|
||
asc_docs_api.prototype['asc_GoToInternalHyperlink'] = asc_docs_api.prototype.asc_GoToInternalHyperlink;
|
||
asc_docs_api.prototype['sync_CanAddHyperlinkCallback'] = asc_docs_api.prototype.sync_CanAddHyperlinkCallback;
|
||
asc_docs_api.prototype['sync_DialogAddHyperlink'] = asc_docs_api.prototype.sync_DialogAddHyperlink;
|
||
asc_docs_api.prototype['sync_SpellCheckCallback'] = asc_docs_api.prototype.sync_SpellCheckCallback;
|
||
asc_docs_api.prototype['sync_SpellCheckVariantsFound'] = asc_docs_api.prototype.sync_SpellCheckVariantsFound;
|
||
asc_docs_api.prototype['asc_replaceMisspelledWord'] = asc_docs_api.prototype.asc_replaceMisspelledWord;
|
||
asc_docs_api.prototype['asc_ignoreMisspelledWord'] = asc_docs_api.prototype.asc_ignoreMisspelledWord;
|
||
asc_docs_api.prototype['asc_setDefaultLanguage'] = asc_docs_api.prototype.asc_setDefaultLanguage;
|
||
asc_docs_api.prototype['asc_getDefaultLanguage'] = asc_docs_api.prototype.asc_getDefaultLanguage;
|
||
asc_docs_api.prototype['asc_getKeyboardLanguage'] = asc_docs_api.prototype.asc_getKeyboardLanguage;
|
||
asc_docs_api.prototype['asc_setSpellCheck'] = asc_docs_api.prototype.asc_setSpellCheck;
|
||
asc_docs_api.prototype['sync_shapePropCallback'] = asc_docs_api.prototype.sync_shapePropCallback;
|
||
asc_docs_api.prototype['sync_slidePropCallback'] = asc_docs_api.prototype.sync_slidePropCallback;
|
||
asc_docs_api.prototype['ExitHeader_Footer'] = asc_docs_api.prototype.ExitHeader_Footer;
|
||
asc_docs_api.prototype['GetCurrentPixOffsetY'] = asc_docs_api.prototype.GetCurrentPixOffsetY;
|
||
asc_docs_api.prototype['SetPaintFormat'] = asc_docs_api.prototype.SetPaintFormat;
|
||
asc_docs_api.prototype['sync_PaintFormatCallback'] = asc_docs_api.prototype.sync_PaintFormatCallback;
|
||
asc_docs_api.prototype['ClearFormating'] = asc_docs_api.prototype.ClearFormating;
|
||
asc_docs_api.prototype['SetDeviceInputHelperId'] = asc_docs_api.prototype.SetDeviceInputHelperId;
|
||
asc_docs_api.prototype['asc_setViewMode'] = asc_docs_api.prototype.asc_setViewMode;
|
||
asc_docs_api.prototype['asc_setRestriction'] = asc_docs_api.prototype.asc_setRestriction;
|
||
asc_docs_api.prototype['sync_HyperlinkClickCallback'] = asc_docs_api.prototype.sync_HyperlinkClickCallback;
|
||
asc_docs_api.prototype['UpdateInterfaceState'] = asc_docs_api.prototype.UpdateInterfaceState;
|
||
asc_docs_api.prototype['OnMouseUp'] = asc_docs_api.prototype.OnMouseUp;
|
||
asc_docs_api.prototype['asyncImageEndLoaded2'] = asc_docs_api.prototype.asyncImageEndLoaded2;
|
||
asc_docs_api.prototype['ChangeTheme'] = asc_docs_api.prototype.ChangeTheme;
|
||
asc_docs_api.prototype['StartLoadTheme'] = asc_docs_api.prototype.StartLoadTheme;
|
||
asc_docs_api.prototype['EndLoadTheme'] = asc_docs_api.prototype.EndLoadTheme;
|
||
asc_docs_api.prototype['ChangeLayout'] = asc_docs_api.prototype.ChangeLayout;
|
||
asc_docs_api.prototype['put_ShapesAlign'] = asc_docs_api.prototype.put_ShapesAlign;
|
||
asc_docs_api.prototype['DistributeHorizontally'] = asc_docs_api.prototype.DistributeHorizontally;
|
||
asc_docs_api.prototype['DistributeVertically'] = asc_docs_api.prototype.DistributeVertically;
|
||
asc_docs_api.prototype['shapes_alignLeft'] = asc_docs_api.prototype.shapes_alignLeft;
|
||
asc_docs_api.prototype['shapes_alignRight'] = asc_docs_api.prototype.shapes_alignRight;
|
||
asc_docs_api.prototype['shapes_alignTop'] = asc_docs_api.prototype.shapes_alignTop;
|
||
asc_docs_api.prototype['shapes_alignBottom'] = asc_docs_api.prototype.shapes_alignBottom;
|
||
asc_docs_api.prototype['shapes_alignCenter'] = asc_docs_api.prototype.shapes_alignCenter;
|
||
asc_docs_api.prototype['shapes_alignMiddle'] = asc_docs_api.prototype.shapes_alignMiddle;
|
||
asc_docs_api.prototype['shapes_bringToFront'] = asc_docs_api.prototype.shapes_bringToFront;
|
||
asc_docs_api.prototype['shapes_bringForward'] = asc_docs_api.prototype.shapes_bringForward;
|
||
asc_docs_api.prototype['shapes_bringToBack'] = asc_docs_api.prototype.shapes_bringToBack;
|
||
asc_docs_api.prototype['shapes_bringBackward'] = asc_docs_api.prototype.shapes_bringBackward;
|
||
asc_docs_api.prototype['sync_endDemonstration'] = asc_docs_api.prototype.sync_endDemonstration;
|
||
asc_docs_api.prototype['sync_DemonstrationSlideChanged'] = asc_docs_api.prototype.sync_DemonstrationSlideChanged;
|
||
asc_docs_api.prototype['StartDemonstration'] = asc_docs_api.prototype.StartDemonstration;
|
||
asc_docs_api.prototype['EndDemonstration'] = asc_docs_api.prototype.EndDemonstration;
|
||
asc_docs_api.prototype['DemonstrationPlay'] = asc_docs_api.prototype.DemonstrationPlay;
|
||
asc_docs_api.prototype['DemonstrationPause'] = asc_docs_api.prototype.DemonstrationPause;
|
||
asc_docs_api.prototype['DemonstrationEndShowMessage'] = asc_docs_api.prototype.DemonstrationEndShowMessage;
|
||
asc_docs_api.prototype['DemonstrationNextSlide'] = asc_docs_api.prototype.DemonstrationNextSlide;
|
||
asc_docs_api.prototype['DemonstrationPrevSlide'] = asc_docs_api.prototype.DemonstrationPrevSlide;
|
||
asc_docs_api.prototype['DemonstrationGoToSlide'] = asc_docs_api.prototype.DemonstrationGoToSlide;
|
||
asc_docs_api.prototype['sendFromReporter'] = asc_docs_api.prototype.sendFromReporter;
|
||
asc_docs_api.prototype['SetDemonstrationModeOnly'] = asc_docs_api.prototype.SetDemonstrationModeOnly;
|
||
asc_docs_api.prototype['ApplySlideTiming'] = asc_docs_api.prototype.ApplySlideTiming;
|
||
asc_docs_api.prototype['SlideTimingApplyToAll'] = asc_docs_api.prototype.SlideTimingApplyToAll;
|
||
asc_docs_api.prototype['SlideTransitionPlay'] = asc_docs_api.prototype.SlideTransitionPlay;
|
||
asc_docs_api.prototype['asc_HideSlides'] = asc_docs_api.prototype.asc_HideSlides;
|
||
asc_docs_api.prototype['SetTextBoxInputMode'] = asc_docs_api.prototype.SetTextBoxInputMode;
|
||
asc_docs_api.prototype['GetTextBoxInputMode'] = asc_docs_api.prototype.GetTextBoxInputMode;
|
||
asc_docs_api.prototype['sync_EndAddShape'] = asc_docs_api.prototype.sync_EndAddShape;
|
||
asc_docs_api.prototype['asc_getChartObject'] = asc_docs_api.prototype.asc_getChartObject;
|
||
asc_docs_api.prototype['asc_addChartDrawingObject'] = asc_docs_api.prototype.asc_addChartDrawingObject;
|
||
asc_docs_api.prototype['asc_editChartDrawingObject'] = asc_docs_api.prototype.asc_editChartDrawingObject;
|
||
asc_docs_api.prototype['asc_getChartPreviews'] = asc_docs_api.prototype.asc_getChartPreviews;
|
||
asc_docs_api.prototype['asc_getTextArtPreviews'] = asc_docs_api.prototype.asc_getTextArtPreviews;
|
||
asc_docs_api.prototype['sync_closeChartEditor'] = asc_docs_api.prototype.sync_closeChartEditor;
|
||
asc_docs_api.prototype['asc_stopSaving'] = asc_docs_api.prototype.asc_stopSaving;
|
||
asc_docs_api.prototype['asc_continueSaving'] = asc_docs_api.prototype.asc_continueSaving;
|
||
asc_docs_api.prototype['asc_undoAllChanges'] = asc_docs_api.prototype.asc_undoAllChanges;
|
||
asc_docs_api.prototype['sync_ContextMenuCallback'] = asc_docs_api.prototype.sync_ContextMenuCallback;
|
||
asc_docs_api.prototype['asc_addComment'] = asc_docs_api.prototype.asc_addComment;
|
||
asc_docs_api.prototype['asc_SetFastCollaborative'] = asc_docs_api.prototype.asc_SetFastCollaborative;
|
||
asc_docs_api.prototype['asc_isOffline'] = asc_docs_api.prototype.asc_isOffline;
|
||
asc_docs_api.prototype['asc_getUrlType'] = asc_docs_api.prototype.asc_getUrlType;
|
||
asc_docs_api.prototype['asc_getSessionToken'] = asc_docs_api.prototype.asc_getSessionToken;
|
||
asc_docs_api.prototype["asc_setInterfaceDrawImagePlaceShape"] = asc_docs_api.prototype.asc_setInterfaceDrawImagePlaceShape;
|
||
asc_docs_api.prototype["asc_nativeInitBuilder"] = asc_docs_api.prototype.asc_nativeInitBuilder;
|
||
asc_docs_api.prototype["asc_SetSilentMode"] = asc_docs_api.prototype.asc_SetSilentMode;
|
||
asc_docs_api.prototype["asc_pluginsRegister"] = asc_docs_api.prototype.asc_pluginsRegister;
|
||
asc_docs_api.prototype["asc_pluginRun"] = asc_docs_api.prototype.asc_pluginRun;
|
||
asc_docs_api.prototype["asc_pluginResize"] = asc_docs_api.prototype.asc_pluginResize;
|
||
asc_docs_api.prototype["asc_pluginButtonClick"] = asc_docs_api.prototype.asc_pluginButtonClick;
|
||
asc_docs_api.prototype["asc_pluginEnableMouseEvents"] = asc_docs_api.prototype.asc_pluginEnableMouseEvents;
|
||
|
||
asc_docs_api.prototype["asc_addOleObject"] = asc_docs_api.prototype.asc_addOleObject;
|
||
asc_docs_api.prototype["asc_editOleObject"] = asc_docs_api.prototype.asc_editOleObject;
|
||
asc_docs_api.prototype["asc_startEditCurrentOleObject"] = asc_docs_api.prototype.asc_startEditCurrentOleObject;
|
||
asc_docs_api.prototype["asc_InputClearKeyboardElement"] = asc_docs_api.prototype.asc_InputClearKeyboardElement;
|
||
|
||
asc_docs_api.prototype["asc_getCurrentFocusObject"] = asc_docs_api.prototype.asc_getCurrentFocusObject;
|
||
asc_docs_api.prototype["asc_AddMath"] = asc_docs_api.prototype.asc_AddMath;
|
||
asc_docs_api.prototype["asc_SetMathProps"] = asc_docs_api.prototype.asc_SetMathProps;
|
||
|
||
// mobile
|
||
asc_docs_api.prototype["asc_GetDefaultTableStyles"] = asc_docs_api.prototype.asc_GetDefaultTableStyles;
|
||
asc_docs_api.prototype["asc_Remove"] = asc_docs_api.prototype.asc_Remove;
|
||
asc_docs_api.prototype["AddShapeOnCurrentPage"] = asc_docs_api.prototype.AddShapeOnCurrentPage;
|
||
asc_docs_api.prototype["can_CopyCut"] = asc_docs_api.prototype.can_CopyCut;
|
||
|
||
asc_docs_api.prototype["asc_OnHideContextMenu"] = asc_docs_api.prototype.asc_OnHideContextMenu;
|
||
asc_docs_api.prototype["asc_OnShowContextMenu"] = asc_docs_api.prototype.asc_OnShowContextMenu;
|
||
|
||
asc_docs_api.prototype["DemonstrationReporterMessages"] = asc_docs_api.prototype.DemonstrationReporterMessages;
|
||
asc_docs_api.prototype["DemonstrationToReporterMessages"] = asc_docs_api.prototype.DemonstrationToReporterMessages;
|
||
asc_docs_api.prototype["preloadReporter"] = asc_docs_api.prototype.preloadReporter;
|
||
|
||
asc_docs_api.prototype["asc_SpecialPaste"] = asc_docs_api.prototype.asc_SpecialPaste;
|
||
|
||
// signatures
|
||
asc_docs_api.prototype["asc_addSignatureLine"] = asc_docs_api.prototype.asc_addSignatureLine;
|
||
asc_docs_api.prototype["asc_CallSignatureDblClickEvent"] = asc_docs_api.prototype.asc_CallSignatureDblClickEvent;
|
||
asc_docs_api.prototype["asc_getRequestSignatures"] = asc_docs_api.prototype.asc_getRequestSignatures;
|
||
asc_docs_api.prototype["asc_AddSignatureLine2"] = asc_docs_api.prototype.asc_AddSignatureLine2;
|
||
asc_docs_api.prototype["asc_Sign"] = asc_docs_api.prototype.asc_Sign;
|
||
asc_docs_api.prototype["asc_RequestSign"] = asc_docs_api.prototype.asc_RequestSign;
|
||
asc_docs_api.prototype["asc_ViewCertificate"] = asc_docs_api.prototype.asc_ViewCertificate;
|
||
asc_docs_api.prototype["asc_SelectCertificate"] = asc_docs_api.prototype.asc_SelectCertificate;
|
||
asc_docs_api.prototype["asc_GetDefaultCertificate"] = asc_docs_api.prototype.asc_GetDefaultCertificate;
|
||
asc_docs_api.prototype["asc_getSignatures"] = asc_docs_api.prototype.asc_getSignatures;
|
||
asc_docs_api.prototype["asc_isSignaturesSupport"] = asc_docs_api.prototype.asc_isSignaturesSupport;
|
||
asc_docs_api.prototype["asc_isProtectionSupport"] = asc_docs_api.prototype.asc_isProtectionSupport;
|
||
asc_docs_api.prototype["asc_RemoveSignature"] = asc_docs_api.prototype.asc_RemoveSignature;
|
||
asc_docs_api.prototype["asc_RemoveAllSignatures"] = asc_docs_api.prototype.asc_RemoveAllSignatures;
|
||
asc_docs_api.prototype["asc_gotoSignature"] = asc_docs_api.prototype.asc_gotoSignature;
|
||
asc_docs_api.prototype["asc_getSignatureSetup"] = asc_docs_api.prototype.asc_getSignatureSetup;
|
||
|
||
// password
|
||
asc_docs_api.prototype["asc_setCurrentPassword"] = asc_docs_api.prototype.asc_setCurrentPassword;
|
||
asc_docs_api.prototype["asc_resetPassword"] = asc_docs_api.prototype.asc_resetPassword;
|
||
|
||
|
||
window['Asc']['asc_CCommentData'] = window['Asc'].asc_CCommentData = asc_CCommentData;
|
||
asc_CCommentData.prototype['asc_getText'] = asc_CCommentData.prototype.asc_getText;
|
||
asc_CCommentData.prototype['asc_putText'] = asc_CCommentData.prototype.asc_putText;
|
||
asc_CCommentData.prototype['asc_getTime'] = asc_CCommentData.prototype.asc_getTime;
|
||
asc_CCommentData.prototype['asc_putTime'] = asc_CCommentData.prototype.asc_putTime;
|
||
asc_CCommentData.prototype['asc_getOnlyOfficeTime'] = asc_CCommentData.prototype.asc_getOnlyOfficeTime;
|
||
asc_CCommentData.prototype['asc_putOnlyOfficeTime'] = asc_CCommentData.prototype.asc_putOnlyOfficeTime;
|
||
asc_CCommentData.prototype['asc_getUserId'] = asc_CCommentData.prototype.asc_getUserId;
|
||
asc_CCommentData.prototype['asc_putUserId'] = asc_CCommentData.prototype.asc_putUserId;
|
||
asc_CCommentData.prototype['asc_getUserName'] = asc_CCommentData.prototype.asc_getUserName;
|
||
asc_CCommentData.prototype['asc_putUserName'] = asc_CCommentData.prototype.asc_putUserName;
|
||
asc_CCommentData.prototype['asc_getQuoteText'] = asc_CCommentData.prototype.asc_getQuoteText;
|
||
asc_CCommentData.prototype['asc_putQuoteText'] = asc_CCommentData.prototype.asc_putQuoteText;
|
||
asc_CCommentData.prototype['asc_getSolved'] = asc_CCommentData.prototype.asc_getSolved;
|
||
asc_CCommentData.prototype['asc_putSolved'] = asc_CCommentData.prototype.asc_putSolved;
|
||
asc_CCommentData.prototype['asc_getReply'] = asc_CCommentData.prototype.asc_getReply;
|
||
asc_CCommentData.prototype['asc_addReply'] = asc_CCommentData.prototype.asc_addReply;
|
||
asc_CCommentData.prototype['asc_getRepliesCount'] = asc_CCommentData.prototype.asc_getRepliesCount;
|
||
asc_CCommentData.prototype["asc_putDocumentFlag"] = asc_CCommentData.prototype.asc_putDocumentFlag;
|
||
asc_CCommentData.prototype["asc_getDocumentFlag"] = asc_CCommentData.prototype.asc_getDocumentFlag;
|
||
|
||
window['AscCommonSlide'].CContextMenuData = CContextMenuData;
|
||
CContextMenuData.prototype['get_Type'] = CContextMenuData.prototype.get_Type;
|
||
CContextMenuData.prototype['get_X'] = CContextMenuData.prototype.get_X;
|
||
CContextMenuData.prototype['get_Y'] = CContextMenuData.prototype.get_Y;
|
||
CContextMenuData.prototype['get_IsSlideSelect'] = CContextMenuData.prototype.get_IsSlideSelect;
|
||
CContextMenuData.prototype['get_IsSlideHidden'] = CContextMenuData.prototype.get_IsSlideHidden;
|
||
window['Asc']['CAscSlideProps'] = CAscSlideProps;
|
||
CAscSlideProps.prototype['get_background'] = CAscSlideProps.prototype.get_background;
|
||
CAscSlideProps.prototype['put_background'] = CAscSlideProps.prototype.put_background;
|
||
CAscSlideProps.prototype['get_LayoutIndex'] = CAscSlideProps.prototype.get_LayoutIndex;
|
||
CAscSlideProps.prototype['put_LayoutIndex'] = CAscSlideProps.prototype.put_LayoutIndex;
|
||
CAscSlideProps.prototype['get_timing'] = CAscSlideProps.prototype.get_timing;
|
||
CAscSlideProps.prototype['put_timing'] = CAscSlideProps.prototype.put_timing;
|
||
CAscSlideProps.prototype['get_LockDelete'] = CAscSlideProps.prototype.get_LockDelete;
|
||
CAscSlideProps.prototype['put_LockDelete'] = CAscSlideProps.prototype.put_LockDelete;
|
||
CAscSlideProps.prototype['get_LockLayout'] = CAscSlideProps.prototype.get_LockLayout;
|
||
CAscSlideProps.prototype['put_LockLayout'] = CAscSlideProps.prototype.put_LockLayout;
|
||
CAscSlideProps.prototype['get_LockTiming'] = CAscSlideProps.prototype.get_LockTiming;
|
||
CAscSlideProps.prototype['put_LockTiming'] = CAscSlideProps.prototype.put_LockTiming;
|
||
CAscSlideProps.prototype['get_LockBackground'] = CAscSlideProps.prototype.get_LockBackground;
|
||
CAscSlideProps.prototype['put_LockBackground'] = CAscSlideProps.prototype.put_LockBackground;
|
||
CAscSlideProps.prototype['get_LockTranzition'] = CAscSlideProps.prototype.get_LockTranzition;
|
||
CAscSlideProps.prototype['put_LockTranzition'] = CAscSlideProps.prototype.put_LockTranzition;
|
||
CAscSlideProps.prototype['get_LockRemove'] = CAscSlideProps.prototype.get_LockRemove;
|
||
CAscSlideProps.prototype['put_LockRemove'] = CAscSlideProps.prototype.put_LockRemove;
|
||
CAscSlideProps.prototype['get_IsHidden'] = CAscSlideProps.prototype.get_IsHidden;
|
||
window['Asc']['CAscChartProp'] = CAscChartProp;
|
||
CAscChartProp.prototype['get_ChangeLevel'] = CAscChartProp.prototype.get_ChangeLevel;
|
||
CAscChartProp.prototype['put_ChangeLevel'] = CAscChartProp.prototype.put_ChangeLevel;
|
||
CAscChartProp.prototype['get_CanBeFlow'] = CAscChartProp.prototype.get_CanBeFlow;
|
||
CAscChartProp.prototype['get_Width'] = CAscChartProp.prototype.get_Width;
|
||
CAscChartProp.prototype['put_Width'] = CAscChartProp.prototype.put_Width;
|
||
CAscChartProp.prototype['get_Height'] = CAscChartProp.prototype.get_Height;
|
||
CAscChartProp.prototype['put_Height'] = CAscChartProp.prototype.put_Height;
|
||
CAscChartProp.prototype['get_WrappingStyle'] = CAscChartProp.prototype.get_WrappingStyle;
|
||
CAscChartProp.prototype['put_WrappingStyle'] = CAscChartProp.prototype.put_WrappingStyle;
|
||
CAscChartProp.prototype['get_Paddings'] = CAscChartProp.prototype.get_Paddings;
|
||
CAscChartProp.prototype['put_Paddings'] = CAscChartProp.prototype.put_Paddings;
|
||
CAscChartProp.prototype['get_AllowOverlap'] = CAscChartProp.prototype.get_AllowOverlap;
|
||
CAscChartProp.prototype['put_AllowOverlap'] = CAscChartProp.prototype.put_AllowOverlap;
|
||
CAscChartProp.prototype['get_Position'] = CAscChartProp.prototype.get_Position;
|
||
CAscChartProp.prototype['put_Position'] = CAscChartProp.prototype.put_Position;
|
||
CAscChartProp.prototype['get_PositionH'] = CAscChartProp.prototype.get_PositionH;
|
||
CAscChartProp.prototype['put_PositionH'] = CAscChartProp.prototype.put_PositionH;
|
||
CAscChartProp.prototype['get_PositionV'] = CAscChartProp.prototype.get_PositionV;
|
||
CAscChartProp.prototype['put_PositionV'] = CAscChartProp.prototype.put_PositionV;
|
||
CAscChartProp.prototype['get_Value_X'] = CAscChartProp.prototype.get_Value_X;
|
||
CAscChartProp.prototype['get_Value_Y'] = CAscChartProp.prototype.get_Value_Y;
|
||
CAscChartProp.prototype['get_ImageUrl'] = CAscChartProp.prototype.get_ImageUrl;
|
||
CAscChartProp.prototype['put_ImageUrl'] = CAscChartProp.prototype.put_ImageUrl;
|
||
CAscChartProp.prototype['get_Group'] = CAscChartProp.prototype.get_Group;
|
||
CAscChartProp.prototype['put_Group'] = CAscChartProp.prototype.put_Group;
|
||
CAscChartProp.prototype['asc_getFromGroup'] = CAscChartProp.prototype.asc_getFromGroup;
|
||
CAscChartProp.prototype['asc_putFromGroup'] = CAscChartProp.prototype.asc_putFromGroup;
|
||
CAscChartProp.prototype['get_isChartProps'] = CAscChartProp.prototype.get_isChartProps;
|
||
CAscChartProp.prototype['put_isChartPross'] = CAscChartProp.prototype.put_isChartPross;
|
||
CAscChartProp.prototype['get_SeveralCharts'] = CAscChartProp.prototype.get_SeveralCharts;
|
||
CAscChartProp.prototype['put_SeveralCharts'] = CAscChartProp.prototype.put_SeveralCharts;
|
||
CAscChartProp.prototype['get_SeveralChartTypes'] = CAscChartProp.prototype.get_SeveralChartTypes;
|
||
CAscChartProp.prototype['put_SeveralChartTypes'] = CAscChartProp.prototype.put_SeveralChartTypes;
|
||
CAscChartProp.prototype['get_SeveralChartStyles'] = CAscChartProp.prototype.get_SeveralChartStyles;
|
||
CAscChartProp.prototype['put_SeveralChartStyles'] = CAscChartProp.prototype.put_SeveralChartStyles;
|
||
CAscChartProp.prototype['get_VerticalTextAlign'] = CAscChartProp.prototype.get_VerticalTextAlign;
|
||
CAscChartProp.prototype['put_VerticalTextAlign'] = CAscChartProp.prototype.put_VerticalTextAlign;
|
||
CAscChartProp.prototype['get_Locked'] = CAscChartProp.prototype.get_Locked;
|
||
CAscChartProp.prototype['get_ChartProperties'] = CAscChartProp.prototype.get_ChartProperties;
|
||
CAscChartProp.prototype['put_ChartProperties'] = CAscChartProp.prototype.put_ChartProperties;
|
||
CAscChartProp.prototype['get_ShapeProperties'] = CAscChartProp.prototype.get_ShapeProperties;
|
||
CAscChartProp.prototype['put_ShapeProperties'] = CAscChartProp.prototype.put_ShapeProperties;
|
||
CAscChartProp.prototype['asc_getType'] = CAscChartProp.prototype.asc_getType;
|
||
CAscChartProp.prototype['asc_getSubType'] = CAscChartProp.prototype.asc_getSubType;
|
||
CAscChartProp.prototype['asc_getStyleId'] = CAscChartProp.prototype.asc_getStyleId;
|
||
CAscChartProp.prototype['asc_getHeight'] = CAscChartProp.prototype.asc_getHeight;
|
||
CAscChartProp.prototype['asc_getWidth'] = CAscChartProp.prototype.asc_getWidth;
|
||
CAscChartProp.prototype['asc_setType'] = CAscChartProp.prototype.asc_setType;
|
||
CAscChartProp.prototype['asc_setSubType'] = CAscChartProp.prototype.asc_setSubType;
|
||
CAscChartProp.prototype['asc_setStyleId'] = CAscChartProp.prototype.asc_setStyleId;
|
||
CAscChartProp.prototype['asc_setHeight'] = CAscChartProp.prototype.asc_setHeight;
|
||
CAscChartProp.prototype['asc_setWidth'] = CAscChartProp.prototype.asc_setWidth;
|
||
CAscChartProp.prototype['asc_putTitle'] = CAscChartProp.prototype['put_Title'] = CAscChartProp.prototype['asc_setTitle'] = CAscChartProp.prototype.asc_setTitle;
|
||
CAscChartProp.prototype['asc_putDescription'] = CAscChartProp.prototype['put_Description'] = CAscChartProp.prototype['asc_setDescription'] = CAscChartProp.prototype.asc_setDescription;
|
||
CAscChartProp.prototype['asc_getTitle'] = CAscChartProp.prototype.asc_getTitle;
|
||
CAscChartProp.prototype['asc_getDescription'] = CAscChartProp.prototype.asc_getDescription;
|
||
CAscChartProp.prototype['getType'] = CAscChartProp.prototype.getType;
|
||
CAscChartProp.prototype['putType'] = CAscChartProp.prototype.putType;
|
||
CAscChartProp.prototype['getStyle'] = CAscChartProp.prototype.getStyle;
|
||
CAscChartProp.prototype['putStyle'] = CAscChartProp.prototype.putStyle;
|
||
CAscChartProp.prototype['putLockAspect'] = CAscChartProp.prototype['asc_putLockAspect'] = CAscChartProp.prototype.putLockAspect;
|
||
CAscChartProp.prototype['getLockAspect'] = CAscChartProp.prototype['asc_getLockAspect'] = CAscChartProp.prototype.getLockAspect;
|
||
CAscChartProp.prototype['changeType'] = CAscChartProp.prototype.changeType;
|
||
CDocInfoProp.prototype['get_PageCount'] = CDocInfoProp.prototype.get_PageCount;
|
||
CDocInfoProp.prototype['put_PageCount'] = CDocInfoProp.prototype.put_PageCount;
|
||
CDocInfoProp.prototype['get_WordsCount'] = CDocInfoProp.prototype.get_WordsCount;
|
||
CDocInfoProp.prototype['put_WordsCount'] = CDocInfoProp.prototype.put_WordsCount;
|
||
CDocInfoProp.prototype['get_ParagraphCount'] = CDocInfoProp.prototype.get_ParagraphCount;
|
||
CDocInfoProp.prototype['put_ParagraphCount'] = CDocInfoProp.prototype.put_ParagraphCount;
|
||
CDocInfoProp.prototype['get_SymbolsCount'] = CDocInfoProp.prototype.get_SymbolsCount;
|
||
CDocInfoProp.prototype['put_SymbolsCount'] = CDocInfoProp.prototype.put_SymbolsCount;
|
||
CDocInfoProp.prototype['get_SymbolsWSCount'] = CDocInfoProp.prototype.get_SymbolsWSCount;
|
||
CDocInfoProp.prototype['put_SymbolsWSCount'] = CDocInfoProp.prototype.put_SymbolsWSCount;
|
||
CSearchResult.prototype['get_Text'] = CSearchResult.prototype.get_Text;
|
||
CSearchResult.prototype['get_Navigator'] = CSearchResult.prototype.get_Navigator;
|
||
CSearchResult.prototype['put_Navigator'] = CSearchResult.prototype.put_Navigator;
|
||
CSearchResult.prototype['put_Text'] = CSearchResult.prototype.put_Text;
|
||
})(window, window.document);
|