/ *
* Copyright ( C ) Ascensio System SIA 2012 - 2022. All rights reserved
*
* https : //www.onlyoffice.com/
*
* Version : 0.0 . 0 ( build : 0 )
* /
/ *
window [ 'AscCommon' ] . g _specialPasteHelper . specialPasteStart && drawingCtx && levelMap [ groupArr [ i ] [ j ] . end + 1 ] . collapsed modelSort . Ref . isEqual ( selection ) ? * /
( function ( window , undefined ) { var supportedScaleValues = [ 1 , 1.25 , 1.5 , 1.75 , 2 ] ; if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "GetSupportedScaleValues" ] ) supportedScaleValues = window [ "AscDesktopEditor" ] [ "GetSupportedScaleValues" ] ( ) ; var isCorrectApplicationScaleEnabled = function ( ) { if ( supportedScaleValues . length === 0 ) return false ; var userAgent = navigator . userAgent . toLowerCase ( ) ; var isAndroid = userAgent . indexOf ( "android" ) > - 1 ; var isIE = userAgent . indexOf ( "msie" ) > - 1 || userAgent . indexOf ( "trident" ) > - 1 || userAgent . indexOf ( "edge" ) >
- 1 ; var isChrome = ! isIE && userAgent . indexOf ( "chrome" ) > - 1 ; var isOperaOld = ! ! window . opera ; var 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 ) ; if ( isAndroid || ! isChrome || isOperaOld || isMobile || ! document || ! document . firstElementChild ||
! document . body ) return false ; return true } ( ) ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . checkDeviceScale = function ( ) { var retValue = { zoom : 1 , devicePixelRatio : window . devicePixelRatio , applicationPixelRatio : window . devicePixelRatio , correct : false } ; if ( ! isCorrectApplicationScaleEnabled ) return retValue ; var systemScaling = window . devicePixelRatio ; var bestIndex = 0 ; var bestDistance = Math . abs ( supportedScaleValues [ 0 ] - systemScaling ) ; var currentDistance = 0 ; for ( var i = 1 , len = supportedScaleValues . length ; i <
len ; i ++ ) { if ( true ) if ( Math . abs ( supportedScaleValues [ i ] - systemScaling ) > 1E-4 ) if ( supportedScaleValues [ i ] > systemScaling - 1E-4 ) break ; currentDistance = Math . abs ( supportedScaleValues [ i ] - systemScaling ) ; if ( currentDistance < bestDistance - 1E-4 ) { bestDistance = currentDistance ; bestIndex = i } } retValue . applicationPixelRatio = supportedScaleValues [ bestIndex ] ; if ( Math . abs ( retValue . devicePixelRatio - retValue . applicationPixelRatio ) > . 01 ) { retValue . zoom = retValue . devicePixelRatio / retValue . applicationPixelRatio ; retValue . correct = true } return retValue } ;
var oldZoomValue = 1 ; window [ "AscCommon" ] . correctApplicationScale = function ( zoomValue ) { if ( ! zoomValue . correct && Math . abs ( zoomValue . zoom - oldZoomValue ) < 1E-4 ) return ; oldZoomValue = zoomValue . zoom ; var firstElemStyle = document . firstElementChild . style ; if ( Math . abs ( oldZoomValue - 1 ) < . 001 ) firstElemStyle . zoom = "normal" ; else firstElemStyle . zoom = 1 / oldZoomValue } } ) ( window ) ;
( function ( window ) { var parse = false , separator = String . fromCharCode ( 160 ) , username = "" , _reviewPermissions , reviewGroups , commentGroups ; var _intersection = function ( arr1 , arr2 ) { if ( arr1 && arr2 ) for ( var i = 0 ; i < arr2 . length ; i ++ ) if ( arr1 . indexOf ( arr2 [ i ] ) > - 1 ) return true ; return false } ; var _getParsedGroups = function ( username ) { if ( parse && username ) { var idx = username . indexOf ( separator ) , groups = idx > - 1 ? username . substring ( 0 , idx ) . split ( "," ) : [ ] ; for ( var i = 0 ; i < groups . length ; i ++ ) groups [ i ] = groups [ i ] . trim ( ) ; return groups } } ; var UserInfoParser =
{ setParser : function ( value ) { parse = ! ! value } , setCurrentName : function ( name ) { username = name ; _reviewPermissions && this . setReviewPermissions ( null , _reviewPermissions ) } , getCurrentName : function ( ) { return username } , getSeparator : function ( ) { return separator } , getParsedName : function ( username ) { return parse && username ? username . substring ( username . indexOf ( separator ) + 1 ) : username } , setReviewPermissions : function ( groups , permissions ) { if ( groups ) { if ( typeof groups == "object" && groups . length >= 0 ) reviewGroups = groups } else if ( permissions ) { var arr =
[ ] , arrgroups = _getParsedGroups ( username ) ; arrgroups && arrgroups . forEach ( function ( group ) { var item = permissions [ group . trim ( ) ] ; item && ( arr = arr . concat ( item ) ) } ) ; reviewGroups = arr ; _reviewPermissions = permissions } } , setCommentPermissions : function ( groups ) { if ( groups && typeof groups == "object" ) commentGroups = { view : typeof groups [ "view" ] == "object" && groups [ "view" ] . length >= 0 ? groups [ "view" ] : null , edit : typeof groups [ "edit" ] == "object" && groups [ "edit" ] . length >= 0 ? groups [ "edit" ] : null , remove : typeof groups [ "remove" ] == "object" && groups [ "remove" ] . length >=
0 ? groups [ "remove" ] : null } } , canEditReview : function ( username ) { if ( ! parse || ! reviewGroups ) return true ; var groups = _getParsedGroups ( username ) ; groups && groups . length == 0 && ( groups = [ "" ] ) ; return _intersection ( reviewGroups , groups ) } , canViewComment : function ( username ) { if ( ! parse || ! commentGroups || ! commentGroups . view ) return true ; var groups = _getParsedGroups ( username ) ; groups && groups . length == 0 && ( groups = [ "" ] ) ; return _intersection ( commentGroups . view , groups ) } , canEditComment : function ( username ) { if ( ! parse || ! commentGroups || ! commentGroups . edit ) return true ;
var groups = _getParsedGroups ( username ) ; groups && groups . length == 0 && ( groups = [ "" ] ) ; return _intersection ( commentGroups . edit , groups ) } , canDeleteComment : function ( username ) { if ( ! parse || ! commentGroups || ! commentGroups . remove ) return true ; var groups = _getParsedGroups ( username ) ; groups && groups . length == 0 && ( groups = [ "" ] ) ; return _intersection ( commentGroups . remove , groups ) } } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] [ "UserInfoParser" ] = window [ "AscCommon" ] . UserInfoParser = UserInfoParser ; UserInfoParser [ "setParser" ] =
UserInfoParser . setParser ; UserInfoParser [ "setCurrentName" ] = UserInfoParser . setCurrentName ; UserInfoParser [ "getCurrentName" ] = UserInfoParser . getCurrentName ; UserInfoParser [ "getSeparator" ] = UserInfoParser . getSeparator ; UserInfoParser [ "getParsedName" ] = UserInfoParser . getParsedName ; UserInfoParser [ "setReviewPermissions" ] = UserInfoParser . setReviewPermissions ; UserInfoParser [ "setCommentPermissions" ] = UserInfoParser . setCommentPermissions ; UserInfoParser [ "canEditReview" ] = UserInfoParser . canEditReview ; UserInfoParser [ "canViewComment" ] =
UserInfoParser . canViewComment ; UserInfoParser [ "canEditComment" ] = UserInfoParser . canEditComment ; UserInfoParser [ "canDeleteComment" ] = UserInfoParser . canDeleteComment } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var AscBrowser = { userAgent : "" , isIE : false , isMacOs : false , isSafariMacOs : false , isAppleDevices : false , isAndroid : false , isMobile : false , isGecko : false , isChrome : false , isOpera : false , isOperaOld : false , isWebkit : false , isSafari : false , isArm : false , isMozilla : false , isLinuxOS : false , retinaPixelRatio : 1 , isVivaldiLinux : false , isSailfish : false , isEmulateDevicePixelRatio : false , isNeedEmulateUpload : false , chromeVersion : 70 , iosVersion : 13 } ; AscBrowser . userAgent = navigator . userAgent . toLowerCase ( ) ; 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 ; AscBrowser . isMacOs = AscBrowser . userAgent . indexOf ( "mac" ) > - 1 ; AscBrowser . isChrome = ! AscBrowser . isIE && AscBrowser . userAgent . indexOf ( "chrome" ) >
- 1 ; if ( AscBrowser . isChrome ) { var checkVersion = AscBrowser . userAgent . match ( /chrom(e|ium)\/([0-9]+)\./ ) ; if ( checkVersion && checkVersion [ 2 ] ) AscBrowser . chromeVersion = parseInt ( checkVersion [ 2 ] , 10 ) } AscBrowser . isSafari = ! AscBrowser . isIE && ! AscBrowser . isChrome && AscBrowser . userAgent . indexOf ( "safari" ) > - 1 ; AscBrowser . isSafariMacOs = AscBrowser . isSafari && AscBrowser . isMacOs ; AscBrowser . isAppleDevices = AscBrowser . userAgent . indexOf ( "ipad" ) > - 1 || AscBrowser . userAgent . indexOf ( "iphone" ) > - 1 || AscBrowser . userAgent . indexOf ( "ipod" ) > - 1 ;
if ( ! AscBrowser . isAppleDevices && AscBrowser . isSafariMacOs && navigator . platform === "MacIntel" && navigator . maxTouchPoints > 1 ) AscBrowser . isAppleDevices = true ; if ( AscBrowser . isAppleDevices ) { var iosversion = AscBrowser . iosVersion ; try { var v = navigator . appVersion . match ( /OS (\d+)_(\d+)_?(\d+)?/ ) ; if ( ! v ) v = navigator . appVersion . match ( /Version\/(\d+).(\d+)/ ) ; iosversion = parseInt ( v [ 1 ] , 10 ) } catch ( err ) { } AscBrowser . iosVersion = iosversion } AscBrowser . isAndroid = AscBrowser . userAgent . indexOf ( "android" ) > - 1 ; 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 ) ; AscBrowser . isGecko = AscBrowser . userAgent . indexOf ( "gecko/" ) > - 1 ; AscBrowser . isOpera = ! ! window . opera || AscBrowser . userAgent . indexOf ( "opr/" ) > - 1 ; AscBrowser . isOperaOld = ! ! window . opera ; AscBrowser . isWebkit = ! AscBrowser . isIE && AscBrowser . userAgent . indexOf ( "webkit" ) > - 1 ; 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 . isSailfish = AscBrowser . userAgent . indexOf ( "sailfish" ) > - 1 ; AscBrowser . isEmulateDevicePixelRatio = AscBrowser . userAgent . indexOf ( "emulatedevicepixelratio" ) > - 1 ; AscBrowser . isNeedEmulateUpload = AscBrowser . userAgent . indexOf ( "needemulateupload" ) > - 1 ; AscBrowser . zoom = 1 ; AscBrowser . isCustomScaling = function ( ) { return Math . abs ( AscBrowser . retinaPixelRatio - 1 ) > . 001 ? true : false } ; AscBrowser . isCustomScalingAbove2 = function ( ) { return AscBrowser . retinaPixelRatio >
1.999 ? true : false } ; AscBrowser . checkZoom = function ( ) { if ( AscBrowser . isSailfish && AscBrowser . isEmulateDevicePixelRatio ) { var scale = 1 ; if ( screen . width <= 540 ) scale = 1.5 ; else if ( screen . width > 540 && screen . width <= 768 ) scale = 2 ; else if ( screen . width > 768 ) scale = 3 ; AscBrowser . retinaPixelRatio = scale ; window . devicePixelRatio = scale ; return } var zoomValue = AscCommon . checkDeviceScale ( ) ; AscBrowser . retinaPixelRatio = zoomValue . applicationPixelRatio ; AscBrowser . zoom = zoomValue . zoom ; AscCommon . correctApplicationScale ( zoomValue ) } ; AscBrowser . checkZoom ( ) ;
AscBrowser . convertToRetinaValue = function ( value , isScale ) { if ( isScale === true ) return value * AscBrowser . retinaPixelRatio + . 5 >> 0 ; else return value / AscBrowser . retinaPixelRatio + . 5 >> 0 } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . AscBrowser = AscBrowser } ) ( window ) ; "use strict" ;
var EditorSkins = { "theme-light" : { Name : "theme-light" , Type : "light" , RulersButton : false , NavigationButtons : false , BackgroundColor : "#EEEEEE" , PageOutline : "#BBBEC2" , RulerDark : "#D9D9D9" , RulerLight : "#FFFFFF" , RulerOutline : "#CBCBCB" , RulerMarkersOutlineColor : "#555555" , RulerMarkersOutlineColorOld : "#AAAAAA" , RulerMarkersFillColor : "#FFFFFF" , RulerMarkersFillColorOld : "#FFFFFF" , RulerTextColor : "#555555" , RulerTabsColor : "#000000" , RulerTabsColorOld : "#828282" , RulerTableColor1 : "#FFFFFF" , RulerTableColor2 : "#555555" , ScrollBackgroundColor : "#EEEEEE" ,
ScrollOutlineColor : "#CBCBCB" , ScrollOutlineHoverColor : "#CBCBCB" , ScrollOutlineActiveColor : "#ADADAD" , ScrollerColor : "#F7F7F7" , ScrollerHoverColor : "#C0C0C0" , ScrollerActiveColor : "#ADADAD" , ScrollArrowColor : "#ADADAD" , ScrollArrowHoverColor : "#F7F7F7" , ScrollArrowActiveColor : "#F7F7F7" , ScrollerTargetColor : "#CFCFCF" , ScrollerTargetHoverColor : "#F1F1F1" , ScrollerTargetActiveColor : "#F1F1F1" , STYLE _THUMBNAIL _WIDTH : 104 , STYLE _THUMBNAIL _HEIGHT : 40 , isNeedInvertOnActive : false , ContentControlsBack : "#F1F1F1" , ContentControlsHover : "#D8DADC" ,
ContentControlsActive : "#7C838A" , ContentControlsText : "#444444" , ContentControlsTextActive : "#FFFFFF" , ContentControlsAnchorActive : "#CFCFCF" , FormsContentControlsOutlineHover : "rgba(0, 0, 0, 0.3)" , FormsContentControlsOutlineActive : "rgba(0, 0, 0, 0.3)" , FormsContentControlsOutlineBorderRadiusHover : 0 , FormsContentControlsOutlineBorderRadiusActive : 2 , FormsContentControlsMarkersBackground : "#FFFFFF" , FormsContentControlsMarkersBackgroundHover : "#E1E1E1" , FormsContentControlsMarkersBackgroundActive : "#CCCCCC" , FormsContentControlsOutlineMoverHover : "#444444" ,
FormsContentControlsOutlineMoverActive : "#444444" , BackgroundColorThumbnails : "#F4F4F4" , BackgroundColorThumbnailsActive : "#F4F4F4" , BackgroundColorThumbnailsHover : "#F4F4F4" , ThumbnailsPageOutlineActive : "#848484" , ThumbnailsPageOutlineHover : "#CFCFCF" , ThumbnailsPageNumberText : "#000000" , ThumbnailsPageNumberTextActive : "#000000" , ThumbnailsPageNumberTextHover : "#000000" , ThumbnailsLockColor : "#D34F4F" , BackgroundColorNotes : "#F0F0F0" , THEMES _THUMBNAIL _WIDTH : 88 , THEMES _THUMBNAIL _HEIGHT : 40 , THEMES _LAYOUT _THUMBNAIL _HEIGHT : 68 ,
BorderSplitterColor : "#CBCBCB" , SupportNotes : true , SplitterWidthMM : 1 , ThumbnailScrollWidthNullIfNoScrolling : false , DemBackgroundColor : "#F0F0F0" , DemButtonBackgroundColor : "#FFFFFF" , DemButtonBackgroundColorHover : "#D8DADC" , DemButtonBackgroundColorActive : "#7D858C" , DemButtonBorderColor : "#CFCFCF" , DemButtonTextColor : "#444444" , DemButtonTextColorActive : "#FFFFFF" , DemSplitterColor : "#CBCBCB" , DemTextColor : "#666666" , Background : "#F0F0F0" , BackgroundActive : "#c1c1c1" , BackgroundHighlighted : "#dfdfdf" , Border : "#d5d5d5" , BorderActive : "#929292" ,
BorderHighlighted : "#afafaf" , Color : "#363636" , ColorActive : "#363636" , ColorHighlighted : "#6a6a70" , BackgroundDark : "#444444" , BackgroundDarkActive : "#111111" , BackgroundDarkHighlighted : "#666666" , ColorDark : "#ffffff" , ColorDarkActive : "#ffffff" , ColorDarkHighlighted : "#c1c1c1" , GroupDataBorder : "#000000" , EditorBorder : "#cbcbcb" } , "theme-dark" : { Name : "theme-dark" , Type : "dark" , RulersButton : false , NavigationButtons : false , BackgroundColor : "#666666" , PageOutline : "#BBBEC2" , RulerDark : "#373737" , RulerLight : "#555555" , RulerOutline : "#2A2A2A" ,
RulerMarkersOutlineColor : "#B6B6B6" , RulerMarkersOutlineColorOld : "#808080" , RulerMarkersFillColor : "#555555" , RulerMarkersFillColorOld : "#555555" , RulerTextColor : "#B6B6B6" , RulerTabsColor : "#FFFFFF" , RulerTabsColorOld : "#999999" , RulerTableColor1 : "#FFFFFF" , RulerTableColor2 : "#B2B2B2" , ScrollBackgroundColor : "#666666" , ScrollOutlineColor : "#2A2A2A" , ScrollOutlineHoverColor : "#999999" , ScrollOutlineActiveColor : "#ADADAD" , ScrollerColor : "#404040" , ScrollerHoverColor : "#999999" , ScrollerActiveColor : "#ADADAD" , ScrollArrowColor : "#999999" ,
ScrollArrowHoverColor : "#404040" , ScrollArrowActiveColor : "#404040" , ScrollerTargetColor : "#999999" , ScrollerTargetHoverColor : "#404040" , ScrollerTargetActiveColor : "#404040" , STYLE _THUMBNAIL _WIDTH : 104 , STYLE _THUMBNAIL _HEIGHT : 40 , THEMES _LAYOUT _THUMBNAIL _HEIGHT : 68 , isNeedInvertOnActive : false , ContentControlsBack : "#F1F1F1" , ContentControlsHover : "#D8DADC" , ContentControlsActive : "#7C838A" , ContentControlsText : "#444444" , ContentControlsTextActive : "#FFFFFF" , ContentControlsAnchorActive : "#CFCFCF" , FormsContentControlsOutlineHover : "rgba(0, 0, 0, 0.3)" ,
FormsContentControlsOutlineActive : "rgba(0, 0, 0, 0.3)" , FormsContentControlsOutlineBorderRadiusHover : 0 , FormsContentControlsOutlineBorderRadiusActive : 2 , FormsContentControlsMarkersBackground : "#FFFFFF" , FormsContentControlsMarkersBackgroundHover : "#E1E1E1" , FormsContentControlsMarkersBackgroundActive : "#CCCCCC" , FormsContentControlsOutlineMoverHover : "#444444" , FormsContentControlsOutlineMoverActive : "#444444" , BackgroundColorThumbnails : "#666666" , BackgroundColorThumbnailsActive : "#666666" , BackgroundColorThumbnailsHover : "#666666" ,
ThumbnailsPageOutlineActive : "#848484" , ThumbnailsPageOutlineHover : "#CFCFCF" , ThumbnailsPageNumberText : "#FFFFFF" , ThumbnailsPageNumberTextActive : "#FFFFFF" , ThumbnailsPageNumberTextHover : "#FFFFFF" , ThumbnailsLockColor : "#D34F4F" , BackgroundColorNotes : "#666666" , THEMES _THUMBNAIL _WIDTH : 88 , THEMES _THUMBNAIL _HEIGHT : 40 , BorderSplitterColor : "#CBCBCB" , SupportNotes : true , SplitterWidthMM : 1 , ThumbnailScrollWidthNullIfNoScrolling : false , DemBackgroundColor : "#666666" , DemButtonBackgroundColor : "#333333" , DemButtonBackgroundColorHover : "#555555" ,
DemButtonBackgroundColorActive : "#DDDDDD" , DemButtonBorderColor : "#CFCFCF" , DemButtonTextColor : "#FFFFFF" , DemButtonTextColorActive : "#333333" , DemSplitterColor : "#CBCBCB" , DemTextColor : "#FFFFFF" , Background : "#666666" , BackgroundActive : "#939393" , BackgroundHighlighted : "#787878" , Border : "#757575" , BorderActive : "#9e9e9e" , BorderHighlighted : "#858585" , Color : "#d9d9d9" , ColorActive : "#d9d9d9" , ColorHighlighted : "#d9d9d9" , BackgroundDark : "#111111" , BackgroundDarkActive : "#333333" , BackgroundDarkHighlighted : "#000000" , ColorDark : "#ffffff" ,
ColorDarkActive : "#ffffff" , ColorDarkHighlighted : "#ffffff" , GroupDataBorder : "#ffffff" , EditorBorder : "#2a2a2a" } } ; var GlobalSkin = EditorSkins [ "theme-light" ] ;
function updateGlobalSkinColors ( theme ) { var skin = GlobalSkin ; var correctColor = function ( c ) { return AscCommon . RgbaTextToRgbaHex ( c ) } ; var colorMap = { BackgroundColor : "canvas-background" , PageOutline : "canvas-page-border" , RulerDark : "canvas-ruler-margins-background" , RulerLight : "canvas-ruler-background" , RulerOutline : "border-toolbar" , RulerMarkersOutlineColor : "canvas-ruler-handle-border" , RulerMarkersOutlineColorOld : "canvas-ruler-handle-border-disabled" , RulerMarkersFillColor : "background-normal" , RulerMarkersFillColorOld : "background-normal" ,
RulerTextColor : "canvas-ruler-mark" , RulerTabsColor : "canvas-high-contrast" , RulerTabsColorOld : "canvas-high-contrast-disabled" , RulerTableColor1 : "background-normal" , RulerTableColor2 : "canvas-ruler-handle-border" , ScrollBackgroundColor : "canvas-background" , ScrollOutlineColor : "canvas-scroll-thumb-border" , ScrollOutlineHoverColor : "canvas-scroll-thumb-border-hover" , ScrollOutlineActiveColor : "canvas-scroll-thumb-border-pressed" , ScrollerColor : "canvas-scroll-thumb" , ScrollerHoverColor : "canvas-scroll-thumb-hover" , ScrollerActiveColor : "canvas-scroll-thumb-pressed" ,
ScrollArrowColor : "canvas-scroll-arrow" , ScrollArrowHoverColor : "canvas-scroll-arrow-hover" , ScrollArrowActiveColor : "canvas-scroll-arrow-pressed" , ScrollerTargetColor : "canvas-scroll-thumb-target" , ScrollerTargetHoverColor : "canvas-scroll-thumb-target-hover" , ScrollerTargetActiveColor : "canvas-scroll-thumb-target-pressed" , BackgroundColorThumbnails : "background-toolbar" , BackgroundColorThumbnailsActive : "background-toolbar" , BackgroundColorThumbnailsHover : "background-toolbar" , ThumbnailsPageOutlineActive : "border-preview-select" ,
ThumbnailsPageOutlineHover : "border-preview-hover" , ThumbnailsPageNumberText : "text-normal" , ThumbnailsPageNumberTextActive : "text-normal" , ThumbnailsPageNumberTextHover : "text-normal" , BackgroundColorNotes : "canvas-background" , BorderSplitterColor : "border-toolbar" , DemBackgroundColor : "background-toolbar" , DemButtonBackgroundColor : "background-normal" , DemButtonBackgroundColorHover : "highlight-buttin-hover" , DemButtonBackgroundColorActive : "highlight-button-pressed" , DemButtonBorderColor : "border-regular-control" , DemButtonTextColor : "text-normal" ,
DemButtonTextColorActive : "text-normal-pressed" , DemSplitterColor : "border-divider" , DemTextColor : "text-normal" , Background : "canvas-background" , BackgroundActive : "canvas-cell-title-selected" , BackgroundHighlighted : "canvas-cell-title-hover" , Border : "canvas-cell-title-border" , BorderActive : "canvas-cell-title-border-selected" , BorderHighlighted : "canvas-cell-title-border-hover" , Color : "text-normal" , ColorActive : "text-normal" , ColorHighlighted : "text-normal" , BackgroundDark : "canvas-dark-cell-title" , BackgroundDarkActive : "canvas-dark-cell-title-selected" ,
BackgroundDarkHighlighted : "canvas-dark-cell-title-hover" , ColorDark : "text-contrast-background" , ColorDarkActive : "text-contrast-background" , ColorDarkHighlighted : "text-contrast-background" , GroupDataBorder : "canvas-high-contrast" , EditorBorder : "border-toolbar" } ; for ( var item in theme ) { var testValue = theme [ item ] ; if ( typeof testValue !== "string" ) continue ; if ( 0 === testValue . indexOf ( "#\\3" ) ) { testValue = testValue . replace ( "\\3" , "" ) ; testValue = testValue . replace ( " " , "" ) ; theme [ item ] = testValue } } for ( var color in colorMap ) { if ( undefined ===
GlobalSkin [ color ] ) continue ; if ( "" === colorMap [ color ] ) continue ; if ( undefined === theme [ colorMap [ color ] ] ) continue ; if ( 0 === GlobalSkin [ color ] . indexOf ( "rgb" ) ) GlobalSkin [ color ] = theme [ colorMap [ color ] ] ; else GlobalSkin [ color ] = correctColor ( theme [ colorMap [ color ] ] ) } }
function updateGlobalSkin ( obj ) { if ( ! obj ) return ; if ( typeof obj === "string" ) { var name = obj ; obj = { "name" : name , "type" : - 1 !== name . indexOf ( "dark" ) ? "dark" : "light" } } if ( obj [ "name" ] && undefined !== EditorSkins [ obj [ "name" ] ] ) GlobalSkin = EditorSkins [ obj [ "name" ] ] ; else if ( obj [ "type" ] ) for ( var item in EditorSkins ) if ( obj [ "type" ] === EditorSkins [ item ] . Type ) { GlobalSkin = EditorSkins [ item ] ; break } updateGlobalSkinColors ( obj ) ; for ( var item in obj ) GlobalSkin [ item ] = obj [ item ] ; if ( window . g _asc _plugins ) window . g _asc _plugins . onThemeChanged ( GlobalSkin ) ;
window [ "AscCommon" ] . GlobalSkin = GlobalSkin } window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . GlobalSkin = GlobalSkin ; window [ "AscCommon" ] . updateGlobalSkin = updateGlobalSkin ;
window [ "AscCommon" ] . RgbaHexToRGBA = function ( color ) { var index = 0 ; if ( "#" . charCodeAt ( 0 ) === color . charCodeAt ( 0 ) ) index ++ ; var ret = { R : 0 , G : 0 , B : 0 , A : 255 } ; if ( 6 <= color . length ) { ret . R = parseInt ( color . substring ( index , index + 2 ) , 16 ) ; ret . G = parseInt ( color . substring ( index + 2 , index + 4 ) , 16 ) ; ret . B = parseInt ( color . substring ( index + 4 , index + 6 ) , 16 ) } else { ret . R = parseInt ( color . substring ( index , index + 1 ) , 16 ) ; ret . G = parseInt ( color . substring ( index + 1 , index + 2 ) , 16 ) ; ret . B = parseInt ( color . substring ( index + 2 , index + 3 ) , 16 ) ; ret . R = ret . R << 4 | ret . R ; ret . G =
ret . G << 4 | ret . G ; ret . B = ret . B << 4 | ret . B } return ret } ;
window [ "AscCommon" ] . RgbaTextToRgbaHex = function ( color ) { var toHex = function ( c ) { var res = Number ( c ) . toString ( 16 ) ; return res . length === 1 ? "0" + res : res } ; if ( 0 !== color . indexOf ( "rgb" ) ) { if ( color . length < 6 ) { var rgba = AscCommon . RgbaHexToRGBA ( color ) ; return "#" + toHex ( rgba . R ) + toHex ( rgba . G ) + toHex ( rgba . B ) } return color } var start = color . indexOf ( "(" ) ; var end = color . indexOf ( ")" ) ; var tmp = color . substring ( start + 1 , end ) ; var colors = tmp . split ( "," ) ; for ( var i in colors ) colors [ i ] = colors [ i ] . trim ( ) ; var r = colors [ 0 ] || 0 ; var g = colors [ 1 ] || 0 ; var b =
colors [ 2 ] || 0 ; var a = colors [ 3 ] === undefined ? 255 : colors [ 3 ] ; return "#" + toHex ( r ) + toHex ( g ) + toHex ( b ) } ; if ( AscCommon . TEMP _STYLE _THUMBNAIL _WIDTH !== undefined && AscCommon . TEMP _STYLE _THUMBNAIL _HEIGHT !== undefined ) { GlobalSkin . STYLE _THUMBNAIL _WIDTH = AscCommon . TEMP _STYLE _THUMBNAIL _WIDTH ; GlobalSkin . STYLE _THUMBNAIL _HEIGHT = AscCommon . TEMP _STYLE _THUMBNAIL _HEIGHT } "use strict" ;
( function ( window , undefined ) { var g _cCharDelimiter = String . fromCharCode ( 5 ) ; var g _cGeneralFormat = "General" ; var FONT _THUMBNAIL _HEIGHT = window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "GetFontThumbnailHeight" ] ? window [ "AscDesktopEditor" ] [ "GetFontThumbnailHeight" ] ( ) : 28 ; var c _oAscMaxColumnWidth = 255 ; var c _oAscMaxRowHeight = 409.5 ; var c _nMaxConversionTime = 9E5 ; var c _nCommonRequestTime = 3E4 ; var c _nMaxDownloadTitleLen = 255 ; var c _nVersionNoBase64 = 10 ; var c _dMaxParaRunContentLength = 256 ; var c _rUneditableTypes = /^(?:(pdf|djvu|xps|oxps))$/ ;
var c _nMaxHyperlinkLength = 2083 ; var c _oAscFileType = { UNKNOWN : 0 , PDF : 513 , PDFA : 2305 , HTML : 2051 , DOCX : 65 , DOC : 66 , ODT : 67 , RTF : 68 , TXT : 69 , MHT : 71 , EPUB : 72 , FB2 : 73 , MOBI : 74 , DOCM : 75 , DOTX : 76 , DOTM : 77 , FODT : 78 , OTT : 79 , DOCY : 4097 , CANVAS _WORD : 8193 , JSON : 2056 , XLSX : 257 , XLS : 258 , ODS : 259 , CSV : 260 , XLSM : 261 , XLTX : 262 , XLTM : 263 , FODS : 264 , OTS : 265 , XLSY : 4098 , PPTX : 129 , PPT : 130 , ODP : 131 , PPSX : 132 , PPTM : 133 , PPSM : 134 , POTX : 135 , POTM : 136 , FODP : 137 , OTP : 138 } ; 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 , DirectUrl : - 14 , MaxDataPointsError : - 16 , StockChartError : - 17 , CoAuthoringDisconnect : - 18 , ConvertationPassword : - 19 , VKeyEncrypt : - 20 , KeyExpire : - 21 , UserCountExceed : - 22 , AccessDeny : - 23 , LoadingScriptError : - 24 , EditingError : - 25 , LoadingFontError : - 26 , SplitCellMaxRows : - 30 , SplitCellMaxCols : - 31 ,
SplitCellRowsDivider : - 32 , MobileUnexpectedCharCount : - 35 , MailMergeLoadFile : - 40 , MailMergeSaveFile : - 41 , DataValidate : - 45 , MoreOneTypeDataValidate : - 46 , ContainsCellsWithoutDataValidate : - 47 , AutoFilterDataRangeError : - 50 , AutoFilterChangeFormatTableError : - 51 , AutoFilterChangeError : - 52 , AutoFilterMoveToHiddenRangeError : - 53 , LockedAllError : - 54 , LockedWorksheetRename : - 55 , FTChangeTableRangeError : - 56 , FTRangeIncludedOtherTables : - 57 , ChangeFilteredRangeError : - 58 , PasteMaxRangeError : - 64 , PastInMergeAreaError : - 65 , CopyMultiselectAreaError : - 66 ,
PasteSlicerError : 67 , MoveSlicerError : 68 , PasteMultiSelectError : - 69 , DataRangeError : - 75 , CannotMoveRange : - 74 , ErrorInFormula : - 73 , InvalidReference : - 72 , NoSingleRowCol : - 71 , NoValues : - 70 , MaxDataSeriesError : - 80 , CannotFillRange : - 81 , ConvertationOpenError : - 82 , ConvertationSaveError : - 83 , ConvertationOpenLimitError : - 84 , UserDrop : - 100 , Warning : - 101 , UpdateVersion : - 102 , PrintMaxPagesCount : - 110 , SessionAbsolute : - 120 , SessionIdle : - 121 , SessionToken : - 122 , FrmlMaxReference : - 297 , FrmlMaxLength : - 298 , FrmlMaxTextLength : - 299 , 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 , PivotLabledColumns : - 313 , PivotOverlap : - 314 , PivotGroup : - 315 , PivotWithoutUnderlyingData : - 316 , ForceSaveButton : - 331 , ForceSaveTimeout : - 332 , Submit : - 333 , OpenWarning : 500 , DataEncrypted : - 600 , CannotChangeFormulaArray : - 450 ,
MultiCellsInTablesFormulaArray : - 451 , MailToClientMissing : - 452 , NoDataToParse : - 601 , CannotCompareInCoEditing : 651 , CannotUngroupError : - 700 , UplDocumentSize : - 751 , UplDocumentExt : - 752 , UplDocumentFileCount : - 753 , CustomSortMoreOneSelectedError : - 800 , CustomSortNotOriginalSelectError : - 801 , DataValidateNotNumeric : - 830 , DataValidateNegativeTextLength : - 831 , DataValidateMustEnterValue : - 832 , DataValidateMinGreaterMax : 833 , DataValidateInvalid : 834 , NamedRangeNotFound : 835 , FormulaEvaluateError : 836 , DataValidateInvalidList : 837 , RemoveDuplicates : - 850 ,
LargeRangeWarning : - 900 , LockedEditView : - 950 , Password : - 1E3 , SecondaryAxis : 1001 , ComboSeriesError : 1002 , NotValidPercentile : 1003 , CannotAddConditionalFormatting : 1004 , NotValidPercentage : 1005 , NotSingleReferenceCannotUsed : 1006 , CannotUseRelativeReference : 1007 , ValueMustBeGreaterThen : 1008 , IconDataRangesOverlap : 1009 , ErrorTop10Between : 1010 , SingleColumnOrRowError : 1020 , LocationOrDataRangeError : 1021 } } ; var c _oAscAsyncAction = { Open : 0 , Save : 1 , LoadDocumentFonts : 2 , LoadDocumentImages : 3 , LoadFont : 4 , LoadImage : 5 , DownloadAs : 6 , Print : 7 ,
UploadImage : 8 , ApplyChanges : 9 , SlowOperation : 11 , LoadTheme : 12 , MailMergeLoadFile : 13 , DownloadMerge : 14 , SendMailMerge : 15 , ForceSaveButton : 16 , ForceSaveTimeout : 17 , Waiting : 18 , Submit : 19 } ; 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 : 4 , View : 128 } ; var c _oAscFontRenderingModeType = { noHinting : 1 , hinting : 2 , hintingAndSubpixeling : 3 } ; var c _oAscAsyncActionType = { Information : 0 , BlockInteraction : 1 ,
Empty : 2 } ; var DownloadType = { None : "" , Download : "asc_onDownloadUrl" , Print : "asc_onPrintUrl" , MailMerge : "asc_onSaveMailMerge" } ; var CellValueType = { Number : 0 , String : 1 , Bool : 2 , Error : 3 } ; 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 , BringForward : 1 , SendToBack : 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 align _Distributed = 4 ; var linerule _AtLeast = 0 ; var linerule _Auto = 1 ; var linerule _Exact = 2 ; var c _oAscShdClear = 0 ; var c _oAscShdNil =
1 ; var c _oAscShd = { Clear : 0 , Nil : 1 , DiagCross : 2 , DiagStripe : 3 , HorzCross : 4 , HorzStripe : 5 , Pct10 : 6 , Pct12 : 7 , Pct15 : 8 , Pct20 : 9 , Pct25 : 10 , Pct30 : 11 , Pct35 : 12 , Pct37 : 13 , Pct40 : 14 , Pct45 : 15 , Pct5 : 16 , Pct50 : 17 , Pct55 : 18 , Pct60 : 19 , Pct62 : 20 , Pct65 : 21 , Pct70 : 22 , Pct75 : 23 , Pct80 : 24 , Pct85 : 25 , Pct87 : 26 , Pct90 : 27 , Pct95 : 28 , ReverseDiagStripe : 29 , Solid : 30 , ThinDiagCross : 31 , ThinDiagStripe : 32 , ThinHorzCross : 33 , ThinHorzStripe : 34 , ThinReverseDiagStripe : 35 , ThinVertStripe : 36 , VertStripe : 37 } ; var vertalign _Baseline = 0 ; var vertalign _SuperScript = 1 ; var vertalign _SubScript =
2 ; var hdrftr _Header = 1 ; var hdrftr _Footer = 2 ; var vaKSize = . 65 ; var vaKSuper = . 35 ; var vaKSub = - . 141 ; var c _oAscDropCap = { None : 0 , Drop : 1 , Margin : 2 } ; 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 } ; var c _oAscChartDataLabelsPos = { none : 0 ,
b : 1 , bestFit : 2 , ctr : 3 , inBase : 4 , inEnd : 5 , l : 6 , outEnd : 7 , r : 8 , t : 9 , show : 10 } ; 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 , comboCustom : 38 , comboBarLine : 39 , comboBarLineSecondary : 40 , comboAreaBar : 41 , unknown : 42 } ; 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 _oAscBetweenLabelsRule = { auto : 0 , manual : 1 } ; var c _oAscLabelsPosition = { byDivisions : 0 , betweenDivisions : 1 } ; var c _oAscAxisType = { date : 0 , cat : 1 , val : 2 , ser : 3 } ; var c _oAscHAnchor = { Margin : 0 , Page : 1 ,
Text : 2 } ; var c _oAscXAlign = { Center : 0 , Inside : 1 , Left : 2 , Outside : 3 , Right : 4 } ; var c _oAscYAlign = { Bottom : 0 , Center : 1 , Inline : 2 , Inside : 3 , Outside : 4 , Top : 5 } ; var c _oAscVAnchor = { Margin : 0 , Page : 1 , Text : 2 } ; var c _oAscRelativeFromH = { Character : 0 , Column : 1 , InsideMargin : 2 , LeftMargin : 3 , Margin : 4 , OutsideMargin : 5 , Page : 6 , RightMargin : 7 } ; 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 : 0 , InsideMargin : 1 , Line : 2 , Margin : 3 , OutsideMargin : 4 , Page : 5 , Paragraph : 6 , TopMargin : 7 } ; var c _oAscWrapStyle = { Inline : 0 , Flow : 1 } ; var c _oAscBorderWidth = { None : 0 , Thin : 1 , Medium : 2 , Thick : 3 } ; 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 } ; var c _oAscPageOrientation = { PagePortrait : 0 , PageLandscape : 1 } ; 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 , COLOR _TYPE _STYLE : 5 } ; 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 } ; 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 , Center : 1 , Dist : 2 ,
Just : 3 , Top : 4 } ; 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 : 0 , TBRL : 1 , BTLR : 2 } ; var c _oAscDocumentUnits = { Millimeter : 0 , Inch : 1 , Point : 2 } ; var c _oAscMouseMoveDataTypes = { Common : 0 , Hyperlink : 1 , LockedObject : 2 , Footnote : 3 , Form : 4 , Review : 5 } ; var c _oAscSelectionType = { RangeCells : 1 , RangeCol : 2 , RangeRow : 3 , RangeMax : 4 , RangeImage : 5 , RangeChart : 6 , RangeShape : 7 , RangeSlicer : 8 , RangeShapeText : 9 , RangeChartText : 10 , RangeFrozen : 11 } ; 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 } ; var c _oAscPrintDefaultSettings = { PageWidth : 210 , PageHeight : 297 , PageOrientation : c _oAscPageOrientation . PagePortrait , PageLeftField : 17.8 , PageRightField : 17.8 , PageTopField : 19.1 , PageBottomField : 19.1 , PageHeaderField : 7.62 , PageFooterField : 7.62 , MinPageLeftField : . 17 , MinPageRightField : . 17 , MinPageTopField : . 17 , MinPageBottomField : . 17 ,
PageGridLines : false , PageHeadings : false } ; var c _oAscPrintType = { ActiveSheets : 0 , EntireWorkbook : 1 , Selection : 2 } ; 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 , ProcessNotify : 6 } ; 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 } ; var c _oAscMathInterfaceType = { Common : 0 , Fraction : 1 , Script : 2 , Radical : 3 , LargeOperator : 4 , Delimiter : 5 , Function : 6 , Accent : 7 , BorderBox : 8 , Bar : 9 , Box : 10 , Limit : 11 , GroupChar : 12 , Matrix : 13 , EqArray : 14 , Phantom : 15 } ; var c _oAscMathInterfaceBarPos = { Top : 0 , Bottom : 1 } ; var c _oAscMathInterfaceScript = { None : 0 , Sup : 1 , Sub : 2 , SubSup : 3 , PreSubSup : 4 } ; var c _oAscMathInterfaceFraction = { Bar : 1 , Skewed : 2 , Linear : 3 , NoBar : 4 } ; var c _oAscMathInterfaceLimitPos = { None : - 1 , Top : 0 , Bottom : 1 } ; var c _oAscMathInterfaceMatrixMatrixAlign =
{ Top : 0 , Center : 1 , Bottom : 2 } ; var c _oAscMathInterfaceMatrixColumnAlign = { Left : 0 , Center : 1 , Right : 2 } ; var c _oAscMathInterfaceEqArrayAlign = { Top : 0 , Center : 1 , Bottom : 2 } ; var c _oAscMathInterfaceNaryLimitLocation = { UndOvr : 0 , SubSup : 1 } ; var c _oAscMathInterfaceGroupCharPos = { None : - 1 , Top : 0 , Bottom : 1 } ; var c _oAscTabType = { Bar : 0 , Center : 1 , Clear : 2 , Decimal : 3 , Num : 5 , Right : 7 , Left : 8 } ; var c _oAscTabLeader = { Dot : 0 , Heavy : 1 , Hyphen : 2 , MiddleDot : 3 , None : 4 , Underscore : 5 } ; 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)" ] , [ 52 , 950 , "EUC-JP" , "Japanese (EUC-JP)" ] , [ 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 , 65E3 , "UTF-7" , "Unicode (UTF-7)" ] , [ 48 , 1200 , "UTF-16LE" , "Unicode (UTF-16)" ] , [ 49 , 1201 , "UTF-16BE" , "Unicode (UTF-16 Big Endian)" ] , [ 50 , 12E3 , "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 , 12E3 : 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 , 65E3 : 47 , 65001 : 46 } ; var c _oAscCodePageNone = - 1 ; var c _oAscCodePageUtf7 = 47 ; var c _oAscCodePageUtf8 = 46 ; var c _oAscCodePageUtf16 = 48 ; var c _oAscCodePageUtf16BE = 49 ; var c _oAscCodePageUtf32 = 50 ; var c _oAscCodePageUtf32BE = 51 ; var c _oAscMaxTooltipLength = 256 ; var c _oAscMaxCellOrCommentLength = 32767 ; var c _oAscMaxFormulaLength =
8192 ; var c _oAscMaxHeaderFooterLength = 255 ; var c _oAscMaxFilterListLength = 1E4 ; var c _oAscMaxFormulaReferenceLength = 2048 ; var c _oAscMaxTableColumnTextLength = 256 ; 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 _Paragraph _TextProperties = 4 ; var changestype _Document _Content = 10 ; var changestype _Document _Content _Add =
11 ; 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 ; var changestype _Delete = 41 ; 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 _SlideTransition = 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 _CorePr = 76 ; var changestype _Document _Settings = 77 ; 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 ; var changestype _2 _Element _and _Type _Array = 7 ; var contentchanges _Add = 1 ; var contentchanges _Remove = 2 ; var PUNCTUATION _FLAG _BASE = 1 ; var PUNCTUATION _FLAG _CANT _BE _AT _BEGIN = 16 ; var PUNCTUATION _FLAG _CANT _BE _AT _END = 32 ; var PUNCTUATION _FLAG _EAST _ASIAN = 256 ; var PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E = 2 ; var PUNCTUATION _FLAG _CANT _BE _AT _END _E = 4 ; var g _aPunctuation = [ ] ; g _aPunctuation [ 33 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 34 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 35 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 36 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 37 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 38 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 39 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 40 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END |
PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 41 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 42 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 43 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 44 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 45 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 46 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 47 ] =
PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 58 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 59 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 60 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 61 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 62 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 63 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ;
g _aPunctuation [ 64 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 91 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 92 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 93 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 94 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 95 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 96 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 123 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ;
g _aPunctuation [ 124 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 125 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 126 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 161 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 162 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 163 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 164 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 165 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 166 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 167 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 168 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 169 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 170 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 171 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 172 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 173 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 174 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 175 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 176 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 177 ] =
PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 180 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 182 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 183 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 184 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 186 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 187 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 187 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 191 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8208 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8209 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8210 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8211 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8212 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8213 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8214 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8215 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8216 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 8217 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8218 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8219 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8220 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 8221 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8222 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8223 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8224 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8225 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8226 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8227 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8228 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8229 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8230 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8231 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8240 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8241 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8242 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8243 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8244 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8245 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8246 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8247 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8248 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8249 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8250 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8251 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8252 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8253 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8254 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8255 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8256 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8257 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8258 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8259 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8260 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8261 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8262 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8263 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8264 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8265 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8266 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8267 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8268 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8269 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8270 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8271 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8272 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8273 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8274 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8275 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8276 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8277 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8278 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8279 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8280 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8281 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8282 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8283 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8284 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8285 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8286 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12289 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12290 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12291 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12292 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12293 ] =
PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12294 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12295 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12296 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12297 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12298 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12299 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12300 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12301 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12302 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12303 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12304 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12305 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12306 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12307 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12308 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ;
g _aPunctuation [ 12309 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12310 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12311 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12312 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12313 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12314 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12315 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12316 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12317 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ;
g _aPunctuation [ 12318 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12319 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 65281 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65282 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65283 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65284 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN |
PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 65285 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65286 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65287 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65288 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 65289 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65290 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65291 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65292 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65293 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65294 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65295 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65306 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65307 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65308 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ;
g _aPunctuation [ 65309 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65310 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65311 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65312 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65339 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 65340 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65341 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65342 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65343 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65344 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65371 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN |
PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 65372 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65373 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65374 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65375 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65376 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65377 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65378 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65379 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65380 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65381 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65504 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ;
g _aPunctuation [ 65505 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 65506 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65507 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65508 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65509 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 65510 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65512 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65513 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65514 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65515 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65516 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65517 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65518 ] = 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 ,
useTextImport : 25 , comments : 26 , columnWidth : 27 } ; var c _oSpecialPasteOperation = { none : 0 , add : 1 , subtract : 2 , multiply : 3 , divide : 4 } ; var c _oAscNumberingFormat = { None : 0 , Bullet : 4097 , Decimal : 8194 , LowerRoman : 8195 , UpperRoman : 8196 , LowerLetter : 8197 , UpperLetter : 8198 , DecimalZero : 8199 , DecimalEnclosedCircle : 8200 , RussianLower : 8201 , RussianUpper : 8202 , ChineseCounting : 8449 , ChineseCountingThousand : 8450 , ChineseLegalSimplified : 8451 , BulletFlag : 4096 , NumberedFlag : 8192 } ; var c _oAscNumberingSuff = { Tab : 1 , Space : 2 , None : 3 } ; var c _oAscNumberingLvlTextType =
{ Text : 0 , Num : 1 } ; var c _oAscSdtAppearance = { Frame : 1 , Hidden : 2 } ; var c _oAscObjectsAlignType = { Selected : 0 , Slide : 1 , Page : 2 , Margin : 3 } ; var c _oAscItemType = { Default : 0 , Avg : 1 , Count : 2 , CountA : 3 , Max : 4 , Min : 5 , Product : 6 , StdDev : 7 , StdDevP : 8 , Sum : 9 , Var : 10 , VarP : 11 , Data : 12 , Grand : 13 , Blank : 14 } ; var c _oAscRevisionsMove = { NoMove : 0 , MoveTo : 1 , MoveFrom : 2 } ; var c _oAscRevisionsChangeType = { Unknown : 0 , TextAdd : 1 , TextRem : 2 , ParaAdd : 3 , ParaRem : 4 , TextPr : 5 , ParaPr : 6 , TablePr : 7 , RowsAdd : 8 , RowsRem : 9 , MoveMark : 254 , MoveMarkRemove : 255 } ; var c _oAscSectionBreakType =
{ NextPage : 0 , OddPage : 1 , EvenPage : 2 , Continuous : 3 , Column : 4 } ; var c _oAscSdtLockType = { ContentLocked : 0 , SdtContentLocked : 1 , SdtLocked : 2 , Unlocked : 3 } ; var c _oAscAlignH = { Center : 0 , Inside : 1 , Left : 2 , Outside : 3 , Right : 4 } ; var c _oAscAlignV = { Bottom : 0 , Center : 1 , Inside : 2 , Outside : 3 , Top : 4 } ; var c _oAscWatermarkType = { None : 0 , Text : 1 , Image : 2 } ; var c _oAscCalendarType = { Gregorian : 0 , GregorianArabic : 1 , GregorianMeFrench : 2 , GregorianUs : 3 , GregorianXlitEnglish : 4 , GregorianXlitFrench : 5 , Hebrew : 6 , Hijri : 7 , Japan : 8 , Korea : 9 , None : 10 , Saka : 11 , Taiwan : 12 ,
Thai : 13 } ; var c _oAscContentControlSpecificType = { None : 0 , CheckBox : 1 , Picture : 2 , ComboBox : 3 , DropDownList : 4 , DateTime : 5 , TOC : 10 } ; var c _oAscDefNameType = { none : 0 , table : 1 , slicer : 2 } ; var c _oAscChangeTextCaseType = { SentenceCase : 0 , LowerCase : 1 , UpperCase : 2 , CapitalizeWords : 3 , ToggleCase : 4 } ; var g _aLcidNameIdArray = [ "ar" , 1 , "bg" , 2 , "ca" , 3 , "zh-Hans" , 4 , "cs" , 5 , "da" , 6 , "de" , 7 , "el" , 8 , "en" , 9 , "es" , 10 , "fi" , 11 , "fr" , 12 , "he" , 13 , "hu" , 14 , "is" , 15 , "it" , 16 , "ja" , 17 , "ko" , 18 , "nl" , 19 , "no" , 20 , "pl" , 21 , "pt" , 22 , "rm" , 23 , "ro" , 24 , "ru" , 25 , "hr" , 26 , "sk" ,
27 , "sq" , 28 , "sv" , 29 , "th" , 30 , "tr" , 31 , "ur" , 32 , "id" , 33 , "uk" , 34 , "be" , 35 , "sl" , 36 , "et" , 37 , "lv" , 38 , "lt" , 39 , "tg" , 40 , "fa" , 41 , "vi" , 42 , "hy" , 43 , "az" , 44 , "eu" , 45 , "hsb" , 46 , "mk" , 47 , "tn" , 50 , "xh" , 52 , "zu" , 53 , "af" , 54 , "ka" , 55 , "fo" , 56 , "hi" , 57 , "mt" , 58 , "se" , 59 , "ga" , 60 , "ms" , 62 , "kk" , 63 , "ky" , 64 , "sw" , 65 , "tk" , 66 , "uz" , 67 , "tt" , 68 , "bn" , 69 , "pa" , 70 , "gu" , 71 , "or" , 72 , "ta" , 73 , "te" , 74 , "kn" , 75 , "ml" , 76 , "as" , 77 , "mr" , 78 , "sa" , 79 , "mn" , 80 , "bo" , 81 , "cy" , 82 , "km" , 83 , "lo" , 84 , "gl" , 86 , "kok" , 87 , "syr" , 90 , "si" , 91 , "iu" , 93 , "am" , 94 , "tzm" , 95 , "ne" , 97 , "fy" , 98 ,
"ps" , 99 , "fil" , 100 , "dv" , 101 , "ha" , 104 , "yo" , 106 , "quz" , 107 , "nso" , 108 , "ba" , 109 , "lb" , 110 , "kl" , 111 , "ig" , 112 , "ii" , 120 , "arn" , 122 , "moh" , 124 , "br" , 126 , "ug" , 128 , "mi" , 129 , "oc" , 130 , "co" , 131 , "gsw" , 132 , "sah" , 133 , "qut" , 134 , "rw" , 135 , "wo" , 136 , "prs" , 140 , "gd" , 145 , "ar-SA" , 1025 , "bg-BG" , 1026 , "ca-ES" , 1027 , "zh-TW" , 1028 , "cs-CZ" , 1029 , "da-DK" , 1030 , "de-DE" , 1031 , "el-GR" , 1032 , "en-US" , 1033 , "es-ES_tradnl" , 1034 , "fi-FI" , 1035 , "fr-FR" , 1036 , "he-IL" , 1037 , "hu-HU" , 1038 , "is-IS" , 1039 , "it-IT" , 1040 , "ja-JP" , 1041 , "ko-KR" , 1042 , "nl-NL" , 1043 , "nb-NO" ,
1044 , "pl-PL" , 1045 , "pt-BR" , 1046 , "rm-CH" , 1047 , "ro-RO" , 1048 , "ru-RU" , 1049 , "hr-HR" , 1050 , "sk-SK" , 1051 , "sq-AL" , 1052 , "sv-SE" , 1053 , "th-TH" , 1054 , "tr-TR" , 1055 , "ur-PK" , 1056 , "id-ID" , 1057 , "uk-UA" , 1058 , "be-BY" , 1059 , "sl-SI" , 1060 , "et-EE" , 1061 , "lv-LV" , 1062 , "lt-LT" , 1063 , "tg-Cyrl-TJ" , 1064 , "fa-IR" , 1065 , "vi-VN" , 1066 , "hy-AM" , 1067 , "az-Latn-AZ" , 1068 , "eu-ES" , 1069 , "wen-DE" , 1070 , "mk-MK" , 1071 , "st-ZA" , 1072 , "ts-ZA" , 1073 , "tn-ZA" , 1074 , "ven-ZA" , 1075 , "xh-ZA" , 1076 , "zu-ZA" , 1077 , "af-ZA" , 1078 , "ka-GE" , 1079 , "fo-FO" , 1080 , "hi-IN" , 1081 , "mt-MT" ,
1082 , "se-NO" , 1083 , "ms-MY" , 1086 , "kk-KZ" , 1087 , "ky-KG" , 1088 , "sw-KE" , 1089 , "tk-TM" , 1090 , "uz-Latn-UZ" , 1091 , "tt-RU" , 1092 , "bn-IN" , 1093 , "pa-IN" , 1094 , "gu-IN" , 1095 , "or-IN" , 1096 , "ta-IN" , 1097 , "te-IN" , 1098 , "kn-IN" , 1099 , "ml-IN" , 1100 , "as-IN" , 1101 , "mr-IN" , 1102 , "sa-IN" , 1103 , "mn-MN" , 1104 , "bo-CN" , 1105 , "cy-GB" , 1106 , "km-KH" , 1107 , "lo-LA" , 1108 , "my-MM" , 1109 , "gl-ES" , 1110 , "kok-IN" , 1111 , "mni" , 1112 , "sd-IN" , 1113 , "syr-SY" , 1114 , "si-LK" , 1115 , "chr-US" , 1116 , "iu-Cans-CA" , 1117 , "am-ET" , 1118 , "tmz" , 1119 , "ne-NP" , 1121 , "fy-NL" , 1122 , "ps-AF" ,
1123 , "fil-PH" , 1124 , "dv-MV" , 1125 , "bin-NG" , 1126 , "fuv-NG" , 1127 , "ha-Latn-NG" , 1128 , "ibb-NG" , 1129 , "yo-NG" , 1130 , "quz-BO" , 1131 , "nso-ZA" , 1132 , "ba-RU" , 1133 , "lb-LU" , 1134 , "kl-GL" , 1135 , "ig-NG" , 1136 , "kr-NG" , 1137 , "gaz-ET" , 1138 , "ti-ER" , 1139 , "gn-PY" , 1140 , "haw-US" , 1141 , "so-SO" , 1143 , "ii-CN" , 1144 , "pap-AN" , 1145 , "arn-CL" , 1146 , "moh-CA" , 1148 , "br-FR" , 1150 , "ug-CN" , 1152 , "mi-NZ" , 1153 , "oc-FR" , 1154 , "co-FR" , 1155 , "gsw-FR" , 1156 , "sah-RU" , 1157 , "qut-GT" , 1158 , "rw-RW" , 1159 , "wo-SN" , 1160 , "prs-AF" , 1164 , "plt-MG" , 1165 , "gd-GB" , 1169 , "ar-IQ" ,
2049 , "zh-CN" , 2052 , "de-CH" , 2055 , "en-GB" , 2057 , "es-MX" , 2058 , "fr-BE" , 2060 , "it-CH" , 2064 , "nl-BE" , 2067 , "nn-NO" , 2068 , "pt-PT" , 2070 , "ro-MO" , 2072 , "ru-MO" , 2073 , "sr-Latn-CS" , 2074 , "sv-FI" , 2077 , "ur-IN" , 2080 , "az-Cyrl-AZ" , 2092 , "dsb-DE" , 2094 , "se-SE" , 2107 , "ga-IE" , 2108 , "ms-BN" , 2110 , "uz-Cyrl-UZ" , 2115 , "bn-BD" , 2117 , "pa-PK" , 2118 , "mn-Mong-CN" , 2128 , "bo-BT" , 2129 , "sd-PK" , 2137 , "iu-Latn-CA" , 2141 , "tzm-Latn-DZ" , 2143 , "ne-IN" , 2145 , "quz-EC" , 2155 , "ti-ET" , 2163 , "ar-EG" , 3073 , "zh-HK" , 3076 , "de-AT" , 3079 , "en-AU" , 3081 , "es-ES" , 3082 , "fr-CA" ,
3084 , "sr-Cyrl-CS" , 3098 , "se-FI" , 3131 , "tmz-MA" , 3167 , "quz-PE" , 3179 , "ar-LY" , 4097 , "zh-SG" , 4100 , "de-LU" , 4103 , "en-CA" , 4105 , "es-GT" , 4106 , "fr-CH" , 4108 , "hr-BA" , 4122 , "smj-NO" , 4155 , "ar-DZ" , 5121 , "zh-MO" , 5124 , "de-LI" , 5127 , "en-NZ" , 5129 , "es-CR" , 5130 , "fr-LU" , 5132 , "bs-Latn-BA" , 5146 , "smj-SE" , 5179 , "ar-MA" , 6145 , "en-IE" , 6153 , "es-PA" , 6154 , "fr-MC" , 6156 , "sr-Latn-BA" , 6170 , "sma-NO" , 6203 , "ar-TN" , 7169 , "en-ZA" , 7177 , "es-DO" , 7178 , "fr-West" , 7180 , "sr-Cyrl-BA" , 7194 , "sma-SE" , 7227 , "ar-OM" , 8193 , "en-JM" , 8201 , "es-VE" , 8202 , "fr-RE" , 8204 ,
"bs-Cyrl-BA" , 8218 , "sms-FI" , 8251 , "ar-YE" , 9217 , "en-CB" , 9225 , "es-CO" , 9226 , "fr-CG" , 9228 , "sr-Latn-RS" , 9242 , "smn-FI" , 9275 , "ar-SY" , 10241 , "en-BZ" , 10249 , "es-PE" , 10250 , "fr-SN" , 10252 , "sr-Cyrl-RS" , 10266 , "ar-JO" , 11265 , "en-TT" , 11273 , "es-AR" , 11274 , "fr-CM" , 11276 , "sr-Latn-ME" , 11290 , "ar-LB" , 12289 , "en-ZW" , 12297 , "es-EC" , 12298 , "fr-CI" , 12300 , "sr-Cyrl-ME" , 12314 , "ar-KW" , 13313 , "en-PH" , 13321 , "es-CL" , 13322 , "fr-ML" , 13324 , "ar-AE" , 14337 , "en-ID" , 14345 , "es-UY" , 14346 , "fr-MA" , 14348 , "ar-BH" , 15361 , "en-HK" , 15369 , "es-PY" , 15370 , "fr-HT" ,
15372 , "ar-QA" , 16385 , "en-IN" , 16393 , "es-BO" , 16394 , "en-MY" , 17417 , "es-SV" , 17418 , "en-SG" , 18441 , "es-HN" , 18442 , "es-NI" , 19466 , "es-PR" , 20490 , "es-US" , 21514 , "bs-Cyrl" , 25626 , "bs-Latn" , 26650 , "sr-Cyrl" , 27674 , "sr-Latn" , 28698 , "smn" , 28731 , "az-Cyrl" , 29740 , "sms" , 29755 , "zh" , 30724 , "nn" , 30740 , "bs" , 30746 , "az-Latn" , 30764 , "sma" , 30779 , "uz-Cyrl" , 30787 , "mn-Cyrl" , 30800 , "iu-Cans" , 30813 , "zh-Hant" , 31748 , "nb" , 31764 , "sr" , 31770 , "tg-Cyrl" , 31784 , "dsb" , 31790 , "smj" , 31803 , "uz-Latn" , 31811 , "mn-Mong" , 31824 , "iu-Latn" , 31837 , "tzm-Latn" , 31839 ,
"ha-Latn" , 31848 ] ; var g _oLcidNameToIdMap = { } ; var g _oLcidIdToNameMap = { } ; for ( var i = 0 , length = g _aLcidNameIdArray . length ; i + 1 < length ; i += 2 ) { var name = g _aLcidNameIdArray [ i ] ; var id = g _aLcidNameIdArray [ i + 1 ] ; g _oLcidNameToIdMap [ name ] = id ; g _oLcidIdToNameMap [ id ] = name } var document _compatibility _mode _Word11 = 11 ; var document _compatibility _mode _Word12 = 12 ; var document _compatibility _mode _Word14 = 14 ; var document _compatibility _mode _Word15 = 15 ; var document _compatibility _mode _Current = document _compatibility _mode _Word12 ; var c _oAscCustomShortcutType =
{ Symbol : 1 } ; var c _oAscLineNumberRestartType = { Continuous : 1 , NewPage : 2 , NewSection : 3 } ; var c _oAscSectionApplyType = { Current : 0 , ToEnd : 1 , All : 2 } ; var c _oAscSlideSZType = { Sz35mm : 0 , SzA3 : 1 , SzA4 : 2 , SzB4ISO : 3 , SzB4JIS : 4 , SzB5ISO : 5 , SzB5JIS : 6 , SzBanner : 7 , SzCustom : 8 , SzHagakiCard : 9 , SzLedger : 10 , SzLetter : 11 , SzOverhead : 12 , SzScreen16x10 : 13 , SzScreen16x9 : 14 , SzScreen4x3 : 15 , SzWidescreen : 16 } ; var c _oAscPictureFormScaleFlag = { Always : 0 , Bigger : 1 , Smaller : 2 , Never : 3 } ; var c _oAscDisplayModeInReview = { Edit : 0 , Final : 1 , Original : 2 , Simple : 3 } ; 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_nCommonRequestTime" ] = window [ "Asc" ] . c _nCommonRequestTime = c _nCommonRequestTime ; 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_nMaxHyperlinkLength" ] = window [ "Asc" ] . c _nMaxHyperlinkLength = c _nMaxHyperlinkLength ; window [ "Asc" ] [ "c_oAscFileType" ] = window [ "Asc" ] . c _oAscFileType =
c _oAscFileType ; window [ "Asc" ] . g _oLcidNameToIdMap = g _oLcidNameToIdMap ; window [ "Asc" ] . g _oLcidIdToNameMap = g _oLcidIdToNameMap ; 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 [ "DOCM" ] = prot . DOCM ; prot [ "DOTX" ] = prot . DOTX ; prot [ "DOTM" ] = prot . DOTM ; prot [ "FODT" ] =
prot . FODT ; prot [ "OTT" ] = prot . OTT ; 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 [ "XLSM" ] = prot . XLSM ; prot [ "XLTX" ] = prot . XLTX ; prot [ "XLTM" ] = prot . XLTM ; prot [ "FODS" ] = prot . FODS ; prot [ "OTS" ] = prot . OTS ; prot [ "XLSY" ] = prot . XLSY ; prot [ "PPTX" ] = prot . PPTX ; prot [ "PPT" ] = prot . PPT ; prot [ "ODP" ] = prot . ODP ; prot [ "PPSX" ] = prot . PPSX ; prot [ "PPTM" ] = prot . PPTM ; prot [ "PPSM" ] = prot . PPSM ; prot [ "POTX" ] = prot . POTX ; prot [ "POTM" ] = prot . POTM ; prot [ "FODP" ] = prot . FODP ;
prot [ "OTP" ] = prot . OTP ; 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 [ "DirectUrl" ] = prot . DirectUrl ; 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 [ "EditingError" ] = prot . EditingError ; prot [ "LoadingFontError" ] = prot . LoadingFontError ; 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 [ "DataValidate" ] = prot . DataValidate ; prot [ "MoreOneTypeDataValidate" ] = prot . MoreOneTypeDataValidate ; prot [ "ContainsCellsWithoutDataValidate" ] = prot . ContainsCellsWithoutDataValidate ; 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 [ "ChangeFilteredRangeError" ] = prot . ChangeFilteredRangeError ; prot [ "PasteMaxRangeError" ] = prot . PasteMaxRangeError ;
prot [ "PastInMergeAreaError" ] = prot . PastInMergeAreaError ; prot [ "CopyMultiselectAreaError" ] = prot . CopyMultiselectAreaError ; prot [ "PasteSlicerError" ] = prot . PasteSlicerError ; prot [ "MoveSlicerError" ] = prot . MoveSlicerError ; prot [ "PasteMultiSelectError" ] = prot . PasteMultiSelectError ; 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 [ "ConvertationOpenLimitError" ] = prot . ConvertationOpenLimitError ; prot [ "UserDrop" ] = prot . UserDrop ; prot [ "Warning" ] = prot . Warning ; prot [ "UpdateVersion" ] = prot . UpdateVersion ; prot [ "PrintMaxPagesCount" ] = prot . PrintMaxPagesCount ; prot [ "SessionAbsolute" ] = prot . SessionAbsolute ; prot [ "SessionIdle" ] = prot . SessionIdle ; prot [ "SessionToken" ] = prot . SessionToken ; prot [ "FrmlMaxTextLength" ] = prot . FrmlMaxTextLength ; prot [ "FrmlMaxLength" ] = prot . FrmlMaxLength ; prot [ "FrmlMaxReference" ] =
prot . FrmlMaxReference ; 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 [ "PivotLabledColumns" ] = prot . PivotLabledColumns ; prot [ "PivotOverlap" ] = prot . PivotOverlap ; prot [ "PivotGroup" ] = prot . PivotGroup ; prot [ "PivotWithoutUnderlyingData" ] = prot . PivotWithoutUnderlyingData ; prot [ "ForceSaveButton" ] = prot . ForceSaveButton ; prot [ "ForceSaveTimeout" ] =
prot . ForceSaveTimeout ; prot [ "Submit" ] = prot . Submit ; prot [ "CannotChangeFormulaArray" ] = prot . CannotChangeFormulaArray ; prot [ "MultiCellsInTablesFormulaArray" ] = prot . MultiCellsInTablesFormulaArray ; prot [ "MailToClientMissing" ] = prot . MailToClientMissing ; prot [ "OpenWarning" ] = prot . OpenWarning ; prot [ "DataEncrypted" ] = prot . DataEncrypted ; prot [ "NoDataToParse" ] = prot . NoDataToParse ; prot [ "CannotCompareInCoEditing" ] = prot . CannotCompareInCoEditing ; prot [ "CannotUngroupError" ] = prot . CannotUngroupError ; prot [ "UplDocumentSize" ] = prot . UplDocumentSize ;
prot [ "UplDocumentExt" ] = prot . UplDocumentExt ; prot [ "UplDocumentFileCount" ] = prot . UplDocumentFileCount ; prot [ "CustomSortMoreOneSelectedError" ] = prot . CustomSortMoreOneSelectedError ; prot [ "CustomSortNotOriginalSelectError" ] = prot . CustomSortNotOriginalSelectError ; prot [ "RemoveDuplicates" ] = prot . RemoveDuplicates ; prot [ "LargeRangeWarning" ] = prot . LargeRangeWarning ; prot [ "LockedEditView" ] = prot . LockedEditView ; prot [ "Password" ] = prot . Password ; prot [ "SecondaryAxis" ] = prot . SecondaryAxis ; prot [ "ComboSeriesError" ] = prot . ComboSeriesError ;
prot [ "DataValidateNotNumeric" ] = prot . DataValidateNotNumeric ; prot [ "DataValidateNegativeTextLength" ] = prot . DataValidateNegativeTextLength ; prot [ "DataValidateMustEnterValue" ] = prot . DataValidateMustEnterValue ; prot [ "DataValidateMinGreaterMax" ] = prot . DataValidateMinGreaterMax ; prot [ "DataValidateInvalid" ] = prot . DataValidateInvalid ; prot [ "NamedRangeNotFound" ] = prot . NamedRangeNotFound ; prot [ "FormulaEvaluateError" ] = prot . FormulaEvaluateError ; prot [ "DataValidateInvalidList" ] = prot . DataValidateInvalidList ; prot [ "NotValidPercentile" ] =
prot . NotValidPercentile ; prot [ "CannotAddConditionalFormatting" ] = prot . CannotAddConditionalFormatting ; prot [ "NotValidPercentage" ] = prot . NotValidPercentage ; prot [ "NotSingleReferenceCannotUsed" ] = prot . NotSingleReferenceCannotUsed ; prot [ "CannotUseRelativeReference" ] = prot . CannotUseRelativeReference ; prot [ "ValueMustBeGreaterThen" ] = prot . ValueMustBeGreaterThen ; prot [ "IconDataRangesOverlap" ] = prot . IconDataRangesOverlap ; prot [ "ErrorTop10Between" ] = prot . ErrorTop10Between ; prot [ "SingleColumnOrRowError" ] = prot . SingleColumnOrRowError ;
prot [ "LocationOrDataRangeError" ] = prot . LocationOrDataRangeError ; 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 ; prot [ "Waiting" ] = prot . Waiting ; prot [ "Submit" ] = prot . Submit ; 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" ] = 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_oAscShd" ] = window [ "Asc" ] . c _oAscShd = c _oAscShd ; prot = c _oAscShd ; prot [ "Clear" ] = prot . Clear ; prot [ "Nil" ] = prot . Nil ; prot [ "DiagCross" ] = prot . DiagCross ; prot [ "DiagStripe" ] = prot . DiagStripe ; prot [ "HorzCross" ] = prot . HorzCross ; prot [ "HorzStripe" ] = prot . HorzStripe ; prot [ "Pct10" ] = prot . Pct10 ; prot [ "Pct12" ] = prot . Pct12 ; prot [ "Pct15" ] = prot . Pct15 ; prot [ "Pct20" ] = prot . Pct20 ; prot [ "Pct25" ] = prot . Pct25 ; prot [ "Pct30" ] = prot . Pct30 ; prot [ "Pct35" ] = prot . Pct35 ; prot [ "Pct37" ] = prot . Pct37 ; prot [ "Pct40" ] = prot . Pct40 ; prot [ "Pct45" ] = prot . Pct45 ;
prot [ "Pct5" ] = prot . Pct5 ; prot [ "Pct50" ] = prot . Pct50 ; prot [ "Pct55" ] = prot . Pct55 ; prot [ "Pct60" ] = prot . Pct60 ; prot [ "Pct62" ] = prot . Pct62 ; prot [ "Pct65" ] = prot . Pct65 ; prot [ "Pct70" ] = prot . Pct70 ; prot [ "Pct75" ] = prot . Pct75 ; prot [ "Pct80" ] = prot . Pct80 ; prot [ "Pct85" ] = prot . Pct85 ; prot [ "Pct87" ] = prot . Pct87 ; prot [ "Pct90" ] = prot . Pct90 ; prot [ "Pct95" ] = prot . Pct95 ; prot [ "ReverseDiagStripe" ] = prot . ReverseDiagStripe ; prot [ "Solid" ] = prot . Solid ; prot [ "ThinDiagCross" ] = prot . ThinDiagCross ; prot [ "ThinDiagStripe" ] = prot . ThinDiagStripe ; prot [ "ThinHorzCross" ] =
prot . ThinHorzCross ; prot [ "ThinHorzStripe" ] = prot . ThinHorzStripe ; prot [ "ThinReverseDiagStripe" ] = prot . ThinReverseDiagStripe ; prot [ "ThinVertStripe" ] = prot . ThinVertStripe ; prot [ "VertStripe" ] = prot . VertStripe ; 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 ; prot [ "show" ] = prot . show ; 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 [ "surfaceNormal" ] = prot . surfaceNormal ; prot [ "surfaceWireframe" ] = prot . surfaceWireframe ; prot [ "contourNormal" ] = prot . contourNormal ; prot [ "contourWireframe" ] = prot . contourWireframe ; prot [ "comboCustom" ] = prot . comboCustom ; prot [ "comboBarLine" ] = prot . comboBarLine ; prot [ "comboBarLineSecondary" ] = prot . comboBarLineSecondary ; prot [ "comboAreaBar" ] = prot . comboAreaBar ; 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 [ "none" ] = prot . none ; 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 ; prot [ "ser" ] = prot . ser ; 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 ; 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 ; prot [ "COLOR_TYPE_STYLE" ] = prot . COLOR _TYPE _STYLE ; 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_oAscMouseMoveDataTypes" ] = window [ "Asc" ] . c _oAscMouseMoveDataTypes = c _oAscMouseMoveDataTypes ; prot = c _oAscMouseMoveDataTypes ; prot [ "Common" ] = prot . Common ; prot [ "Hyperlink" ] = prot . Hyperlink ; prot [ "LockedObject" ] = prot . LockedObject ; prot [ "Footnote" ] = prot . Footnote ; prot [ "Form" ] = prot . Form ; prot [ "Review" ] = prot . Review ; window [ "Asc" ] [ "c_oAscMaxTooltipLength" ] = window [ "Asc" ] . c _oAscMaxTooltipLength =
c _oAscMaxTooltipLength ; window [ "Asc" ] [ "c_oAscMaxCellOrCommentLength" ] = window [ "Asc" ] . c _oAscMaxCellOrCommentLength = c _oAscMaxCellOrCommentLength ; window [ "Asc" ] [ "c_oAscMaxHeaderFooterLength" ] = window [ "Asc" ] . c _oAscMaxHeaderFooterLength = c _oAscMaxHeaderFooterLength ; window [ "Asc" ] [ "c_oAscMaxFilterListLength" ] = window [ "Asc" ] . c _oAscMaxFilterListLength = c _oAscMaxFilterListLength ; 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 [ "RangeSlicer" ] = prot . RangeSlicer ; 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_oAscPrintType" ] = window [ "Asc" ] . c _oAscPrintType = c _oAscPrintType ; prot = c _oAscPrintType ; prot [ "ActiveSheets" ] = prot . ActiveSheets ; prot [ "EntireWorkbook" ] = prot . EntireWorkbook ; prot [ "Selection" ] = prot . Selection ; 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_oAscTabType" ] = window [ "Asc" ] . c _oAscTabType = c _oAscTabType ; prot [ "Bar" ] = c _oAscTabType . Bar ; prot [ "Center" ] = c _oAscTabType . Center ; prot [ "Clear" ] = c _oAscTabType . Clear ; prot [ "Decimal" ] = c _oAscTabType . Decimal ; prot [ "Num" ] = c _oAscTabType . Num ; prot [ "Right" ] = c _oAscTabType . Right ; prot [ "Left" ] = c _oAscTabType . Left ;
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 ; prot = window [ "AscCommon" ] [ "c_oAscCellAnchorType" ] = window [ "AscCommon" ] . c _oAscCellAnchorType = c _oAscCellAnchorType ; prot [ "cellanchorAbsolute" ] = prot . cellanchorAbsolute ;
prot [ "cellanchorOneCell" ] = prot . cellanchorOneCell ; prot [ "cellanchorTwoCell" ] = prot . cellanchorTwoCell ; 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 _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" ] . vaKSize = vaKSize ; window [ "AscCommon" ] . vaKSuper = vaKSuper ; window [ "AscCommon" ] . vaKSub = vaKSub ;
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 _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" ] . c _oAscMaxFormulaReferenceLength =
c _oAscMaxFormulaReferenceLength ; window [ "AscCommon" ] . c _oAscMaxTableColumnTextLength = c _oAscMaxTableColumnTextLength ; 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 _Paragraph _TextProperties = changestype _Paragraph _TextProperties ; 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 _SlideTransition = changestype _SlideTransition ; 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 _CorePr = changestype _CorePr ; window [ "AscCommon" ] . changestype _Document _Settings = changestype _Document _Settings ; 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 [ "AscCommon" ] [ "align_Distributed" ] = window [ "AscCommon" ] . align _Distributed = align _Distributed ; window [ "AscCommon" ] [ "c_oAscFormatPainterState" ] = c _oAscFormatPainterState ; c _oAscFormatPainterState [ "kOff" ] =
c _oAscFormatPainterState . kOff ; c _oAscFormatPainterState [ "kOn" ] = c _oAscFormatPainterState . kOn ; c _oAscFormatPainterState [ "kMultiple" ] = c _oAscFormatPainterState . kMultiple ; 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 ; prot [ "useTextImport" ] = prot . useTextImport ; prot [ "comments" ] = prot . comments ; prot [ "columnWidth" ] = prot . columnWidth ; window [ "Asc" ] [ "c_oSpecialPasteOperation" ] = window [ "Asc" ] . c _oSpecialPasteOperation = c _oSpecialPasteOperation ; prot =
c _oSpecialPasteOperation ; prot [ "none" ] = prot . none ; prot [ "add" ] = prot . add ; prot [ "subtract" ] = prot . subtract ; prot [ "multiply" ] = prot . multiply ; prot [ "divide" ] = prot . divide ; window [ "Asc" ] [ "c_oAscNumberingFormat" ] = window [ "Asc" ] . c _oAscNumberingFormat = c _oAscNumberingFormat ; prot = c _oAscNumberingFormat ; prot [ "None" ] = prot . None ; prot [ "Bullet" ] = prot . Bullet ; prot [ "Decimal" ] = prot . Decimal ; prot [ "LowerRoman" ] = prot . LowerRoman ; prot [ "UpperRoman" ] = prot . UpperRoman ; prot [ "LowerLetter" ] = prot . LowerLetter ; prot [ "UpperLetter" ] = prot . UpperLetter ;
prot [ "DecimalZero" ] = prot . DecimalZero ; prot [ "DecimalEnclosedCircle" ] = prot . DecimalEnclosedCircle ; prot [ "RussianLower" ] = prot . RussianLower ; prot [ "RussianUpper" ] = prot . RussianUpper ; prot [ "ChineseCounting" ] = prot . ChineseCounting ; prot [ "ChineseCountingThousand" ] = prot . ChineseCountingThousand ; prot [ "ChineseLegalSimplified" ] = prot . ChineseLegalSimplified ; 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 ; prot = window [ "Asc" ] [ "c_oAscObjectsAlignType" ] =
window [ "Asc" ] . c _oAscObjectsAlignType = c _oAscObjectsAlignType ; prot [ "Selected" ] = c _oAscObjectsAlignType . Selected ; prot [ "Slide" ] = c _oAscObjectsAlignType . Slide ; prot [ "Page" ] = c _oAscObjectsAlignType . Page ; prot [ "Margin" ] = c _oAscObjectsAlignType . Margin ; prot = window [ "Asc" ] [ "c_oAscItemType" ] = window [ "Asc" ] . c _oAscItemType = c _oAscItemType ; prot [ "Data" ] = prot . Data ; prot [ "Default" ] = prot . Default ; prot [ "Sum" ] = prot . Sum ; prot [ "CountA" ] = prot . CountA ; prot [ "Avg" ] = prot . Avg ; prot [ "Max" ] = prot . Max ; prot [ "Min" ] = prot . Min ; prot [ "Product" ] = prot . Product ;
prot [ "Count" ] = prot . Count ; prot [ "StdDev" ] = prot . StdDev ; prot [ "StdDevP" ] = prot . StdDevP ; prot [ "Var" ] = prot . Var ; prot [ "VarP" ] = prot . VarP ; prot [ "Grand" ] = prot . Grand ; prot [ "Blank" ] = prot . Blank ; prot = window [ "Asc" ] [ "c_oAscRevisionsMove" ] = window [ "Asc" ] . c _oAscRevisionsMove = c _oAscRevisionsMove ; prot [ "NoMove" ] = c _oAscRevisionsMove . NoMove ; prot [ "MoveTo" ] = c _oAscRevisionsMove . MoveTo ; prot [ "MoveFrom" ] = c _oAscRevisionsMove . MoveFrom ; prot = window [ "Asc" ] [ "c_oAscRevisionsChangeType" ] = window [ "Asc" ] . c _oAscRevisionsChangeType = c _oAscRevisionsChangeType ;
prot [ "Unknown" ] = c _oAscRevisionsChangeType . Unknown ; prot [ "TextAdd" ] = c _oAscRevisionsChangeType . TextAdd ; prot [ "TextRem" ] = c _oAscRevisionsChangeType . TextRem ; prot [ "ParaAdd" ] = c _oAscRevisionsChangeType . ParaAdd ; prot [ "ParaRem" ] = c _oAscRevisionsChangeType . ParaRem ; prot [ "TextPr" ] = c _oAscRevisionsChangeType . TextPr ; prot [ "ParaPr" ] = c _oAscRevisionsChangeType . ParaPr ; prot [ "TablePr" ] = c _oAscRevisionsChangeType . TablePr ; prot [ "RowsAdd" ] = c _oAscRevisionsChangeType . RowsAdd ; prot [ "RowsRem" ] = c _oAscRevisionsChangeType . RowsRem ; prot [ "MoveMark" ] =
c _oAscRevisionsChangeType . MoveMark ; prot = window [ "Asc" ] [ "c_oAscSectionBreakType" ] = window [ "Asc" ] . c _oAscSectionBreakType = c _oAscSectionBreakType ; prot [ "NextPage" ] = c _oAscSectionBreakType . NextPage ; prot [ "OddPage" ] = c _oAscSectionBreakType . OddPage ; prot [ "EvenPage" ] = c _oAscSectionBreakType . EvenPage ; prot [ "Continuous" ] = c _oAscSectionBreakType . Continuous ; prot [ "Column" ] = c _oAscSectionBreakType . Column ; prot = window [ "Asc" ] [ "c_oAscSdtLockType" ] = window [ "Asc" ] . c _oAscSdtLockType = c _oAscSdtLockType ; prot [ "ContentLocked" ] = c _oAscSdtLockType . ContentLocked ;
prot [ "SdtContentLocked" ] = c _oAscSdtLockType . SdtContentLocked ; prot [ "SdtLocked" ] = c _oAscSdtLockType . SdtLocked ; prot [ "Unlocked" ] = c _oAscSdtLockType . Unlocked ; prot = window [ "Asc" ] [ "c_oAscAlignH" ] = window [ "Asc" ] . c _oAscAlignH = c _oAscAlignH ; prot [ "Center" ] = c _oAscAlignH . Center ; prot [ "Inside" ] = c _oAscAlignH . Inside ; prot [ "Left" ] = c _oAscAlignH . Left ; prot [ "Outside" ] = c _oAscAlignH . Outside ; prot [ "Right" ] = c _oAscAlignH . Right ; prot = window [ "Asc" ] [ "c_oAscAlignV" ] = window [ "Asc" ] . c _oAscAlignV = c _oAscAlignV ; prot [ "Bottom" ] = c _oAscAlignV . Bottom ;
prot [ "Center" ] = c _oAscAlignV . Center ; prot [ "Inside" ] = c _oAscAlignV . Inside ; prot [ "Outside" ] = c _oAscAlignV . Outside ; prot [ "Top" ] = c _oAscAlignV . Top ; prot = window [ "Asc" ] [ "c_oAscWatermarkType" ] = window [ "Asc" ] . c _oAscWatermarkType = c _oAscWatermarkType ; prot [ "None" ] = prot . None ; prot [ "Text" ] = prot . Text ; prot [ "Image" ] = prot . Image ; prot = window [ "Asc" ] [ "c_oAscCalendarType" ] = window [ "Asc" ] . c _oAscCalendarType = c _oAscCalendarType ; prot [ "Gregorian" ] = c _oAscCalendarType . Gregorian ; prot [ "GregorianArabic" ] = c _oAscCalendarType . GregorianArabic ;
prot [ "GregorianMeFrench" ] = c _oAscCalendarType . GregorianMeFrench ; prot [ "GregorianUs" ] = c _oAscCalendarType . GregorianUs ; prot [ "GregorianXlitEnglish" ] = c _oAscCalendarType . GregorianXlitEnglish ; prot [ "GregorianXlitFrench" ] = c _oAscCalendarType . GregorianXlitFrench ; prot [ "Hebrew" ] = c _oAscCalendarType . Hebrew ; prot [ "Hijri" ] = c _oAscCalendarType . Hijri ; prot [ "Japan" ] = c _oAscCalendarType . Japan ; prot [ "Korea" ] = c _oAscCalendarType . Korea ; prot [ "None" ] = c _oAscCalendarType . None ; prot [ "Saka" ] = c _oAscCalendarType . Saka ; prot [ "Taiwan" ] = c _oAscCalendarType . Taiwan ;
prot [ "Thai" ] = c _oAscCalendarType . Thai ; prot = window [ "Asc" ] [ "c_oAscContentControlSpecificType" ] = window [ "Asc" ] . c _oAscContentControlSpecificType = c _oAscContentControlSpecificType ; prot [ "None" ] = c _oAscContentControlSpecificType . None ; prot [ "CheckBox" ] = c _oAscContentControlSpecificType . CheckBox ; prot [ "Picture" ] = c _oAscContentControlSpecificType . Picture ; prot [ "ComboBox" ] = c _oAscContentControlSpecificType . ComboBox ; prot [ "DropDownList" ] = c _oAscContentControlSpecificType . DropDownList ; prot [ "DateTime" ] = c _oAscContentControlSpecificType . DateTime ;
prot [ "TOC" ] = c _oAscContentControlSpecificType . TOC ; window [ "Asc" ] [ "c_oAscDefNameType" ] = window [ "Asc" ] . c _oAscDefNameType = c _oAscDefNameType ; prot = c _oAscDefNameType ; prot [ "table" ] = prot . table ; prot [ "slicer" ] = prot . slicer ; window [ "Asc" ] [ "c_oAscChangeTextCaseType" ] = window [ "Asc" ] . c _oAscChangeTextCaseType = c _oAscChangeTextCaseType ; prot = c _oAscChangeTextCaseType ; prot [ "SentenceCase" ] = prot . SentenceCase ; prot [ "LowerCase" ] = prot . LowerCase ; prot [ "UpperCase" ] = prot . UpperCase ; prot [ "CapitalizeWords" ] = prot . CapitalizeWords ; prot [ "ToggleCase" ] =
prot . ToggleCase ; window [ "AscCommon" ] . document _compatibility _mode _Word11 = document _compatibility _mode _Word11 ; window [ "AscCommon" ] . document _compatibility _mode _Word12 = document _compatibility _mode _Word12 ; window [ "AscCommon" ] . document _compatibility _mode _Word14 = document _compatibility _mode _Word14 ; window [ "AscCommon" ] . document _compatibility _mode _Word15 = document _compatibility _mode _Word15 ; window [ "AscCommon" ] . document _compatibility _mode _Current = document _compatibility _mode _Current ; prot = window [ "AscCommon" ] [ "c_oAscCustomShortcutType" ] =
window [ "AscCommon" ] . c _oAscCustomShortcutType = c _oAscCustomShortcutType ; prot [ "Symbol" ] = c _oAscCustomShortcutType . Symbol ; prot = window [ "Asc" ] [ "c_oAscLineNumberRestartType" ] = window [ "Asc" ] . c _oAscLineNumberRestartType = c _oAscLineNumberRestartType ; prot [ "Continuous" ] = c _oAscLineNumberRestartType . Continuous ; prot [ "NewPage" ] = c _oAscLineNumberRestartType . NewPage ; prot [ "NewSection" ] = c _oAscLineNumberRestartType . NewSection ; prot = window [ "Asc" ] [ "c_oAscSectionApplyType" ] = window [ "Asc" ] . c _oAscSectionApplyType = c _oAscSectionApplyType ;
prot [ "Current" ] = c _oAscSectionApplyType . Current ; prot [ "ToEnd" ] = c _oAscSectionApplyType . ToEnd ; prot [ "All" ] = c _oAscSectionApplyType . All ; prot = window [ "Asc" ] [ "c_oAscSlideSZType" ] = window [ "Asc" ] . c _oAscSlideSZType = c _oAscSlideSZType ; prot [ "Sz35mm" ] = prot . Sz35mm ; prot [ "SzA3" ] = prot . SzA3 ; prot [ "SzA4" ] = prot . SzA4 ; prot [ "SzB4ISO" ] = prot . SzB4ISO ; prot [ "SzB4JIS" ] = prot . SzB4JIS ; prot [ "SzB5ISO" ] = prot . SzB5ISO ; prot [ "SzB5JIS" ] = prot . SzB5JIS ; prot [ "SzBanner" ] = prot . SzBanner ; prot [ "SzCustom" ] = prot . SzCustom ; prot [ "SzHagakiCard" ] = prot . SzHagakiCard ;
prot [ "SzLedger" ] = prot . SzLedger ; prot [ "SzLetter" ] = prot . SzLetter ; prot [ "SzOverhead" ] = prot . SzOverhead ; prot [ "SzScreen16x10" ] = prot . SzScreen16x10 ; prot [ "SzScreen16x9" ] = prot . SzScreen16x9 ; prot [ "SzScreen4x3" ] = prot . SzScreen4x3 ; prot [ "SzWidescreen" ] = prot . SzWidescreen ; prot = window [ "Asc" ] [ "c_oAscPictureFormScaleFlag" ] = window [ "Asc" ] . c _oAscPictureFormScaleFlag = c _oAscPictureFormScaleFlag ; prot [ "Always" ] = prot . Always ; prot [ "Bigger" ] = prot . Bigger ; prot [ "Smaller" ] = prot . Smaller ; prot [ "Never" ] = prot . Never ; prot = window [ "Asc" ] [ "c_oAscDisplayModeInReview" ] =
window [ "Asc" ] . c _oAscDisplayModeInReview = c _oAscDisplayModeInReview ; prot [ "Edit" ] = prot . Edit ; prot [ "Final" ] = prot . Final ; prot [ "Original" ] = prot . Original ; prot [ "Simple" ] = prot . Simple } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function asc _CUser ( val ) { this . id = null ; this . idOriginal = null ; this . userName = null ; this . state = undefined ; this . indexUser = - 1 ; this . color = null ; this . view = false ; this . _setUser ( val ) ; return this } asc _CUser . prototype . isEqual = function ( obj ) { return this . id === obj . id && this . idOriginal === obj . idOriginal && this . userName === obj . userName && this . state === obj . state && this . indexUser === obj . indexUser && this . color === obj . color && this . view === obj . view } ; 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 , None : 0 , WaitAuth : 1 , Authorized : 2 , ClosedCoAuth : 3 , ClosedAll : 4 , SaveChanges : 10 , AskSaveChanges : 11 } ; 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 , updateVersion : 4008 } ; 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 , Form : 3 } ; function getDisconnectErrorCode ( isDocumentLoadComplete , opt _closeCode ) { var code = Asc . c _oAscError . ID . CoAuthoringDisconnect ; 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 ) code = isDocumentLoadComplete ? Asc . c _oAscError . ID . SessionToken : Asc . c _oAscError . ID . KeyExpire ; else if ( c _oCloseCode . jwtError === opt _closeCode ) code = Asc . c _oAscError . ID . VKeyEncrypt ; else if ( c _oCloseCode . drop === opt _closeCode ) code = Asc . c _oAscError . ID . UserDrop ; else if ( c _oCloseCode . updateVersion === opt _closeCode ) code = Asc . c _oAscError . ID . UpdateVersion ; return code } function getEnableDownloadByErrorCode ( code ) { return Asc . c _oAscError . ID . UpdateVersion ===
code || Asc . c _oAscError . ID . SessionIdle === code || Asc . c _oAscError . ID . SessionAbsolute === code } 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" ] . getDisconnectErrorCode = getDisconnectErrorCode ;
window [ "AscCommon" ] . getEnableDownloadByErrorCode = getEnableDownloadByErrorCode ; 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 ) ; "use strict" ;
( function ( window , undefined ) { 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 ; 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 ; 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 , code ) { t . callback _OnDisconnect ( e , code ) } ; 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 ) } ; this . _CoAuthoringApi . onStartCoAuthoring = function ( e , isWaitAuth ) { t . callback _OnStartCoAuthoring ( e ,
isWaitAuth ) } ; 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 . callPRC = function ( data , timeout , callback ) { if ( this . _CoAuthoringApi && this . _onlineWork ) return this . _CoAuthoringApi . callPRC ( data , timeout , callback ) ; 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 ( ) } ; CDocsCoApi . prototype . callback _OnDisconnect = function ( e , code ) { if ( this . onDisconnect ) this . onDisconnect ( e , code ) } ; 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 , isWaitAuth ) { if ( this . onStartCoAuthoring ) this . onStartCoAuthoring ( e , isWaitAuth ) } ; 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 ; 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 ;
this . _participants = { } ; this . _participantsTimestamp ; this . _countEditUsers = 0 ; this . _countUsers = 0 ; this . _countCalls = 0 ; this . _waitingForResponse = { } ; 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 ; this . isCoAuthoring = false ; this . isCloseCoAuthoring = false ; this . websocketMaxPayloadSize = 1572864 ; this . currentIndex = 0 ; this . currentIndexEnd = 0 ; this . deleteIndex = 0 ; this . arrayChanges = null ; this . lastOtherSaveTime = - 1 ; this . lastOwnSaveTime = - 1 ; this . changesIndex = 0 ; this . excelAdditionalInfo = null ; this . canUnlockDocument = false ; this . canReleaseLocks = false ; this . _url = "" ; this . reconnectTimeout = null ; this . attemptCount = 0 ; this . maxAttemptCount = 50 ; this . reconnectInterval = 2E3 ;
this . errorTimeOut = 1E4 ; this . errorTimeOutSave = 6E4 ; 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 . IsAnonymousUser = 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 ) { this . _lockBuffer . push ( new LockBufferElement ( arrayBlockId , callback ) ) ; return } 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 ) ) return ; this . _locks [ idLockInArray ] = { "state" : 1 } ; if ( callback ) { this . _lockCallbacks [ idLockInArray ] = callback ; this . _lockCallbacksErrorTimerId [ idLockInArray ] = window . setTimeout ( function ( ) { if ( t . _lockCallbacks . hasOwnProperty ( idLockInArray ) ) { 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 ] ) 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 ; this . saveLockCallbackErrorTimeOutId = window . setTimeout ( function ( ) { t . saveLockCallbackErrorTimeOutId = null ; var oTmpCallback = t . _saveCallback [ indexCallback ] ; if ( oTmpCallback ) { t . _saveCallback [ indexCallback ] = null ; oTmpCallback ( { error : "Timed out" } ) ; t . _state = ConnectionState . Authorized ; t . _sendBufferedLocks ( ) } } , this . errorTimeOut ) } this . _state =
ConnectionState . AskSaveChanges ; this . _send ( { "type" : "isSaveLock" } ) } ; DocsCoApi . prototype . unSaveLock = function ( ) { 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 ) this . _locks [ blockId ] = { "state" : 0 } } ; 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 , endIndex ; startIndex = endIndex = this . currentIndex ; var curBytes =
0 ; for ( ; endIndex < arrayChanges . length && curBytes < this . websocketMaxPayloadSize ; ++ endIndex ) curBytes += arrayChanges [ endIndex ] . length + 9 ; this . currentIndexEnd = endIndex ; if ( endIndex === arrayChanges . length ) for ( var key in this . _locks ) if ( this . _locks . hasOwnProperty ( key ) ) if ( 2 === this . _locks [ key ] . state ) delete this . _locks [ key ] ; 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 . callPRC = function ( data , timeout , callback ) { var t = this ; var responseKey = ++ this . _countCalls ; this . _waitingForResponse [ responseKey ] = callback ; if ( timeout > 0 ) setTimeout ( function ( ) { t . _onPRC ( responseKey , true , undefined ) } , timeout ) ; this . _send ( { "type" : "rpc" , "responseKey" : responseKey , "data" : data } ) ; return true } ; DocsCoApi . prototype . _onPRC = function ( responseKey , isTimeout , response ) { var callback = this . _waitingForResponse [ responseKey ] ;
delete this . _waitingForResponse [ responseKey ] ; if ( callback ) callback ( isTimeout , response ) } ; 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 ( data ) } ; 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 ) 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 } ;
if ( this . _lockCallbacks . hasOwnProperty ( blockTmp ) ) { if ( lock [ "user" ] === this . _userId ) 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 ) { 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 ) { 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 ( isWaitAuth && false === this . isCoAuthoring && ! this . onStartCoAuthoring ) { var errorMsg = "Error: connection state changed waitAuth" + ";this.onStartCoAuthoring:" + ! ! this . onStartCoAuthoring ; this . sendChangesError ( errorMsg ) } if ( false === this . isCoAuthoring ) { this . isCoAuthoring = true ; if ( this . onStartCoAuthoring ) this . onStartCoAuthoring ( isStartEvent ,
isWaitAuth ) } else if ( isWaitAuth ) { 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 ; 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 ; 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 . currentIndexEnd ) } ; 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" ] ) for ( i = 0 ; i < previousLocks . length ; i ++ ) if ( previousLocks [ i ] === lock [ "block" ] && lock [ "user" ] === this . _userId ) { 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 ] ) ; tmpUser . setState ( true ) ; participantsNew [ tmpUser . asc _getId ( ) ] = tmpUser ; if ( ! tmpUser . asc _getView ( ) ) ++ countEditUsersNew ; ++ countUsersNew } if ( needChanged ) { for ( i in this . _participants ) if ( ! ( participantsNew [ i ] &&
this . _participants [ i ] . isEqual ( participantsNew [ i ] ) ) ) { tmpUser = this . _participants [ i ] ; tmpUser . setState ( false ) ; usersStateChanged . push ( tmpUser ) } for ( i in participantsNew ) if ( ! ( this . _participants [ i ] && this . _participants [ i ] . isEqual ( participantsNew [ i ] ) ) ) { tmpUser = participantsNew [ i ] ; tmpUser . setState ( true ) ; 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 ( true ) ; else this . _onEndCoAuthoring ( 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 ( isWaitAuth && ! ( this . onConnectionStateChanged && ( ! this . _participantsTimestamp || this . _participantsTimestamp <= data [ "participantsTimestamp" ] ) ) ) { var errorMsg = "Error: connection state changed waitAuth" + ";onConnectionStateChanged:" + ! ! this . onConnectionStateChanged + ";this._participantsTimestamp:" + this . _participantsTimestamp + ";data.participantsTimestamp:" + data [ "participantsTimestamp" ] ; this . sendChangesError ( errorMsg ) } if ( this . onConnectionStateChanged &&
( ! this . _participantsTimestamp || this . _participantsTimestamp <= data [ "participantsTimestamp" ] ) ) { this . _participantsTimestamp = data [ "participantsTimestamp" ] ; usersStateChanged = this . _onParticipantsChanged ( data [ "participants" ] , true ) ; if ( isWaitAuth && ! ( usersStateChanged . length > 0 && 1 < this . _countEditUsers ) ) { var errorMsg = "Error: connection state changed waitAuth" + ";usersStateChanged:" + JSON . stringify ( usersStateChanged ) + ";this._countEditUsers:" + this . _countEditUsers ; this . sendChangesError ( errorMsg ) } if ( usersStateChanged . length >
0 ) { if ( 1 < this . _countEditUsers ) this . _onStartCoAuthoring ( false , isWaitAuth ) ; else this . _onEndCoAuthoring ( 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 ( ) ; var code = data && data [ "code" ] || c _oCloseCode . drop ; this . onDisconnect ( data ? data [ "description" ] : "" ,
code ) } ; 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" ] ) ;
this . _onMessages ( data , true ) ; this . _onGetLock ( data ) ; 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 ) } , 1E3 ) } ; this . askSaveChanges ( callbackAskSaveChanges ) } return } if ( data [ "result" ] === 1 ) { this . _isAuth = true ; 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" ] ) { if ( data [ "settings" ] [ "reconnection" ] ) { this . maxAttemptCount = data [ "settings" ] [ "reconnection" ] [ "attempts" ] ; this . reconnectInterval = data [ "settings" ] [ "reconnection" ] [ "delay" ] } if ( data [ "settings" ] [ "websocketMaxPayloadSize" ] ) this . websocketMaxPayloadSize = data [ "settings" ] [ "websocketMaxPayloadSize" ] } 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 ( ) ; this . _applyPrebuffered ( ) ;
this . _sendPrebuffered ( ) } } ; DocsCoApi . prototype . _onAuthChanges = function ( data ) { this . _authChanges . push ( data [ "changes" ] ) } ; DocsCoApi . prototype . _updateAuthChanges = function ( ) { 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 . IsAnonymousUser = docInfo . get _IsAnonymousUser ( ) ; this . setDocId ( docid ) ; this . _initSocksJs ( ) } ; DocsCoApi . prototype . getDocId = function ( ) { return this . _docid } ;
DocsCoApi . prototype . setDocId = function ( docid ) { this . _docid = docid ; this . sockjs _url = AscCommon . getBaseUrl ( ) + "../../../../doc/" + docid + "/c" } ; DocsCoApi . prototype . auth = function ( isViewer , opt _openCmd , opt _isIdle ) { this . _isViewer = isViewer ; if ( this . _locks ) { this . ownedLockBlocks = [ ] ; for ( var block in this . _locks ) if ( this . _locks . hasOwnProperty ( block ) ) { var lock = this . _locks [ block ] ; if ( lock [ "state" ] === 2 ) 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 , "IsAnonymousUser" : this . IsAnonymousUser , "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 , rights : 1 , buildVersion : "5.2.6" , buildNumber : 2 } } ; var channel ; require ( [ "/common/outer/worker-channel.js" ,
"/common/common-util.js" ] , function ( Channel , Util ) { var msgEv = Util . mkEvent ( ) ; var p = window . parent ; if ( editor && editor . isReporterMode ) { p = window . opener ; window . parent = p } else window . APP = p && p . APP ; 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 ) { 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" : break ; case "error" : 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 ( dataObject ) ; break ; case "forceSaveStart" : this . _onForceSaveStart ( dataObject [ "messages" ] ) ; break ; case "forceSave" : this . _onForceSave ( dataObject [ "messages" ] ) ; break ; case "rpc" : this . _onPRC ( dataObject [ "responseKey" ] , false , dataObject [ "data" ] ) ; 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 code = null ; if ( bIsDisconnectAtAll ) { this . _state = ConnectionState . ClosedAll ; code = evt . code } if ( this . onDisconnect ) this . onDisconnect ( evt . reason , code ) ; 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 ) } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . CDocsCoApi = CDocsCoApi } ) ( window ) ; "use strict" ;
( function ( window ) { var CSpellCheckApi = function ( ) { this . _SpellCheckApi = new SpellCheckApi ; this . _onlineWork = false ; this . onDisconnect = 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 . checkDictionary = function ( lang ) { if ( this . _SpellCheckApi && this . _onlineWork ) return this . _SpellCheckApi . checkDictionary ( lang ) ; return true } ; 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 ) } ; CSpellCheckApi . prototype . callback _OnDisconnect = function ( e , isDisconnectAtAll , isCloseCoAuthoring ) { if ( this . onDisconnect ) return this . onDisconnect ( e ,
isDisconnectAtAll , isCloseCoAuthoring ) } ; 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 . languages = null ; 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 . checkDictionary = function ( lang ) { return ! this . isInit || ! ! this . languages [ lang ] } ; 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" ] ) { if ( this . onInit ) this . onInit ( data [ "languages" ] ) ; this . languages = data [ "languages" ] . reduce ( function ( map , value ) { map [ value ] = 1 ; return map } , { } ) ; this . isInit = true } } ; var reconnectTimeout , attemptCount = 0 ; function initSocksJs ( url , docsCoApi ) { if ( window [ "IS_NATIVE_EDITOR" ] ) return ;
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 ; if ( docsCoApi . onConnect ) docsCoApi . onConnect ( ) ; docsCoApi . _sendAfterConnect ( ) } ; sockjs . onmessage = function ( e ) { 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 ; var bIsDisconnectAtAll = attemptCount >= 20 || docsCoApi . isCloseCoAuthoring ; if ( bIsDisconnectAtAll ) docsCoApi . _state = 3 ; if ( docsCoApi . onDisconnect ) docsCoApi . onDisconnect ( evt . reason , bIsDisconnectAtAll , docsCoApi . isCloseCoAuthoring ) ; if ( docsCoApi . isCloseCoAuthoring ) return ; 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 ; this . sockjs = initSocksJs ( this . sockjs _url , this ) } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . CSpellCheckApi = CSpellCheckApi } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var Asc = window [ "Asc" ] ; var AscCommon = window [ "AscCommon" ] ; var prot ; var c _oAscMouseMoveDataTypes = Asc . 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 } var uuid = [ ] ; for ( var i = 0 ; i < 256 ; i ++ ) uuid [ i ] = ( i < 16 ? "0" : "" ) + i . toString ( 16 ) ; function CreateUUID ( isNoDashes ) { var d0 = Math . random ( ) * 4294967295 |
0 ; var d1 = Math . random ( ) * 4294967295 | 0 ; var d2 = Math . random ( ) * 4294967295 | 0 ; var d3 = Math . random ( ) * 4294967295 | 0 ; if ( isNoDashes ) return uuid [ d0 & 255 ] + uuid [ d0 >> 8 & 255 ] + uuid [ d0 >> 16 & 255 ] + uuid [ d0 >> 24 & 255 ] + uuid [ d1 & 255 ] + uuid [ d1 >> 8 & 255 ] + uuid [ d1 >> 16 & 15 | 64 ] + uuid [ d1 >> 24 & 255 ] + uuid [ d2 & 63 | 128 ] + uuid [ d2 >> 8 & 255 ] + uuid [ d2 >> 16 & 255 ] + uuid [ d2 >> 24 & 255 ] + uuid [ d3 & 255 ] + uuid [ d3 >> 8 & 255 ] + uuid [ d3 >> 16 & 255 ] + uuid [ d3 >> 24 & 255 ] ; else return uuid [ d0 & 255 ] + uuid [ d0 >> 8 & 255 ] + uuid [ d0 >> 16 & 255 ] + uuid [ d0 >> 24 & 255 ] + "-" + uuid [ d1 & 255 ] + uuid [ d1 >> 8 & 255 ] + "-" + uuid [ d1 >>
16 & 15 | 64 ] + uuid [ d1 >> 24 & 255 ] + "-" + uuid [ d2 & 63 | 128 ] + uuid [ d2 >> 8 & 255 ] + "-" + uuid [ d2 >> 16 & 255 ] + uuid [ d2 >> 24 & 255 ] + uuid [ d3 & 255 ] + uuid [ d3 >> 8 & 255 ] + uuid [ d3 >> 16 & 255 ] + uuid [ d3 >> 24 & 255 ] } function CreateGUID ( ) { function s4 ( ) { return Math . floor ( ( 1 + Math . random ( ) ) * 65536 ) . toString ( 16 ) . substring ( 1 ) } var val = "{" + s4 ( ) + s4 ( ) + "-" + s4 ( ) + "-" + s4 ( ) + "-" + s4 ( ) + "-" + s4 ( ) + s4 ( ) + s4 ( ) + "}" ; val = val . toUpperCase ( ) ; return val } function CreateUInt32 ( ) { return Math . floor ( Math . random ( ) * 4294967296 ) } function FixDurableId ( val ) { var res = val & 2147483647 ; return 2147483647 !==
res ? res : res - 1 } function CreateDurableId ( ) { return FixDurableId ( CreateUInt32 ( ) ) } function ExtendPrototype ( dst , src ) { for ( var k in src . prototype ) dst . prototype [ k ] = src . prototype [ k ] } function isFileBuild ( ) { return window [ "NATIVE_EDITOR_ENJINE" ] && ! window [ "IS_NATIVE_EDITOR" ] && ! window [ "DoctRendererMode" ] } function checkCanvasInDiv ( sDivId ) { var oDiv = document . getElementById ( sDivId ) ; if ( ! oDiv ) return null ; var aChildren = oDiv . children ; var oCanvas = null , i ; for ( i = 0 ; i < aChildren . length ; ++ i ) if ( aChildren [ i ] . nodeName && aChildren [ i ] . nodeName . toUpperCase ( ) ===
"CANVAS" ) { oCanvas = aChildren [ i ] ; break } if ( null === oCanvas ) { var rPR = AscCommon . AscBrowser . retinaPixelRatio ; oCanvas = document . createElement ( "canvas" ) ; oCanvas . style . width = "100%" ; oCanvas . style . height = "100%" ; oDiv . appendChild ( oCanvas ) ; oCanvas . width = Math . round ( oCanvas . clientWidth * rPR ) ; oCanvas . height = Math . round ( oCanvas . clientHeight * rPR ) } return oCanvas } var c _oLicenseResult = { Error : 1 , Expired : 2 , Success : 3 , UnknownUser : 4 , Connections : 5 , ExpiredTrial : 6 , SuccessLimit : 7 , UsersCount : 8 , ConnectionsOS : 9 , UsersCountOS : 10 , ExpiredLimited : 11 } ;
var c _oRights = { None : 0 , Edit : 1 , Review : 2 , Comment : 3 , View : 4 } ; var c _oLicenseMode = { None : 0 , Trial : 1 , Developer : 2 , Limited : 4 } ; var EPluginDataType = { none : "none" , text : "text" , ole : "ole" , html : "html" , desktop : "desktop" } ; 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 !== false } ; 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 } ; 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 . customization = false ; this . isAutosaveEnable = true ; this . AutosaveMinInterval = 300 ; this . isAnalyticsEnable = false ; this . buildVersion = null ; this . buildNumber = null ; this . betaVersion = "false" ; 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 _getCustomization = function ( ) { return this . customization } ; 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 . asc _getIsBeta = function ( ) { return this . betaVersion === "true" } ; asc _CAscEditorPermissions . prototype . setLicenseType = function ( v ) { this . licenseType = v } ; asc _CAscEditorPermissions . prototype . setCanBranding = function ( v ) { this . canBranding = v } ; asc _CAscEditorPermissions . prototype . setCustomization = function ( v ) { this . customization = 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 } ; function asc _CAxNumFmt ( oAxis ) { this . formatCode = "General" ; this . sourceLinked = true ; this . axis = oAxis ; if ( oAxis ) { var oNumFmt = oAxis . numFmt ; if ( oNumFmt ) { this . formatCode = oNumFmt . formatCode ; this . sourceLinked = oNumFmt . sourceLinked } } } asc _CAxNumFmt . prototype . getFormatCode =
function ( ) { if ( this . sourceLinked ) if ( this . axis ) return this . axis . getSourceFormatCode ( ) ; else return "General" ; return this . formatCode || "General" } ; asc _CAxNumFmt . prototype . putFormatCode = function ( v ) { this . formatCode = v } ; asc _CAxNumFmt . prototype . getFormatCellsInfo = function ( ) { var num _format = AscCommon . oNumFormatCache . get ( this . getFormatCode ( ) ) ; return num _format . getTypeInfo ( ) } ; asc _CAxNumFmt . prototype . getSourceLinked = function ( ) { return this . sourceLinked } ; asc _CAxNumFmt . prototype . putSourceLinked = function ( v ) { this . sourceLinked =
v } ; asc _CAxNumFmt . prototype . isEqual = function ( v ) { if ( ! v ) return false ; return this . formatCode === v . formatCode && this . sourceLinked === v . sourceLinked } ; asc _CAxNumFmt . prototype . isCorrect = function ( ) { return typeof this . formatCode === "string" && this . formatCode . length > 0 } ; 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 ; this . show = true ; this . label = null ; this . gridlines = null ; this . numFmt = null } 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 ; if ( this . show !== oPr . show ) return false ; if ( this . label !== oPr . label ) return false ; if ( this . gridlines !== oPr . gridlines ) return false ; var bEqualNumFmt = false ; if ( this . numFmt ) bEqualNumFmt = this . numFmt . isEqual ( oPr . numFmt ) ; else bEqualNumFmt = this . numFmt === oPr . numFmt ; if ( ! bEqualNumFmt ) return false ; return true } ; asc _ValAxisSettings . prototype . putAxisType = function ( v ) { this . axisType = v } ; asc _ValAxisSettings . prototype . putMinValRule = function ( v ) { this . minValRule = v } ; asc _ValAxisSettings . prototype . putMinVal =
function ( v ) { this . minVal = v } ; asc _ValAxisSettings . prototype . putMaxValRule = function ( v ) { this . maxValRule = v } ; asc _ValAxisSettings . prototype . putMaxVal = function ( v ) { this . maxVal = v } ; asc _ValAxisSettings . prototype . putInvertValOrder = function ( v ) { this . invertValOrder = v } ; asc _ValAxisSettings . prototype . putLogScale = function ( v ) { this . logScale = v } ; asc _ValAxisSettings . prototype . putLogBase = function ( v ) { this . logBase = v } ; asc _ValAxisSettings . prototype . putUnits = function ( v ) { this . units = v } ; asc _ValAxisSettings . prototype . putShowUnitsOnChart =
function ( v ) { this . showUnitsOnChart = v } ; asc _ValAxisSettings . prototype . putMajorTickMark = function ( v ) { this . majorTickMark = v } ; asc _ValAxisSettings . prototype . putMinorTickMark = function ( v ) { this . minorTickMark = v } ; asc _ValAxisSettings . prototype . putTickLabelsPos = function ( v ) { this . tickLabelsPos = v } ; asc _ValAxisSettings . prototype . putCrossesRule = function ( v ) { this . crossesRule = v } ; asc _ValAxisSettings . prototype . putCrosses = function ( v ) { this . crosses = v } ; asc _ValAxisSettings . prototype . putDispUnitsRule = function ( v ) { this . dispUnitsRule =
v } ; asc _ValAxisSettings . prototype . getAxisType = function ( ) { return this . axisType } ; asc _ValAxisSettings . prototype . getDispUnitsRule = function ( ) { return this . dispUnitsRule } ; asc _ValAxisSettings . prototype . getMinValRule = function ( ) { return this . minValRule } ; asc _ValAxisSettings . prototype . getMinVal = function ( ) { return this . minVal } ; asc _ValAxisSettings . prototype . getMaxValRule = function ( ) { return this . maxValRule } ; asc _ValAxisSettings . prototype . getMaxVal = function ( ) { return this . maxVal } ; asc _ValAxisSettings . prototype . getInvertValOrder =
function ( ) { return this . invertValOrder } ; asc _ValAxisSettings . prototype . getLogScale = function ( ) { return this . logScale } ; asc _ValAxisSettings . prototype . getLogBase = function ( ) { return this . logBase } ; asc _ValAxisSettings . prototype . getUnits = function ( ) { return this . units } ; asc _ValAxisSettings . prototype . getShowUnitsOnChart = function ( ) { return this . showUnitsOnChart } ; asc _ValAxisSettings . prototype . getMajorTickMark = function ( ) { return this . majorTickMark } ; asc _ValAxisSettings . prototype . getMinorTickMark = function ( ) { return this . minorTickMark } ;
asc _ValAxisSettings . prototype . getTickLabelsPos = function ( ) { return this . tickLabelsPos } ; asc _ValAxisSettings . prototype . getCrossesRule = function ( ) { return this . crossesRule } ; asc _ValAxisSettings . prototype . getCrosses = function ( ) { return this . crosses } ; asc _ValAxisSettings . prototype . 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 ) ; this . putShow ( true ) } ; asc _ValAxisSettings . prototype . getShow = function ( ) { return this . show } ; asc _ValAxisSettings . prototype . putShow = function ( val ) { this . show = val } ; asc _ValAxisSettings . prototype . getLabel = function ( ) { return this . label } ; asc _ValAxisSettings . prototype . putLabel = function ( v ) { this . label = v } ; asc _ValAxisSettings . prototype . getGridlines = function ( ) { return this . gridlines } ;
asc _ValAxisSettings . prototype . putGridlines = function ( v ) { this . gridlines = v } ; asc _ValAxisSettings . prototype . getNumFmt = function ( ) { return this . numFmt } ; asc _ValAxisSettings . prototype . putNumFmt = function ( v ) { this . numFmt = v } ; asc _ValAxisSettings . prototype . read = function ( _params , _cursor ) { var _continue = true ; while ( _continue ) { var _attr = _params [ _cursor . pos ++ ] ; switch ( _attr ) { case 0 : { this . putMinValRule ( _params [ _cursor . pos ++ ] ) ; break } case 1 : { this . putMinVal ( _params [ _cursor . pos ++ ] ) ; break } case 2 : { this . putMaxValRule ( _params [ _cursor . pos ++ ] ) ;
break } case 3 : { this . putMaxVal ( _params [ _cursor . pos ++ ] ) ; break } case 4 : { this . putInvertValOrder ( _params [ _cursor . pos ++ ] ) ; break } case 5 : { this . putLogScale ( _params [ _cursor . pos ++ ] ) ; break } case 6 : { this . putLogBase ( _params [ _cursor . pos ++ ] ) ; break } case 7 : { this . putDispUnitsRule ( _params [ _cursor . pos ++ ] ) ; break } case 8 : { this . putUnits ( _params [ _cursor . pos ++ ] ) ; break } case 9 : { this . putShowUnitsOnChart ( _params [ _cursor . pos ++ ] ) ; break } case 10 : { this . putMajorTickMark ( _params [ _cursor . pos ++ ] ) ; break } case 11 : { this . putMinorTickMark ( _params [ _cursor . pos ++ ] ) ;
break } case 12 : { this . putTickLabelsPos ( _params [ _cursor . pos ++ ] ) ; break } case 13 : { this . putCrossesRule ( _params [ _cursor . pos ++ ] ) ; break } case 14 : { this . putCrosses ( _params [ _cursor . pos ++ ] ) ; break } case 15 : { this . putAxisType ( _params [ _cursor . pos ++ ] ) ; break } case 255 : default : { _continue = false ; break } } } } ; asc _ValAxisSettings . prototype . write = function ( _type , _stream ) { _stream [ "WriteByte" ] ( _type ) ; if ( this . minValRule !== undefined && this . minValRule !== null ) { _stream [ "WriteByte" ] ( 0 ) ; _stream [ "WriteLong" ] ( this . minValRule ) } if ( this . minVal !==
undefined && this . minVal !== null ) { _stream [ "WriteByte" ] ( 1 ) ; _stream [ "WriteLong" ] ( this . minVal ) } if ( this . maxValRule !== undefined && this . maxValRule !== null ) { _stream [ "WriteByte" ] ( 2 ) ; _stream [ "WriteLong" ] ( this . maxValRule ) } if ( this . maxVal !== undefined && this . maxVal !== null ) { _stream [ "WriteByte" ] ( 3 ) ; _stream [ "WriteLong" ] ( this . maxVal ) } if ( this . invertValOrder !== undefined && this . invertValOrder !== null ) { _stream [ "WriteByte" ] ( 4 ) ; _stream [ "WriteBool" ] ( this . invertValOrder ) } if ( this . logScale !== undefined && this . logScale !== null ) { _stream [ "WriteByte" ] ( 5 ) ;
_stream [ "WriteBool" ] ( this . logScale ) } if ( this . logBase !== undefined && this . logBase !== null ) { _stream [ "WriteByte" ] ( 6 ) ; _stream [ "WriteLong" ] ( this . logBase ) } if ( this . dispUnitsRule !== undefined && this . dispUnitsRule !== null ) { _stream [ "WriteByte" ] ( 7 ) ; _stream [ "WriteLong" ] ( this . dispUnitsRule ) } if ( this . units !== undefined && this . units !== null ) { _stream [ "WriteByte" ] ( 8 ) ; _stream [ "WriteLong" ] ( this . units ) } if ( this . showUnitsOnChart !== undefined && this . showUnitsOnChart !== null ) { _stream [ "WriteByte" ] ( 9 ) ; _stream [ "WriteBool" ] ( this . showUnitsOnChart ) } if ( this . majorTickMark !==
undefined && this . majorTickMark !== null ) { _stream [ "WriteByte" ] ( 10 ) ; _stream [ "WriteLong" ] ( this . majorTickMark ) } if ( this . minorTickMark !== undefined && this . minorTickMark !== null ) { _stream [ "WriteByte" ] ( 11 ) ; _stream [ "WriteLong" ] ( this . minorTickMark ) } if ( this . tickLabelsPos !== undefined && this . tickLabelsPos !== null ) { _stream [ "WriteByte" ] ( 12 ) ; _stream [ "WriteLong" ] ( this . tickLabelsPos ) } if ( this . crossesRule !== undefined && this . crossesRule !== null ) { _stream [ "WriteByte" ] ( 13 ) ; _stream [ "WriteLong" ] ( this . crossesRule ) } if ( this . crosses !== undefined &&
this . crosses !== null ) { _stream [ "WriteByte" ] ( 14 ) ; _stream [ "WriteLong" ] ( this . crosses ) } if ( this . axisType !== undefined && this . axisType !== null ) { _stream [ "WriteByte" ] ( 15 ) ; _stream [ "WriteLong" ] ( this . axisType ) } _stream [ "WriteByte" ] ( 255 ) } ; 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 ; this . show = true ; this . label = null ; this . gridlines = null ; this . numFmt = null ; this . auto = false } 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 ; if ( this . show !== oPr . show ) return false ; if ( this . label !== oPr . label ) return false ; if ( this . gridlines !== oPr . gridlines ) return false ; if ( this . auto !== oPr . auto ) return false ; var bEqualNumFmt = false ; if ( this . numFmt ) bEqualNumFmt = this . numFmt . isEqual ( oPr . numFmt ) ; else bEqualNumFmt = this . numFmt === oPr . numFmt ; if ( ! bEqualNumFmt ) return false ; return true } ; asc _CatAxisSettings . prototype . putIntervalBetweenTick = function ( v ) { this . intervalBetweenTick = v } ; asc _CatAxisSettings . prototype . putIntervalBetweenLabelsRule =
function ( v ) { this . intervalBetweenLabelsRule = v } ; asc _CatAxisSettings . prototype . putIntervalBetweenLabels = function ( v ) { this . intervalBetweenLabels = v } ; asc _CatAxisSettings . prototype . putInvertCatOrder = function ( v ) { this . invertCatOrder = v } ; asc _CatAxisSettings . prototype . putLabelsAxisDistance = function ( v ) { this . labelsAxisDistance = v } ; asc _CatAxisSettings . prototype . putMajorTickMark = function ( v ) { this . majorTickMark = v } ; asc _CatAxisSettings . prototype . putMinorTickMark = function ( v ) { this . minorTickMark = v } ; asc _CatAxisSettings . prototype . putTickLabelsPos =
function ( v ) { this . tickLabelsPos = v } ; asc _CatAxisSettings . prototype . putCrossesRule = function ( v ) { this . crossesRule = v } ; asc _CatAxisSettings . prototype . putCrosses = function ( v ) { this . crosses = v } ; asc _CatAxisSettings . prototype . putAxisType = function ( v ) { this . axisType = v } ; asc _CatAxisSettings . prototype . putLabelsPosition = function ( v ) { this . labelsPosition = v } ; asc _CatAxisSettings . prototype . getIntervalBetweenTick = function ( v ) { return this . intervalBetweenTick } ; asc _CatAxisSettings . prototype . getIntervalBetweenLabelsRule = function ( ) { return this . intervalBetweenLabelsRule } ;
asc _CatAxisSettings . prototype . getIntervalBetweenLabels = function ( ) { return this . intervalBetweenLabels } ; asc _CatAxisSettings . prototype . getInvertCatOrder = function ( ) { return this . invertCatOrder } ; asc _CatAxisSettings . prototype . getLabelsAxisDistance = function ( ) { return this . labelsAxisDistance } ; asc _CatAxisSettings . prototype . getMajorTickMark = function ( ) { return this . majorTickMark } ; asc _CatAxisSettings . prototype . getMinorTickMark = function ( ) { return this . minorTickMark } ; asc _CatAxisSettings . prototype . getTickLabelsPos = function ( ) { return this . tickLabelsPos } ;
asc _CatAxisSettings . prototype . getCrossesRule = function ( ) { return this . crossesRule } ; asc _CatAxisSettings . prototype . getCrosses = function ( ) { return this . crosses } ; asc _CatAxisSettings . prototype . getAxisType = function ( ) { return this . axisType } ; asc _CatAxisSettings . prototype . getLabelsPosition = function ( ) { return this . labelsPosition } ; asc _CatAxisSettings . prototype . getCrossMinVal = function ( ) { return this . crossMinVal } ; asc _CatAxisSettings . prototype . getCrossMaxVal = function ( ) { return this . crossMaxVal } ; asc _CatAxisSettings . prototype . putCrossMinVal =
function ( val ) { this . crossMinVal = val } ; asc _CatAxisSettings . prototype . putCrossMaxVal = function ( val ) { this . crossMaxVal = val } ; asc _CatAxisSettings . prototype . 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 ) ; this . putShow ( true ) ; this . putAuto ( true ) } ; asc _CatAxisSettings . prototype . getShow = function ( ) { return this . show } ; asc _CatAxisSettings . prototype . putShow = function ( val ) { this . show = val } ; asc _CatAxisSettings . prototype . getLabel = function ( ) { return this . label } ; asc _CatAxisSettings . prototype . putLabel = function ( v ) { this . label = v } ; asc _CatAxisSettings . prototype . getGridlines = function ( ) { return this . gridlines } ; asc _CatAxisSettings . prototype . putGridlines =
function ( v ) { this . gridlines = v } ; asc _CatAxisSettings . prototype . getNumFmt = function ( ) { return this . numFmt } ; asc _CatAxisSettings . prototype . putNumFmt = function ( v ) { this . numFmt = v } ; asc _CatAxisSettings . prototype . getAuto = function ( ) { return this . auto } ; asc _CatAxisSettings . prototype . putAuto = function ( v ) { this . auto = v } ; asc _CatAxisSettings . prototype . read = function ( _params , _cursor ) { var _continue = true ; while ( _continue ) { var _attr = _params [ _cursor . pos ++ ] ; switch ( _attr ) { case 0 : { this . putIntervalBetweenTick ( _params [ _cursor . pos ++ ] ) ;
break } case 1 : { this . putIntervalBetweenLabelsRule ( _params [ _cursor . pos ++ ] ) ; break } case 2 : { this . putIntervalBetweenLabels ( _params [ _cursor . pos ++ ] ) ; break } case 3 : { this . putInvertCatOrder ( _params [ _cursor . pos ++ ] ) ; break } case 4 : { this . putLabelsAxisDistance ( _params [ _cursor . pos ++ ] ) ; break } case 5 : { this . putLabelsPosition ( _params [ _cursor . pos ++ ] ) ; break } case 6 : { this . putMajorTickMark ( _params [ _cursor . pos ++ ] ) ; break } case 7 : { this . putMinorTickMark ( _params [ _cursor . pos ++ ] ) ; break } case 8 : { this . putTickLabelsPos ( _params [ _cursor . pos ++ ] ) ;
break } case 9 : { this . putCrossesRule ( _params [ _cursor . pos ++ ] ) ; break } case 10 : { this . putCrosses ( _params [ _cursor . pos ++ ] ) ; break } case 11 : { this . putAxisType ( _params [ _cursor . pos ++ ] ) ; break } case 12 : { this . putCrossMinVal ( _params [ _cursor . pos ++ ] ) ; break } case 13 : { this . putCrossMaxVal ( _params [ _cursor . pos ++ ] ) ; break } case 255 : default : { _continue = false ; break } } } } ; asc _CatAxisSettings . prototype . write = function ( _type , _stream ) { _stream [ "WriteByte" ] ( _type ) ; if ( this . getIntervalBetweenTick ( ) !== undefined && this . getIntervalBetweenTick ( ) !==
null ) { _stream [ "WriteByte" ] ( 0 ) ; _stream [ "WriteDouble2" ] ( this . getIntervalBetweenTick ( ) ) } if ( this . getIntervalBetweenLabelsRule ( ) !== undefined && this . getIntervalBetweenLabelsRule ( ) !== null ) { _stream [ "WriteByte" ] ( 1 ) ; _stream [ "WriteLong" ] ( this . getIntervalBetweenLabelsRule ( ) ) } if ( this . getIntervalBetweenLabels ( ) !== undefined && this . getIntervalBetweenLabels ( ) !== null ) { _stream [ "WriteByte" ] ( 2 ) ; _stream [ "WriteDouble2" ] ( this . getIntervalBetweenLabels ( ) ) } if ( this . getInvertCatOrder ( ) !== undefined && this . getInvertCatOrder ( ) !== null ) { _stream [ "WriteByte" ] ( 3 ) ;
_stream [ "WriteBool" ] ( this . getInvertCatOrder ( ) ) } if ( this . getLabelsAxisDistance ( ) !== undefined && this . getLabelsAxisDistance ( ) !== null ) { _stream [ "WriteByte" ] ( 4 ) ; _stream [ "WriteDouble2" ] ( this . getLabelsAxisDistance ( ) ) } if ( this . getTickLabelsPos ( ) !== undefined && this . getTickLabelsPos ( ) !== null ) { _stream [ "WriteByte" ] ( 5 ) ; _stream [ "WriteLong" ] ( this . getTickLabelsPos ( ) ) } if ( this . getMajorTickMark ( ) !== undefined && this . getMajorTickMark ( ) !== null ) { _stream [ "WriteByte" ] ( 6 ) ; _stream [ "WriteLong" ] ( this . getMajorTickMark ( ) ) } if ( this . getMinorTickMark ( ) !==
undefined && this . getMinorTickMark ( ) !== null ) { _stream [ "WriteByte" ] ( 7 ) ; _stream [ "WriteLong" ] ( this . getMinorTickMark ( ) ) } if ( this . getTickLabelsPos ( ) !== undefined && this . getTickLabelsPos ( ) !== null ) { _stream [ "WriteByte" ] ( 8 ) ; _stream [ "WriteLong" ] ( this . getTickLabelsPos ( ) ) } if ( this . getCrossesRule ( ) !== undefined && this . getCrossesRule ( ) !== null ) { _stream [ "WriteByte" ] ( 9 ) ; _stream [ "WriteLong" ] ( this . getCrossesRule ( ) ) } if ( this . getCrosses ( ) !== undefined && this . getCrosses ( ) !== null ) { _stream [ "WriteByte" ] ( 10 ) ; _stream [ "WriteLong" ] ( this . getCrosses ( ) ) } if ( this . getAxisType ( ) !==
undefined && this . getAxisType ( ) !== null ) { _stream [ "WriteByte" ] ( 11 ) ; _stream [ "WriteLong" ] ( this . getAxisType ( ) ) } if ( this . getCrossMinVal ( ) !== undefined && this . getCrossMinVal ( ) !== null ) { _stream [ "WriteByte" ] ( 12 ) ; _stream [ "WriteLong" ] ( this . getCrossMinVal ( ) ) } if ( this . getCrossMaxVal ( ) !== undefined && this . getCrossMaxVal ( ) !== null ) { _stream [ "WriteByte" ] ( 13 ) ; _stream [ "WriteLong" ] ( this . getCrossMaxVal ( ) ) } _stream [ "WriteByte" ] ( 255 ) } ; function asc _ChartSettings ( ) { this . style = null ; this . title = null ; this . rowCols = null ; this . legendPos = null ;
this . dataLabelsPos = null ; this . type = null ; this . showSerName = null ; this . showCatName = null ; this . showVal = null ; this . separator = null ; this . inColumns = null ; this . sRange = null ; this . showMarker = null ; this . bLine = null ; this . smooth = null ; this . chartSpace = null ; this . bStartEdit = false ; this . horizontalAxes = [ ] ; this . verticalAxes = [ ] ; this . depthAxes = [ ] } asc _ChartSettings . prototype . putHorAxisProps = function ( v ) { if ( ! AscCommon . isRealObject ( v ) ) this . horizontalAxes . length = 0 ; else this . horizontalAxes [ 0 ] = v } ; asc _ChartSettings . prototype . getHorAxisProps =
function ( ) { return this . horizontalAxes [ 0 ] || null } ; asc _ChartSettings . prototype . putVertAxisProps = function ( v ) { if ( ! AscCommon . isRealObject ( v ) ) this . verticalAxes . length = 0 ; else this . verticalAxes [ 0 ] = v } ; asc _ChartSettings . prototype . getVertAxisProps = function ( ) { return this . verticalAxes [ 0 ] || null } ; asc _ChartSettings . prototype . putShowHorAxis = function ( v ) { var oAx = this . horizontalAxes [ 0 ] ; if ( oAx ) oAx . putShow ( v ) } ; asc _ChartSettings . prototype . getShowHorAxis = function ( ) { var oAx = this . horizontalAxes [ 0 ] ; if ( oAx ) return oAx . getShow ( ) ;
return false } ; asc _ChartSettings . prototype . putShowVerAxis = function ( v ) { var oAx = this . verticalAxes [ 0 ] ; if ( oAx ) oAx . putShow ( v ) } ; asc _ChartSettings . prototype . getShowVerAxis = function ( ) { var oAx = this . verticalAxes [ 0 ] ; if ( oAx ) return oAx . getShow ( ) ; return false } ; asc _ChartSettings . prototype . putHorAxisLabel = function ( v ) { var oAx = this . horizontalAxes [ 0 ] ; if ( oAx ) oAx . putLabel ( v ) } ; asc _ChartSettings . prototype . getHorAxisLabel = function ( ) { var oAx = this . horizontalAxes [ 0 ] ; if ( oAx ) return oAx . getLabel ( ) ; return null } ; asc _ChartSettings . prototype . putVertAxisLabel =
function ( v ) { var oAx = this . verticalAxes [ 0 ] ; if ( oAx ) return oAx . getLabel ( ) ; return null } ; asc _ChartSettings . prototype . getVertAxisLabel = function ( ) { var oAx = this . verticalAxes [ 0 ] ; if ( oAx ) return oAx . getLabel ( ) ; return null } ; asc _ChartSettings . prototype . putHorGridLines = function ( v ) { var oAx = this . verticalAxes [ 0 ] ; if ( oAx ) oAx . putGridlines ( v ) } ; asc _ChartSettings . prototype . getHorGridLines = function ( ) { var oAx = this . verticalAxes [ 0 ] ; if ( oAx ) return oAx . getGridlines ( ) ; return null } ; asc _ChartSettings . prototype . putVertGridLines = function ( v ) { var oAx =
this . horizontalAxes [ 0 ] ; if ( oAx ) oAx . putGridlines ( v ) } ; asc _ChartSettings . prototype . getVertGridLines = function ( ) { var oAx = this . horizontalAxes [ 0 ] ; if ( oAx ) return oAx . getGridlines ( ) ; return null } ; asc _ChartSettings . prototype . getHorAxesProps = function ( ) { return this . horizontalAxes } ; asc _ChartSettings . prototype . getVertAxesProps = function ( ) { return this . verticalAxes } ; asc _ChartSettings . prototype . getDepthAxesProps = function ( ) { return this . depthAxes } ; asc _ChartSettings . prototype . addHorAxesProps = function ( v ) { this . horizontalAxes . push ( v ) } ;
asc _ChartSettings . prototype . addVertAxesProps = function ( v ) { this . verticalAxes . push ( v ) } ; asc _ChartSettings . prototype . addDepthAxesProps = function ( v ) { this . depthAxes . push ( v ) } ; asc _ChartSettings . prototype . removeAllAxesProps = function ( v ) { this . horizontalAxes . length = 0 ; this . verticalAxes . length = 0 ; this . depthAxes . length = 0 } ; asc _ChartSettings . prototype . equalBool = function ( a , b ) { return ! ! a === ! ! b } ; asc _ChartSettings . prototype . 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 . legendPos !== oPr . legendPos ) return false ; if ( this . dataLabelsPos !== oPr . dataLabelsPos ) 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 . sRange !== oPr . sRange ) 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 . verticalAxes . length !== oPr . verticalAxes . length ) return false ; if ( this . horizontalAxes . length !== oPr . horizontalAxes . length ) return false ; var nAx ; for ( nAx = 0 ; nAx < this . verticalAxes . length ; ++ nAx ) if ( ! this . verticalAxes [ nAx ] . isEqual ( oPr . verticalAxes [ nAx ] ) ) return false ;
for ( nAx = 0 ; nAx < this . horizontalAxes . length ; ++ nAx ) if ( ! this . horizontalAxes [ nAx ] . isEqual ( oPr . horizontalAxes [ nAx ] ) ) return false ; return true } ; asc _ChartSettings . prototype . isEmpty = function ( ) { return this . isEqual ( new asc _ChartSettings ) } ; asc _ChartSettings . prototype . putShowMarker = function ( v ) { this . showMarker = v } ; asc _ChartSettings . prototype . getShowMarker = function ( ) { return this . showMarker } ; asc _ChartSettings . prototype . putLine = function ( v ) { this . bLine = v } ; asc _ChartSettings . prototype . getLine = function ( ) { return this . bLine } ;
asc _ChartSettings . prototype . putRanges = function ( aRanges ) { if ( Array . isArray ( aRanges ) && aRanges . length > 0 ) { var sRange = "=" ; for ( var nRange = 0 ; nRange < aRanges . length ; ++ nRange ) { if ( nRange > 0 ) sRange += "," ; sRange += aRanges [ nRange ] } this . sRange = sRange } else this . sRange = null } ; asc _ChartSettings . prototype . getRanges = function ( ) { var sRange = this . sRange ; if ( typeof sRange === "string" && sRange > 0 ) { if ( sRange . charAt ( 0 ) === "=" ) sRange = sRange . slice ( 1 ) ; return sRange . split ( "," ) } else return [ ] } ; asc _ChartSettings . prototype . putSmooth = function ( v ) { this . smooth =
v } ; asc _ChartSettings . prototype . getSmooth = function ( ) { return this . smooth } ; asc _ChartSettings . prototype . putStyle = function ( index ) { if ( ! AscFormat . isRealNumber ( index ) ) { this . style = null ; return } this . style = parseInt ( index , 10 ) ; if ( this . bStartEdit && this . chartSpace ) if ( AscFormat . isRealNumber ( this . style ) ) { var aStyle = AscCommon . g _oChartStyles [ this . type ] && AscCommon . g _oChartStyles [ this . type ] [ this . style - 1 ] ; if ( Array . isArray ( aStyle ) ) { this . chartSpace . applyChartStyleByIds ( aStyle ) ; this . updateChart ( ) } } } ; asc _ChartSettings . prototype . getStyle =
function ( ) { return this . style } ; asc _ChartSettings . prototype . putRange = function ( range ) { this . sRange = range } ; asc _ChartSettings . prototype . setRange = function ( sRange ) { if ( this . chartSpace ) { this . chartSpace . setRange ( sRange ) ; this . updateChart ( ) } } ; asc _ChartSettings . prototype . isValidRange = function ( sRange ) { return AscFormat . isValidChartRange ( sRange ) } ; asc _ChartSettings . prototype . getRange = function ( ) { if ( this . chartSpace ) return this . chartSpace . getCommonRange ( ) ; return this . sRange } ; asc _ChartSettings . prototype . putInColumns = function ( inColumns ) { this . inColumns =
inColumns } ; asc _ChartSettings . prototype . getInColumns = function ( ) { return this . inColumns } ; asc _ChartSettings . prototype . getInRows = function ( ) { if ( this . inColumns === true || this . inColumns === false ) return ! this . inColumns ; return null } ; asc _ChartSettings . prototype . putTitle = function ( v ) { this . title = v } ; asc _ChartSettings . prototype . getTitle = function ( ) { return this . title } ; asc _ChartSettings . prototype . putRowCols = function ( v ) { this . rowCols = v } ; asc _ChartSettings . prototype . getRowCols = function ( ) { return this . rowCols } ; asc _ChartSettings . prototype . putLegendPos =
function ( v ) { this . legendPos = v } ; asc _ChartSettings . prototype . putDataLabelsPos = function ( v ) { this . dataLabelsPos = v } ; asc _ChartSettings . prototype . getLegendPos = function ( v ) { return this . legendPos } ; asc _ChartSettings . prototype . getDataLabelsPos = function ( v ) { return this . dataLabelsPos } ; asc _ChartSettings . prototype . getType = function ( ) { if ( this . chartSpace ) return this . chartSpace . getChartType ( ) ; return this . type } ; asc _ChartSettings . prototype . checkParams = function ( ) { if ( this . type === null || this . type === Asc . c _oAscChartTypeSettings . comboAreaBar ||
this . type === Asc . c _oAscChartTypeSettings . comboBarLine || this . type === Asc . c _oAscChartTypeSettings . comboBarLineSecondary || this . type === Asc . c _oAscChartTypeSettings . comboCustom ) return ; if ( AscFormat . getIsMarkerByType ( this . type ) ) this . showMarker = true ; else this . showMarker = false ; if ( AscFormat . getIsSmoothByType ( this . type ) ) this . smooth = true ; else this . smooth = false ; if ( AscFormat . getIsLineByType ( this . type ) ) this . bLine = true ; else this . bLine = false } ; asc _ChartSettings . prototype . putType = function ( v ) { this . type = v ; this . checkParams ( ) } ;
asc _ChartSettings . prototype . putShowSerName = function ( v ) { this . showSerName = v } ; asc _ChartSettings . prototype . putShowCatName = function ( v ) { this . showCatName = v } ; asc _ChartSettings . prototype . putShowVal = function ( v ) { this . showVal = v } ; asc _ChartSettings . prototype . getShowSerName = function ( ) { return this . showSerName } ; asc _ChartSettings . prototype . getShowCatName = function ( ) { return this . showCatName } ; asc _ChartSettings . prototype . getShowVal = function ( ) { return this . showVal } ; asc _ChartSettings . prototype . putSeparator = function ( v ) { this . separator =
v } ; asc _ChartSettings . prototype . getSeparator = function ( ) { return this . separator } ; asc _ChartSettings . prototype . sendErrorOnChangeType = function ( nType ) { var oApi = Asc . editor || editor ; if ( oApi ) { oApi . sendEvent ( "asc_onError" , nType , Asc . c _oAscError . Level . NoCritical ) ; if ( oApi . UpdateInterfaceState ) oApi . UpdateInterfaceState ( ) } } ; asc _ChartSettings . prototype . changeType = function ( type ) { if ( this . chartSpace ) { if ( type === Asc . c _oAscChartTypeSettings . stock ) if ( ! this . chartSpace . canChangeToStockChart ( ) ) { this . sendErrorOnChangeType ( Asc . c _oAscError . ID . StockChartError ) ;
return false } if ( type === Asc . c _oAscChartTypeSettings . comboCustom || type === Asc . c _oAscChartTypeSettings . comboAreaBar || type === Asc . c _oAscChartTypeSettings . comboBarLine || type === Asc . c _oAscChartTypeSettings . comboBarLineSecondary ) if ( ! this . chartSpace . canChangeToComboChart ( ) ) { this . sendErrorOnChangeType ( Asc . c _oAscError . ID . ComboSeriesError ) ; return false } this . putType ( type ) ; if ( this . chartSpace ) { var oController = this . chartSpace . getDrawingObjectsController ( ) ; if ( oController ) { var oThis = this ; var oChartSpace = this . chartSpace ;
oController . checkSelectedObjectsAndCallback ( function ( ) { oChartSpace . changeChartType ( type ) ; oThis . updateChart ( ) ; var oApi = Asc . editor || editor ; if ( oApi ) if ( oApi . UpdateInterfaceState ) oApi . UpdateInterfaceState ( ) } , [ ] , false , 0 , [ ] ) } } } else this . putType ( type ) ; return true } ; asc _ChartSettings . prototype . getSeries = function ( ) { if ( this . chartSpace ) return this . chartSpace . getAllSeries ( ) ; return [ ] } ; asc _ChartSettings . prototype . getCatValues = function ( ) { if ( this . chartSpace ) return this . chartSpace . getCatValues ( ) ; return [ ] } ; asc _ChartSettings . prototype . getCatFormula =
function ( ) { if ( this . chartSpace ) return this . chartSpace . getCatFormula ( ) ; return "" } ; asc _ChartSettings . prototype . setCatFormula = function ( sFormula ) { if ( this . chartSpace ) return this . chartSpace . setCatFormula ( sFormula ) ; this . updateChart ( ) } ; asc _ChartSettings . prototype . isValidCatFormula = function ( sFormula ) { if ( sFormula === "" || sFormula === null ) return Asc . c _oAscError . ID . No ; return AscFormat . ExecuteNoHistory ( function ( ) { var oCat = new AscFormat . CCat ; return oCat . setValues ( sFormula ) . getError ( ) } , this , [ ] ) } ; asc _ChartSettings . prototype . switchRowCol =
function ( ) { var nError = Asc . c _oAscError . ID . No ; if ( this . chartSpace ) nError = this . chartSpace . switchRowCol ( ) ; this . updateChart ( ) ; return nError } ; asc _ChartSettings . prototype . addSeries = function ( ) { var oRet = null ; if ( this . chartSpace ) oRet = this . chartSpace . addNewSeries ( ) ; this . updateChart ( ) ; return oRet } ; asc _ChartSettings . prototype . addScatterSeries = function ( ) { var oRet = null ; if ( this . chartSpace ) oRet = this . chartSpace . addNewSeries ( ) ; this . updateChart ( ) ; return oRet } ; asc _ChartSettings . prototype . startEdit = function ( ) { this . bStartEdit =
true ; AscCommon . History . Create _NewPoint ( ) ; AscCommon . History . StartTransaction ( ) } ; asc _ChartSettings . prototype . endEdit = function ( ) { if ( AscCommon . History . Is _LastPointEmpty ( ) ) { this . cancelEdit ( ) ; return } this . bStartEdit = false ; AscCommon . History . EndTransaction ( ) ; this . updateChart ( ) } ; asc _ChartSettings . prototype . cancelEdit = function ( ) { this . bStartEdit = false ; AscCommon . History . EndTransaction ( ) ; AscCommon . History . Undo ( ) ; AscCommon . History . Clear _Redo ( ) ; AscCommon . History . _sendCanUndoRedo ( ) ; this . updateChart ( ) } ; asc _ChartSettings . prototype . startEditData =
function ( ) { AscCommon . History . SavePointIndex ( ) } ; asc _ChartSettings . prototype . cancelEditData = function ( ) { AscCommon . History . UndoToPointIndex ( ) ; this . updateChart ( ) } ; asc _ChartSettings . prototype . endEditData = function ( ) { AscCommon . History . ClearPointIndex ( ) ; this . updateChart ( ) } ; asc _ChartSettings . prototype . updateChart = function ( ) { if ( this . chartSpace ) this . chartSpace . onDataUpdate ( ) } ; asc _ChartSettings . prototype . read = function ( _params , _cursor ) { var _continue = true ; var oAxPr ; var nHorAxislabel = null , nVertAxisLabel = null ; var nHorGridlines =
null , nVertGridlines = null ; while ( _continue ) { var _attr = _params [ _cursor . pos ++ ] ; switch ( _attr ) { case 0 : { this . putStyle ( _params [ _cursor . pos ++ ] ) ; break } case 1 : { this . putTitle ( _params [ _cursor . pos ++ ] ) ; break } case 2 : { this . putRowCols ( _params [ _cursor . pos ++ ] ) ; break } case 3 : { nHorAxislabel = _params [ _cursor . pos ++ ] ; break } case 4 : { nVertAxisLabel = _params [ _cursor . pos ++ ] ; break } case 5 : { this . putLegendPos ( _params [ _cursor . pos ++ ] ) ; break } case 6 : { this . putDataLabelsPos ( _params [ _cursor . pos ++ ] ) ; break } case 7 : { _cursor . pos ++ ; break } case 8 : { _cursor . pos ++ ;
break } case 9 : { nHorGridlines = _params [ _cursor . pos ++ ] ; break } case 10 : { nVertGridlines = _params [ _cursor . pos ++ ] ; break } case 11 : { this . putType ( _params [ _cursor . pos ++ ] ) ; break } case 12 : { this . putShowSerName ( _params [ _cursor . pos ++ ] ) ; break } case 13 : { this . putShowCatName ( _params [ _cursor . pos ++ ] ) ; break } case 14 : { this . putShowVal ( _params [ _cursor . pos ++ ] ) ; break } case 15 : { this . putSeparator ( _params [ _cursor . pos ++ ] ) ; break } case 16 : { oAxPr = new asc _ValAxisSettings ; oAxPr . read ( _params , _cursor ) ; this . addHorAxesProps ( oAxPr ) ; break } case 17 : { oAxPr =
new asc _ValAxisSettings ; oAxPr . read ( _params , _cursor ) ; this . addVertAxesProps ( oAxPr ) ; break } case 18 : { this . putRange ( _params [ _cursor . pos ++ ] ) ; break } case 19 : { this . putInColumns ( _params [ _cursor . pos ++ ] ) ; break } case 20 : { this . putShowMarker ( _params [ _cursor . pos ++ ] ) ; break } case 21 : { this . putLine ( _params [ _cursor . pos ++ ] ) ; break } case 22 : { this . putSmooth ( _params [ _cursor . pos ++ ] ) ; break } case 23 : { oAxPr = new asc _CatAxisSettings ; oAxPr . read ( _params , _cursor ) ; this . addHorAxesProps ( oAxPr ) ; break } case 24 : { oAxPr = new asc _CatAxisSettings ;
oAxPr . read ( _params , _cursor ) ; this . addVertAxesProps ( oAxPr ) ; break } case 255 : default : { _continue = false ; break } } } oAxPr = this . horizontalAxes [ 0 ] ; if ( oAxPr ) { if ( nHorAxislabel !== null ) oAxPr . putLabel ( nHorAxislabel ) ; if ( nVertGridlines !== null ) oAxPr . putGridlines ( nVertGridlines ) } oAxPr = this . verticalAxes [ 0 ] ; if ( oAxPr ) { if ( nVertAxisLabel !== null ) oAxPr . putLabel ( nVertAxisLabel ) ; if ( nHorGridlines !== null ) oAxPr . putGridlines ( nHorGridlines ) } } ; asc _ChartSettings . prototype . write = function ( _type , _stream ) { _stream [ "WriteByte" ] ( _type ) ; if ( this . style !==
undefined && this . style !== null ) { _stream [ "WriteByte" ] ( 0 ) ; _stream [ "WriteLong" ] ( this . style ) } if ( this . title !== undefined && this . title !== null ) { _stream [ "WriteByte" ] ( 1 ) ; _stream [ "WriteLong" ] ( this . title ) } if ( this . rowCols !== undefined && this . rowCols !== null ) { _stream [ "WriteByte" ] ( 2 ) ; _stream [ "WriteLong" ] ( this . rowCols ) } var nLabel = this . horizontalAxes [ 0 ] && this . horizontalAxes [ 0 ] . getLabel ( ) ; if ( nLabel !== undefined && nLabel !== null ) { _stream [ "WriteByte" ] ( 3 ) ; _stream [ "WriteLong" ] ( nLabel ) } nLabel = this . verticalAxes [ 0 ] && this . verticalAxes [ 0 ] . getLabel ( ) ;
if ( nLabel !== undefined && nLabel !== null ) { _stream [ "WriteByte" ] ( 4 ) ; _stream [ "WriteLong" ] ( nLabel ) } if ( this . legendPos !== undefined && this . legendPos !== null ) { _stream [ "WriteByte" ] ( 5 ) ; _stream [ "WriteLong" ] ( this . legendPos ) } if ( this . dataLabelsPos !== undefined && this . dataLabelsPos !== null ) { _stream [ "WriteByte" ] ( 6 ) ; _stream [ "WriteLong" ] ( this . dataLabelsPos ) } var nGridlines = this . verticalAxes [ 0 ] && this . verticalAxes [ 0 ] . getGridlines ( ) ; if ( nGridlines !== undefined && nGridlines !== null ) { _stream [ "WriteByte" ] ( 9 ) ; _stream [ "WriteLong" ] ( nGridlines ) } nGridlines =
this . horizontalAxes [ 0 ] && this . horizontalAxes [ 0 ] . getGridlines ( ) ; if ( nGridlines !== undefined && nGridlines !== null ) { _stream [ "WriteByte" ] ( 10 ) ; _stream [ "WriteLong" ] ( nGridlines ) } if ( this . type !== undefined && this . type !== null ) { _stream [ "WriteByte" ] ( 11 ) ; _stream [ "WriteLong" ] ( this . type ) } if ( this . showSerName !== undefined && this . showSerName !== null ) { _stream [ "WriteByte" ] ( 12 ) ; _stream [ "WriteBool" ] ( this . showSerName ) } if ( this . showCatName !== undefined && this . showCatName !== null ) { _stream [ "WriteByte" ] ( 13 ) ; _stream [ "WriteBool" ] ( this . showCatName ) } if ( this . showVal !==
undefined && this . showVal !== null ) { _stream [ "WriteByte" ] ( 14 ) ; _stream [ "WriteBool" ] ( this . showVal ) } if ( this . separator !== undefined && this . separator !== null ) { _stream [ "WriteByte" ] ( 15 ) ; _stream [ "WriteString2" ] ( this . separator ) } var oHorAx = this . getHorAxesProps ( ) [ 0 ] ; var oVertAx = this . getVertAxesProps ( ) [ 0 ] ; if ( undefined != oHorAx && null != oHorAx && oHorAx . getAxisType ( ) == Asc . c _oAscAxisType . val ) oHorAx . write ( 16 , _stream ) ; if ( undefined != oVertAx && null != oVertAx && oVertAx . getAxisType ( ) == Asc . c _oAscAxisType . val ) oVertAx . write ( 17 , _stream ) ;
var sRange = this . getRange ( ) ; if ( sRange !== undefined && sRange !== null ) { _stream [ "WriteByte" ] ( 18 ) ; _stream [ "WriteString2" ] ( sRange ) } if ( this . inColumns !== undefined && this . inColumns !== null ) { _stream [ "WriteByte" ] ( 19 ) ; _stream [ "WriteBool" ] ( this . inColumns ) } if ( this . showMarker !== undefined && this . showMarker !== null ) { _stream [ "WriteByte" ] ( 20 ) ; _stream [ "WriteBool" ] ( this . showMarker ) } if ( this . bLine !== undefined && this . bLine !== null ) { _stream [ "WriteByte" ] ( 21 ) ; _stream [ "WriteBool" ] ( this . bLine ) } if ( this . smooth !== undefined && this . smooth !==
null ) { _stream [ "WriteByte" ] ( 22 ) ; _stream [ "WriteBool" ] ( this . showVal ) } if ( undefined != oHorAx && null != oHorAx && oHorAx . getAxisType ( ) == Asc . c _oAscAxisType . cat ) oHorAx . write ( 23 , _stream ) ; if ( undefined != oVertAx && null != oVertAx && oVertAx . getAxisType ( ) == Asc . c _oAscAxisType . cat ) oVertAx . write ( 24 , _stream ) ; _stream [ "WriteByte" ] ( 255 ) } ; function asc _CRect ( x , y , width , height ) { 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 } } ; 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 ) } , getVal : function ( ) { return ( this . r << 16 & 16711680 ) + ( this . g << 8 & 65280 ) + this . b } } ; 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 } } ; 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 = . 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 } ; 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 } } ; 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 } ; function asc _CTextFontFamily ( obj ) { if ( obj ) { this . Name = undefined != obj . Name ? obj . Name : null ; this . Index = undefined != obj . Index ?
obj . Index : null } else { this . Name = "Times New Roman" ; this . Index = - 1 } } asc _CTextFontFamily . prototype = { asc _getName : function ( ) { var _name = AscFonts . g _fontApplication ? AscFonts . g _fontApplication . NameToInterface [ this . Name ] : null ; return _name ? _name : this . Name } , asc _getIndex : function ( ) { return this . Index } , asc _putName : function ( v ) { this . Name = v } , asc _putIndex : function ( v ) { this . Index = v } } ; 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 } ; 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 } } ; function asc _CParagraphShd ( obj ) { if ( obj ) { this . Value = undefined != obj . Value ? obj . Value : null ; if ( null !== this . Value && this . Value !== Asc . c _oAscShd . Nil ) this . Value =
Asc . c _oAscShd . Clear ; if ( obj . GetSimpleColor ) if ( Asc . c _oAscShd . Clear === obj . Value && 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 { var oColor = obj . GetSimpleColor ( ) ; this . Color = CreateAscColorCustom ( oColor . r , oColor . g , oColor . b , oColor . Auto ) } else 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 ) ; this . Fill = 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 ; this . Fill = v ? v : null } } ; 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 } ; 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 } , asc _putLine : function ( v ) { this . Line = v } , asc _putLineRule : function ( v ) { this . LineRule = v } , asc _putBefore : function ( v ) { this . Before = v } , asc _putAfter : function ( v ) { this . After =
v } } ; 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 } } ; 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 ; this . Jc = undefined != obj . Jc ? obj . Jc : undefined ; this . ListType = undefined != obj . ListType ? obj . ListType : undefined ; this . OutlineLvl = undefined != obj . OutlineLvl ? obj . OutlineLvl : undefined ; this . OutlineLvlStyle = undefined != obj . OutlineLvlStyle ?
obj . OutlineLvlStyle : false ; this . SuppressLineNumbers = undefined !== obj . SuppressLineNumbers ? obj . SuppressLineNumbers : false ; this . Bullet = obj . Bullet ; var oBullet = obj . Bullet ; if ( oBullet ) oBullet . FirstTextPr = obj . FirstTextPr ; this . CanDeleteBlockCC = undefined !== obj . CanDeleteBlockCC ? obj . CanDeleteBlockCC : true ; this . CanEditBlockCC = undefined !== obj . CanEditBlockCC ? obj . CanEditBlockCC : true ; this . CanDeleteInlineCC = undefined !== obj . CanDeleteInlineCC ? obj . CanDeleteInlineCC : true ; this . CanEditInlineCC = undefined !== obj . CanEditInlineCC ?
obj . CanEditInlineCC : true } else { 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 ; this . Jc = undefined ; this . ListType = undefined ; this . OutlineLvl = undefined ; this . OutlineLvlStyle = false ; this . SuppressLineNumbers = false ; this . Bullet = undefined ; this . CanDeleteBlockCC = true ; this . CanEditBlockCC = true ; this . CanDeleteInlineCC = true ; this . CanEditInlineCC = true } } 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 _getJc : function ( ) { return this . Jc } , asc _putJc : function ( v ) { this . Jc = 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 } , asc _getOutlineLvl : function ( ) { return this . OutlineLvl } , asc _putOutLineLvl : function ( nLvl ) { this . OutlineLvl =
nLvl } , asc _getOutlineLvlStyle : function ( ) { return this . OutlineLvlStyle } , asc _getSuppressLineNumbers : function ( ) { return this . SuppressLineNumbers } , asc _putSuppressLineNumbers : function ( isSuppress ) { this . SuppressLineNumbers = isSuppress } , asc _putBullet : function ( val ) { this . Bullet = val } , asc _getBullet : function ( ) { return this . Bullet } , asc _putBulletSize : function ( size ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putSize ( size ) } , asc _getBulletSize : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getSize ( ) } ,
asc _putBulletColor : function ( color ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putColor ( color ) } , asc _getBulletColor : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getColor ( ) } , asc _putNumStartAt : function ( NumStartAt ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putNumStartAt ( NumStartAt ) } , asc _getNumStartAt : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getNumStartAt ( ) } , asc _getBulletFont : function ( ) { if ( ! this . Bullet ) return undefined ;
return this . Bullet . asc _getFont ( ) } , asc _putBulletFont : function ( v ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putFont ( v ) } , asc _getBulletSymbol : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getSymbol ( ) } , asc _putBulletSymbol : function ( v ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putSymbol ( v ) } , asc _canDeleteBlockContentControl : function ( ) { return this . CanDeleteBlockCC } , asc _canEditBlockContentControl : function ( ) { return this . CanEditBlockCC } , asc _canDeleteInlineContentControl : function ( ) { return this . CanDeleteInlineCC } ,
asc _canEditInlineContentControl : function ( ) { return this . CanEditInlineCC } } ; function asc _CTexture ( ) { this . Id = 0 ; this . Image = "" } asc _CTexture . prototype = { asc _getId : function ( ) { return this . Id } , asc _getImage : function ( ) { return this . Image } } ; function asc _CImageSize ( width , height , isCorrect ) { this . Width = undefined == width ? 0 : width ; this . Height = undefined == height ? 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 } } ;
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 } } ; function asc _CShapeProperty ( ) { this . type = null ; this . fill = null ; this . stroke = null ; this . paddings = null ; this . canFill = true ; this . canChangeArrows = false ; this . bFromChart = false ; this . bFromGroup = 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 . textFitType = null ; this . vertOverflowType = null ; this . signatureId = null ; this . rot = null ; this . rotAdd = null ; this . flipH = null ; this . flipV = null ; this . flipHInvert = null ; this . flipVInvert = null ; this . shadow = undefined ; this . anchor = 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 _getFromGroup : function ( ) { return this . bFromGroup } , asc _setFromGroup : function ( v ) { this . bFromGroup =
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 _getTextFitType : function ( ) { return this . textFitType } , asc _getVertOverflowType : function ( ) { return this . vertOverflowType } , asc _putColumnSpace : function ( v ) { this . columnSpace = v } , asc _putTextFitType : function ( v ) { this . textFitType = v } , asc _putVertOverflowType : function ( v ) { this . vertOverflowType = 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 } , asc _getRot : function ( ) { return this . rot } ,
asc _putRot : function ( v ) { this . rot = v } , asc _getRotAdd : function ( ) { return this . rotAdd } , asc _putRotAdd : function ( v ) { this . rotAdd = v } , asc _getFlipH : function ( ) { return this . flipH } , asc _putFlipH : function ( v ) { this . flipH = v } , asc _getFlipV : function ( ) { return this . flipV } , asc _putFlipV : function ( v ) { this . flipV = v } , asc _getFlipHInvert : function ( ) { return this . flipHInvert } , asc _putFlipHInvert : function ( v ) { this . flipHInvert = v } , asc _getFlipVInvert : function ( ) { return this . flipVInvert } , asc _putFlipVInvert : function ( v ) { this . flipVInvert = v } , asc _getShadow : function ( ) { return this . shadow } ,
asc _putShadow : function ( v ) { this . shadow = v } , asc _getAnchor : function ( ) { return this . anchor } , asc _putAnchor : function ( v ) { this . anchor = v } } ; function asc _TextArtProperties ( obj ) { if ( obj ) { this . Fill = obj . Fill ; this . Line = obj . Line ; this . Form = obj . Form ; 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 } ; 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 . Token = obj . Token ; 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 . SlicerProperties = undefined != obj . SlicerProperties ? obj . SlicerProperties : 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 ; 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 ; this . textFitType = obj . textFitType != undefined ? obj . textFitType : undefined ; this . vertOverflowType = obj . vertOverflowType != undefined ? obj . vertOverflowType : undefined ; this . shadow = obj . shadow != undefined ?
obj . shadow : undefined ; this . rot = obj . rot != undefined ? obj . rot : undefined ; this . flipH = obj . flipH != undefined ? obj . flipH : undefined ; this . flipV = obj . flipV != undefined ? obj . flipV : undefined ; this . resetCrop = obj . resetCrop != undefined ? obj . resetCrop : undefined ; this . anchor = obj . anchor != undefined ? obj . anchor : 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 . Token = undefined ; this . Locked = false ; this . ChartProperties = null ; this . ShapeProperties = null ; this . SlicerProperties = 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 ; this . pluginGuid = undefined ; this . pluginData = undefined ; this . oleWidth = undefined ; this . oleHeight = undefined ; this . title =
undefined ; this . description = undefined ; this . columnNumber = undefined ; this . columnSpace = undefined ; this . textFitType = undefined ; this . vertOverflowType = undefined ; this . rot = undefined ; this . rotAdd = undefined ; this . flipH = undefined ; this . flipV = undefined ; this . resetCrop = undefined ; this . anchor = 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 _getPaddings : function ( ) { return this . Paddings } , asc _putPaddings : function ( v ) { this . Paddings = v } , asc _getAllowOverlap : function ( ) { return this . AllowOverlap } , asc _putAllowOverlap : function ( v ) { this . AllowOverlap = v } , asc _getPosition : function ( ) { return this . Position } , 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 , sToken ) { this . ImageUrl = v ; this . Token = sToken } , 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 _getSlicerProperties : function ( ) { return this . SlicerProperties } ,
asc _putSlicerProperties : function ( v ) { this . SlicerProperties = 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 origW = 0 ; var origH = 0 ; var _image = api . ImageLoader . map _image _index [ AscCommon . getFullImageSrc2 ( this . ImageUrl ) ] ; if ( _image != undefined && _image . Image != null && _image . Status == window [ "AscFonts" ] . ImageLoadStatus . Complete ) { origW =
_image . Image . width ; origH = _image . Image . height } else if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "GetImageOriginalSize" ] ) { var _size = window [ "AscDesktopEditor" ] [ "GetImageOriginalSize" ] ( this . ImageUrl ) ; if ( _size [ "W" ] != 0 && _size [ "H" ] != 0 ) { origW = _size [ "W" ] ; origH = _size [ "H" ] } } if ( origW != 0 && origH != 0 ) { var _ _w = Math . max ( origW * AscCommon . g _dKoef _pix _to _mm , 1 ) ; var _ _h = Math . max ( origH * AscCommon . g _dKoef _pix _to _mm , 1 ) ; return new asc _CImageSize ( _ _w , _ _h , true ) } return new asc _CImageSize ( 50 , 50 , false ) } , 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 _getTextFitType : function ( ) { return this . textFitType } , asc _getVertOverflowType : function ( ) { return this . vertOverflowType } , asc _putColumnSpace : function ( v ) { this . columnSpace = v } , asc _putTextFitType : function ( v ) { this . textFitType = v } , asc _putVertOverflowType : function ( v ) { this . vertOverflowType = v } , asc _getSignatureId : function ( ) { if ( this . ShapeProperties ) return this . ShapeProperties . asc _getSignatureId ( ) ; return undefined } , asc _getRot : function ( ) { return this . rot } , asc _putRot : function ( v ) { this . rot = v } , asc _getRotAdd : function ( ) { return this . rotAdd } ,
asc _putRotAdd : function ( v ) { this . rotAdd = v } , asc _getFlipH : function ( ) { return this . flipH } , asc _putFlipH : function ( v ) { this . flipH = v } , asc _getFlipHInvert : function ( ) { return this . flipHInvert } , asc _putFlipHInvert : function ( v ) { this . flipHInvert = v } , asc _getFlipV : function ( ) { return this . flipV } , asc _putFlipV : function ( v ) { this . flipV = v } , asc _getFlipVInvert : function ( ) { return this . flipVInvert } , asc _putFlipVInvert : function ( v ) { this . flipVInvert = v } , asc _putResetCrop : function ( v ) { this . resetCrop = v } , asc _getShadow : function ( ) { return this . shadow } ,
asc _putShadow : function ( v ) { this . shadow = v } , asc _getAnchor : function ( ) { return this . anchor } , asc _putAnchor : function ( v ) { this . anchor = v } } ; 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 _CSelectedObject . prototype . asc _getObjectValue = function ( ) { return this . Value } ; 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 } } ; function asc _CFillBlip ( ) { this . type = c _oAscFillBlipType . STRETCH ; this . url = "" ; this . token = undefined ; 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 , sToken ) { this . url = v ; this . token = sToken } , asc _getTextureId : function ( ) { return this . texture _id } , asc _putTextureId : function ( v ) { this . texture _id = v } } ; 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 } } ; 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 } } ; function asc _CFillSolid ( ) { this . color = new asc _CColor } asc _CFillSolid . prototype = { asc _getColor : function ( ) { return this . color } ,
asc _putColor : function ( v ) { this . color = v } } ; 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 } } ; function CAscColorScheme ( ) { this . colors = [ ] ; this . name = "" ; this . scheme = null ; this . summ = 0 } 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 ] } ; CAscColorScheme . prototype . putColor = function ( color ) { this . colors . push ( color ) ; this . summ += color . getVal ( ) } ; CAscColorScheme . prototype . isEqual = function ( oColorScheme ) { if ( this . summ ===
oColorScheme . summ ) { for ( var i = 0 ; i < this . colors . length ; ++ i ) { var oColor1 = this . colors [ i ] ; var oColor2 = oColorScheme . colors [ i ] ; if ( ! ( ! oColor1 && ! oColor2 || oColor2 && oColor2 && oColor1 . Compare ( oColor2 ) ) ) return false } return this . name === oColorScheme . name } return false } ; 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 } case c _oAscMouseMoveDataTypes . Review : { this . ReviewChange = obj && obj . ReviewChange ? obj . ReviewChange : null ; 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 } ; CMouseMoveData . prototype . get _FormHelpText = function ( ) { return this . Text } ; CMouseMoveData . prototype . get _ReviewChange = function ( ) { return this . ReviewChange } ; 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 ; function asc _CUserInfo ( ) { this . Id = null ; this . FullName = null ; this . FirstName = null ; this . LastName = null ; this . IsAnonymousUser = false } 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 } ; asc _CUserInfo . prototype . asc _getIsAnonymousUser = asc _CUserInfo . prototype . get _IsAnonymousUser = function ( ) { return this . IsAnonymousUser } ; asc _CUserInfo . prototype . asc _putIsAnonymousUser = asc _CUserInfo . prototype . put _IsAnonymousUser = function ( v ) { this . IsAnonymousUser = v } ; 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 ; this . EncryptedInfo ; this . IsEnabledPlugins = true ; this . IsEnabledMacroses = true } 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 _IsAnonymousUser = prot . get _IsAnonymousUser = function ( ) { return this . UserInfo ? this . UserInfo . get _IsAnonymousUser ( ) : 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 } ; prot . get _EncryptedInfo = prot . asc _getEncryptedInfo = function ( ) { return this . EncryptedInfo } ; prot . put _EncryptedInfo = prot . asc _putEncryptedInfo = function ( v ) { this . EncryptedInfo = v } ; prot . get _IsEnabledPlugins =
prot . asc _getIsEnabledPlugins = function ( ) { return this . IsEnabledPlugins } ; prot . put _IsEnabledPlugins = prot . asc _putIsEnabledPlugins = function ( v ) { this . IsEnabledPlugins = v } ; prot . get _IsEnabledMacroses = prot . asc _getIsEnabledMacroses = function ( ) { return this . IsEnabledMacroses } ; prot . put _IsEnabledMacroses = prot . asc _putIsEnabledMacroses = function ( v ) { this . IsEnabledMacroses = 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 . displayName = null ; this . type = type ; this . image = image ; this . uiPriority = uiPriority } CStyleImage . prototype . asc _getId = CStyleImage . prototype . asc _getName = CStyleImage . prototype . get _Name = function ( ) { return this . name } ; CStyleImage . prototype . asc _getDisplayName = function ( ) { return this . displayName } ; CStyleImage . prototype . asc _getType = CStyleImage . prototype . get _Type = function ( ) { return this . type } ;
CStyleImage . prototype . asc _getImage = function ( ) { return this . image } ; 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 ,
api ) { this . api = api ; this . isFontsLoaded = false ; this . inputContentSrc = htmlContent ; if ( typeof this . inputContentSrc === "object" ) this . inputContentSrc = JSON . stringify ( this . inputContentSrc ) ; this . replaceMap = { } ; this . image = null ; this . imageBase64 = undefined ; this . width = 0 ; this . height = 0 ; this . transparent = . 3 ; this . zoom = 1 ; this . calculatezoom = - 1 ; this . contentObjects = null ; this . CheckParams = function ( ) { this . replaceMap [ "%user_name%" ] = this . api . User . userName ; 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 ] ) } this . contentObjects = { } ; try { var _objTmp = JSON . parse ( content ) ; this . contentObjects = _objTmp } catch ( err ) { } this . transparent = undefined == this . contentObjects [ "transparent" ] ? . 3 : this . contentObjects [ "transparent" ] } ; this . Generate = function ( ) { if ( ! this . isFontsLoaded ) return ; if ( this . zoom == this . calculatezoom ) return ; this . calculatezoom = this . zoom ; this . privateGenerateShape ( this . contentObjects ) } ; this . Draw = function ( context , dw _or _dx , dh _or _dy , dw , dh ) { if ( ! this . image ||
! this . isFontsLoaded ) 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 * AscCommon . g _dKoef _pix _to _mm / this . zoom ; var hMM = this . height * AscCommon . 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 } } var _oldTrackRevision = false ; if ( oApi . getEditorId ( ) == AscCommon . c _oEditorId . Word && oApi . WordControl && oApi . WordControl . m _oLogicDocument ) _oldTrackRevision = oApi . WordControl . m _oLogicDocument . GetLocalTrackRevisions ( ) ; if ( false !== _oldTrackRevision ) oApi . WordControl . m _oLogicDocument . SetLocalTrackRevisions ( false ) ; var bRemoveDocument = false ; if ( oApi . WordControl && ! oApi . WordControl . m _oLogicDocument ) { bRemoveDocument =
true ; oApi . WordControl . m _oLogicDocument = new AscCommonWord . CDocument ; oApi . WordControl . m _oDrawingDocument . m _oLogicDocument = oApi . WordControl . m _oLogicDocument } 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 / 36E3 ) ) } 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 AscCommonWord . 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 AscCommonWord . CDocumentShd ; oShd . Value = Asc . c _oAscShdClear ;
oShd . Color . r = oCurParS [ "fill" ] [ 0 ] ; oShd . Color . g = oCurParS [ "fill" ] [ 1 ] ; oShd . Color . b = oCurParS [ "fill" ] [ 2 ] ; oShd . Fill = new AscCommonWord . CDocumentColor ; oShd . Fill . r = oCurParS [ "fill" ] [ 0 ] ; oShd . Fill . g = oCurParS [ "fill" ] [ 1 ] ; oShd . Fill . b = oCurParS [ "fill" ] [ 2 ] ; oNewParagraph . Set _Shd ( oShd , true ) } if ( AscFormat . isRealNumber ( oCurParS [ "linespacing" ] ) ) oNewParagraph . Set _Spacing ( { Line : oCurParS [ "linespacing" ] , Before : 0 , After : 0 , 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 ] ) ) ; var fontFamilyName = oRunS [ "font-family" ] ? oRunS [ "font-family" ] : "Arial" ; var fontSize = oRunS [ "font-size" ] != null ? oRunS [ "font-size" ] : 50 ; oRun . Set _RFonts _Ascii ( { Name : fontFamilyName , Index : - 1 } ) ; oRun . Set _RFonts _CS ( { Name : fontFamilyName , Index : - 1 } ) ; oRun . Set _RFonts _EastAsia ( { Name : fontFamilyName , Index : - 1 } ) ;
oRun . Set _RFonts _HAnsi ( { Name : fontFamilyName , Index : - 1 } ) ; oRun . Set _FontSize ( fontSize ) ; 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 AscCommonWord . ParaNewLine ( AscCommonWord . break _Line ) , false ) ; else oRun . AddText ( sCustomText ) ; oNewParagraph . Internal _Content _Add ( j , oRun , false ) } oContent . Internal _Content _Add ( oContent . Content . length ,
oNewParagraph ) } var bLoad = AscCommon . g _oIdCounter . m _bLoad ; AscCommon . g _oIdCounter . Set _Load ( false ) ; oShape . recalculate ( ) ; if ( oShape . bWordShape ) oShape . recalculateText ( ) ; AscCommon . g _oIdCounter . Set _Load ( bLoad ) ; var oldShowParaMarks ; if ( window . editor ) { oldShowParaMarks = oApi . ShowParaMarks ; oApi . 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 * AscCommon . g _dKoef _mm _to _pix *
this . zoom , true ) ; var h _px = AscCommon . AscBrowser . convertToRetinaValue ( h _mm * AscCommon . 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 ( bRemoveDocument ) { oApi . WordControl . m _oLogicDocument = null ; oApi . WordControl . m _oDrawingDocument . m _oLogicDocument = null } if ( window . editor ) oApi . ShowParaMarks = oldShowParaMarks ; if ( false !== _oldTrackRevision ) oApi . WordControl . m _oLogicDocument . SetLocalTrackRevisions ( _oldTrackRevision ) } , this , [ obj ] ) } ; this . onReady = function ( ) { this . isFontsLoaded = true ; var oApi = this . api ; switch ( oApi . editorId ) { case AscCommon . c _oEditorId . Word : { if ( oApi . WordControl ) { if ( oApi . watermarkDraw ) { oApi . watermarkDraw . zoom = oApi . WordControl . m _nZoomValue /
100 ; oApi . watermarkDraw . Generate ( ) } oApi . WordControl . OnRePaintAttack ( ) } break } case AscCommon . c _oEditorId . Presentation : { if ( oApi . WordControl ) { if ( oApi . watermarkDraw ) { oApi . watermarkDraw . zoom = oApi . WordControl . m _nZoomValue / 100 ; oApi . watermarkDraw . Generate ( ) } oApi . WordControl . OnRePaintAttack ( ) } break } case AscCommon . c _oEditorId . Spreadsheet : { var ws = oApi . wb && oApi . wb . getWorksheet ( ) ; if ( ws && ws . objectRender && ws . objectRender ) ws . objectRender . OnUpdateOverlay ( ) ; break } } } ; this . checkOnReady = function ( ) { this . CheckParams ( ) ; var fonts =
[ ] ; var pars = this . contentObjects [ "paragraphs" ] ; var i , j ; for ( i = 0 ; i < pars . length ; i ++ ) { var runs = pars [ i ] [ "runs" ] ; for ( j = 0 ; j < runs . length ; j ++ ) { if ( undefined === runs [ j ] [ "font-family" ] ) runs [ j ] [ "font-family" ] = "Arial" ; fonts . push ( runs [ j ] [ "font-family" ] ) } } for ( i = 0 ; i < fonts . length ; i ++ ) fonts [ i ] = new AscFonts . CFont ( AscFonts . g _fontApplication . GetFontInfoName ( fonts [ i ] ) , 0 , "" , 0 , null ) ; if ( false === AscCommon . g _font _loader . CheckFontsNeedLoading ( fonts ) ) { this . onReady ( ) ; return false } this . api . asyncMethodCallback = function ( ) { var oApi =
Asc [ "editor" ] || editor ; oApi . watermarkDraw . onReady ( ) } ; AscCommon . g _font _loader . LoadDocumentFonts2 ( fonts ) } } function CPluginVariation ( ) { this . description = "" ; this . url = "" ; this . help = "" ; this . baseUrl = "" ; this . index = 0 ; this . icons = [ "1x" , "2x" ] ; this . isViewer = false ; this . EditorsSupport = [ "word" , "cell" , "slide" ] ; this . isSystem = false ; this . isVisual = false ; this . isModal = false ; this . isInsideMode = false ; this . isCustomWindow = false ; 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_Help" ] = function ( ) { return this . help } ;
CPluginVariation . prototype [ "set_Help" ] = function ( value ) { this . help = value } ; CPluginVariation . prototype [ "get_Icons" ] = function ( ) { return this . icons } ; CPluginVariation . prototype [ "set_Icons" ] = function ( value ) { this . icons = value } ; CPluginVariation . prototype [ "get_System" ] = function ( ) { return this . isSystem } ; CPluginVariation . prototype [ "set_System" ] = function ( value ) { this . isSystem = 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 [ "help" ] = this . help ; _object [ "index" ] = this . index ; _object [ "icons" ] = this . icons ; _object [ "isViewer" ] = this . isViewer ; _object [ "EditorsSupport" ] = this . EditorsSupport ; _object [ "isSystem" ] = this . isSystem ; _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 . help = _object [ "help" ] !=
null ? _object [ "help" ] : this . help ; 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 . isSystem = _object [ "isSystem" ] !=
null ? _object [ "isSystem" ] : this . isSystem ; 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 ; if ( _object [ "events" ] != null ) this [ "set_Events" ] ( _object [ "events" ] ) ; 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 . minVersion = "" ; 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_MinVersion" ] = function ( ) { return this . minVersion } ; CPlugin . prototype [ "set_MinVersion" ] = function ( value ) { this . minVersion = 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 . minVersion = _object [ "minVersion" ] != null ? _object [ "minVersion" ] : this . minVersion ; this . variations = [ ] ; for ( var i = 0 ; i < _object [ "variations" ] . length ; i ++ ) { var _variation = new CPluginVariation ; _variation [ "deserialize" ] ( _object [ "variations" ] [ i ] ) ; this . variations . push ( _variation ) } } ; 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 [ "AscCommon" ] . CreateUUID = CreateUUID ; window [ "AscCommon" ] . CreateUInt32 = CreateUInt32 ; window [ "AscCommon" ] . CreateDurableId = CreateDurableId ; window [ "AscCommon" ] . FixDurableId = FixDurableId ; window [ "AscCommon" ] . ExtendPrototype = ExtendPrototype ; 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 ; prot [ "ExpiredLimited" ] = prot . ExpiredLimited ; 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 ; prot [ "Limited" ] = prot . Limited ; 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_getCustomization" ] = prot . asc _getCustomization ; 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 ; prot [ "asc_getIsBeta" ] = prot . asc _getIsBeta ; window [ "AscCommon" ] . asc _CAxNumFmt = asc _CAxNumFmt ; prot = asc _CAxNumFmt . prototype ; prot [ "getFormatCode" ] = prot . getFormatCode ; prot [ "putFormatCode" ] = prot . putFormatCode ; prot [ "getFormatCellsInfo" ] = prot . getFormatCellsInfo ; prot [ "getSourceLinked" ] =
prot . getSourceLinked ; prot [ "putSourceLinked" ] = prot . putSourceLinked ; 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 ; prot [ "getShow" ] =
prot . getShow ; prot [ "putShow" ] = prot . putShow ; prot [ "putLabel" ] = prot . putLabel ; prot [ "getLabel" ] = prot . getLabel ; prot [ "putGridlines" ] = prot . putGridlines ; prot [ "getGridlines" ] = prot . getGridlines ; prot [ "putNumFmt" ] = prot . putNumFmt ; prot [ "getNumFmt" ] = prot . getNumFmt ; 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 ; prot [ "getShow" ] = prot . getShow ; prot [ "putShow" ] = prot . putShow ; prot [ "getLabel" ] = prot . getLabel ; prot [ "putLabel" ] = prot . putLabel ; prot [ "putGridlines" ] = prot . putGridlines ; prot [ "getGridlines" ] = prot . getGridlines ; prot [ "putNumFmt" ] = prot . putNumFmt ; prot [ "getNumFmt" ] = prot . getNumFmt ;
prot [ "getAuto" ] = prot . getAuto ; prot [ "putAuto" ] = prot . putAuto ; 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 [ "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 [ "putRanges" ] = prot . putRanges ; prot [ "getRanges" ] = prot . getRanges ; prot [ "putInColumns" ] = prot . putInColumns ; prot [ "getInColumns" ] = prot . getInColumns ; prot [ "getInRows" ] = prot . getInRows ; 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 ; prot [ "getSeries" ] = prot . getSeries ; prot [ "getCatValues" ] = prot . getCatValues ; prot [ "switchRowCol" ] = prot . switchRowCol ; prot [ "addSeries" ] = prot . addSeries ; prot [ "addScatterSeries" ] = prot . addScatterSeries ; prot [ "getCatFormula" ] = prot . getCatFormula ; prot [ "setCatFormula" ] = prot . setCatFormula ; prot [ "isValidCatFormula" ] = prot . isValidCatFormula ; prot [ "setRange" ] = prot . setRange ;
prot [ "isValidRange" ] = prot . isValidRange ; prot [ "startEdit" ] = prot . startEdit ; prot [ "endEdit" ] = prot . endEdit ; prot [ "cancelEdit" ] = prot . cancelEdit ; prot [ "startEditData" ] = prot . startEditData ; prot [ "cancelEditData" ] = prot . cancelEditData ; prot [ "endEditData" ] = prot . endEditData ; prot [ "getHorAxesProps" ] = prot . getHorAxesProps ; prot [ "getVertAxesProps" ] = prot . getVertAxesProps ; prot [ "getDepthAxesProps" ] = prot . getDepthAxesProps ; 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" ] = 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 ; window [ "AscCommon" ] [ "asc_CTextFontFamily" ] = asc _CTextFontFamily ; prot = asc _CTextFontFamily . prototype ; prot [ "get_Name" ] = prot [ "asc_getName" ] = prot . get _Name = prot . asc _getName ; prot [ "get_Index" ] = prot [ "asc_getIndex" ] = prot . get _Index = prot . asc _getIndex ; prot [ "put_Name" ] = prot [ "asc_putName" ] = prot . put _Name = prot . asc _putName ; prot [ "put_Index" ] = prot [ "asc_putIndex" ] = prot . put _Index = prot . asc _putIndex ; 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 [ "put_Line" ] = prot [ "asc_putLine" ] = prot . asc _putLine ; prot [ "get_LineRule" ] = prot [ "asc_getLineRule" ] = prot . asc _getLineRule ; prot [ "put_LineRule" ] = prot [ "asc_putLineRule" ] = prot . asc _putLineRule ; prot [ "get_Before" ] = prot [ "asc_getBefore" ] = prot . asc _getBefore ;
prot [ "put_Before" ] = prot [ "asc_putBefore" ] = prot . asc _putBefore ; prot [ "get_After" ] = prot [ "asc_getAfter" ] = prot . asc _getAfter ; prot [ "put_After" ] = prot [ "asc_putAfter" ] = prot . asc _putAfter ; 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_Jc" ] = prot [ "asc_getJc" ] = prot . asc _getJc ; prot [ "put_Jc" ] = prot [ "asc_putJc" ] = prot . asc _putJc ; 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 ; prot [ "get_OutlineLvl" ] = prot [ "asc_getOutlineLvl" ] = prot . asc _getOutlineLvl ; prot [ "put_OutlineLvl" ] = prot [ "asc_putOutLineLvl" ] = prot . asc _putOutLineLvl ; prot [ "get_OutlineLvlStyle" ] =
prot [ "asc_getOutlineLvlStyle" ] = prot . asc _getOutlineLvlStyle ; prot [ "get_SuppressLineNumbers" ] = prot [ "asc_getSuppressLineNumbers" ] = prot . asc _getSuppressLineNumbers ; prot [ "put_SuppressLineNumbers" ] = prot [ "asc_putSuppressLineNumbers" ] = prot . asc _putSuppressLineNumbers ; prot [ "put_Bullet" ] = prot [ "asc_putBullet" ] = prot . asc _putBullet ; prot [ "get_Bullet" ] = prot [ "asc_getBullet" ] = prot . asc _getBullet ; prot [ "put_BulletSize" ] = prot [ "asc_putBulletSize" ] = prot . asc _putBulletSize ; prot [ "get_BulletSize" ] = prot [ "asc_getBulletSize" ] = prot . asc _getBulletSize ;
prot [ "put_BulletColor" ] = prot [ "asc_putBulletColor" ] = prot . asc _putBulletColor ; prot [ "get_BulletColor" ] = prot [ "asc_getBulletColor" ] = prot . asc _getBulletColor ; prot [ "put_NumStartAt" ] = prot [ "asc_putNumStartAt" ] = prot . asc _putNumStartAt ; prot [ "get_NumStartAt" ] = prot [ "asc_getNumStartAt" ] = prot . asc _getNumStartAt ; prot [ "get_BulletFont" ] = prot [ "asc_getBulletFont" ] = prot . asc _getBulletFont ; prot [ "put_BulletFont" ] = prot [ "asc_putBulletFont" ] = prot . asc _putBulletFont ; prot [ "get_BulletSymbol" ] = prot [ "asc_getBulletSymbol" ] = prot . asc _getBulletSymbol ;
prot [ "put_BulletSymbol" ] = prot [ "asc_putBulletSymbol" ] = prot . asc _putBulletSymbol ; prot [ "can_DeleteBlockContentControl" ] = prot [ "asc_canDeleteBlockContentControl" ] = prot . asc _canDeleteBlockContentControl ; prot [ "can_EditBlockContentControl" ] = prot [ "asc_canEditBlockContentControl" ] = prot . asc _canEditBlockContentControl ; prot [ "can_DeleteInlineContentControl" ] = prot [ "asc_canDeleteInlineContentControl" ] = prot . asc _canDeleteInlineContentControl ; prot [ "can_EditInlineContentControl" ] = prot [ "asc_canEditInlineContentControl" ] =
prot . asc _canEditInlineContentControl ; 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_FromGroup" ] = prot [ "asc_getFromGroup" ] = prot . asc _getFromGroup ; prot [ "set_FromGroup" ] = prot [ "asc_setFromGroup" ] = prot . asc _setFromGroup ; 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 [ "get_TextFitType" ] = prot [ "asc_getTextFitType" ] = prot . asc _getTextFitType ; prot [ "get_VertOverflowType" ] = prot [ "asc_getVertOverflowType" ] = prot . asc _getVertOverflowType ; prot [ "put_ColumnSpace" ] = prot [ "asc_putColumnSpace" ] = prot . asc _putColumnSpace ; prot [ "put_TextFitType" ] = prot [ "asc_putTextFitType" ] = prot . asc _putTextFitType ; prot [ "put_VertOverflowType" ] = prot [ "asc_putVertOverflowType" ] = prot . asc _putVertOverflowType ;
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 ; prot [ "get_Rot" ] = prot [ "asc_getRot" ] = prot . asc _getRot ; prot [ "put_Rot" ] = prot [ "asc_putRot" ] = prot . asc _putRot ; prot [ "get_RotAdd" ] = prot [ "asc_getRotAdd" ] = prot . asc _getRotAdd ; prot [ "put_RotAdd" ] = prot [ "asc_putRotAdd" ] = prot . asc _putRotAdd ;
prot [ "get_FlipH" ] = prot [ "asc_getFlipH" ] = prot . asc _getFlipH ; prot [ "put_FlipH" ] = prot [ "asc_putFlipH" ] = prot . asc _putFlipH ; prot [ "get_FlipV" ] = prot [ "asc_getFlipV" ] = prot . asc _getFlipV ; prot [ "put_FlipV" ] = prot [ "asc_putFlipV" ] = prot . asc _putFlipV ; prot [ "get_FlipHInvert" ] = prot [ "asc_getFlipHInvert" ] = prot . asc _getFlipHInvert ; prot [ "put_FlipHInvert" ] = prot [ "asc_putFlipHInvert" ] = prot . asc _putFlipHInvert ; prot [ "get_FlipVInvert" ] = prot [ "asc_getFlipVInvert" ] = prot . asc _getFlipVInvert ; prot [ "put_FlipVInvert" ] = prot [ "asc_putFlipVInvert" ] =
prot . asc _putFlipVInvert ; prot [ "put_Shadow" ] = prot . put _Shadow = prot [ "put_shadow" ] = prot . put _shadow = prot [ "asc_putShadow" ] = prot . asc _putShadow ; prot [ "get_Shadow" ] = prot . get _Shadow = prot [ "get_shadow" ] = prot . get _shadow = prot [ "asc_getShadow" ] = prot . asc _getShadow ; prot [ "put_Anchor" ] = prot . put _Anchor = prot [ "asc_putAnchor" ] = prot . asc _putAnchor ; prot [ "get_Anchor" ] = prot . get _Anchor = prot [ "asc_getAnchor" ] = prot . asc _getAnchor ; 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 [ "put_SlicerProperties" ] = prot [ "asc_putSlicerProperties" ] = prot . asc _putSlicerProperties ; prot [ "get_SlicerProperties" ] = prot [ "asc_getSlicerProperties" ] = prot . asc _getSlicerProperties ; 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_Rot" ] = prot [ "asc_getRot" ] = prot . asc _getRot ; prot [ "put_Rot" ] = prot [ "asc_putRot" ] = prot . asc _putRot ; prot [ "get_RotAdd" ] = prot [ "asc_getRotAdd" ] = prot . asc _getRotAdd ; prot [ "put_RotAdd" ] = prot [ "asc_putRotAdd" ] = prot . asc _putRotAdd ; prot [ "get_FlipH" ] = prot [ "asc_getFlipH" ] = prot . asc _getFlipH ; prot [ "put_FlipH" ] = prot [ "asc_putFlipH" ] = prot . asc _putFlipH ; prot [ "get_FlipV" ] = prot [ "asc_getFlipV" ] =
prot . asc _getFlipV ; prot [ "put_FlipV" ] = prot [ "asc_putFlipV" ] = prot . asc _putFlipV ; prot [ "get_FlipHInvert" ] = prot [ "asc_getFlipHInvert" ] = prot . asc _getFlipHInvert ; prot [ "put_FlipHInvert" ] = prot [ "asc_putFlipHInvert" ] = prot . asc _putFlipHInvert ; prot [ "get_FlipVInvert" ] = prot [ "asc_getFlipVInvert" ] = prot . asc _getFlipVInvert ; prot [ "put_FlipVInvert" ] = prot [ "asc_putFlipVInvert" ] = prot . asc _putFlipVInvert ; prot [ "put_ResetCrop" ] = prot [ "asc_putResetCrop" ] = prot . asc _putResetCrop ; 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 [ "get_TextFitType" ] = prot [ "asc_getTextFitType" ] = prot . asc _getTextFitType ;
prot [ "get_VertOverflowType" ] = prot [ "asc_getVertOverflowType" ] = prot . asc _getVertOverflowType ; prot [ "put_ColumnSpace" ] = prot [ "asc_putColumnSpace" ] = prot . asc _putColumnSpace ; prot [ "put_TextFitType" ] = prot [ "asc_putTextFitType" ] = prot . asc _putTextFitType ; prot [ "put_VertOverflowType" ] = prot [ "asc_putVertOverflowType" ] = prot . asc _putVertOverflowType ; prot [ "asc_getSignatureId" ] = prot [ "asc_getSignatureId" ] = prot . asc _getSignatureId ; prot [ "put_Shadow" ] = prot . put _Shadow = prot [ "put_shadow" ] = prot . put _shadow = prot [ "asc_putShadow" ] = prot . asc _putShadow ;
prot [ "get_Shadow" ] = prot . get _Shadow = prot [ "get_shadow" ] = prot . get _shadow = prot [ "asc_getShadow" ] = prot . asc _getShadow ; prot [ "put_Anchor" ] = prot . put _Anchor = prot [ "asc_putAnchor" ] = prot . asc _putAnchor ; prot [ "get_Anchor" ] = prot . get _Anchor = prot [ "asc_getAnchor" ] = prot . asc _getAnchor ; 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 ; prot [ "get_FormHelpText" ] = prot . get _FormHelpText ; prot [ "get_ReviewChange" ] = prot . get _ReviewChange ; 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 ; prot [ "asc_putIsAnonymousUser" ] = prot [ "put_IsAnonymousUser" ] = prot . asc _putIsAnonymousUser ; prot [ "asc_getIsAnonymousUser" ] = prot [ "get_IsAnonymousUser" ] = prot . asc _getIsAnonymousUser ;
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 ; prot [ "get_EncryptedInfo" ] = prot [ "asc_getEncryptedInfo" ] =
prot . asc _getEncryptedInfo ; prot [ "put_EncryptedInfo" ] = prot [ "asc_putEncryptedInfo" ] = prot . asc _putEncryptedInfo ; prot [ "get_IsEnabledPlugins" ] = prot [ "asc_getIsEnabledPlugins" ] = prot . asc _getIsEnabledPlugins ; prot [ "put_IsEnabledPlugins" ] = prot [ "asc_putIsEnabledPlugins" ] = prot . asc _putIsEnabledPlugins ; prot [ "get_IsEnabledMacroses" ] = prot [ "asc_getIsEnabledMacroses" ] = prot . asc _getIsEnabledMacroses ; prot [ "put_IsEnabledMacroses" ] = prot [ "asc_putIsEnabledMacroses" ] = prot . asc _putIsEnabledMacroses ; 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_getId" ] = prot [ "asc_getName" ] = prot [ "get_Name" ] = prot . asc _getName ; prot [ "asc_getDisplayName" ] = prot . asc _getDisplayName ; 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 [ "AscCommon" ] . isFileBuild = isFileBuild ; window [ "AscCommon" ] . checkCanvasInDiv = checkCanvasInDiv ; window [ "Asc" ] [ "CPluginVariation" ] = window [ "Asc" ] . CPluginVariation = CPluginVariation ; window [ "Asc" ] [ "CPlugin" ] =
window [ "Asc" ] . CPlugin = CPlugin } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { 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 : 85 } ; var c _oSerPropLenType = { Null : 0 , Byte : 1 , Short : 2 , Three : 3 , Long : 4 , Double : 5 , Variable : 6 , Double64 : 7 , Long64 : 8 } ; 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 , SpacePoint : 5 , Size8Point : 6 } ; 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 , leftTwips : 4 , topTwips : 5 , rightTwips : 6 , bottomTwips : 7 } ; var c _oSerShdType = { Value : 0 , Color : 1 , ColorTheme : 2 , Fill : 3 , FillTheme : 4 } ; 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 ) { 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 ) { 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 . SpacePoint ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToPt ( border . Space ) } if ( null != border . Size ) { this . memory . WriteByte ( c _oSerBorderType . Size8Point ) ;
this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToPt ( 8 * 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 ; if ( null != Borders . Left ) this . WriteItem ( c _oSerBordersType . left , function ( ) { oThis . WriteBorder ( Borders . Left ) } ) ; if ( null != Borders . Top ) this . WriteItem ( c _oSerBordersType . top , function ( ) { oThis . WriteBorder ( Borders . Top ) } ) ; if ( null != Borders . Right ) this . WriteItem ( c _oSerBordersType . right , function ( ) { oThis . WriteBorder ( Borders . Right ) } ) ; if ( null != Borders . Bottom ) this . WriteItem ( c _oSerBordersType . bottom , function ( ) { oThis . WriteBorder ( Borders . Bottom ) } ) ; if ( null != Borders . InsideV ) this . WriteItem ( c _oSerBordersType . insideV ,
function ( ) { oThis . WriteBorder ( Borders . InsideV ) } ) ; if ( null != Borders . InsideH ) this . WriteItem ( c _oSerBordersType . insideH , function ( ) { oThis . WriteBorder ( Borders . InsideH ) } ) ; 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 ; if ( null != Shd . Value ) { this . memory . WriteByte ( c _oSerShdType . Value ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( Shd . 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 ) } var fill = null ; if ( null !=
Shd . Fill ) fill = Shd . Fill ; else if ( null != Shd . themeFill ) { var doc = editor . WordControl . m _oLogicDocument ; Shd . themeFill . check ( doc . Get _Theme ( ) , doc . Get _ColorMap ( ) ) ; var RGBA = Shd . themeFill . getRGBAColor ( ) ; fill = new AscCommonWord . CDocumentColor ( RGBA . R , RGBA . G , RGBA . B ) } if ( null != color && ! color . Auto ) this . WriteColor ( c _oSerShdType . Color , color ) ; if ( null != fill && ! fill . Auto ) this . WriteColor ( c _oSerShdType . Fill , fill ) ; if ( null != Shd . Unifill || null != Shd . Color && Shd . Color . Auto ) { this . memory . WriteByte ( c _oSerShdType . FillTheme ) ; this . memory . WriteByte ( c _oSerPropLenType . Variable ) ;
this . WriteItemWithLength ( function ( ) { _this . WriteColorTheme ( Shd . Unifill , Shd . Color ) } ) } if ( Shd . themeFill || Shd . Fill && Shd . Fill . Auto ) { this . memory . WriteByte ( c _oSerShdType . ColorTheme ) ; this . memory . WriteByte ( c _oSerPropLenType . Variable ) ; this . WriteItemWithLength ( function ( ) { _this . WriteColorTheme ( Shd . themeFill , Shd . Fill ) } ) } else if ( Shd . Unifill ) { this . memory . WriteByte ( c _oSerShdType . ColorTheme ) ; this . memory . WriteByte ( c _oSerPropLenType . Variable ) ; this . WriteItemWithLength ( function ( ) { _this . WriteColorTheme ( Shd . Unifill , Shd . Fill ) } ) } } ;
BinaryCommonWriter . prototype . WritePaddings = function ( Paddings ) { if ( null != Paddings . L ) { this . memory . WriteByte ( c _oSerPaddingType . leftTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . L ) } if ( null != Paddings . T ) { this . memory . WriteByte ( c _oSerPaddingType . topTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . T ) } if ( null != Paddings . R ) { this . memory . WriteByte ( c _oSerPaddingType . rightTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . R ) } if ( null !=
Paddings . B ) { this . memory . WriteByte ( c _oSerPaddingType . bottomTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . B ) } } ; BinaryCommonWriter . prototype . WriteColorSpreadsheet = function ( color ) { if ( ! color ) { this . memory . WriteByte ( c _oSer _ColorObjectType . Type ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( c _oSer _ColorType . Auto ) ; return } 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 ) } } ; BinaryCommonWriter . prototype . mmToTwips = function ( val ) { return Math . round ( AscCommonWord . g _dKoef _mm _to _twips * val ) } ; BinaryCommonWriter . prototype . writeMmToTwips = function ( val ) { return this . memory . WriteLong ( this . mmToTwips ( val ) ) } ; BinaryCommonWriter . prototype . writeMmToPt = function ( val ) { return this . memory . WriteLong ( Math . round ( AscCommonWord . g _dKoef _mm _to _pt * val ) ) } ; BinaryCommonWriter . prototype . writeMmToEmu = function ( val ) { return this . memory . WriteLong ( Math . round ( AscCommonWord . g _dKoef _mm _to _emu *
val ) ) } ; BinaryCommonWriter . prototype . writeMmToUEmu = function ( val ) { return this . memory . WriteULong ( Math . round ( AscCommonWord . g _dKoef _mm _to _emu * val ) ) } ; function Binary _CommonReader ( stream ) { this . stream = stream } Binary _CommonReader . prototype . ReadTable = function ( fReadContent ) { var res = c _oSerConstants . ReadOk ; res = this . stream . EnterFrame ( 4 ) ; if ( c _oSerConstants . ReadOk != res ) return res ; var stLen = this . stream . GetULongLE ( ) ; 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 ; 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 ) { 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 . Double64 : nRealLen =
8 ; break ; case c _oSerPropLenType . Long : 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 . Read2Spreadsheet = function ( stLen , fRead ) { var res = c _oSerConstants . ReadOk ;
var stCurPos = 0 ; while ( stCurPos < stLen ) { 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 . Double64 : nRealLen = 8 ; break ; case c _oSerPropLenType . Long : 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 ; dRes |= this . stream . GetUChar ( ) ; dRes |= this . stream . GetUChar ( ) << 8 ; dRes |= this . stream . GetUChar ( ) <<
16 ; dRes |= this . stream . GetUChar ( ) << 24 ; dRes /= 1E5 ; 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 , themeFill ) { 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 , themeFill ) } ) ; break ; case c _oSerShdType . Fill : Shd . Fill = this . ReadColor ( ) ; break ; case c _oSerShdType . FillTheme : 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 = 16777215 & 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 } ; 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 ) } ; 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 } ; FT _Stream2 . prototype . GetUShortLE = function ( ) { if ( this . cur + 1 >= this . size ) return 0 ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 } ; FT _Stream2 . prototype . GetShortLE = function ( ) { return AscFonts . FT _Common . UShort _To _Short ( this . GetUShortLE ( ) ) } ; 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 AscFonts . FT _Common . UintToInt ( this . GetULongLE ( ) ) } ;
FT _Stream2 . prototype . GetLong = function ( ) { return this . GetULongLE ( ) } ; FT _Stream2 . prototype . GetULong = 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 : e = 1 - eBias ; break ; case eMax : return m ? NaN : ( s ? - 1 : 1 ) * Infinity ; default : m = m + Math . pow ( 2 , mLen ) ; e = e - eBias ; break } return ( s ? - 1 : 1 ) * m * Math . pow ( 2 , e - mLen ) } ; 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 ) } ;
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 ; dRes |= this . GetUChar ( ) ; dRes |= this . GetUChar ( ) << 8 ; dRes |= this . GetUChar ( ) << 16 ; dRes |= this . GetUChar ( ) << 24 ; dRes /= 1E5 ; 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 } ; FT _Stream2 . prototype . ToFileStream = function ( ) { var res = new AscCommon . FileStream ; this . ToFileStream2 ( res ) ; return res } ; FT _Stream2 . prototype . ToFileStream2 = function ( stream ) { stream . obj = this . obj ; stream . data = this . data ; stream . size = this . size ; stream . pos = this . pos ; stream . cur = this . cur } ; FT _Stream2 . prototype . FromFileStream = function ( stream ) { this . obj = stream . obj ; this . data = stream . data ; this . size = stream . size ; this . pos = stream . pos ; this . cur = stream . cur } ; FT _Stream2 . prototype . XlsbReadRecordType =
function ( ) { var nValue = this . GetUChar ( ) ; if ( 0 != ( nValue & 128 ) ) { var nPart = this . GetUChar ( ) ; nValue = nValue & 127 | ( nPart & 127 ) << 7 } return nValue } ; FT _Stream2 . prototype . XlsbSkipRecord = function ( ) { this . Skip2 ( this . XlsbReadRecordLength ( ) ) } ; FT _Stream2 . prototype . XlsbReadRecordLength = function ( ) { var nValue = 0 ; for ( var i = 0 ; i < 4 ; ++ i ) { var nPart = this . GetUChar ( ) ; nValue |= ( nPart & 127 ) << 7 * i ; if ( 0 == ( nPart & 128 ) ) break } return nValue } ; var gc _nMaxRow = 1048576 ; var gc _nMaxCol = 16384 ; var gc _nMaxRow0 = gc _nMaxRow - 1 ; var gc _nMaxCol0 = gc _nMaxCol - 1 ; 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 ) { 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 ) { 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 ) } ; 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 ) { this . id = arguments [ 0 ] . toUpperCase ( ) ; this . _invalidCoord = true ; this . _checkId ( ) } else if ( 2 == argc ) { this . row = arguments [ 0 ] ; this . col = arguments [ 1 ] ;
this . _checkCoord ( ) ; this . _invalidId = true } else if ( 3 == argc ) { 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 ; 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 ) { this . bIsRow = true ; this . col = 1 ; this . colLetter = g _oCellAddressUtils . colnumToColstr ( this . col ) ; this . row = sId . substring ( nIndex ) - 0 ; if ( null != indexes [ 0 ] ) { this . bRowAbs = true ; indexesCount -- } } else if ( nIndex == nIdLength ) { this . bIsCol = true ; this . colLetter = sId ; this . col = g _oCellAddressUtils . colstrToColnum ( this . colLetter ) ; this . row = 1 ; 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 ( ) { 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 ( ) { 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 ) } ; 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 } ; this . GetUShort = function ( ) { if ( this . cur + 1 >= this . size ) return 0 ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 } ; 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 += 4294967295 + 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 } ; this . GetDouble = 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 ] } ; 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 /= 1E3 } return _ret } } function GetUTF16 _fromUnicodeChar ( code ) { if ( code < 65536 ) return String . fromCharCode ( code ) ; else { code -= 65536 ; return String . fromCharCode ( 55296 | code >> 10 & 1023 ) + String . fromCharCode ( 56320 | code & 1023 ) } } 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 ( 0 ==
( byteMain & 128 ) ) { _res += GetUTF16 _fromUnicodeChar ( byteMain ) ; ++ reader . cur } else if ( 0 == ( byteMain & 32 ) ) { val = ( byteMain & 31 ) << 6 | reader . data [ reader . cur + 1 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 2 } else if ( 0 == ( byteMain & 16 ) ) { val = ( byteMain & 15 ) << 12 | ( reader . data [ reader . cur + 1 ] & 63 ) << 6 | reader . data [ reader . cur + 2 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 3 } else if ( 0 == ( byteMain & 8 ) ) { val = ( byteMain & 7 ) << 18 | ( reader . data [ reader . cur + 1 ] & 63 ) << 12 | ( reader . data [ reader . cur + 2 ] & 63 ) << 6 | reader . data [ reader . cur + 3 ] & 63 ;
_res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 4 } else if ( 0 == ( byteMain & 4 ) ) { val = ( byteMain & 3 ) << 24 | ( reader . data [ reader . cur + 1 ] & 63 ) << 18 | ( reader . data [ reader . cur + 2 ] & 63 ) << 12 | ( reader . data [ reader . cur + 3 ] & 63 ) << 6 | reader . data [ reader . cur + 4 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 5 } else { val = ( byteMain & 1 ) << 30 | ( reader . data [ reader . cur + 1 ] & 63 ) << 24 | ( reader . data [ reader . cur + 2 ] & 63 ) << 18 | ( reader . data [ reader . cur + 3 ] & 63 ) << 12 | ( reader . data [ reader . cur + 4 ] & 63 ) << 6 | reader . data [ reader . cur + 5 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ;
reader . cur += 6 } } return _res } 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" ] . 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 =
250 ; window [ "AscCommon" ] . g _nodeAttributeEnd = 251 } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { 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 ) { 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 "" ; 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 } if ( typeof String . prototype . padStart !==
"function" ) { String . prototype . padStart = function padStart ( targetLength , padString ) { targetLength = targetLength >> 0 ; padString = String ( padString || " " ) ; if ( this . length > targetLength ) return String ( this ) ; else { targetLength = targetLength - this . length ; if ( targetLength > padString . length ) padString += padString . repeat ( targetLength / padString . length ) ; return padString . slice ( 0 , targetLength ) + String ( this ) } } ; String . prototype [ "padStart" ] = String . prototype . padStart } Number . isInteger = Number . isInteger || function ( value ) { return typeof value ===
"number" && Number . isFinite ( value ) && ! ( value % 1 ) } ; Number . isFinite = Number . isFinite || function ( value ) { return typeof value === "number" && isFinite ( value ) } ; 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 } ; RegExp . escape = function ( text ) { return text . replace ( /[-[\]{}()*+?.,\\^$|#\s]/g , "\\$&" ) } ; 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 ; 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 ( 255 == data [ 0 ] && 254 == data [ 1 ] ) res . encoding = AscCommon . c _oAscCodePageUtf16 ; else if ( 254 == data [ 0 ] && 255 == data [ 1 ] ) res . encoding = AscCommon . c _oAscCodePageUtf16BE ; else if ( data . length >= 3 ) { res . size = 3 ; if ( 239 == data [ 0 ] && 187 == data [ 1 ] && 191 == data [ 2 ] ) res . encoding = AscCommon . c _oAscCodePageUtf8 ; else if ( data . length >= 4 ) { res . size = 4 ; if ( 255 == data [ 0 ] && 254 == data [ 1 ] && 0 == data [ 2 ] && 0 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf32 ; else if ( 0 == data [ 0 ] && 0 == data [ 1 ] && 254 == data [ 2 ] && 255 == data [ 3 ] ) res . encoding =
AscCommon . c _oAscCodePageUtf32BE ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 56 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 57 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 43 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 47 == 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 ret = this . map [ param ] ; if ( AscCommon . AscBrowser . isCustomScalingAbove2 ( ) && this . mapRetina [ param ] ) ret = this . mapRetina [ param ] ; return ret ? ret : param } ; this . register = function ( type , name , target , default _css _value ) { if ( AscBrowser . isIE || AscBrowser . isIeEdge ) { this . map [ type ] = "url(../../../../sdkjs/common/Images/cursors/" + name + ".cur), " + default _css _value ;
this . mapRetina [ type ] = "url(../../../../sdkjs/common/Images/cursors/" + name + "_2x.cur), " + default _css _value } else if ( window . opera ) this . map [ type ] = default _css _value ; else if ( ! AscCommon . AscBrowser . isChrome && ! AscCommon . AscBrowser . isSafari ) this . map [ type ] = "url('../../../../sdkjs/common/Images/cursors/" + name + ".svg') " + target + ", url('../../../../sdkjs/common/Images/cursors/" + name + ".png') " + target + ", " + default _css _value ; else this . map [ type ] = "-webkit-image-set(url(../../../../sdkjs/common/Images/cursors/" + name + ".png) 1x," +
" url(../../../../sdkjs/common/Images/cursors/" + name + "_2x.png) 2x) " + target + ", " + 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 , done , status ) { 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 , status ) } else fCallbackRequest ? fCallbackRequest ( incomeObject , status ) : fCallback ( incomeObject ,
status ) } , 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 ( "svg" === ext ) ext += "+xml" ; 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 ) { 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 ) ; 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 ) { var docConnectionId = editor . CoAuthoringApi . getDocId ( ) ; if ( docConnectionId &&
docConnectionId !== rdata [ "id" ] ) 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 ( httpRequest , statusText , status ) { if ( fCallback ) fCallback ( null , true , status ) } ,
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 , "tokenSession" : 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 : nRes = Asc . c _oAscError . ID . ConvertationOpenLimitError ; break ; 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 . UploadDocumentContentLength : nRes = Asc . c _oAscError . ID . UplDocumentSize ; break ; case c _oAscServerError . UploadDocumentExtension : nRes = Asc . c _oAscError . ID . UplDocumentExt ;
break ; case c _oAscServerError . UploadDocumentCountFiles : nRes = Asc . c _oAscError . ID . UplDocumentFileCount ; 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 . Password : nRes = Asc . c _oAscError . ID . Password ; break ; case c _oAscServerError . ChangeDocInfo : nRes =
Asc . c _oAscError . ID . AccessDeny ; 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 ) { var stack = base . split ( "/" ) ,
parts = relative . split ( "/" ) ; stack . pop ( ) ; 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 >= 55296 && nCharCode <= 57343 } function decodeSurrogateChar ( nLeadingChar , nTrailingChar ) { if ( nLeadingChar < 56320 && nTrailingChar >= 56320 && nTrailingChar <= 57343 ) return 65536 + ( ( nLeadingChar & 1023 ) << 10 ) | nTrailingChar & 1023 ; else return null } function encodeSurrogateChar ( nUnicode ) { if ( nUnicode < 65536 ) return String . fromCharCode ( nUnicode ) ;
else { nUnicode = nUnicode - 65536 ; var nLeadingChar = 55296 | nUnicode >> 10 ; var nTrailingChar = 56320 | nUnicode & 1023 ; 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 CUnicodeStringEmulator ( array ) { this . arr = array ; this . len = this . arr . length ; this . pos = 0 } CUnicodeStringEmulator . prototype = { getUnicodeIterator : function ( ) { return this } , isOutside : function ( ) { return this . pos >= this . len } , isInside : function ( ) { return this . pos <
this . len } , value : function ( ) { if ( this . pos >= this . len ) return 0 ; return this . arr [ this . pos ] } , next : function ( ) { this . pos ++ } , position : function ( ) { return this . pos } } ; CUnicodeStringEmulator . prototype . check = CUnicodeStringEmulator . prototype . isInside ; 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 ; 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 ; String . prototype . getUnicodeIterator = function ( ) { return new CUnicodeIterator ( this ) } ; function test _ws _name2 ( ) { var str _namedRanges = " [ A - Z _\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 -
str _namedSheetsRange = " \u0001 - & ( - ) + -- ; - > @ ^ ` {- \u 007f \u 0082 \u 0084 \u 008b \u 0092 \u 0095 \u 0098 \u 009b \u 00a0 \u 00a6 \u 00a9 \u 00ab- \u 00ac \u 00ae \u 00bb \u 0378- \u 0379 \u 037e- \u 0383 \u 0387 \u 038b \u 038d \u 03a2 \u 0524- \u 0530 \u 0557- \u 0558 \u 055a- \u 0560 \u 0588- \u 0590 \u 05be \u 05c0 \u 05c3 \u 05c6 \u 05c8- \u 05cf \u 05eb- \u 05ef \u 05f3- \u 05ff \u 0604- \u 0605 \u 0609- \u 060a \u 060c- \u 060d \u 061b- \u 061e \u 0620 \u 065f \u 066a- \u 066d \u 06d4 \u 0700- \u 070e \u 074b- \u 074c \u 07b2- \u 07bf \u 07f7- \u 07f9 \u 07fb- \u 0900 \u 093a- \u 093b \u 094e- \u 094f \u 0955- \u 0957 \u 0964- \u 0965 \u 0970 \u 0973- \u 097a \u 0980 \u 0984 \u 098d- \u 098e \u 0991- \u 0992 \u 09a9 \u 09b1 \u 09b3- \u 09b5 \u 09ba- \u 09bb \u 09c5- \u 09c6 \u 09c9- \u 09ca \u 09cf- \u 09d6 \u 09d8- \u 09db \u 09de \u 09e4- \u 09e5 \u 09fb- \u 0a00 \u 0a04 \u 0a0b- \u 0a0e \u 0a11- \u 0a12 \u 0a29 \u 0a31 \u 0a34 \u 0a37 \u 0a3a- \u 0a3b \u 0a3d \u 0a43- \u 0a46 \u 0a49- \u 0a4a \u 0a4e- \u 0a50 \u 0a52- \u 0a58 \u 0a5d \u 0a5f- \u 0a65 \u 0a76- \u 0a80 \u 0a84 \u 0a8e \u 0a92 \u 0aa9 \u 0ab1 \u 0ab4 \u 0aba- \u 0abb \u 0ac6 \u 0aca \u 0ace- \u 0acf \u 0ad1- \u 0adf \u 0ae4- \u 0ae5 \u 0af0 \u 0af2- \u 0b00 \u 0b04 \u 0b0d- \u 0b0e \u 0b11- \u 0b12 \u 0b29 \u 0b31 \u 0b34 \u 0b3a- \u 0b3b \u 0b45- \u 0b46 \u 0b49- \u 0b4a \u 0b4e- \u 0b55 \u 0b58- \u 0b5b \u 0b5e \u 0b64- \u 0b65 \u 0b72- \u 0b81 \u 0b84 \u 0b8b- \u 0b8d \u 0b91 \u 0b96- \u 0b98 \u 0b9b \u 0b9d \u 0ba0- \u 0ba2 \u 0ba5- \u 0ba7 \u 0bab- \u 0bad \u 0bba- \u 0bbd \u 0bc3- \u 0bc5 \u 0bc9 \u 0bce- \u 0bcf \u 0bd1- \u 0bd6 \u 0bd8- \u 0be5 \u 0bfb- \u 0c00 \u 0c04 \u 0c0d \u 0c11 \u 0c29 \u 0c34 \u 0c3a- \u 0c3c \u 0c45 \u 0c49 \u 0c4e- \u 0c54 \u 0c57 \u 0c5a- \u 0c5f \u 0c64- \u 0c65 \u 0c70- \u 0c77 \u 0c80- \u 0c81 \u 0c84 \u 0c8d \u 0c91 \u 0ca9 \u 0cb4 \u 0cba- \u 0cbb \u 0cc5 \u 0cc9 \u 0cce- \u 0cd4 \u 0cd7- \u 0cdd \u 0cdf \u 0ce4- \u 0ce5 \u 0cf0 \u 0cf3- \u 0d01 \u 0d04 \u 0d0d \u 0d11 \u 0d29 \u 0d3a- \u 0d3c \u 0d45 \u 0d49 \u 0d4e- \u 0d56 \u 0d58- \u 0d5f \u 0d64- \u 0d65 \u 0d76- \u 0d78 \u 0d80- \u 0d81 \u 0d84 \u 0d97- \u 0d99 \u 0db2 \u 0dbc \u 0dbe- \u 0dbf \u 0dc7- \u 0dc9 \u 0dcb- \u 0dce \u 0dd5 \u 0dd7 \u 0de0- \u 0df1 \u 0df4- \u 0e00 \u 0e3b- \u 0e3e \u 0e4f \u 0e5a- \u 0e80 \u 0e83 \u 0e85- \u 0e86 \u 0e89 \u 0e8b- \u 0e8c \u 0e8e- \u 0e93 \u 0e98 \u 0ea0 \u 0ea4 \u 0ea6 \u 0ea8- \u 0ea9 \u 0eac \u 0eba \u 0ebe- \u 0ebf \u 0ec5 \u 0ec7 \u 0ece- \u 0ecf \u 0eda- \u 0edb \u 0ede- \u 0eff \u 0f04- \u 0f12 \u 0f3a- \u 0f3d \u 0f48 \u 0f6d- \u 0f70 \u 0f85 \u 0f8c- \u 0f8f \u 0f98 \u 0fbd \u 0fcd \u 0fd0- \u 0fff \u 104a- \u 104f \u 109a- \u 109d \u 10c6- \u 10cf \u 10fb \u 10fd- \u 10ff \u 115a- \u 115e \u 11a3- \u 11a7 \u 11fa- \u 11ff \u 1249 \u 124e- \u 124f \u 1257 \u 1259 \u 125e- \u 125f \u 1289 \u 128e- \u 128f \u 12b1 \u 12b6- \u 12b7 \u 12bf \u 12c1 \u 12c6- \u 12c7 \u 12d7 \u 1311 \u 1316- \u 1317 \u 135b- \u 135e \u 1361- \u 1368 \u 137d- \u 137f \u 139a- \u 139f \u 13f5- \u 1400 \u 166d- \u 166e \u 1677- \u 167f \u 169b- \u 169f \u 16eb- \u 16ed \u 16f1- \u 16ff \u 170d \u 1715- \u 171f \u 1735- \u 173f \u 1754- \u 175f \u 176d \u 1771 \u 1774- \u 177f \u 17d4- \u 17d6 \u 17d8- \u 17da \u 17de- \u 17df \u 17ea- \u 17ef \u 17fa- \u 180a \u 180f \u 181a- \u 181f \u 1878- \u 187f \u 18ab- \u 18ff \u 191d- \u 191f \u 192c- \u 192f \u 193c- \u 193f \u 1941- \u 1945 \u 196e- \u 196f \u 1975- \u 197f \u 19aa- \u 19af \u 19ca- \u 19cf \u 19da- \u 19df \u 1a1c- \u 1aff \u 1b4c- \u 1b4f \u 1b5a- \u 1b60 \u 1b7d- \u 1b7f \u 1bab- \u 1bad \u 1bba- \u 1bff \u 1c38- \u 1c3f \u 1c4a- \u 1c4c \u 1c7e- \u 1cff \u 1de7- \u 1dfd \u 1f16- \u 1f17 \u 1f1e- \u 1f1f \u 1f46- \u 1f47 \u 1f4e- \u 1f4f \u 1f58 \u 1f5a \u 1f5c \u 1f5e \u 1f7e- \u 1f7f \u 1fb5 \u 1fc5 \u 1fd4- \u 1fd5 \u 1fdc \u 1ff0- \u 1ff1 \u 1ff5 \u 1fff \u 2011- \u 2012 \u 2017 \u 2019- \u 201b \u 201e- \u 201f \u 2022- \u 2024 \u 2031 \u 2034 \u 2036- \u 203a \u 203c- \u 2043 \u 2045- \u 2051 \u 2053- \u 205e \u 2065- \u 2069 \u 2072- \u 2073 \u 207d- \u 207e \u 208d- \u 208f \u 2095- \u 209f \u 20b6- \u 20cf \u 20f1- \u 20ff \u 2150- \u 2152 \u 2189- \u 218f \u 2329- \u 232a \u 23e8- \u 23ff \u 2427- \u 243f \u 244b- \u 245f \u 269e- \u 269f \u 26bd- \u 26bf \u 26c4- \u 2700 \u 2705 \u 270a- \u 270b \u 2728 \u 274c \u 274e \u 2753- \u 2755 \u 2757 \u 275f- \u 2760 \u 2768- \u 2775 \u 2795- \u 2797 \u 27b0 \u 27bf \u 27c5- \u 27c6 \u 27cb \u 27cd- \u 27cf \u 27e6- \u 27ef \u 2983- \u 2998 \u 29d8- \u 29db \u 29fc- \u 29fd \u 2b4d- \u 2b4f \u 2b55- \u 2bff \u 2c2f \u 2c5f \u 2c70 \u 2c7e- \u 2c7f \u 2ceb- \u 2cfc \u 2cfe- \u 2cff \u 2d26- \u 2d2f \u 2d66- \u 2d6e \u 2d70- \u 2d7f \u 2d97- \u 2d9f \u 2da7 \u 2daf \u 2db7 \u 2dbf \u 2dc7 \u 2dcf \u 2dd7 \u 2ddf \u 2e00- \u 2e2e \u 2e30- \u 2e7f \u 2e9a \u 2ef4- \u 2eff \u 2fd6- \u 2fef \u 2ffc- \u 2fff \u 3018- \u 301c \u 3030 \u 303d \u 3040 \u 3097- \u 3098 \u 30a0 \u 3100- \u 3104 \u 312e- \u 3130 \u 318f \u 31b8- \u 31bf \u 31e4- \u 31ef \u 321f \u 3244- \u 324f \u 32ff \u 4db6- \u 4dbf \u 9fc4- \u 9fff \u a48d- \u a48f \u a4c7- \u a4ff \u a60d- \u a60f \u a62c- \u a63f \u a660- \u a661 \u a673- \u a67b \u a67e \u a698- \u a6ff \u a78d- \u a7fa \u a82c- \u a83f \u a874- \u a87f \u a8c5- \u a8cf \u a8da- \u a8ff \u a92f \u a954- \u a9ff \u aa37- \u aa3f \
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 ; var validName = this . isValidName ( str ) ; if ( ! validName ) return validName ; if ( ! this . regExp _namedRanges . test ( ch1 ) ) return false ; else { if ( this . regExp _namedSheetsRange . test ( str ) || this . regExp _strOperator . test ( str ) ) return false ; 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 } } ; this . isValidName = function ( str ) { if ( str . length >=
32 || str . length === 0 ) return undefined ; for ( var i = 0 ; i < str . length ; i ++ ) if ( str [ i ] === "'" && ( i === 0 || i === str . length - 1 ) ) return undefined ; else if ( str [ i ] === "]" || str [ i ] === "[" || str [ i ] === ":" || str [ i ] === "?" || str [ i ] === "*" || str [ i ] === "\\" || str [ i ] === "/" ) return undefined ; 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 ) && "_xlnm.print_area" !== 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 ) { 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 , ChangeDocInfo : - 5 , 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 , UploadDocumentContentLength : - 105 , UploadDocumentExtension : - 106 , UploadDocumentCountFiles : - 107 , VKey : - 120 , VKeyEncrypt : - 121 , VKeyKeyExpire : - 122 , VKeyUserCountExceed : - 123 , Password : - 180 } ; var c _oAscImageUploadProp = { MaxFileSize : 25E6 , SupportedFormats : [ "jpg" , "jpeg" , "jpe" , "png" , "gif" , "bmp" ] } ; var c _oAscDocumentUploadProp = { MaxFileSize : 104857600 , SupportedFormats : [ "docx" , "doc" , "docm" , "dot" , "dotm" , "dotx" , "epub" , "fodt" , "odt" , "ott" , "rtf" ,
"wps" ] } ; var c _oAscTextUploadProp = { MaxFileSize : 25E6 , SupportedFormats : [ "txt" , "csv" ] } ; 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 ; 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 . DOCM : return "docm" ; break ; case c _oAscFileType . DOTX : return "dotx" ; break ; case c _oAscFileType . DOTM : return "dotm" ; break ; case c _oAscFileType . FODT : return "fodt" ; break ; case c _oAscFileType . OTT : return "ott" ; break ; case c _oAscFileType . DOCY : return "doct" ;
break ; case c _oAscFileType . CANVAS _WORD : return "bin" ; break ; case c _oAscFileType . JSON : return "json" ; break ; 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 . XLSM : return "xlsm" ; break ; case c _oAscFileType . XLTX : return "xltx" ; break ; case c _oAscFileType . XLTM : return "xltm" ; break ; case c _oAscFileType . FODS : return "fods" ; break ; case c _oAscFileType . OTS : return "ots" ; break ; case c _oAscFileType . XLSY : return "xlst" ;
break ; case c _oAscFileType . PPTX : return "pptx" ; break ; case c _oAscFileType . PPT : return "ppt" ; break ; case c _oAscFileType . ODP : return "odp" ; break ; case c _oAscFileType . PPSX : return "ppsx" ; break ; case c _oAscFileType . PPTM : return "pptm" ; break ; case c _oAscFileType . PPSM : return "ppsm" ; break ; case c _oAscFileType . POTX : return "potx" ; break ; case c _oAscFileType . POTM : return "potm" ; break ; case c _oAscFileType . FODP : return "fodp" ; break ; case c _oAscFileType . OTP : return "otp" ; 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 ) return ;
if ( data [ "subType" ] == "internalCommand" ) switch ( data . data . type ) { case "onbeforedrop" : case "ondrop" : { window . g _asc _plugins . api . privateDropEvent ( data . data ) ; return } default : break } window . g _asc _plugins . sendToAllPlugins ( event . data ) } else if ( data [ "type" ] === "onExternalPluginMessageCallback" ) { if ( ! window . g _asc _plugins ) return ; window . parent && window . parent . postMessage ( event . data , "*" ) } else if ( data [ "type" ] === "emulateUploadInFrame" ) if ( window [ "_private_emulate_upload" ] ) { window [ "_private_emulate_upload" ] ( data [ "name" ] , data [ "content" ] ) ;
window [ "_private_emulate_upload" ] = undefined } } catch ( err ) { } } , false ) } function getAcceptByArray ( arr ) { var res = "." + arr [ 0 ] ; for ( var i = 1 ; i < arr . length ; ++ i ) res += ",." + arr [ i ] ; return res } function _ShowFileDialog ( accept , allowEncryption , allowMultiple , fValidate , callback ) { if ( AscCommon . AscBrowser . isNeedEmulateUpload && window [ "emulateUpload" ] ) { window [ "emulateUpload" ] ( function ( name , content ) { if ( content === "" ) { callback ( Asc . c _oAscError . ID . Unknown ) ; return } var stream = AscFonts . CreateFontData2 ( content ) ; var blob = new Blob ( [ stream . data . slice ( 0 ,
stream . size ) ] ) ; blob . name = name ; blob . fileName = name ; var nError = fValidate ( [ blob ] ) ; callback ( mapAscServerErrorToAscError ( nError ) , [ blob ] ) } , ":<iframe><image>" ) ; return } if ( allowEncryption && AscCommon . EncryptionWorker && AscCommon . EncryptionWorker . isCryptoImages ( ) ) { AscCommon . EncryptionWorker . addCryproImagesFromDialog ( callback ) ; return } if ( "undefined" != typeof FileReader ) { var fileName = GetUploadInput ( accept , allowMultiple , function ( e ) { if ( e && e . target && e . target . files ) { var nError = fValidate ( e . target . files ) ; callback ( mapAscServerErrorToAscError ( nError ) ,
e . target . files ) } else callback ( Asc . c _oAscError . ID . Unknown ) } ) ; fileName . click ( ) } else return false } function ShowImageFileDialog ( documentId , documentUserId , jwt , callback , callbackOld ) { if ( false === _ShowFileDialog ( "image/*" , true , true , ValidateUploadImage , callback ) ) { 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 ( ) ; var 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 ( ) } ; fileName . click ( ) } } function ShowDocumentFileDialog ( callback ) { if ( false ===
_ShowFileDialog ( getAcceptByArray ( c _oAscDocumentUploadProp . SupportedFormats ) , false , false , ValidateUploadDocument , callback ) ) callback ( Asc . c _oAscError . ID . Unknown ) } function ShowTextFileDialog ( callback ) { if ( false === _ShowFileDialog ( getAcceptByArray ( c _oAscTextUploadProp . SupportedFormats ) , false , false , ValidateUploadText , callback ) ) callback ( Asc . c _oAscError . ID . Unknown ) } 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 { var htmlValue =
e . dataTransfer . getData ( "text/html" ) ; if ( htmlValue && ! AscCommon . AscBrowser . isIE ) { 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$11 ) { } try { var textValue =
e . dataTransfer . getData ( "Text" ) ; if ( textValue ) { editor [ "pluginMethod_PasteText" ] ( textValue ) ; return } } catch ( err$12 ) { } } callback ( mapAscServerErrorToAscError ( nError ) , files ) } } } function UploadImageFiles ( files , documentId , documentUserId , jwt , callback ) { window . parent . APP . UploadImageFiles ( files , documentId , documentUserId , jwt , function ( err , urls ) { callback ( err || Asc . c _oAscError . ID . No , urls ) } ) ; return ; if ( files . length > 0 ) { var url = sUploadServiceLocalUrl + "/" + documentId + "/" + documentUserId + "/" + g _oDocumentUrls . getMaxIndex ( ) ; 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 ( ) ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ; xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; xhr . onreadystatechange = fOnReadyChnageState ; xhr . send ( file ) } } else if ( this . status === 403 ) callback ( Asc . c _oAscError . ID . VKeyEncrypt ) ; else callback ( Asc . c _oAscError . ID . UplImageUrl ) } ; var xhr = new XMLHttpRequest ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ;
xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; 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 ( ) ; 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 ( ) ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ;
xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; 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 . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; xhr . onreadystatechange = fOnReadyChnageState ; xhr . send ( file ) } else callback ( Asc . c _oAscError . ID . UplImageFileCount ) } function ValidateUpload ( files , eUploadExtension , eUploadContentLength , eUploadCountFiles ,
c _oAscUploadProp ) { 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 . name ; if ( sName ) { var bSupported = false ; var ext = GetFileExtension ( sName ) ; if ( null !== ext ) for ( var j = 0 , length2 = c _oAscUploadProp . SupportedFormats . length ; j < length2 ; j ++ ) if ( c _oAscUploadProp . SupportedFormats [ j ] == ext ) { bSupported = true ; break } if ( false == bSupported ) nRes = eUploadExtension } if ( Asc . c _oAscError . ID . No == nRes ) { var nSize = file . size ; if ( nSize && c _oAscUploadProp . MaxFileSize <
nSize ) nRes = eUploadContentLength } if ( c _oAscServerError . NoError != nRes ) break } else nRes = eUploadCountFiles ; return nRes } function ValidateUploadImage ( files ) { return ValidateUpload ( files , c _oAscServerError . UploadExtension , c _oAscServerError . UploadContentLength , c _oAscServerError . UploadCountFiles , c _oAscImageUploadProp ) } function ValidateUploadDocument ( files ) { return ValidateUpload ( files , c _oAscServerError . UploadDocumentExtension , c _oAscServerError . UploadDocumentContentLength , c _oAscServerError . UploadDocumentCountFiles ,
c _oAscDocumentUploadProp ) } function ValidateUploadText ( files ) { return ValidateUpload ( files , c _oAscServerError . UploadDocumentExtension , c _oAscServerError . UploadDocumentContentLength , c _oAscServerError . UploadDocumentCountFiles , c _oAscTextUploadProp ) } 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 ( AscCommon . AscBrowser . isSafari ) return true ; 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 ( accept ,
allowMultiple , onchange ) { var inputName = "apiiuFile" ; var input = document . getElementById ( inputName ) ; 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" , accept ) ; input . setAttribute ( "style" , "position:absolute;left:-2px;top:-2px;width:1px;height:1px;z-index:-1000;cursor:pointer;" ) ; if ( allowMultiple ) input . setAttribute ( "multiple" , true ) ; input . onchange =
onchange ; document . body . appendChild ( input ) ; return input } var FormulaSeparators = { arrayRowSeparatorDef : ";" , arrayColSeparatorDef : "," , digitSeparatorDef : "." , functionArgumentSeparatorDef : "," , arrayRowSeparator : ";" , arrayColSeparator : "," , digitSeparator : "." , functionArgumentSeparator : "," } ; var g _oCodeSpace = 32 ; var g _oCodeLineFeed = 10 ; var g _arrCodeOperators = [ 37 , 38 , 42 , 43 , 45 , 47 , 58 , 94 ] ; var g _oStartCodeOperatorsCompare = 60 ; var g _oEndCodeOperatorsCompare = 62 ; var g _oCodeLeftParentheses = 40 ; var g _oCodeRightParentheses = 41 ; var g _oCodeLeftBrace =
123 ; var g _oCodeRightBrace = 125 ; var str _namedRanges = " A - Za - z _\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 - \ u3
str _namedSheetsRange = " \u0001 - & ( - ) + -- ; - > @ ^ ` {- \u 007f \u 0082 \u 0084 \u 008b \u 0092 \u 0095 \u 0098 \u 009b \u 00a0 \u 00a6 \u 00a9 \u 00ab- \u 00ac \u 00ae \u 00bb \u 0378- \u 0379 \u 037e- \u 0383 \u 0387 \u 038b \u 038d \u 03a2 \u 0524- \u 0530 \u 0557- \u 0558 \u 055a- \u 0560 \u 0588- \u 0590 \u 05be \u 05c0 \u 05c3 \u 05c6 \u 05c8- \u 05cf \u 05eb- \u 05ef \u 05f3- \u 05ff \u 0604- \u 0605 \u 0609- \u 060a \u 060c- \u 060d \u 061b- \u 061e \u 0620 \u 065f \u 066a- \u 066d \u 06d4 \u 0700- \u 070e \u 074b- \u 074c \u 07b2- \u 07bf \u 07f7- \u 07f9 \u 07fb- \u 0900 \u 093a- \u 093b \u 094e- \u 094f \u 0955- \u 0957 \u 0964- \u 0965 \u 0970 \u 0973- \u 097a \u 0980 \u 0984 \u 098d- \u 098e \u 0991- \u 0992 \u 09a9 \u 09b1 \u 09b3- \u 09b5 \u 09ba- \u 09bb \u 09c5- \u 09c6 \u 09c9- \u 09ca \u 09cf- \u 09d6 \u 09d8- \u 09db \u 09de \u 09e4- \u 09e5 \u 09fb- \u 0a00 \u 0a04 \u 0a0b- \u 0a0e \u 0a11- \u 0a12 \u 0a29 \u 0a31 \u 0a34 \u 0a37 \u 0a3a- \u 0a3b \u 0a3d \u 0a43- \u 0a46 \u 0a49- \u 0a4a \u 0a4e- \u 0a50 \u 0a52- \u 0a58 \u 0a5d \u 0a5f- \u 0a65 \u 0a76- \u 0a80 \u 0a84 \u 0a8e \u 0a92 \u 0aa9 \u 0ab1 \u 0ab4 \u 0aba- \u 0abb \u 0ac6 \u 0aca \u 0ace- \u 0acf \u 0ad1- \u 0adf \u 0ae4- \u 0ae5 \u 0af0 \u 0af2- \u 0b00 \u 0b04 \u 0b0d- \u 0b0e \u 0b11- \u 0b12 \u 0b29 \u 0b31 \u 0b34 \u 0b3a- \u 0b3b \u 0b45- \u 0b46 \u 0b49- \u 0b4a \u 0b4e- \u 0b55 \u 0b58- \u 0b5b \u 0b5e \u 0b64- \u 0b65 \u 0b72- \u 0b81 \u 0b84 \u 0b8b- \u 0b8d \u 0b91 \u 0b96- \u 0b98 \u 0b9b \u 0b9d \u 0ba0- \u 0ba2 \u 0ba5- \u 0ba7 \u 0bab- \u 0bad \u 0bba- \u 0bbd \u 0bc3- \u 0bc5 \u 0bc9 \u 0bce- \u 0bcf \u 0bd1- \u 0bd6 \u 0bd8- \u 0be5 \u 0bfb- \u 0c00 \u 0c04 \u 0c0d \u 0c11 \u 0c29 \u 0c34 \u 0c3a- \u 0c3c \u 0c45 \u 0c49 \u 0c4e- \u 0c54 \u 0c57 \u 0c5a- \u 0c5f \u 0c64- \u 0c65 \u 0c70- \u 0c77 \u 0c80- \u 0c81 \u 0c84 \u 0c8d \u 0c91 \u 0ca9 \u 0cb4 \u 0cba- \u 0cbb \u 0cc5 \u 0cc9 \u 0cce- \u 0cd4 \u 0cd7- \u 0cdd \u 0cdf \u 0ce4- \u 0ce5 \u 0cf0 \u 0cf3- \u 0d01 \u 0d04 \u 0d0d \u 0d11 \u 0d29 \u 0d3a- \u 0d3c \u 0d45 \u 0d49 \u 0d4e- \u 0d56 \u 0d58- \u 0d5f \u 0d64- \u 0d65 \u 0d76- \u 0d78 \u 0d80- \u 0d81 \u 0d84 \u 0d97- \u 0d99 \u 0db2 \u 0dbc \u 0dbe- \u 0dbf \u 0dc7- \u 0dc9 \u 0dcb- \u 0dce \u 0dd5 \u 0dd7 \u 0de0- \u 0df1 \u 0df4- \u 0e00 \u 0e3b- \u 0e3e \u 0e4f \u 0e5a- \u 0e80 \u 0e83 \u 0e85- \u 0e86 \u 0e89 \u 0e8b- \u 0e8c \u 0e8e- \u 0e93 \u 0e98 \u 0ea0 \u 0ea4 \u 0ea6 \u 0ea8- \u 0ea9 \u 0eac \u 0eba \u 0ebe- \u 0ebf \u 0ec5 \u 0ec7 \u 0ece- \u 0ecf \u 0eda- \u 0edb \u 0ede- \u 0eff \u 0f04- \u 0f12 \u 0f3a- \u 0f3d \u 0f48 \u 0f6d- \u 0f70 \u 0f85 \u 0f8c- \u 0f8f \u 0f98 \u 0fbd \u 0fcd \u 0fd0- \u 0fff \u 104a- \u 104f \u 109a- \u 109d \u 10c6- \u 10cf \u 10fb \u 10fd- \u 10ff \u 115a- \u 115e \u 11a3- \u 11a7 \u 11fa- \u 11ff \u 1249 \u 124e- \u 124f \u 1257 \u 1259 \u 125e- \u 125f \u 1289 \u 128e- \u 128f \u 12b1 \u 12b6- \u 12b7 \u 12bf \u 12c1 \u 12c6- \u 12c7 \u 12d7 \u 1311 \u 1316- \u 1317 \u 135b- \u 135e \u 1361- \u 1368 \u 137d- \u 137f \u 139a- \u 139f \u 13f5- \u 1400 \u 166d- \u 166e \u 1677- \u 167f \u 169b- \u 169f \u 16eb- \u 16ed \u 16f1- \u 16ff \u 170d \u 1715- \u 171f \u 1735- \u 173f \u 1754- \u 175f \u 176d \u 1771 \u 1774- \u 177f \u 17d4- \u 17d6 \u 17d8- \u 17da \u 17de- \u 17df \u 17ea- \u 17ef \u 17fa- \u 180a \u 180f \u 181a- \u 181f \u 1878- \u 187f \u 18ab- \u 18ff \u 191d- \u 191f \u 192c- \u 192f \u 193c- \u 193f \u 1941- \u 1945 \u 196e- \u 196f \u 1975- \u 197f \u 19aa- \u 19af \u 19ca- \u 19cf \u 19da- \u 19df \u 1a1c- \u 1aff \u 1b4c- \u 1b4f \u 1b5a- \u 1b60 \u 1b7d- \u 1b7f \u 1bab- \u 1bad \u 1bba- \u 1bff \u 1c38- \u 1c3f \u 1c4a- \u 1c4c \u 1c7e- \u 1cff \u 1de7- \u 1dfd \u 1f16- \u 1f17 \u 1f1e- \u 1f1f \u 1f46- \u 1f47 \u 1f4e- \u 1f4f \u 1f58 \u 1f5a \u 1f5c \u 1f5e \u 1f7e- \u 1f7f \u 1fb5 \u 1fc5 \u 1fd4- \u 1fd5 \u 1fdc \u 1ff0- \u 1ff1 \u 1ff5 \u 1fff \u 200e \u 2011- \u 2012 \u 2017 \u 2019- \u 201b \u 201e- \u 201f \u 2022- \u 2024 \u 2031 \u 2034 \u 2036- \u 203a \u 203c- \u 2043 \u 2045- \u 2051 \u 2053- \u 205e \u 2065- \u 2069 \u 2072- \u 2073 \u 207d- \u 207e \u 208d- \u 208f \u 2095- \u 209f \u 20b6- \u 20cf \u 20f1- \u 20ff \u 2150- \u 2152 \u 2189- \u 218f \u 2329- \u 232a \u 23e8- \u 23ff \u 2427- \u 243f \u 244b- \u 245f \u 269e- \u 269f \u 26bd- \u 26bf \u 26c4- \u 2700 \u 2705 \u 270a- \u 270b \u 2728 \u 274c \u 274e \u 2753- \u 2755 \u 2757 \u 275f- \u 2760 \u 2768- \u 2775 \u 2795- \u 2797 \u 27b0 \u 27bf \u 27c5- \u 27c6 \u 27cb \u 27cd- \u 27cf \u 27e6- \u 27ef \u 2983- \u 2998 \u 29d8- \u 29db \u 29fc- \u 29fd \u 2b4d- \u 2b4f \u 2b55- \u 2bff \u 2c2f \u 2c5f \u 2c70 \u 2c7e- \u 2c7f \u 2ceb- \u 2cfc \u 2cfe- \u 2cff \u 2d26- \u 2d2f \u 2d66- \u 2d6e \u 2d70- \u 2d7f \u 2d97- \u 2d9f \u 2da7 \u 2daf \u 2db7 \u 2dbf \u 2dc7 \u 2dcf \u 2dd7 \u 2ddf \u 2e00- \u 2e2e \u 2e30- \u 2e7f \u 2e9a \u 2ef4- \u 2eff \u 2fd6- \u 2fef \u 2ffc- \u 2fff \u 3018- \u 301c \u 3030 \u 303d \u 3040 \u 3097- \u 3098 \u 30a0 \u 3100- \u 3104 \u 312e- \u 3130 \u 318f \u 31b8- \u 31bf \u 31e4- \u 31ef \u 321f \u 3244- \u 324f \u 32ff \u 4db6- \u 4dbf \u 9fc4- \u 9fff \u a48d- \u a48f \u a4c7- \u a4ff \u a60d- \u a60f \u a62c- \u a63f \u a660- \u a661 \u a673- \u a67b \u a67e \u a698- \u a6ff \u a78d- \u a7fa \u a82c- \u a83f \u a874- \u a87f \u a8c5- \u a8cf \u a8da- \u a8ff \u a92f \u a954- \u a9ff \u aa37- \
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 _non _quoted _2 = new XRegExp ( "^(?<name_from>[" + str _namedRanges + "\\d][" + str _namedRanges + "\\d.]*)(:(?<name_to>[" + str _namedRanges + "\\d][" + str _namedRanges + "\\d.]*))?!" , "i" ) , 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 - Z a - z \ x A A \ x B 5 \ x B A \ x C 0 - \ x D 6 \ x D 8 - \ x F 6 \ x F 8 - \ u 0 2 C 1 \ u 0 2 C 6 - \ u 0 2 D 1 \ u 0 2 E 0 - \ u 0 2 E 4 \ u 0 2 E C \ u 0 2 E E \ u 0 3 4 5 \ u 0 3 7 0 - \ u 0 3 7 4 \ u 0 3 7 6 \ u 0 3 7 7 \ u 0 3 7 A - \ u 0 3 7 D \ u 0 3 8 6 \ u 0 3 8 8 - \ u 0 3 8 A \ u 0 3 8 C \ u 0 3 8 E - \ u 0 3 A 1 \ u 0 3 A 3 - \ u 0 3 F 5 \ u 0 3 F 7 - \ u 0 4 8 1 \ u 0 4 8 A - \ u 0 5 2 7 \ u 0 5 3 1 - \ u 0 5 5 6 \ u 0 5 5 9 \ u 0 5 6 1 - \ u 0 5 8 7 \ u 0 5 B 0 - \ u 0 5 B D \ u 0 5 B F \ u 0 5 C 1 \ u 0 5 C 2 \ u 0 5 C 4 \ u 0 5 C 5 \ u 0 5 C 7 \ u 0 5 D 0 - \ u 0 5 E A \ u 0 5 F 0 - \ u 0 5 F 2 \ u 0 6 1 0 - \ u 0 6 1 A \ u 0 6 2 0 - \ u 0 6 5 7 \ u 0 6 5 9 - \ u 0 6 5 F \ u 0 6 6 E - \ u 0 6 D 3 \ u 0 6 D 5 - \ u 0 6 D C \ u 0 6 E 1 - \ u 0 6 E 8 \ u 0 6 E D - \ u 0 6 E F \ u 0 6 F A - \ u 0 6 F C \ u 0 6 F F \ u 0 7 1 0 - \ u 0 7 3 F \ u 0 7 4 D - \ u 0 7 B 1 \ u 0 7 C A - \ u 0 7 E A \ u 0 7 F 4 \ u 0 7 F 5 \ u 0 7 F A \ u 0 8 0 0 - \ u 0 8 1 7 \ u 0 8 1 A - \ u 0 8 2 C \ u 0 8 4 0 - \ u 0 8 5 8 \ u 0 8 A 0 \ u 0 8 A 2 - \ u 0 8 A C \ u 0 8 E 4 - \ u 0 8 E 9 \ u 0 8 F 0 - \ u 0 8 F E \ u 0 9 0 0 - \ u 0 9 3 B \ u 0 9 3 D - \ u 0 9 4 C \ u 0 9 4 E - \ u 0 9 5 0 \ u 0 9 5 5 - \ u 0 9 6 3 \ u 0 9 7 1 - \ u 0 9 7 7 \ u 0 9 7 9 - \ u 0 9 7 F \ u 0 9 8 1 - \ u 0 9 8 3 \ u 0 9 8 5 - \ u 0 9 8 C \ u 0 9 8 F \ u 0 9 9 0 \ u 0 9 9 3 - \ u 0 9 A 8 \ u 0 9 A A - \ u 0 9 B 0 \ u 0 9 B 2 \ u 0 9 B 6 - \ u 0 9 B 9 \ u 0 9 B D - \ u 0 9 C 4 \ u 0 9 C 7 \ u 0 9 C 8 \ u 0 9 C B \ u 0 9 C C \ u 0 9 C E \ u 0 9 D 7 \ u 0 9 D C \ u 0 9 D D \ u 0 9 D F - \ u 0 9 E 3 \ u 0 9 F 0 \ u 0 9 F 1 \ u 0 A 0 1 - \ u 0 A 0 3 \ u 0 A 0 5 - \ u 0 A 0 A \ u 0 A 0 F \ u 0 A 1 0 \ u 0 A 1 3 - \ u 0 A 2 8 \ u 0 A 2 A - \ u 0 A 3 0 \ u 0 A 3 2 \ u 0 A 3 3 \ u 0 A 3 5 \ u 0 A 3 6 \ u 0 A 3 8 \ u 0 A 3 9 \ u 0 A 3 E - \ u 0 A 4 2 \ u 0 A 4 7 \ u 0 A 4 8 \ u 0 A 4 B \ u 0 A 4 C \ u 0 A 5 1 \ u 0 A 5 9 - \ u 0 A 5 C \ u 0 A 5 E \ u 0 A 7 0 - \ u 0 A 7 5 \ u 0 A 8 1 - \ u 0 A 8 3 \ u 0 A 8 5 - \ u 0 A 8 D \ u 0 A 8 F - \ u 0 A 9 1 \ u 0 A 9 3 - \ u 0 A A 8 \ u 0 A A A - \ u 0 A B 0 \ u 0 A B 2 \ u 0 A B 3 \ u 0 A B 5 - \ u 0 A B 9 \ u 0 A B D - \ u 0 A C 5 \ u 0 A C 7 - \ u 0 A C 9 \ u 0 A C B \ u 0 A C C \ u 0 A D 0 \ u 0 A E 0 - \ u 0 A E 3 \ u 0 B 0 1 - \ u 0 B 0 3 \ u 0 B 0 5 - \ u 0 B 0 C \ u 0 B 0 F \ u 0 B 1 0 \ u 0 B 1 3 - \ u 0 B 2 8 \ u 0 B 2 A - \ u 0 B 3 0 \ u 0 B 3 2 \ u 0 B 3 3 \ u 0 B 3 5 - \ u 0 B 3 9 \ u 0 B 3 D - \ u 0 B 4 4 \ u 0 B 4 7 \ u 0 B 4 8 \ u 0 B 4 B \ u 0 B 4 C \ u 0 B 5 6 \ u 0 B 5 7 \ u 0 B 5 C \ u 0 B 5 D \ u 0 B 5 F - \ u 0 B 6 3 \ u 0 B 7 1 \ u 0 B 8 2 \ u 0 B 8 3 \ u 0 B 8 5 - \ u 0 B 8 A \ u 0 B 8 E - \ u 0 B 9 0 \ u 0 B 9 2 - \ u 0 B 9 5 \ u 0 B 9 9 \ u 0 B 9 A \ u 0 B 9 C \ u 0 B 9 E \ u 0 B 9 F \ u 0 B A 3 \ u 0 B A 4 \ u 0 B A 8 - \ u 0 B A A \ u 0 B A E - \ u 0 B B 9 \ u 0 B B E - \ u 0 B C 2 \ u 0 B C 6 - \ u 0 B C 8 \ u 0 B C A - \ u 0 B C C \ u 0 B D 0 \ u 0 B D 7 \ u 0 C 0 1 - \ u 0 C 0 3 \ u 0 C 0 5 - \ u 0 C 0 C \ u 0 C 0 E - \ u 0 C 1 0 \ u 0 C 1 2 - \ u 0 C 2 8 \ u 0 C 2 A - \ u 0 C 3 3 \ u 0 C 3 5 - \ u 0 C 3 9 \ u 0 C 3 D - \ u 0 C 4 4 \ u 0 C 4 6 - \ u 0 C 4 8 \ u 0 C 4 A - \ u 0 C 4 C \ u 0 C 5 5 \ u 0 C 5 6 \ u 0 C 5 8 \ u 0 C 5 9 \ u 0 C 6 0 - \ u 0 C 6 3 \ u 0 C 8 2 \ u 0 C 8 3 \ u 0 C 8 5 - \ u 0 C 8 C \ u 0 C 8 E - \ u 0 C 9 0 \ u 0 C 9 2 - \ u 0 C A 8 \ u 0 C A A - \ u 0 C B 3 \ u 0 C B 5 - \ u 0 C B 9 \ u 0 C B D - \ u 0 C C 4 \ u 0 C C 6 - \ u 0 C C 8 \ u 0 C C A - \ u 0 C C C \ u 0 C D 5 \ u 0 C D 6 \ u 0 C D E \ u 0 C E 0 - \ u 0 C E 3 \ u 0 C F 1 \ u 0 C F 2 \ u 0 D 0 2 \ u 0 D 0 3 \ u 0 D 0 5 - \ u 0 D 0 C \ u 0 D 0 E - \ u 0 D 1 0 \ u 0 D 1 2 - \ u 0 D 3 A \ u 0 D 3 D - \ u 0 D 4 4 \ u 0 D 4 6 - \ u 0 D 4 8 \ u 0 D 4 A - \ u 0 D 4 C \ u 0 D 4 E \ u 0 D 5 7 \ u 0 D 6 0 - \ u 0 D 6 3 \ u 0 D 7 A - \ u 0 D 7 F \ u 0 D 8 2 \ u 0 D 8 3 \ u 0 D 8 5 - \ u 0 D 9 6 \ u 0 D 9 A - \ u 0 D B 1 \ u 0 D B 3 - \ u 0 D B B \ u 0 D B D \ u 0 D C 0 - \ u 0 D C 6 \ u 0 D C F - \ u 0 D D 4 \ u 0 D D 6 \ u 0 D D 8 - \ u 0 D D F \ u 0 D F 2 \ u 0 D F 3 \ u 0 E 0 1 - \ u 0 E 3 A \ u 0 E 4 0 - \ u 0 E 4 6 \ u 0 E 4 D \ u 0 E 8 1 \ u 0 E 8 2 \ u 0 E 8 4 \ u 0 E 8 7 \ u 0 E 8 8 \ u 0 E 8 A \ u 0 E 8 D \ u 0 E 9 4 - \ u 0 E 9 7 \ u 0 E 9 9 - \ u 0 E 9 F \ u 0 E A 1 - \ u 0 E A 3 \ u 0 E A 5 \ u 0 E A 7 \ u 0 E A A \ u 0 E A B \ u 0 E A D - \ u 0 E B 9 \ u 0 E B B - \ u 0 E B D \ u 0 E C 0 - \ u 0 E C 4 \ u 0 E C 6 \ u 0 E C D \ u 0 E D C - \ u 0 E D F \ u 0 F 0 0 \ u 0 F 4 0 - \ u 0 F 4 7 \ u 0 F 4 9 - \ u 0 F 6 C \ u 0 F 7 1 - \ u 0 F 8 1 \ u 0 F 8 8 - \ u 0 F 9 7 \ u 0 F 9 9 - \ u 0 F B C \ u 1 0 0 0 - \ u 1 0 3 6 \ u 1 0 3 8 \ u 1 0 3 B - \ u 1 0 3 F \ u 1 0 5 0 - \ u 1 0 6 2 \ u 1 0 6 5 - \ u 1 0 6 8 \ u 1 0 6 E - \ u 1 0 8 6 \ u 1 0 8 E \ u 1 0 9 C \ u 1 0 9 D \ u 1 0 A 0 - \ u 1 0 C 5 \ u 1 0 C 7 \ u 1 0 C D \ u 1 0 D 0 - \ u 1 0 F A \ u 1 0 F C - \ u 1 2 4 8 \ u 1 2 4 A - \ u 1 2 4 D \ u 1 2 5 0 - \ u 1 2 5 6 \ u 1 2 5 8 \ u 1 2 5 A - \ u 1 2 5 D \ u 1 2 6 0 - \ u 1 2 8 8 \ u 1 2 8 A - \ u 1 2 8 D \ u 1 2 9 0 - \ u 1 2 B 0 \ u 1 2 B 2 - \ u 1 2 B 5 \ u 1 2 B 8 - \ u 1 2 B E \ u 1 2 C 0 \ u 1 2 C 2 - \ u 1 2 C 5 \ u 1 2 C 8 - \ u 1 2 D 6 \ u 1 2 D 8 - \ u 1 3 1 0 \ u 1 3 1 2 - \ u 1 3 1 5 \ u 1 3 1 8 - \ u 1 3 5 A \ u 1 3 5 F \ u 1 3 8 0 - \ u 1 3 8 F \ u 1 3 A 0 - \ u 1 3 F 4 \ u 1 4 0 1 - \ u 1 6 6 C \ u 1 6 6 F - \ u 1 6 7 F \ u 1 6 8 1 - \ u 1 6 9 A \ u 1 6 A 0 - \ u 1 6 E A \ u 1 6 E E - \ u 1 6 F 0 \ u 1 7 0 0 - \ u 1 7 0 C \ u 1 7 0 E - \ u 1 7 1 3 \ u 1 7 2 0 - \ u 1 7 3 3 \ u 1 7 4 0 - \ u 1 7 5 3 \ u 1 7 6 0 - \ u 1 7 6 C \ u 1 7 6 E - \ u 1 7 7 0 \ u 1 7 7 2 \ u 1 7 7 3 \ u 1 7 8 0 - \ u 1 7 B 3 \ u 1 7 B 6 - \ u 1 7 C 8 \ u 1 7 D 7 \ u 1 7 D C \ u 1 8 2 0 - \ u 1 8 7 7 \ u 1 8 8 0 - \ u 1 8 A A \ u 1 8 B 0 - \ u 1 8 F 5 \ u 1 9 0 0 - \ u 1 9 1 C \ u 1 9 2 0 - \ u 1 9 2 B \ u 1 9 3 0 - \ u 1 9 3 8 \ u 1 9 5 0 - \ u 1 9 6 D \ u 1 9 7 0 - \ u 1 9 7 4 \ u 1 9 8 0 - \ u 1 9 A B \ u 1 9 B 0 - \ u 1 9 C 9 \ u 1 A 0 0 - \ u 1 A 1 B \ u 1 A 2 0 - \ u 1 A 5 E \ u 1 A 6 1 - \ u 1 A 7 4 \ u 1 A A 7 \ u 1 B 0 0 - \ u 1 B 3 3 \ u 1 B 3 5 - \ u 1 B 4 3 \ u 1 B 4 5 - \ u 1 B 4 B \ u 1 B 8 0 - \ u 1 B A 9 \ u 1 B A C - \ u 1 B A F \ u 1 B B A - \ u 1 B E 5 \ u 1 B E 7 - \ u 1 B F 1 \ u 1 C 0 0 - \ u 1 C 3 5 \ u 1 C 4 D - \ u 1 C 4 F \ u 1 C 5 A - \ u 1 C 7 D \ u 1 C E 9 - \ u 1 C E C \ u 1 C E E - \ u 1 C F 3 \ u 1 C F 5 \ u 1 C F 6 \ u 1 D 0 0 - \ u 1 D B F \ u 1 E 0 0 - \ u 1 F 1 5 \ u 1 F 1 8 - \ u 1 F 1 D \ u 1 F 2 0 - \ u 1 F 4 5 \ u 1 F 4 8 - \ u 1 F 4 D \ u 1 F 5 0 - \ u 1 F 5 7 \ u 1 F 5 9 \ u 1 F 5 B \ u 1 F 5 D \ u 1 F 5 F - \ u 1 F 7 D \ u 1 F 8 0 - \ u 1 F B 4 \ u 1 F B 6 - \ u 1 F B C \ u 1 F B E \ u 1 F C 2 - \ u 1 F C 4 \ u 1 F C 6 - \ u 1 F C C \ u 1 F D 0 - \ u 1 F D 3 \ u 1 F D 6 - \ u 1 F D B \ u 1 F E 0 - \ u 1 F E C \ u 1 F F 2 - \ u 1 F F 4 \ u 1 F F 6 - \ u 1 F F C \ u 2 0 7 1 \ u 2 0 7 F \ u 2 0 9 0 - \ u 2 0 9 C \ u 2 1 0 2 \ u 2 1 0 7 \ u 2 1 0 A - \ u 2 1 1 3 \ u 2 1 1 5 \ u 2 1 1 9 - \ u 2 1 1 D \ u 2 1 2 4 \ u 2 1 2 6 \ u 2 1 2 8 \ u 2 1 2 A - \ u 2 1 2 D \ u 2 1 2 F - \ u 2 1 3 9 \ u 2 1 3 C - \ u 2 1 3 F \ u 2 1 4 5 - \ u 2 1 4 9 \ u 2 1 4 E \ u 2 1 6 0 - \ u 2 1 8 8 \ u 2 4 B 6 - \ u 2 4 E 9 \ u 2 C 0 0 - \ u 2 C 2 E \ u 2 C 3 0 - \ u 2 C 5 E \ u 2 C 6 0 - \ u 2 C E 4 \ u 2 C E B - \ u 2 C E E \ u 2 C F 2 \ u 2 C F 3 \ u 2 D 0 0 - \ u 2 D 2 5 \ u 2 D 2 7 \ u 2 D 2 D \ u 2 D 3 0 - \ u 2 D 6 7 \ u 2 D 6 F \ u 2 D 8 0 - \ u 2 D 9 6 \ u 2 D A 0 - \ u 2 D A 6 \ u 2 D A 8 - \ u 2 D A E \ u 2 D B 0 - \ u 2 D B 6 \ u 2 D B 8 - \ u 2 D B E \ u 2 D C 0 - \ u 2 D C 6 \ u 2 D C 8 - \ u 2 D C E \ u 2 D D 0 - \ u 2 D D 6 \ u 2 D D 8 - \ u 2 D D E \ u 2 D E 0 - \ u 2 D F F \ u 2 E 2 F \ u 3 0 0 5 - \ u 3 0 0 7 \ u 3 0 2 1 - \ u 3 0 2 9 \ u 3 0 3 1 - \ u 3 0 3 5 \ u 3 0 3 8 - \ u 3 0 3 C \ u 3 0 4 1 - \ u 3 0 9 6 \ u 3 0 9 D - \ u 3 0 9 F \ u 3 0 A 1 - \ u 3 0 F A \ u 3 0 F C - \ u 3 0 F F \ u 3 1 0 5 - \ u 3 1 2 D \ u 3 1 3 1 - \ u 3 1 8 E \ u 3 1 A 0 - \ u 3 1
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-\u044f\u04510-9\._%+-=\? :&]*)/i , ipRe = /^(((https?)|(ftps?)):\/\/)?([\-\w\u0430-\u044f\u0451]*:?[\-\w\u0430-\u044f\u0451]*@)?(((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\u0430-\u044f\u0451]*(\.[\w\u0430-\u044f\u0451]{2,})?(([\w\u0430-\u044f\u0451\-\.\?\\\/+@&#;:`~=%!,\(\)]*)(\.[\w\u0430-\u044f\u0451]{2,})?)*)*\/?/i ,
hostnameRe = /^(((https?)|(ftps?)):\/\/)?([\-\w\u0430-\u044f\u0451]*:?[\-\w\u0430-\u044f\u0451]*@)?(([\-\w\u0430-\u044f\u0451]+\.)+[\w\u0430-\u044f\u0451\-]{2,}(:\d+)?(\/[%\-\w\u0430-\u044f\u0451]*(\.[\w\u0430-\u044f\u0451]{2,})?(([\w\u0430-\u044f\u0451\-\.\?\\\/+@&#;:`'~=%!,\(\)]*)(\.[\w\u0430-\u044f\u0451]{2,})?)*)*\/?)/i , localRe = /^(((https?)|(ftps?)):\/\/)([\-\w\u0430-\u044f\u0451]*:?[\-\w\u0430-\u044f\u0451]*@)?(([\-\w\u0430-\u044f\u0451]+)(:\d+)?(\/[%\-\w\u0430-\u044f\u0451]*(\.[\w\u0430-\u044f\u0451]{2,})?(([\w\u0430-\u044f\u0451\-\.\?\\\/+@&#;:`'~=%!,\(\)]*)(\.[\w\u0430-\u044f\u0451]{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" ) , " " ) } 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 ) { 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 = "" ; var getColStr = function ( ) { var col ; if ( c < 0 ) { var tempCol = ! isAbsCol && activeCell ? activeCell . c1 + 1 + c : c ; if ( tempCol <=
0 ) tempCol = AscCommon . gc _nMaxCol + tempCol ; col = g _oCellAddressUtils . colnumToColstrFromWsView ( tempCol ) } else col = g _oCellAddressUtils . colnumToColstrFromWsView ( ! isAbsCol && activeCell ? activeCell . c1 + 1 + c : c ) ; return col } ; var getRowStr = function ( ) { var row ; if ( r < 0 ) { var tempRow = ! isAbsRow && activeCell ? activeCell . r1 + 1 + r : r ; if ( tempRow <= 0 ) tempRow = AscCommon . gc _nMaxRow + tempRow ; row = tempRow + "" } else row = ! isAbsRow && activeCell ? activeCell . r1 + 1 + r + "" : r + "" ; return row } ; if ( r !== null && c !== null ) { if ( isNaN ( r ) ) { r = 0 ; isAbsRow = false } if ( isNaN ( c ) ) { c =
0 ; isAbsCol = false } colStr = getColStr ( ) ; rowStr = getRowStr ( ) ; if ( isAbsCol ) colStr = "$" + colStr ; if ( isAbsRow ) rowStr = "$" + rowStr ; res = colStr + rowStr } else if ( c !== null ) { if ( isNaN ( c ) ) { c = 0 ; isAbsCol = false } colStr = getColStr ( ) ; if ( isAbsCol ) colStr = "$" + colStr ; res = colStr } else if ( r !== null ) { if ( isNaN ( r ) ) { r = 0 ; isAbsRow = false } rowStr = getRowStr ( ) ; 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 , support _digital _start ) { 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 && support _digital _start ) match = XRegExp . exec ( subSTR , rx _ref3D _non _quoted _2 ) ; 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 ] ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isName = function ( formula , start _pos ) { 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 ) { this . pCurrPos += name . length ; this . operand _str = name ; return true } this . operand _str = name } return false } ; parserHelper . prototype . isName3D = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var _is3DRef = this . is3DRef ( formula , start _pos ) ; if ( _is3DRef && _is3DRef [ 0 ] && _is3DRef [ 1 ] && _is3DRef [ 1 ] . length ) { var _startPos = this . pCurrPos ;
var _isArea = this . isArea ( formula , _startPos ) ; var _isRef = ! _isArea && this . isRef ( formula , _startPos ) ; return ! _isRef && ! _isArea && this . isName ( formula , _startPos ) } 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 ] ; 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 , "''" ) + "'" } ; parserHelper . prototype . checkDataRange =
function ( model , wb , dialogType , dataRange , fullCheck , isRows , subType ) { var result , range , sheetModel , checkChangeRange ; if ( Asc . c _oAscSelectionDialogType . Chart === dialogType ) { if ( dataRange ) if ( Asc . c _oAscError . ID . No === AscFormat . isValidChartRange ( dataRange ) ) range = AscFormat . fParseChartFormulaExternal ( dataRange ) } else if ( Asc . c _oAscSelectionDialogType . PivotTableData === dialogType || Asc . c _oAscSelectionDialogType . PivotTableReport === dialogType ) { result = parserHelp . parse3DRef ( dataRange ) ; if ( result ) { sheetModel = model . getWorksheetByName ( result . sheet ) ;
if ( sheetModel ) range = AscCommonExcel . g _oRangeCache . getAscRange ( result . range ) } else if ( Asc . c _oAscSelectionDialogType . PivotTableReport === dialogType ) range = AscCommonExcel . g _oRangeCache . getAscRange ( dataRange ) ; if ( ! range ) range = AscCommon . rx _defName . test ( dataRange ) ; if ( ! range ) range = parserHelp . isTable ( dataRange , 0 , true ) } else if ( Asc . c _oAscSelectionDialogType . PrintTitles === dialogType ) if ( dataRange === "" ) return Asc . c _oAscError . ID . No ; else range = AscCommonExcel . g _oRangeCache . getAscRange ( dataRange ) ; else if ( Asc . c _oAscSelectionDialogType . DataValidation ===
dialogType ) if ( dataRange === null || dataRange === "" ) return Asc . c _oAscError . ID . DataValidateMustEnterValue ; else { if ( typeof dataRange === "string" ) { 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 && Asc . c _oAscSelectionDialogType . DataValidation !== dialogType && Asc . c _oAscSelectionDialogType . ConditionalFormattingRule !==
dialogType ) return Asc . c _oAscError . ID . DataRangeError ; if ( fullCheck ) if ( Asc . c _oAscSelectionDialogType . Chart === dialogType ) { var oDataRefs = new AscFormat . CChartDataRefs ( null ) ; return oDataRefs . checkDataRange ( dataRange , isRows , subType ) } else if ( Asc . c _oAscSelectionDialogType . FormatTable === dialogType ) if ( true === wb . getWorksheet ( ) . model . autoFilters . isRangeIntersectionTableOrFilter ( range ) ) return Asc . c _oAscError . ID . AutoFilterDataRangeError ; else if ( wb . getWorksheet ( ) . intersectionFormulaArray ( range , true , true ) ) return Asc . c _oAscError . ID . MultiCellsInTablesFormulaArray ;
else { if ( range && Asc . c _oAscSelectionType . RangeCells !== range . getType ( ) ) return Asc . c _oAscError . ID . LargeRangeWarning } else if ( Asc . c _oAscSelectionDialogType . FormatTableChangeRange === dialogType ) { checkChangeRange = wb . getWorksheet ( ) . af _checkChangeRange ( range ) ; if ( null !== checkChangeRange ) return checkChangeRange } else if ( Asc . c _oAscSelectionDialogType . CustomSort === dialogType ) { checkChangeRange = wb . getWorksheet ( ) . checkCustomSortRange ( range , isRows ) ; if ( null !== checkChangeRange ) return checkChangeRange } else if ( Asc . c _oAscSelectionDialogType . PivotTableData ===
dialogType ) { if ( ! Asc . CT _pivotTableDefinition . prototype . isValidDataRef ( dataRange ) ) return c _oAscError . ID . PivotLabledColumns } else if ( Asc . c _oAscSelectionDialogType . PivotTableReport === dialogType ) { var location = Asc . CT _pivotTableDefinition . prototype . parseDataRef ( dataRange ) ; if ( location ) { sheetModel = location . ws ; if ( ! sheetModel ) sheetModel = model . getActiveWs ( ) ; var newRange = new Asc . Range ( location . bbox . c1 , location . bbox . r1 , location . bbox . c1 + AscCommonExcel . NEW _PIVOT _LAST _COL _OFFSET , location . bbox . r1 + AscCommonExcel . NEW _PIVOT _LAST _ROW _OFFSET ) ;
return sheetModel . checkPivotReportLocationForError ( [ newRange ] ) } else return Asc . c _oAscError . ID . DataRangeError } else if ( Asc . c _oAscSelectionDialogType . DataValidation === dialogType ) { var dataValidaionTest = AscCommonExcel . CDataValidation . prototype . isValidDataRef ( model . getActiveWs ( ) , dataRange , subType ) ; if ( null !== dataValidaionTest ) return dataValidaionTest } else if ( Asc . c _oAscSelectionDialogType . ConditionalFormattingRule === dialogType ) if ( dataRange === null || dataRange === "" ) return Asc . c _oAscError . ID . DataRangeError ; else { if ( dataRange [ 0 ] ===
"=" ) dataRange = dataRange . slice ( 1 ) ; if ( ! parserHelp . isArea ( dataRange ) && ! parserHelp . isRef ( dataRange ) && ! parserHelp . isTable ( dataRange ) ) return Asc . c _oAscError . ID . DataRangeError } 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" , "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 ) { httpRequest = new XMLHttpRequest ; if ( httpRequest . overrideMimeType && dataType ) httpRequest . overrideMimeType ( dataType ) } else if ( window . ActiveXObject ) try { httpRequest = new ActiveXObject ( "Msxml2.XMLHTTP" ) } catch ( e$13 ) { 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 : break ; case 1 : break ; case 2 : break ; case 3 : 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 ; this . m _nIdCounterEdit = 0 } 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 ; this . m _nIdCounterEdit = 0 } ; 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 ) { 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 ( ) ) } 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 ] . GetLock ( ) === 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 CurPos -- } else 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 CurPos -- ; else 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 for ( var Index = 0 ; Index < Count ; Index ++ ) Positions [ Index ] = Pos ; return Positions } ; function CorrectMMToTwips ( mm ) { return ( mm * 20 * 72 / 25.4 + . 5 | 0 ) * 25.4 / 20 / 72 } function TwipsToMM ( nTwips ) { return ( null !==
nTwips && undefined !== nTwips ? nTwips : 1 ) * 25.4 / 20 / 72 } function MMToTwips ( mm ) { return mm * 20 * 72 / 25.4 + . 5 | 0 } 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" : 1E3 , "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 } 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 ) } function IntToNumberFormat ( nValue , nFormat ) { var sResult = "" ; switch ( nFormat ) { case Asc . c _oAscNumberingFormat . Bullet : { break } case Asc . c _oAscNumberingFormat . Decimal : { sResult = "" + nValue ; break } case Asc . c _oAscNumberingFormat . DecimalZero : { sResult =
"" + nValue ; if ( 1 === sResult . length ) sResult = "0" + sResult ; break } case Asc . c _oAscNumberingFormat . DecimalEnclosedCircle : { if ( nValue <= 20 ) sResult = String . fromCharCode ( 9312 + nValue - 1 ) ; else sResult = "" + nValue ; break } case Asc . c _oAscNumberingFormat . LowerLetter : case Asc . c _oAscNumberingFormat . UpperLetter : { var Num = nValue - 1 ; var Count = ( Num - Num % 26 ) / 26 ; var Ost = Num % 26 ; var Letter ; if ( Asc . c _oAscNumberingFormat . LowerLetter === nFormat ) Letter = String . fromCharCode ( Ost + 97 ) ; else Letter = String . fromCharCode ( Ost + 65 ) ; for ( var nIndex = 0 ; nIndex <
Count + 1 ; ++ nIndex ) sResult += Letter ; break } case Asc . c _oAscNumberingFormat . RussianLower : case Asc . c _oAscNumberingFormat . RussianUpper : { var Num = nValue - 1 ; var Count = ( Num - Num % 29 ) / 29 ; var Ost = Num % 29 ; if ( Ost > 25 ) Ost += 3 ; else if ( Ost > 24 ) Ost += 2 ; else if ( Ost > 8 ) Ost ++ ; var Letter ; if ( Asc . c _oAscNumberingFormat . RussianLower === nFormat ) Letter = String . fromCharCode ( Ost + 1072 ) ; else Letter = String . fromCharCode ( Ost + 1040 ) ; for ( var nIndex = 0 ; nIndex < Count + 1 ; ++ nIndex ) sResult += Letter ; break } case Asc . c _oAscNumberingFormat . LowerRoman : case Asc . c _oAscNumberingFormat . UpperRoman : { var Num =
nValue ; var Rims ; if ( Asc . c _oAscNumberingFormat . LowerRoman === nFormat ) Rims = [ "m" , "cm" , "d" , "cd" , "c" , "xc" , "l" , "xl" , "x" , "ix" , "v" , "iv" , "i" , " " ] ; else Rims = [ "M" , "CM" , "D" , "CD" , "C" , "XC" , "L" , "XL" , "X" , "IX" , "V" , "IV" , "I" , " " ] ; var Vals = [ 1E3 , 900 , 500 , 400 , 100 , 90 , 50 , 40 , 10 , 9 , 5 , 4 , 1 , 0 ] ; var nIndex = 0 ; while ( Num > 0 ) { while ( Vals [ nIndex ] <= Num ) { sResult += Rims [ nIndex ] ; Num -= Vals [ nIndex ] } nIndex ++ ; if ( nIndex >= Rims . length ) break } break } case Asc . c _oAscNumberingFormat . ChineseCounting : { var arrChinese = [ String . fromCharCode ( 9675 ) , String . fromCharCode ( 19968 ) ,
String . fromCharCode ( 20108 ) , String . fromCharCode ( 19977 ) , String . fromCharCode ( 22235 ) , String . fromCharCode ( 20116 ) , String . fromCharCode ( 20845 ) , String . fromCharCode ( 19971 ) , String . fromCharCode ( 20843 ) , String . fromCharCode ( 20061 ) , String . fromCharCode ( 21313 ) ] ; var nQuotient = nValue / 10 | 0 ; var nRemainder = nValue - nQuotient * 10 ; if ( nQuotient < 10 && nQuotient > 0 ) { if ( 0 !== nRemainder ) sResult = arrChinese [ nRemainder ] + sResult ; sResult = arrChinese [ 10 ] + sResult ; if ( 1 === nQuotient ) nQuotient = 0 } else sResult = arrChinese [ nRemainder ] + sResult ; var nRemValue =
nQuotient ; while ( nQuotient > 0 ) { nQuotient = nRemValue / 10 | 0 ; nRemainder = nRemValue - nQuotient * 10 ; sResult = arrChinese [ nRemainder ] + sResult ; nRemValue = nQuotient } break } case Asc . c _oAscNumberingFormat . ChineseCountingThousand : { var arrChinese = { 0 : String . fromCharCode ( 9675 ) , 1 : String . fromCharCode ( 19968 ) , 2 : String . fromCharCode ( 20108 ) , 3 : String . fromCharCode ( 19977 ) , 4 : String . fromCharCode ( 22235 ) , 5 : String . fromCharCode ( 20116 ) , 6 : String . fromCharCode ( 20845 ) , 7 : String . fromCharCode ( 19971 ) , 8 : String . fromCharCode ( 20843 ) , 9 : String . fromCharCode ( 20061 ) ,
10 : String . fromCharCode ( 21313 ) , 100 : String . fromCharCode ( 30334 ) , 1E3 : String . fromCharCode ( 21315 ) , 1E4 : String . fromCharCode ( 19975 ) } ; var nRemValue = nValue ; while ( true ) { var nTTQuotient = nRemValue / 1E4 | 0 ; var nTTRemainder = nRemValue - nTTQuotient * 1E4 ; nRemValue = nTTQuotient ; var sGroup = "" , isPrevZero = false ; if ( nTTQuotient > 0 ) sGroup += arrChinese [ 1E4 ] ; else isPrevZero = true ; if ( nTTRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } var nQuotient = nTTRemainder / 1E3 | 0 ; var nRemainder = nTTRemainder - nQuotient * 1E3 ; if ( 0 !==
nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 1E3 ] ; isPrevZero = false } else if ( nTTQuotient > 0 ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder / 100 | 0 ; nRemainder = nRemainder - nQuotient * 100 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 100 ] ; isPrevZero = false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder /
10 | 0 ; nRemainder = nRemainder - nQuotient * 10 ; if ( 0 !== nQuotient ) { if ( nValue < 20 ) sGroup += arrChinese [ 10 ] ; else sGroup += arrChinese [ nQuotient ] + arrChinese [ 10 ] ; isPrevZero = false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( 0 !== nRemainder ) sGroup += arrChinese [ nRemainder ] ; sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break } break } case Asc . c _oAscNumberingFormat . ChineseLegalSimplified : { var arrChinese = { 0 : String . fromCharCode ( 38646 ) , 1 : String . fromCharCode ( 22777 ) , 2 : String . fromCharCode ( 36144 ) , 3 : String . fromCharCode ( 21441 ) ,
4 : String . fromCharCode ( 32902 ) , 5 : String . fromCharCode ( 20237 ) , 6 : String . fromCharCode ( 38470 ) , 7 : String . fromCharCode ( 26578 ) , 8 : String . fromCharCode ( 25420 ) , 9 : String . fromCharCode ( 29590 ) , 10 : String . fromCharCode ( 25342 ) , 100 : String . fromCharCode ( 20336 ) , 1E3 : String . fromCharCode ( 20191 ) , 1E4 : String . fromCharCode ( 33836 ) } ; var nRemValue = nValue ; while ( true ) { var nTTQuotient = nRemValue / 1E4 | 0 ; var nTTRemainder = nRemValue - nTTQuotient * 1E4 ; nRemValue = nTTQuotient ; var sGroup = "" , isPrevZero = false ; if ( nTTQuotient > 0 ) sGroup += arrChinese [ 1E4 ] ; else isPrevZero =
true ; if ( nTTRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } var nQuotient = nTTRemainder / 1E3 | 0 ; var nRemainder = nTTRemainder - nQuotient * 1E3 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 1E3 ] ; isPrevZero = false } else if ( nTTQuotient > 0 ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder / 100 | 0 ; nRemainder = nRemainder - nQuotient * 100 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 100 ] ; isPrevZero =
false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder / 10 | 0 ; nRemainder = nRemainder - nQuotient * 10 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 10 ] ; isPrevZero = false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( 0 !== nRemainder ) sGroup += arrChinese [ nRemainder ] ; sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break } break } } return sResult } function CorrectFontSize ( nFontSize , isCeil ) { return isCeil ?
Math . ceil ( nFontSize * 2 ) / 2 : Math . floor ( nFontSize * 2 ) / 2 } var c _oAscSpaces = [ ] ; c _oAscSpaces [ 10 ] = 1 ; c _oAscSpaces [ 32 ] = 1 ; c _oAscSpaces [ 8194 ] = 1 ; c _oAscSpaces [ 8195 ] = 1 ; c _oAscSpaces [ 8197 ] = 1 ; c _oAscSpaces [ 12288 ] = 1 ; c _oAscSpaces [ 65279 ] = 1 ; function IsSpace ( nUnicode ) { return ! ! c _oAscSpaces [ nUnicode ] } function private _IsAbbreviation ( sWord ) { if ( sWord . toUpperCase ( ) === sWord ) { for ( var nPos = 0 , nLen = sWord . length ; nPos < nLen ; ++ nPos ) { var nCharCode = sWord . charCodeAt ( nPos ) ; if ( 44032 <= nCharCode && nCharCode <= 55203 || 4352 <= nCharCode && nCharCode <= 4607 ||
12592 <= nCharCode && nCharCode <= 12687 || 43360 <= nCharCode && nCharCode <= 43391 || 55216 <= nCharCode && nCharCode <= 55295 || 19968 <= nCharCode && nCharCode <= 40959 || 13312 <= nCharCode && nCharCode <= 19903 || 131072 <= nCharCode && nCharCode <= 173791 || 173824 <= nCharCode && nCharCode <= 177983 || 177984 <= nCharCode && nCharCode <= 178207 || 178208 <= nCharCode && nCharCode <= 183983 || 63744 <= nCharCode && nCharCode <= 64255 || 194560 <= nCharCode && nCharCode <= 195103 ) return false } return true } return false } var g _oUserColorById = { } , g _oUserNextColorIndex = 0 ; function getUserColorById ( userId ,
userName , isDark , isNumericValue ) { if ( window . parent . APP && window . parent . APP . getUserColor ) try { var CPColor = window . parent . APP . getUserColor ( userId ) ; if ( CPColor ) return true === isNumericValue ? CPColor . r << 16 & 16711680 | CPColor . g << 8 & 65280 | CPColor . b & 255 : new CColor ( CPColor . r , CPColor . g , CPColor . b , CPColor . a ) } catch ( e ) { } 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 & 16711680 | oColor . g << 8 & 65280 | oColor . b & 255 : oColor } function isNullOrEmptyString ( str ) { return str == undefined || str == null || str == "" } function unleakString ( s ) { return ( " " + s ) . substr ( 1 ) }
function readValAttr ( attr ) { if ( attr ( ) ) { var val = attr ( ) [ "val" ] ; return val ? val : null } return null } function getNumFromXml ( val ) { return val ? val - 0 : null } function getColorFromXml ( attr ) { if ( attr ( ) ) { var vals = attr ( ) ; if ( null != vals [ "theme" ] ) return AscCommonExcel . g _oColorManager . getThemeColor ( getNumFromXml ( vals [ "theme" ] ) , getNumFromXml ( vals [ "tint" ] ) ) ; else if ( null != vals [ "rgb" ] ) return new AscCommonExcel . RgbColor ( 16777215 & getNumFromXml ( vals [ "rgb" ] ) ) } return null } function getBoolFromXml ( val ) { return "0" !== val && "false" !== val &&
"off" !== val } function CUserCacheColor ( nColor ) { this . Light = null ; this . Dark = null ; this . init ( nColor ) } CUserCacheColor . prototype . init = function ( nColor ) { var r = nColor >> 16 & 255 ; var g = nColor >> 8 & 255 ; var b = nColor & 255 ; var Y = Math . max ( 0 , Math . min ( 255 , . 299 * r + . 587 * g + . 114 * b ) ) ; var Cb = Math . max ( 0 , Math . min ( 255 , 128 - . 168736 * r - . 331264 * g + . 5 * b ) ) ; var Cr = Math . max ( 0 , Math . min ( 255 , 128 + . 5 * r - . 418688 * g - . 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 - . 34414 * ( Cb - 128 ) - . 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 backoff = new AscCommon . Backoff ( AscCommon . g _oBackoffDefaults ) ; loadScriptWithBackoff ( backoff , url , onSuccess , onError ) } function loadScriptWithBackoff ( backoff , url , onSuccess , onError ) { var script = document . createElement ( "script" ) ; script . type = "text/javascript" ; script . src = url ; script . onload = onSuccess ; script . onerror = function ( ) { backoff . attempt ( onError , function ( ) { loadScriptWithBackoff ( backoff , url , onSuccess , onError ) } ) } ; document . head . appendChild ( script ) }
function loadSdk ( sdkName , onSuccess , onError ) { if ( window [ "AscNotLoadAllScript" ] ) onSuccess ( ) ; else { var urlArgs = window . parent && window . parent . APP && window . parent . APP . urlArgs || "" ; loadScript ( "./../../../../sdkjs/" + sdkName + "/sdk-all.js?" + urlArgs , onSuccess , onError ) } } function loadChartStyles ( onSuccess , onError ) { loadScript ( "../../../../sdkjs/common/Charts/ChartStyles.js" , onSuccess , onError ) } function getAltGr ( e ) { var ctrlKey = e . metaKey || e . ctrlKey ; var altKey = e . altKey ; return altKey && ( AscBrowser . isMacOs ? ! ctrlKey : ctrlKey ) }
function getColorSchemeByName ( sName ) { for ( var i = 0 ; i < AscCommon . g _oUserColorScheme . length ; ++ i ) { var tmp = AscCommon . g _oUserColorScheme [ i ] ; if ( tmp && tmp . name === sName ) return getColorSchemeByIdx ( i ) } return null } function getColorSchemeByIdx ( idx ) { var tmp = AscCommon . g _oUserColorScheme [ idx ] ; if ( tmp ) { var scheme = new AscFormat . ClrScheme , _c ; 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 } return null } function getAscColorScheme ( _scheme , theme ) { var elem , _c ; var _rgba = { R : 0 , G : 0 , B : 0 , A : 255 } ; elem = new AscCommon . CAscColorScheme ; elem . scheme = _scheme ; elem . name = _scheme . name ; _scheme . colors [ 8 ] . Calculate ( theme ,
null , null , null , _rgba ) ; _c = _scheme . colors [ 8 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 12 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 12 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 9 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 9 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 13 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 13 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ;
_scheme . colors [ 0 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 0 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 1 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 1 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 2 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 2 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 3 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 3 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R ,
_c . G , _c . B ) ) ; _scheme . colors [ 4 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 4 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 5 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 5 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 11 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 11 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 10 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 10 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R ,
_c . G , _c . B ) ) ; return elem } function getIndexColorSchemeInArray ( result , asc _color _scheme ) { for ( var j = 0 ; j < result . length ; ++ j ) if ( result [ j ] . isEqual ( asc _color _scheme ) ) return j ; return - 1 } function checkAddColorScheme ( result , asc _color _scheme , nStartIndex ) { var nIndex = getIndexColorSchemeInArray ( result , asc _color _scheme ) ; if ( nIndex > - 1 ) return nIndex ; var nStartIndex _ = nStartIndex ; if ( nStartIndex === null ) nStartIndex _ = result . length ; result . splice ( nStartIndex _ , 0 , asc _color _scheme ) ; return nStartIndex _ } function isEastAsianScript ( value ) { return 12544 <=
value && value <= 12591 || 12704 <= value && value <= 12735 || 19968 <= value && value <= 40938 || 13312 <= value && value <= 19893 || 131072 <= value && value <= 173782 || 173824 <= value && value <= 177972 || 177984 <= value && value <= 178205 || 178208 <= value && value <= 183969 || 183984 <= value && value <= 191456 || 63744 <= value && value <= 64255 || 194560 <= value && value <= 195103 || 12032 <= value && value <= 12255 || 11904 <= value && value <= 12031 || 12736 <= value && value <= 12783 || 12272 <= value && value <= 12287 || 4352 <= value && value <= 4607 || 43360 <= value && value <= 43391 || 55216 <= value && value <= 55295 ||
12592 <= value && value <= 12687 || 65280 <= value && value <= 65519 || 44032 <= value && value <= 55215 || 12352 <= value && value <= 12447 || 110848 <= value && value <= 110895 || 110592 <= value && value <= 110847 || 12688 <= value && value <= 12703 || 12448 <= value && value <= 12543 || 12784 <= value && value <= 12799 || 42192 <= value && value <= 42239 || 93952 <= value && value <= 94111 || 110960 <= value && value <= 111359 || 94208 <= value && value <= 100332 || 100352 <= value && value <= 101119 || 40960 <= value && value <= 42127 || 42128 <= value && value <= 42191 } var g _oIdCounter = new CIdCounter ; 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 : AscFonts . 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 ] } } function CShortcuts ( ) { this . List = { } ; this . CustomCounter = 0 ; this . CustomActions = { } } CShortcuts . prototype . Add = function ( nType , nCode , isCtrl , isShift , isAlt ) { this . List [ this . private _GetIndex ( nCode , isCtrl , isShift , isAlt ) ] = nType } ; CShortcuts . prototype . Get = function ( nCode , isCtrl , isShift , isAlt ) { var nType = this . List [ this . private _GetIndex ( nCode ,
isCtrl , isShift , isAlt ) ] ; return undefined !== nType ? nType : 0 } ; CShortcuts . prototype . private _GetIndex = function ( nCode , isCtrl , isShift , isAlt ) { return nCode << 8 | ( isCtrl ? 4 : 0 ) | ( isShift ? 2 : 0 ) | ( isAlt ? 1 : 0 ) } ; CShortcuts . prototype . CheckType = function ( nType ) { for ( var nIndex in this . List ) if ( this . List [ nIndex ] === nType ) return { KeyCode : nIndex >>> 8 , CtrlKey : ! ! ( nIndex & 4 ) , ShiftKey : ! ! ( nIndex & 2 ) , AltKey : ! ! ( nIndex & 1 ) } ; return null } ; CShortcuts . prototype . Remove = function ( nCode , isCtrl , isShift , isAlt ) { delete this . List [ this . private _GetIndex ( nCode ,
isCtrl , isShift , isAlt ) ] } ; CShortcuts . prototype . RemoveByType = function ( nType ) { for ( var nIndex in this . List ) if ( this . List [ nIndex ] === nType ) delete this . List [ nIndex ] } ; CShortcuts . prototype . GetNewCustomType = function ( ) { return 16711680 | this . CustomCounter ++ } ; CShortcuts . prototype . IsCustomType = function ( nType ) { return nType >= 16711680 } ; CShortcuts . prototype . GetCustomAction = function ( nType ) { return this . CustomActions [ nType ] } ; CShortcuts . prototype . AddCustomActionSymbol = function ( nCharCode , sFont ) { var nType = this . GetNewCustomType ( ) ;
this . CustomActions [ nType ] = new CCustomShortcutActionSymbol ( nCharCode , sFont ) ; return nType } ; function CCustomShortcutActionSymbol ( nCharCode , sFont ) { this . CharCode = nCharCode ; this . Font = sFont } CCustomShortcutActionSymbol . prototype . Type = AscCommon . c _oAscCustomShortcutType . Symbol ; AscCommon . EncryptionMessageType = { Encrypt : 0 , Decrypt : 1 } ; function CEncryptionData ( ) { this . _init = false ; this . arrData = [ ] ; this . arrImages = [ ] ; this . handleChangesCallback = null ; this . isChangesHandled = false ; this . cryptoMode = 0 ; 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 ) 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 ) { if ( ! files ) return ; if ( ! Array . isArray ( files ) ) files = [ files ] ; if ( 0 === files . length ) return ;
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 ) { clearTimeout ( this . nextChangesTimeoutId ) ; this . nextChangesTimeoutId =
- 1 } if ( AscCommon . EncryptionMessageType . Encrypt == this . arrData [ 0 ] . type ) 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 ) 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 ) ) 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 ;
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 ; function CMouseSmoothWheelCorrector ( t , scrollFunction ) { this . _deltaX = 0 ; this . _deltaY = 0 ; this . _isBreakX = false ; this . _isBreakY = false ; this . _timeoutCorrector = - 1 ; this . _api = t ; this . _scrollFunction = scrollFunction ; this . _normalDelta = 120 ; this . _isNormalDeltaActive = false ; this . setNormalDeltaActive = function ( value ) { this . _isNormalDeltaActive = true ; this . _normalDelta = value } ; this . isBreakX = function ( ) { return this . _isBreakX } ; this . isBreakY = function ( ) { return this . _isBreakY } ; this . get _DeltaX =
function ( wheelDeltaX ) { this . _isBreakX = false ; if ( ! AscCommon . AscBrowser . isMacOs ) return wheelDeltaX ; this . _deltaX += wheelDeltaX ; if ( Math . abs ( this . _deltaX ) >= this . _normalDelta ) return this . _isNormalDeltaActive ? this . _deltaX > 0 ? this . _normalDelta : - this . _normalDelta : this . _deltaX ; this . _isBreakX = true ; return 0 } ; this . get _DeltaY = function ( wheelDeltaY ) { this . _isBreakY = false ; if ( ! AscCommon . AscBrowser . isMacOs ) return wheelDeltaY ; this . _deltaY += wheelDeltaY ; if ( Math . abs ( this . _deltaY ) >= this . _normalDelta ) return this . _isNormalDeltaActive ?
this . _deltaY > 0 ? this . _normalDelta : - this . _normalDelta : this . _deltaY ; this . _isBreakY = true ; return 0 } ; this . checkBreak = function ( ) { if ( - 1 != this . _timeoutCorrector ) { clearTimeout ( this . _timeoutCorrector ) ; this . _timeoutCorrector = - 1 } if ( ( this . _isBreakX || this . _isBreakY ) && this . _scrollFunction ) { var obj = { t : this , x : this . _isBreakX ? this . _deltaX : 0 , y : this . _isBreakY ? this . _deltaY : 0 } ; this . _timeoutCorrector = setTimeout ( function ( ) { var t = obj . t ; t . _scrollFunction . call ( t . _api , obj . x , obj . y ) ; t . _timeoutCorrector = - 1 ; t . _deltaX = 0 ; t . _deltaY =
0 } , 100 ) } if ( ! this . _isBreakX ) this . _deltaX = 0 ; if ( ! this . _isBreakY ) this . _deltaY = 0 ; this . _isBreakX = false ; this . _isBreakY = false } } AscCommon . CMouseSmoothWheelCorrector = CMouseSmoothWheelCorrector ; 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 } ; function CPolygonPoint2 ( X , Y ) { this . X = X ; this . Y = Y } function CPolygonVectors ( ) { this . Page =
- 1 ; this . VX = [ ] ; this . VY = [ ] } function CPolygonPath ( precision ) { this . Page = - 1 ; this . Direction = 1 ; this . precision = precision ; this . Points = [ ] } CPolygonPath . prototype . PushPoint = function ( x , y ) { this . Points . push ( new CPolygonPoint2 ( x / this . precision , y / this . precision ) ) } ; CPolygonPath . prototype . CorrectExtremePoints = function ( ) { var Lng = this . Points . length ; this . Points [ 0 ] . X = this . Points [ Lng - 1 ] . X ; this . Points [ Lng - 1 ] . Y = this . Points [ 0 ] . Y } ; function CPolygon ( ) { this . Vectors = [ ] ; this . precision = 1E3 } CPolygon . prototype . fill = function ( arrBounds ) { this . Vectors . length =
0 ; if ( arrBounds . length <= 0 ) return ; var nStartLineIndex = 0 , nStartIndex = 0 , CountLines = arrBounds . length , CountBounds ; while ( nStartLineIndex < arrBounds . length ) { CountBounds = arrBounds [ nStartLineIndex ] . length ; while ( nStartIndex < CountBounds ) if ( arrBounds [ nStartLineIndex ] [ nStartIndex ] . W < . 001 ) nStartIndex ++ ; else break ; if ( nStartIndex < CountBounds ) break ; nStartLineIndex ++ ; nStartIndex = 0 } if ( nStartLineIndex >= arrBounds . length ) return ; var CurrentPage = arrBounds [ nStartLineIndex ] [ nStartIndex ] . Page , CurrentVectors = new CPolygonVectors ,
VectorsX = CurrentVectors . VX , VectorsY = CurrentVectors . VY ; CurrentVectors . Page = CurrentPage ; this . Vectors . push ( CurrentVectors ) ; for ( var LineIndex = nStartLineIndex ; LineIndex < CountLines ; nStartIndex = 0 , LineIndex ++ ) { if ( arrBounds [ LineIndex ] [ nStartIndex ] . Page !== CurrentPage ) { CurrentPage = arrBounds [ LineIndex ] [ nStartIndex ] . Page ; CurrentVectors = new CPolygonVectors ; VectorsX = CurrentVectors . VX ; VectorsY = CurrentVectors . VY ; CurrentVectors . Page = CurrentPage ; this . Vectors . push ( CurrentVectors ) } for ( var Index = nStartIndex ; Index < arrBounds [ LineIndex ] . length ; Index ++ ) { var oBound =
arrBounds [ LineIndex ] [ Index ] ; if ( oBound . W < . 001 ) continue ; var x1 = Math . round ( oBound . X * this . precision ) , x2 = Math . round ( ( oBound . X + oBound . W ) * this . precision ) , y1 = Math . round ( oBound . Y * this . precision ) , y2 = Math . round ( ( oBound . Y + oBound . H ) * this . precision ) ; if ( VectorsX [ y1 ] == undefined ) VectorsX [ y1 ] = { } ; this . IntersectionX ( VectorsX , x2 , x1 , y1 ) ; if ( VectorsY [ x1 ] == undefined ) VectorsY [ x1 ] = { } ; this . IntersectionY ( VectorsY , y1 , y2 , x1 ) ; if ( VectorsX [ y2 ] == undefined ) VectorsX [ y2 ] = { } ; this . IntersectionX ( VectorsX , x1 , x2 , y2 ) ; if ( VectorsY [ x2 ] == undefined ) VectorsY [ x2 ] =
{ } ; this . IntersectionY ( VectorsY , y2 , y1 , x2 ) } } } ; CPolygon . prototype . IntersectionX = function ( VectorsX , BeginX , EndX , Y ) { var CurrentVector = { } ; CurrentVector [ BeginX ] = EndX ; var VX = VectorsX [ Y ] ; if ( BeginX > EndX ) while ( true == this . IntersectVectorX ( CurrentVector , VX ) ) ; else while ( true == this . IntersectVectorX ( VX , CurrentVector ) ) ; for ( var X in CurrentVector ) { var VBeginX = parseInt ( X ) ; var VEndX = CurrentVector [ VBeginX ] ; if ( VBeginX !== VEndX || VX [ VBeginX ] === undefined ) VX [ VBeginX ] = VEndX } } ; CPolygon . prototype . IntersectVectorX = function ( VectorOpp ,
VectorClW ) { for ( var X in VectorOpp ) { var VBeginX = parseInt ( X ) ; var VEndX = VectorOpp [ VBeginX ] ; if ( VEndX == VBeginX ) continue ; for ( var ClwX in VectorClW ) { var ClwBeginX = parseInt ( ClwX ) ; var ClwEndX = VectorClW [ ClwBeginX ] ; var bIntersection = false ; if ( ClwBeginX == ClwEndX ) continue ; if ( ClwBeginX <= VEndX && VBeginX <= ClwEndX ) { VectorOpp [ VBeginX ] = VBeginX ; VectorClW [ ClwBeginX ] = VEndX ; VectorClW [ VBeginX ] = ClwEndX ; bIntersection = true } else if ( VEndX <= ClwBeginX && ClwEndX <= VBeginX ) { VectorClW [ ClwBeginX ] = ClwBeginX ; VectorOpp [ VBeginX ] = ClwEndX ; VectorOpp [ ClwBeginX ] =
VEndX ; bIntersection = true } else if ( ClwBeginX < VEndX && VEndX < ClwEndX ) { VectorClW [ ClwBeginX ] = VEndX ; VectorOpp [ VBeginX ] = ClwEndX ; bIntersection = true } else if ( ClwBeginX < VBeginX && VBeginX < ClwEndX ) { VectorOpp [ ClwBeginX ] = VEndX ; VectorClW [ VBeginX ] = ClwEndX ; delete VectorOpp [ VBeginX ] ; delete VectorClW [ ClwBeginX ] ; bIntersection = true } if ( bIntersection == true ) return true } } return false } ; CPolygon . prototype . IntersectionY = function ( VectorsY , BeginY , EndY , X ) { var bIntersect = false ; for ( var y in VectorsY [ X ] ) { var CurBeginY = parseInt ( y ) ; var CurEndY =
VectorsY [ X ] [ CurBeginY ] ; var minY , maxY ; if ( CurBeginY < CurEndY ) { minY = CurBeginY ; maxY = CurEndY } else { minY = CurEndY ; maxY = CurBeginY } var bInterSection = ! ( maxY <= BeginY && maxY <= EndY || minY >= BeginY && minY >= EndY ) , bDirection = ( CurBeginY - CurEndY ) * ( BeginY - EndY ) < 0 ; if ( bInterSection && bDirection ) { VectorsY [ X ] [ CurBeginY ] = EndY ; VectorsY [ X ] [ BeginY ] = CurEndY ; bIntersect = true } } if ( bIntersect == false ) VectorsY [ X ] [ BeginY ] = EndY } ; CPolygon . prototype . GetPaths = function ( shift ) { var Paths = [ ] ; shift *= this . precision ; for ( var PageIndex = 0 ; PageIndex < this . Vectors . length ; PageIndex ++ ) { var y ,
x1 , x2 , x , y1 , y2 ; var VectorsX = this . Vectors [ PageIndex ] . VX , VectorsY = this . Vectors [ PageIndex ] . VY , Page = this . Vectors [ PageIndex ] . Page ; for ( var LineIndex in VectorsX ) for ( var Index in VectorsX [ LineIndex ] ) { var Polygon = new CPolygonPath ( this . precision ) ; Polygon . Page = Page ; y = parseInt ( LineIndex ) ; x1 = parseInt ( Index ) ; x2 = VectorsX [ y ] [ x1 ] ; VectorsX [ y ] [ x1 ] = - 1 ; var Direction = x1 > x2 ? 1 : - 1 ; var minY = y ; var SignRightLeft , SignDownUp ; var X , Y ; if ( x2 !== - 1 ) { SignRightLeft = x1 > x2 ? 1 : - 1 ; Y = y - SignRightLeft * shift ; Polygon . PushPoint ( x1 , Y ) ; while ( true ) { x =
x2 ; y1 = y ; y2 = VectorsY [ x ] [ y1 ] ; if ( y2 == - 1 ) break ; else if ( y2 == undefined ) return [ ] ; VectorsY [ x ] [ y1 ] = - 1 ; SignDownUp = y1 > y2 ? 1 : - 1 ; X = x + SignDownUp * shift ; Polygon . PushPoint ( X , Y ) ; y = y2 ; x1 = x ; x2 = VectorsX [ y ] [ x1 ] ; if ( x2 == - 1 ) break ; else if ( x2 == undefined ) return [ ] ; VectorsX [ y ] [ x1 ] = - 1 ; SignRightLeft = x1 > x2 ? 1 : - 1 ; Y = y - SignRightLeft * shift ; Polygon . PushPoint ( X , Y ) ; if ( y < minY ) { minY = y ; Direction = x1 > x2 ? 1 : - 1 } } Polygon . PushPoint ( X , Y ) ; Polygon . CorrectExtremePoints ( ) ; Polygon . Direction = Direction ; Paths . push ( Polygon ) } } } return Paths } ; function CMathTrack ( ) { this . MathRect =
{ IsActive : false , Bounds : [ ] , ContentSelection : null } ; this . MathPolygons = [ ] ; this . MathSelectPolygons = [ ] } CMathTrack . prototype . Update = function ( IsActive , IsContentActive , oMath , PixelError ) { this . MathRect . IsActive = IsActive ; if ( true === IsActive && null !== oMath ) { var selectBounds = true === IsContentActive ? oMath . Get _ContentSelection ( ) : null ; if ( selectBounds != null ) { var SelectPolygon = new CPolygon ; SelectPolygon . fill ( selectBounds ) ; this . MathSelectPolygons = SelectPolygon . GetPaths ( 0 ) } else this . MathSelectPolygons . length = 0 ; var arrBounds =
oMath . Get _Bounds ( ) ; if ( arrBounds . length <= 0 ) return ; var MPolygon = new CPolygon ; MPolygon . fill ( arrBounds ) ; this . MathPolygons = MPolygon . GetPaths ( PixelError ) } } ; CMathTrack . prototype . Draw = function ( overlay , oPath , shiftX , shiftY , color , dKoefX , dKoefY , left , top , transform ) { var ctx = overlay . m _oContext ; var rPR = AscCommon . AscBrowser . retinaPixelRatio ; ctx . strokeStyle = color ; var lineW = Math . round ( rPR ) ; ctx . lineWidth = lineW ; ctx . beginPath ( ) ; if ( shiftX > . 1 || shiftY > . 1 ) { shiftX = Math . round ( shiftX * rPR ) ; shiftY = Math . round ( shiftY * rPR ) } var isRoundDraw =
transform && ! AscCommon . global _MatrixTransformer . IsIdentity2 ( transform ) ? false : true ; var Points = oPath . Points ; var nCount = Points . length ; var PrevX = Points [ nCount - 2 ] . X , PrevY = Points [ nCount - 2 ] . Y ; var x , y ; var eps = 1E-4 ; for ( var nIndex = 0 ; nIndex < nCount ; nIndex ++ ) { x = transform ? transform . TransformPointX ( Points [ nIndex ] . X , Points [ nIndex ] . Y ) : Points [ nIndex ] . X ; y = transform ? transform . TransformPointY ( Points [ nIndex ] . X , Points [ nIndex ] . Y ) : Points [ nIndex ] . Y ; x = ( left + dKoefX * x ) * rPR ; y = ( top + dKoefY * y ) * rPR ; if ( shiftX > . 1 || shiftY > . 1 ) { if ( PrevX >
Points [ nIndex ] . X + eps ) { x -= shiftX ; y -= shiftY } else if ( PrevX < Points [ nIndex ] . X - eps ) { x += shiftX ; y += shiftY } if ( PrevY > Points [ nIndex ] . Y + eps ) { x += shiftX ; y -= shiftY } else if ( PrevY < Points [ nIndex ] . Y - eps ) { x -= shiftX ; y += shiftY } } PrevX = Points [ nIndex ] . X ; PrevY = Points [ nIndex ] . Y ; if ( isRoundDraw ) { x = ( x >> 0 ) + lineW / 2 ; y = ( y >> 0 ) + lineW / 2 } overlay . CheckPoint ( x , y ) ; if ( 0 == nIndex ) overlay . m _oContext . moveTo ( x , y ) ; else overlay . m _oContext . lineTo ( x , y ) } overlay . m _oContext . closePath ( ) ; ctx . closePath ( ) ; ctx . stroke ( ) ; ctx . beginPath ( ) } ; CMathTrack . prototype . DrawSelectPolygon =
function ( overlay , oPath , dKoefX , dKoefY , left , top , m ) { var ctx = overlay . m _oContext ; ctx . fillStyle = "#375082" ; ctx . beginPath ( ) ; var Points = oPath . Points ; var nPointIndex ; var _x , _y , x , y , p ; var rPR = AscCommon . AscBrowser . retinaPixelRatio ; for ( nPointIndex = 0 ; nPointIndex < Points . length - 1 ; nPointIndex ++ ) { p = Points [ nPointIndex ] ; if ( ! m ) { _x = ( left + dKoefX * p . X ) * rPR ; _y = ( top + dKoefY * p . Y ) * rPR } else { x = p . X ; y = p . Y ; _x = ( left + dKoefX * m . TransformPointX ( x , y ) ) * rPR ; _y = ( top + dKoefY * m . TransformPointY ( x , y ) ) * rPR } overlay . CheckPoint ( _x , _y ) ; if ( 0 == nPointIndex ) ctx . moveTo ( ( _x >>
0 ) + . 5 * Math . round ( rPR ) , ( _y >> 0 ) + . 5 * Math . round ( rPR ) ) ; else ctx . lineTo ( ( _x >> 0 ) + . 5 * Math . round ( rPR ) , ( _y >> 0 ) + . 5 * Math . round ( rPR ) ) } ctx . globalAlpha = . 2 ; ctx . fill ( ) ; ctx . globalAlpha = 1 } ; CMathTrack . prototype . IsActive = function ( ) { return this . MathRect . IsActive } ; CMathTrack . prototype . GetPolygonsCount = function ( ) { return this . MathPolygons . length } ; CMathTrack . prototype . GetPolygon = function ( nIndex ) { return this . MathPolygons [ nIndex ] } ; CMathTrack . prototype . GetSelectPathsCount = function ( ) { return this . MathSelectPolygons . length } ; CMathTrack . prototype . GetSelectPath =
function ( nIndex ) { return this . MathSelectPolygons [ nIndex ] } ; if ( ! Array . prototype . findIndex ) Object . defineProperty ( Array . prototype , "findIndex" , { value : function ( predicate ) { if ( this == null ) throw new TypeError ( "Array.prototype.findIndex called on null or undefined" ) ; if ( typeof predicate !== "function" ) throw new TypeError ( "predicate must be a function" ) ; var list = Object ( this ) ; var length = list . length >>> 0 ; var thisArg = arguments [ 1 ] ; var value ; for ( var i = 0 ; i < length ; i ++ ) { value = list [ i ] ; if ( predicate . call ( thisArg , value , i , list ) ) return i } return - 1 } } ) ;
if ( ! Array . prototype . fill ) Object . defineProperty ( Array . prototype , "fill" , { value : function ( value ) { if ( this == null ) throw new TypeError ( "this is null or not defined" ) ; var O = Object ( this ) ; var len = O . length >>> 0 ; var start = arguments [ 1 ] ; var relativeStart = start >> 0 ; var k = relativeStart < 0 ? Math . max ( len + relativeStart , 0 ) : Math . min ( relativeStart , len ) ; var end = arguments [ 2 ] ; var relativeEnd = end === undefined ? len : end >> 0 ; var final = relativeEnd < 0 ? Math . max ( len + relativeEnd , 0 ) : Math . min ( relativeEnd , len ) ; while ( k < final ) { O [ k ] = value ; k ++ } 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 ; if ( typeof Uint8Array !== "undefined" &&
! Uint8Array . prototype . slice ) Uint8Array . prototype . slice = Array . prototype . slice ; function parseText ( text , options , bTrimSpaces ) { 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 . split ( /\r?\n/ ) ; for ( var i = 0 ; i < rows . length ; ++ i ) { var row = rows [ i ] ; if ( " " === delimiterChar && bTrimSpaces ) { var addSpace = false ; if ( row [ 0 ] === delimiterChar ) addSpace = true ; row = addSpace ? delimiterChar + row . trim ( ) : row . trim ( ) } matrix . push ( row . split ( delimiterChar ) ) } return matrix } function getTimeISO8601 ( dateStr ) { if ( dateStr ) if ( dateStr . endsWith ( "Z" ) ) return Date . parse ( dateStr ) ;
else return Date . parse ( dateStr + "Z" ) ; return NaN } function valueToMmType ( value ) { var oVal = parseFloat ( value ) ; var oType ; if ( ! isNaN ( oVal ) ) { if ( - 1 !== value . indexOf ( "%" ) ) { oType = "%" ; oVal /= 100 } else if ( - 1 !== value . indexOf ( "px" ) ) { oType = "px" ; oVal *= AscCommon . g _dKoef _pix _to _mm } else if ( - 1 !== value . indexOf ( "in" ) ) { oType = "in" ; oVal *= AscCommonWord . g _dKoef _in _to _mm } else if ( - 1 !== value . indexOf ( "cm" ) ) { oType = "cm" ; oVal *= 10 } else if ( - 1 !== value . indexOf ( "mm" ) ) oType = "mm" ; else if ( - 1 !== value . indexOf ( "pt" ) ) { oType = "pt" ; oVal *= AscCommonWord . g _dKoef _pt _to _mm } else if ( - 1 !==
value . indexOf ( "pc" ) ) { oType = "pc" ; oVal *= AscCommonWord . g _dKoef _pc _to _mm } else oType = "none" ; return { val : oVal , type : oType } } return null } function valueToMm ( value ) { var obj = valueToMmType ( value ) ; if ( obj && "%" !== obj . type && "none" !== obj . type ) return obj . val ; return null } function arrayMove ( array , from , to ) { array . splice ( to , 0 , array . splice ( from , 1 ) [ 0 ] ) } function getRangeArray ( start , stop ) { var res = new Array ( stop - start ) ; for ( var i = start ; i < stop ; ++ i ) res [ i - start ] = i ; return res } var g _oBackoffDefaults = { retries : 2 , factor : 2 , minTimeout : 100 ,
maxTimeout : 2E3 , randomize : true } ; function Backoff ( opts ) { this . attempts = 0 ; this . opts = opts } Backoff . prototype . attempt = function ( fError , fRetry ) { var timeout = this . nextTimeout ( ) ; if ( timeout > 0 ) setTimeout ( function ( ) { fRetry ( ) } , timeout ) ; else fError ( ) } ; Backoff . prototype . nextTimeout = function ( ) { var timeout = - 1 ; if ( this . attempts < this . opts . retries ) { timeout = this . createTimeout ( this . attempts , this . opts ) ; this . attempts ++ } return timeout } ; Backoff . prototype . createTimeout = function ( attempt , opts ) { var random = opts . randomize ? Math . random ( ) +
1 : 1 ; var timeout = Math . round ( random * opts . minTimeout * Math . pow ( opts . factor , attempt ) ) ; timeout = Math . min ( timeout , opts . maxTimeout ) ; return timeout } ; function backoffOnError ( obj , onError , onRetry ) { if ( ! onRetry ) return onError ; var backoff = new Backoff ( g _oBackoffDefaults ) ; return function ( ) { var timeout = backoff . nextTimeout ( ) ; if ( timeout > 0 ) setTimeout ( function ( ) { onRetry . call ( obj , obj ) } , timeout ) ; else if ( onError ) onError . apply ( obj , arguments ) } } function backoffOnErrorImg ( img , onRetry ) { if ( ! onRetry ) onRetry = function ( img ) { img . setAttribute ( "src" ,
img . getAttribute ( "src" ) ) } ; img . onerror = backoffOnError ( img , img . onerror , onRetry ) } function isEmptyObject ( obj ) { for ( var name in obj ) return false ; return true } function CStringNode ( element , par ) { this . element = element ; this . partner = null ; this . par = par ; if ( typeof element === "string" ) { this . children = [ ] ; for ( var oIterator = element . getUnicodeIterator ( ) ; oIterator . check ( ) ; oIterator . next ( ) ) { var nCharCode = oIterator . value ( ) ; this . children . push ( new CStringNode ( nCharCode , this ) ) } } } CStringNode . prototype . children = [ ] ; CStringNode . prototype . equals =
function ( oNode ) { return this . element === oNode . element } ; CStringNode . prototype . forEachDescendant = function ( callback , T ) { this . children . forEach ( function ( node ) { node . forEach ( callback , T ) } ) } ; CStringNode . prototype . forEach = function ( callback , T ) { callback . call ( T , this ) ; this . children . forEach ( function ( node ) { node . forEach ( callback , T ) } ) } ; function CDiffMatching ( ) { } CDiffMatching . prototype . get = function ( oNode ) { return oNode . partner } ; CDiffMatching . prototype . put = function ( oNode1 , oNode2 ) { oNode1 . partner = oNode2 ; oNode2 . partner = oNode1 } ;
function CStringChange ( oOperation ) { this . pos = - 1 ; this . deleteCount = 0 ; this . insert = [ ] ; var oAnchor = oOperation . anchor ; this . pos = oAnchor . index ; if ( Array . isArray ( oOperation . remove ) ) this . deleteCount = oOperation . remove . length ; var nIndex , oNode ; if ( Array . isArray ( oOperation . insert ) ) for ( nIndex = 0 ; nIndex < oOperation . insert . length ; ++ nIndex ) { oNode = oOperation . insert [ nIndex ] ; this . insert . push ( oNode . element ) } } CStringChange . prototype . getPos = function ( ) { return this . pos } ; CStringChange . prototype . getDeleteCount = function ( ) { return this . deleteCount } ;
CStringChange . prototype . getInsertSymbols = function ( ) { return this . insert } ; function getTextDelta ( sBase , sReplace ) { var aDelta = [ ] ; var oBaseNode = new CStringNode ( sBase , null ) ; var oReplaceNode = new CStringNode ( sReplace , null ) ; var oMatching = new CDiffMatching ; oMatching . put ( oBaseNode , oReplaceNode ) ; var oDiff = new AscCommon . Diff ( oBaseNode , oReplaceNode ) ; oDiff . equals = function ( a , b ) { return a . equals ( b ) } ; oDiff . matchTrees ( oMatching ) ; var oDeltaCollector = new AscCommon . DeltaCollector ( oMatching , oBaseNode , oReplaceNode ) ; oDeltaCollector . forEachChange ( function ( oOperation ) { aDelta . push ( new CStringChange ( oOperation ) ) } ) ;
return aDelta } function _getIntegerByDivide ( val ) { var test = val ; for ( var i = 0 ; i < 10 ; i ++ ) { test = ( val - i ) * AscCommon . AscBrowser . retinaPixelRatio ; if ( test > 0 && Math . abs ( test - ( test >> 0 ) ) < . 001 ) return { start : val - i , end : test >> 0 } } return { start : val , end : AscCommon . AscBrowser . convertToRetinaValue ( val , true ) } } function setCanvasSize ( element , width , height , is _correction ) { if ( element . width === width && element . height === height ) return ; if ( true !== is _correction ) { element . width = width ; element . height = height ; return } var data = element . getContext ( "2d" ) . getImageData ( 0 ,
0 , element . width , element . height ) ; element . width = width ; element . height = height ; element . getContext ( "2d" ) . putImageData ( data , 0 , 0 ) } function calculateCanvasSize ( element , is _correction , is _wait _correction ) { if ( true !== is _correction && undefined !== element . correctionTimeout ) { clearTimeout ( element . correctionTimeout ) ; element . correctionTimeout = undefined } var scale = AscCommon . AscBrowser . retinaPixelRatio ; if ( Math . abs ( scale - ( scale >> 0 ) ) < . 001 ) { setCanvasSize ( element , scale * parseInt ( element . style . width ) , scale * parseInt ( element . style . height ) ,
is _correction ) ; return } var rect = element . getBoundingClientRect ( ) ; var isCorrectRect = rect . width === 0 && rect . height === 0 ? false : true ; if ( is _wait _correction || ! isCorrectRect ) { var isNoVisibleElement = false ; if ( element . style . display === "none" ) isNoVisibleElement = true ; else if ( element . parentNode && element . parentNode . style . display === "none" ) isNoVisibleElement = true ; if ( ! isNoVisibleElement ) element . correctionTimeout = setTimeout ( function ( ) { calculateCanvasSize ( element , true ) } , 100 ) ; if ( ! isCorrectRect ) { var style _width = parseInt ( element . style . width ) ;
var style _height = parseInt ( element . style . height ) ; rect = { x : 0 , left : 0 , y : 0 , top : 0 , width : style _width , right : style _width , height : style _height , bottom : style _height } } } var new _width = 0 ; var new _height = 0 ; if ( true || ! AscCommon . AscBrowser . isMozilla ) { new _width = Math . round ( scale * rect . right ) - Math . round ( scale * rect . left ) ; new _height = Math . round ( scale * rect . bottom ) - Math . round ( scale * rect . top ) } else { var sizeW = _getIntegerByDivide ( rect . width ) ; var sizeH = _getIntegerByDivide ( rect . height ) ; if ( sizeW . start !== rect . width ) element . style . width =
sizeW . start + "px" ; if ( sizeH . start !== rect . height ) element . style . height = sizeH . start + "px" ; new _width = sizeW . end ; new _height = sizeH . end } setCanvasSize ( element , new _width , new _height , is _correction ) } function CRC32 ( ) { this . m _aTable = [ ] ; this . private _InitTable ( ) } CRC32 . prototype . private _InitTable = function ( ) { var CRC _POLY = 3988292384 ; var nChar ; for ( var nIndex = 0 ; nIndex < 256 ; nIndex ++ ) { nChar = nIndex ; for ( var nCounter = 0 ; nCounter < 8 ; nCounter ++ ) nChar = nChar & 1 ? nChar >>> 1 ^ CRC _POLY : nChar >>> 1 ; this . m _aTable [ nIndex ] = nChar } } ; CRC32 . prototype . Calculate _ByString =
function ( sStr , nSize ) { var CRC _MASK = 3523407757 ; var nCRC = 0 ^ - 1 ; for ( var nIndex = 0 ; nIndex < nSize ; nIndex ++ ) { nCRC = this . m _aTable [ ( nCRC ^ sStr . charCodeAt ( nIndex ) ) & 255 ] ^ nCRC >>> 8 ; nCRC ^= CRC _MASK } return ( nCRC ^ - 1 ) >>> 0 } ; CRC32 . prototype . Calculate _ByByteArray = function ( aArray , nSize ) { var CRC _MASK = 3523407757 ; var nCRC = 0 ^ - 1 ; for ( var nIndex = 0 ; nIndex < nSize ; nIndex ++ ) { nCRC = nCRC >>> 8 ^ this . m _aTable [ ( nCRC ^ aArray [ nIndex ] ) & 255 ] ; nCRC ^= CRC _MASK } return ( nCRC ^ - 1 ) >>> 0 } ; var g _oCRC32 = new CRC32 ; 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" ] . ShowDocumentFileDialog = ShowDocumentFileDialog ; window [ "AscCommon" ] . ShowTextFileDialog = ShowTextFileDialog ; 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" ] . readValAttr = readValAttr ; window [ "AscCommon" ] . getNumFromXml = getNumFromXml ; window [ "AscCommon" ] . getColorFromXml = getColorFromXml ; window [ "AscCommon" ] . getBoolFromXml = getBoolFromXml ; window [ "AscCommon" ] . initStreamFromResponse = initStreamFromResponse ; window [ "AscCommon" ] . checkStreamSignature = checkStreamSignature ; window [ "AscCommon" ] . DocumentUrls = DocumentUrls ; window [ "AscCommon" ] . OpenFileResult = OpenFileResult ; 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" ] . IntToNumberFormat = IntToNumberFormat ; window [ "AscCommon" ] . IsSpace = IsSpace ; window [ "AscCommon" ] . CorrectFontSize = CorrectFontSize ;
window [ "AscCommon" ] . loadSdk = loadSdk ; window [ "AscCommon" ] . loadScript = loadScript ; window [ "AscCommon" ] . loadChartStyles = loadChartStyles ; window [ "AscCommon" ] . getAltGr = getAltGr ; window [ "AscCommon" ] . getColorSchemeByName = getColorSchemeByName ; window [ "AscCommon" ] . getColorSchemeByIdx = getColorSchemeByIdx ; window [ "AscCommon" ] . getAscColorScheme = getAscColorScheme ; window [ "AscCommon" ] . checkAddColorScheme = checkAddColorScheme ; window [ "AscCommon" ] . getIndexColorSchemeInArray = getIndexColorSchemeInArray ; window [ "AscCommon" ] . isEastAsianScript =
isEastAsianScript ; window [ "AscCommon" ] . CMathTrack = CMathTrack ; window [ "AscCommon" ] . CPolygon = CPolygon ; 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" ] . g _oBackoffDefaults = g _oBackoffDefaults ; window [ "AscCommon" ] . Backoff = Backoff ; window [ "AscCommon" ] . backoffOnErrorImg = backoffOnErrorImg ; window [ "AscCommon" ] . isEmptyObject = isEmptyObject ; 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 [ "AscCommon" ] . parseText = parseText ; window [ "AscCommon" ] . getTimeISO8601 = getTimeISO8601 ; window [ "AscCommon" ] . valueToMm = valueToMm ; window [ "AscCommon" ] . valueToMmType = valueToMmType ; window [ "AscCommon" ] . arrayMove = arrayMove ; window [ "AscCommon" ] . getRangeArray =
getRangeArray ; window [ "AscCommon" ] . CUnicodeStringEmulator = CUnicodeStringEmulator ; window [ "AscCommon" ] . calculateCanvasSize = calculateCanvasSize ; window [ "AscCommon" ] . private _IsAbbreviation = private _IsAbbreviation ; window [ "AscCommon" ] . getTextDelta = getTextDelta ; window [ "AscCommon" ] . rx _test _ws _name = rx _test _ws _name ; window [ "AscCommon" ] . CShortcuts = window [ "AscCommon" ] [ "CShortcuts" ] = CShortcuts ; prot = CShortcuts . prototype ; prot [ "Add" ] = prot . Add ; prot [ "Get" ] = prot . Get ; prot [ "CheckType" ] = prot . CheckType ; prot [ "Remove" ] = prot . Remove ;
prot [ "RemoveByType" ] = prot . RemoveByType ; prot [ "GetNewCustomType" ] = prot . GetNewCustomType ; prot [ "IsCustomType" ] = prot . IsCustomType ; prot [ "GetCustomAction" ] = prot . GetCustomAction ; prot [ "AddCustomActionSymbol" ] = prot . AddCustomActionSymbol ; window [ "AscCommon" ] . CCustomShortcutActionSymbol = window [ "AscCommon" ] [ "CCustomShortcutActionSymbol" ] = CCustomShortcutActionSymbol ; window [ "AscCommon" ] . g _oCRC32 = g _oCRC32 } ) ( 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 [ "asc_IsNeedBuildCryptedFile" ] = function ( ) { if ( ! window [ "AscDesktopEditor" ] || ! window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) 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 ) _returnValue = false ; else if ( null != AscCommon . History . SavedIndex && - 1 != AscCommon . History . SavedIndex ) _returnValue = true ; else 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 } _editor . _callbackPluginEndAction = function ( ) { this . _callbackPluginEndAction = null ; _editor . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . Save ) ;
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 ) 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 . ConvertationSaveError , Asc . c _oAscError . Level . Critical ) ; window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( false ) } , function ( httpRequest ) { try { var data = { "accounts" : httpRequest . responseText ? JSON . parse ( httpRequest . responseText ) : undefined , "hash" : hash , "password" : password , "type" : "share" ,
"docinfo" : _editor . currentDocumentInfoNext } ; _editor . currentDocumentInfoNext = undefined ; 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 ) } , 1E3 ) } 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 ) ) window [ "AscDesktopEditor" ] [ "OnSave" ] ( ) } ; "use strict" ;
( 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 _Shortcut _SetStyleHeading1 : sString = "Document_Shortcut_SetStyleHeading1" ; break ; case AscDFH . historydescription _Document _Shortcut _SetStyleHeading2 : sString = "Document_Shortcut_SetStyleHeading2" ; break ; case AscDFH . historydescription _Document _Shortcut _SetStyleHeading3 : sString =
"Document_Shortcut_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 _ApplyTransition : sString = "Presentation_ApplyTransition" ; 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 ; case AscDFH . historydescription _Document _UpdateFields : sString = "Document_UpdateFields" ; break ; case AscDFH . historydescription _Document _AddBlankPage : sString =
"Document_AddBlankPage" ; break ; case AscDFH . historydescription _Document _AddTableFormula : sString = "Document_AddTableFormula" ; break ; case AscDFH . historydescription _Document _ChangeTableFormula : sString = "Document_ChangeTableFormula" ; break ; case AscDFH . historydescription _Document _SetParagraphOutlineLvl : sString = "Document_SetParagraphOutlineLvl" ; break ; case AscDFH . historydescription _Document _RemoveTableCells : sString = "Document_RemoveTableCells" ; break ; case AscDFH . historydescription _Document _AddContentControlCheckBox : sString =
"Document_AddContentControlCheckBox" ; break ; case AscDFH . historydescription _Document _SetContentControlCheckBoxPr : sString = "Document_SetContentControlCheckBoxPr" ; break ; case AscDFH . historydescription _Document _AddContentControlPicture : sString = "Document_AddContentControlPicture" ; break ; case AscDFH . historydescription _Document _SetContentControlPictureUrl : sString = "Document_SetContentControlPictureUrl" ; break ; case AscDFH . historydescription _Document _RemoveAllComments : sString = "Document_RemoveAllComments" ; break ;
case AscDFH . historydescription _Document _AddContentControlList : sString = "Document_AddContentControlList" ; break ; case AscDFH . historydescription _Document _SetContentControlListPr : sString = "Document_SetContentControlListPr" ; break ; case AscDFH . historydescription _Document _SelectContentControlListItem : sString = "Document_SelectContentControlListItem" ; break ; case AscDFH . historydescription _Document _AddContentControlDatePicker : sString = "Document_AddContentControlDatePicker" ; break ; case AscDFH . historydescription _Document _SetContentControlDatePickerPr : sString =
"Document_SetContentControlDatePickerPr" ; break ; case AscDFH . historydescription _Document _AddTextWithProperties : sString = "Document_AddTextWithProperties" ; break ; case AscDFH . historydescription _Document _AddCaption : sString = "Document_AddCaption" ; break ; case AscDFH . historydescription _Document _CompareDocuments : sString = "Document_CompareDocuments" ; break ; case AscDFH . historydescription _Document _DrawNewTable : sString = "Document_DrawNewTable" ; break ; case AscDFH . historydescription _Document _DrawTable : sString = "Document_DrawTable" ;
break ; case AscDFH . historydescription _Document _AddDateTimeField : sString = "Document_AddDateTimeField" ; break ; case AscDFH . historydescription _Document _SetContentControlTextPlaceholder : sString = "Document_SetContentControlTextPlaceholder" ; break ; case AscDFH . historydescription _Document _AddEndnote : sString = "Document_AddEndnote" ; break ; case AscDFH . historydescription _Document _AddContentControlTextForm : sString = "Document_AddContentControlTextForm" ; break ; case AscDFH . historydescription _Document _SetEndnotePr : sString =
"Document_SetEndnotePr" ; break ; case AscDFH . historydescription _Document _ConvertFootnoteType : sString = "Document_ConvertFootnoteType" ; break ; case AscDFH . historydescription _Document _AutoCorrectCommon : sString = "Document_AutoCorrectCommon" ; break ; case AscDFH . historydescription _Document _Shortcut _ClearFormatting : sString = "Document_Shortcut_ClearFormatting" ; break ; case AscDFH . historydescription _Document _Shortcut _AddNonBreakingSpace : sString = "Document_Shortcut_AddNonBreakingSpace" ; break ; case AscDFH . historydescription _Document _SetParagraphSuppressLineNumbers : sString =
"Document_SetParagraphSuppressLineNumbers" ; break ; case AscDFH . historydescription _Document _SetLineNumbersProps : sString = "Document_SetLineNumbersProps" ; break ; case AscDFH . historydescription _Document _AddCrossRef : sString = "Document_AddCrossRef" ; break ; case AscDFH . historydescription _Document _ClearAllSpecialForms : sString = "Document_ClearAllSpecialForms" ; break ; case AscDFH . historydescription _Document _ChangeTextCase : sString = "Document_ChangeTextCase" ; break ; case AscDFH . historydescription _Document _SetNumberingLvl : sString =
"Document_SetNumberingLvl" ; break ; case AscDFH . historydescription _Document _SetTrackRevisions : sString = "Document_SetTrackRevisions" ; break ; case AscDFH . historydescription _Document _SetContentControlText : sString = "Document_SetContentControlText" ; break ; case AscDFH . historydescription _Document _ClearContentControl : sString = "Document_ClearContentControl" ; break ; case AscDFH . historydescription _Document _AutoCorrectFirstLetterOfSentence : sString = "Document_AutoCorrectFirstLetterOfSentence" ; break ; case AscDFH . historydescription _Document _ConvertTextToTable : sString =
"Document_ConvertTextToTable" ; break ; case AscDFH . historydescription _Document _ConvertTableToText : sString = "Document_ConvertTableToText" ; case AscDFH . historydescription _Document _ResolveAllComments : sString = "Document_ResolveAllComments" ; break ; case AscDFH . historydescription _Document _ConvertFormFixedType : sString = "Document_ConvertFormFixedType" ; break } return sString } function GetHistoryClassTypeByChangeType ( nChangeType ) { return nChangeType >> 16 & 65535 } window [ "AscDFH" ] = window [ "AscDFH" ] || { } ; window [ "AscDFH" ] . GetHistoryPointStringDescription =
GetHistoryPointStringDescription ; window [ "AscDFH" ] . GetHistoryClassTypeByChangeType = GetHistoryClassTypeByChangeType ; window [ "AscDFH" ] . historyitem _recalctype _Inline = 0 ; window [ "AscDFH" ] . historyitem _recalctype _Flow = 1 ; window [ "AscDFH" ] . historyitem _recalctype _HdrFtr = 2 ; window [ "AscDFH" ] . historyitem _recalctype _Drawing = 3 ; 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 ; window [ "AscDFH" ] . historyitem _type _FlowObjects = 7 << 16 ; window [ "AscDFH" ] . historyitem _type _FlowImage = 8 << 16 ; 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 ; window [ "AscDFH" ] . historyitem _type _HdrFtrController = 14 << 16 ; 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 _PresentationField = 64 << 16 ; window [ "AscDFH" ] . historyitem _type _ParaRevisionMove =
65 << 16 ; window [ "AscDFH" ] . historyitem _type _RunRevisionMove = 66 << 16 ; window [ "AscDFH" ] . historyitem _type _GlossaryDocument = 67 << 16 ; window [ "AscDFH" ] . historyitem _type _DocPart = 68 << 16 ; window [ "AscDFH" ] . historyitem _type _Endnotes = 69 << 16 ; window [ "AscDFH" ] . historyitem _type _CommonShape = 1E3 << 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 _LockedCanvas = 1133 << 16 ; window [ "AscDFH" ] . historyitem _type _RelSizeAnchor =
1134 << 16 ; window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor = 1135 << 16 ; window [ "AscDFH" ] . historyitem _type _Core = 1136 << 16 ; window [ "AscDFH" ] . historyitem _type _SlicerView = 1137 << 16 ; window [ "AscDFH" ] . historyitem _type _PivotWorksheetSource = 1138 << 16 ; window [ "AscDFH" ] . historyitem _type _NamedSheetView = 1139 << 16 ; window [ "AscDFH" ] . historyitem _type _DataValidation = 1140 << 16 ; window [ "AscDFH" ] . historyitem _type _EmptyObject = 1141 << 16 ; window [ "AscDFH" ] . historyitem _type _Timing = 1142 << 16 ; window [ "AscDFH" ] . historyitem _type _CommonTimingList =
1143 << 16 ; window [ "AscDFH" ] . historyitem _type _ObjectTarget = 1144 << 16 ; window [ "AscDFH" ] . historyitem _type _BldBase = 1145 << 16 ; window [ "AscDFH" ] . historyitem _type _BldDgm = 1146 << 16 ; window [ "AscDFH" ] . historyitem _type _BldGraphic = 1147 << 16 ; window [ "AscDFH" ] . historyitem _type _BldOleChart = 1148 << 16 ; window [ "AscDFH" ] . historyitem _type _BldP = 1149 << 16 ; window [ "AscDFH" ] . historyitem _type _BldSub = 1150 << 16 ; window [ "AscDFH" ] . historyitem _type _DirTransition = 1151 << 16 ; window [ "AscDFH" ] . historyitem _type _OptBlackTransition = 1152 << 16 ; window [ "AscDFH" ] . historyitem _type _GraphicEl =
1153 << 16 ; window [ "AscDFH" ] . historyitem _type _IndexRg = 1154 << 16 ; window [ "AscDFH" ] . historyitem _type _Tmpl = 1155 << 16 ; window [ "AscDFH" ] . historyitem _type _Anim = 1156 << 16 ; window [ "AscDFH" ] . historyitem _type _CBhvr = 1157 << 16 ; window [ "AscDFH" ] . historyitem _type _CTn = 1158 << 16 ; window [ "AscDFH" ] . historyitem _type _Cond = 1159 << 16 ; window [ "AscDFH" ] . historyitem _type _Rtn = 1160 << 16 ; window [ "AscDFH" ] . historyitem _type _TgtEl = 1161 << 16 ; window [ "AscDFH" ] . historyitem _type _SndTgt = 1162 << 16 ; window [ "AscDFH" ] . historyitem _type _SpTgt = 1163 << 16 ; window [ "AscDFH" ] . historyitem _type _IterateData =
1164 << 16 ; window [ "AscDFH" ] . historyitem _type _Tm = 1165 << 16 ; window [ "AscDFH" ] . historyitem _type _Tav = 1166 << 16 ; window [ "AscDFH" ] . historyitem _type _AnimVariant = 1167 << 16 ; window [ "AscDFH" ] . historyitem _type _AnimClr = 1168 << 16 ; window [ "AscDFH" ] . historyitem _type _AnimEffect = 1169 << 16 ; window [ "AscDFH" ] . historyitem _type _AnimMotion = 1170 << 16 ; window [ "AscDFH" ] . historyitem _type _AnimRot = 1171 << 16 ; window [ "AscDFH" ] . historyitem _type _AnimScale = 1172 << 16 ; window [ "AscDFH" ] . historyitem _type _Audio = 1173 << 16 ; window [ "AscDFH" ] . historyitem _type _CMediaNode =
1174 << 16 ; window [ "AscDFH" ] . historyitem _type _Cmd = 1175 << 16 ; window [ "AscDFH" ] . historyitem _type _TimeNodeContainer = 1176 << 16 ; window [ "AscDFH" ] . historyitem _type _Seq = 1177 << 16 ; window [ "AscDFH" ] . historyitem _type _Set = 1178 << 16 ; window [ "AscDFH" ] . historyitem _type _Video = 1179 << 16 ; window [ "AscDFH" ] . historyitem _type _OleChartEl = 1180 << 16 ; window [ "AscDFH" ] . historyitem _type _TlPoint = 1181 << 16 ; window [ "AscDFH" ] . historyitem _type _SndAc = 1182 << 16 ; window [ "AscDFH" ] . historyitem _type _StSnd = 1183 << 16 ; window [ "AscDFH" ] . historyitem _type _TxEl =
1184 << 16 ; window [ "AscDFH" ] . historyitem _type _Wheel = 1185 << 16 ; window [ "AscDFH" ] . historyitem _type _AttrName = 1186 << 16 ; window [ "AscDFH" ] . historyitem _type _AttrNameLst = 1187 << 16 ; window [ "AscDFH" ] . historyitem _type _BldLst = 1188 << 16 ; window [ "AscDFH" ] . historyitem _type _CondLst = 1189 << 16 ; window [ "AscDFH" ] . historyitem _type _ChildTnLst = 1190 << 16 ; window [ "AscDFH" ] . historyitem _type _Par = 1191 << 16 ; window [ "AscDFH" ] . historyitem _type _Excl = 1192 << 16 ; window [ "AscDFH" ] . historyitem _type _TmplLst = 1193 << 16 ; window [ "AscDFH" ] . historyitem _type _TnLst =
1194 << 16 ; window [ "AscDFH" ] . historyitem _type _TavLst = 1195 << 16 ; window [ "AscDFH" ] . historyitem _type _SldSz = 1196 << 16 ; window [ "AscDFH" ] . historyitem _type _ChartStyle = 1197 << 16 ; window [ "AscDFH" ] . historyitem _type _ChartStyleEntry = 1198 << 16 ; window [ "AscDFH" ] . historyitem _type _MarkerLayout = 1199 << 16 ; window [ "AscDFH" ] . historyitem _type _DocumentMacros = 2E3 << 16 ; window [ "AscDFH" ] . historyitem _Unknown _Unknown = window [ "AscDFH" ] . historyitem _type _Unknown | 0 ; window [ "AscDFH" ] . historyitem _TableId _Add = window [ "AscDFH" ] . historyitem _type _TableId |
1 ; window [ "AscDFH" ] . historyitem _TableId _Description = window [ "AscDFH" ] . historyitem _type _TableId | 65535 ; 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 ; window [ "AscDFH" ] . historyitem _Document _Settings _GutterAtTop = window [ "AscDFH" ] . historyitem _type _Document | 8 ; window [ "AscDFH" ] . historyitem _Document _Settings _MirrorMargins = window [ "AscDFH" ] . historyitem _type _Document | 9 ; window [ "AscDFH" ] . historyitem _Document _SpecialFormsGlobalSettings =
window [ "AscDFH" ] . historyitem _type _Document | 10 ; window [ "AscDFH" ] . historyitem _Document _Settings _TrackRevisions = window [ "AscDFH" ] . historyitem _type _Document | 11 ; 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 ; window [ "AscDFH" ] . historyitem _Paragraph _SuppressLineNumbers = window [ "AscDFH" ] . historyitem _type _Paragraph | 39 ; window [ "AscDFH" ] . historyitem _Paragraph _Shd _Fill = window [ "AscDFH" ] . historyitem _type _Paragraph | 40 ; 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 ; window [ "AscDFH" ] . historyitem _TextPr _HighlightColor = window [ "AscDFH" ] . historyitem _type _TextPr | 30 ; 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 ; window [ "AscDFH" ] . historyitem _Drawing _Form = window [ "AscDFH" ] . historyitem _type _Drawing | 20 ; 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 ; window [ "AscDFH" ] . historyitem _Table _TableGridChange = window [ "AscDFH" ] . historyitem _type _Table | 28 ; window [ "AscDFH" ] . historyitem _Table _PrChange = window [ "AscDFH" ] . historyitem _type _Table | 29 ; 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 ; window [ "AscDFH" ] . historyitem _TableRow _PrChange = window [ "AscDFH" ] . historyitem _type _TableRow |
9 ; window [ "AscDFH" ] . historyitem _TableRow _ReviewType = window [ "AscDFH" ] . historyitem _type _TableRow | 10 ; 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 ; window [ "AscDFH" ] . historyitem _TableCell _PrChange = window [ "AscDFH" ] . historyitem _type _TableCell | 15 ; window [ "AscDFH" ] . historyitem _DocumentContent _AddItem =
window [ "AscDFH" ] . historyitem _type _DocumentContent | 1 ; window [ "AscDFH" ] . historyitem _DocumentContent _RemoveItem = window [ "AscDFH" ] . historyitem _type _DocumentContent | 2 ; 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 ; window [ "AscDFH" ] . historyitem _Num _LvlOverrideChange = window [ "AscDFH" ] . historyitem _type _Num | 1 ; window [ "AscDFH" ] . historyitem _Num _AbstractNum = window [ "AscDFH" ] . historyitem _type _Num | 2 ; window [ "AscDFH" ] . historyitem _PresentationField _Guid = window [ "AscDFH" ] . historyitem _type _PresentationField | 1 ; window [ "AscDFH" ] . historyitem _PresentationField _FieldType = window [ "AscDFH" ] . historyitem _type _PresentationField |
2 ; window [ "AscDFH" ] . historyitem _PresentationField _PPr = window [ "AscDFH" ] . historyitem _type _PresentationField | 3 ; 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 ; window [ "AscDFH" ] . historyitem _Comments _Add = window [ "AscDFH" ] . historyitem _type _Comments | 1 ; window [ "AscDFH" ] . historyitem _Comments _Remove =
window [ "AscDFH" ] . historyitem _type _Comments | 2 ; 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 ; 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 ; 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 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultCaption = window [ "AscDFH" ] . historyitem _type _Styles | 23 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultEndnoteTextId = window [ "AscDFH" ] . historyitem _type _Styles | 24 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultEndnoteTextCharId = window [ "AscDFH" ] . historyitem _type _Styles | 25 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultEndnoteReferenceId = window [ "AscDFH" ] . historyitem _type _Styles |
26 ; 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 _MathBase _HighlightColor = window [ "AscDFH" ] . historyitem _type _Math | 321 ; 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 ; 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 ; 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 ; 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 ; window [ "AscDFH" ] . historyitem _ParaRun _HighlightColor = window [ "AscDFH" ] . historyitem _type _ParaRun | 44 ; 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 ; window [ "AscDFH" ] . historyitem _Section _PageMargins _Gutter = window [ "AscDFH" ] . historyitem _type _Section | 32 ; window [ "AscDFH" ] . historyitem _Section _Gutter _RTL = window [ "AscDFH" ] . historyitem _type _Section | 33 ; window [ "AscDFH" ] . historyitem _Section _Endnote _Pos = window [ "AscDFH" ] . historyitem _type _Section |
34 ; window [ "AscDFH" ] . historyitem _Section _Endnote _NumStart = window [ "AscDFH" ] . historyitem _type _Section | 35 ; window [ "AscDFH" ] . historyitem _Section _Endnote _NumRestart = window [ "AscDFH" ] . historyitem _type _Section | 36 ; window [ "AscDFH" ] . historyitem _Section _Endnote _NumFormat = window [ "AscDFH" ] . historyitem _type _Section | 37 ; window [ "AscDFH" ] . historyitem _Section _LnNumType = window [ "AscDFH" ] . historyitem _type _Section | 38 ; window [ "AscDFH" ] . historyitem _ParaComment _CommentId = window [ "AscDFH" ] . historyitem _type _ParaComment | 1 ; 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 ; 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 _RemoveFootnote = window [ "AscDFH" ] . historyitem _type _Footnotes | 5 ; window [ "AscDFH" ] . historyitem _GlossaryDocument _AddDocPart = window [ "AscDFH" ] . historyitem _type _GlossaryDocument | 1 ; window [ "AscDFH" ] . historyitem _DocPart _Name = window [ "AscDFH" ] . historyitem _type _DocPart |
1 ; window [ "AscDFH" ] . historyitem _DocPart _Style = window [ "AscDFH" ] . historyitem _type _DocPart | 2 ; window [ "AscDFH" ] . historyitem _DocPart _Types = window [ "AscDFH" ] . historyitem _type _DocPart | 3 ; window [ "AscDFH" ] . historyitem _DocPart _Description = window [ "AscDFH" ] . historyitem _type _DocPart | 4 ; window [ "AscDFH" ] . historyitem _DocPart _GUID = window [ "AscDFH" ] . historyitem _type _DocPart | 5 ; window [ "AscDFH" ] . historyitem _DocPart _Category = window [ "AscDFH" ] . historyitem _type _DocPart | 6 ; window [ "AscDFH" ] . historyitem _DocPart _Behavior = window [ "AscDFH" ] . historyitem _type _DocPart |
7 ; 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 _SdtPr _CheckBox = window [ "AscDFH" ] . historyitem _type _SdtPr | 9 ; window [ "AscDFH" ] . historyitem _SdtPr _CheckBox _Checked = window [ "AscDFH" ] . historyitem _type _SdtPr | 10 ; window [ "AscDFH" ] . historyitem _SdtPr _Picture = window [ "AscDFH" ] . historyitem _type _SdtPr | 11 ; window [ "AscDFH" ] . historyitem _SdtPr _ComboBox = window [ "AscDFH" ] . historyitem _type _SdtPr | 12 ; window [ "AscDFH" ] . historyitem _SdtPr _DropDownList =
window [ "AscDFH" ] . historyitem _type _SdtPr | 13 ; window [ "AscDFH" ] . historyitem _SdtPr _DatePicker = window [ "AscDFH" ] . historyitem _type _SdtPr | 14 ; window [ "AscDFH" ] . historyitem _SdtPr _TextPr = window [ "AscDFH" ] . historyitem _type _SdtPr | 15 ; window [ "AscDFH" ] . historyitem _SdtPr _Placeholder = window [ "AscDFH" ] . historyitem _type _SdtPr | 16 ; window [ "AscDFH" ] . historyitem _SdtPr _ShowingPlcHdr = window [ "AscDFH" ] . historyitem _type _SdtPr | 17 ; window [ "AscDFH" ] . historyitem _SdtPr _Equation = window [ "AscDFH" ] . historyitem _type _SdtPr | 18 ; window [ "AscDFH" ] . historyitem _SdtPr _Text =
window [ "AscDFH" ] . historyitem _type _SdtPr | 19 ; window [ "AscDFH" ] . historyitem _SdtPr _Temporary = window [ "AscDFH" ] . historyitem _type _SdtPr | 20 ; window [ "AscDFH" ] . historyitem _SdtPr _TextForm = window [ "AscDFH" ] . historyitem _type _SdtPr | 21 ; window [ "AscDFH" ] . historyitem _SdtPr _FormPr = window [ "AscDFH" ] . historyitem _type _SdtPr | 22 ; window [ "AscDFH" ] . historyitem _SdtPr _PictureFormPr = window [ "AscDFH" ] . historyitem _type _SdtPr | 23 ; window [ "AscDFH" ] . historyitem _Endnotes _AddEndnote = window [ "AscDFH" ] . historyitem _type _Endnotes | 1 ; window [ "AscDFH" ] . historyitem _Endnotes _RemoveEndnote =
window [ "AscDFH" ] . historyitem _type _Endnotes | 2 ; 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 _AutoShapes _SetDrawingBaseEditAs =
window [ "AscDFH" ] . historyitem _type _CommonShape | 110 ; 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 _CommonSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _CommonShape | 305 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _CommonShape | 306 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetTx = window [ "AscDFH" ] . historyitem _type _CommonShape | 307 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _CommonShape | 308 ; window [ "AscDFH" ] . historyitem _CommonChart _AddSeries = window [ "AscDFH" ] . historyitem _type _CommonShape |
309 ; window [ "AscDFH" ] . historyitem _CommonChart _SetDlbls = window [ "AscDFH" ] . historyitem _type _CommonShape | 310 ; window [ "AscDFH" ] . historyitem _CommonChart _AddAxId = window [ "AscDFH" ] . historyitem _type _CommonShape | 311 ; window [ "AscDFH" ] . historyitem _CommonChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _CommonShape | 312 ; window [ "AscDFH" ] . historyitem _CommonChart _AddFilteredSeries = window [ "AscDFH" ] . historyitem _type _CommonShape | 313 ; window [ "AscDFH" ] . historyitem _CommonChart _RemoveFilteredSeries = window [ "AscDFH" ] . historyitem _type _CommonShape |
314 ; 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 _Presentation _SetFirstSlideNum = window [ "AscDFH" ] . historyitem _type _Presentation | 11 ; window [ "AscDFH" ] . historyitem _Presentation _SetShowSpecialPlsOnTitleSld = window [ "AscDFH" ] . historyitem _type _Presentation | 12 ; 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 _ChartSpace _AddUserShape = window [ "AscDFH" ] . historyitem _type _ChartSpace | 18 ; window [ "AscDFH" ] . historyitem _ChartSpace _RemoveUserShape = window [ "AscDFH" ] . historyitem _type _ChartSpace | 19 ; window [ "AscDFH" ] . historyitem _ChartSpace _ChartStyle = window [ "AscDFH" ] . historyitem _type _ChartSpace | 20 ; window [ "AscDFH" ] . historyitem _ChartSpace _ChartColors = window [ "AscDFH" ] . historyitem _type _ChartSpace |
21 ; 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 _Layout _SetParent = window [ "AscDFH" ] . historyitem _type _Layout | 10 ; 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 _DLbl _SetParent = window [ "AscDFH" ] . historyitem _type _DLbl | 16 ; 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 _SetSmooth = window [ "AscDFH" ] . historyitem _type _LineChart | 7 ; window [ "AscDFH" ] . historyitem _LineChart _SetUpDownBars =
window [ "AscDFH" ] . historyitem _type _LineChart | 8 ; window [ "AscDFH" ] . historyitem _LineChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _LineChart | 9 ; 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 _SetSerLines = window [ "AscDFH" ] . historyitem _type _BarChart | 7 ; window [ "AscDFH" ] . historyitem _BarChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _BarChart | 8 ; window [ "AscDFH" ] . historyitem _BarChart _Set3D =
window [ "AscDFH" ] . historyitem _type _BarChart | 9 ; window [ "AscDFH" ] . historyitem _BarChart _SetGapDepth = window [ "AscDFH" ] . historyitem _type _BarChart | 10 ; window [ "AscDFH" ] . historyitem _BarChart _SetShape = window [ "AscDFH" ] . historyitem _type _BarChart | 11 ; 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 _SetShowNegBubbles = window [ "AscDFH" ] . historyitem _type _BubbleChart | 5 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetSizeRepresents = window [ "AscDFH" ] . historyitem _type _BubbleChart | 6 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _BubbleChart | 7 ; 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 _SetVaryColor = window [ "AscDFH" ] . historyitem _type _DoughnutChart | 4 ; 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 _SetSerLines = window [ "AscDFH" ] . historyitem _type _OfPieChart | 6 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetSplitPos = window [ "AscDFH" ] . historyitem _type _OfPieChart |
7 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetSplitType = window [ "AscDFH" ] . historyitem _type _OfPieChart | 8 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _OfPieChart | 9 ; 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 _SetVaryColors = window [ "AscDFH" ] . historyitem _type _PieChart | 3 ; window [ "AscDFH" ] . historyitem _PieChart _3D =
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 _SetVaryColors = window [ "AscDFH" ] . historyitem _type _RadarChart | 4 ; 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 _SetVaryColors = window [ "AscDFH" ] . historyitem _type _ScatterChart | 4 ; 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 _SetUpDownBars = window [ "AscDFH" ] . historyitem _type _StockChart | 5 ; 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 _SetWireframe = window [ "AscDFH" ] . historyitem _type _SurfaceChart | 3 ; 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 _SetVaryColors = window [ "AscDFH" ] . historyitem _type _AreaChart | 5 ; 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 _SetXVal = window [ "AscDFH" ] . historyitem _type _ScatterSer | 10 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetYVal = window [ "AscDFH" ] . historyitem _type _ScatterSer | 11 ; 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 _SetNumLit =
window [ "AscDFH" ] . historyitem _type _MinusPlus | 1 ; window [ "AscDFH" ] . historyitem _MinusPlus _SetNumRef = 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 _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 _SetVal = window [ "AscDFH" ] . historyitem _type _AreaSeries | 10 ; 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 _SetVal = window [ "AscDFH" ] . historyitem _type _RadarSeries | 8 ; 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 _SetVal = window [ "AscDFH" ] . historyitem _type _BarSeries |
12 ; 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 _SetVal = window [ "AscDFH" ] . historyitem _type _LineSeries |
11 ; 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 _SetVal = window [ "AscDFH" ] . historyitem _type _PieSeries | 8 ; 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 _SetVal = window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 5 ; 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 _SetXVal = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 11 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetYVal = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 12 ; 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 _SpPr _SetEffectPr = window [ "AscDFH" ] . historyitem _type _SpPr | 7 ; 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 _ShapeSetMacro = window [ "AscDFH" ] . historyitem _type _Shape | 12 ; window [ "AscDFH" ] . historyitem _ShapeSetTextLink = window [ "AscDFH" ] . historyitem _type _Shape | 13 ; 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 _ImageShapeSetOleType = window [ "AscDFH" ] . historyitem _type _ImageShape | 11 ; window [ "AscDFH" ] . historyitem _ImageShapeSetBinaryData = window [ "AscDFH" ] . historyitem _type _ImageShape | 12 ; 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 _SlideSetTransition = 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 _SlideSetTiming =
window [ "AscDFH" ] . historyitem _type _Slide | 16 ; 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 _SlideLayoutSetHF = window [ "AscDFH" ] . historyitem _type _SlideLayout | 12 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetTiming = window [ "AscDFH" ] . historyitem _type _SlideLayout | 13 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetTransition = window [ "AscDFH" ] . historyitem _type _SlideLayout | 14 ; 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 _SlideMasterSetHF = window [ "AscDFH" ] . historyitem _type _SlideMaster | 10 ; window [ "AscDFH" ] . historyitem _SlideMasterSetTiming = window [ "AscDFH" ] . historyitem _type _SlideMaster | 11 ; window [ "AscDFH" ] . historyitem _SlideMasterSetTransition = window [ "AscDFH" ] . historyitem _type _SlideMaster | 12 ; 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 _ThemeRemoveExtraClrScheme = window [ "AscDFH" ] . historyitem _type _Theme | 10 ; 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 _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 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorFromX = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 1 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorFromY = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 2 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorToX = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 3 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorToY = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 4 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorObject = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor |
5 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorParent = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 6 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorFromX = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 1 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorFromY = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 2 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorExtX = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 3 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorExtY = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 4 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorObject =
window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 5 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorParent = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 6 ; window [ "AscDFH" ] . historyitem _DocumentMacros _Data = window [ "Asc" ] . historyitem _type _DocumentMacros | 1 ; window [ "AscDFH" ] . historyitem _CoreProperties = window [ "AscDFH" ] . historyitem _type _Core | 1 ; window [ "AscDFH" ] . historyitem _SlicerViewName = window [ "AscDFH" ] . historyitem _type _SlicerView | 1 ; AscDFH . historyitem _TimingBldLst = AscDFH . historyitem _type _Timing | 1 ; AscDFH . historyitem _TimingTnLst =
AscDFH . historyitem _type _Timing | 2 ; AscDFH . historyitem _CommonTimingListAdd = AscDFH . historyitem _type _CommonTimingList | 1 ; AscDFH . historyitem _CommonTimingListRemove = AscDFH . historyitem _type _CommonTimingList | 2 ; AscDFH . historyitem _ObjectTargetSpid = AscDFH . historyitem _type _ObjectTarget | 1 ; AscDFH . historyitem _BldBaseGrpId = AscDFH . historyitem _type _BldBase | 1 ; AscDFH . historyitem _BldBaseUIExpand = AscDFH . historyitem _type _BldBase | 2 ; AscDFH . historyitem _BldDgmBld = AscDFH . historyitem _type _BldDgm | 1 ; AscDFH . historyitem _BldGraphicBldAsOne =
AscDFH . historyitem _type _BldGraphic | 1 ; AscDFH . historyitem _BldGraphicBldSub = AscDFH . historyitem _type _BldGraphic | 2 ; AscDFH . historyitem _BldOleChartAnimBg = AscDFH . historyitem _type _BldOleChart | 1 ; AscDFH . historyitem _BldPTmplLst = AscDFH . historyitem _type _BldP | 1 ; AscDFH . historyitem _BldPAdvAuto = AscDFH . historyitem _type _BldP | 2 ; AscDFH . historyitem _BldPAutoUpdateAnimBg = AscDFH . historyitem _type _BldP | 3 ; AscDFH . historyitem _BldPBldLvl = AscDFH . historyitem _type _BldP | 4 ; AscDFH . historyitem _BldPBuild = AscDFH . historyitem _type _BldP | 5 ;
AscDFH . historyitem _BldPRev = AscDFH . historyitem _type _BldP | 6 ; AscDFH . historyitem _BldSubChart = AscDFH . historyitem _type _BldSub | 1 ; AscDFH . historyitem _BldSubAnimBg = AscDFH . historyitem _type _BldSub | 2 ; AscDFH . historyitem _BldSubBldChart = AscDFH . historyitem _type _BldSub | 3 ; AscDFH . historyitem _BldSubBldDgm = AscDFH . historyitem _type _BldSub | 4 ; AscDFH . historyitem _BldSubRev = AscDFH . historyitem _type _BldSub | 5 ; AscDFH . historyitem _DirTransitionDir = AscDFH . historyitem _type _DirTransition | 1 ; AscDFH . historyitem _OptBlackTransitionThruBlk =
AscDFH . historyitem _type _OptBlackTransition | 1 ; AscDFH . historyitem _GraphicElDgmId = AscDFH . historyitem _type _GraphicEl | 1 ; AscDFH . historyitem _GraphicElDgmBuildStep = AscDFH . historyitem _type _GraphicEl | 2 ; AscDFH . historyitem _GraphicElChartBuildStep = AscDFH . historyitem _type _GraphicEl | 3 ; AscDFH . historyitem _GraphicElSeriesIdx = AscDFH . historyitem _type _GraphicEl | 4 ; AscDFH . historyitem _GraphicElCategoryIdx = AscDFH . historyitem _type _GraphicEl | 5 ; AscDFH . historyitem _IndexRgSt = AscDFH . historyitem _type _IndexRg | 1 ; AscDFH . historyitem _IndexRgEnd =
AscDFH . historyitem _type _IndexRg | 2 ; AscDFH . historyitem _TmplLvl = AscDFH . historyitem _type _Tmpl | 1 ; AscDFH . historyitem _TmplTnLst = AscDFH . historyitem _type _Tmpl | 2 ; AscDFH . historyitem _AnimCBhvr = AscDFH . historyitem _type _Anim | 1 ; AscDFH . historyitem _AnimTavLst = AscDFH . historyitem _type _Anim | 2 ; AscDFH . historyitem _AnimBy = AscDFH . historyitem _type _Anim | 3 ; AscDFH . historyitem _AnimCalcmode = AscDFH . historyitem _type _Anim | 4 ; AscDFH . historyitem _AnimFrom = AscDFH . historyitem _type _Anim | 5 ; AscDFH . historyitem _AnimTo = AscDFH . historyitem _type _Anim |
6 ; AscDFH . historyitem _AnimValueType = AscDFH . historyitem _type _Anim | 7 ; AscDFH . historyitem _CBhvrAttrNameLst = AscDFH . historyitem _type _CBhvr | 1 ; AscDFH . historyitem _CBhvrCTn = AscDFH . historyitem _type _CBhvr | 2 ; AscDFH . historyitem _CBhvrTgtEl = AscDFH . historyitem _type _CBhvr | 3 ; AscDFH . historyitem _CBhvrAccumulate = AscDFH . historyitem _type _CBhvr | 4 ; AscDFH . historyitem _CBhvrAdditive = AscDFH . historyitem _type _CBhvr | 5 ; AscDFH . historyitem _CBhvrBy = AscDFH . historyitem _type _CBhvr | 6 ; AscDFH . historyitem _CBhvrFrom = AscDFH . historyitem _type _CBhvr |
7 ; AscDFH . historyitem _CBhvrOverride = AscDFH . historyitem _type _CBhvr | 8 ; AscDFH . historyitem _CBhvrRctx = AscDFH . historyitem _type _CBhvr | 9 ; AscDFH . historyitem _CBhvrTo = AscDFH . historyitem _type _CBhvr | 10 ; AscDFH . historyitem _CBhvrXfrmType = AscDFH . historyitem _type _CBhvr | 11 ; AscDFH . historyitem _CTnChildTnLst = AscDFH . historyitem _type _CTn | 1 ; AscDFH . historyitem _CTnEndCondLst = AscDFH . historyitem _type _CTn | 2 ; AscDFH . historyitem _CTnEndSync = AscDFH . historyitem _type _CTn | 3 ; AscDFH . historyitem _CTnIterate = AscDFH . historyitem _type _CTn | 4 ; AscDFH . historyitem _CTnStCondLst =
AscDFH . historyitem _type _CTn | 5 ; AscDFH . historyitem _CTnSubTnLst = AscDFH . historyitem _type _CTn | 6 ; AscDFH . historyitem _CTnAccel = AscDFH . historyitem _type _CTn | 7 ; AscDFH . historyitem _CTnAfterEffect = AscDFH . historyitem _type _CTn | 8 ; AscDFH . historyitem _CTnAutoRev = AscDFH . historyitem _type _CTn | 9 ; AscDFH . historyitem _CTnBldLvl = AscDFH . historyitem _type _CTn | 10 ; AscDFH . historyitem _CTnDecel = AscDFH . historyitem _type _CTn | 11 ; AscDFH . historyitem _CTnDisplay = AscDFH . historyitem _type _CTn | 12 ; AscDFH . historyitem _CTnDur = AscDFH . historyitem _type _CTn |
13 ; AscDFH . historyitem _CTnEvtFilter = AscDFH . historyitem _type _CTn | 14 ; AscDFH . historyitem _CTnFill = AscDFH . historyitem _type _CTn | 15 ; AscDFH . historyitem _CTnGrpId = AscDFH . historyitem _type _CTn | 16 ; AscDFH . historyitem _CTnId = AscDFH . historyitem _type _CTn | 17 ; AscDFH . historyitem _CTnMasterRel = AscDFH . historyitem _type _CTn | 18 ; AscDFH . historyitem _CTnNodePh = AscDFH . historyitem _type _CTn | 19 ; AscDFH . historyitem _CTnNodeType = AscDFH . historyitem _type _CTn | 20 ; AscDFH . historyitem _CTnPresetClass = AscDFH . historyitem _type _CTn | 21 ; AscDFH . historyitem _CTnPresetID =
AscDFH . historyitem _type _CTn | 22 ; AscDFH . historyitem _CTnPresetSubtype = AscDFH . historyitem _type _CTn | 23 ; AscDFH . historyitem _CTnRepeatCount = AscDFH . historyitem _type _CTn | 24 ; AscDFH . historyitem _CTnRepeatDur = AscDFH . historyitem _type _CTn | 25 ; AscDFH . historyitem _CTnRestart = AscDFH . historyitem _type _CTn | 26 ; AscDFH . historyitem _CTnSpd = AscDFH . historyitem _type _CTn | 27 ; AscDFH . historyitem _CTnSyncBehavior = AscDFH . historyitem _type _CTn | 28 ; AscDFH . historyitem _CTnTmFilter = AscDFH . historyitem _type _CTn | 29 ; AscDFH . historyitem _CondRtn = AscDFH . historyitem _type _Cond |
1 ; AscDFH . historyitem _CondTgtEl = AscDFH . historyitem _type _Cond | 2 ; AscDFH . historyitem _CondTn = AscDFH . historyitem _type _Cond | 3 ; AscDFH . historyitem _CondDelay = AscDFH . historyitem _type _Cond | 4 ; AscDFH . historyitem _CondEvt = AscDFH . historyitem _type _Cond | 5 ; AscDFH . historyitem _RtnVal = AscDFH . historyitem _type _Rtn | 1 ; AscDFH . historyitem _TgtElInkTgt = AscDFH . historyitem _type _TgtEl | 1 ; AscDFH . historyitem _TgtElSldTgt = AscDFH . historyitem _type _TgtEl | 2 ; AscDFH . historyitem _TgtElSndTgt = AscDFH . historyitem _type _TgtEl | 3 ; AscDFH . historyitem _TgtElSpTgt =
AscDFH . historyitem _type _TgtEl | 4 ; AscDFH . historyitem _SndTgtEmbed = AscDFH . historyitem _type _SndTgt | 1 ; AscDFH . historyitem _SndTgtName = AscDFH . historyitem _type _SndTgt | 2 ; AscDFH . historyitem _SndTgtBuiltIn = AscDFH . historyitem _type _SndTgt | 3 ; AscDFH . historyitem _SpTgtBg = AscDFH . historyitem _type _SpTgt | 1 ; AscDFH . historyitem _SpTgtGraphicEl = AscDFH . historyitem _type _SpTgt | 2 ; AscDFH . historyitem _SpTgtOleChartEl = AscDFH . historyitem _type _SpTgt | 3 ; AscDFH . historyitem _SpTgtSubSpId = AscDFH . historyitem _type _SpTgt | 4 ; AscDFH . historyitem _SpTgtTxEl =
AscDFH . historyitem _type _SpTgt | 5 ; AscDFH . historyitem _IterateDataTmAbs = AscDFH . historyitem _type _IterateData | 1 ; AscDFH . historyitem _IterateDataTmPct = AscDFH . historyitem _type _IterateData | 2 ; AscDFH . historyitem _IterateDataBackwards = AscDFH . historyitem _type _IterateData | 3 ; AscDFH . historyitem _IterateDataType = AscDFH . historyitem _type _IterateData | 4 ; AscDFH . historyitem _TmVal = AscDFH . historyitem _type _Tm | 1 ; AscDFH . historyitem _TavVal = AscDFH . historyitem _type _Tav | 1 ; AscDFH . historyitem _TavFmla = AscDFH . historyitem _type _Tav | 2 ; AscDFH . historyitem _TavTm =
AscDFH . historyitem _type _Tav | 3 ; AscDFH . historyitem _AnimVariantBoolVal = AscDFH . historyitem _type _AnimVariant | 1 ; AscDFH . historyitem _AnimVariantClrVal = AscDFH . historyitem _type _AnimVariant | 2 ; AscDFH . historyitem _AnimVariantFltVal = AscDFH . historyitem _type _AnimVariant | 3 ; AscDFH . historyitem _AnimVariantIntVal = AscDFH . historyitem _type _AnimVariant | 4 ; AscDFH . historyitem _AnimVariantStrVal = AscDFH . historyitem _type _AnimVariant | 5 ; AscDFH . historyitem _AnimClrByRGB = AscDFH . historyitem _type _AnimClr | 1 ; AscDFH . historyitem _AnimClrByHSL =
AscDFH . historyitem _type _AnimClr | 2 ; AscDFH . historyitem _AnimClrCBhvr = AscDFH . historyitem _type _AnimClr | 3 ; AscDFH . historyitem _AnimClrFrom = AscDFH . historyitem _type _AnimClr | 4 ; AscDFH . historyitem _AnimClrTo = AscDFH . historyitem _type _AnimClr | 5 ; AscDFH . historyitem _AnimClrClrSpc = AscDFH . historyitem _type _AnimClr | 6 ; AscDFH . historyitem _AnimClrDir = AscDFH . historyitem _type _AnimClr | 7 ; AscDFH . historyitem _AnimEffectCBhvr = AscDFH . historyitem _type _AnimEffect | 1 ; AscDFH . historyitem _AnimEffectProgress = AscDFH . historyitem _type _AnimEffect |
2 ; AscDFH . historyitem _AnimEffectFilter = AscDFH . historyitem _type _AnimEffect | 3 ; AscDFH . historyitem _AnimEffectPrLst = AscDFH . historyitem _type _AnimEffect | 4 ; AscDFH . historyitem _AnimEffectTransition = AscDFH . historyitem _type _AnimEffect | 5 ; AscDFH . historyitem _AnimMotionBy = AscDFH . historyitem _type _AnimMotion | 1 ; AscDFH . historyitem _AnimMotionCBhvr = AscDFH . historyitem _type _AnimMotion | 2 ; AscDFH . historyitem _AnimMotionFrom = AscDFH . historyitem _type _AnimMotion | 3 ; AscDFH . historyitem _AnimMotionRCtr = AscDFH . historyitem _type _AnimMotion |
4 ; AscDFH . historyitem _AnimMotionTo = AscDFH . historyitem _type _AnimMotion | 5 ; AscDFH . historyitem _AnimMotionOrigin = AscDFH . historyitem _type _AnimMotion | 6 ; AscDFH . historyitem _AnimMotionPath = AscDFH . historyitem _type _AnimMotion | 7 ; AscDFH . historyitem _AnimMotionPathEditMode = AscDFH . historyitem _type _AnimMotion | 8 ; AscDFH . historyitem _AnimMotionPtsTypes = AscDFH . historyitem _type _AnimMotion | 9 ; AscDFH . historyitem _AnimMotionRAng = AscDFH . historyitem _type _AnimMotion | 10 ; AscDFH . historyitem _AnimRotCBhvr = AscDFH . historyitem _type _AnimRot |
1 ; AscDFH . historyitem _AnimRotBy = AscDFH . historyitem _type _AnimRot | 2 ; AscDFH . historyitem _AnimRotFrom = AscDFH . historyitem _type _AnimRot | 3 ; AscDFH . historyitem _AnimRotTo = AscDFH . historyitem _type _AnimRot | 4 ; AscDFH . historyitem _AnimScaleCBhvr = AscDFH . historyitem _type _AnimScale | 1 ; AscDFH . historyitem _AnimScaleBy = AscDFH . historyitem _type _AnimScale | 2 ; AscDFH . historyitem _AnimScaleFrom = AscDFH . historyitem _type _AnimScale | 3 ; AscDFH . historyitem _AnimScaleTo = AscDFH . historyitem _type _AnimScale | 4 ; AscDFH . historyitem _AnimScaleZoomContents =
AscDFH . historyitem _type _AnimScale | 5 ; AscDFH . historyitem _AudioCMediaNode = AscDFH . historyitem _type _Audio | 1 ; AscDFH . historyitem _AudioIsNarration = AscDFH . historyitem _type _Audio | 2 ; AscDFH . historyitem _CMediaNodeCTn = AscDFH . historyitem _type _CMediaNode | 1 ; AscDFH . historyitem _CMediaNodeTgtEl = AscDFH . historyitem _type _CMediaNode | 2 ; AscDFH . historyitem _CMediaNodeMute = AscDFH . historyitem _type _CMediaNode | 3 ; AscDFH . historyitem _CMediaNodeNumSld = AscDFH . historyitem _type _CMediaNode | 4 ; AscDFH . historyitem _CMediaNodeShowWhenStopped =
AscDFH . historyitem _type _CMediaNode | 5 ; AscDFH . historyitem _CMediaNodeVol = AscDFH . historyitem _type _CMediaNode | 6 ; AscDFH . historyitem _CmdCBhvr = AscDFH . historyitem _type _Cmd | 1 ; AscDFH . historyitem _CmdCmd = AscDFH . historyitem _type _Cmd | 2 ; AscDFH . historyitem _CmdType = AscDFH . historyitem _type _Cmd | 3 ; AscDFH . historyitem _OleChartElLvl = AscDFH . historyitem _type _OleChartEl | 1 ; AscDFH . historyitem _OleChartElType = AscDFH . historyitem _type _OleChartEl | 2 ; AscDFH . historyitem _TimeNodeContainerCTn = AscDFH . historyitem _type _TimeNodeContainer |
1 ; AscDFH . historyitem _SeqNextCondLst = AscDFH . historyitem _type _Seq | 1 ; AscDFH . historyitem _SeqPrevCondLst = AscDFH . historyitem _type _Seq | 2 ; AscDFH . historyitem _SeqConcurrent = AscDFH . historyitem _type _Seq | 3 ; AscDFH . historyitem _SeqNextAc = AscDFH . historyitem _type _Seq | 4 ; AscDFH . historyitem _SeqPrevAc = AscDFH . historyitem _type _Seq | 5 ; AscDFH . historyitem _SetCBhvr = AscDFH . historyitem _type _Set | 1 ; AscDFH . historyitem _SetTo = AscDFH . historyitem _type _Set | 2 ; AscDFH . historyitem _VideoCMediaNode = AscDFH . historyitem _type _Video | 1 ; AscDFH . historyitem _VideoFullScrn =
AscDFH . historyitem _type _Video | 2 ; AscDFH . historyitem _OleChartElLvl = AscDFH . historyitem _type _OleChartEl | 1 ; AscDFH . historyitem _OleChartElType = AscDFH . historyitem _type _OleChartEl | 2 ; AscDFH . historyitem _TlPointX = AscDFH . historyitem _type _TlPoint | 1 ; AscDFH . historyitem _TlPointY = AscDFH . historyitem _type _TlPoint | 2 ; AscDFH . historyitem _SndAcEndSnd = AscDFH . historyitem _type _SndAc | 1 ; AscDFH . historyitem _SndAcStSnd = AscDFH . historyitem _type _SndAc | 2 ; AscDFH . historyitem _StSndSnd = AscDFH . historyitem _type _StSnd | 1 ; AscDFH . historyitem _StSndLoop =
AscDFH . historyitem _type _StSnd | 2 ; AscDFH . historyitem _TxElCharRg = AscDFH . historyitem _type _TxEl | 1 ; AscDFH . historyitem _TxElPRg = AscDFH . historyitem _type _TxEl | 2 ; AscDFH . historyitem _WheelSpokes = AscDFH . historyitem _type _Wheel | 1 ; AscDFH . historyitem _AttrNameText = AscDFH . historyitem _type _AttrName | 1 ; AscDFH . historyitem _SldSzCX = AscDFH . historyitem _type _SldSz | 1 ; AscDFH . historyitem _SldSzCY = AscDFH . historyitem _type _SldSz | 2 ; AscDFH . historyitem _SldSzType = AscDFH . historyitem _type _SldSz | 3 ; AscDFH . historyitem _ChartStyleAxisTitle = AscDFH . historyitem _type _ChartStyle |
1 ; AscDFH . historyitem _ChartStyleCategoryAxis = AscDFH . historyitem _type _ChartStyle | 2 ; AscDFH . historyitem _ChartStyleChartArea = AscDFH . historyitem _type _ChartStyle | 3 ; AscDFH . historyitem _ChartStyleDataLabel = AscDFH . historyitem _type _ChartStyle | 4 ; AscDFH . historyitem _ChartStyleDataLabelCallout = AscDFH . historyitem _type _ChartStyle | 5 ; AscDFH . historyitem _ChartStyleDataPoint = AscDFH . historyitem _type _ChartStyle | 5 ; AscDFH . historyitem _ChartStyleDataPoint3D = AscDFH . historyitem _type _ChartStyle | 6 ; AscDFH . historyitem _ChartStyleDataPointLine =
AscDFH . historyitem _type _ChartStyle | 7 ; AscDFH . historyitem _ChartStyleDataPointMarker = AscDFH . historyitem _type _ChartStyle | 8 ; AscDFH . historyitem _ChartStyleDataPointWireframe = AscDFH . historyitem _type _ChartStyle | 9 ; AscDFH . historyitem _ChartStyleDataTable = AscDFH . historyitem _type _ChartStyle | 10 ; AscDFH . historyitem _ChartStyleDownBar = AscDFH . historyitem _type _ChartStyle | 11 ; AscDFH . historyitem _ChartStyleDropLine = AscDFH . historyitem _type _ChartStyle | 12 ; AscDFH . historyitem _ChartStyleErrorBar = AscDFH . historyitem _type _ChartStyle |
13 ; AscDFH . historyitem _ChartStyleFloor = AscDFH . historyitem _type _ChartStyle | 14 ; AscDFH . historyitem _ChartStyleGridlineMajor = AscDFH . historyitem _type _ChartStyle | 15 ; AscDFH . historyitem _ChartStyleGridlineMinor = AscDFH . historyitem _type _ChartStyle | 16 ; AscDFH . historyitem _ChartStyleHiLoLine = AscDFH . historyitem _type _ChartStyle | 17 ; AscDFH . historyitem _ChartStyleLeaderLine = AscDFH . historyitem _type _ChartStyle | 18 ; AscDFH . historyitem _ChartStyleLegend = AscDFH . historyitem _type _ChartStyle | 19 ; AscDFH . historyitem _ChartStylePlotArea =
AscDFH . historyitem _type _ChartStyle | 20 ; AscDFH . historyitem _ChartStylePlotArea3D = AscDFH . historyitem _type _ChartStyle | 21 ; AscDFH . historyitem _ChartStyleSeriesAxis = AscDFH . historyitem _type _ChartStyle | 22 ; AscDFH . historyitem _ChartStyleSeriesLine = AscDFH . historyitem _type _ChartStyle | 23 ; AscDFH . historyitem _ChartStyleTitle = AscDFH . historyitem _type _ChartStyle | 24 ; AscDFH . historyitem _ChartStyleTrendline = AscDFH . historyitem _type _ChartStyle | 25 ; AscDFH . historyitem _ChartStyleTrendlineLabel = AscDFH . historyitem _type _ChartStyle |
26 ; AscDFH . historyitem _ChartStyleUpBar = AscDFH . historyitem _type _ChartStyle | 27 ; AscDFH . historyitem _ChartStyleValueAxis = AscDFH . historyitem _type _ChartStyle | 28 ; AscDFH . historyitem _ChartStyleWall = AscDFH . historyitem _type _ChartStyle | 29 ; AscDFH . historyitem _ChartStyleMarkerLayout = AscDFH . historyitem _type _ChartStyle | 30 ; AscDFH . historyitem _ChartStyleMarkerId = AscDFH . historyitem _type _ChartStyle | 31 ; AscDFH . historyitem _ChartStyleEntryType = AscDFH . historyitem _type _ChartStyleEntry | 1 ; AscDFH . historyitem _ChartStyleEntryLineWidthScale =
AscDFH . historyitem _type _ChartStyleEntry | 2 ; AscDFH . historyitem _ChartStyleEntryLnRef = AscDFH . historyitem _type _ChartStyleEntry | 3 ; AscDFH . historyitem _ChartStyleEntryFillRef = AscDFH . historyitem _type _ChartStyleEntry | 4 ; AscDFH . historyitem _ChartStyleEntryEffectRef = AscDFH . historyitem _type _ChartStyleEntry | 5 ; AscDFH . historyitem _ChartStyleEntryFontRef = AscDFH . historyitem _type _ChartStyleEntry | 6 ; AscDFH . historyitem _ChartStyleEntryDefRPr = AscDFH . historyitem _type _ChartStyleEntry | 7 ; AscDFH . historyitem _ChartStyleEntryBodyPr =
AscDFH . historyitem _type _ChartStyleEntry | 8 ; AscDFH . historyitem _ChartStyleEntrySpPr = AscDFH . historyitem _type _ChartStyleEntry | 9 ; AscDFH . historyitem _MarkerLayoutSymbol = AscDFH . historyitem _type _MarkerLayout | 1 ; AscDFH . historyitem _MarkerLayoutSize = AscDFH . historyitem _type _MarkerLayout | 2 ; window [ "AscDFH" ] . historydescription _Cut = 1 ; window [ "AscDFH" ] . historydescription _PasteButtonIE = 2 ; window [ "AscDFH" ] . historydescription _PasteButtonNotIE = 3 ; window [ "AscDFH" ] . historydescription _ChartDrawingObjects = 4 ; window [ "AscDFH" ] . historydescription _CommonControllerCheckChartText =
5 ; window [ "AscDFH" ] . historydescription _CommonControllerUnGroup = 6 ; window [ "AscDFH" ] . historydescription _CommonControllerCheckSelected = 7 ; window [ "AscDFH" ] . historydescription _CommonControllerSetGraphicObject = 8 ; window [ "AscDFH" ] . historydescription _CommonStatesAddNewShape = 9 ; window [ "AscDFH" ] . historydescription _CommonStatesRotate = 10 ; window [ "AscDFH" ] . historydescription _PasteNative = 11 ; window [ "AscDFH" ] . historydescription _Document _GroupUnGroup = 12 ; window [ "AscDFH" ] . historydescription _Document _SetDefaultLanguage = 13 ;
window [ "AscDFH" ] . historydescription _Document _ChangeColorScheme = 14 ; window [ "AscDFH" ] . historydescription _Document _AddChart = 15 ; window [ "AscDFH" ] . historydescription _Document _EditChart = 16 ; window [ "AscDFH" ] . historydescription _Document _DragText = 17 ; window [ "AscDFH" ] . historydescription _Document _DocumentContentExtendToPos = 18 ; window [ "AscDFH" ] . historydescription _Document _AddHeader = 19 ; window [ "AscDFH" ] . historydescription _Document _AddFooter = 20 ; window [ "AscDFH" ] . historydescription _Document _ParagraphExtendToPos = 21 ; window [ "AscDFH" ] . historydescription _Document _ParagraphChangeFrame =
22 ; window [ "AscDFH" ] . historydescription _Document _ReplaceAll = 23 ; window [ "AscDFH" ] . historydescription _Document _ReplaceSingle = 24 ; window [ "AscDFH" ] . historydescription _Document _TableAddNewRowByTab = 25 ; window [ "AscDFH" ] . historydescription _Document _AddNewShape = 26 ; window [ "AscDFH" ] . historydescription _Document _EditWrapPolygon = 27 ; window [ "AscDFH" ] . historydescription _Document _MoveInlineObject = 28 ; window [ "AscDFH" ] . historydescription _Document _CopyAndMoveInlineObject = 29 ; window [ "AscDFH" ] . historydescription _Document _RotateInlineDrawing =
30 ; window [ "AscDFH" ] . historydescription _Document _RotateFlowDrawingCtrl = 31 ; window [ "AscDFH" ] . historydescription _Document _RotateFlowDrawingNoCtrl = 32 ; window [ "AscDFH" ] . historydescription _Document _MoveInGroup = 33 ; window [ "AscDFH" ] . historydescription _Document _ChangeWrapContour = 34 ; window [ "AscDFH" ] . historydescription _Document _ChangeWrapContourAddPoint = 35 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringToFront = 36 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringForwardGroup = 37 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringForward =
38 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsSendToBackGroup = 39 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsSendToBack = 40 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringBackwardGroup = 41 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringBackward = 42 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsChangeWrapPolygon = 43 ; window [ "AscDFH" ] . historydescription _Document _MathAutoCorrect = 44 ; window [ "AscDFH" ] . historydescription _Document _SetFramePrWithFontFamily = 45 ;
window [ "AscDFH" ] . historydescription _Document _SetFramePr = 46 ; window [ "AscDFH" ] . historydescription _Document _SetFramePrWithFontFamilyLong = 47 ; window [ "AscDFH" ] . historydescription _Document _SetTextFontName = 48 ; window [ "AscDFH" ] . historydescription _Document _SetTextFontSize = 49 ; window [ "AscDFH" ] . historydescription _Document _SetTextBold = 50 ; window [ "AscDFH" ] . historydescription _Document _SetTextItalic = 51 ; window [ "AscDFH" ] . historydescription _Document _SetTextUnderline = 52 ; window [ "AscDFH" ] . historydescription _Document _SetTextStrikeout =
53 ; window [ "AscDFH" ] . historydescription _Document _SetTextDStrikeout = 54 ; window [ "AscDFH" ] . historydescription _Document _SetTextSpacing = 55 ; window [ "AscDFH" ] . historydescription _Document _SetTextCaps = 56 ; window [ "AscDFH" ] . historydescription _Document _SetTextSmallCaps = 57 ; window [ "AscDFH" ] . historydescription _Document _SetTextPosition = 58 ; window [ "AscDFH" ] . historydescription _Document _SetTextLang = 59 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphLineSpacing = 60 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphLineSpacingBeforeAfter =
61 ; window [ "AscDFH" ] . historydescription _Document _IncFontSize = 62 ; window [ "AscDFH" ] . historydescription _Document _DecFontSize = 63 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphBorders = 64 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphPr = 65 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlign = 66 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlign = 67 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphNumbering = 68 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphStyle =
69 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphPageBreakBefore = 70 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphWidowControl = 71 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphKeepLines = 72 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphKeepNext = 73 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphContextualSpacing = 74 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlightNone = 75 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlightColor =
76 ; window [ "AscDFH" ] . historydescription _Document _SetTextColor = 77 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphShd = 78 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndent = 79 ; window [ "AscDFH" ] . historydescription _Document _IncParagraphIndent = 80 ; window [ "AscDFH" ] . historydescription _Document _DecParagraphIndent = 81 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndentRight = 82 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndentFirstLine = 83 ; window [ "AscDFH" ] . historydescription _Document _SetPageOrientation =
84 ; window [ "AscDFH" ] . historydescription _Document _SetPageSize = 85 ; window [ "AscDFH" ] . historydescription _Document _AddPageBreak = 86 ; window [ "AscDFH" ] . historydescription _Document _AddPageNumToHdrFtr = 87 ; window [ "AscDFH" ] . historydescription _Document _AddPageNumToCurrentPos = 88 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrDistance = 89 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrFirstPage = 90 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrEvenAndOdd = 91 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrLink =
92 ; window [ "AscDFH" ] . historydescription _Document _AddTable = 93 ; window [ "AscDFH" ] . historydescription _Document _TableAddRowAbove = 94 ; window [ "AscDFH" ] . historydescription _Document _TableAddRowBelow = 95 ; window [ "AscDFH" ] . historydescription _Document _TableAddColumnLeft = 96 ; window [ "AscDFH" ] . historydescription _Document _TableAddColumnRight = 97 ; window [ "AscDFH" ] . historydescription _Document _TableRemoveRow = 98 ; window [ "AscDFH" ] . historydescription _Document _TableRemoveColumn = 99 ; window [ "AscDFH" ] . historydescription _Document _RemoveTable =
100 ; window [ "AscDFH" ] . historydescription _Document _MergeTableCells = 101 ; window [ "AscDFH" ] . historydescription _Document _SplitTableCells = 102 ; window [ "AscDFH" ] . historydescription _Document _ApplyTablePr = 103 ; window [ "AscDFH" ] . historydescription _Document _AddImageUrl = 104 ; window [ "AscDFH" ] . historydescription _Document _AddImageUrlLong = 105 ; window [ "AscDFH" ] . historydescription _Document _AddImageToPage = 106 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithUrl = 107 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithUrlLong =
108 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithFillUrl = 109 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithFillUrlLong = 110 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePr = 111 ; window [ "AscDFH" ] . historydescription _Document _AddHyperlink = 112 ; window [ "AscDFH" ] . historydescription _Document _ChangeHyperlink = 113 ; window [ "AscDFH" ] . historydescription _Document _RemoveHyperlink = 114 ; window [ "AscDFH" ] . historydescription _Document _ReplaceMisspelledWord = 115 ; window [ "AscDFH" ] . historydescription _Document _AddComment =
116 ; window [ "AscDFH" ] . historydescription _Document _RemoveComment = 117 ; window [ "AscDFH" ] . historydescription _Document _ChangeComment = 118 ; window [ "AscDFH" ] . historydescription _Document _SetTextFontNameLong = 119 ; window [ "AscDFH" ] . historydescription _Document _AddImage = 120 ; window [ "AscDFH" ] . historydescription _Document _ClearFormatting = 121 ; window [ "AscDFH" ] . historydescription _Document _AddSectionBreak = 122 ; window [ "AscDFH" ] . historydescription _Document _AddMath = 123 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphTabs =
124 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndentFromRulers = 125 ; window [ "AscDFH" ] . historydescription _Document _SetDocumentMargin _Hor = 126 ; window [ "AscDFH" ] . historydescription _Document _SetTableMarkup _Hor = 127 ; window [ "AscDFH" ] . historydescription _Document _SetDocumentMargin _Ver = 128 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrBounds = 129 ; window [ "AscDFH" ] . historydescription _Document _SetTableMarkup _Ver = 130 ; window [ "AscDFH" ] . historydescription _Document _DocumentExtendToPos = 131 ; window [ "AscDFH" ] . historydescription _Document _AddDropCap =
132 ; window [ "AscDFH" ] . historydescription _Document _RemoveDropCap = 133 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlight = 134 ; window [ "AscDFH" ] . historydescription _Document _BackSpaceButton = 135 ; window [ "AscDFH" ] . historydescription _Document _MoveParagraphByTab = 136 ; window [ "AscDFH" ] . historydescription _Document _AddTab = 137 ; window [ "AscDFH" ] . historydescription _Document _EnterButton = 138 ; window [ "AscDFH" ] . historydescription _Document _SpaceButton = 139 ; window [ "AscDFH" ] . historydescription _Document _ShiftInsert =
140 ; window [ "AscDFH" ] . historydescription _Document _ShiftInsertSafari = 141 ; window [ "AscDFH" ] . historydescription _Document _DeleteButton = 142 ; window [ "AscDFH" ] . historydescription _Document _ShiftDeleteButton = 143 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _SetStyleHeading1 = 144 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _SetStyleHeading2 = 145 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _SetStyleHeading3 = 146 ; window [ "AscDFH" ] . historydescription _Document _SetTextStrikeoutHotKey = 147 ; window [ "AscDFH" ] . historydescription _Document _SetTextBoldHotKey =
148 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey = 149 ; window [ "AscDFH" ] . historydescription _Document _AddEuroLetter = 150 ; window [ "AscDFH" ] . historydescription _Document _SetTextItalicHotKey = 151 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey2 = 152 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphNumberingHotKey = 153 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey3 = 154 ; window [ "AscDFH" ] . historydescription _Document _AddPageNumHotKey = 155 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey4 =
156 ; window [ "AscDFH" ] . historydescription _Document _SetTextUnderlineHotKey = 157 ; window [ "AscDFH" ] . historydescription _Document _FormatPasteHotKey = 158 ; window [ "AscDFH" ] . historydescription _Document _PasteHotKey = 159 ; window [ "AscDFH" ] . historydescription _Document _PasteSafariHotKey = 160 ; window [ "AscDFH" ] . historydescription _Document _CutHotKey = 161 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlignHotKey = 162 ; window [ "AscDFH" ] . historydescription _Document _AddMathHotKey = 163 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlignHotKey2 =
164 ; window [ "AscDFH" ] . historydescription _Document _MinusButton = 165 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlignHotKey3 = 166 ; window [ "AscDFH" ] . historydescription _Document _AddLetter = 167 ; window [ "AscDFH" ] . historydescription _Document _MoveTableBorder = 168 ; window [ "AscDFH" ] . historydescription _Document _FormatPasteHotKey2 = 169 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlight2 = 170 ; window [ "AscDFH" ] . historydescription _Document _AddTextFromTextBox = 171 ; window [ "AscDFH" ] . historydescription _Document _AddMailMergeField =
172 ; window [ "AscDFH" ] . historydescription _Document _MoveInlineTable = 173 ; window [ "AscDFH" ] . historydescription _Document _MoveFlowTable = 174 ; window [ "AscDFH" ] . historydescription _Document _RestoreFieldTemplateText = 175 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellFontName = 176 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellFontSize = 177 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellBold = 178 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellItalic = 179 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellUnderline =
180 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellStrikeout = 181 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellSubscript = 182 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellSuperscript = 183 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellAlign = 184 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellVertAlign = 185 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellTextColor = 186 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellBackgroundColor = 187 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellIncreaseFontSize =
188 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellDecreaseFontSize = 189 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellHyperlinkAdd = 190 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellHyperlinkModify = 191 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellHyperlinkRemove = 192 ; window [ "AscDFH" ] . historydescription _Spreadsheet _EditChart = 193 ; window [ "AscDFH" ] . historydescription _Spreadsheet _Remove = 194 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddTab = 195 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddNewParagraph =
196 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddSpace = 197 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddItem = 198 ; window [ "AscDFH" ] . historydescription _Spreadsheet _PutPrLineSpacing = 199 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetParagraphSpacing = 200 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetGraphicObjectsProps = 201 ; window [ "AscDFH" ] . historydescription _Spreadsheet _ParaApply = 202 ; window [ "AscDFH" ] . historydescription _Spreadsheet _GraphicObjectLayer = 203 ; window [ "AscDFH" ] . historydescription _Spreadsheet _ParagraphAdd =
204 ; window [ "AscDFH" ] . historydescription _Spreadsheet _CreateGroup = 205 ; window [ "AscDFH" ] . historydescription _CommonDrawings _ChangeAdj = 206 ; window [ "AscDFH" ] . historydescription _CommonDrawings _EndTrack = 207 ; window [ "AscDFH" ] . historydescription _CommonDrawings _CopyCtrl = 208 ; window [ "AscDFH" ] . historydescription _Presentation _ParaApply = 209 ; window [ "AscDFH" ] . historydescription _Presentation _ParaFormatPaste = 210 ; window [ "AscDFH" ] . historydescription _Presentation _AddNewParagraph = 211 ; window [ "AscDFH" ] . historydescription _Presentation _CreateGroup =
212 ; window [ "AscDFH" ] . historydescription _Presentation _UnGroup = 213 ; window [ "AscDFH" ] . historydescription _Presentation _AddChart = 214 ; window [ "AscDFH" ] . historydescription _Presentation _EditChart = 215 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphAdd = 216 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphClearFormatting = 217 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphAlign = 218 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphSpacing = 219 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphTabs =
220 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphIndent = 221 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphNumbering = 222 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphIncDecFontSize = 223 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphIncDecIndent = 224 ; window [ "AscDFH" ] . historydescription _Presentation _SetImageProps = 225 ; window [ "AscDFH" ] . historydescription _Presentation _SetShapeProps = 226 ; window [ "AscDFH" ] . historydescription _Presentation _ChartApply = 227 ;
window [ "AscDFH" ] . historydescription _Presentation _ChangeShapeType = 228 ; window [ "AscDFH" ] . historydescription _Presentation _SetVerticalAlign = 229 ; window [ "AscDFH" ] . historydescription _Presentation _HyperlinkAdd = 230 ; window [ "AscDFH" ] . historydescription _Presentation _HyperlinkModify = 231 ; window [ "AscDFH" ] . historydescription _Presentation _HyperlinkRemove = 232 ; window [ "AscDFH" ] . historydescription _Presentation _DistHor = 233 ; window [ "AscDFH" ] . historydescription _Presentation _DistVer = 234 ; window [ "AscDFH" ] . historydescription _Presentation _BringToFront =
235 ; window [ "AscDFH" ] . historydescription _Presentation _BringForward = 236 ; window [ "AscDFH" ] . historydescription _Presentation _SendToBack = 237 ; window [ "AscDFH" ] . historydescription _Presentation _BringBackward = 239 ; window [ "AscDFH" ] . historydescription _Presentation _ApplyTransition = 240 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesToEnd = 241 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesNextPos = 242 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesPrevPos = 243 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesToStart =
244 ; window [ "AscDFH" ] . historydescription _Presentation _MoveComments = 245 ; window [ "AscDFH" ] . historydescription _Presentation _TableBorder = 246 ; window [ "AscDFH" ] . historydescription _Presentation _AddFlowImage = 247 ; window [ "AscDFH" ] . historydescription _Presentation _AddFlowTable = 248 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeBackground = 249 ; window [ "AscDFH" ] . historydescription _Presentation _AddNextSlide = 250 ; window [ "AscDFH" ] . historydescription _Presentation _ShiftSlides = 251 ; window [ "AscDFH" ] . historydescription _Presentation _DeleteSlides =
252 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeLayout = 253 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeSlideSize = 254 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeColorScheme = 255 ; window [ "AscDFH" ] . historydescription _Presentation _AddComment = 256 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeComment = 257 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrFontName = 258 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrFontSize = 259 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrBold =
260 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrItalic = 261 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrUnderline = 262 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrStrikeout = 263 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrLineSpacing = 264 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrSpacingBeforeAfter = 265 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrIncreaseFontSize = 266 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrDecreaseFontSize =
267 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrAlign = 268 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrBaseline = 269 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrListType = 270 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextColor = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextColor2 = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutPrIndent = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutPrIndentRight = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutPrFirstLineIndent =
271 ; window [ "AscDFH" ] . historydescription _Presentation _AddPageBreak = 271 ; window [ "AscDFH" ] . historydescription _Presentation _AddRowAbove = 272 ; window [ "AscDFH" ] . historydescription _Presentation _AddRowBelow = 273 ; window [ "AscDFH" ] . historydescription _Presentation _AddColLeft = 274 ; window [ "AscDFH" ] . historydescription _Presentation _AddColRight = 275 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveRow = 276 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveCol = 277 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveTable =
278 ; window [ "AscDFH" ] . historydescription _Presentation _MergeCells = 279 ; window [ "AscDFH" ] . historydescription _Presentation _SplitCells = 280 ; window [ "AscDFH" ] . historydescription _Presentation _TblApply = 281 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveComment = 282 ; window [ "AscDFH" ] . historydescription _Presentation _EndFontLoad = 283 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeTheme = 284 ; window [ "AscDFH" ] . historydescription _Presentation _TableMoveFromRulers = 285 ; window [ "AscDFH" ] . historydescription _Presentation _TableMoveFromRulersInline =
286 ; window [ "AscDFH" ] . historydescription _Presentation _PasteOnThumbnails = 287 ; window [ "AscDFH" ] . historydescription _Presentation _PasteOnThumbnailsSafari = 288 ; window [ "AscDFH" ] . historydescription _Document _ConvertOldEquation = 289 ; window [ "AscDFH" ] . historydescription _Presentation _SetVert = 290 ; window [ "AscDFH" ] . historydescription _Document _AddNewStyle = 291 ; window [ "AscDFH" ] . historydescription _Document _RemoveStyle = 292 ; window [ "AscDFH" ] . historydescription _Document _AddTextArt = 293 ; window [ "AscDFH" ] . historydescription _Document _RemoveAllCustomStyles =
294 ; window [ "AscDFH" ] . historydescription _Document _AcceptAllRevisionChanges = 295 ; window [ "AscDFH" ] . historydescription _Document _RejectAllRevisionChanges = 296 ; window [ "AscDFH" ] . historydescription _Document _AcceptRevisionChange = 297 ; window [ "AscDFH" ] . historydescription _Document _RejectRevisionChange = 298 ; window [ "AscDFH" ] . historydescription _Document _AcceptRevisionChangesBySelection = 299 ; window [ "AscDFH" ] . historydescription _Document _RejectRevisionChangesBySelection = 300 ; window [ "AscDFH" ] . historydescription _Document _AddLetterUnion =
301 ; window [ "AscDFH" ] . historydescription _Presentation _ApplyTransitionToAll = 302 ; window [ "AscDFH" ] . historydescription _Document _SetColumnsFromRuler = 303 ; window [ "AscDFH" ] . historydescription _Document _SetColumnsProps = 304 ; window [ "AscDFH" ] . historydescription _Document _AddColumnBreak = 305 ; window [ "AscDFH" ] . historydescription _Document _SetSectionProps = 306 ; window [ "AscDFH" ] . historydescription _Document _AddTabToMath = 307 ; window [ "AscDFH" ] . historydescription _Document _SetMathProps = 308 ; window [ "AscDFH" ] . historydescription _Document _ApplyPrToMath =
309 ; window [ "AscDFH" ] . historydescription _Document _ApiBuilder = 310 ; window [ "AscDFH" ] . historydescription _Document _AddOleObject = 311 ; window [ "AscDFH" ] . historydescription _Document _EditOleObject = 312 ; window [ "AscDFH" ] . historydescription _Document _CompositeInput = 313 ; window [ "AscDFH" ] . historydescription _Document _CompositeInputReplace = 314 ; window [ "AscDFH" ] . historydescription _Document _AddPageCount = 315 ; window [ "AscDFH" ] . historydescription _Document _AddFootnote = 316 ; window [ "AscDFH" ] . historydescription _Document _SetFootnotePr =
317 ; window [ "AscDFH" ] . historydescription _Document _RemoveAllFootnotes = 318 ; window [ "AscDFH" ] . historydescription _Document _InsertDocumentsByUrls = 319 ; window [ "AscDFH" ] . historydescription _Document _InsertSignatureLine = 320 ; window [ "AscDFH" ] . historydescription _Document _AddBlockLevelContentControl = 321 ; window [ "AscDFH" ] . historydescription _Document _AddInlineLevelContentControl = 322 ; window [ "AscDFH" ] . historydescription _Document _RemoveContentControl = 323 ; window [ "AscDFH" ] . historydescription _Document _RemoveContentControlWrapper =
324 ; window [ "AscDFH" ] . historydescription _Document _ChangeContentControlProperties = 325 ; window [ "AscDFH" ] . historydescription _Presentation _HideSlides = 326 ; window [ "AscDFH" ] . historydescription _DocumentMacros _Data = 327 ; window [ "AscDFH" ] . historydescription _Document _AddBookmark = 328 ; window [ "AscDFH" ] . historydescription _Document _AddTableOfContents = 329 ; window [ "AscDFH" ] . historydescription _Document _ChangeOutlineLevel = 330 ; window [ "AscDFH" ] . historydescription _Document _AddElementToOutline = 331 ; window [ "AscDFH" ] . historydescription _Document _ResizeTable =
332 ; window [ "AscDFH" ] . historydescription _Document _RemoveComplexField = 333 ; window [ "AscDFH" ] . historydescription _Document _SetComplexFieldPr = 334 ; window [ "AscDFH" ] . historydescription _Document _UpdateTableOfContents = 335 ; window [ "AscDFH" ] . historydescription _Document _SectionStartPage = 336 ; window [ "AscDFH" ] . historydescription _Document _DistributeTableCells = 337 ; window [ "AscDFH" ] . historydescription _Document _RemoveBookmark = 338 ; window [ "AscDFH" ] . historydescription _Document _ContinueNumbering = 339 ; window [ "AscDFH" ] . historydescription _Document _RestartNumbering =
340 ; window [ "AscDFH" ] . historydescription _Document _AutomaticListAsType = 341 ; window [ "AscDFH" ] . historydescription _Document _CreateNum = 342 ; window [ "AscDFH" ] . historydescription _Document _ChangeNumLvl = 343 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectSmartQuotes = 344 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectHyphensWithDash = 345 ; window [ "AscDFH" ] . historydescription _Document _SetGlobalSdtHighlightColor = 346 ; window [ "AscDFH" ] . historydescription _Document _SetGlobalSdtShowHighlight = 347 ; window [ "AscDFH" ] . historydescription _Document _UpdateFields =
348 ; window [ "AscDFH" ] . historydescription _Document _AddBlankPage = 349 ; window [ "AscDFH" ] . historydescription _Document _AddTableFormula = 350 ; window [ "AscDFH" ] . historydescription _Document _ChangeTableFormula = 350 ; window [ "AscDFH" ] . historydescription _SetCoreproperties = 351 ; window [ "AscDFH" ] . historydescription _Document _AddWatermark = 352 ; window [ "AscDFH" ] . historydescription _Presentation _SetHF = 353 ; window [ "AscDFH" ] . historydescription _Presentation _AddSlideNumber = 354 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphOutlineLvl =
355 ; window [ "AscDFH" ] . historydescription _Document _RemoveTableCells = 356 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlCheckBox = 357 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlCheckBoxPr = 358 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlPicture = 359 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlPictureUrl = 360 ; window [ "AscDFH" ] . historydescription _Document _RemoveAllComments = 361 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlList =
362 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlListPr = 363 ; window [ "AscDFH" ] . historydescription _Document _SelectContentControlListItem = 364 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlDatePicker = 365 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlDatePickerPr = 366 ; window [ "AscDFH" ] . historydescription _Presentation _AddToLayout = 367 ; window [ "AscDFH" ] . historydescription _Presentation _FitImagesToSlide = 368 ; window [ "AscDFH" ] . historydescription _Document _AddTextWithProperties =
369 ; window [ "AscDFH" ] . historydescription _Document _AddCaption = 370 ; window [ "AscDFH" ] . historydescription _Document _CompareDocuments = 371 ; window [ "AscDFH" ] . historydescription _Document _DrawNewTable = 372 ; window [ "AscDFH" ] . historydescription _Document _DrawTable = 373 ; window [ "AscDFH" ] . historydescription _Document _AddDateTimeField = 374 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlTextPlaceholder = 375 ; window [ "AscDFH" ] . historydescription _Document _AddEndnote = 376 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlTextForm =
377 ; window [ "AscDFH" ] . historydescription _Document _SetEndnotePr = 378 ; window [ "AscDFH" ] . historydescription _Document _ConvertFootnoteType = 379 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectCommon = 380 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _ClearFormatting = 381 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _AddNonBreakingSpace = 382 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphSuppressLineNumbers = 383 ; window [ "AscDFH" ] . historydescription _Document _SetLineNumbersProps = 384 ;
window [ "AscDFH" ] . historydescription _Document _AddCrossRef = 385 ; window [ "AscDFH" ] . historydescription _Document _ClearAllSpecialForms = 386 ; window [ "AscDFH" ] . historydescription _Document _ChangeTextCase = 387 ; window [ "AscDFH" ] . historydescription _Document _SetNumberingLvl = 388 ; window [ "AscDFH" ] . historydescription _Document _SetTrackRevisions = 389 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlText = 390 ; window [ "AscDFH" ] . historydescription _Document _ClearContentControl = 391 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectFirstLetterOfSentence =
392 ; window [ "AscDFH" ] . historydescription _Document _ConvertTextToTable = 393 ; window [ "AscDFH" ] . historydescription _Document _ConvertTableToText = 394 ; window [ "AscDFH" ] . historydescription _Document _ResolveAllComments = 395 ; window [ "AscDFH" ] . historydescription _Document _ConvertFormFixedType = 396 ; window [ "AscDFH" ] . changesFactory = { } ; window [ "AscDFH" ] . changesFactory [ window [ "AscDFH" ] . historyitem _Unknown _Unknown ] = CChangesBase ; window [ "AscDFH" ] . changesRelationMap = { } ; function CChangesBase ( Class ) { this . Class = Class ; this . Reverted =
false } CChangesBase . prototype . Type = window [ "AscDFH" ] . historyitem _Unknown _Unknown ; CChangesBase . prototype . GetType = function ( ) { return this . Type } ; 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 ( ) { 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 } ; CChangesBase . prototype . IsNeedRecalculate = function ( ) { return true } ; CChangesBase . prototype . IsNeedRecalculateLineNumbers = function ( ) { return false } ; CChangesBase . prototype . IsDescriptionChange = function ( ) { return false } ; window [ "AscDFH" ] . CChangesBase = 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 . GetItem = function ( nIndex ) { return this . Items [ nIndex ] } ; CChangesBaseContentChange . prototype . GetPos = function ( nIndex ) { if ( nIndex === undefined ) nIndex = 0 ; return this . UseArray ?
this . PosArray [ nIndex ] : this . Pos + nIndex } ; CChangesBaseContentChange . prototype . WriteToBinary = function ( Writer ) { 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 ) { 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 ) { 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 ; 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 ; 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 ) { 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 ) { 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 ; 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 ) { 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 ) { 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 ;
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 ) { 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 ) { 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 ; 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 ) { 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 ) { 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 ; 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 ) { 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 ) { 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 ; 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 ) { 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 ) { 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 ; 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 ) { Writer . WriteLong ( this . New ) ; Writer . WriteLong ( this . Old ) } ; CChangesBaseLongValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetLong ( ) ; this . Old = Reader . GetLong ( ) } ;
window [ "AscDFH" ] . CChangesBaseLongValue = CChangesBaseLongValue ; 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 ) { Writer . WriteBool ( this . New ) ; Writer . WriteBool ( this . Old ) } ; CChangesBaseBoolValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetBool ( ) ;
this . Old = Reader . GetBool ( ) } ; window [ "AscDFH" ] . CChangesBaseBoolValue = CChangesBaseBoolValue ; 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 ;
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 ) { Writer . WriteString2 ( this . New ) ; Writer . WriteString2 ( this . Old ) } ; CChangesBaseStringValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetString2 ( ) ; this . Old = Reader . GetString2 ( ) } ;
window [ "AscDFH" ] . CChangesBaseStringValue = CChangesBaseStringValue ; 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 ) { Writer . WriteByte ( this . New ) ; Writer . WriteByte ( this . Old ) } ; CChangesBaseByteValue . prototype . ReadFromBinary = function ( Reader ) { this . New =
Reader . GetByte ( ) ; this . Old = Reader . GetByte ( ) } ; window [ "AscDFH" ] . CChangesBaseByteValue = CChangesBaseByteValue ; 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 ) { Writer . WriteDouble ( this . New ) ; Writer . WriteDouble ( this . Old ) } ; CChangesBaseDoubleValue . prototype . ReadFromBinary =
function ( Reader ) { this . New = Reader . GetDouble ( ) ; this . Old = Reader . GetDouble ( ) } ; window [ "AscDFH" ] . CChangesBaseDoubleValue = CChangesBaseDoubleValue } ) ( window ) ; "use strict" ;
( 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 } ; CTableId . prototype . IsOn = function ( ) { return ! this . m _bTurnOff } ; CTableId . prototype . Get _ById = function ( Id ) { if ( "" === Id ) return null ; if ( this . m _aPairs [ Id ] ) return this . m _aPairs [ Id ] ; return null } ; 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 _MultiLvlStrRef ] = AscFormat . CMultiLvlStrRef ; this . m _oFactoryClass [ AscDFH . historyitem _type _MultiLvlStrCache ] = AscFormat . CMultiLvlStrCache ; 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 ; this . m _oFactoryClass [ AscDFH . historyitem _type _PresentationField ] = AscCommonWord . CPresentationField ; this . m _oFactoryClass [ AscDFH . historyitem _type _RelSizeAnchor ] = AscFormat . CRelSizeAnchor ; this . m _oFactoryClass [ AscDFH . historyitem _type _AbsSizeAnchor ] = AscFormat . CAbsSizeAnchor ; this . m _oFactoryClass [ AscDFH . historyitem _type _ParaRevisionMove ] = AscCommon . CParaRevisionMove ; this . m _oFactoryClass [ AscDFH . historyitem _type _RunRevisionMove ] = AscCommon . CRunRevisionMove ;
this . m _oFactoryClass [ AscDFH . historyitem _type _DocPart ] = AscCommon . CDocPart ; this . m _oFactoryClass [ AscDFH . historyitem _type _SlicerView ] = AscFormat . CSlicer ; this . m _oFactoryClass [ AscDFH . historyitem _type _ChartStyle ] = AscFormat . CChartStyle ; this . m _oFactoryClass [ AscDFH . historyitem _type _MarkerLayout ] = AscFormat . CMarkerLayout ; this . m _oFactoryClass [ AscDFH . historyitem _type _ChartStyleEntry ] = AscFormat . CStyleEntry ; 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 _SldSz ] = AscCommonSlide . CSlideSize ; this . m _oFactoryClass [ AscDFH . historyitem _type _EmptyObject ] = AscFormat . CEmptyObject ; this . m _oFactoryClass [ AscDFH . historyitem _type _Timing ] = AscFormat . CTiming ; this . m _oFactoryClass [ AscDFH . historyitem _type _CommonTimingList ] = AscFormat . CCommonTimingList ; this . m _oFactoryClass [ AscDFH . historyitem _type _AttrNameLst ] = AscFormat . CAttrNameLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldLst ] = AscFormat . CBldLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _CondLst ] =
AscFormat . CCondLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _ChildTnLst ] = AscFormat . CChildTnLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _TmplLst ] = AscFormat . CTmplLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _TnLst ] = AscFormat . CTnLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _TavLst ] = AscFormat . CTavLst ; this . m _oFactoryClass [ AscDFH . historyitem _type _ObjectTarget ] = AscFormat . CObjectTarget ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldBase ] = AscFormat . CBldBase ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldDgm ] =
AscFormat . CBldDgm ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldGraphic ] = AscFormat . CBldGraphic ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldOleChart ] = AscFormat . CBldOleChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldP ] = AscFormat . CBldP ; this . m _oFactoryClass [ AscDFH . historyitem _type _BldSub ] = AscFormat . CBldSub ; this . m _oFactoryClass [ AscDFH . historyitem _type _DirTransition ] = AscFormat . CDirTransition ; this . m _oFactoryClass [ AscDFH . historyitem _type _OptBlackTransition ] = AscFormat . COptionalBlackTransition ;
this . m _oFactoryClass [ AscDFH . historyitem _type _GraphicEl ] = AscFormat . CGraphicEl ; this . m _oFactoryClass [ AscDFH . historyitem _type _IndexRg ] = AscFormat . CIndexRg ; this . m _oFactoryClass [ AscDFH . historyitem _type _Tmpl ] = AscFormat . CTmpl ; this . m _oFactoryClass [ AscDFH . historyitem _type _Anim ] = AscFormat . CAnim ; this . m _oFactoryClass [ AscDFH . historyitem _type _CBhvr ] = AscFormat . CCBhvr ; this . m _oFactoryClass [ AscDFH . historyitem _type _CTn ] = AscFormat . CCTn ; this . m _oFactoryClass [ AscDFH . historyitem _type _Cond ] = AscFormat . CCond ; this . m _oFactoryClass [ AscDFH . historyitem _type _Rtn ] =
AscFormat . CRtn ; this . m _oFactoryClass [ AscDFH . historyitem _type _TgtEl ] = AscFormat . CTgtEl ; this . m _oFactoryClass [ AscDFH . historyitem _type _SndTgt ] = AscFormat . CSndTgt ; this . m _oFactoryClass [ AscDFH . historyitem _type _SpTgt ] = AscFormat . CSpTgt ; this . m _oFactoryClass [ AscDFH . historyitem _type _IterateData ] = AscFormat . CIterateData ; this . m _oFactoryClass [ AscDFH . historyitem _type _Tm ] = AscFormat . CTm ; this . m _oFactoryClass [ AscDFH . historyitem _type _Tav ] = AscFormat . CTav ; this . m _oFactoryClass [ AscDFH . historyitem _type _AnimVariant ] = AscFormat . CAnimVariant ;
this . m _oFactoryClass [ AscDFH . historyitem _type _AnimClr ] = AscFormat . CAnimClr ; this . m _oFactoryClass [ AscDFH . historyitem _type _AnimEffect ] = AscFormat . CAnimEffect ; this . m _oFactoryClass [ AscDFH . historyitem _type _AnimMotion ] = AscFormat . CAnimMotion ; this . m _oFactoryClass [ AscDFH . historyitem _type _AnimRot ] = AscFormat . CAnimRot ; this . m _oFactoryClass [ AscDFH . historyitem _type _AnimScale ] = AscFormat . CAnimScale ; this . m _oFactoryClass [ AscDFH . historyitem _type _Audio ] = AscFormat . CAudio ; this . m _oFactoryClass [ AscDFH . historyitem _type _CMediaNode ] =
AscFormat . CCMediaNode ; this . m _oFactoryClass [ AscDFH . historyitem _type _Cmd ] = AscFormat . CCmd ; this . m _oFactoryClass [ AscDFH . historyitem _type _TimeNodeContainer ] = AscFormat . CTimeNodeContainer ; this . m _oFactoryClass [ AscDFH . historyitem _type _Par ] = AscFormat . CPar ; this . m _oFactoryClass [ AscDFH . historyitem _type _Excl ] = AscFormat . CExcl ; this . m _oFactoryClass [ AscDFH . historyitem _type _Seq ] = AscFormat . CSeq ; this . m _oFactoryClass [ AscDFH . historyitem _type _Set ] = AscFormat . CSet ; this . m _oFactoryClass [ AscDFH . historyitem _type _Video ] = AscFormat . CVideo ;
this . m _oFactoryClass [ AscDFH . historyitem _type _OleChartEl ] = AscFormat . COleChartEl ; this . m _oFactoryClass [ AscDFH . historyitem _type _TlPoint ] = AscFormat . CTLPoint ; this . m _oFactoryClass [ AscDFH . historyitem _type _SndAc ] = AscFormat . CSndAc ; this . m _oFactoryClass [ AscDFH . historyitem _type _StSnd ] = AscFormat . CStSnd ; this . m _oFactoryClass [ AscDFH . historyitem _type _TxEl ] = AscFormat . CTxEl ; this . m _oFactoryClass [ AscDFH . historyitem _type _Wheel ] = AscFormat . CWheel ; this . m _oFactoryClass [ AscDFH . historyitem _type _AttrName ] = AscFormat . CAttrName } 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 _PivotWorksheetSource ] = Asc . CT _WorksheetSource ; this . m _oFactoryClass [ AscDFH . historyitem _type _NamedSheetView ] = Asc . CT _NamedSheetView ; this . m _oFactoryClass [ AscDFH . historyitem _type _DataValidation ] =
AscCommonExcel . CDataValidation } 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 ) ; "use strict" ;
( function ( window , undefined ) { 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 ) { Writer . WriteString2 ( this . Id ) ;
this . NewClass . Write _ToBinary2 ( Writer ) } ; CChangesTableIdAdd . prototype . ReadFromBinary = function ( Reader ) { 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 ; 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 ) { 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 ) { 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 ) { } ; CChangesTableIdDescription . prototype . RefreshRecalcData = function ( ) { } ; CChangesTableIdDescription . prototype . CreateReverseChange =
function ( ) { return null } ; CChangesTableIdDescription . prototype . IsDescriptionChange = function ( ) { return true } ; window [ "AscCommon" ] . CChangesTableIdDescription = CChangesTableIdDescription ; 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 . GetWidthMM ( ) - oDrawing . spPr . xfrm . extX ) / 2 ; oDrawing . spPr . xfrm . offY = ( oLogicDocument . GetHeightMM ( ) - 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 ] ; "use strict" ;
( function ( window , undefined ) { function asc _CDownloadOptions ( fileType , isDownloadEvent ) { this . fileType = fileType ; this . isDownloadEvent = ! ! isDownloadEvent ; this . advancedOptions = null ; this . compatible = false ; this . isNaturalDownload = false ; this . errorDirect = null ; this . oDocumentMailMerge = null ; this . oMailMergeSendData = null ; this . callback = null ; this . isGetTextFromUrl = null } asc _CDownloadOptions . prototype . asc _setFileType = function ( fileType ) { this . fileType = fileType } ; asc _CDownloadOptions . prototype . asc _setIsDownloadEvent = function ( isDownloadEvent ) { this . isDownloadEvent =
isDownloadEvent } ; asc _CDownloadOptions . prototype . asc _setAdvancedOptions = function ( advancedOptions ) { this . advancedOptions = advancedOptions } ; asc _CDownloadOptions . prototype . asc _setCompatible = function ( compatible ) { this . compatible = compatible } ; function asc _CAdvancedOptions ( 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 _CTextOptions ( opt [ "codepage" ] , opt [ "delimiter" ] ) ;
this . data = opt [ "data" ] } asc _CAdvancedOptions . prototype . asc _getCodePages = function ( ) { return this . codePages } ; asc _CAdvancedOptions . prototype . asc _getRecommendedSettings = function ( ) { return this . recommendedSettings } ; asc _CAdvancedOptions . prototype . asc _getData = function ( ) { return this . data } ; function asc _CTextOptions ( codepage , delimiter , delimiterChar ) { this . codePage = codepage ; this . delimiter = delimiter ; this . delimiterChar = delimiterChar ; this . numberDecimalSeparator = null ; this . numberGroupSeparator = null } asc _CTextOptions . prototype . asc _getDelimiter =
function ( ) { return this . delimiter } ; asc _CTextOptions . prototype . asc _setDelimiter = function ( v ) { this . delimiter = v } ; asc _CTextOptions . prototype . asc _getDelimiterChar = function ( ) { return this . delimiterChar } ; asc _CTextOptions . prototype . asc _setDelimiterChar = function ( v ) { this . delimiterChar = v } ; asc _CTextOptions . prototype . asc _getCodePage = function ( ) { return this . codePage } ; asc _CTextOptions . prototype . asc _setCodePage = function ( v ) { this . codePage = v } ; asc _CTextOptions . prototype . asc _getNumberDecimalSeparator = function ( ) { return this . numberDecimalSeparator !==
null ? this . numberDecimalSeparator : AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator } ; asc _CTextOptions . prototype . asc _getNumberGroupSeparator = function ( ) { return this . numberGroupSeparator !== null ? this . numberGroupSeparator : AscCommon . g _oDefaultCultureInfo . NumberGroupSeparator } ; asc _CTextOptions . prototype . asc _setNumberDecimalSeparator = function ( v ) { this . numberDecimalSeparator = v } ; asc _CTextOptions . prototype . asc _setNumberGroupSeparator = function ( v ) { this . numberGroupSeparator = v } ; asc _CTextOptions . prototype . asc _getNumberDecimalSeparatorsArr =
function ( ) { var arr = [ "," , "." ] ; if ( arr . indexOf ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ) arr . push ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ; return arr } ; asc _CTextOptions . prototype . asc _getNumberGroupSeparatorsArr = function ( ) { var arr = [ "," , "." , "'" ] ; if ( arr . indexOf ( AscCommon . g _oDefaultCultureInfo . NumberGroupSeparator ) ) arr . push ( AscCommon . g _oDefaultCultureInfo . NumberGroupSeparator ) ; return arr } ; 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 } ; 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 } ; 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 } ; 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 ) } ; 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 } ; var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "Asc" ] . asc _CDownloadOptions = window [ "Asc" ] [ "asc_CDownloadOptions" ] = asc _CDownloadOptions ; prot = asc _CDownloadOptions . prototype ; prot [ "asc_setFileType" ] = prot . asc _setFileType ; prot [ "asc_setIsDownloadEvent" ] = prot . asc _setIsDownloadEvent ;
prot [ "asc_setAdvancedOptions" ] = prot . asc _setAdvancedOptions ; prot [ "asc_setCompatible" ] = prot . asc _setCompatible ; window [ "AscCommon" ] . asc _CAdvancedOptions = asc _CAdvancedOptions ; prot = asc _CAdvancedOptions . prototype ; prot [ "asc_getCodePages" ] = prot . asc _getCodePages ; prot [ "asc_getRecommendedSettings" ] = prot . asc _getRecommendedSettings ; prot [ "asc_getData" ] = prot . asc _getData ; window [ "Asc" ] . asc _CTextOptions = window [ "Asc" ] [ "asc_CTextOptions" ] = asc _CTextOptions ; prot = asc _CTextOptions . 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 ; prot [ "asc_setNumberDecimalSeparator" ] = prot . asc _setNumberDecimalSeparator ; prot [ "asc_setNumberGroupSeparator" ] = prot . asc _setNumberGroupSeparator ; 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 ) ; "use strict" ;
( function ( window , undefined ) { window [ "AscFonts" ] = window [ "AscFonts" ] || { } ; window [ "AscFonts" ] . isEngineReady = false ; window [ "AscFonts" ] . api = null ; window [ "AscFonts" ] . onSuccess = null ; window [ "AscFonts" ] . onError = null ; window [ "AscFonts" ] . maxLoadingIndex = 5 ; window [ "AscFonts" ] . curLoadingIndex = 0 ; window [ "AscFonts" ] . allocate = function ( size ) { if ( typeof Uint8Array != "undefined" && ! window . opera ) return new Uint8Array ( size ) ; var arr = new Array ( size ) ; for ( var i = 0 ; i < size ; i ++ ) arr [ i ] = 0 ; return arr } ; window [ "AscFonts" ] . allocateData = function ( size ) { return { data : window [ "AscFonts" ] . allocate ( size ) } } ;
window [ "AscFonts" ] . onLoadModule = function ( ) { if ( window [ "AscFonts" ] . isEngineReady ) return ; ++ window [ "AscFonts" ] . curLoadingIndex ; if ( window [ "AscFonts" ] . curLoadingIndex == window [ "AscFonts" ] . maxLoadingIndex ) { if ( window [ "AscFonts" ] . api ) { window [ "AscFonts" ] . isEngineReady = true ; window [ "AscFonts" ] . onSuccess . call ( window [ "AscFonts" ] . api ) } delete window [ "AscFonts" ] . curLoadingIndex ; delete window [ "AscFonts" ] . maxLoadingIndex ; delete window [ "AscFonts" ] . api ; delete window [ "AscFonts" ] . onSuccess ; delete window [ "AscFonts" ] . onError } } ;
window [ "AscFonts" ] . load = function ( api , onSuccess , onError ) { window [ "AscFonts" ] . api = api ; window [ "AscFonts" ] . onSuccess = onSuccess ; window [ "AscFonts" ] . onError = onError ; if ( window [ "NATIVE_EDITOR_ENJINE" ] === true || window [ "IS_NATIVE_EDITOR" ] === true || window [ "Native" ] !== undefined ) { window [ "AscFonts" ] . isEngineReady = true ; window [ "AscFonts" ] . onSuccess . call ( window [ "AscFonts" ] . api ) ; delete window [ "AscFonts" ] . curLoadingIndex ; delete window [ "AscFonts" ] . maxLoadingIndex ; delete window [ "AscFonts" ] . api ; delete window [ "AscFonts" ] . onSuccess ;
delete window [ "AscFonts" ] . onError ; return } var url = "../../../../sdkjs/common/libfont" ; var useWasm = false ; var webAsmObj = window [ "WebAssembly" ] ; if ( typeof webAsmObj === "object" ) if ( typeof webAsmObj [ "Memory" ] === "function" ) if ( typeof webAsmObj [ "instantiateStreaming" ] === "function" || typeof webAsmObj [ "instantiate" ] === "function" ) useWasm = true ; if ( useWasm && ( AscCommon . AscBrowser . isAppleDevices || AscCommon . AscBrowser . isAndroid ) ) useWasm = false ; useWasm ? url += "/wasm" : url += "/js" ; if ( ! useWasm ) window [ "AscFonts" ] . onLoadModule ( ) ;
var _onSuccess = function ( ) { } ; var _onError = function ( ) { window [ "AscFonts" ] . onError ( ) } ; if ( window [ "AscNotLoadAllScript" ] ) { AscCommon . loadScript ( url + "/engine.js" , _onSuccess , _onError ) ; AscCommon . loadScript ( url + "/file.js" , _onSuccess , _onError ) ; AscCommon . loadScript ( url + "/manager.js" , _onSuccess , _onError ) } else AscCommon . loadScript ( url + "/fonts.js?" + window . CP _urlArgs , _onSuccess , _onError ) } ; function FontStream ( data , size ) { this . data = data ; this . size = size } window [ "AscFonts" ] . FontStream = FontStream ; window [ "AscFonts" ] . FT _Common =
{ UintToInt : function ( v ) { return v > 2147483647 ? v - 4294967296 : v } , UShort _To _Short : function ( v ) { return v > 32767 ? v - 65536 : v } , IntToUInt : function ( v ) { return v < 0 ? v + 4294967296 : v } , Short _To _UShort : function ( v ) { return v < 0 ? v + 65536 : v } , memset : function ( d , v , s ) { for ( var i = 0 ; i < s ; i ++ ) d [ i ] = v } } ; function CPointer ( ) { this . obj = null ; this . data = null ; this . pos = 0 } function FT _Memory ( ) { this . canvas = document . createElement ( "canvas" ) ; this . canvas . width = 1 ; this . canvas . height = 1 ; this . ctx = this . canvas . getContext ( "2d" ) ; this . Alloc = function ( size ) { var p =
new CPointer ; p . obj = this . ctx . createImageData ( 1 , parseInt ( ( size + 3 ) / 4 ) ) ; p . data = p . obj . data ; p . pos = 0 ; return p } ; this . AllocHeap = function ( ) { } ; this . CreateStream = function ( size ) { var _size = parseInt ( ( size + 3 ) / 4 ) ; var obj = this . ctx . createImageData ( 1 , _size ) ; return new FontStream ( obj . data , _size ) } } window [ "AscFonts" ] . FT _Memory = FT _Memory ; window [ "AscFonts" ] . g _memory = new FT _Memory ; function CRasterMemory ( ) { this . width = 0 ; this . height = 0 ; this . pitch = 0 ; this . m _oBuffer = null ; this . CheckSize = function ( w , h ) { if ( this . width < w + 1 || this . height <
h + 1 ) { this . width = Math . max ( this . width , w + 1 ) ; this . pitch = 4 * this . width ; this . height = Math . max ( this . height , h + 1 ) ; this . m _oBuffer = null ; this . m _oBuffer = window [ "AscFonts" ] . g _memory . ctx . createImageData ( this . width , this . height ) } } } window [ "AscFonts" ] . raster _memory = new CRasterMemory ; window [ "AscFonts" ] . registeredFontManagers = [ ] ; window [ "AscFonts" ] . getDefaultBlitting = function ( ) { return AscCommon . AscBrowser . isIE && ! AscCommon . AscBrowser . isArm ? true : false } ; window [ "AscFonts" ] . setDefaultBlitting = function ( value ) { var defaultValue =
window [ "AscFonts" ] . getDefaultBlitting ( ) ; var newValue = value ? defaultValue : ! defaultValue ; if ( window [ "AscFonts" ] . use _map _blitting === newValue ) return ; window [ "AscFonts" ] . use _map _blitting = newValue ; var arrManagers = window [ "AscFonts" ] . registeredFontManagers ; for ( var i = 0 , count = arrManagers . length ; i < count ; i ++ ) { arrManagers [ i ] . ClearFontsRasterCache ( ) ; arrManagers [ i ] . InitializeRasterMemory ( ) } } ; window [ "AscFonts" ] . use _map _blitting = window [ "AscFonts" ] . getDefaultBlitting ( ) } ) ( window , undefined ) ; "use strict" ;
( function ( window , undefined ) { var CColor = AscCommon . CColor ; var c _oAscConfirm = { ConfirmReplaceRange : 0 , ConfirmPutMergeRange : 1 , ConfirmReplaceFormulaInTable : 2 } ; var c _oAscMergeOptions = { Disabled : - 1 , None : 0 , Merge : 1 , MergeCenter : 2 , MergeAcross : 3 } ; var c _oAscSortOptions = { Ascending : 1 , Descending : 2 , ByColorFill : 3 , ByColorFont : 4 , ByIcon : 5 , ByValue : 6 } ; var c _oAscBorderOptions = { Top : 0 , Right : 1 , Bottom : 2 , Left : 3 , DiagD : 4 , DiagU : 5 , InnerV : 6 , InnerH : 7 } ; var c _oAscCleanOptions = { All : 0 , Text : 1 , Format : 2 , Formula : 4 , Comments : 5 , Hyperlinks : 6 , Sparklines : 7 ,
SparklineGroups : 8 } ; var c _oAscCalculateType = { WorkbookOnlyChanged : 1 , ActiveSheet : 2 , Workbook : 3 , All : 4 } ; var c _oAscDrawDepOptions = { Master : 0 , Slave : 1 , Clear : 2 } ; var c _oAscSelectionDialogType = { None : 0 , FormatTable : 1 , Chart : 2 , FormatTableChangeRange : 4 , CustomSort : 5 , PivotTableData : 6 , PivotTableReport : 7 , PrintTitles : 8 , Function : 9 , DataValidation : 10 , ConditionalFormattingRule : 11 } ; var c _oAscScrollType = { ScrollVertical : 1 , ScrollHorizontal : 2 } ; var c _oAscHyperlinkType = { WebLink : 1 , RangeLink : 2 } ; var c _oAscMouseMoveType = { None : 0 , Hyperlink : 1 ,
Comment : 2 , LockedObject : 3 , ResizeColumn : 4 , ResizeRow : 5 , Filter : 6 , Tooltip : 7 } ; var c _oAscMouseMoveLockedObjectType = { None : - 1 , Range : 0 , TableProperties : 1 , Sheet : 2 } ; var c _oAscLockTypeElem = { Range : 1 , Object : 2 , Sheet : 3 } ; var c _oAscLockTypeElemSubType = { DeleteColumns : 1 , InsertColumns : 2 , DeleteRows : 3 , InsertRows : 4 , ChangeProperties : 5 , DefinedNames : 6 , NamedSheetView : 7 } ; var c _oAscRecalcIndexTypes = { RecalcIndexAdd : 1 , RecalcIndexRemove : 2 } ; var c _oAscCustomAutoFilter = { equals : 1 , isGreaterThan : 2 , isGreaterThanOrEqualTo : 3 , isLessThan : 4 , isLessThanOrEqualTo : 5 ,
doesNotEqual : 6 , beginsWith : 7 , doesNotBeginWith : 8 , endsWith : 9 , doesNotEndWith : 10 , contains : 11 , doesNotContain : 12 } ; var c _oAscDynamicAutoFilter = { aboveAverage : 1 , belowAverage : 2 , lastMonth : 3 , lastQuarter : 4 , lastWeek : 5 , lastYear : 6 , m1 : 7 , m10 : 8 , m11 : 9 , m12 : 10 , m2 : 11 , m3 : 12 , m4 : 13 , m5 : 14 , m6 : 15 , m7 : 16 , m8 : 17 , m9 : 18 , nextMonth : 19 , nextQuarter : 20 , nextWeek : 21 , nextYear : 22 , nullType : 23 , q1 : 24 , q2 : 25 , q3 : 26 , q4 : 27 , thisMonth : 28 , thisQuarter : 29 , thisWeek : 30 , thisYear : 31 , today : 32 , tomorrow : 33 , yearToDate : 34 , yesterday : 35 } ; var c _oAscTop10AutoFilter =
{ max : 1 , min : 2 } ; var c _oAscChangeFilterOptions = { filter : 1 , style : 2 } ; var c _oAscChangeSelectionFormatTable = { all : 1 , data : 2 , row : 3 , column : 4 , dataColumn : 5 } ; var c _oAscChangeTableStyleInfo = { columnFirst : 1 , columnLast : 2 , columnBanded : 3 , rowHeader : 4 , rowTotal : 5 , rowBanded : 6 , filterButton : 7 , advancedSettings : 8 } ; var c _oAscCellEditorState = { editEnd : 0 , editStart : 1 , editEmptyCell : 2 , editText : 3 , editFormula : 4 , editInFormulaBar : 5 , editInCell : 6 } ; var c _oAscCellEditorSelectState = { no : 0 , char : 1 , word : 2 } ; var c _oAscCanChangeColWidth = { none : 0 , numbers : 1 ,
all : 2 } ; var c _oAscMergeType = { none : 0 , cols : 1 , rows : 2 } ; var c _oAscPaneState = { Frozen : "frozen" , FrozenSplit : "frozenSplit" , Split : "split" } ; var c _oAscFindLookIn = { Formulas : 1 , Value : 2 , Annotations : 3 } ; var c _oTargetType = { None : 0 , ColumnResize : 1 , RowResize : 2 , FillHandle : 3 , MoveRange : 4 , MoveResizeRange : 5 , FilterObject : 6 , ColumnHeader : 7 , RowHeader : 8 , Corner : 9 , Hyperlink : 10 , Cells : 11 , Shape : 12 , FrozenAnchorH : 14 , FrozenAnchorV : 15 , GroupRow : 16 , GroupCol : 17 , TableSelectionChange : 18 } ; var c _oAscAutoFilterTypes = { ColorFilter : 0 , CustomFilters : 1 ,
DynamicFilter : 2 , Top10 : 3 , Filters : 4 , None : 5 } ; var c _oAscCoAuthoringMeBorderColor = new CColor ( 22 , 156 , 0 ) ; var c _oAscCoAuthoringOtherBorderColor = new CColor ( 238 , 53 , 37 ) ; var c _oAscCoAuthoringLockTablePropertiesBorderColor = new CColor ( 255 , 144 , 0 ) ; var c _oAscCoAuthoringDottedWidth = 4 ; var c _oAscCoAuthoringDottedDistance = 2 ; var c _oAscFormulaRangeBorderColor = [ new CColor ( 95 , 140 , 237 ) , new CColor ( 235 , 94 , 96 ) , new CColor ( 141 , 97 , 194 ) , new CColor ( 45 , 150 , 57 ) , new CColor ( 191 , 76 , 145 ) , new CColor ( 227 , 130 , 34 ) , new CColor ( 55 , 127 , 158 ) ] ; var selectionLineType =
{ None : 0 , Selection : 1 , ActiveCell : 2 , Resize : 4 , Promote : 8 , Dash : 16 , DashThick : 32 } ; var c _oAscLockNameFrozenPane = "frozenPane" ; var c _oAscLockNameTabColor = "tabColor" ; var c _oAscLockAddSheet = "addSheet" ; var c _oAscLockLayoutOptions = "layoutOptions" ; var c _oAscHeaderFooterEdit = "headerFooterEdit" ; var c _oAscLockPrintScaleOptions = "printScaleOptions" ; var c _oAscGetDefinedNamesList = { Worksheet : 0 , WorksheetWorkbook : 1 , All : 2 } ; var c _oAscDefinedNameReason = { WrongName : - 1 , IsLocked : - 2 , Existed : - 3 , LockDefNameManager : - 4 , NameReserved : - 5 ,
OK : 0 } ; var c _oAscPopUpSelectorType = { None : 0 , Func : 1 , Range : 2 , Table : 3 , Slicer : 4 , TotalRowFunc : 5 } ; var c _oSerFormat = { Version : 2 , Signature : "XLSY" } ; var c _oAscSparklineType = { Line : 0 , Column : 1 , Stacked : 2 } ; var c _oAscEDispBlanksAs = { Span : 0 , Gap : 1 , Zero : 2 } ; var c _oAscSparklineAxisMinMax = { Individual : 0 , Group : 1 , Custom : 2 } ; var c _oAscAutoCorrectOptions = { UndoTableAutoExpansion : 0 , RedoTableAutoExpansion : 1 } ; var c _oAscChangePrintAreaType = { set : 0 , clear : 1 , add : 2 } ; var c _oAscHeaderFooterField = { pageNumber : 0 , pageCount : 1 , sheetName : 2 , fileName : 3 ,
filePath : 4 , date : 5 , time : 6 , lineBreak : 7 } ; var c _oAscPageHFType = { firstHeader : 0 , oddHeader : 1 , evenHeader : 2 , firstFooter : 3 , oddFooter : 4 , evenFooter : 5 } ; var c _oAscHeaderFooterType = { first : 0 , odd : 1 , even : 2 } ; var c _oAscHeaderFooterPresets = { none : 0 , page : 1 , pageOfQuestion : 2 , sheet : 3 , confidential : 4 , bookName : 5 , sheetPage : 6 , sheetConfidentialPage : 7 , bookNamePage : 8 , pageSheet : 9 , pageBook : 10 , pageBookName : 11 , userPageDate : 12 , preparedUserDatePage : 13 , custom : 14 } ; var c _oAscPrintTitlesRangeType = { first : 0 , frozen : 1 , current : 2 } ; var c _oAscFormulaArgumentType =
{ number : 0 , text : 1 , reference : 2 , any : 3 , logical : 4 } ; var c _oAscSelectionForCFType = { selection : 1 , worksheet : 2 , table : 3 , pivot : 4 } ; var c _kMaxPrintPages = 1500 ; var c _oAscFrozenPaneBorderType = { shadow : 1 , line : 2 } ; var c _oAscCFRuleTypeSettings = { dataBar : 1 , colorScale : 2 , icons : 3 , format : 4 } ; var c _oAscFrozenPaneAddType = { firstRow : 1 , firstCol : 2 } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; window [ "AscCommonExcel" ] . c _oAscDrawDepOptions = c _oAscDrawDepOptions ; window [ "AscCommonExcel" ] . c _oAscScrollType = c _oAscScrollType ; window [ "AscCommonExcel" ] . c _oAscLockTypeElem =
c _oAscLockTypeElem ; window [ "AscCommonExcel" ] . c _oAscLockTypeElemSubType = c _oAscLockTypeElemSubType ; window [ "AscCommonExcel" ] . c _oAscRecalcIndexTypes = c _oAscRecalcIndexTypes ; window [ "AscCommonExcel" ] . c _oAscCellEditorSelectState = c _oAscCellEditorSelectState ; window [ "AscCommonExcel" ] . c _oAscCanChangeColWidth = c _oAscCanChangeColWidth ; window [ "AscCommonExcel" ] . c _oAscMergeType = c _oAscMergeType ; window [ "AscCommonExcel" ] . c _oAscPaneState = c _oAscPaneState ; window [ "AscCommonExcel" ] . c _oTargetType = c _oTargetType ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringMeBorderColor =
c _oAscCoAuthoringMeBorderColor ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringOtherBorderColor = c _oAscCoAuthoringOtherBorderColor ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringLockTablePropertiesBorderColor = c _oAscCoAuthoringLockTablePropertiesBorderColor ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringDottedWidth = c _oAscCoAuthoringDottedWidth ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringDottedDistance = c _oAscCoAuthoringDottedDistance ; window [ "AscCommonExcel" ] . c _oAscFormulaRangeBorderColor = c _oAscFormulaRangeBorderColor ;
window [ "AscCommonExcel" ] . selectionLineType = selectionLineType ; window [ "AscCommonExcel" ] . c _oAscLockNameFrozenPane = c _oAscLockNameFrozenPane ; window [ "AscCommonExcel" ] . c _oAscLockNameTabColor = c _oAscLockNameTabColor ; window [ "AscCommonExcel" ] . c _oAscLockAddSheet = c _oAscLockAddSheet ; window [ "AscCommonExcel" ] . c _oAscLockLayoutOptions = c _oAscLockLayoutOptions ; window [ "AscCommonExcel" ] . c _oAscHeaderFooterEdit = c _oAscHeaderFooterEdit ; window [ "AscCommonExcel" ] . c _oAscLockPrintScaleOptions = c _oAscLockPrintScaleOptions ; window [ "AscCommonExcel" ] . c _kMaxPrintPages =
c _kMaxPrintPages ; window [ "AscCommonExcel" ] . filteringMode = true ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . c _oSerFormat = c _oSerFormat ; window [ "AscCommon" ] . CurFileVersion = c _oSerFormat . Version ; var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "Asc" ] [ "c_oAscSortOptions" ] = window [ "Asc" ] . c _oAscSortOptions = c _oAscSortOptions ; prot = c _oAscSortOptions ; prot [ "Ascending" ] = prot . Ascending ; prot [ "Descending" ] = prot . Descending ; prot [ "ByColorFill" ] = prot . ByColorFill ; prot [ "ByColorFont" ] = prot . ByColorFont ; prot [ "ByIcon" ] =
prot . ByIcon ; prot [ "ByValue" ] = prot . ByValue ; window [ "Asc" ] [ "c_oAscConfirm" ] = window [ "Asc" ] . c _oAscConfirm = c _oAscConfirm ; prot = c _oAscConfirm ; prot [ "ConfirmReplaceRange" ] = prot . ConfirmReplaceRange ; prot [ "ConfirmPutMergeRange" ] = prot . ConfirmPutMergeRange ; prot [ "ConfirmReplaceFormulaInTable" ] = prot . ConfirmReplaceFormulaInTable ; window [ "Asc" ] [ "c_oAscMergeOptions" ] = window [ "Asc" ] . c _oAscMergeOptions = c _oAscMergeOptions ; prot = c _oAscMergeOptions ; prot [ "Disabled" ] = prot . Disabled ; prot [ "None" ] = prot . None ; prot [ "Merge" ] = prot . Merge ;
prot [ "MergeCenter" ] = prot . MergeCenter ; prot [ "MergeAcross" ] = prot . MergeAcross ; window [ "Asc" ] [ "c_oAscBorderOptions" ] = window [ "Asc" ] . c _oAscBorderOptions = c _oAscBorderOptions ; prot = c _oAscBorderOptions ; prot [ "Top" ] = prot . Top ; prot [ "Right" ] = prot . Right ; prot [ "Bottom" ] = prot . Bottom ; prot [ "Left" ] = prot . Left ; prot [ "DiagD" ] = prot . DiagD ; prot [ "DiagU" ] = prot . DiagU ; prot [ "InnerV" ] = prot . InnerV ; prot [ "InnerH" ] = prot . InnerH ; window [ "Asc" ] [ "c_oAscCleanOptions" ] = window [ "Asc" ] . c _oAscCleanOptions = c _oAscCleanOptions ; prot = c _oAscCleanOptions ;
prot [ "All" ] = prot . All ; prot [ "Text" ] = prot . Text ; prot [ "Format" ] = prot . Format ; prot [ "Formula" ] = prot . Formula ; prot [ "Comments" ] = prot . Comments ; prot [ "Hyperlinks" ] = prot . Hyperlinks ; prot [ "Sparklines" ] = prot . Sparklines ; prot [ "SparklineGroups" ] = prot . SparklineGroups ; window [ "Asc" ] [ "c_oAscCalculateType" ] = window [ "Asc" ] . c _oAscCalculateType = c _oAscCalculateType ; prot = c _oAscCalculateType ; prot [ "WorkbookOnlyChanged" ] = prot . WorkbookOnlyChanged ; prot [ "ActiveSheet" ] = prot . ActiveSheet ; prot [ "Workbook" ] = prot . Workbook ; prot [ "All" ] = prot . All ;
window [ "Asc" ] [ "c_oAscSelectionDialogType" ] = window [ "Asc" ] . c _oAscSelectionDialogType = c _oAscSelectionDialogType ; prot = c _oAscSelectionDialogType ; prot [ "None" ] = prot . None ; prot [ "FormatTable" ] = prot . FormatTable ; prot [ "Chart" ] = prot . Chart ; prot [ "FormatTableChangeRange" ] = prot . FormatTableChangeRange ; prot [ "CustomSort" ] = prot . CustomSort ; prot [ "PivotTableData" ] = prot . PivotTableData ; prot [ "PivotTableReport" ] = prot . PivotTableReport ; prot [ "PrintTitles" ] = prot . PrintTitles ; prot [ "Function" ] = prot . Function ; prot [ "DataValidation" ] = prot . DataValidation ;
prot [ "ConditionalFormattingRule" ] = prot . ConditionalFormattingRule ; window [ "Asc" ] [ "c_oAscHyperlinkType" ] = window [ "Asc" ] . c _oAscHyperlinkType = c _oAscHyperlinkType ; prot = c _oAscHyperlinkType ; prot [ "WebLink" ] = prot . WebLink ; prot [ "RangeLink" ] = prot . RangeLink ; window [ "Asc" ] [ "c_oAscMouseMoveType" ] = window [ "Asc" ] . c _oAscMouseMoveType = c _oAscMouseMoveType ; prot = c _oAscMouseMoveType ; prot [ "None" ] = prot . None ; prot [ "Hyperlink" ] = prot . Hyperlink ; prot [ "Comment" ] = prot . Comment ; prot [ "LockedObject" ] = prot . LockedObject ; prot [ "ResizeColumn" ] =
prot . ResizeColumn ; prot [ "ResizeRow" ] = prot . ResizeRow ; prot [ "Filter" ] = prot . Filter ; prot [ "Tooltip" ] = prot . Tooltip ; window [ "Asc" ] [ "c_oAscMouseMoveLockedObjectType" ] = window [ "Asc" ] . c _oAscMouseMoveLockedObjectType = c _oAscMouseMoveLockedObjectType ; prot = c _oAscMouseMoveLockedObjectType ; prot [ "None" ] = prot . None ; prot [ "Range" ] = prot . Range ; prot [ "TableProperties" ] = prot . TableProperties ; prot [ "Sheet" ] = prot . Sheet ; window [ "Asc" ] [ "c_oAscCustomAutoFilter" ] = window [ "Asc" ] . c _oAscCustomAutoFilter = c _oAscCustomAutoFilter ; prot = c _oAscCustomAutoFilter ;
prot [ "equals" ] = prot . equals ; prot [ "isGreaterThan" ] = prot . isGreaterThan ; prot [ "isGreaterThanOrEqualTo" ] = prot . isGreaterThanOrEqualTo ; prot [ "isLessThan" ] = prot . isLessThan ; prot [ "isLessThanOrEqualTo" ] = prot . isLessThanOrEqualTo ; prot [ "doesNotEqual" ] = prot . doesNotEqual ; prot [ "beginsWith" ] = prot . beginsWith ; prot [ "doesNotBeginWith" ] = prot . doesNotBeginWith ; prot [ "endsWith" ] = prot . endsWith ; prot [ "doesNotEndWith" ] = prot . doesNotEndWith ; prot [ "contains" ] = prot . contains ; prot [ "doesNotContain" ] = prot . doesNotContain ; window [ "Asc" ] [ "c_oAscDynamicAutoFilter" ] =
window [ "Asc" ] . c _oAscDynamicAutoFilter = c _oAscDynamicAutoFilter ; prot = c _oAscDynamicAutoFilter ; prot [ "aboveAverage" ] = prot . aboveAverage ; prot [ "belowAverage" ] = prot . belowAverage ; window [ "Asc" ] [ "c_oAscTop10AutoFilter" ] = window [ "Asc" ] . c _oAscTop10AutoFilter = c _oAscTop10AutoFilter ; prot = c _oAscTop10AutoFilter ; prot [ "max" ] = prot . max ; prot [ "min" ] = prot . min ; window [ "Asc" ] [ "c_oAscChangeFilterOptions" ] = window [ "Asc" ] . c _oAscChangeFilterOptions = c _oAscChangeFilterOptions ; prot = c _oAscChangeFilterOptions ; prot [ "filter" ] = prot . filter ;
prot [ "style" ] = prot . style ; window [ "Asc" ] [ "c_oAscCellEditorState" ] = window [ "Asc" ] . c _oAscCellEditorState = c _oAscCellEditorState ; prot = c _oAscCellEditorState ; prot [ "editEnd" ] = prot . editEnd ; prot [ "editStart" ] = prot . editStart ; prot [ "editEmptyCell" ] = prot . editEmptyCell ; prot [ "editText" ] = prot . editText ; prot [ "editFormula" ] = prot . editFormula ; prot [ "editInFormulaBar" ] = prot . editInFormulaBar ; prot [ "editInCell" ] = prot . editInCell ; window [ "Asc" ] [ "c_oAscChangeSelectionFormatTable" ] = window [ "Asc" ] . c _oAscChangeSelectionFormatTable = c _oAscChangeSelectionFormatTable ;
prot = c _oAscChangeSelectionFormatTable ; prot [ "all" ] = prot . all ; prot [ "data" ] = prot . data ; prot [ "row" ] = prot . row ; prot [ "column" ] = prot . column ; prot [ "dataColumn" ] = prot . dataColumn ; window [ "Asc" ] [ "c_oAscChangeTableStyleInfo" ] = window [ "Asc" ] . c _oAscChangeTableStyleInfo = c _oAscChangeTableStyleInfo ; prot = c _oAscChangeTableStyleInfo ; prot [ "columnFirst" ] = prot . columnFirst ; prot [ "columnLast" ] = prot . columnLast ; prot [ "columnBanded" ] = prot . columnBanded ; prot [ "rowHeader" ] = prot . rowHeader ; prot [ "rowTotal" ] = prot . rowTotal ; prot [ "rowBanded" ] =
prot . rowBanded ; prot [ "filterButton" ] = prot . filterButton ; prot [ "advancedSettings" ] = prot . advancedSettings ; window [ "Asc" ] [ "c_oAscAutoFilterTypes" ] = window [ "Asc" ] . c _oAscAutoFilterTypes = c _oAscAutoFilterTypes ; prot = c _oAscAutoFilterTypes ; prot [ "ColorFilter" ] = prot . ColorFilter ; prot [ "CustomFilters" ] = prot . CustomFilters ; prot [ "DynamicFilter" ] = prot . DynamicFilter ; prot [ "Top10" ] = prot . Top10 ; prot [ "Filters" ] = prot . Filters ; prot [ "None" ] = prot . None ; window [ "Asc" ] [ "c_oAscFindLookIn" ] = window [ "Asc" ] . c _oAscFindLookIn = c _oAscFindLookIn ;
prot = c _oAscFindLookIn ; prot [ "Formulas" ] = prot . Formulas ; prot [ "Value" ] = prot . Value ; prot [ "Annotations" ] = prot . Annotations ; window [ "Asc" ] [ "c_oAscGetDefinedNamesList" ] = window [ "Asc" ] . c _oAscGetDefinedNamesList = c _oAscGetDefinedNamesList ; prot = c _oAscGetDefinedNamesList ; prot [ "Worksheet" ] = prot . Worksheet ; prot [ "WorksheetWorkbook" ] = prot . WorksheetWorkbook ; prot [ "All" ] = prot . All ; window [ "Asc" ] [ "c_oAscDefinedNameReason" ] = window [ "Asc" ] . c _oAscDefinedNameReason = c _oAscDefinedNameReason ; prot = c _oAscDefinedNameReason ; prot [ "WrongName" ] =
prot . WrongName ; prot [ "IsLocked" ] = prot . IsLocked ; prot [ "Existed" ] = prot . Existed ; prot [ "LockDefNameManager" ] = prot . LockDefNameManager ; prot [ "NameReserved" ] = prot . NameReserved ; prot [ "OK" ] = prot . OK ; window [ "Asc" ] [ "c_oAscPopUpSelectorType" ] = window [ "Asc" ] . c _oAscPopUpSelectorType = c _oAscPopUpSelectorType ; prot = c _oAscPopUpSelectorType ; prot [ "None" ] = prot . None ; prot [ "Func" ] = prot . Func ; prot [ "Range" ] = prot . Range ; prot [ "Table" ] = prot . Table ; prot [ "Slicer" ] = prot . Slicer ; prot [ "TotalRowFunc" ] = prot . TotalRowFunc ; window [ "Asc" ] [ "c_oAscSparklineType" ] =
window [ "Asc" ] . c _oAscSparklineType = c _oAscSparklineType ; prot = c _oAscSparklineType ; prot [ "Line" ] = prot . Line ; prot [ "Column" ] = prot . Column ; prot [ "Stacked" ] = prot . Stacked ; window [ "Asc" ] [ "c_oAscEDispBlanksAs" ] = window [ "Asc" ] . c _oAscEDispBlanksAs = c _oAscEDispBlanksAs ; prot = c _oAscEDispBlanksAs ; prot [ "Span" ] = prot . Span ; prot [ "Gap" ] = prot . Gap ; prot [ "Zero" ] = prot . Zero ; window [ "Asc" ] [ "c_oAscSparklineAxisMinMax" ] = window [ "Asc" ] . c _oAscSparklineAxisMinMax = c _oAscSparklineAxisMinMax ; prot = c _oAscSparklineAxisMinMax ; prot [ "Individual" ] = prot . Individual ;
prot [ "Group" ] = prot . Group ; prot [ "Custom" ] = prot . Custom ; window [ "Asc" ] [ "c_oAscAutoCorrectOptions" ] = window [ "Asc" ] . c _oAscAutoCorrectOptions = c _oAscAutoCorrectOptions ; prot = c _oAscAutoCorrectOptions ; prot [ "UndoTableAutoExpansion" ] = prot . UndoTableAutoExpansion ; prot [ "RedoTableAutoExpansion" ] = prot . RedoTableAutoExpansion ; window [ "Asc" ] [ "c_oAscChangePrintAreaType" ] = window [ "Asc" ] . c _oAscChangePrintAreaType = c _oAscChangePrintAreaType ; prot = c _oAscChangePrintAreaType ; prot [ "set" ] = prot . set ; prot [ "clear" ] = prot . clear ; prot [ "add" ] =
prot . add ; window [ "Asc" ] [ "c_oAscHeaderFooterField" ] = window [ "Asc" ] . c _oAscHeaderFooterField = c _oAscHeaderFooterField ; prot = c _oAscHeaderFooterField ; prot [ "pageNumber" ] = prot . pageNumber ; prot [ "pageCount" ] = prot . pageCount ; prot [ "sheetName" ] = prot . sheetName ; prot [ "fileName" ] = prot . fileName ; prot [ "filePath" ] = prot . filePath ; prot [ "date" ] = prot . date ; prot [ "time" ] = prot . time ; prot [ "lineBreak" ] = prot . lineBreak ; window [ "Asc" ] [ "c_oAscPageHFType" ] = window [ "Asc" ] . c _oAscPageHFType = c _oAscPageHFType ; prot = c _oAscHeaderFooterField ; prot [ "firstHeader" ] =
prot . firstHeader ; prot [ "oddHeader" ] = prot . oddHeader ; prot [ "evenHeader" ] = prot . evenHeader ; prot [ "firstFooter" ] = prot . firstFooter ; prot [ "oddFooter" ] = prot . oddFooter ; prot [ "evenFooter" ] = prot . evenFooter ; window [ "Asc" ] [ "c_oAscHeaderFooterType" ] = window [ "Asc" ] . c _oAscHeaderFooterType = c _oAscHeaderFooterType ; prot = c _oAscHeaderFooterType ; prot [ "first" ] = prot . first ; prot [ "odd" ] = prot . odd ; prot [ "even" ] = prot . even ; window [ "Asc" ] [ "c_oAscHeaderFooterPresets" ] = window [ "Asc" ] . c _oAscHeaderFooterPresets = c _oAscHeaderFooterPresets ; prot =
c _oAscHeaderFooterPresets ; prot [ "none" ] = prot . none ; prot [ "page" ] = prot . page ; prot [ "pageOfQuestion" ] = prot . pageOfQuestion ; prot [ "sheet" ] = prot . sheet ; prot [ "confidential" ] = prot . confidential ; prot [ "bookName" ] = prot . bookName ; prot [ "sheetPage" ] = prot . sheetPage ; prot [ "sheetConfidentialPage" ] = prot . sheetConfidentialPage ; prot [ "bookNamePage" ] = prot . bookNamePage ; prot [ "pageSheet" ] = prot . pageSheet ; prot [ "pageBook" ] = prot . pageBook ; prot [ "pageBookName" ] = prot . pageBookName ; prot [ "userPageDate" ] = prot . userPageDate ; prot [ "preparedUserDatePage" ] =
prot . preparedUserDatePage ; prot [ "custom" ] = prot . custom ; window [ "Asc" ] [ "c_oAscPrintTitlesRangeType" ] = window [ "Asc" ] . c _oAscPrintTitlesRangeType = c _oAscPrintTitlesRangeType ; prot = c _oAscPrintTitlesRangeType ; prot [ "first" ] = prot . first ; prot [ "frozen" ] = prot . frozen ; prot [ "current" ] = prot . current ; window [ "Asc" ] [ "c_oAscFormulaArgumentType" ] = window [ "Asc" ] . c _oAscFormulaArgumentType = c _oAscFormulaArgumentType ; prot = c _oAscFormulaArgumentType ; prot [ "number" ] = prot . number ; prot [ "text" ] = prot . text ; prot [ "reference" ] = prot . reference ;
prot [ "any" ] = prot . any ; prot [ "logical" ] = prot . logical ; window [ "Asc" ] [ "c_oAscSelectionForCFType" ] = window [ "Asc" ] . c _oAscSelectionForCFType = c _oAscSelectionForCFType ; prot = c _oAscSelectionForCFType ; prot [ "selection" ] = prot . selection ; prot [ "worksheet" ] = prot . worksheet ; prot [ "table" ] = prot . table ; prot [ "pivot" ] = prot . pivot ; window [ "Asc" ] [ "c_oAscFrozenPaneBorderType" ] = window [ "Asc" ] . c _oAscFrozenPaneBorderType = c _oAscFrozenPaneBorderType ; prot = c _oAscFrozenPaneBorderType ; prot [ "shadow" ] = prot . shadow ; prot [ "line" ] = prot . line ; window [ "Asc" ] [ "c_oAscCFRuleTypeSettings" ] =
window [ "Asc" ] . c _oAscCFRuleTypeSettings = c _oAscCFRuleTypeSettings ; prot = c _oAscCFRuleTypeSettings ; prot [ "dataBar" ] = prot . dataBar ; prot [ "colorScale" ] = prot . colorScale ; prot [ "icons" ] = prot . icons ; prot [ "format" ] = prot . format ; window [ "Asc" ] [ "c_oAscFrozenPaneAddType" ] = window [ "Asc" ] . c _oAscFrozenPaneAddType = c _oAscFrozenPaneAddType ; prot = c _oAscFrozenPaneAddType ; prot [ "firstRow" ] = prot . firstRow ; prot [ "firstCol" ] = prot . firstCol } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var gc _nMaxRow0 = AscCommon . gc _nMaxRow0 ; var gc _nMaxCol0 = AscCommon . gc _nMaxCol0 ; var g _oCellAddressUtils = AscCommon . g _oCellAddressUtils ; var AscBrowser = AscCommon . AscBrowser ; var c _oAscSelectionType = Asc . c _oAscSelectionType ; var kLeftLim1 = . 999999999999999 ; var MAX _EXCEL _INT = 1E308 ; var MIN _EXCEL _INT = - MAX _EXCEL _INT ; var c _sPerDay = 86400 ; var c _msPerDay = c _sPerDay * 1E3 ; var kUndefinedL = "undefined" ; var kNullL = "null" ; var kObjectL = "object" ; var kFunctionL = "function" ; var kNumberL = "number" ; var kArrayL =
"array" ; var recalcType = { recalc : 0 , full : 1 , newLines : 2 } ; var sizePxinPt = 72 / 96 ; function applyFunction ( callback ) { if ( kFunctionL === typeof callback ) callback . apply ( null , Array . prototype . slice . call ( arguments , 1 ) ) } function typeOf ( obj ) { if ( obj === undefined ) return kUndefinedL ; if ( obj === null ) return kNullL ; return Object . prototype . toString . call ( obj ) . slice ( 8 , - 1 ) . toLowerCase ( ) } function lastIndexOf ( s , regExp , fromIndex ) { var end = fromIndex >= 0 && fromIndex <= s . length ? fromIndex : s . length ; for ( var i = end - 1 ; i >= 0 ; -- i ) { var j = s . slice ( i , end ) . search ( regExp ) ;
if ( j >= 0 ) return i + j } return - 1 } function search ( arr , fn ) { for ( var i = 0 ; i < arr . length ; ++ i ) if ( fn ( arr [ i ] ) ) return i ; return - 1 } function getUniqueRangeColor ( arrRanges , curElem , tmpColors ) { var colorIndex , j , range = arrRanges [ curElem ] ; for ( j = 0 ; j < curElem ; ++ j ) if ( range . isEqual ( arrRanges [ j ] ) ) { colorIndex = tmpColors [ j ] ; break } return colorIndex } function getMinValueOrNull ( val1 , val2 ) { return null === val2 ? val1 : null === val1 ? val2 : Math . min ( val1 , val2 ) } function round ( x ) { var y = x + ( x >= 0 ? . 5 : - . 5 ) ; return y | y } function floor ( x ) { var y = x | x ; y -= x < 0 &&
y > x ? 1 : 0 ; return y + ( x - y > kLeftLim1 ? 1 : 0 ) } function ceil ( x ) { var y = x | x ; y += x > 0 && y < x ? 1 : 0 ; return y - ( y - x > kLeftLim1 ? 1 : 0 ) } function incDecFonSize ( bIncrease , oValue ) { var aSizes = [ 8 , 9 , 10 , 11 , 12 , 14 , 16 , 18 , 20 , 22 , 24 , 26 , 28 , 36 , 48 , 72 ] ; var nLength = aSizes . length ; var i ; if ( true === bIncrease ) { if ( oValue >= aSizes [ nLength - 1 ] ) return null ; for ( i = 0 ; i < nLength ; ++ i ) if ( aSizes [ i ] > oValue ) break } else { if ( oValue <= aSizes [ 0 ] ) return null ; for ( i = nLength - 1 ; i >= 0 ; -- i ) if ( aSizes [ i ] < oValue ) break } return aSizes [ i ] } function calcDecades ( num ) { return Math . abs ( num ) <
10 ? 1 : 1 + calcDecades ( floor ( num * . 1 ) ) } function convertPtToPx ( value ) { value = value / sizePxinPt ; value = value * AscBrowser . retinaPixelRatio >> 0 ; return value } function convertPxToPt ( value ) { value = value * sizePxinPt ; value = Asc . ceil ( value / AscBrowser . retinaPixelRatio * 100 ) / 100 ; return value } function profileTime ( fn ) { var start , end , arg = [ ] , i ; if ( arguments . length ) { if ( arguments . length > 1 ) { for ( i = 1 ; i < arguments . length ; ++ i ) arg . push ( arguments [ i ] ) ; start = new Date ; fn . apply ( window , arg ) ; end = new Date } else { start = new Date ; fn ( ) ; end = new Date } return end . getTime ( ) -
start . getTime ( ) } return undefined } function getMatchingBorder ( border1 , border2 ) { if ( ! border1 ) return border2 ; if ( ! border2 ) return border1 ; if ( border1 . w > border2 . w ) return border1 ; else if ( border1 . w < border2 . w ) return border2 ; var bc1 = border1 . getColorOrDefault ( ) ; var bc2 = border2 . getColorOrDefault ( ) ; var r1 = bc1 . getR ( ) , g1 = bc1 . getG ( ) , b1 = bc1 . getB ( ) ; var r2 = bc2 . getR ( ) , g2 = bc2 . getG ( ) , b2 = bc2 . getB ( ) ; var Brightness _1 _1 = r1 + b1 + 2 * g1 ; var Brightness _1 _2 = r2 + b2 + 2 * g2 ; if ( Brightness _1 _1 < Brightness _1 _2 ) return border1 ; else if ( Brightness _1 _1 >
Brightness _1 _2 ) return border2 ; var Brightness _2 _1 = Brightness _1 _1 - r1 ; var Brightness _2 _2 = Brightness _1 _2 - r2 ; if ( Brightness _2 _1 < Brightness _2 _2 ) return border1 ; else if ( Brightness _2 _1 > Brightness _2 _2 ) return border2 ; var Brightness _3 _1 = g1 ; var Brightness _3 _2 = g2 ; if ( Brightness _3 _1 < Brightness _3 _2 ) return border1 ; else if ( Brightness _3 _1 > Brightness _3 _2 ) return border2 ; return border1 } function WordSplitting ( str ) { var trueLetter = false ; var index = 0 ; var wordsArray = [ ] ; var wordsIndexArray = [ ] ; for ( var i = 0 ; i < str . length ; i ++ ) { var nCharCode =
str . charCodeAt ( i ) ; if ( AscCommon . g _aPunctuation [ nCharCode ] !== undefined || nCharCode === 32 || nCharCode === 10 ) { if ( trueLetter ) { trueLetter = false ; index ++ } } else { if ( trueLetter === false ) wordsIndexArray . push ( i ) ; trueLetter = true ; wordsArray [ index ] = wordsArray [ index ] || "" ; wordsArray [ index ] = wordsArray [ index ] + str [ i ] } } return { wordsArray : wordsArray , wordsIndex : wordsIndexArray } } function replaceSpellCheckWords ( cellValue , options ) { if ( 1 === options . indexInArray && options . replaceWith ) cellValue = options . replaceWith ; else for ( var i = 0 ; i < options . replaceWords . length ; ++ i ) cellValue =
cellValue . replace ( options . replaceWords [ i ] [ 0 ] , function ( ) { return options . replaceWords [ i ] [ 1 ] } ) ; return cellValue } function getFindRegExp ( value , options ) { var findFlags = "g" ; if ( true !== options . isMatchCase ) findFlags += "i" ; value = value . replace ( /(\\)/g , "\\\\" ) . replace ( /(\^)/g , "\\^" ) . replace ( /(\()/g , "\\(" ) . replace ( /(\))/g , "\\)" ) . replace ( /(\+)/g , "\\+" ) . replace ( /(\[)/g , "\\[" ) . replace ( /(\])/g , "\\]" ) . replace ( /(\{)/g , "\\{" ) . replace ( /(\})/g , "\\}" ) . replace ( /(\$)/g , "\\$" ) . replace ( /(\.)/g , "\\." ) . replace ( /(~)?\*/g , function ( $0 ,
$1 ) { return $1 ? $0 : "(.*)" } ) . replace ( /(~)?\?/g , function ( $0 , $1 ) { return $1 ? $0 : "." } ) . replace ( /(~\*)/g , "\\*" ) . replace ( /(~\?)/g , "\\?" ) ; if ( options . isWholeWord ) value = "\\b" + value + "\\b" ; return new RegExp ( value , findFlags ) } function convertFillToUnifill ( fill ) { var oUniFill = null ; if ( ! fill ) return AscFormat . CreateNoFillUniFill ( ) ; var oSF = fill . getSolidFill ( ) ; if ( oSF ) oUniFill = new AscFormat . CreateSolidFillRGBA ( oSF . getR ( ) , oSF . getG ( ) , oSF . getB ( ) , Math . min ( 255 , 255 * oSF . getA ( ) + . 5 >> 0 ) ) ; else if ( fill . patternFill ) { oUniFill = new AscFormat . CUniFill ;
oUniFill . fill = new AscFormat . CPattFill ; oUniFill . fill . ftype = fill . patternFill . getHatchOffset ( ) ; oUniFill . fill . fgClr = AscFormat . CreateUniColorRGB2 ( fill . patternFill . fgColor || AscCommonExcel . createRgbColor ( 0 , 0 , 0 ) ) ; oUniFill . fill . bgClr = AscFormat . CreateUniColorRGB2 ( fill . patternFill . bgColor || AscCommonExcel . createRgbColor ( 255 , 255 , 255 ) ) } else if ( fill . gradientFill ) { oUniFill = new AscFormat . CUniFill ; oUniFill . fill = new AscFormat . CGradFill ; if ( fill . gradientFill . type === Asc . c _oAscFillGradType . GRAD _LINEAR ) { oUniFill . fill . lin =
new AscFormat . GradLin ; oUniFill . fill . lin . angle = fill . gradientFill . degree * 6E4 } else oUniFill . fill . path = new AscFormat . GradPath ; for ( var i = 0 ; i < fill . gradientFill . stop . length ; ++ i ) { var oGradStop = new AscFormat . CGs ; oGradStop . pos = fill . gradientFill . stop [ i ] . position * 1E5 ; oGradStop . color = AscFormat . CreateUniColorRGB2 ( fill . gradientFill . stop [ i ] . color || AscCommonExcel . createRgbColor ( 255 , 255 , 255 ) ) ; oUniFill . fill . addColor ( oGradStop ) } } return oUniFill } function getFullHyperlinkLength ( str ) { var res = 0 ; if ( ! str ) return res ; var validStr =
"ABCDEFabcdef0123456789" ; var checkHex = function ( _val ) { if ( _val !== undefined && validStr . indexOf ( _val ) !== - 1 ) return true ; return false } ; for ( var i = 0 ; i < str . length ; i ++ ) if ( str [ i ] === "%" ) if ( checkHex ( str [ i + 1 ] ) && checkHex ( str [ i + 2 ] ) ) res ++ ; else res += 3 ; else res ++ ; return res } var referenceType = { A : 0 , ARRC : 1 , RRAC : 2 , R : 3 } ; function Range ( c1 , r1 , c2 , r2 , normalize ) { if ( ! ( this instanceof Range ) ) return new Range ( c1 , r1 , c2 , r2 , normalize ) ; this . c1 = c1 ; this . r1 = r1 ; this . c2 = c2 ; this . r2 = r2 ; this . refType1 = referenceType . R ; this . refType2 = referenceType . R ;
return normalize ? this . normalize ( ) : this } Range . prototype . compareCell = function ( c1 , r1 , c2 , r2 ) { var dif = r1 - r2 ; return 0 !== dif ? dif : c1 - c2 } ; Range . prototype . compareByLeftTop = function ( a , b ) { return Range . prototype . compareCell ( a . c1 , a . r1 , b . c1 , b . r1 ) } ; Range . prototype . compareByRightBottom = function ( a , b ) { return Range . prototype . compareCell ( a . c2 , a . r2 , b . c2 , b . r2 ) } ; Range . prototype . assign = function ( c1 , r1 , c2 , r2 , normalize ) { this . c1 = c1 ; this . r1 = r1 ; this . c2 = c2 ; this . r2 = r2 ; return normalize ? this . normalize ( ) : this } ; Range . prototype . assign2 =
function ( range ) { this . refType1 = range . refType1 ; this . refType2 = range . refType2 ; return this . assign ( range . c1 , range . r1 , range . c2 , range . r2 ) } ; Range . prototype . clone = function ( normalize ) { var oRes = new Range ( this . c1 , this . r1 , this . c2 , this . r2 , normalize ) ; oRes . refType1 = this . refType1 ; oRes . refType2 = this . refType2 ; return oRes } ; Range . prototype . normalize = function ( ) { var tmp ; if ( this . c1 > this . c2 ) { tmp = this . c1 ; this . c1 = this . c2 ; this . c2 = tmp } if ( this . r1 > this . r2 ) { tmp = this . r1 ; this . r1 = this . r2 ; this . r2 = tmp } return this } ; Range . prototype . isEqual =
function ( range ) { return range && this . c1 === range . c1 && this . r1 === range . r1 && this . c2 === range . c2 && this . r2 === range . r2 } ; Range . prototype . isEqualCols = function ( range ) { return range && this . c1 === range . c1 && this . c2 === range . c2 } ; Range . prototype . isEqualRows = function ( range ) { return range && this . r1 === range . r1 && this . r2 === range . r2 } ; Range . prototype . isNeighbor = function ( range ) { if ( this . isEqualCols ( range ) ) { if ( this . r2 === range . r1 - 1 || range . r2 === this . r1 - 1 ) return true } else if ( this . isEqualRows ( range ) ) if ( this . c2 === range . c1 - 1 || range . c2 ===
this . c1 - 1 ) return true ; return false } ; Range . prototype . isEqualAll = function ( range ) { return this . isEqual ( range ) && this . refType1 === range . refType1 && this . refType2 === range . refType2 } ; Range . prototype . isEqualWithOffsetRow = function ( range , offsetRow ) { return this . c1 === range . c1 && this . c2 === range . c2 && this . isAbsC1 ( ) === range . isAbsC1 ( ) && this . isAbsC2 ( ) === range . isAbsC2 ( ) && this . isAbsR1 ( ) === range . isAbsR1 ( ) && this . isAbsR2 ( ) === range . isAbsR2 ( ) && ( ( this . isAbsR1 ( ) ? this . r1 === range . r1 : this . r1 + offsetRow === range . r1 ) && ( this . isAbsR2 ( ) ? this . r2 ===
range . r2 : this . r2 + offsetRow === range . r2 ) || this . r1 === 0 && this . r2 === gc _nMaxRow0 && this . r1 === range . r1 && this . r2 === range . r2 ) } ; Range . prototype . contains = function ( c , r ) { return this . c1 <= c && c <= this . c2 && this . r1 <= r && r <= this . r2 } ; Range . prototype . contains2 = function ( cell ) { return this . contains ( cell . col , cell . row ) } ; Range . prototype . containsCol = function ( c ) { return this . c1 <= c && c <= this . c2 } ; Range . prototype . containsRow = function ( r ) { return this . r1 <= r && r <= this . r2 } ; Range . prototype . containsRange = function ( range ) { return this . contains ( range . c1 ,
range . r1 ) && this . contains ( range . c2 , range . r2 ) } ; Range . prototype . containsFirstLineRange = function ( range ) { return this . contains ( range . c1 , range . r1 ) && this . contains ( range . c2 , range . r1 ) } ; Range . prototype . intersection = function ( range ) { var s1 = this . clone ( true ) , s2 = range instanceof Range ? range . clone ( true ) : new Range ( range . c1 , range . r1 , range . c2 , range . r2 , true ) ; if ( s2 . c1 > s1 . c2 || s2 . c2 < s1 . c1 || s2 . r1 > s1 . r2 || s2 . r2 < s1 . r1 ) return null ; return new Range ( s2 . c1 >= s1 . c1 && s2 . c1 <= s1 . c2 ? s2 . c1 : s1 . c1 , s2 . r1 >= s1 . r1 && s2 . r1 <= s1 . r2 ? s2 . r1 : s1 . r1 ,
Math . min ( s1 . c2 , s2 . c2 ) , Math . min ( s1 . r2 , s2 . r2 ) ) } ; Range . prototype . intersectionSimple = function ( range ) { var oRes = null ; var r1 = Math . max ( this . r1 , range . r1 ) ; var c1 = Math . max ( this . c1 , range . c1 ) ; var r2 = Math . min ( this . r2 , range . r2 ) ; var c2 = Math . min ( this . c2 , range . c2 ) ; if ( r1 <= r2 && c1 <= c2 ) oRes = new Range ( c1 , r1 , c2 , r2 ) ; return oRes } ; Range . prototype . isIntersect = function ( range ) { var bRes = true ; if ( range . r2 < this . r1 || this . r2 < range . r1 ) bRes = false ; else if ( range . c2 < this . c1 || this . c2 < range . c1 ) bRes = false ; return bRes } ; Range . prototype . isIntersectForShift =
function ( range , offset ) { var isHor = offset && offset . col ; var isDelete = offset && ( offset . col < 0 || offset . row < 0 ) ; if ( isHor ) if ( this . r1 <= range . r1 && range . r2 <= this . r2 && this . c1 <= range . c2 ) return true ; else { if ( isDelete && this . c1 <= range . c1 && range . c2 <= this . c2 ) { var topIn = this . r1 <= range . r1 && range . r1 <= this . r2 ; var bottomIn = this . r1 <= range . r2 && range . r2 <= this . r2 ; return topIn || bottomIn } } else if ( this . c1 <= range . c1 && range . c2 <= this . c2 && this . r1 <= range . r2 ) return true ; else if ( isDelete && this . r1 <= range . r1 && range . r2 <= this . r2 ) { var leftIn =
this . c1 <= range . c1 && range . c1 <= this . c2 ; var rightIn = this . c1 <= range . c2 && range . c2 <= this . c2 ; return leftIn || rightIn } return false } ; Range . prototype . difference = function ( range ) { var res = [ ] ; var intersect ; if ( this . r1 > 0 ) { intersect = ( new Range ( 0 , 0 , gc _nMaxCol0 , this . r1 - 1 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } if ( this . c1 > 0 ) { intersect = ( new Range ( 0 , this . r1 , this . c1 - 1 , this . r2 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } if ( this . c2 < gc _nMaxCol0 ) { intersect = ( new Range ( this . c2 + 1 , this . r1 , gc _nMaxCol0 ,
this . r2 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } if ( this . r2 < gc _nMaxRow0 ) { intersect = ( new Range ( 0 , this . r2 + 1 , gc _nMaxCol0 , gc _nMaxRow0 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } return res } ; Range . prototype . isIntersectForShiftCell = function ( col , row , offset ) { var isHor = offset && 0 != offset . col ; if ( isHor ) return this . r1 <= row && row <= this . r2 && this . c1 <= col ; else return this . c1 <= col && col <= this . c2 && this . r1 <= row } ; Range . prototype . forShift = function ( bbox , offset , bUndo ) { var isNoDelete = true ;
var isHor = 0 != offset . col ; var toDelete = offset . col < 0 || offset . row < 0 ; var isLastRow = this . r2 === gc _nMaxRow0 ; var isLastCol = this . c2 === gc _nMaxCol0 ; if ( isHor ) if ( toDelete ) if ( this . c1 < bbox . c1 ) if ( this . c2 <= bbox . c2 ) this . setOffsetLast ( new AscCommon . CellBase ( 0 , - ( this . c2 - bbox . c1 + 1 ) ) ) ; else this . setOffsetLast ( offset ) ; else if ( this . c1 <= bbox . c2 ) if ( this . c2 <= bbox . c2 ) { if ( ! bUndo ) { var topIn = bbox . r1 <= this . r1 && this . r1 <= bbox . r2 ; var bottomIn = bbox . r1 <= this . r2 && this . r2 <= bbox . r2 ; if ( topIn && bottomIn ) isNoDelete = false ; else if ( topIn ) this . setOffsetFirst ( new AscCommon . CellBase ( bbox . r2 -
this . r1 + 1 , 0 ) ) ; else if ( bottomIn ) this . setOffsetLast ( new AscCommon . CellBase ( bbox . r1 - this . r2 - 1 , 0 ) ) } } else { this . setOffsetFirst ( new AscCommon . CellBase ( 0 , bbox . c1 - this . c1 ) ) ; this . setOffsetLast ( offset ) } else this . setOffset ( offset ) ; else if ( this . c1 < bbox . c1 ) this . setOffsetLast ( offset ) ; else if ( this . c1 + offset . col <= gc _nMaxCol0 ) this . setOffset ( offset ) ; else isNoDelete = false ; else if ( toDelete ) if ( this . r1 < bbox . r1 ) if ( this . r2 <= bbox . r2 ) this . setOffsetLast ( new AscCommon . CellBase ( - ( this . r2 - bbox . r1 + 1 ) , 0 ) ) ; else this . setOffsetLast ( offset ) ;
else if ( this . r1 <= bbox . r2 ) if ( this . r2 <= bbox . r2 ) { if ( ! bUndo ) { var leftIn = bbox . c1 <= this . c1 && this . c1 <= bbox . c2 ; var rightIn = bbox . c1 <= this . c2 && this . c2 <= bbox . c2 ; if ( leftIn && rightIn ) isNoDelete = false ; else if ( leftIn ) this . setOffsetFirst ( new AscCommon . CellBase ( 0 , bbox . c2 - this . c1 + 1 ) ) ; else if ( rightIn ) this . setOffsetLast ( new AscCommon . CellBase ( 0 , bbox . c1 - this . c2 - 1 ) ) } } else { this . setOffsetFirst ( new AscCommon . CellBase ( bbox . r1 - this . r1 , 0 ) ) ; this . setOffsetLast ( offset ) } else this . setOffset ( offset ) ; else if ( this . r1 < bbox . r1 ) this . setOffsetLast ( offset ) ;
else if ( this . r1 + offset . row <= gc _nMaxRow0 ) this . setOffset ( offset ) ; else isNoDelete = false ; if ( isLastRow ) this . r2 = gc _nMaxRow0 ; if ( isLastCol ) this . c2 = gc _nMaxCol0 ; return isNoDelete } ; Range . prototype . isOneCell = function ( ) { return this . r1 === this . r2 && this . c1 === this . c2 } ; Range . prototype . isOnTheEdge = function ( c , r ) { return this . r1 === r || this . r2 === r || this . c1 === c || this . c2 === c } ; Range . prototype . union = function ( range ) { var s1 = this . clone ( true ) , s2 = range instanceof Range ? range . clone ( true ) : new Range ( range . c1 , range . r1 , range . c2 , range . r2 ,
true ) ; return new Range ( Math . min ( s1 . c1 , s2 . c1 ) , Math . min ( s1 . r1 , s2 . r1 ) , Math . max ( s1 . c2 , s2 . c2 ) , Math . max ( s1 . r2 , s2 . r2 ) ) } ; Range . prototype . union2 = function ( range ) { this . c1 = Math . min ( this . c1 , range . c1 ) ; this . c2 = Math . max ( this . c2 , range . c2 ) ; this . r1 = Math . min ( this . r1 , range . r1 ) ; this . r2 = Math . max ( this . r2 , range . r2 ) } ; Range . prototype . union3 = function ( c , r ) { this . c1 = Math . min ( this . c1 , c ) ; this . c2 = Math . max ( this . c2 , c ) ; this . r1 = Math . min ( this . r1 , r ) ; this . r2 = Math . max ( this . r2 , r ) } ; Range . prototype . setOffsetWithAbs = function ( offset , opt _canResize ,
opt _circle ) { var temp ; var row = offset . row ; var col = offset . col ; if ( 0 === this . r1 && gc _nMaxRow0 === this . r2 ) row = 0 ; else if ( 0 === this . c1 && gc _nMaxCol0 === this . c2 ) col = 0 ; var isAbsRow1 = this . isAbsRow ( this . refType1 ) ; var isAbsCol1 = this . isAbsCol ( this . refType1 ) ; var isAbsRow2 = this . isAbsRow ( this . refType2 ) ; var isAbsCol2 = this . isAbsCol ( this . refType2 ) ; if ( ! isAbsRow1 ) { this . r1 += row ; if ( this . r1 < 0 ) if ( opt _circle ) this . r1 += gc _nMaxRow0 + 1 ; else { this . r1 = 0 ; if ( ! opt _canResize ) return false } if ( this . r1 > gc _nMaxRow0 ) if ( opt _circle ) this . r1 -= gc _nMaxRow0 +
1 ; else { this . r1 = gc _nMaxRow0 ; return false } } if ( ! isAbsCol1 ) { this . c1 += col ; if ( this . c1 < 0 ) if ( opt _circle ) this . c1 += gc _nMaxCol0 + 1 ; else { this . c1 = 0 ; if ( ! opt _canResize ) return false } if ( this . c1 > gc _nMaxCol0 ) if ( opt _circle ) this . c1 -= gc _nMaxCol0 + 1 ; else { this . c1 = gc _nMaxCol0 ; return false } } if ( ! isAbsRow2 ) { this . r2 += row ; if ( this . r2 < 0 ) if ( opt _circle ) this . r2 += gc _nMaxRow0 + 1 ; else { this . r2 = 0 ; return false } if ( this . r2 > gc _nMaxRow0 ) if ( opt _circle ) this . r2 -= gc _nMaxRow0 + 1 ; else { this . r2 = gc _nMaxRow0 ; if ( ! opt _canResize ) return false } } if ( ! isAbsCol2 ) { this . c2 +=
col ; if ( this . c2 < 0 ) if ( opt _circle ) this . c2 += gc _nMaxCol0 + 1 ; else { this . c2 = 0 ; return false } if ( this . c2 > gc _nMaxCol0 ) if ( opt _circle ) this . c2 -= gc _nMaxCol0 + 1 ; else { this . c2 = gc _nMaxCol0 ; if ( ! opt _canResize ) return false } } if ( this . r1 > this . r2 ) { temp = this . r1 ; this . r1 = this . r2 ; this . r2 = temp ; if ( ! isAbsRow1 && isAbsRow2 ) { isAbsRow1 = ! isAbsRow1 ; isAbsRow2 = ! isAbsRow2 ; this . setAbs ( isAbsRow1 , isAbsCol1 , isAbsRow2 , isAbsCol2 ) } } if ( this . c1 > this . c2 ) { temp = this . c1 ; this . c1 = this . c2 ; this . c2 = temp ; if ( ! isAbsCol1 && isAbsCol2 ) { isAbsCol1 = ! isAbsCol1 ; isAbsCol2 =
! isAbsCol2 ; this . setAbs ( isAbsRow1 , isAbsCol1 , isAbsRow2 , isAbsCol2 ) } } return true } ; Range . prototype . setOffset = function ( offset ) { if ( this . r1 == 0 && this . r2 == gc _nMaxRow0 && offset . row != 0 || this . c1 == 0 && this . c2 == gc _nMaxCol0 && offset . col != 0 ) return ; this . setOffsetFirst ( offset ) ; this . setOffsetLast ( offset ) } ; Range . prototype . setOffsetFirst = function ( offset ) { this . c1 += offset . col ; if ( this . c1 < 0 ) this . c1 = 0 ; if ( this . c1 > gc _nMaxCol0 ) this . c1 = gc _nMaxCol0 ; this . r1 += offset . row ; if ( this . r1 < 0 ) this . r1 = 0 ; if ( this . r1 > gc _nMaxRow0 ) this . r1 = gc _nMaxRow0 } ;
Range . prototype . setOffsetLast = function ( offset ) { this . c2 += offset . col ; if ( this . c2 < 0 ) this . c2 = 0 ; if ( this . c2 > gc _nMaxCol0 ) this . c2 = gc _nMaxCol0 ; this . r2 += offset . row ; if ( this . r2 < 0 ) this . r2 = 0 ; if ( this . r2 > gc _nMaxRow0 ) this . r2 = gc _nMaxRow0 } ; Range . prototype . _getName = function ( val , isCol , abs ) { var isR1C1Mode = AscCommonExcel . g _R1C1Mode ; val += 1 ; if ( isCol && ! isR1C1Mode ) val = g _oCellAddressUtils . colnumToColstr ( val ) ; return ( isR1C1Mode ? isCol ? "C" : "R" : "" ) + ( abs ? isR1C1Mode ? val : "$" + val : isR1C1Mode ? 0 !== ( val = val - ( isCol ? AscCommonExcel . g _ActiveCell . c1 :
AscCommonExcel . g _ActiveCell . r1 ) - 1 ) ? "[" + val + "]" : "" : val ) } ; Range . prototype . getName = function ( refType ) { var isR1C1Mode = AscCommonExcel . g _R1C1Mode ; var c , r , type = this . getType ( ) ; var sRes = "" ; var c1Abs , c2Abs , r1Abs , r2Abs ; if ( referenceType . A === refType ) c1Abs = c2Abs = r1Abs = r2Abs = true ; else if ( referenceType . R === refType ) c1Abs = c2Abs = r1Abs = r2Abs = false ; else { c1Abs = this . isAbsCol ( this . refType1 ) ; c2Abs = this . isAbsCol ( this . refType2 ) ; r1Abs = this . isAbsRow ( this . refType1 ) ; r2Abs = this . isAbsRow ( this . refType2 ) } if ( ( c _oAscSelectionType . RangeMax ===
type || c _oAscSelectionType . RangeRow === type ) && c1Abs === c2Abs ) { sRes = this . _getName ( this . r1 , false , r1Abs ) ; if ( this . r1 !== this . r2 || r1Abs !== r2Abs || ! isR1C1Mode ) sRes += ":" + this . _getName ( this . r2 , false , r2Abs ) } else if ( ( c _oAscSelectionType . RangeMax === type || c _oAscSelectionType . RangeCol === type ) && r1Abs === r2Abs ) { sRes = this . _getName ( this . c1 , true , c1Abs ) ; if ( this . c1 !== this . c2 || c1Abs !== c2Abs || ! isR1C1Mode ) sRes += ":" + this . _getName ( this . c2 , true , c2Abs ) } else { r = this . _getName ( this . r1 , false , r1Abs ) ; c = this . _getName ( this . c1 , true , c1Abs ) ;
sRes = isR1C1Mode ? r + c : c + r ; if ( ! this . isOneCell ( ) || r1Abs !== r2Abs || c1Abs !== c2Abs ) { r = this . _getName ( this . r2 , false , r2Abs ) ; c = this . _getName ( this . c2 , true , c2Abs ) ; sRes += ":" + ( isR1C1Mode ? r + c : c + r ) } } return sRes } ; Range . prototype . getAbsName = function ( ) { return this . getName ( referenceType . A ) } ; Range . prototype . getType = function ( ) { var bRow = 0 === this . c1 && gc _nMaxCol0 === this . c2 ; var bCol = 0 === this . r1 && gc _nMaxRow0 === this . r2 ; var res ; if ( bCol && bRow ) res = c _oAscSelectionType . RangeMax ; else if ( bCol ) res = c _oAscSelectionType . RangeCol ; else if ( bRow ) res =
c _oAscSelectionType . RangeRow ; else res = c _oAscSelectionType . RangeCells ; return res } ; Range . prototype . getSharedRange = function ( sharedRef , c , r ) { var isAbsR1 = this . isAbsR1 ( ) ; var isAbsC1 = this . isAbsC1 ( ) ; var isAbsR2 = this . isAbsR2 ( ) ; var isAbsC2 = this . isAbsC2 ( ) ; if ( this . r1 === 0 && this . r2 === gc _nMaxRow0 ) isAbsR1 = isAbsR2 = true ; if ( this . c1 === 0 && this . c2 === gc _nMaxCol0 ) isAbsC1 = isAbsC2 = true ; var r1 = isAbsR2 ? sharedRef . r1 : Math . max ( sharedRef . r2 + ( r - this . r2 ) , sharedRef . r1 ) ; var c1 = isAbsC2 ? sharedRef . c1 : Math . max ( sharedRef . c2 + ( c - this . c2 ) , sharedRef . c1 ) ;
var r2 = isAbsR1 ? sharedRef . r2 : Math . min ( sharedRef . r1 + ( r - this . r1 ) , sharedRef . r2 ) ; var c2 = isAbsC1 ? sharedRef . c2 : Math . min ( sharedRef . c1 + ( c - this . c1 ) , sharedRef . c2 ) ; return new Range ( c1 , r1 , c2 , r2 ) } ; Range . prototype . getSharedRangeBbox = function ( ref , base ) { var res = this . clone ( ) ; var shiftBase ; var offset = new AscCommon . CellBase ( ref . r1 - base . nRow , ref . c1 - base . nCol ) ; if ( ! offset . isEmpty ( ) ) { shiftBase = this . clone ( ) ; shiftBase . setOffsetWithAbs ( offset , false , false ) } offset . row = ref . r2 - base . nRow ; offset . col = ref . c2 - base . nCol ; res . setOffsetWithAbs ( offset ,
false , false ) ; res . union2 ( shiftBase ? shiftBase : this ) ; return res } ; Range . prototype . getSharedIntersect = function ( sharedRef , bbox ) { var leftTop = this . getSharedRange ( sharedRef , bbox . c1 , bbox . r1 ) ; var rightBottom = this . getSharedRange ( sharedRef , bbox . c2 , bbox . r2 ) ; return leftTop . union ( rightBottom ) } ; Range . prototype . setAbs = function ( absRow1 , absCol1 , absRow2 , absCol2 ) { this . refType1 = ( absRow1 ? 0 : 2 ) + ( absCol1 ? 0 : 1 ) ; this . refType2 = ( absRow2 ? 0 : 2 ) + ( absCol2 ? 0 : 1 ) } ; Range . prototype . isAbsCol = function ( refType ) { return refType === referenceType . A ||
refType === referenceType . RRAC } ; Range . prototype . isAbsRow = function ( refType ) { return refType === referenceType . A || refType === referenceType . ARRC } ; Range . prototype . isAbsR1 = function ( ) { return this . isAbsRow ( this . refType1 ) } ; Range . prototype . isAbsC1 = function ( ) { return this . isAbsCol ( this . refType1 ) } ; Range . prototype . isAbsR2 = function ( ) { return this . isAbsRow ( this . refType2 ) } ; Range . prototype . isAbsC2 = function ( ) { return this . isAbsCol ( this . refType2 ) } ; Range . prototype . isAbsAll = function ( ) { return this . isAbsR1 ( ) && this . isAbsC1 ( ) && this . isAbsR2 ( ) &&
this . isAbsC2 ( ) } ; Range . prototype . switchReference = function ( ) { this . refType1 = ( this . refType1 + 1 ) % 4 ; this . refType2 = ( this . refType2 + 1 ) % 4 } ; Range . prototype . getWidth = function ( ) { return this . c2 - this . c1 + 1 } ; Range . prototype . getHeight = function ( ) { return this . r2 - this . r1 + 1 } ; Range . prototype . transpose = function ( startCol , startRow ) { if ( startCol === undefined ) startCol = this . c1 ; if ( startRow === undefined ) startRow = this . r1 ; var row0 = this . c1 - startCol + startRow ; var col0 = this . r1 - startRow + startCol ; return new Range ( col0 , row0 , col0 + ( this . r2 - this . r1 ) ,
row0 + ( this . c2 - this . c1 ) ) } ; function Range3D ( ) { this . sheet = "" ; this . sheet2 = "" ; if ( 3 == arguments . length ) { var range = arguments [ 0 ] ; Range . call ( this , range . c1 , range . r1 , range . c2 , range . r2 ) ; this . refType1 = range . refType1 ; this . refType2 = range . refType2 ; this . sheet = arguments [ 1 ] ; this . sheet2 = arguments [ 2 ] } else if ( arguments . length > 1 ) Range . apply ( this , arguments ) ; else Range . call ( this , 0 , 0 , 0 , 0 ) } Range3D . prototype = Object . create ( Range . prototype ) ; Range3D . prototype . constructor = Range3D ; Range3D . prototype . isIntersect = function ( ) { var oRes =
true ; if ( 2 == arguments . length ) oRes = this . sheet === arguments [ 1 ] ; return oRes && Range . prototype . isIntersect . apply ( this , arguments ) } ; Range3D . prototype . clone = function ( ) { return new Range3D ( Range . prototype . clone . apply ( this , arguments ) , this . sheet , this . sheet2 ) } ; Range3D . prototype . setSheet = function ( sheet , sheet2 ) { this . sheet = sheet ; this . sheet2 = sheet2 ? sheet2 : sheet } ; Range3D . prototype . getName = function ( ) { return AscCommon . parserHelp . get3DRef ( this . sheet , Range . prototype . getName . apply ( this ) ) } ; function SelectionRange ( ws ) { this . ranges =
[ new Range ( 0 , 0 , 0 , 0 ) ] ; this . activeCell = new AscCommon . CellBase ( 0 , 0 ) ; this . activeCellId = 0 ; this . worksheet = ws } SelectionRange . prototype . clean = function ( ) { this . ranges = [ new Range ( 0 , 0 , 0 , 0 ) ] ; this . activeCellId = 0 ; this . activeCell . clean ( ) } ; SelectionRange . prototype . contains = function ( c , r ) { return this . ranges . some ( function ( item ) { return item . contains ( c , r ) } ) } ; SelectionRange . prototype . contains2 = function ( cell ) { return this . contains ( cell . col , cell . row ) } ; SelectionRange . prototype . containsCol = function ( c ) { return this . ranges . some ( function ( item ) { return item . containsCol ( c ) } ) } ;
SelectionRange . prototype . containsRow = function ( r ) { return this . ranges . some ( function ( item ) { return item . containsRow ( r ) } ) } ; SelectionRange . prototype . inContains = function ( ranges ) { return this . ranges . every ( function ( item1 ) { return ranges . some ( function ( item2 ) { return item2 . containsRange ( item1 ) } ) } ) } ; SelectionRange . prototype . containsRange = function ( range ) { return this . ranges . some ( function ( item ) { return item . containsRange ( range ) } ) } ; SelectionRange . prototype . clone = function ( worksheet ) { var res = new SelectionRange ; res . ranges =
this . ranges . map ( function ( range ) { return range . clone ( ) } ) ; res . activeCell = this . activeCell . clone ( ) ; res . activeCellId = this . activeCellId ; res . worksheet = worksheet || this . worksheet ; return res } ; SelectionRange . prototype . isEqual = function ( range ) { if ( this . activeCellId !== range . activeCellId || ! this . activeCell . isEqual ( range . activeCell ) || this . ranges . length !== range . ranges . length ) return false ; for ( var i = 0 ; i < this . ranges . length ; ++ i ) if ( ! this . ranges [ i ] . isEqual ( range . ranges [ i ] ) ) return false ; return true } ; SelectionRange . prototype . addRange =
function ( ) { this . activeCellId = this . ranges . push ( new Range ( 0 , 0 , 0 , 0 ) ) - 1 ; this . activeCell . clean ( ) } ; SelectionRange . prototype . assign2 = function ( range ) { this . clean ( ) ; this . getLast ( ) . assign2 ( range ) ; this . update ( ) } ; SelectionRange . prototype . union = function ( range ) { var res = this . ranges . some ( function ( item ) { var success = false ; if ( item . c1 === range . c1 && item . c2 === range . c2 ) if ( range . r1 === item . r2 + 1 ) { item . r2 = range . r2 ; success = true } else { if ( range . r2 === item . r1 - 1 ) { item . r1 = range . r1 ; success = true } } else if ( item . r1 === range . r1 && item . r2 ===
range . r2 ) if ( range . c1 === item . c2 + 1 ) { item . c2 = range . c2 ; success = true } else if ( range . c2 === item . c1 - 1 ) { item . c1 = range . c1 ; success = true } return success } ) ; if ( ! res ) { this . addRange ( ) ; this . getLast ( ) . assign2 ( range ) } } ; SelectionRange . prototype . getUnion = function ( ) { var result = new SelectionRange ( this . worksheet ) ; var unionRanges = function ( ranges , res ) { for ( var i = 0 ; i < ranges . length ; ++ i ) if ( 0 === i ) res . assign2 ( ranges [ i ] ) ; else res . union ( ranges [ i ] ) } ; unionRanges ( this . ranges , result ) ; var isUnion = true , resultTmp ; while ( isUnion && ! result . isSingleRange ( ) ) { resultTmp =
new SelectionRange ( this . worksheet ) ; unionRanges ( result . ranges , resultTmp ) ; isUnion = result . ranges . length !== resultTmp . ranges . length ; result = resultTmp } return result } ; SelectionRange . prototype . offsetCell = function ( dr , dc , changeRange , fCheckSize ) { var done , curRange , mc , incompleate ; if ( 1 === this . ranges . length ) { curRange = this . ranges [ this . activeCellId ] ; if ( curRange . isOneCell ( ) ) return 0 ; else { mc = this . worksheet . getMergedByCell ( this . activeCell . row , this . activeCell . col ) ; if ( mc && curRange . isEqual ( mc ) ) return 0 } } var lastRow = this . activeCell . row ;
var lastCol = this . activeCell . col ; this . activeCell . row += dr ; this . activeCell . col += dc ; while ( ! done ) { done = true ; curRange = this . ranges [ this . activeCellId ] ; if ( ! curRange . contains2 ( this . activeCell ) ) { if ( dr ) if ( 0 < dr ) { this . activeCell . row = curRange . r1 ; this . activeCell . col += 1 } else { this . activeCell . row = curRange . r2 ; this . activeCell . col -= 1 } else if ( 0 < dc ) { this . activeCell . row += 1 ; this . activeCell . col = curRange . c1 } else { this . activeCell . row -= 1 ; this . activeCell . col = curRange . c2 } if ( ! curRange . contains2 ( this . activeCell ) ) { if ( ! changeRange ) { this . activeCell . row =
lastRow ; this . activeCell . col = lastCol ; return - 1 } if ( 0 < dc || 0 < dr ) { this . activeCellId += 1 ; this . activeCellId = this . ranges . length > this . activeCellId ? this . activeCellId : 0 ; curRange = this . ranges [ this . activeCellId ] ; this . activeCell . row = curRange . r1 ; this . activeCell . col = curRange . c1 } else { this . activeCellId -= 1 ; this . activeCellId = 0 <= this . activeCellId ? this . activeCellId : this . ranges . length - 1 ; curRange = this . ranges [ this . activeCellId ] ; this . activeCell . row = curRange . r2 ; this . activeCell . col = curRange . c2 } } } mc = this . worksheet . getMergedByCell ( this . activeCell . row ,
this . activeCell . col ) ; if ( mc ) { incompleate = ! curRange . containsRange ( mc ) ; if ( dc > 0 && ( incompleate || this . activeCell . col > mc . c1 || this . activeCell . row !== mc . r1 ) ) { this . activeCell . col = mc . c2 + 1 ; done = false } else if ( dc < 0 && ( incompleate || this . activeCell . col < mc . c2 || this . activeCell . row !== mc . r1 ) ) { this . activeCell . col = mc . c1 - 1 ; done = false } if ( dr > 0 && ( incompleate || this . activeCell . row > mc . r1 || this . activeCell . col !== mc . c1 ) ) { this . activeCell . row = mc . r2 + 1 ; done = false } else if ( dr < 0 && ( incompleate || this . activeCell . row < mc . r2 || this . activeCell . col !==
mc . c1 ) ) { this . activeCell . row = mc . r1 - 1 ; done = false } } if ( ! done ) continue ; while ( this . activeCell . col >= curRange . c1 && this . activeCell . col <= curRange . c2 && fCheckSize ( - 1 , this . activeCell . col ) ) { this . activeCell . col += dc || ( dr > 0 ? + 1 : - 1 ) ; done = false } if ( ! done ) continue ; while ( this . activeCell . row >= curRange . r1 && this . activeCell . row <= curRange . r2 && fCheckSize ( this . activeCell . row , - 1 ) ) { this . activeCell . row += dr || ( dc > 0 ? + 1 : - 1 ) ; done = false } if ( ! done ) continue ; break } return lastRow !== this . activeCell . row || lastCol !== this . activeCell . col ? 1 : - 1 } ; SelectionRange . prototype . setActiveCell =
function ( r , c ) { this . activeCell . row = r ; this . activeCell . col = c ; this . update ( ) } ; SelectionRange . prototype . validActiveCell = function ( ) { var res = true ; var mc = this . worksheet . getMergedByCell ( this . activeCell . row , this . activeCell . col ) ; if ( mc ) { var curRange = this . ranges [ this . activeCellId ] ; if ( ! curRange . containsRange ( mc ) ) if ( - 1 === this . offsetCell ( 1 , 0 , false , function ( ) { return false } ) ) { res = false ; this . activeCell . row = mc . r1 ; this . activeCell . col = mc . c1 } } return res } ; SelectionRange . prototype . getLast = function ( ) { return this . ranges [ this . ranges . length -
1 ] } ; SelectionRange . prototype . isSingleRange = function ( ) { return 1 === this . ranges . length } ; SelectionRange . prototype . update = function ( ) { var range = this . ranges [ this . activeCellId ] ; if ( ! range || ! range . contains ( this . activeCell . col , this . activeCell . row ) ) { range = this . getLast ( ) ; this . activeCell . col = range . c1 ; this . activeCell . row = range . r1 ; this . activeCellId = this . ranges . length - 1 } } ; SelectionRange . prototype . WriteToBinary = function ( w ) { w . WriteLong ( this . ranges . length ) ; for ( var i = 0 ; i < this . ranges . length ; ++ i ) { var range = this . ranges [ i ] ;
w . WriteLong ( range . c1 ) ; w . WriteLong ( range . r1 ) ; w . WriteLong ( range . c2 ) ; w . WriteLong ( range . r2 ) } w . WriteLong ( this . activeCell . row ) ; w . WriteLong ( this . activeCell . col ) ; w . WriteLong ( this . activeCellId ) } ; SelectionRange . prototype . ReadFromBinary = function ( r ) { this . clean ( ) ; var count = r . GetLong ( ) ; var rangesNew = [ ] ; for ( var i = 0 ; i < count ; ++ i ) { var range = new Asc . Range ( r . GetLong ( ) , r . GetLong ( ) , r . GetLong ( ) , r . GetLong ( ) ) ; rangesNew . push ( range ) } if ( rangesNew . length > 0 ) this . ranges = rangesNew ; this . activeCell . row = r . GetLong ( ) ; this . activeCell . col =
r . GetLong ( ) ; this . activeCellId = r . GetLong ( ) ; this . update ( ) } ; SelectionRange . prototype . Select = function ( ) { this . worksheet . selectionRange = this . clone ( ) ; this . worksheet . workbook . handlers . trigger ( "updateSelection" ) } ; function ActiveRange ( ) { if ( 1 == arguments . length ) { var range = arguments [ 0 ] ; Range . call ( this , range . c1 , range . r1 , range . c2 , range . r2 ) ; this . refType1 = range . refType1 ; this . refType2 = range . refType2 } else if ( arguments . length > 1 ) Range . apply ( this , arguments ) ; else Range . call ( this , 0 , 0 , 0 , 0 ) ; this . startCol = 0 ; this . startRow = 0 ;
this . _updateAdditionalData ( ) } ActiveRange . prototype = Object . create ( Range . prototype ) ; ActiveRange . prototype . constructor = ActiveRange ; ActiveRange . prototype . assign = function ( ) { Range . prototype . assign . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . assign2 = function ( ) { Range . prototype . assign2 . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . clone = function ( ) { var oRes = new ActiveRange ( Range . prototype . clone . apply ( this , arguments ) ) ; oRes . startCol =
this . startCol ; oRes . startRow = this . startRow ; return oRes } ; ActiveRange . prototype . normalize = function ( ) { Range . prototype . normalize . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . isEqualAll = function ( ) { var bRes = Range . prototype . isEqual . apply ( this , arguments ) ; if ( bRes && arguments . length > 0 ) { var range = arguments [ 0 ] ; bRes = this . startCol == range . startCol && this . startRow == range . startRow } return bRes } ; ActiveRange . prototype . contains = function ( ) { return Range . prototype . contains . apply ( this ,
arguments ) } ; ActiveRange . prototype . containsRange = function ( ) { return Range . prototype . containsRange . apply ( this , arguments ) } ; ActiveRange . prototype . containsFirstLineRange = function ( ) { return Range . prototype . containsFirstLineRange . apply ( this , arguments ) } ; ActiveRange . prototype . intersection = function ( ) { var oRes = Range . prototype . intersection . apply ( this , arguments ) ; if ( null != oRes ) { oRes = new ActiveRange ( oRes ) ; oRes . _updateAdditionalData ( ) } return oRes } ; ActiveRange . prototype . intersectionSimple = function ( ) { var oRes = Range . prototype . intersectionSimple . apply ( this ,
arguments ) ; if ( null != oRes ) { oRes = new ActiveRange ( oRes ) ; oRes . _updateAdditionalData ( ) } return oRes } ; ActiveRange . prototype . union = function ( ) { var oRes = new ActiveRange ( Range . prototype . union . apply ( this , arguments ) ) ; oRes . _updateAdditionalData ( ) ; return oRes } ; ActiveRange . prototype . union2 = function ( ) { Range . prototype . union2 . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . union3 = function ( ) { Range . prototype . union3 . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . setOffset =
function ( offset ) { this . setOffsetFirst ( offset ) ; this . setOffsetLast ( offset ) } ; ActiveRange . prototype . setOffsetFirst = function ( offset ) { Range . prototype . setOffsetFirst . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . setOffsetLast = function ( offset ) { Range . prototype . setOffsetLast . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . _updateAdditionalData = function ( ) { if ( ! this . contains ( this . startCol , this . startRow ) ) { this . startCol = this . c1 ; this . startRow =
this . r1 } } ; function FormulaRange ( ) { if ( 1 == arguments . length ) { var range = arguments [ 0 ] ; Range . call ( this , range . c1 , range . r1 , range . c2 , range . r2 ) } else if ( arguments . length > 1 ) Range . apply ( this , arguments ) ; else Range . call ( this , 0 , 0 , 0 , 0 ) ; this . refType1 = referenceType . R ; this . refType2 = referenceType . R } FormulaRange . prototype = Object . create ( Range . prototype ) ; FormulaRange . prototype . constructor = FormulaRange ; FormulaRange . prototype . clone = function ( ) { var oRes = new FormulaRange ( Range . prototype . clone . apply ( this , arguments ) ) ; oRes . refType1 =
this . refType1 ; oRes . refType2 = this . refType2 ; return oRes } ; FormulaRange . prototype . intersection = function ( ) { var oRes = Range . prototype . intersection . apply ( this , arguments ) ; if ( null != oRes ) oRes = new FormulaRange ( oRes ) ; return oRes } ; FormulaRange . prototype . intersectionSimple = function ( ) { var oRes = Range . prototype . intersectionSimple . apply ( this , arguments ) ; if ( null != oRes ) oRes = new FormulaRange ( oRes ) ; return oRes } ; FormulaRange . prototype . union = function ( ) { return new FormulaRange ( Range . prototype . union . apply ( this , arguments ) ) } ;
FormulaRange . prototype . getName = function ( ) { var sRes = "" ; var c1Abs = this . isAbsCol ( this . refType1 ) , c2Abs = this . isAbsCol ( this . refType2 ) ; var r1Abs = this . isAbsRow ( this . refType1 ) , r2Abs = this . isAbsRow ( this . refType2 ) ; if ( 0 == this . c1 && gc _nMaxCol0 == this . c2 ) { if ( r1Abs ) sRes += "$" ; sRes += this . r1 + 1 + ":" ; if ( r2Abs ) sRes += "$" ; sRes += this . r2 + 1 } else if ( 0 == this . r1 && gc _nMaxRow0 == this . r2 ) { if ( c1Abs ) sRes += "$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c1 + 1 ) + ":" ; if ( c2Abs ) sRes += "$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c2 + 1 ) } else { if ( c1Abs ) sRes +=
"$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c1 + 1 ) ; if ( r1Abs ) sRes += "$" ; sRes += this . r1 + 1 ; if ( ! this . isOneCell ( ) ) { sRes += ":" ; if ( c2Abs ) sRes += "$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c2 + 1 ) ; if ( r2Abs ) sRes += "$" ; sRes += this . r2 + 1 } } return sRes } ; function MultiplyRange ( ranges ) { this . ranges = ranges } MultiplyRange . prototype . clone = function ( ) { return new MultiplyRange ( this . ranges . slice ( ) ) } ; MultiplyRange . prototype . union2 = function ( multiplyRange ) { this . ranges = this . ranges . concat ( multiplyRange . ranges ) } ; MultiplyRange . prototype . isIntersect =
function ( range ) { for ( var i = 0 ; i < this . ranges . length ; ++ i ) if ( range . isIntersect ( this . ranges [ i ] ) ) return true ; return false } ; MultiplyRange . prototype . contains = function ( c , r ) { for ( var i = 0 ; i < this . ranges . length ; ++ i ) if ( this . ranges [ i ] . contains ( c , r ) ) return true ; return false } ; MultiplyRange . prototype . getUnionRange = function ( ) { if ( 0 === this . ranges . length ) return null ; var res = this . ranges [ 0 ] . clone ( ) ; for ( var i = 1 ; i < this . ranges . length ; ++ i ) res . union2 ( this . ranges [ i ] ) ; return res } ; function VisibleRange ( visibleRange , offsetX , offsetY ) { this . visibleRange =
visibleRange ; this . offsetX = offsetX ; this . offsetY = offsetY } function RangeCache ( ) { this . oCache = { } } RangeCache . prototype . getAscRange = function ( sRange ) { return this . _getRange ( sRange , 1 ) } ; RangeCache . prototype . getRange3D = function ( sRange ) { var res = AscCommon . parserHelp . parse3DRef ( sRange ) ; if ( ! res ) return null ; var range = this . _getRange ( res . range . toUpperCase ( ) , 1 ) ; return range ? new Range3D ( range , res . sheet , res . sheet2 ) : null } ; RangeCache . prototype . getActiveRange = function ( sRange ) { return this . _getRange ( sRange , 2 ) } ; RangeCache . prototype . getRangesFromSqRef =
function ( sqRef ) { var res = [ ] ; var refs = sqRef . split ( " " ) ; for ( var i = 0 ; i < refs . length ; ++ i ) { var ref = AscCommonExcel . g _oRangeCache . getAscRange ( refs [ i ] ) ; if ( ref ) res . push ( ref . clone ( ) ) } return res } ; RangeCache . prototype . getFormulaRange = function ( sRange ) { return this . _getRange ( sRange , 3 ) } ; RangeCache . prototype . _getRange = function ( sRange , type ) { if ( AscCommonExcel . g _R1C1Mode ) { var o = { Formula : sRange , pCurrPos : 0 } ; if ( AscCommon . parserHelp . isArea . call ( o , o . Formula , o . pCurrPos ) ) sRange = o . real _str ; else if ( AscCommon . parserHelp . isRef . call ( o ,
o . Formula , o . pCurrPos ) ) sRange = o . real _str } var oRes = null ; var oCacheVal = this . oCache [ sRange ] ; if ( null == oCacheVal ) { var oFirstAddr , oLastAddr ; var bIsSingle = true ; var nIndex = sRange . indexOf ( ":" ) ; if ( - 1 != nIndex ) { bIsSingle = false ; oFirstAddr = g _oCellAddressUtils . getCellAddress ( sRange . substring ( 0 , nIndex ) ) ; oLastAddr = g _oCellAddressUtils . getCellAddress ( sRange . substring ( nIndex + 1 ) ) } else oFirstAddr = oLastAddr = g _oCellAddressUtils . getCellAddress ( sRange ) ; oCacheVal = { first : null , last : null , ascRange : null , formulaRange : null , activeRange : null } ;
if ( oFirstAddr . isValid ( ) && oLastAddr . isValid ( ) && ( ! bIsSingle || ! oFirstAddr . getIsRow ( ) && ! oFirstAddr . getIsCol ( ) ) ) { oCacheVal . first = oFirstAddr ; oCacheVal . last = oLastAddr } this . oCache [ sRange ] = oCacheVal } if ( 1 == type ) oRes = oCacheVal . ascRange ; else if ( 2 == type ) oRes = oCacheVal . activeRange ; else oRes = oCacheVal . formulaRange ; if ( null == oRes && null != oCacheVal . first && null != oCacheVal . last ) { var r1 = oCacheVal . first . getRow0 ( ) , r2 = oCacheVal . last . getRow0 ( ) , c1 = oCacheVal . first . getCol0 ( ) , c2 = oCacheVal . last . getCol0 ( ) ; var r1Abs = oCacheVal . first . getRowAbs ( ) ,
r2Abs = oCacheVal . last . getRowAbs ( ) , c1Abs = oCacheVal . first . getColAbs ( ) , c2Abs = oCacheVal . last . getColAbs ( ) ; if ( oCacheVal . first . getIsRow ( ) && oCacheVal . last . getIsRow ( ) ) { c1 = 0 ; c2 = gc _nMaxCol0 } if ( oCacheVal . first . getIsCol ( ) && oCacheVal . last . getIsCol ( ) ) { r1 = 0 ; r2 = gc _nMaxRow0 } if ( r1 > r2 ) { var temp = r1 ; r1 = r2 ; r2 = temp ; temp = r1Abs ; r1Abs = r2Abs ; r2Abs = temp } if ( c1 > c2 ) { var temp = c1 ; c1 = c2 ; c2 = temp ; temp = c1Abs ; c1Abs = c2Abs ; c2Abs = temp } if ( 1 == type ) { if ( null == oCacheVal . ascRange ) { var oAscRange = new Range ( c1 , r1 , c2 , r2 ) ; oAscRange . setAbs ( r1Abs , c1Abs ,
r2Abs , c2Abs ) ; oCacheVal . ascRange = oAscRange } oRes = oCacheVal . ascRange } else if ( 2 == type ) { if ( null == oCacheVal . activeRange ) { var oActiveRange = new ActiveRange ( c1 , r1 , c2 , r2 ) ; oActiveRange . setAbs ( r1Abs , c1Abs , r2Abs , c2Abs ) ; oActiveRange . startCol = oActiveRange . c1 ; oActiveRange . startRow = oActiveRange . r1 ; oCacheVal . activeRange = oActiveRange } oRes = oCacheVal . activeRange } else { if ( null == oCacheVal . formulaRange ) { var oFormulaRange = new FormulaRange ( c1 , r1 , c2 , r2 ) ; oFormulaRange . setAbs ( r1Abs , c1Abs , r2Abs , c2Abs ) ; oCacheVal . formulaRange = oFormulaRange } oRes =
oCacheVal . formulaRange } } return oRes } ; var g _oRangeCache = new RangeCache ; function HandlersList ( handlers ) { if ( ! ( this instanceof HandlersList ) ) return new HandlersList ( handlers ) ; this . handlers = handlers || { } ; return this } HandlersList . prototype = { constructor : HandlersList , trigger : function ( eventName ) { var h = this . handlers [ eventName ] , t = typeOf ( h ) , a = Array . prototype . slice . call ( arguments , 1 ) , i ; if ( t === kFunctionL ) return h . apply ( this , a ) ; if ( t === kArrayL ) { for ( i = 0 ; i < h . length ; i += 1 ) if ( typeOf ( h [ i ] ) === kFunctionL ) h [ i ] . apply ( this , a ) ;
return true } return false } , add : function ( eventName , eventHandler , replaceOldHandler ) { var th = this . handlers , h , old , t ; if ( replaceOldHandler || ! th . hasOwnProperty ( eventName ) ) th [ eventName ] = eventHandler ; else { old = h = th [ eventName ] ; t = typeOf ( old ) ; if ( t !== kArrayL ) { h = th [ eventName ] = [ ] ; if ( t === kFunctionL ) h . push ( old ) } h . push ( eventHandler ) } } , remove : function ( eventName , eventHandler ) { var th = this . handlers , h = th [ eventName ] , i ; if ( th . hasOwnProperty ( eventName ) ) { if ( typeOf ( h ) !== kArrayL || typeOf ( eventHandler ) !== kFunctionL ) { delete th [ eventName ] ;
return true } for ( i = h . length - 1 ; i >= 0 ; i -= 1 ) if ( h [ i ] === eventHandler ) { delete h [ i ] ; return true } } return false } } ; function outputDebugStr ( channel ) { var c = window . console ; if ( Asc . g _debug _mode && c && c [ channel ] && c [ channel ] . apply ) c [ channel ] . apply ( this , Array . prototype . slice . call ( arguments , 1 ) ) } function trim ( val ) { if ( ! String . prototype . trim ) return val . trim ( ) ; else return val . replace ( /^\s+|\s+$/g , "" ) } function isNumberInfinity ( val ) { var valTrim = trim ( val ) ; var valInt = valTrim - 0 ; return valInt == valTrim && valTrim . length > 0 && MIN _EXCEL _INT <
valInt && valInt < MAX _EXCEL _INT } function arrayToLowerCase ( array ) { var result = [ ] ; for ( var i = 0 , length = array . length ; i < length ; ++ i ) result . push ( array [ i ] . toLowerCase ( ) ) ; return result } function isFixedWidthCell ( frag ) { for ( var i = 0 ; i < frag . length ; ++ i ) { var f = frag [ i ] . format ; if ( f && f . getRepeat ( ) ) return true } return false } function dropDecimalAutofit ( f ) { var s = getFragmentsText ( f ) ; if ( s . search ( /E/i ) >= 0 ) return f ; var pos = s . indexOf ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ; if ( - 1 !== pos ) { f = [ f [ 0 ] . clone ( ) ] ; f [ 0 ] . text =
s . slice ( 0 , pos ) } return f } function getFragmentsText ( f ) { return f . reduce ( function ( pv , cv ) { return pv + cv . text } , "" ) } function getFragmentsLength ( f ) { return f . length > 0 ? f . reduce ( function ( pv , cv ) { return pv + cv . text . length } , 0 ) : 0 } function executeInR1C1Mode ( mode , runFunction ) { var oldMode = AscCommonExcel . g _R1C1Mode ; AscCommonExcel . g _R1C1Mode = mode ; runFunction ( ) ; AscCommonExcel . g _R1C1Mode = oldMode } function checkFilteringMode ( f , oThis , args ) { if ( ! window [ "AscCommonExcel" ] . filteringMode ) AscCommon . History . LocalChange = true ; var ret =
f . apply ( oThis , args ) ; if ( ! window [ "AscCommonExcel" ] . filteringMode ) AscCommon . History . LocalChange = false ; return ret } function getEndValueRange ( dx , v1 , v2 , coord1 , coord2 ) { var leftDir = { x1 : v2 , x2 : v1 } , rightDir = { x1 : v1 , x2 : v2 } , res ; if ( 0 !== dx ) if ( coord1 > v1 && coord2 < v2 ) if ( 0 > dx ) res = coord1 === coord2 ? leftDir : rightDir ; else res = coord1 === coord2 ? rightDir : leftDir ; else if ( coord1 === v1 && coord2 === v2 ) if ( 0 > dx ) res = leftDir ; else res = rightDir ; else if ( coord1 > v1 && coord2 === v2 ) res = leftDir ; else { if ( coord1 === v1 && coord2 < v2 ) res = rightDir } else res =
rightDir ; return res } function checkStylesNames ( cellStyles ) { var oStyle , i ; for ( i = 0 ; i < cellStyles . DefaultStyles . length ; ++ i ) { oStyle = cellStyles . DefaultStyles [ i ] ; AscFonts . FontPickerByCharacter . getFontsByString ( oStyle . Name ) ; AscFonts . FontPickerByCharacter . getFontsByString ( AscCommon . translateManager . getValue ( oStyle . Name ) ) } for ( i = 0 ; i < cellStyles . CustomStyles . length ; ++ i ) { oStyle = cellStyles . CustomStyles [ i ] ; AscFonts . FontPickerByCharacter . getFontsByString ( oStyle . Name ) } } function getContext ( w , h , wb ) { var oCanvas = document . createElement ( "canvas" ) ;
oCanvas . width = w ; oCanvas . height = h ; return new Asc . DrawingContext ( { canvas : oCanvas , units : 0 , fmgrGraphics : wb . fmgrGraphics , font : wb . m _oFont } ) } function getGraphics ( ctx ) { var graphics = new AscCommon . CGraphics ; graphics . init ( ctx . ctx , ctx . getWidth ( 0 ) , ctx . getHeight ( 0 ) , ctx . getWidth ( 3 ) , ctx . getHeight ( 3 ) ) ; graphics . m _oFontManager = AscCommon . g _fontManager ; return graphics } function generateCellStyles ( w , h , wb ) { var result = [ ] ; var widthWithRetina = AscCommon . AscBrowser . convertToRetinaValue ( w , true ) ; var heightWithRetina = AscCommon . AscBrowser . convertToRetinaValue ( h ,
true ) ; var ctx = getContext ( widthWithRetina , heightWithRetina , wb ) ; var oCanvas = ctx . getCanvas ( ) ; var graphics = getGraphics ( ctx ) ; function addStyles ( styles , type ) { var oStyle , name , displayName ; for ( var i = 0 ; i < styles . length && i < 1E3 ; ++ i ) { oStyle = styles [ i ] ; if ( oStyle . Hidden ) continue ; name = displayName = oStyle . Name ; if ( type === AscCommon . c _oAscStyleImage . Default ) { oStyle = cellStyles . getCustomStyleByBuiltinId ( oStyle . BuiltinId ) || oStyle ; displayName = AscCommon . translateManager . getValue ( name ) } else if ( null !== oStyle . BuiltinId ) continue ;
if ( window [ "IS_NATIVE_EDITOR" ] ) window [ "native" ] [ "BeginDrawStyle" ] ( type , name ) ; drawStyle ( ctx , graphics , wb . stringRender , oStyle , displayName , widthWithRetina , heightWithRetina ) ; if ( window [ "IS_NATIVE_EDITOR" ] ) window [ "native" ] [ "EndDrawStyle" ] ( ) ; else result . push ( new AscCommon . CStyleImage ( name , type , oCanvas . toDataURL ( "image/png" ) ) ) } } var cellStyles = wb . model . CellStyles ; addStyles ( cellStyles . CustomStyles , AscCommon . c _oAscStyleImage . Document ) ; addStyles ( cellStyles . DefaultStyles , AscCommon . c _oAscStyleImage . Default ) ; return result }
function drawStyle ( ctx , graphics , sr , oStyle , sStyleName , width , height , opt _cf _preview ) { var bc = null , bs = AscCommon . c _oAscBorderStyles . None , isNotFirst = false ; ctx . clear ( ) ; if ( oStyle . ApplyFill ) { var fill = oStyle . getFill ( ) ; if ( null !== fill ) AscCommonExcel . drawFillCell ( ctx , graphics , fill , new AscCommon . asc _CRect ( 0 , 0 , width , height ) ) } function drawBorder ( type , b , x1 , y1 , x2 , y2 ) { if ( b && b . w > 0 ) { var isStroke = false ; var isNewColor = ! AscCommonExcel . g _oColorManager . isEqual ( bc , b . getColorOrDefault ( ) ) ; var isNewStyle = bs !== b . s ; if ( isNotFirst &&
( isNewColor || isNewStyle ) ) { ctx . stroke ( ) ; isStroke = true } if ( isNewColor ) { bc = b . getColorOrDefault ( ) ; ctx . setStrokeStyle ( bc ) } if ( isNewStyle ) { bs = b . s ; ctx . setLineWidth ( b . w ) ; ctx . setLineDash ( b . getDashSegments ( ) ) } if ( isStroke || false === isNotFirst ) { isNotFirst = true ; ctx . beginPath ( ) } switch ( type ) { case AscCommon . c _oAscBorderType . Hor : ctx . lineHor ( x1 , y1 , x2 ) ; break ; case AscCommon . c _oAscBorderType . Ver : ctx . lineVer ( x1 , y1 , y2 ) ; break ; case AscCommon . c _oAscBorderType . Diag : ctx . lineDiag ( x1 , y1 , x2 , y2 ) ; break } } } if ( oStyle . ApplyBorder ) { var oBorders =
oStyle . getBorder ( ) ; drawBorder ( AscCommon . c _oAscBorderType . Ver , oBorders . l , 0 , 0 , 0 , height ) ; drawBorder ( AscCommon . c _oAscBorderType . Hor , oBorders . b , 0 , height - 1 , width , height - 1 ) ; drawBorder ( AscCommon . c _oAscBorderType . Ver , oBorders . r , width - 1 , height , width - 1 , 0 ) ; drawBorder ( AscCommon . c _oAscBorderType . Hor , oBorders . t , width , 0 , 0 , 0 ) ; if ( isNotFirst ) ctx . stroke ( ) } var format = oStyle . getFont ( ) . clone ( ) ; var nSize = format . getSize ( ) ; if ( 16 < format . getSize ( ) ) nSize = 16 ; if ( window [ "IS_NATIVE_EDITOR" ] ) nSize *= AscCommon . AscBrowser . retinaPixelRatio ;
format . setSize ( nSize ) ; var tm ; if ( ! opt _cf _preview ) tm = sr . measureString ( sStyleName ) ; else { var cellFlags = new AscCommonExcel . CellFlags ; cellFlags . textAlign = oStyle . xfs . align && oStyle . xfs . align . hor ; var fragments = [ ] ; var tempFragment = new AscCommonExcel . Fragment ; tempFragment . text = sStyleName ; tempFragment . format = format ; fragments . push ( tempFragment ) ; tm = sr . measureString ( fragments , cellFlags , width ) } var width _padding = 4 ; if ( oStyle . xfs && oStyle . xfs . align && oStyle . xfs . align . hor === AscCommon . align _Center ) width _padding = Asc . round ( . 5 *
( width - tm . width ) ) ; var textY = Asc . round ( . 5 * ( height - tm . height ) ) ; if ( ! opt _cf _preview ) { ctx . setFont ( format ) ; ctx . setFillStyle ( oStyle . getFontColor ( ) || new AscCommon . CColor ( 0 , 0 , 0 ) ) ; ctx . fillText ( sStyleName , width _padding , textY + tm . baseline ) } else sr . render ( ctx , width _padding , textY , tm . width , oStyle . getFontColor ( ) || new AscCommon . CColor ( 0 , 0 , 0 ) ) } function drawFillCell ( ctx , graphics , fill , rect ) { if ( ! fill . hasFill ( ) ) return ; var solid = fill . getSolidFill ( ) ; if ( solid ) { ctx . setFillStyle ( solid ) . fillRect ( rect . _x , rect . _y , rect . _width , rect . _height ) ;
return } var vector _koef = AscCommonExcel . vector _koef / ctx . getZoom ( ) ; if ( AscCommon . AscBrowser . isCustomScaling ( ) ) vector _koef /= AscCommon . AscBrowser . retinaPixelRatio ; rect . _x *= vector _koef ; rect . _y *= vector _koef ; rect . _width *= vector _koef ; rect . _height *= vector _koef ; AscFormat . ExecuteNoHistory ( function ( ) { var geometry = new AscFormat . CreateGeometry ( "rect" ) ; geometry . Recalculate ( rect . _width , rect . _height , true ) ; var oUniFill = AscCommonExcel . convertFillToUnifill ( fill ) ; if ( ctx instanceof AscCommonExcel . CPdfPrinter ) { graphics . SaveGrState ( ) ;
var _baseTransform ; if ( ! ctx . Transform ) _baseTransform = new AscCommon . CMatrix ; else _baseTransform = ctx . Transform ; graphics . SetBaseTransform ( _baseTransform ) } graphics . SaveGrState ( ) ; var oMatrix = new AscCommon . CMatrix ; oMatrix . tx = rect . _x ; oMatrix . ty = rect . _y ; graphics . transform3 ( oMatrix ) ; var shapeDrawer = new AscCommon . CShapeDrawer ; shapeDrawer . Graphics = graphics ; shapeDrawer . fromShape2 ( new AscFormat . CColorObj ( null , oUniFill , geometry ) , graphics , geometry ) ; shapeDrawer . draw ( geometry ) ; graphics . RestoreGrState ( ) ; if ( ctx instanceof
AscCommonExcel . CPdfPrinter ) { graphics . SetBaseTransform ( null ) ; graphics . RestoreGrState ( ) } } , this , [ ] ) } function generateSlicerStyles ( w , h , wb ) { var result = [ ] ; if ( AscCommon . AscBrowser . isRetina ) { w = AscCommon . AscBrowser . convertToRetinaValue ( w , true ) ; h = AscCommon . AscBrowser . convertToRetinaValue ( h , true ) } var ctx = getContext ( w , h , wb ) ; var oCanvas = ctx . getCanvas ( ) ; var graphics = getGraphics ( ctx ) ; function addStyles ( styles , type ) { for ( var sStyleName in styles ) if ( styles . hasOwnProperty ( sStyleName ) ) { var oSlicerStyle = styles [ sStyleName ] ;
var oTableStyle = oAllTableStyles [ sStyleName ] ; if ( oSlicerStyle && oTableStyle ) { drawSlicerStyle ( ctx , graphics , oSlicerStyle , oTableStyle , w , h ) ; result . push ( new AscCommon . CStyleImage ( sStyleName , type , oCanvas . toDataURL ( "image/png" ) ) ) } } } var oAllTableStyles = wb . model . TableStyles . AllStyles ; addStyles ( wb . model . SlicerStyles . CustomStyles , AscCommon . c _oAscStyleImage . Document ) ; addStyles ( wb . model . SlicerStyles . DefaultStyles , AscCommon . c _oAscStyleImage . Default ) ; return result } function drawSlicerStyle ( ctx , graphics , oSlicerStyle ,
oTableStyle , width , height ) { ctx . clear ( ) ; var dxf , dxfWhole ; var nIns = 2 ; var nBH = 8 ; if ( AscCommon . AscBrowser . isRetina ) { nIns = AscCommon . AscBrowser . convertToRetinaValue ( nIns , true ) ; nBH = AscCommon . AscBrowser . convertToRetinaValue ( nBH , true ) } dxfWhole = oTableStyle . wholeTable && oTableStyle . wholeTable . dxf ; drawSlicerPreviewElement ( dxfWhole , null , ctx , graphics , 0 , 0 , width , height ) ; dxfWhole = dxfWhole || true ; dxf = oTableStyle . headerRow && oTableStyle . headerRow . dxf ; drawSlicerPreviewElement ( dxf , dxfWhole , ctx , graphics , 0 , 0 , width , nBH ) ; var nPos =
nBH + nIns ; var aBT = [ Asc . ST _slicerStyleType . selectedItemWithData , Asc . ST _slicerStyleType . unselectedItemWithData , Asc . ST _slicerStyleType . selectedItemWithNoData , Asc . ST _slicerStyleType . unselectedItemWithNoData ] ; for ( var nType = 0 ; nType < aBT . length ; ++ nType ) { dxf = oSlicerStyle [ aBT [ nType ] ] ; drawSlicerPreviewElement ( dxf , dxfWhole , ctx , graphics , nIns , nPos , width - nIns , nPos + nBH ) ; nPos += nBH + nIns } } function drawSlicerPreviewElement ( dxf , dxfWhole , ctx , graphics , x0 , y0 , x1 , y1 ) { var oFill = dxf && dxf . getFill ( ) ; if ( oFill ) AscCommonExcel . drawFillCell ( ctx ,
graphics , oFill , new AscCommon . asc _CRect ( x0 , y0 , x1 - x0 , y1 - y0 ) ) ; var oBorder = dxf && dxf . getBorder ( ) ; if ( oBorder ) { var oS = oBorder . l ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None ) { ctx . setStrokeStyle ( oS . getColorOrDefault ( ) ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineVer ( x0 , y0 , y1 ) ; ctx . stroke ( ) } oS = oBorder . t ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None ) { ctx . setStrokeStyle ( oS . getColorOrDefault ( ) ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineHor ( x0 + 1 , y0 , x1 - 1 ) ;
ctx . stroke ( ) } oS = oBorder . r ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None ) { ctx . setStrokeStyle ( oS . getColorOrDefault ( ) ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineVer ( x1 - 1 , y0 , y1 ) ; ctx . stroke ( ) } oS = oBorder . b ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None ) { ctx . setStrokeStyle ( oS . getColorOrDefault ( ) ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineHor ( x0 + 1 , y1 - 1 , x1 - 1 ) ; ctx . stroke ( ) } } if ( dxfWhole ) { var nTIns = 5 ; var nTW = 8 ; if ( AscCommon . AscBrowser . isRetina ) { nTIns =
AscCommon . AscBrowser . convertToRetinaValue ( nTIns , true ) ; nTW = AscCommon . AscBrowser . convertToRetinaValue ( nTW , true ) } var oFont = dxf && dxf . getFont ( ) || dxfWhole && dxfWhole . getFont && dxfWhole . getFont ( ) ; var oColor = oFont ? oFont . getColor ( ) : new AscCommon . CColor ( 0 , 0 , 0 ) ; ctx . setStrokeStyle ( oColor ) ; ctx . setLineWidth ( 1 ) ; ctx . setLineDash ( [ ] ) ; ctx . beginPath ( ) ; ctx . lineHor ( nTIns , y0 + ( y1 - y0 ) / 2 , nTIns + nTW ) ; ctx . stroke ( ) } } function generateXfsStyle ( w , h , wb , xfs , text ) { if ( AscCommon . AscBrowser . isRetina ) { w = AscCommon . AscBrowser . convertToRetinaValue ( w ,
true ) ; h = AscCommon . AscBrowser . convertToRetinaValue ( h , true ) } var ctx = getContext ( w , h , wb ) ; var oCanvas = ctx . getCanvas ( ) ; var graphics = getGraphics ( ctx ) ; var oStyle = new AscCommonExcel . CCellStyle ; oStyle . xfs = xfs ; drawStyle ( ctx , graphics , wb . stringRender , oStyle , text , w , h ) ; return new AscCommon . CStyleImage ( text , null , oCanvas . toDataURL ( "image/png" ) ) } function createAndPutCanvas ( id ) { var parent = document . getElementById ( id ) ; if ( ! parent ) return ; var w = parent . clientWidth ; var h = parent . clientHeight ; if ( ! w || ! h ) return ; var canvas = parent . firstChild ;
if ( ! canvas ) { canvas = document . createElement ( "canvas" ) ; canvas . style . cssText = "pointer-events: none;padding:0;margin:0;user-select:none;" ; canvas . style . width = w + "px" ; canvas . style . height = h + "px" ; parent . appendChild ( canvas ) } canvas . width = AscCommon . AscBrowser . convertToRetinaValue ( w , true ) ; canvas . height = AscCommon . AscBrowser . convertToRetinaValue ( h , true ) ; return canvas } function generateXfsStyle2 ( id , wb , xfs , text ) { var canvas = createAndPutCanvas ( id ) ; if ( ! canvas ) return ; var w = canvas . width ; var h = canvas . height ; var ctx = new Asc . DrawingContext ( { canvas : canvas ,
units : 0 , fmgrGraphics : wb . fmgrGraphics , font : wb . m _oFont } ) ; var graphics = getGraphics ( ctx ) ; var oStyle = new AscCommonExcel . CCellStyle ; oStyle . xfs = xfs ; drawStyle ( ctx , graphics , wb . stringRender , oStyle , text , w , h , true ) } function drawGradientPreview ( id , wb , colors , _colorBorderOut , _colorBorderIn , _realPercentWidth , _indent ) { if ( ! colors || ! colors . length ) return null ; var canvas = createAndPutCanvas ( id ) ; if ( ! canvas ) return ; var w = canvas . width ; var h = canvas . height ; var ctx = new Asc . DrawingContext ( { canvas : canvas , units : 0 , fmgrGraphics : wb . fmgrGraphics ,
font : wb . m _oFont } ) ; var graphics = getGraphics ( ctx ) ; var fill = new AscCommonExcel . Fill ; if ( colors . length === 1 ) { fill . patternFill = new AscCommonExcel . PatternFill ; fill . patternFill . fromColor ( colors [ 0 ] ) } else { fill . gradientFill = new AscCommonExcel . GradientFill ; var arrColors = [ ] ; for ( var i = 0 ; i < colors . length ; i ++ ) { var _stop = new AscCommonExcel . GradientStop ; _stop . position = ( i + 1 ) / colors . length ; _stop . color = colors [ i ] ; arrColors . push ( _stop ) } fill . gradientFill . asc _putGradientStops ( arrColors ) } if ( ! _indent ) _indent = 0 ; var rectX = _indent ;
var rectY = _indent ; var rectW = w - _indent * 2 ; var rectH = h - _indent * 2 ; if ( _realPercentWidth ) if ( _realPercentWidth > 0 ) rectW = rectW * _realPercentWidth ; else { rectX = rectW - rectW * Math . abs ( _realPercentWidth ) + 1 ; rectW = rectW * Math . abs ( _realPercentWidth ) + 1 } AscCommonExcel . drawFillCell ( ctx , graphics , fill , new AscCommon . asc _CRect ( rectX , rectY , rectW , rectH ) ) ; if ( _colorBorderIn ) ctx . setLineWidth ( 1 ) . setStrokeStyle ( _colorBorderIn ) . strokeRect ( rectX , rectY , rectW - 1 , rectH - 1 ) ; if ( _colorBorderOut ) ctx . setLineWidth ( 1 ) . setStrokeStyle ( _colorBorderOut ) . strokeRect ( 0 ,
0 , w - 1 , h - 1 ) } function drawIconSetPreview ( id , wb , iconImgs ) { if ( ! iconImgs || ! iconImgs . length ) return null ; var canvas = createAndPutCanvas ( id ) ; if ( ! canvas ) return ; var ctx = new Asc . DrawingContext ( { canvas : canvas , units : 0 , fmgrGraphics : wb . fmgrGraphics , font : wb . m _oFont } ) ; var graphics = getGraphics ( ctx ) ; var shapeDrawer = new AscCommon . CShapeDrawer ; shapeDrawer . Graphics = graphics ; AscFormat . ExecuteNoHistory ( function ( ) { for ( var i = 0 ; i < iconImgs . length ; i ++ ) { var img = iconImgs [ i ] ; if ( ! img ) continue ; var geometry = new AscFormat . CreateGeometry ( "rect" ) ;
geometry . Recalculate ( 5 , 5 , true ) ; var oUniFill = new AscFormat . builder _CreateBlipFill ( img , "stretch" ) ; graphics . save ( ) ; var oMatrix = new AscCommon . CMatrix ; oMatrix . tx = i * 5 ; oMatrix . ty = 0 ; graphics . transform3 ( oMatrix ) ; shapeDrawer . fromShape2 ( new AscFormat . CColorObj ( null , oUniFill , geometry ) , graphics , geometry ) ; shapeDrawer . draw ( geometry ) ; graphics . restore ( ) } } , this , [ ] ) } function asc _CMouseMoveData ( obj ) { if ( ! ( this instanceof asc _CMouseMoveData ) ) return new asc _CMouseMoveData ( obj ) ; if ( obj ) { this . type = obj . type ; this . x = obj . x ; this . reverseX =
obj . reverseX ; this . y = obj . y ; this . hyperlink = obj . hyperlink ; this . aCommentIndexes = obj . aCommentIndexes ; this . userId = obj . userId ; this . lockedObjectType = obj . lockedObjectType ; this . sizeCCOrPt = obj . sizeCCOrPt ; this . sizePx = obj . sizePx ; this . filter = obj . filter ; this . tooltip = obj . tooltip } return this } asc _CMouseMoveData . prototype = { constructor : asc _CMouseMoveData , asc _getType : function ( ) { return this . type } , asc _getX : function ( ) { return this . x } , asc _getReverseX : function ( ) { return this . reverseX } , asc _getY : function ( ) { return this . y } , asc _getHyperlink : function ( ) { return this . hyperlink } ,
asc _getCommentIndexes : function ( ) { return this . aCommentIndexes } , asc _getUserId : function ( ) { return this . userId } , asc _getLockedObjectType : function ( ) { return this . lockedObjectType } , asc _getSizeCCOrPt : function ( ) { return this . sizeCCOrPt } , asc _getSizePx : function ( ) { return this . sizePx } , asc _getFilter : function ( ) { return this . filter } , asc _getTooltip : function ( ) { return this . tooltip } } ; function asc _CHyperlink ( obj ) { this . hyperlinkModel = null != obj ? obj : new AscCommonExcel . Hyperlink ; this . text = null ; return this } asc _CHyperlink . prototype . asc _getType =
function ( ) { return this . hyperlinkModel . getHyperlinkType ( ) } ; asc _CHyperlink . prototype . asc _getHyperlinkUrl = function ( ) { return this . hyperlinkModel . Hyperlink } ; asc _CHyperlink . prototype . asc _getTooltip = function ( ) { return this . hyperlinkModel . Tooltip } ; asc _CHyperlink . prototype . asc _getLocation = function ( ) { return this . hyperlinkModel . getLocation ( ) } ; asc _CHyperlink . prototype . asc _getSheet = function ( ) { return this . hyperlinkModel . LocationSheet } ; asc _CHyperlink . prototype . asc _getRange = function ( ) { return this . hyperlinkModel . getLocationRange ( ) } ;
asc _CHyperlink . prototype . asc _getText = function ( ) { return this . text } ; asc _CHyperlink . prototype . asc _setType = function ( val ) { switch ( val ) { case Asc . c _oAscHyperlinkType . WebLink : this . hyperlinkModel . setLocation ( null ) ; break ; case Asc . c _oAscHyperlinkType . RangeLink : this . hyperlinkModel . Hyperlink = null ; break } } ; asc _CHyperlink . prototype . asc _setHyperlinkUrl = function ( val ) { this . hyperlinkModel . Hyperlink = val } ; asc _CHyperlink . prototype . asc _setTooltip = function ( val ) { this . hyperlinkModel . Tooltip = val ? val . slice ( 0 , Asc . c _oAscMaxTooltipLength ) :
val } ; asc _CHyperlink . prototype . asc _setLocation = function ( val ) { this . hyperlinkModel . setLocation ( val ) } ; asc _CHyperlink . prototype . asc _setSheet = function ( val ) { this . hyperlinkModel . setLocationSheet ( val ) } ; asc _CHyperlink . prototype . asc _setRange = function ( val ) { this . hyperlinkModel . setLocationRange ( val ) } ; asc _CHyperlink . prototype . asc _setText = function ( val ) { this . text = val } ; function CPagePrint ( ) { this . pageWidth = 0 ; this . pageHeight = 0 ; this . pageClipRectLeft = 0 ; this . pageClipRectTop = 0 ; this . pageClipRectWidth = 0 ; this . pageClipRectHeight =
0 ; this . pageRange = null ; this . leftFieldInPx = 0 ; this . topFieldInPx = 0 ; this . pageGridLines = false ; this . pageHeadings = false ; this . indexWorksheet = - 1 ; this . startOffset = 0 ; this . startOffsetPx = 0 ; this . scale = null ; this . titleRowRange = null ; this . titleColRange = null ; this . titleWidth = 0 ; this . titleHeight = 0 ; return this } function CPrintPagesData ( ) { this . arrPages = [ ] ; this . currentIndex = 0 ; return this } function asc _CAdjustPrint ( ) { this . printType = Asc . c _oAscPrintType . ActiveSheets ; this . pageOptionsMap = null ; this . ignorePrintArea = null ; this . isOnlyFirstPage =
null ; return this } asc _CAdjustPrint . prototype . asc _getPrintType = function ( ) { return this . printType } ; asc _CAdjustPrint . prototype . asc _setPrintType = function ( val ) { this . printType = val } ; asc _CAdjustPrint . prototype . asc _getPageOptionsMap = function ( ) { return this . pageOptionsMap } ; asc _CAdjustPrint . prototype . asc _setPageOptionsMap = function ( val ) { this . pageOptionsMap = val } ; asc _CAdjustPrint . prototype . asc _getIgnorePrintArea = function ( ) { return this . ignorePrintArea } ; asc _CAdjustPrint . prototype . asc _setIgnorePrintArea = function ( val ) { this . ignorePrintArea =
val } ; function asc _CLockInfo ( ) { this [ "sheetId" ] = null ; this [ "type" ] = null ; this [ "subType" ] = null ; this [ "guid" ] = null ; this [ "rangeOrObjectId" ] = null } function asc _CCollaborativeRange ( c1 , r1 , c2 , r2 ) { this [ "c1" ] = c1 ; this [ "r1" ] = r1 ; this [ "c2" ] = c2 ; this [ "r2" ] = r2 } function asc _CSheetViewSettings ( ) { this . showGridLines = null ; this . showRowColHeaders = null ; this . pane = null ; this . zoomScale = 100 ; this . showZeros = null ; return this } asc _CSheetViewSettings . prototype = { constructor : asc _CSheetViewSettings , clone : function ( ) { var result = new asc _CSheetViewSettings ;
result . showGridLines = this . showGridLines ; result . showRowColHeaders = this . showRowColHeaders ; result . zoom = this . zoom ; if ( this . pane ) result . pane = this . pane . clone ( ) ; result . showZeros = this . showZeros ; return result } , isEqual : function ( settings ) { return this . asc _getShowGridLines ( ) === settings . asc _getShowGridLines ( ) && this . asc _getShowRowColHeaders ( ) === settings . asc _getShowRowColHeaders ( ) } , asc _getShowGridLines : function ( ) { return false !== this . showGridLines } , asc _getShowRowColHeaders : function ( ) { return false !== this . showRowColHeaders } ,
asc _getZoomScale : function ( ) { return this . zoomScale } , asc _getIsFreezePane : function ( ) { return null !== this . pane && this . pane . isInit ( ) } , asc _getShowZeros : function ( ) { return false !== this . showZeros } , asc _setShowGridLines : function ( val ) { this . showGridLines = val } , asc _setShowRowColHeaders : function ( val ) { this . showRowColHeaders = val } , asc _setZoomScale : function ( val ) { this . zoomScale = val } , asc _setShowZeros : function ( val ) { this . showZeros = val } } ; function asc _CPane ( ) { this . state = null ; this . topLeftCell = null ; this . xSplit = 0 ; this . ySplit = 0 ;
this . topLeftFrozenCell = null ; return this } asc _CPane . prototype . isInit = function ( ) { return null !== this . topLeftFrozenCell } ; asc _CPane . prototype . clone = function ( ) { var res = new asc _CPane ; res . state = this . state ; res . topLeftCell = this . topLeftCell ; res . xSplit = this . xSplit ; res . ySplit = this . ySplit ; res . topLeftFrozenCell = this . topLeftFrozenCell ? new AscCommon . CellAddress ( this . topLeftFrozenCell . row , this . topLeftFrozenCell . col ) : null ; return res } ; asc _CPane . prototype . init = function ( ) { if ( ( AscCommonExcel . c _oAscPaneState . Frozen === this . state ||
AscCommonExcel . c _oAscPaneState . FrozenSplit === this . state ) && ( 0 < this . xSplit || 0 < this . ySplit ) ) { this . topLeftFrozenCell = new AscCommon . CellAddress ( this . ySplit , this . xSplit , 0 ) ; if ( ! this . topLeftFrozenCell . isValid ( ) ) this . topLeftFrozenCell = null } } ; function RedoObjectParam ( ) { this . bIsOn = false ; this . oChangeWorksheetUpdate = { } ; this . bUpdateWorksheetByModel = false ; this . bOnSheetsChanged = false ; this . oOnUpdateTabColor = { } ; this . oOnUpdateSheetViewSettings = { } ; this . bAddRemoveRowCol = false ; this . bChangeColorScheme = false ; this . bChangeActive =
false ; this . activeSheet = null } function asc _CSheetPr ( ) { if ( ! ( this instanceof asc _CSheetPr ) ) return new asc _CSheetPr ; this . CodeName = null ; this . EnableFormatConditionsCalculation = null ; this . FilterMode = null ; this . Published = null ; this . SyncHorizontal = null ; this . SyncRef = null ; this . SyncVertical = null ; this . TransitionEntry = null ; this . TransitionEvaluation = null ; this . TabColor = null ; this . AutoPageBreaks = true ; this . FitToPage = false ; this . ApplyStyles = false ; this . ShowOutlineSymbols = true ; this . SummaryBelow = true ; this . SummaryRight = true ;
return this } asc _CSheetPr . prototype . clone = function ( ) { var res = new asc _CSheetPr ; res . CodeName = this . CodeName ; res . EnableFormatConditionsCalculation = this . EnableFormatConditionsCalculation ; res . FilterMode = this . FilterMode ; res . Published = this . Published ; res . SyncHorizontal = this . SyncHorizontal ; res . SyncRef = this . SyncRef ; res . SyncVertical = this . SyncVertical ; res . TransitionEntry = this . TransitionEntry ; res . TransitionEvaluation = this . TransitionEvaluation ; if ( this . TabColor ) res . TabColor = this . TabColor . clone ( ) ; res . FitToPage = this . FitToPage ;
res . SummaryBelow = this . SummaryBelow ; res . SummaryRight = this . SummaryRight ; return res } ; function asc _CSelectionMathInfo ( ) { this . count = 0 ; this . countNumbers = 0 ; this . sum = null ; this . average = null ; this . min = null ; this . max = null } asc _CSelectionMathInfo . prototype = { constructor : asc _CSelectionMathInfo , asc _getCount : function ( ) { return this . count } , asc _getCountNumbers : function ( ) { return this . countNumbers } , asc _getSum : function ( ) { return this . sum } , asc _getAverage : function ( ) { return this . average } , asc _getMin : function ( ) { return this . min } ,
asc _getMax : function ( ) { return this . max } } ; function asc _CFindOptions ( ) { this . findWhat = "" ; this . wordsIndex = 0 ; this . scanByRows = true ; this . scanForward = true ; this . isMatchCase = false ; this . isWholeCell = false ; this . isWholeWord = false ; this . isSpellCheck = false ; this . scanOnOnlySheet = true ; this . lookIn = Asc . c _oAscFindLookIn . Formulas ; this . findRegExp = null ; this . replaceWith = "" ; this . isReplaceAll = false ; this . findInSelection = false ; this . selectionRange = null ; this . findRange = null ; this . findResults = null ; this . indexInArray = 0 ; this . countFind =
0 ; this . countReplace = 0 ; this . countFindAll = 0 ; this . countReplaceAll = 0 ; this . sheetIndex = - 1 ; this . error = false } asc _CFindOptions . prototype . clone = function ( ) { var result = new asc _CFindOptions ; result . wordsIndex = this . wordsIndex ; result . findWhat = this . findWhat ; result . scanByRows = this . scanByRows ; result . scanForward = this . scanForward ; result . isMatchCase = this . isMatchCase ; result . isWholeCell = this . isWholeCell ; result . isWholeWord = this . isWholeWord ; result . isSpellCheck = this . isSpellCheck ; result . scanOnOnlySheet = this . scanOnOnlySheet ;
result . lookIn = this . lookIn ; result . replaceWith = this . replaceWith ; result . isReplaceAll = this . isReplaceAll ; result . findInSelection = this . findInSelection ; result . selectionRange = this . selectionRange ? this . selectionRange . clone ( ) : null ; result . findRange = this . findRange ? this . findRange . clone ( ) : null ; result . indexInArray = this . indexInArray ; result . countFind = this . countFind ; result . countReplace = this . countReplace ; result . countFindAll = this . countFindAll ; result . countReplaceAll = this . countReplaceAll ; result . sheetIndex = this . sheetIndex ;
result . error = this . error ; return result } ; asc _CFindOptions . prototype . isEqual = function ( obj ) { return obj && this . isEqual2 ( obj ) && this . scanForward === obj . scanForward && this . scanOnOnlySheet === obj . scanOnOnlySheet } ; asc _CFindOptions . prototype . isEqual2 = function ( obj ) { return obj && this . findWhat === obj . findWhat && this . scanByRows === obj . scanByRows && this . isMatchCase === obj . isMatchCase && this . isWholeCell === obj . isWholeCell && this . lookIn === obj . lookIn } ; asc _CFindOptions . prototype . clearFindAll = function ( ) { this . countFindAll = 0 ; this . countReplaceAll =
0 ; this . error = false } ; asc _CFindOptions . prototype . updateFindAll = function ( ) { this . countFindAll += this . countFind ; this . countReplaceAll += this . countReplace } ; asc _CFindOptions . prototype . asc _setFindWhat = function ( val ) { this . findWhat = val } ; asc _CFindOptions . prototype . asc _setScanByRows = function ( val ) { this . scanByRows = val } ; asc _CFindOptions . prototype . asc _setScanForward = function ( val ) { this . scanForward = val } ; asc _CFindOptions . prototype . asc _setIsMatchCase = function ( val ) { this . isMatchCase = val } ; asc _CFindOptions . prototype . asc _setIsWholeCell =
function ( val ) { this . isWholeCell = val } ; asc _CFindOptions . prototype . asc _setIsWholeWord = function ( val ) { this . isWholeWord = val } ; asc _CFindOptions . prototype . asc _changeSingleWord = function ( val ) { this . isChangeSingleWord = val } ; asc _CFindOptions . prototype . asc _setScanOnOnlySheet = function ( val ) { this . scanOnOnlySheet = val } ; asc _CFindOptions . prototype . asc _setLookIn = function ( val ) { this . lookIn = val } ; asc _CFindOptions . prototype . asc _setReplaceWith = function ( val ) { this . replaceWith = val } ; asc _CFindOptions . prototype . asc _setIsReplaceAll = function ( val ) { this . isReplaceAll =
val } ; function findResults ( ) { this . values = { } ; this . currentKey1 = - 1 ; this . currentKey2 = - 1 ; this . currentKeys1 = null ; this . currentKeys2 = null } findResults . prototype . isNotEmpty = function ( ) { return 0 !== Object . keys ( this . values ) . length } ; findResults . prototype . contains = function ( key1 , key2 ) { return this . values [ key1 ] && this . values [ key1 ] [ key2 ] } ; findResults . prototype . add = function ( key1 , key2 , cell ) { if ( ! this . values [ key1 ] ) this . values [ key1 ] = { } ; this . values [ key1 ] [ key2 ] = cell } ; findResults . prototype . _init = function ( key1 , key2 ) { this . currentKey1 =
key1 ; this . currentKey2 = key2 ; this . currentKeyIndex1 = - 1 ; this . currentKeyIndex2 = - 1 ; this . currentKeys2 = null ; this . currentKeys1 = Object . keys ( this . values ) . sort ( AscCommon . fSortAscending ) ; this . currentKeyIndex1 = this . _findKey ( this . currentKey1 , this . currentKeys1 ) ; if ( 0 === this . currentKeys1 [ this . currentKeyIndex1 ] - this . currentKey1 ) { this . currentKeys2 = Object . keys ( this . values [ this . currentKey1 ] ) . sort ( AscCommon . fSortAscending ) ; this . currentKeyIndex2 = this . _findKey ( this . currentKey2 , this . currentKeys2 ) } } ; findResults . prototype . find =
function ( key1 , key2 , forward ) { this . forward = forward ; if ( this . currentKey1 !== key1 || this . currentKey2 !== key2 ) this . _init ( key1 , key2 ) ; if ( 0 === this . currentKeys1 . length ) return false ; var step = this . forward ? + 1 : - 1 ; this . currentKeyIndex2 += step ; if ( ! this . currentKeys2 || ! this . currentKeys2 [ this . currentKeyIndex2 ] ) { this . currentKeyIndex1 += step ; if ( ! this . currentKeys1 [ this . currentKeyIndex1 ] ) this . currentKeyIndex1 = this . forward ? 0 : this . currentKeys1 . length - 1 ; this . currentKey1 = this . currentKeys1 [ this . currentKeyIndex1 ] >> 0 ; this . currentKeys2 =
Object . keys ( this . values [ this . currentKey1 ] ) . sort ( AscCommon . fSortAscending ) ; this . currentKeyIndex2 = this . forward ? 0 : this . currentKeys2 . length - 1 } this . currentKey2 = this . currentKeys2 [ this . currentKeyIndex2 ] >> 0 ; return true } ; findResults . prototype . _findKey = function ( key , arrayKeys ) { var i = this . forward ? 0 : arrayKeys . length - 1 ; var step = this . forward ? + 1 : - 1 ; var _key ; while ( _key = arrayKeys [ i ] ) { _key = step * ( ( _key >> 0 ) - key ) ; if ( _key >= 0 ) return 0 === _key ? i : i - step ; i += step } return - 2 } ; function CSpellcheckState ( ) { this . lastSpellInfo = null ;
this . lastIndex = 0 ; this . lockSpell = false ; this . startCell = null ; this . currentCell = null ; this . iteration = false ; this . ignoreWords = { } ; this . changeWords = { } ; this . cellsChange = [ ] ; this . newWord = null ; this . cellText = null ; this . newCellText = null ; this . isStart = false ; this . afterReplace = false ; this . isIgnoreUppercase = false ; this . isIgnoreNumbers = false } CSpellcheckState . prototype . clean = function ( ) { this . isStart = false ; this . lastSpellInfo = null ; this . lastIndex = 0 ; this . lockSpell = false ; this . startCell = null ; this . currentCell = null ; this . iteration =
false ; this . ignoreWords = { } ; this . changeWords = { } ; this . cellsChange = [ ] ; this . newWord = null ; this . cellText = null ; this . newCellText = null ; this . afterReplace = false } ; CSpellcheckState . prototype . nextRow = function ( ) { this . lastSpellInfo = null ; this . lastIndex = 0 ; this . currentCell . row += 1 ; this . currentCell . col = 0 } ; function asc _CCompleteMenu ( name , type ) { this . name = name ; this . type = type } asc _CCompleteMenu . prototype . asc _getName = function ( ) { return this . name } ; asc _CCompleteMenu . prototype . asc _getType = function ( ) { return this . type } ; function CCacheMeasureEmpty2 ( ) { this . cache =
{ } } CCacheMeasureEmpty2 . prototype . getKey = function ( elem ) { return elem . getName ( ) + ( elem . getBold ( ) ? "B" : "N" ) + ( elem . getItalic ( ) ? "I" : "N" ) } ; CCacheMeasureEmpty2 . prototype . add = function ( elem , val ) { this . cache [ this . getKey ( elem ) ] = val } ; CCacheMeasureEmpty2 . prototype . get = function ( elem ) { return this . cache [ this . getKey ( elem ) ] } ; var g _oCacheMeasureEmpty2 = new CCacheMeasureEmpty2 ; function CCacheMeasureEmpty ( ) { this . cache = { } } CCacheMeasureEmpty . prototype . add = function ( elem , val ) { var fn = elem . getName ( ) ; var font = this . cache [ fn ] || ( this . cache [ fn ] =
{ } ) ; font [ elem . getSize ( ) ] = val } ; CCacheMeasureEmpty . prototype . get = function ( elem ) { var font = this . cache [ elem . getName ( ) ] ; return font ? font [ elem . getSize ( ) ] : null } ; var g _oCacheMeasureEmpty = new CCacheMeasureEmpty ; function asc _CFormatCellsInfo ( ) { this . type = Asc . c _oAscNumFormatType . General ; this . decimalPlaces = 2 ; this . separator = false ; this . symbol = null } asc _CFormatCellsInfo . prototype . asc _setType = function ( val ) { this . type = val } ; asc _CFormatCellsInfo . prototype . asc _setDecimalPlaces = function ( val ) { this . decimalPlaces = val } ; asc _CFormatCellsInfo . prototype . asc _setSeparator =
function ( val ) { this . separator = val } ; asc _CFormatCellsInfo . prototype . asc _setSymbol = function ( val ) { this . symbol = val } ; asc _CFormatCellsInfo . prototype . asc _getType = function ( ) { return this . type } ; asc _CFormatCellsInfo . prototype . asc _getDecimalPlaces = function ( ) { return this . decimalPlaces } ; asc _CFormatCellsInfo . prototype . asc _getSeparator = function ( ) { return this . separator } ; asc _CFormatCellsInfo . prototype . asc _getSymbol = function ( ) { return this . symbol } ; function asc _CAutoCorrectOptions ( ) { this . type = null ; this . options = [ ] ; this . cellCoord =
null } asc _CAutoCorrectOptions . prototype . asc _setType = function ( val ) { this . type = val } ; asc _CAutoCorrectOptions . prototype . asc _setOptions = function ( val ) { this . options = val } ; asc _CAutoCorrectOptions . prototype . asc _setCellCoord = function ( val ) { this . cellCoord = val } ; asc _CAutoCorrectOptions . prototype . asc _getType = function ( ) { return this . type } ; asc _CAutoCorrectOptions . prototype . asc _getOptions = function ( ) { return this . options } ; asc _CAutoCorrectOptions . prototype . asc _getCellCoord = function ( ) { return this . cellCoord } ; function CEditorEnterOptions ( ) { this . cursorPos =
null ; this . eventPos = null ; this . focus = false ; this . newText = null ; this . hideCursor = false ; this . quickInput = false } function cDate ( ) { var bind = Function . bind ; var unbind = bind . bind ( bind ) ; var date = new ( unbind ( Date , null ) . apply ( null , arguments ) ) ; date . _ _proto _ _ = cDate . prototype ; return date } cDate . prototype = Object . create ( Date . prototype ) ; cDate . prototype . constructor = cDate ; cDate . prototype . excelNullDate1900 = Date . UTC ( 1899 , 11 , 30 , 0 , 0 , 0 ) ; cDate . prototype . excelNullDate1904 = Date . UTC ( 1904 , 0 , 1 , 0 , 0 , 0 ) ; cDate . prototype . getExcelNullDate =
function ( ) { return AscCommon . bDate1904 ? cDate . prototype . excelNullDate1904 : cDate . prototype . excelNullDate1900 } ; cDate . prototype . isLeapYear = function ( ) { var y = this . getUTCFullYear ( ) ; return y % 4 === 0 && y % 100 !== 0 || y % 400 === 0 } ; cDate . prototype . getDaysInMonth = function ( ) { return this . isLeapYear ( ) ? this . getDaysInMonth . L [ this . getUTCMonth ( ) ] : this . getDaysInMonth . R [ this . getUTCMonth ( ) ] } ; cDate . prototype . getDaysInMonth . R = [ 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 ] ; cDate . prototype . getDaysInMonth . L = [ 31 , 29 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 ,
31 ] ; cDate . prototype . getDayOfYear = function ( ) { var start = new Date ( this . getFullYear ( ) , 0 , 0 ) ; var diff = this - start + ( start . getTimezoneOffset ( ) - this . getTimezoneOffset ( ) ) * 60 * 1E3 ; var oneDay = 1E3 * 60 * 60 * 24 ; return Math . floor ( diff / oneDay ) } ; cDate . prototype . truncate = function ( ) { this . setUTCHours ( 0 , 0 , 0 , 0 ) ; return this } ; cDate . prototype . getExcelDate = function ( ) { return Math . floor ( this . getExcelDateWithTime ( ) ) } ; cDate . prototype . getExcelDateWithTime = function ( ) { var year = this . getUTCFullYear ( ) , month = this . getUTCMonth ( ) , date = this . getUTCDate ( ) ,
res ; if ( 1900 === year && 0 === month && 0 === date ) res = 0 ; else if ( 1900 < year || 1900 == year && 1 < month ) res = ( Date . UTC ( year , month , date , this . getUTCHours ( ) , this . getUTCMinutes ( ) , this . getUTCSeconds ( ) ) - this . getExcelNullDate ( ) ) / c _msPerDay ; else if ( 1900 == year && 1 == month && 29 == date ) res = 60 ; else res = ( Date . UTC ( year , month , date , this . getUTCHours ( ) , this . getUTCMinutes ( ) , this . getUTCSeconds ( ) ) - this . getExcelNullDate ( ) ) / c _msPerDay - 1 ; return res } ; cDate . prototype . getExcelDateWithTime2 = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ;
var month = Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; return ( Date . UTC ( year , month , date , this . getUTCHours ( ) , this . getUTCMinutes ( ) , this . getUTCSeconds ( ) ) - this . getExcelNullDate ( ) ) / c _msPerDay } ; cDate . prototype . getDateFromExcel = function ( val ) { val = Math . floor ( val ) ; return this . getDateFromExcelWithTime ( val ) } ; cDate . prototype . getDateFromExcelWithTime = function ( val ) { if ( AscCommon . bDate1904 ) return new cDate ( val * c _msPerDay + this . getExcelNullDate ( ) ) ; else if ( val < 60 ) return new cDate ( val *
c _msPerDay + this . getExcelNullDate ( ) ) ; else if ( val === 60 ) return new cDate ( Date . UTC ( 1900 , 1 , 29 ) ) ; else return new cDate ( val * c _msPerDay + this . getExcelNullDate ( ) ) } ; cDate . prototype . getDateFromExcelWithTime2 = function ( val ) { return new cDate ( val * c _msPerDay + this . getExcelNullDate ( ) ) } ; cDate . prototype . addYears = function ( counts ) { this . setUTCFullYear ( this . getUTCFullYear ( ) + Math . floor ( counts ) ) } ; cDate . prototype . addMonths = function ( counts ) { if ( this . lastDayOfMonth ( ) ) { this . setUTCDate ( 1 ) ; this . setUTCMonth ( this . getUTCMonth ( ) + Math . floor ( counts ) ) ;
this . setUTCDate ( this . getDaysInMonth ( ) ) } else this . setUTCMonth ( this . getUTCMonth ( ) + Math . floor ( counts ) ) } ; cDate . prototype . addDays = function ( counts ) { this . setUTCDate ( this . getUTCDate ( ) + Math . floor ( counts ) ) } ; cDate . prototype . addDays2 = function ( counts ) { Date . prototype . setUTCDate . call ( this , Date . prototype . getUTCDate . call ( this ) + Math . floor ( counts ) ) } ; cDate . prototype . lastDayOfMonth = function ( ) { return this . getDaysInMonth ( ) == this . getUTCDate ( ) } ; cDate . prototype . getUTCDate = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ;
var month = Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; if ( 1899 == year && 11 == month && 31 == date ) return 0 ; else return date } ; cDate . prototype . getUTCMonth = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ; var month = Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; if ( 1899 == year && 11 == month && ( 30 === date || 31 === date ) ) return 0 ; else return month } ; cDate . prototype . getUTCFullYear = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ;
var month = Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; if ( 1899 == year && 11 == month && ( 30 === date || 31 === date ) ) return 1900 ; else return year } ; cDate . prototype . getDateString = function ( api ) { return api . asc _getLocaleExample ( AscCommon . getShortDateFormat ( ) , this . getExcelDate ( ) ) } ; cDate . prototype . getTimeString = function ( api ) { return api . asc _getLocaleExample ( AscCommon . getShortTimeFormat ( ) , this . getExcelDateWithTime ( true ) - this . getTimezoneOffset ( ) / ( 60 * 24 ) ) } ; cDate . prototype . fromISO8601 =
function ( dateStr ) { if ( dateStr . endsWith ( "Z" ) ) return new cDate ( dateStr ) ; else return new cDate ( dateStr + "Z" ) } ; function getIconsForLoad ( ) { return AscCommonExcel . getCFIconsForLoad ( ) . concat ( AscCommonExcel . getSlicerIconsForLoad ( ) ) . concat ( AscCommonExcel . getPivotButtonsForLoad ( ) ) } var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; window [ "AscCommonExcel" ] . g _ActiveCell = null ; window [ "AscCommonExcel" ] . g _R1C1Mode = false ; window [ "AscCommonExcel" ] . kCurCells = "se-cells" ; window [ "AscCommonExcel" ] . recalcType =
recalcType ; window [ "AscCommonExcel" ] . sizePxinPt = sizePxinPt ; window [ "AscCommonExcel" ] . c _sPerDay = c _sPerDay ; window [ "AscCommonExcel" ] . c _msPerDay = c _msPerDay ; window [ "AscCommonExcel" ] . applyFunction = applyFunction ; window [ "AscCommonExcel" ] . g _IncludeNewRowColInTable = true ; window [ "AscCommonExcel" ] . g _AutoCorrectHyperlinks = true ; window [ "Asc" ] [ "cDate" ] = window [ "Asc" ] . cDate = window [ "AscCommonExcel" ] . cDate = cDate ; prot = cDate . prototype ; prot [ "getExcelDateWithTime" ] = prot . getExcelDateWithTime ; window [ "Asc" ] . typeOf = typeOf ; window [ "Asc" ] . lastIndexOf =
lastIndexOf ; window [ "Asc" ] . search = search ; window [ "Asc" ] . getUniqueRangeColor = getUniqueRangeColor ; window [ "Asc" ] . getMinValueOrNull = getMinValueOrNull ; window [ "Asc" ] . round = round ; window [ "Asc" ] . floor = floor ; window [ "Asc" ] . ceil = ceil ; window [ "Asc" ] . incDecFonSize = incDecFonSize ; window [ "AscCommonExcel" ] . calcDecades = calcDecades ; window [ "AscCommonExcel" ] . convertPtToPx = convertPtToPx ; window [ "AscCommonExcel" ] . convertPxToPt = convertPxToPt ; window [ "Asc" ] . profileTime = profileTime ; window [ "AscCommonExcel" ] . getMatchingBorder = getMatchingBorder ;
window [ "AscCommonExcel" ] . WordSplitting = WordSplitting ; window [ "AscCommonExcel" ] . getFindRegExp = getFindRegExp ; window [ "AscCommonExcel" ] . convertFillToUnifill = convertFillToUnifill ; window [ "AscCommonExcel" ] . replaceSpellCheckWords = replaceSpellCheckWords ; window [ "AscCommonExcel" ] . getFullHyperlinkLength = getFullHyperlinkLength ; window [ "Asc" ] . outputDebugStr = outputDebugStr ; window [ "Asc" ] . isNumberInfinity = isNumberInfinity ; window [ "Asc" ] . trim = trim ; window [ "Asc" ] . arrayToLowerCase = arrayToLowerCase ; window [ "Asc" ] . isFixedWidthCell =
isFixedWidthCell ; window [ "AscCommonExcel" ] . dropDecimalAutofit = dropDecimalAutofit ; window [ "AscCommonExcel" ] . getFragmentsText = getFragmentsText ; window [ "AscCommonExcel" ] . getFragmentsLength = getFragmentsLength ; window [ "AscCommonExcel" ] . executeInR1C1Mode = executeInR1C1Mode ; window [ "AscCommonExcel" ] . checkFilteringMode = checkFilteringMode ; window [ "Asc" ] . getEndValueRange = getEndValueRange ; window [ "AscCommonExcel" ] . checkStylesNames = checkStylesNames ; window [ "AscCommonExcel" ] . generateCellStyles = generateCellStyles ; window [ "AscCommonExcel" ] . generateSlicerStyles =
generateSlicerStyles ; window [ "AscCommonExcel" ] . generateXfsStyle = generateXfsStyle ; window [ "AscCommonExcel" ] . generateXfsStyle2 = generateXfsStyle2 ; window [ "AscCommonExcel" ] . getIconsForLoad = getIconsForLoad ; window [ "AscCommonExcel" ] . drawGradientPreview = drawGradientPreview ; window [ "AscCommonExcel" ] . drawIconSetPreview = drawIconSetPreview ; window [ "Asc" ] [ "referenceType" ] = window [ "AscCommonExcel" ] . referenceType = referenceType ; prot = referenceType ; prot [ "A" ] = prot . A ; prot [ "ARRC" ] = prot . ARRC ; prot [ "RRAC" ] = prot . RRAC ; prot [ "R" ] =
prot . R ; window [ "Asc" ] . Range = Range ; window [ "AscCommonExcel" ] . Range3D = Range3D ; window [ "AscCommonExcel" ] . SelectionRange = SelectionRange ; window [ "AscCommonExcel" ] . ActiveRange = ActiveRange ; window [ "AscCommonExcel" ] . FormulaRange = FormulaRange ; window [ "AscCommonExcel" ] . MultiplyRange = MultiplyRange ; window [ "AscCommonExcel" ] . VisibleRange = VisibleRange ; window [ "AscCommonExcel" ] . g _oRangeCache = g _oRangeCache ; window [ "AscCommonExcel" ] . HandlersList = HandlersList ; window [ "AscCommonExcel" ] . RedoObjectParam = RedoObjectParam ; window [ "AscCommonExcel" ] . asc _CMouseMoveData =
asc _CMouseMoveData ; prot = asc _CMouseMoveData . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getX" ] = prot . asc _getX ; prot [ "asc_getReverseX" ] = prot . asc _getReverseX ; prot [ "asc_getY" ] = prot . asc _getY ; prot [ "asc_getHyperlink" ] = prot . asc _getHyperlink ; prot [ "asc_getCommentIndexes" ] = prot . asc _getCommentIndexes ; prot [ "asc_getUserId" ] = prot . asc _getUserId ; prot [ "asc_getLockedObjectType" ] = prot . asc _getLockedObjectType ; prot [ "asc_getSizeCCOrPt" ] = prot . asc _getSizeCCOrPt ; prot [ "asc_getSizePx" ] = prot . asc _getSizePx ; prot [ "asc_getFilter" ] =
prot . asc _getFilter ; prot [ "asc_getTooltip" ] = prot . asc _getTooltip ; window [ "Asc" ] [ "asc_CHyperlink" ] = window [ "Asc" ] . asc _CHyperlink = asc _CHyperlink ; prot = asc _CHyperlink . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getHyperlinkUrl" ] = prot . asc _getHyperlinkUrl ; prot [ "asc_getTooltip" ] = prot . asc _getTooltip ; prot [ "asc_getLocation" ] = prot . asc _getLocation ; prot [ "asc_getSheet" ] = prot . asc _getSheet ; prot [ "asc_getRange" ] = prot . asc _getRange ; prot [ "asc_getText" ] = prot . asc _getText ; prot [ "asc_setType" ] = prot . asc _setType ; prot [ "asc_setHyperlinkUrl" ] =
prot . asc _setHyperlinkUrl ; prot [ "asc_setTooltip" ] = prot . asc _setTooltip ; prot [ "asc_setLocation" ] = prot . asc _setLocation ; prot [ "asc_setSheet" ] = prot . asc _setSheet ; prot [ "asc_setRange" ] = prot . asc _setRange ; prot [ "asc_setText" ] = prot . asc _setText ; window [ "AscCommonExcel" ] . CPagePrint = CPagePrint ; window [ "AscCommonExcel" ] . CPrintPagesData = CPrintPagesData ; window [ "Asc" ] [ "asc_CAdjustPrint" ] = window [ "Asc" ] . asc _CAdjustPrint = asc _CAdjustPrint ; prot = asc _CAdjustPrint . prototype ; prot [ "asc_getPrintType" ] = prot . asc _getPrintType ; prot [ "asc_setPrintType" ] =
prot . asc _setPrintType ; prot [ "asc_getPageOptionsMap" ] = prot . asc _getPageOptionsMap ; prot [ "asc_setPageOptionsMap" ] = prot . asc _setPageOptionsMap ; prot [ "asc_getIgnorePrintArea" ] = prot . asc _getIgnorePrintArea ; prot [ "asc_setIgnorePrintArea" ] = prot . asc _setIgnorePrintArea ; window [ "AscCommonExcel" ] . asc _CLockInfo = asc _CLockInfo ; window [ "AscCommonExcel" ] . asc _CCollaborativeRange = asc _CCollaborativeRange ; window [ "AscCommonExcel" ] . asc _CSheetViewSettings = asc _CSheetViewSettings ; prot = asc _CSheetViewSettings . prototype ; prot [ "asc_getShowGridLines" ] =
prot . asc _getShowGridLines ; prot [ "asc_getShowRowColHeaders" ] = prot . asc _getShowRowColHeaders ; prot [ "asc_getIsFreezePane" ] = prot . asc _getIsFreezePane ; prot [ "asc_getShowZeros" ] = prot . asc _getShowZeros ; prot [ "asc_setShowGridLines" ] = prot . asc _setShowGridLines ; prot [ "asc_setShowRowColHeaders" ] = prot . asc _setShowRowColHeaders ; prot [ "asc_setShowZeros" ] = prot . asc _setShowZeros ; window [ "AscCommonExcel" ] . asc _CPane = asc _CPane ; window [ "AscCommonExcel" ] . asc _CSheetPr = asc _CSheetPr ; window [ "AscCommonExcel" ] . asc _CSelectionMathInfo = asc _CSelectionMathInfo ;
prot = asc _CSelectionMathInfo . prototype ; prot [ "asc_getCount" ] = prot . asc _getCount ; prot [ "asc_getCountNumbers" ] = prot . asc _getCountNumbers ; prot [ "asc_getSum" ] = prot . asc _getSum ; prot [ "asc_getAverage" ] = prot . asc _getAverage ; prot [ "asc_getMin" ] = prot . asc _getMin ; prot [ "asc_getMax" ] = prot . asc _getMax ; window [ "Asc" ] [ "asc_CFindOptions" ] = window [ "Asc" ] . asc _CFindOptions = asc _CFindOptions ; prot = asc _CFindOptions . prototype ; prot [ "asc_setFindWhat" ] = prot . asc _setFindWhat ; prot [ "asc_setScanByRows" ] = prot . asc _setScanByRows ; prot [ "asc_setScanForward" ] =
prot . asc _setScanForward ; prot [ "asc_setIsMatchCase" ] = prot . asc _setIsMatchCase ; prot [ "asc_setIsWholeCell" ] = prot . asc _setIsWholeCell ; prot [ "asc_setScanOnOnlySheet" ] = prot . asc _setScanOnOnlySheet ; prot [ "asc_setLookIn" ] = prot . asc _setLookIn ; prot [ "asc_setReplaceWith" ] = prot . asc _setReplaceWith ; prot [ "asc_setIsReplaceAll" ] = prot . asc _setIsReplaceAll ; window [ "AscCommonExcel" ] . findResults = findResults ; window [ "AscCommonExcel" ] . CSpellcheckState = CSpellcheckState ; window [ "AscCommonExcel" ] . asc _CCompleteMenu = asc _CCompleteMenu ; prot =
asc _CCompleteMenu . prototype ; prot [ "asc_getName" ] = prot . asc _getName ; prot [ "asc_getType" ] = prot . asc _getType ; window [ "AscCommonExcel" ] . g _oCacheMeasureEmpty = g _oCacheMeasureEmpty ; window [ "AscCommonExcel" ] . g _oCacheMeasureEmpty2 = g _oCacheMeasureEmpty2 ; window [ "Asc" ] [ "asc_CFormatCellsInfo" ] = window [ "Asc" ] . asc _CFormatCellsInfo = asc _CFormatCellsInfo ; prot = asc _CFormatCellsInfo . prototype ; prot [ "asc_setType" ] = prot . asc _setType ; prot [ "asc_setDecimalPlaces" ] = prot . asc _setDecimalPlaces ; prot [ "asc_setSeparator" ] = prot . asc _setSeparator ;
prot [ "asc_setSymbol" ] = prot . asc _setSymbol ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getDecimalPlaces" ] = prot . asc _getDecimalPlaces ; prot [ "asc_getSeparator" ] = prot . asc _getSeparator ; prot [ "asc_getSymbol" ] = prot . asc _getSymbol ; window [ "Asc" ] [ "asc_CAutoCorrectOptions" ] = window [ "Asc" ] . asc _CAutoCorrectOptions = asc _CAutoCorrectOptions ; prot = asc _CAutoCorrectOptions . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getOptions" ] = prot . asc _getOptions ; prot [ "asc_getCellCoord" ] = prot . asc _getCellCoord ; window [ "AscCommonExcel" ] . CEditorEnterOptions =
CEditorEnterOptions ; window [ "AscCommonExcel" ] . drawFillCell = drawFillCell } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var asc = window [ "Asc" ] , asc _typeOf = asc . typeOf ; function asc _CHandlersList ( handlers ) { this . handlers = handlers || { } ; return this } asc _CHandlersList . prototype . hasTrigger = function ( eventName ) { return null != this . handlers [ eventName ] } ; asc _CHandlersList . prototype . trigger = function ( eventName ) { var h = this . handlers [ eventName ] , t = asc _typeOf ( h ) , a = Array . prototype . slice . call ( arguments , 1 ) , i ; if ( t === "function" ) return h . apply ( this , a ) ; if ( t === "array" ) { for ( i = 0 ; i < h . length ; i += 1 ) if ( asc _typeOf ( h [ i ] ) === "function" ) h [ i ] . apply ( this ,
a ) ; return true } return false } ; asc _CHandlersList . prototype . add = function ( eventName , eventHandler , replaceOldHandler ) { var th = this . handlers , h , old , t ; if ( replaceOldHandler || ! th . hasOwnProperty ( eventName ) ) th [ eventName ] = eventHandler ; else { old = h = th [ eventName ] ; t = asc _typeOf ( old ) ; if ( t !== "array" ) { h = th [ eventName ] = [ ] ; if ( t === "function" ) h . push ( old ) } h . push ( eventHandler ) } } ; asc _CHandlersList . prototype . remove = function ( eventName , eventHandler ) { var th = this . handlers , h = th [ eventName ] , i ; if ( th . hasOwnProperty ( eventName ) ) { if ( asc _typeOf ( h ) !==
"array" || asc _typeOf ( eventHandler ) !== "function" ) { delete th [ eventName ] ; return true } for ( i = h . length - 1 ; i >= 0 ; i -= 1 ) if ( h [ i ] === eventHandler ) { delete h [ i ] ; return true } } return false } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; AscCommonExcel . asc _CHandlersList = asc _CHandlersList } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var asc _applyFunction = AscCommonExcel . applyFunction ; var c _oAscLockTypes = AscCommon . c _oAscLockTypes ; var c _oAscRecalcIndexTypes = AscCommonExcel . c _oAscRecalcIndexTypes ; var c _oAscLockTypeElemSubType = AscCommonExcel . c _oAscLockTypeElemSubType ; var c _oAscLockTypeElem = AscCommonExcel . c _oAscLockTypeElem ; function CCollaborativeEditing ( handlers , isViewerMode ) { if ( ! ( this instanceof CCollaborativeEditing ) ) return new CCollaborativeEditing ; this . m _nUseType = 1 ; this . handlers = new AscCommonExcel . asc _CHandlersList ( handlers ) ;
this . m _bIsViewerMode = ! ! isViewerMode ; this . m _bGlobalLock = false ; this . m _bGlobalLockEditCell = false ; this . m _arrCheckLocks = [ ] ; this . m _arrNeedUnlock = [ ] ; this . m _arrNeedUnlock2 = [ ] ; this . m _arrChanges = [ ] ; this . m _oRecalcIndexColumns = { } ; this . m _oRecalcIndexRows = { } ; this . m _oInsertColumns = { } ; this . m _oInsertRows = { } ; this . m _bFast = false ; this . init ( ) ; return this } CCollaborativeEditing . prototype . init = function ( ) { } ; CCollaborativeEditing . prototype . clearRecalcIndex = function ( ) { this . m _oRecalcIndexColumns = { } ; this . m _oRecalcIndexRows = { } } ;
CCollaborativeEditing . prototype . startCollaborationEditing = function ( ) { this . m _nUseType = - 1 } ; CCollaborativeEditing . prototype . endCollaborationEditing = function ( ) { if ( this . m _nUseType <= 0 ) this . m _nUseType = 0 } ; CCollaborativeEditing . prototype . setViewerMode = function ( isViewerMode ) { this . m _bIsViewerMode = isViewerMode } ; CCollaborativeEditing . prototype . setFast = function ( bFast ) { return this . m _bFast = bFast } ; CCollaborativeEditing . prototype . getFast = function ( ) { return this . m _bFast } ; CCollaborativeEditing . prototype . Is _SingleUser =
function ( ) { return ! this . getCollaborativeEditing ( ) } ; CCollaborativeEditing . prototype . getCollaborativeEditing = function ( ) { if ( this . m _bIsViewerMode ) return false ; return 1 !== this . m _nUseType } ; CCollaborativeEditing . prototype . haveOtherChanges = function ( ) { return 0 < this . m _arrChanges . length } ; CCollaborativeEditing . prototype . getOwnLocksLength = function ( ) { return this . m _arrNeedUnlock2 . length } ; CCollaborativeEditing . prototype . getGlobalLock = function ( ) { return this . m _bGlobalLock } ; CCollaborativeEditing . prototype . getGlobalLockEditCell =
function ( ) { return this . m _bGlobalLockEditCell } ; CCollaborativeEditing . prototype . onStartEditCell = function ( ) { if ( this . getCollaborativeEditing ( ) ) this . m _bGlobalLockEditCell = true } ; CCollaborativeEditing . prototype . onStopEditCell = function ( ) { this . m _bGlobalLockEditCell = false } ; CCollaborativeEditing . prototype . lock = function ( arrLocks , callback ) { var type ; callback = this . _checkCollaborative ( callback ) ; this . onStartCheckLock ( ) ; for ( var i = 0 ; i < arrLocks . length ; ++ i ) { type = this . _addCheckLock ( arrLocks [ i ] , callback ) ; if ( c _oAscLockTypes . kLockTypeNone !==
type ) { this . m _bGlobalLockEditCell = false ; return c _oAscLockTypes . kLockTypeMine === type } } this . onEndCheckLock ( callback ) ; return true } ; CCollaborativeEditing . prototype . _checkCollaborative = function ( callback ) { if ( false === this . getCollaborativeEditing ( ) ) { AscCommonExcel . applyFunction ( callback , true ) ; callback = undefined } return callback } ; CCollaborativeEditing . prototype . _addCheckLock = function ( lockInfo , callback ) { if ( false !== this . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeMine , false ) ) { AscCommonExcel . applyFunction ( callback ,
true ) ; return c _oAscLockTypes . kLockTypeMine } else if ( false !== this . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) ) { AscCommonExcel . applyFunction ( callback , false ) ; return c _oAscLockTypes . kLockTypeOther } this . m _arrCheckLocks . push ( lockInfo ) ; return c _oAscLockTypes . kLockTypeNone } ; CCollaborativeEditing . prototype . onStartCheckLock = function ( ) { this . m _arrCheckLocks . length = 0 } ; CCollaborativeEditing . prototype . addCheckLock = function ( oItem ) { this . m _arrCheckLocks . push ( oItem ) } ; CCollaborativeEditing . prototype . onEndCheckLock =
function ( callback ) { var t = this ; if ( this . m _arrCheckLocks . length > 0 ) { this . handlers . trigger ( "askLock" , this . m _arrCheckLocks , function ( result ) { t . onCallbackAskLock ( result , callback ) } ) ; if ( undefined !== callback ) this . m _bGlobalLock = true } else { asc _applyFunction ( callback , true ) ; this . m _bGlobalLockEditCell = false } } ; CCollaborativeEditing . prototype . onCallbackAskLock = function ( result , callback ) { this . m _bGlobalLock = false ; this . m _bGlobalLockEditCell = false ; if ( result [ "lock" ] ) { var count = this . m _arrCheckLocks . length ; for ( var i = 0 ; i < count ; ++ i ) { var oItem =
this . m _arrCheckLocks [ i ] ; if ( true !== oItem && false !== oItem ) { var oNewLock = new CLock ( oItem ) ; oNewLock . setType ( c _oAscLockTypes . kLockTypeMine ) ; this . addUnlock2 ( oNewLock ) } } asc _applyFunction ( callback , true ) } else if ( result [ "error" ] ) asc _applyFunction ( callback , false ) } ; CCollaborativeEditing . prototype . addUnlock = function ( LockClass ) { this . m _arrNeedUnlock . push ( LockClass ) } ; CCollaborativeEditing . prototype . addUnlock2 = function ( Lock ) { this . m _arrNeedUnlock2 . push ( Lock ) ; this . handlers . trigger ( "updateDocumentCanSave" ) } ; CCollaborativeEditing . prototype . removeUnlock =
function ( Lock ) { for ( var i = 0 ; i < this . m _arrNeedUnlock . length ; ++ i ) if ( Lock . Element [ "guid" ] === this . m _arrNeedUnlock [ i ] . Element [ "guid" ] ) { this . m _arrNeedUnlock . splice ( i , 1 ) ; return true } return false } ; CCollaborativeEditing . prototype . addChanges = function ( oChanges ) { this . m _arrChanges . push ( oChanges ) } ; CCollaborativeEditing . prototype . applyChanges = function ( ) { var t = this ; var length = this . m _arrChanges . length ; if ( 0 < length ) { var changes = t . m _arrChanges . splice ( 0 , length ) ; this . handlers . trigger ( "applyChanges" , changes , function ( ) { t . handlers . trigger ( "updateAfterApplyChanges" ) } ) ;
return false } return true } ; CCollaborativeEditing . prototype . sendChanges = function ( IsUserSave , isAfterAskSave ) { var bIsCollaborative = this . getCollaborativeEditing ( ) ; var bCheckRedraw = false , bRedrawGraphicObjects = false , bUnlockDefName = false ; var oLock = null ; if ( bIsCollaborative ) { if ( 0 < this . m _arrNeedUnlock . length || 0 < this . m _arrNeedUnlock2 . length ) { bCheckRedraw = true ; this . handlers . trigger ( "cleanSelection" ) } while ( 0 < this . m _arrNeedUnlock2 . length ) { oLock = this . m _arrNeedUnlock2 . shift ( ) ; oLock . setType ( c _oAscLockTypes . kLockTypeNone ,
false ) ; var drawing = AscCommon . g _oTableId . Get _ById ( oLock . Element [ "rangeOrObjectId" ] ) ; if ( drawing && drawing . lockType !== c _oAscLockTypes . kLockTypeNone ) { var bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = c _oAscLockTypes . kLockTypeNone ; bRedrawGraphicObjects = true ; if ( drawing instanceof AscCommon . CCore ) if ( bLocked ) Asc . editor && Asc . editor . sendEvent ( "asc_onLockCore" , false ) } if ( ! bUnlockDefName ) bUnlockDefName = this . handlers . trigger ( "checkDefNameLock" ,
oLock ) ; this . handlers . trigger ( "releaseLocks" , oLock . Element [ "guid" ] ) } var nIndex = 0 ; var nCount = this . m _arrNeedUnlock . length ; for ( ; nIndex < nCount ; ++ nIndex ) { oLock = this . m _arrNeedUnlock [ nIndex ] ; if ( c _oAscLockTypes . kLockTypeOther2 === oLock . getType ( ) ) { if ( ! this . handlers . trigger ( "checkCommentRemoveLock" , oLock . Element ) && ! this . handlers . trigger ( "checkCFRemoveLock" , oLock . Element ) ) { drawing = AscCommon . g _oTableId . Get _ById ( oLock . Element [ "rangeOrObjectId" ] ) ; if ( drawing && drawing . lockType !== c _oAscLockTypes . kLockTypeNone ) { var bLocked =
drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = c _oAscLockTypes . kLockTypeNone ; bRedrawGraphicObjects = true ; if ( drawing instanceof AscCommon . CCore ) if ( bLocked ) Asc . editor && Asc . editor . sendEvent ( "asc_onLockCore" , false ) } if ( ! bUnlockDefName ) bUnlockDefName = this . handlers . trigger ( "checkDefNameLock" , oLock ) } this . m _arrNeedUnlock . splice ( nIndex , 1 ) ; -- nIndex ; -- nCount } } } this . handlers . trigger ( "sendChanges" , this . getRecalcIndexSave ( this . m _oRecalcIndexColumns ) ,
this . getRecalcIndexSave ( this . m _oRecalcIndexRows ) , isAfterAskSave ) ; if ( bIsCollaborative ) { this . _recalcLockArrayOthers ( ) ; delete this . m _oInsertColumns ; delete this . m _oInsertRows ; this . m _oInsertColumns = { } ; this . m _oInsertRows = { } ; this . clearRecalcIndex ( ) ; AscCommon . History . Clear ( ) ; if ( bCheckRedraw ) { this . handlers . trigger ( "drawSelection" ) ; this . handlers . trigger ( "drawFrozenPaneLines" ) ; this . handlers . trigger ( "updateAllSheetsLock" ) ; this . handlers . trigger ( "showComments" ) } if ( bCheckRedraw || bRedrawGraphicObjects ) this . handlers . trigger ( "showDrawingObjects" ) ;
this . handlers . trigger ( "unlockDefName" ) ; this . handlers . trigger ( "updateAllLayoutsLock" ) ; this . handlers . trigger ( "asc_onLockPrintArea" ) ; this . handlers . trigger ( "updateAllHeaderFooterLock" ) ; this . handlers . trigger ( "onUpdateAllPrintScaleLock" ) ; this . handlers . trigger ( "updateAllSheetViewLock" ) ; this . handlers . trigger ( "unlockCF" ) ; if ( 0 === this . m _nUseType ) this . m _nUseType = 1 } else AscCommon . History . Reset _SavedIndex ( IsUserSave ) } ; CCollaborativeEditing . prototype . getRecalcIndexSave = function ( oRecalcIndex ) { var bHasIndex = false ;
var result = { } ; var element = null ; for ( var sheetId in oRecalcIndex ) { if ( ! oRecalcIndex . hasOwnProperty ( sheetId ) ) continue ; result [ sheetId ] = { "_arrElements" : [ ] } ; for ( var i = 0 , length = oRecalcIndex [ sheetId ] . _arrElements . length ; i < length ; ++ i ) { bHasIndex = true ; element = oRecalcIndex [ sheetId ] . _arrElements [ i ] ; result [ sheetId ] [ "_arrElements" ] . push ( { "_recalcType" : element . _recalcType , "_position" : element . _position , "_count" : element . _count , "m_bIsSaveIndex" : element . m _bIsSaveIndex } ) } } return bHasIndex ? result : null } ; CCollaborativeEditing . prototype . S4 =
function ( ) { return ( ( 1 + Math . random ( ) ) * 65536 | 0 ) . toString ( 16 ) . substring ( 1 ) } ; CCollaborativeEditing . prototype . createGUID = function ( ) { return this . S4 ( ) + this . S4 ( ) + "-" + this . S4 ( ) + "-" + this . S4 ( ) + "-" + this . S4 ( ) + "-" + this . S4 ( ) + this . S4 ( ) + this . S4 ( ) } ; CCollaborativeEditing . prototype . getLockInfo = function ( typeElem , subType , sheetId , info ) { var oLockInfo = new AscCommonExcel . asc _CLockInfo ; oLockInfo [ "sheetId" ] = sheetId ; oLockInfo [ "type" ] = typeElem ; oLockInfo [ "subType" ] = subType ; oLockInfo [ "guid" ] = this . createGUID ( ) ; oLockInfo [ "rangeOrObjectId" ] =
info ; return oLockInfo } ; CCollaborativeEditing . prototype . getLockByElem = function ( element , type ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === type ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; for ( var i = 0 ; i < arrayElements . length ; ++ i ) if ( element [ "guid" ] === arrayElements [ i ] . Element [ "guid" ] ) return arrayElements [ i ] ; return null } ; CCollaborativeEditing . prototype . getLockIntersection = function ( element , type , bCheckOnlyLockAll ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === type ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ;
var oUnlockElement = null , rangeTmp1 , rangeTmp2 ; for ( var i = 0 ; i < arrayElements . length ; ++ i ) { oUnlockElement = arrayElements [ i ] . Element ; if ( c _oAscLockTypeElem . Sheet === element [ "type" ] && element [ "type" ] === oUnlockElement [ "type" ] ) if ( c _oAscLockTypes . kLockTypeMine !== type && false === bCheckOnlyLockAll || element [ "sheetId" ] === oUnlockElement [ "sheetId" ] ) return arrayElements [ i ] ; if ( element [ "sheetId" ] !== oUnlockElement [ "sheetId" ] ) continue ; if ( null !== element [ "subType" ] && null !== oUnlockElement [ "subType" ] ) return arrayElements [ i ] ; if ( true ===
bCheckOnlyLockAll || c _oAscLockTypeElemSubType . ChangeProperties === oUnlockElement [ "subType" ] && c _oAscLockTypeElem . Sheet !== element [ "type" ] ) continue ; if ( element [ "type" ] === oUnlockElement [ "type" ] ) if ( element [ "type" ] === c _oAscLockTypeElem . Object ) { if ( element [ "rangeOrObjectId" ] === oUnlockElement [ "rangeOrObjectId" ] ) return arrayElements [ i ] } else { if ( element [ "type" ] === c _oAscLockTypeElem . Range ) { if ( c _oAscLockTypes . kLockTypeMine === type || c _oAscLockTypeElemSubType . InsertRows === oUnlockElement [ "subType" ] || c _oAscLockTypeElemSubType . InsertColumns ===
oUnlockElement [ "subType" ] ) continue ; rangeTmp1 = oUnlockElement [ "rangeOrObjectId" ] ; rangeTmp2 = element [ "rangeOrObjectId" ] ; if ( rangeTmp2 [ "c1" ] > rangeTmp1 [ "c2" ] || rangeTmp2 [ "c2" ] < rangeTmp1 [ "c1" ] || rangeTmp2 [ "r1" ] > rangeTmp1 [ "r2" ] || rangeTmp2 [ "r2" ] < rangeTmp1 [ "r1" ] ) continue ; return arrayElements [ i ] } } else if ( oUnlockElement [ "type" ] === c _oAscLockTypeElem . Sheet || element [ "type" ] === c _oAscLockTypeElem . Sheet && c _oAscLockTypes . kLockTypeMine !== type ) return arrayElements [ i ] } return false } ; CCollaborativeEditing . prototype . getLockElem =
function ( typeElem , type , sheetId ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === type ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null , oRangeOrObjectId = null ; var result = [ ] ; var c1 , c2 , r1 , r2 ; if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexColumns [ sheetId ] = new CRecalcIndex ; if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexRows [ sheetId ] = new CRecalcIndex ; for ( var i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( element [ "sheetId" ] !==
sheetId || element [ "type" ] !== typeElem ) continue ; if ( c _oAscLockTypes . kLockTypeMine === type && c _oAscLockTypeElem . Range === typeElem && ( c _oAscLockTypeElemSubType . DeleteColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteRows === element [ "subType" ] ) ) continue ; if ( c _oAscLockTypeElem . Range === typeElem && ( c _oAscLockTypeElemSubType . InsertColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . InsertRows === element [ "subType" ] ) ) continue ; if ( c _oAscLockTypeElemSubType . ChangeProperties === element [ "subType" ] ) continue ;
oRangeOrObjectId = element [ "rangeOrObjectId" ] ; if ( c _oAscLockTypeElem . Range === typeElem ) { if ( c _oAscLockTypes . kLockTypeMine !== type && c _oAscLockTypeElem . Range === typeElem && ( c _oAscLockTypeElemSubType . DeleteColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteRows === element [ "subType" ] ) ) { c1 = oRangeOrObjectId [ "c1" ] ; c2 = oRangeOrObjectId [ "c2" ] ; r1 = oRangeOrObjectId [ "r1" ] ; r2 = oRangeOrObjectId [ "r2" ] } else { c1 = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c1" ] , type ) ; c2 = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c2" ] ,
type ) ; r1 = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r1" ] , type ) ; r2 = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r2" ] , type ) } if ( null === c1 || null === c2 || null === r1 || null === r2 ) continue ; oRangeOrObjectId = new Asc . Range ( c1 , r1 , c2 , r2 ) } result . push ( oRangeOrObjectId ) } return result } ; CCollaborativeEditing . prototype . getLockCellsMe = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Range , c _oAscLockTypes . kLockTypeMine , sheetId ) } ; CCollaborativeEditing . prototype . getLockCellsOther =
function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Range , c _oAscLockTypes . kLockTypeOther , sheetId ) } ; CCollaborativeEditing . prototype . getLockObjectsMe = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Object , c _oAscLockTypes . kLockTypeMine , sheetId ) } ; CCollaborativeEditing . prototype . getLockObjectsOther = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Object , c _oAscLockTypes . kLockTypeOther , sheetId ) } ; CCollaborativeEditing . prototype . isLockAllOther = function ( sheetId ) { var arrayElements =
this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null ; var oLockedObjectType = Asc . c _oAscMouseMoveLockedObjectType . None ; for ( var i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( element [ "sheetId" ] === sheetId ) if ( element [ "type" ] === c _oAscLockTypeElem . Sheet ) { oLockedObjectType = Asc . c _oAscMouseMoveLockedObjectType . Sheet ; break } else if ( element [ "type" ] === c _oAscLockTypeElem . Range && null !== element [ "subType" ] ) oLockedObjectType = Asc . c _oAscMouseMoveLockedObjectType . TableProperties } return oLockedObjectType } ;
CCollaborativeEditing . prototype . _recalcLockArray = function ( typeLock , oRecalcIndexColumns , oRecalcIndexRows ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === typeLock ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null , oRangeOrObjectId = null ; var i ; var sheetId = - 1 ; for ( i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( c _oAscLockTypeElem . Range !== element [ "type" ] || c _oAscLockTypeElemSubType . InsertColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . InsertRows === element [ "subType" ] ||
c _oAscLockTypeElemSubType . DeleteColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteRows === element [ "subType" ] ) continue ; sheetId = element [ "sheetId" ] ; oRangeOrObjectId = element [ "rangeOrObjectId" ] ; if ( oRecalcIndexColumns && oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "c1" ] = oRecalcIndexColumns [ sheetId ] . getLockMe ( oRangeOrObjectId [ "c1" ] ) ; oRangeOrObjectId [ "c2" ] = oRecalcIndexColumns [ sheetId ] . getLockMe ( oRangeOrObjectId [ "c2" ] ) } if ( oRecalcIndexRows && oRecalcIndexRows . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "r1" ] =
oRecalcIndexRows [ sheetId ] . getLockMe ( oRangeOrObjectId [ "r1" ] ) ; oRangeOrObjectId [ "r2" ] = oRecalcIndexRows [ sheetId ] . getLockMe ( oRangeOrObjectId [ "r2" ] ) } } } ; CCollaborativeEditing . prototype . _recalcLockArrayOthers = function ( ) { var typeLock = c _oAscLockTypes . kLockTypeOther ; var arrayElements = c _oAscLockTypes . kLockTypeMine === typeLock ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null , oRangeOrObjectId = null ; var i ; var sheetId = - 1 ; for ( i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ;
if ( c _oAscLockTypeElem . Range !== element [ "type" ] || c _oAscLockTypeElemSubType . InsertColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . InsertRows === element [ "subType" ] ) continue ; sheetId = element [ "sheetId" ] ; oRangeOrObjectId = element [ "rangeOrObjectId" ] ; if ( this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "c1" ] = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c1" ] ) ; oRangeOrObjectId [ "c2" ] = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c2" ] ) } if ( this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "r1" ] =
this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r1" ] ) ; oRangeOrObjectId [ "r2" ] = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r2" ] ) } } } ; CCollaborativeEditing . prototype . addRecalcIndex = function ( type , oRecalcIndex ) { if ( null == oRecalcIndex ) return null ; var nIndex = 0 ; var nRecalcType = c _oAscRecalcIndexTypes . RecalcIndexAdd ; var oRecalcIndexElement = null ; var oRecalcIndexResult = { } ; var oRecalcIndexTmp = "0" === type ? this . m _oRecalcIndexColumns : this . m _oRecalcIndexRows ; for ( var sheetId in oRecalcIndex ) if ( oRecalcIndex . hasOwnProperty ( sheetId ) ) { if ( ! oRecalcIndexTmp . hasOwnProperty ( sheetId ) ) oRecalcIndexTmp [ sheetId ] =
new CRecalcIndex ; if ( ! oRecalcIndexResult . hasOwnProperty ( sheetId ) ) oRecalcIndexResult [ sheetId ] = new CRecalcIndex ; for ( ; nIndex < oRecalcIndex [ sheetId ] [ "_arrElements" ] . length ; ++ nIndex ) { oRecalcIndexElement = oRecalcIndex [ sheetId ] [ "_arrElements" ] [ nIndex ] ; if ( true === oRecalcIndexElement [ "m_bIsSaveIndex" ] ) continue ; nRecalcType = c _oAscRecalcIndexTypes . RecalcIndexAdd === oRecalcIndexElement [ "_recalcType" ] ? c _oAscRecalcIndexTypes . RecalcIndexRemove : c _oAscRecalcIndexTypes . RecalcIndexAdd ; oRecalcIndexTmp [ sheetId ] . add ( nRecalcType ,
oRecalcIndexElement [ "_position" ] , oRecalcIndexElement [ "_count" ] , true ) ; oRecalcIndexResult [ sheetId ] . add ( nRecalcType , oRecalcIndexElement [ "_position" ] , oRecalcIndexElement [ "_count" ] , true ) } } return oRecalcIndexResult } ; CCollaborativeEditing . prototype . undoCols = function ( sheetId , count ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return ; this . m _oRecalcIndexColumns [ sheetId ] . remove ( count ) } ; CCollaborativeEditing . prototype . undoRows = function ( sheetId , count ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return ;
this . m _oRecalcIndexRows [ sheetId ] . remove ( count ) } ; CCollaborativeEditing . prototype . removeCols = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexColumns [ sheetId ] = new CRecalcIndex ; this . m _oRecalcIndexColumns [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexRemove , position , count , false ) } ; CCollaborativeEditing . prototype . addCols = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexColumns [ sheetId ] = new CRecalcIndex ;
this . m _oRecalcIndexColumns [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexAdd , position , count , false ) } ; CCollaborativeEditing . prototype . removeRows = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexRows [ sheetId ] = new CRecalcIndex ; this . m _oRecalcIndexRows [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexRemove , position , count , false ) } ; CCollaborativeEditing . prototype . addRows = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexRows [ sheetId ] =
new CRecalcIndex ; this . m _oRecalcIndexRows [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexAdd , position , count , false ) } ; CCollaborativeEditing . prototype . addColsRange = function ( sheetId , range ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) this . m _oInsertColumns [ sheetId ] = [ ] ; var arrInsertColumns = this . m _oInsertColumns [ sheetId ] ; var countCols = range . c2 - range . c1 + 1 ; var isAddNewRange = true ; for ( var i = 0 ; i < arrInsertColumns . length ; ++ i ) if ( arrInsertColumns [ i ] . c1 > range . c1 ) { arrInsertColumns [ i ] . c1 += countCols ; arrInsertColumns [ i ] . c2 +=
countCols } else if ( arrInsertColumns [ i ] . c1 <= range . c1 && arrInsertColumns [ i ] . c2 >= range . c1 ) { arrInsertColumns [ i ] . c2 += countCols ; isAddNewRange = false } if ( isAddNewRange ) arrInsertColumns . push ( range ) } ; CCollaborativeEditing . prototype . addRowsRange = function ( sheetId , range ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) this . m _oInsertRows [ sheetId ] = [ ] ; var arrInsertRows = this . m _oInsertRows [ sheetId ] ; var countRows = range . r2 - range . r1 + 1 ; var isAddNewRange = true ; for ( var i = 0 ; i < arrInsertRows . length ; ++ i ) if ( arrInsertRows [ i ] . r1 > range . r1 ) { arrInsertRows [ i ] . r1 +=
countRows ; arrInsertRows [ i ] . r2 += countRows } else if ( arrInsertRows [ i ] . r1 <= range . r1 && arrInsertRows [ i ] . r2 >= range . r1 ) { arrInsertRows [ i ] . r2 += countRows ; isAddNewRange = false } if ( isAddNewRange ) arrInsertRows . push ( range ) } ; CCollaborativeEditing . prototype . removeColsRange = function ( sheetId , range ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) return ; var arrInsertColumns = this . m _oInsertColumns [ sheetId ] ; var countCols = range . c2 - range . c1 + 1 ; for ( var i = 0 ; i < arrInsertColumns . length ; ++ i ) if ( arrInsertColumns [ i ] . c1 > range . c2 ) { arrInsertColumns [ i ] . c1 -=
countCols ; arrInsertColumns [ i ] . c2 -= countCols } else if ( arrInsertColumns [ i ] . c1 >= range . c1 && arrInsertColumns [ i ] . c2 <= range . c2 ) { arrInsertColumns . splice ( i , 1 ) ; i -= 1 } else if ( arrInsertColumns [ i ] . c1 >= range . c1 && arrInsertColumns [ i ] . c1 <= range . c2 && arrInsertColumns [ i ] . c2 > range . c2 ) { arrInsertColumns [ i ] . c1 = range . c2 + 1 ; arrInsertColumns [ i ] . c1 -= countCols ; arrInsertColumns [ i ] . c2 -= countCols } else if ( arrInsertColumns [ i ] . c1 < range . c1 && arrInsertColumns [ i ] . c2 >= range . c1 && arrInsertColumns [ i ] . c2 <= range . c2 ) arrInsertColumns [ i ] . c2 = range . c1 -
1 ; else if ( arrInsertColumns [ i ] . c1 < range . c1 && arrInsertColumns [ i ] . c2 > range . c2 ) arrInsertColumns [ i ] . c2 -= countCols } ; CCollaborativeEditing . prototype . removeRowsRange = function ( sheetId , range ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) return ; var arrInsertRows = this . m _oInsertRows [ sheetId ] ; var countRows = range . r2 - range . r1 + 1 ; for ( var i = 0 ; i < arrInsertRows . length ; ++ i ) if ( arrInsertRows [ i ] . r1 > range . r2 ) { arrInsertRows [ i ] . r1 -= countRows ; arrInsertRows [ i ] . r2 -= countRows } else if ( arrInsertRows [ i ] . r1 >= range . r1 && arrInsertRows [ i ] . r2 <=
range . r2 ) { arrInsertRows . splice ( i , 1 ) ; i -= 1 } else if ( arrInsertRows [ i ] . r1 >= range . r1 && arrInsertRows [ i ] . r1 <= range . r2 && arrInsertRows [ i ] . r2 > range . r2 ) { arrInsertRows [ i ] . r1 = range . r2 + 1 ; arrInsertRows [ i ] . r1 -= countRows ; arrInsertRows [ i ] . r2 -= countRows } else if ( arrInsertRows [ i ] . r1 < range . r1 && arrInsertRows [ i ] . r2 >= range . r1 && arrInsertRows [ i ] . r2 <= range . r2 ) arrInsertRows [ i ] . r2 = range . r1 - 1 ; else if ( arrInsertRows [ i ] . r1 < range . r1 && arrInsertRows [ i ] . r2 > range . r2 ) arrInsertRows [ i ] . r2 -= countRows } ; CCollaborativeEditing . prototype . isIntersectionInCols =
function ( sheetId , col ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) return false ; var arrInsertColumns = this . m _oInsertColumns [ sheetId ] ; for ( var i = 0 ; i < arrInsertColumns . length ; ++ i ) if ( arrInsertColumns [ i ] . c1 <= col && col <= arrInsertColumns [ i ] . c2 ) return true ; return false } ; CCollaborativeEditing . prototype . isIntersectionInRows = function ( sheetId , row ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) return false ; var arrInsertRows = this . m _oInsertRows [ sheetId ] ; for ( var i = 0 ; i < arrInsertRows . length ; ++ i ) if ( arrInsertRows [ i ] . r1 <=
row && row <= arrInsertRows [ i ] . r2 ) return true ; return false } ; CCollaborativeEditing . prototype . getArrayInsertColumnsBySheetId = function ( sheetId ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) return [ ] ; return this . m _oInsertColumns [ sheetId ] } ; CCollaborativeEditing . prototype . getArrayInsertRowsBySheetId = function ( sheetId ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) return [ ] ; return this . m _oInsertRows [ sheetId ] } ; CCollaborativeEditing . prototype . getLockMeColumn = function ( sheetId , col ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return col ;
return this . m _oRecalcIndexColumns [ sheetId ] . getLockMe ( col ) } ; CCollaborativeEditing . prototype . getLockMeRow = function ( sheetId , row ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return row ; return this . m _oRecalcIndexRows [ sheetId ] . getLockMe ( row ) } ; CCollaborativeEditing . prototype . getLockMeColumn2 = function ( sheetId , col ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return col ; return this . m _oRecalcIndexColumns [ sheetId ] . getLockMe2 ( col ) } ; CCollaborativeEditing . prototype . getLockMeRow2 = function ( sheetId ,
row ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return row ; return this . m _oRecalcIndexRows [ sheetId ] . getLockMe2 ( row ) } ; CCollaborativeEditing . prototype . getLockOtherColumn2 = function ( sheetId , col ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return col ; return this . m _oRecalcIndexColumns [ sheetId ] . getLockSaveOther ( col ) } ; CCollaborativeEditing . prototype . getLockOtherRow2 = function ( sheetId , row ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return row ; return this . m _oRecalcIndexRows [ sheetId ] . getLockSaveOther ( row ) } ;
CCollaborativeEditing . prototype . checkObjectsLock = function ( aObjectId , callback ) { var oApi = Asc . editor ; var bCanNotEdit = this . getGlobalLock ( ) || oApi && ! oApi . canEdit ( ) ; if ( bCanNotEdit ) { if ( callback ) callback ( false , true ) ; return false } if ( oApi ) oApi . incrementCounterLongAction ( ) ; var callbackEx = function ( result , sync ) { if ( oApi ) oApi . decrementCounterLongAction ( ) ; if ( callback ) callback ( result , sync ) } ; var bRet = true ; if ( ! aObjectId . length ) { asc _applyFunction ( callbackEx , true , true ) ; return bRet } this . onStartCheckLock ( ) ; for ( var i = 0 ; i <
aObjectId . length ; i ++ ) { var lockInfo = this . getLockInfo ( AscCommonExcel . c _oAscLockTypeElem . Object , null , "" , aObjectId [ i ] ) ; if ( false === this . getCollaborativeEditing ( ) ) { asc _applyFunction ( callbackEx , true , true ) ; callbackEx = undefined } if ( false !== this . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeMine , false ) ) continue ; else if ( false !== this . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) ) { asc _applyFunction ( callbackEx , false ) ; return false } this . addCheckLock ( lockInfo ) } this . onEndCheckLock ( callbackEx ) ;
return bRet } ; function CLock ( element ) { this . Type = c _oAscLockTypes . kLockTypeNone ; this . UserId = null ; this . Element = element ; this . init ( ) ; return this } CLock . prototype . init = function ( ) { } ; CLock . prototype . getType = function ( ) { return this . Type } ; CLock . prototype . setType = function ( newType ) { if ( newType === c _oAscLockTypes . kLockTypeNone ) this . UserId = null ; this . Type = newType } ; CLock . prototype . Lock = function ( bMine ) { if ( c _oAscLockTypes . kLockTypeNone === this . Type ) if ( true === bMine ) this . Type = c _oAscLockTypes . kLockTypeMine ; else this . Type = c _oAscLockTypes . kLockTypeOther } ;
CLock . prototype . setUserId = function ( UserId ) { this . UserId = UserId } ; function CRecalcIndexElement ( recalcType , position , bIsSaveIndex ) { if ( ! ( this instanceof CRecalcIndexElement ) ) return new CRecalcIndexElement ( recalcType , position , bIsSaveIndex ) ; this . _recalcType = recalcType ; this . _position = position ; this . _count = 1 ; this . m _bIsSaveIndex = ! ! bIsSaveIndex ; return this } CRecalcIndexElement . prototype . getLockOther = function ( position , type ) { var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd === this . _recalcType ? + 1 : - 1 ; if ( position === this . _position &&
c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && true === this . m _bIsSaveIndex ) return null ; else if ( position === this . _position && c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && c _oAscLockTypes . kLockTypeMine === type && false === this . m _bIsSaveIndex ) return null ; else if ( position < this . _position ) return position ; else return position + inc } ; CRecalcIndexElement . prototype . getLockSaveOther = function ( position , type ) { if ( this . m _bIsSaveIndex ) return position ; var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd ===
this . _recalcType ? + 1 : - 1 ; if ( position === this . _position && c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && true === this . m _bIsSaveIndex ) return null ; else if ( position === this . _position && c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && c _oAscLockTypes . kLockTypeMine === type && false === this . m _bIsSaveIndex ) return null ; else if ( position < this . _position ) return position ; else return position + inc } ; CRecalcIndexElement . prototype . getLockMe = function ( position ) { var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd ===
this . _recalcType ? - 1 : + 1 ; if ( position < this . _position ) return position ; else return position + inc } ; CRecalcIndexElement . prototype . getLockMe2 = function ( position ) { var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd === this . _recalcType ? - 1 : + 1 ; if ( true !== this . m _bIsSaveIndex || position < this . _position ) return position ; else return position + inc } ; function CRecalcIndex ( ) { if ( ! ( this instanceof CRecalcIndex ) ) return new CRecalcIndex ; this . _arrElements = [ ] ; return this } CRecalcIndex . prototype . add = function ( recalcType , position , count , bIsSaveIndex ) { for ( var i =
0 ; i < count ; ++ i ) this . _arrElements . push ( new CRecalcIndexElement ( recalcType , position , bIsSaveIndex ) ) } ; CRecalcIndex . prototype . remove = function ( count ) { for ( var i = 0 ; i < count ; ++ i ) this . _arrElements . pop ( ) } ; CRecalcIndex . prototype . clear = function ( ) { this . _arrElements . length = 0 } ; CRecalcIndex . prototype . getLockOther = function ( position , type ) { var newPosition = position ; var count = this . _arrElements . length ; if ( 0 >= count ) return newPosition ; var bIsDirect = ! this . _arrElements [ 0 ] . m _bIsSaveIndex ; var i ; if ( bIsDirect ) for ( i = 0 ; i < count ; ++ i ) { newPosition =
this . _arrElements [ i ] . getLockOther ( newPosition , type ) ; if ( null === newPosition ) break } else for ( i = count - 1 ; i >= 0 ; -- i ) { newPosition = this . _arrElements [ i ] . getLockOther ( newPosition , type ) ; if ( null === newPosition ) break } return newPosition } ; CRecalcIndex . prototype . getLockSaveOther = function ( position , type ) { var newPosition = position ; var count = this . _arrElements . length ; for ( var i = 0 ; i < count ; ++ i ) { newPosition = this . _arrElements [ i ] . getLockSaveOther ( newPosition , type ) ; if ( null === newPosition ) break } return newPosition } ; CRecalcIndex . prototype . getLockMe =
function ( position ) { var newPosition = position ; var count = this . _arrElements . length ; if ( 0 >= count ) return newPosition ; var bIsDirect = this . _arrElements [ 0 ] . m _bIsSaveIndex ; var i ; if ( bIsDirect ) for ( i = 0 ; i < count ; ++ i ) { newPosition = this . _arrElements [ i ] . getLockMe ( newPosition ) ; if ( null === newPosition ) break } else for ( i = count - 1 ; i >= 0 ; -- i ) { newPosition = this . _arrElements [ i ] . getLockMe ( newPosition ) ; if ( null === newPosition ) break } return newPosition } ; CRecalcIndex . prototype . getLockMe2 = function ( position ) { var newPosition = position ; var count =
this . _arrElements . length ; if ( 0 >= count ) return newPosition ; var bIsDirect = this . _arrElements [ 0 ] . m _bIsSaveIndex ; var i ; if ( bIsDirect ) for ( i = 0 ; i < count ; ++ i ) { newPosition = this . _arrElements [ i ] . getLockMe2 ( newPosition ) ; if ( null === newPosition ) break } else for ( i = count - 1 ; i >= 0 ; -- i ) { newPosition = this . _arrElements [ i ] . getLockMe2 ( newPosition ) ; if ( null === newPosition ) break } return newPosition } ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; window [ "AscCommonExcel" ] . CLock = CLock ; window [ "AscCommonExcel" ] . CCollaborativeEditing =
CCollaborativeEditing ; window [ "Asc" ] . CRecalcIndexElement = CRecalcIndexElement ; window [ "Asc" ] . CRecalcIndex = CRecalcIndex } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function CDocumentMacros ( ) { this . Id = "_macrosGlobalId" ; 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 ) ; Writer . WriteString2 ( "" + this . Id ) ; Writer . WriteString2 ( this . Data ) } ; CDocumentMacros . prototype . Read _FromBinary2 = function ( Reader ) { this . Id = Reader . GetString2 ( ) ; this . Data = Reader . GetString2 ( ) } ; CDocumentMacros . prototype . Refresh _RecalcData = function ( ) { } ; CDocumentMacros . prototype . runAuto = function ( ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) { if ( true !==
obj [ "macrosArray" ] [ i ] [ "autostart" ] ) continue ; var script = "(function(){ var Api = window.g_asc_plugins.api;\n" + obj [ "macrosArray" ] [ i ] [ "value" ] + "\n})();" ; eval ( script ) } } catch ( err ) { } } ; CDocumentMacros . prototype . run = function ( sGuid ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) if ( sGuid === obj [ "macrosArray" ] [ i ] [ "guid" ] ) { var script = "(function(){ var Api = window.g_asc_plugins.api;\n" + obj [ "macrosArray" ] [ i ] [ "value" ] + "\n})();" ; eval ( script ) ; break } } catch ( err ) { } } ;
CDocumentMacros . prototype . getGuidByName = function ( sName ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) if ( sName === obj [ "macrosArray" ] [ i ] [ "name" ] ) return obj [ "macrosArray" ] [ i ] [ "guid" ] } catch ( err ) { } return "" } ; CDocumentMacros . prototype . getNameByGuid = function ( sGuid ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) if ( sGuid === obj [ "macrosArray" ] [ i ] [ "guid" ] ) return obj [ "macrosArray" ] [ i ] [ "name" ] } catch ( err ) { } return "" } ;
CDocumentMacros . prototype . getAllNames = function ( ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return [ ] ; var oNamesMap = { } ; var aNames = [ ] ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) { var sName = obj [ "macrosArray" ] [ i ] [ "name" ] ; if ( ! oNamesMap [ sName ] ) { oNamesMap [ sName ] = true ; aNames . push ( sName ) } } return aNames } catch ( err ) { } return [ ] } ; CDocumentMacros . prototype . isExistAuto = function ( ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) if ( true === obj [ "macrosArray" ] [ i ] [ "autostart" ] ) return true } catch ( err ) { } return false } ;
AscDFH . changesFactory [ AscDFH . historyitem _DocumentMacros _Data ] = CChangesDocumentMacrosData ; AscDFH . changesRelationMap [ AscDFH . historyitem _DocumentMacros _Data ] = [ AscDFH . historyitem _DocumentMacros _Data ] ; 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 ) ; "use strict" ;
( function ( window , undefined ) { var prot ; var c _oEditorId = AscCommon . c _oEditorId ; var c _oCloseCode = AscCommon . c _oCloseCode ; var DownloadType = AscCommon . DownloadType ; var c _oAscError = Asc . c _oAscError ; var c _oAscAsyncAction = Asc . c _oAscAsyncAction ; var c _oAscAsyncActionType = Asc . c _oAscAsyncActionType ; function baseEditorsApi ( config , editorId ) { this . editorId = editorId ; this . isLoadFullApi = false ; this . isLoadFonts = 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 ; 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 ; this . advancedOptionsAction = AscCommon . c _oAscAdvancedOptionsAction . None ; this . OpenDocumentProgress = new AscCommon . COpenProgress ; var sProtocol = window . location . protocol ; this . documentOrigin = ( sProtocol && "" !== sProtocol ? sProtocol + "//" : "" ) + window . location . host ; this . documentPathname = window . location . pathname ; this . ServerIdWaitComplete = false ; this . IsLongActionCurrent = 0 ; this . LongActionCallbacks = [ ] ; this . LongActionCallbacksParams = [ ] ; this . autoSaveGap = 0 ; this . lastSaveTime = null ; this . autoSaveGapFast = 2E3 ; this . autoSaveGapSlow =
10 * 60 * 1E3 ; this . intervalWaitAutoSave = 1E3 ; this . canUnlockDocument = false ; this . canUnlockDocument2 = false ; this . canStartCoAuthoring = false ; this . isDocumentCanSave = false ; this . translateManager = AscCommon . translateManager . init ( config [ "translate" ] ) ; this . chartPreviewManager = null ; this . textArtPreviewManager = null ; this . shapeElementId = null ; this . isChartEditor = false ; this . isOpenedChartFrame = false ; this . MathMenuLoad = false ; this . User = undefined ; this . CoAuthoringApi = new AscCommon . CDocsCoApi ; this . isCoAuthoringEnable = true ; this . arrPreOpenLocksObjects =
[ ] ; this . SpellCheckUrl = "" ; this . licenseResult = null ; this . isOnLoadLicense = false ; this . isDocumentLoadComplete = false ; this . isPreOpenLocks = true ; this . isApplyChangesOnOpenEnabled = true ; this . isProtectionSupport = true ; this . canSave = true ; this . IsUserSave = false ; this . isForceSaveOnUserSave = false ; this . forceSaveButtonTimeout = null ; this . forceSaveButtonContinue = false ; this . forceSaveTimeoutTimeout = null ; this . forceSaveForm = null ; this . disconnectOnSave = null ; this . forceSaveUndoRequest = false ; 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 . disableAutostartMacros = false ; this . macros = null ; this . openFileCryptBinary = null ; this . copyOutEnabled = true ; this . watermarkDraw = null ; this . SaveAfterMacros = false ; this . SpellCheckApi = new AscCommon . CSpellCheckApi ; this . isSpellCheckEnable =
true ; this . internalEvents = { } ; this . skinObject = config [ "skin" ] ; this . Shortcuts = new AscCommon . CShortcuts ; this . initDefaultShortcuts ( ) ; return this } baseEditorsApi . prototype . _init = function ( ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "CreateEditorApi" ] ( this ) ; var t = this ; this . HtmlElement = document . getElementById ( this . HtmlElementName ) ; if ( this . HtmlElement ) this . HtmlElement . style . touchAction = "none" ; 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 ) } ) ; AscFonts . load ( t , function ( ) { t . isLoadFonts = true ; t . onEndLoadFile ( null ) } , function ( ) { t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . LoadingScriptError ,
c _oAscError . Level . Critical ) } ) ; AscCommon . loadChartStyles ( function ( ) { } , function ( err ) { t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . LoadingScriptError , c _oAscError . Level . NoCritical ) } ) ; var oldOnError = window . onerror ; window . onerror = function ( errorMsg , url , lineNumber , column , errorObj ) { window . onerror = oldOnError ; 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 ) ; if ( t . isLoadFullApi ) if ( t . isDocumentLoadComplete ) { t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . EditingError , c _oAscError . Level . NoCritical ) ; t . asc _setViewMode ( true ) } else t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; if ( oldOnError ) return oldOnError . apply ( this , arguments ) ; else return false } ; if ( AscCommon . AscBrowser . isMacOs ) document . body . onmousewheel =
function ( e ) { if ( e . stopPropagation ) e . stopPropagation ( ) ; e . returnValue = false ; 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 _loadFontsFromServer = function ( fonts ) { if ( ! fonts ) fonts = [ "Arial" , "Symbol" , "Wingdings" , "Courier New" ,
"Times New Roman" ] ; this . FontLoader . LoadFontsFromServer ( fonts ) } ; baseEditorsApi . prototype . asc _GetFontThumbnailsPath = function ( ) { return "../Common/Images/" } ; baseEditorsApi . prototype . asc _getDocumentName = function ( ) { return this . documentTitle } ; baseEditorsApi . prototype . asc _getAppProps = function ( ) { return null } ; baseEditorsApi . prototype . asc _getCoreProps = function ( ) { var oCore = this . getInternalCoreProps ( ) ; if ( oCore ) return oCore . copy ( ) ; return null } ; baseEditorsApi . prototype . getInternalCoreProps = function ( ) { return null } ;
baseEditorsApi . prototype . asc _setCoreProps = function ( oProps ) { } ; 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 ( ) ;
var permissions = this . DocInfo . asc _getPermissions ( ) ; if ( permissions && undefined !== permissions [ "copy" ] ) this . copyOutEnabled = permissions [ "copy" ] ; 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 ( ) ) ; this . CoAuthoringApi . setDocId ( this . documentId ) ; if ( this . documentOpenOptions && this . documentOpenOptions [ "watermark" ] ) { this . watermarkDraw =
new AscCommon . CWatermarkOnDraw ( this . documentOpenOptions [ "watermark" ] , this ) ; 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 ( this . DocInfo . get _EncryptedInfo ( ) ) if ( undefined !== window [ "AscDesktopEditor" ] ) { var obj = this . DocInfo . get _EncryptedInfo ( ) ; obj [ "userId" ] = this . documentUserId ; window [ "AscDesktopEditor" ] [ "execCommand" ] ( "portal:cryptoinfo" ,
JSON . stringify ( obj ) ) } 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 _changeDocInfo = function ( oDocInfo ) { var rData = { "c" : "changedocinfo" , "id" : this . documentId ,
"username" : oDocInfo . asc _getUserName ( ) } ; var t = this ; t . fCurCallback = function ( input ) { if ( null != input && "changedocinfo" == input [ "type" ] ) if ( "ok" === input [ "status" ] ) { t . DocInfo . asc _getUserInfo ( ) . asc _putFullName ( oDocInfo . asc _getUserName ( ) ) ; t . User . setUserName ( oDocInfo . asc _getUserName ( ) ) } else t . sendEvent ( "asc_onError" , AscCommon . mapAscServerErrorToAscError ( parseInt ( input [ "data" ] ) ) , c _oAscError . Level . NoCritical ) ; else t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . NoCritical ) } ; AscCommon . sendCommand ( this ,
null , rData ) } ; baseEditorsApi . prototype . asc _isCrypto = function ( ) { if ( this . DocInfo && this . DocInfo . get _Encrypted ( ) === true ) return true ; return false } ; baseEditorsApi . prototype . asc _enableKeyEvents = function ( isEnabled , isFromInput ) { } ; 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 } ;
baseEditorsApi . prototype . sync _CanCopyCutCallback = function ( bCanCopyCut ) { this . sendEvent ( "asc_onCanCopyCut" , bCanCopyCut ) } ; baseEditorsApi . prototype . can _CopyCut = function ( ) { return true } ; baseEditorsApi . prototype . asc _LockTargetUpdate = function ( isLock ) { this . isLockTargetUpdate = isLock } ; baseEditorsApi . prototype . isPdfViewer = function ( ) { return false } ; baseEditorsApi . prototype . sendEvent = function ( ) { } ; baseEditorsApi . prototype . SendOpenProgress = function ( ) { this . sendEvent ( "asc_onOpenDocumentProgress" , this . OpenDocumentProgress ) } ;
baseEditorsApi . prototype . sync _InitEditorFonts = function ( gui _fonts ) { if ( ! this . isViewMode ) { var currentLang = this . asc _getLocale ( ) ; if ( typeof currentLang !== "string" ) currentLang = AscCommon . g _oDefaultCultureInfo && typeof AscCommon . g _oDefaultCultureInfo . Name === "string" ? AscCommon . g _oDefaultCultureInfo . Name : "en" ; AscFonts . g _fontApplication && AscFonts . g _fontApplication . CheckNamesForInterface ( currentLang ) ; this . sendEvent ( "asc_onInitEditorFonts" , gui _fonts ) } } ; baseEditorsApi . prototype . sync _StartAction = function ( type , id ) { if ( type !==
c _oAscAsyncActionType . Empty ) this . sendEvent ( "asc_onStartAction" , type , id ) ; if ( c _oAscAsyncActionType . BlockInteraction === type ) this . incrementCounterLongAction ( ) } ; baseEditorsApi . prototype . sync _EndAction = function ( type , id ) { if ( type !== c _oAscAsyncActionType . Empty ) this . sendEvent ( "asc_onEndAction" , type , 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 ; this . onUpdateRestrictions ( ) } ; baseEditorsApi . prototype . getViewMode = function ( ) { return this . isViewMode } ; baseEditorsApi . prototype . asc _addRestriction = function ( val ) { this . restrictions |= val ; this . onUpdateRestrictions ( ) } ; baseEditorsApi . prototype . asc _removeRestriction = function ( val ) { this . restrictions &= ~ val ; this . onUpdateRestrictions ( ) } ; 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 . onUpdateRestrictions = function ( ) { } ; 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 } ; 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 . isShowShapeAdjustments = function ( ) { return true } ; baseEditorsApi . prototype . isShowTableAdjustments = function ( ) { return true } ; baseEditorsApi . prototype . isShowEquationTrack = function ( ) { return true } ; baseEditorsApi . prototype . onPrint = function ( ) { this . sendEvent ( "asc_onPrint" ) } ; baseEditorsApi . prototype . asc _LoadDocument = function ( versionHistory , isRepeat ) { this . advancedOptionsAction = AscCommon . c _oAscAdvancedOptionsAction . Open ; var rData =
null ; if ( ! ( this . DocInfo && this . DocInfo . get _OfflineApp ( ) ) ) { var locale = ! window [ "NATIVE_EDITOR_ENJINE" ] && this . asc _getLocale ( ) || undefined ; if ( typeof locale === "string" ) if ( Asc . g _oLcidNameToIdMap ) locale = Asc . g _oLcidNameToIdMap [ locale ] ; else locale = undefined ; rData = { "c" : "open" , "id" : this . documentId , "userid" : this . documentUserId , "format" : this . documentFormat , "url" : this . documentUrl , "title" : this . documentTitle , "lcid" : locale , "nobase64" : true } ; if ( versionHistory ) { rData [ "serverVersion" ] = versionHistory . serverVersion ; rData [ "closeonerror" ] =
versionHistory . isRequested ; rData [ "tokenHistory" ] = 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 ) ) { var t = this ; window [ "AscDesktopEditor" ] [ "OpenFileCrypt" ] ( this . DocInfo . get _Title ( ) ,
this . DocInfo . get _Url ( ) , function ( ) { t . openFileCryptCallback . apply ( t , arguments ) } ) } } ; baseEditorsApi . prototype . _openChartOrLocalDocument = function ( ) { this . _openEmptyDocument ( ) } ; baseEditorsApi . prototype . _openEmptyDocument = function ( ) { var file = new AscCommon . OpenFileResult ; file . data = AscCommon . getEmpty ( ) ; file . bSerFormat = AscCommon . checkStreamSignature ( file . data , AscCommon . c _oSerFormat . Signature ) ; this . onEndLoadFile ( file ) } ; baseEditorsApi . prototype . _openDocumentEndCallback = function ( ) { } ; baseEditorsApi . prototype . _openVersionHistoryEndCallback =
function ( ) { this . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . Open ) } ; baseEditorsApi . prototype . _openOnClient = function ( ) { } ; baseEditorsApi . prototype . _onOpenCommand = function ( data ) { var t = this ; AscCommon . openFileCommand ( data , this . documentUrlChanges , AscCommon . c _oSerFormat . Signature , function ( error , result ) { if ( error || ! result . bSerFormat && ! Asc . c _rUneditableTypes . test ( t . DocInfo && t . DocInfo . get _Format ( ) ) ) { var err = error ? c _oAscError . ID . Unknown : c _oAscError . ID . ConvertationOpenError ; t . sendEvent ( "asc_onError" ,
err , c _oAscError . Level . Critical ) ; return } t . onEndLoadFile ( result ) } ) ; this . _openOnClient ( ) } ; baseEditorsApi . prototype . openFileCryptCallback = function ( stream ) { if ( ! this . isLoadFullApi ) { this . openFileCryptBinary = stream ; return } this . openFileCryptBinary = null ; if ( stream == null ) { this . sendEvent ( "asc_onError" , c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; return } var file = new AscCommon . OpenFileResult ; file . bSerFormat = AscCommon . checkStreamSignature ( stream , AscCommon . c _oSerFormat . Signature ) ; file . data = stream ;
this . openDocument ( file ) ; this . sendEvent ( "asc_onDocumentPassword" , "" !== this . currentPassword ) } ; baseEditorsApi . prototype . _onNeedParams = function ( data , opt _isPassword ) { } ; baseEditorsApi . prototype . asyncServerIdEndLoaded = function ( ) { this . ServerIdWaitComplete = true ; this . _openDocumentEndCallback ( ) } ; 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 ( window . g _asc _plugins ) window . g _asc _plugins . onPluginEvent ( "onDocumentContentReady" ) ; if ( c _oEditorId . Spreadsheet === this . editorId ) this . onUpdateDocumentModified ( this . asc _isDocumentModified ( ) ) ;
if ( this . DocInfo ) this [ "pluginMethod_SetProperties" ] ( this . DocInfo . asc _getOptions ( ) ) ; if ( this . macros && ! this . disableAutostartMacros && this . macros . isExistAuto ( ) ) this . sendEvent ( "asc_onRunAutostartMacroses" ) ; if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "onDocumentContentReady" ] ) window [ "AscDesktopEditor" ] [ "onDocumentContentReady" ] ( ) } ; 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 . saveFromChanges = function ( data , timeout , callback ) { var t = this ; var fAfterSaveChanges = function ( ) { t . forceSaveForm = null ; if ( ! t . CoAuthoringApi . callPRC ( data , timeout , callback ) ) callback ( false , undefined ) } ; if ( this . asc _Save ( true ) ) this . forceSaveForm = fAfterSaveChanges ; else fAfterSaveChanges ( ) } ; 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 ( ) ) { this . CoAuthoringApi . onUnSaveLock = function ( ) { if ( t . isForceSaveOnUserSave && t . IsUserSave ) t . forceSaveButtonContinue = t . forceSave ( ) ;
if ( t . forceSaveForm ) t . forceSaveForm ( ) ; 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 ) } ) } , 1E3 ) } } } ; 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 ; this . asc _Save ( true , true ) } else this . _autoSaveInner ( ) } ; baseEditorsApi . prototype . _autoSaveInner = function ( ) { } ; baseEditorsApi . prototype . _prepareSave = function ( isIdle ) { return true } ; baseEditorsApi . prototype . _unlockDocument = function ( isWaitAuth ) { if ( isWaitAuth && this . isDocumentLoadComplete && ! this . canSave ) { var errorMsg = "Error: connection state changed waitAuth" + ";this.canSave:" + this . canSave ; this . CoAuthoringApi . sendChangesError ( errorMsg ) } if ( this . isDocumentLoadComplete ) { this . canUnlockDocument =
true ; this . canStartCoAuthoring = true ; if ( this . canSave ) { this . CoAuthoringApi . unLockDocument ( false , true , AscCommon . History . GetDeleteIndex ( ) ) ; this . startCollaborationEditing ( ) ; AscCommon . History . RemovePointsByDeleteIndex ( ) ; this . _onUpdateDocumentCanSave ( ) ; this . _onUpdateDocumentCanUndoRedo ( ) ; this . canStartCoAuthoring = false ; this . canUnlockDocument = false } else ; } else { this . startCollaborationEditing ( ) ; this . CoAuthoringApi . unLockDocument ( false , true ) } } ; baseEditorsApi . prototype . asc _setAutoSaveGap = function ( autoSaveGap ) { if ( typeof autoSaveGap ===
"number" ) this . autoSaveGap = autoSaveGap * 1E3 } ; baseEditorsApi . prototype . asc _coAuthoringChatSendMessage = function ( message ) { this . CoAuthoringApi . sendMessage ( message ) } ; baseEditorsApi . prototype . asc _coAuthoringChatGetMessages = function ( ) { this . CoAuthoringApi . getMessages ( ) } ; baseEditorsApi . prototype . asc _coAuthoringGetUsers = function ( ) { this . CoAuthoringApi . getUsers ( ) } ; baseEditorsApi . prototype . asc _getEditorPermissions = function ( ) { this . _coAuthoringInit ( ) } ; baseEditorsApi . prototype . _onEndPermissions = function ( ) { if ( 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 . setCustomization ( this . licenseResult [ "customization" ] ) ; 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" ] ) ;
if ( undefined !== this . licenseResult [ "protectionSupport" ] ) this . isProtectionSupport = this . licenseResult [ "protectionSupport" ] } this . sendEvent ( "asc_onGetEditorPermissions" , oResult ) } } ; baseEditorsApi . prototype . goTo = function ( options ) { options = options || this . DocInfo && this . DocInfo . asc _getOptions ( ) ; options = options && options [ "action" ] ; if ( ! options ) return ; switch ( options [ "type" ] ) { case "bookmark" : case "internallink" : this . _goToBookmark ( options [ "data" ] ) ; break ; case "comment" : this . _goToComment ( options [ "data" ] ) ; break } } ; baseEditorsApi . prototype . _goToComment =
function ( data ) { } ; baseEditorsApi . prototype . _goToBookmark = function ( data ) { } ; baseEditorsApi . prototype . _coAuthoringInit = function ( ) { var t = this ; if ( null == this . User || null == this . User . asc _getId ( ) ) { this . User = new AscCommon . asc _CUser ; this . User . setId ( "Unknown" ) ; this . User . setUserName ( "Unknown" ) } 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 . isOnLoadLicense ) t . _onEndPermissions ( ) ; else if ( t . CoAuthoringApi . get _isAuth ( ) ) t . CoAuthoringApi . auth ( t . getViewMode ( ) , undefined , t . isIdle ( ) ) ; else t . asc _LoadDocument ( undefined , true ) } ; 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 ) ) { var error = AscCommon . getDisconnectErrorCode ( t . isDocumentLoadComplete , code ) ; t . setViewModeDisconnect ( AscCommon . getEnableDownloadByErrorCode ( error ) ) ;
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 ( data ) { t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . Open ) ; if ( t . VersionHistory && t . VersionHistory . isRequested ) { var error = AscCommon . getDisconnectErrorCode ( t . isDocumentLoadComplete , data [ "code" ] ) ; var level = t . isDocumentLoadComplete ? Asc . c _oAscError . Level . NoCritical : Asc . c _oAscError . Level . Critical ;
t . sendEvent ( "asc_onError" , error , level ) } else { t . VersionHistory = null ; t . sendEvent ( "asc_onExpiredToken" ) } } ; this . CoAuthoringApi . onHasForgotten = function ( ) { 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" ) } ; this . CoAuthoringApi . onDisconnect = function ( e , opt _closeCode ) { if ( AscCommon . ConnectionState . None ===
t . CoAuthoringApi . get _state ( ) ) t . asyncServerIdEndLoaded ( ) ; if ( null != opt _closeCode ) { var error = AscCommon . getDisconnectErrorCode ( t . isDocumentLoadComplete , opt _closeCode ) ; var level = t . isDocumentLoadComplete ? Asc . c _oAscError . Level . NoCritical : Asc . c _oAscError . Level . Critical ; t . setViewModeDisconnect ( AscCommon . getEnableDownloadByErrorCode ( error ) ) ; t . sendEvent ( "asc_onError" , 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 , isWaitAuth ) { if ( t . isViewMode ) return ; if ( isStartEvent ) t . startCollaborationEditing ( ) ; else t . _unlockDocument ( isWaitAuth ) } ; 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 ; for ( var i = 0 ; i < this . arrPreOpenLocksObjects . length ; ++ i ) this . arrPreOpenLocksObjects [ i ] ( ) ; this . arrPreOpenLocksObjects = [ ] } ; baseEditorsApi . prototype . asc _coAuthoringDisconnect = function ( ) { this . CoAuthoringApi . disconnect ( ) ; this . isCoAuthoringEnable = false ; this . asc _setViewMode ( true ) } ; baseEditorsApi . prototype . asc _stopSaving = function ( ) { this . incrementCounterLongAction ( ) } ; baseEditorsApi . prototype . asc _continueSaving = function ( ) { this . decrementCounterLongAction ( ) } ; baseEditorsApi . prototype . asc _SpellCheckDisconnect =
function ( ) { if ( ! this . SpellCheckApi ) return ; this . SpellCheckApi . disconnect ( ) ; this . isSpellCheckEnable = false ; this . _spellCheckDisconnect ( ) } ; baseEditorsApi . prototype . _spellCheckRestart = function ( word ) { } ; baseEditorsApi . prototype . _spellCheckDisconnect = function ( ) { } ; baseEditorsApi . prototype . _coSpellCheckInit = function ( ) { var t = this ; if ( ! this . SpellCheckApi ) return ; if ( window [ "AscDesktopEditor" ] ) { window [ "asc_nativeOnSpellCheck" ] = function ( response ) { var _editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ;
if ( _editor . SpellCheckApi ) { if ( "clear" === response ) { _editor . SpellCheckApi . isRestart = false ; return } if ( _editor . SpellCheckApi . isRestart === true ) return ; _editor . SpellCheckApi . onSpellCheck ( response ) } } ; this . SpellCheckApi . spellCheck = function ( spellData ) { window [ "AscDesktopEditor" ] [ "SpellCheck" ] ( JSON . stringify ( spellData ) ) } ; this . SpellCheckApi . disconnect = function ( ) { } ; this . SpellCheckApi . restart = function ( ) { this . isRestart = true ; window [ "AscDesktopEditor" ] [ "SpellCheck" ] ( "clear" ) } ; 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" , "2067" ] ) } else { if ( ! this . SpellCheckUrl && ! window [ "NATIVE_EDITOR_ENJINE" ] ) { this . SpellCheckApi = { } ; this . SpellCheckApi . log =
false ; this . SpellCheckApi . worker = new CSpellchecker ( { api : this , enginePath : "../../../../sdkjs/common/spell/spell" , dictionariesPath : "./../../../../dictionaries" } ) ; this . SpellCheckApi . checkDictionary = function ( lang ) { if ( this . log ) console . log ( "checkDictionary: " + lang + ": " + this . worker . checkDictionary ( lang ) ) ; return this . worker . checkDictionary ( lang ) } ; this . SpellCheckApi . spellCheck = function ( spellData ) { return ; if ( this . log ) { console . log ( "spellCheck:" ) ; console . log ( spellData ) } this . worker . command ( spellData ) } ; this . SpellCheckApi . worker . oncommand =
function ( spellData ) { if ( t . SpellCheckApi . log ) { console . log ( "onSpellCheck:" ) ; console . log ( spellData ) } t . SpellCheck _CallBack ( spellData ) } ; this . SpellCheckApi . disconnect = function ( ) { } ; this . SpellCheckApi . restart = function ( ) { this . worker . restart ( ) } ; this . sendEvent ( "asc_onSpellCheckInit" , this . SpellCheckApi . worker . getLanguages ( ) ) ; return } 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 ) } ; baseEditorsApi . prototype . asc _spellCheckAddToDictionary = function ( SpellCheckProperty ) { var word = typeof SpellCheckProperty === "string" ? SpellCheckProperty : SpellCheckProperty . Word ; if ( window [ "AscDesktopEditor" ] ) { window [ "AscDesktopEditor" ] [ "SpellCheck" ] ( '{"type":"add","usrWords":["' + word + '"]}' ) ; this . _spellCheckRestart ( word ) } } ; baseEditorsApi . prototype . asc _spellCheckClearDictionary = function ( ) { } ; baseEditorsApi . prototype . asc _restartCheckSpelling =
function ( ) { } ; baseEditorsApi . prototype . _waitPrint = function ( actionType , options ) { return false } ; baseEditorsApi . prototype . _printDesktop = function ( ) { } ; baseEditorsApi . prototype . endInsertDocumentUrls = function ( ) { } ; baseEditorsApi . prototype . _downloadAs = function ( ) { } ; baseEditorsApi . prototype . downloadAs = function ( actionType , options ) { var isCloudCrypto = ! ! ( window [ "AscDesktopEditor" ] && 0 < window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) ; if ( isCloudCrypto ) window . isCloudCryptoDownloadAs = true ; if ( this . _waitPrint ( actionType , options ) ) return ;
if ( actionType ) this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , actionType ) ; var downloadType ; if ( options . isDownloadEvent ) downloadType = options . oDocumentMailMerge ? DownloadType . MailMerge : actionType === c _oAscAsyncAction . Print ? DownloadType . Print : DownloadType . Download ; else downloadType = DownloadType . None ; var isNoBase64 = typeof ArrayBuffer !== "undefined" && ! isCloudCrypto ; var dataContainer = { data : null , part : null , index : 0 , count : 0 } ; var oAdditionalData = { } ; oAdditionalData [ "c" ] = "save" ; oAdditionalData [ "id" ] =
this . documentId ; oAdditionalData [ "userid" ] = this . documentUserId ; oAdditionalData [ "tokenSession" ] = this . CoAuthoringApi . get _jwt ( ) ; oAdditionalData [ "outputformat" ] = options . fileType ; oAdditionalData [ "title" ] = AscCommon . changeFileExtention ( this . documentTitle , AscCommon . getExtentionByFormat ( options . fileType ) , Asc . c _nMaxDownloadTitleLen ) ; oAdditionalData [ "nobase64" ] = isNoBase64 ; if ( DownloadType . Print === downloadType ) { oAdditionalData [ "withoutPassword" ] = true ; oAdditionalData [ "inline" ] = 1 } if ( this . _downloadAs ( actionType , options ,
oAdditionalData , dataContainer ) ) return ; var t = this ; this . fCurCallback = null ; if ( ! options . callback ) this . fCurCallback = function ( input , status ) { var error = 403 === status ? c _oAscError . ID . AccessDeny : c _oAscError . ID . Unknown ; if ( null != input && oAdditionalData [ "c" ] === input [ "type" ] ) if ( "ok" === input [ "status" ] ) { var url = input [ "data" ] ; if ( url ) { error = c _oAscError . ID . No ; t . processSavedFile ( url , downloadType ) } } else error = AscCommon . mapAscServerErrorToAscError ( parseInt ( input [ "data" ] ) , options && options . isGetTextFromUrl ? AscCommon . c _oAscAdvancedOptionsAction . Open :
AscCommon . c _oAscAdvancedOptionsAction . Save ) ; if ( c _oAscError . ID . No !== error ) { t . endInsertDocumentUrls ( ) ; t . sendEvent ( "asc_onError" , options . errorDirect || error , c _oAscError . Level . NoCritical ) } if ( actionType ) t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , actionType ) } ; if ( window . parent . APP . printPdf && ( DownloadType . Print === downloadType || ! downloadType ) ) { var _cb = options . callback || this . fCurCallback ; window . parent . APP . printPdf ( dataContainer , function ( obj ) { if ( ! obj ) { t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction ,
actionType ) ; return } _cb ( obj ) } ) ; return } AscCommon . saveWithParts ( function ( fCallback1 , oAdditionalData1 , dataContainer1 ) { AscCommon . sendCommand ( t , fCallback1 , oAdditionalData1 , dataContainer1 ) } , this . fCurCallback , options . callback , oAdditionalData , dataContainer ) } ; 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 this . textArtPreviewManager . getWordArtPreviews ( ) } ;
baseEditorsApi . prototype . _addImageUrl = function ( ) { } ; baseEditorsApi . prototype . asc _addImageCallback = function ( res ) { } ; baseEditorsApi . prototype . asc _addImage = function ( obj ) { var t = this ; window . parent . APP . AddImage ( function ( res ) { console . log ( "AddImageCallback" ) ; t . asc _addImageCallback ( res ) ; t . _addImageUrl ( [ res . url ] , obj ) } , function ( ) { t . sendEvent ( "asc_onError" , error , c _oAscError . Level . NoCritical ) } ) ; return ; var t = this ; if ( this . WordControl ) this . WordControl . m _bIsMouseLock = false ; AscCommon . ShowImageFileDialog ( this . documentId ,
this . documentUserId , this . CoAuthoringApi . get _jwt ( ) , function ( error , files ) { t . _uploadCallback ( error , files , obj ) } , 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 , obj ) { 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 , obj ) ; t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) } ) } } ; 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 && data [ 0 ] . url !== "error" ) 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 ;
var oThis = this ; var sImgSrc = oPluginData [ "imgSrc" ] ; var nWidthPix = oPluginData [ "widthPix" ] ; var nHeightPix = oPluginData [ "heightPix" ] ; var fWidth = oPluginData [ "width" ] ; var fHeight = oPluginData [ "height" ] ; var sData = oPluginData [ "data" ] ; var sGuid = oPluginData [ "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 ; var oThis = this ; var bResize = oPluginData [ "resize" ] ; var sImgSrc = oPluginData [ "imgSrc" ] ; var oOleObject = AscCommon . g _oTableId . Get _ById ( oPluginData [ "objectId" ] ) ; var nWidthPix = oPluginData [ "widthPix" ] ; var nHeightPix = oPluginData [ "heightPix" ] ; var sData = oPluginData [ "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 ( ) { } ; baseEditorsApi . prototype . asc _canEditCrop = function ( ) { } ; baseEditorsApi . prototype . asc _startEditCrop = function ( ) { } ; baseEditorsApi . prototype . asc _endEditCrop = function ( ) { } ; baseEditorsApi . prototype . asc _cropFit =
function ( ) { } ; baseEditorsApi . prototype . asc _cropFill = function ( ) { } ; baseEditorsApi . prototype . asc _RemoveAllComments = function ( isMine , isCurrent ) { } ; baseEditorsApi . prototype . asc _showRevision = function ( newObj ) { if ( ! newObj . docId ) return ; if ( this . isCoAuthoringEnable ) this . asc _coAuthoringDisconnect ( ) ; if ( this . SpellCheckApi && this . SpellCheckApi . restart ) this . SpellCheckApi . restart ( ) ; var bUpdate = true ; if ( null === this . VersionHistory ) this . VersionHistory = new window [ "Asc" ] . asc _CVersionHistory ( newObj ) ; else bUpdate = this . VersionHistory . update ( newObj ) ;
if ( bUpdate ) { this . asc _CloseFile ( ) ; this . DocInfo . put _Id ( this . VersionHistory . docId ) ; this . DocInfo . put _Url ( this . VersionHistory . url ) ; this . documentUrlChanges = this . VersionHistory . urlChanges ; this . asc _setDocInfo ( this . DocInfo ) ; this . asc _LoadDocument ( this . VersionHistory ) } else if ( this . VersionHistory . currentChangeId < newObj . currentChangeId ) { this . isApplyChangesOnVersionHistory = true ; this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . Open ) ; AscCommon . CollaborativeEditing . Clear _CollaborativeMarks ( ) ;
editor . VersionHistory . applyChanges ( editor ) ; AscCommon . CollaborativeEditing . Apply _Changes ( ) } } ; baseEditorsApi . prototype . asc _undoAllChanges = function ( ) { } ; baseEditorsApi . prototype . asc _getAdvancedOptions = function ( ) { var cp = { "codepage" : AscCommon . c _oAscCodePageUtf8 , "encodings" : AscCommon . getEncodingParams ( ) } ; return new AscCommon . asc _CAdvancedOptions ( cp ) } ; baseEditorsApi . prototype . asc _Print = function ( options ) { if ( window [ "AscDesktopEditor" ] && this . _printDesktop ( options ) ) return ; if ( ! options ) options = new Asc . asc _CDownloadOptions ;
options . fileType = Asc . c _oAscFileType . PDF ; this . downloadAs ( c _oAscAsyncAction . Print , options ) } ; 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 } ; 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 ( ) } ; 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 ( file ) { } ; baseEditorsApi . prototype . openDocumentFromZip = function ( ) { } ; baseEditorsApi . prototype . onEndLoadDocInfo = function ( ) { if ( this . isLoadFullApi && this . DocInfo ) { if ( this . DocInfo . get _OfflineApp ( ) ) this . _openChartOrLocalDocument ( ) ; this . onEndLoadFile ( null ) } } ; baseEditorsApi . prototype . onEndLoadFile = function ( result ) { if ( result ) this . openResult = result ; if ( this . isLoadFullApi && this . DocInfo && this . openResult && this . isLoadFonts ) { this . openDocument ( this . openResult ) ;
this . sendEvent ( "asc_onDocumentPassword" , "" !== this . currentPassword ) ; this . openResult = null } } ; baseEditorsApi . prototype . _onEndLoadSdk = function ( ) { AscCommon . g _oTableId . init ( ) ; 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 ; this . _loadSdkImages ( ) ; if ( AscFonts . FontPickerByCharacter && this . documentTitle ) AscFonts . FontPickerByCharacter . getFontsByString ( this . documentTitle ) } ; baseEditorsApi . prototype . _loadSdkImages = function ( ) { } ; baseEditorsApi . prototype . sendStandartTextures =
function ( ) { if ( this . isSendStandartTextures ) return ; this . isSendStandartTextures = true ; var _count = AscCommon . g _oUserTexturePresets . length ; var arr = new Array ( _count ) ; var arrToDownload = [ ] ; for ( var i = 0 ; i < _count ; ++ i ) { arr [ i ] = new AscCommon . asc _CTexture ; arr [ i ] . Id = i ; arr [ i ] . Image = AscCommon . g _oUserTexturePresets [ i ] ; arrToDownload . push ( AscCommon . g _oUserTexturePresets [ i ] ) } if ( this . editorId === c _oEditorId . Word ) arrToDownload . push ( AscCommon . g _sWordPlaceholderImage ) ; this . ImageLoader . LoadImagesWithCallback ( arrToDownload , function ( ) { } ,
0 ) ; this . sendEvent ( "asc_onInitStandartTextures" , arr ) } ; baseEditorsApi . prototype . sendMathToMenu = function ( ) { if ( this . MathMenuLoad ) 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 . getCurrentColorScheme =
function ( ) { var oTheme = this . getCurrentTheme ( ) ; return oTheme && oTheme . themeElements && oTheme . themeElements . clrScheme } ; baseEditorsApi . prototype . asc _GetCurrentColorSchemeName = function ( ) { var oClrScheme = this . getCurrentColorScheme ( ) ; if ( oClrScheme && typeof oClrScheme . name === "string" ) return oClrScheme . name ; return "" } ; baseEditorsApi . prototype . asc _GetCurrentColorSchemeIndex = function ( ) { var oTheme = this . getCurrentTheme ( ) ; if ( ! oTheme ) return - 1 ; return this . getColorSchemes ( oTheme ) . index } ; baseEditorsApi . prototype . getCurrentTheme =
function ( ) { return null } ; baseEditorsApi . prototype . getColorSchemes = function ( theme ) { var result = AscCommon . g _oUserColorScheme . slice ( ) ; var asc _color _scheme , _scheme , i ; var aCustomSchemes = theme . getExtraAscColorSchemes ( ) ; _scheme = theme . themeElements && theme . themeElements . clrScheme ; var nIndex = - 1 ; if ( _scheme ) { asc _color _scheme = AscCommon . getAscColorScheme ( _scheme , theme ) ; nIndex = AscCommon . getIndexColorSchemeInArray ( result , asc _color _scheme ) ; if ( nIndex === - 1 ) aCustomSchemes . push ( asc _color _scheme ) ; aCustomSchemes . sort ( function ( a ,
b ) { if ( a . name === "" || a . name === null ) return - 1 ; if ( b . name === "" || b . name === null ) return 1 ; if ( a . name > b . name ) return 1 ; if ( a . name < b . name ) return - 1 ; return 0 } ) ; result = result . concat ( aCustomSchemes ) ; if ( nIndex === - 1 ) for ( i = 0 ; i < result . length ; ++ i ) if ( result [ i ] === asc _color _scheme ) { nIndex = i ; break } } return { schemes : result , index : nIndex } } ; baseEditorsApi . prototype . getColorSchemeByIdx = function ( nIdx ) { var scheme = AscCommon . getColorSchemeByIdx ( nIdx ) ; if ( ! scheme ) { var oSchemes = this . getColorSchemes ( this . getCurrentTheme ( ) ) ; var oAscScheme =
oSchemes . schemes [ nIdx ] ; scheme = oAscScheme && oAscScheme . scheme } return scheme } ; baseEditorsApi . prototype . sendColorThemes = function ( theme ) { this . sendEvent ( "asc_onSendThemeColorSchemes" , this . getColorSchemes ( theme ) . schemes ) } ; baseEditorsApi . prototype . showVideoControl = function ( sMediaName , extX , extY , transform ) { if ( ! window [ "AscDesktopEditor" ] || ! window [ "AscDesktopEditor" ] [ "MediaStart" ] ) return ; switch ( this . editorId ) { case c _oEditorId . Word : { break } case c _oEditorId . Presentation : { var manager = this . WordControl . DemonstrationManager ;
if ( ! manager . Mode ) { var pos = this . WordControl . m _oDrawingDocument . ConvertCoordsToCursorWR ( 0 , 0 , this . WordControl . m _oLogicDocument . CurPage , null , true ) ; pos . X += this . WordControl . X ; pos . Y += this . WordControl . Y ; if ( ! transform ) window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , pos . X , pos . Y , extX , extY , this . WordControl . m _nZoomValue / 100 ) ; else window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , pos . X , pos . Y , extX , extY , this . WordControl . m _nZoomValue / 100 , transform . sx , transform . shy , transform . shx , transform . sy , transform . tx , transform . ty ) } else { var transition =
this . WordControl . DemonstrationManager . Transition ; if ( manager . SlideNum >= 0 && manager . SlideNum < manager . SlidesCount && ( ! transition || ! transition . IsPlaying ( ) ) ) { var _w = transition . Rect . w ; var _h = transition . Rect . h ; var _w _mm = manager . HtmlPage . m _oLogicDocument . GetWidthMM ( ) ; var _h _mm = manager . HtmlPage . m _oLogicDocument . GetHeightMM ( ) ; var _x = transition . Rect . x ; if ( this . isReporterMode ) _x += this . WordControl . m _oMainParent . AbsolutePosition . L * AscCommon . g _dKoef _mm _to _pix >> 0 ; var _zoom = _w / ( _w _mm * AscCommon . g _dKoef _mm _to _pix ) ; if ( ! transform ) window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName ,
_x , transition . Rect . y , extX , extY , _zoom ) ; else window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , _x , transition . Rect . y , extX , extY , _zoom , transform . sx , transform . shy , transform . shx , transform . sy , transform . tx , transform . ty ) } } break } case c _oEditorId . Spreadsheet : { break } } } ; baseEditorsApi . prototype . hideVideoControl = function ( ) { if ( ! window [ "AscDesktopEditor" ] || ! window [ "AscDesktopEditor" ] [ "MediaEnd" ] ) return ; window [ "AscDesktopEditor" ] [ "MediaEnd" ] ( ) } ; 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 _pluginStop = function ( guid ) { if ( null != this . pluginsManager ) this . pluginsManager . close ( guid ) } ; 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 [ "asc_insertSymbol" ] = function ( familyName , code , pr ) { var arrCharCodes = [ code ] ; AscFonts . FontPickerByCharacter . checkTextLight ( arrCharCodes , true ) ; var fonts = [ new AscFonts . CFont ( AscFonts . g _fontApplication . GetFontInfoName ( familyName ) , 0 , "" , 0 , null ) ] ; AscFonts . FontPickerByCharacter . extendFonts ( fonts ) ; this . asyncMethodCallback = function ( ) { switch ( this . editorId ) { case c _oEditorId . Word : case c _oEditorId . Presentation : { if ( pr && c _oEditorId . Word ===
this . editorId ) this . WordControl . m _oLogicDocument . AddSpecialSymbol ( pr ) ; else { var textPr = new AscCommonWord . CTextPr ; textPr . SetFontFamily ( familyName ) ; this . WordControl . m _oLogicDocument . AddTextWithPr ( new AscCommon . CUnicodeStringEmulator ( arrCharCodes ) , textPr , true ) } break } case c _oEditorId . Spreadsheet : { this . AddTextWithPr ( familyName , arrCharCodes ) ; break } } } ; if ( false === AscCommon . g _font _loader . CheckFontsNeedLoading ( fonts ) ) { this . asyncMethodCallback ( ) ; this . asyncMethodCallback = undefined ; return } AscCommon . g _font _loader . LoadDocumentFonts2 ( fonts ) } ;
baseEditorsApi . prototype [ "asc_registerPlaceholderCallback" ] = function ( type , callback ) { if ( this . WordControl && this . WordControl . m _oDrawingDocument && this . WordControl . m _oDrawingDocument . placeholders ) this . WordControl . m _oDrawingDocument . placeholders . registerCallback ( type , callback ) } ; baseEditorsApi . prototype [ "asc_uncheckPlaceholders" ] = function ( ) { if ( this . WordControl && this . WordControl . m _oDrawingDocument && this . WordControl . m _oDrawingDocument . placeholders ) this . WordControl . m _oDrawingDocument . placeholders . closeAllActive ( ) } ;
baseEditorsApi . prototype . asc _nativeInitBuilder = function ( ) { AscCommon . History . TurnOff ( ) ; this . asc _setDocInfo ( new Asc . asc _CDocInfo ) } ; baseEditorsApi . prototype . asc _SetSilentMode = function ( ) { } ; baseEditorsApi . prototype . asc _canPaste = function ( ) { return false } ; baseEditorsApi . prototype . asc _Recalculate = function ( ) { } ; baseEditorsApi . prototype [ "asc_nativeCheckPdfRenderer" ] = function ( _memory1 , _memory2 ) { if ( true ) { _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 } ; 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 ( oPr , Width , Height , sImgUrl ) { } ;
baseEditorsApi . prototype . asc _getAllSignatures = function ( ) { return [ ] } ; baseEditorsApi . prototype . asc _CallSignatureDblClickEvent = function ( sGuid ) { } ; 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 ) + . 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 = [ ] ; this . ImageLoader . LoadImagesWithCallback ( [ _url ] ,
function ( ) { this . asc _addSignatureLine ( _obj , _w , _h , _url ) } , _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 ; _add _sig . showDate = _sig . showDate ; _add _sig . instructions = _sig . instructions ; _sigs _ret . push ( _add _sig ) } } return _sigs _ret } ; baseEditorsApi . prototype . asc _Sign = function ( id , guid , url1 , url2 ) { if ( window [ "AscDesktopEditor" ] && ! this . isRestrictionView ( ) ) 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 ) ) } ; 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 ! ( this . DocInfo && this . DocInfo . get _OfflineApp ( ) ) && this . isProtectionSupport } ; baseEditorsApi . prototype . asc _gotoSignature = function ( guid ) { if ( window [ "AscDesktopEditor" ] && window [ "asc_IsVisibleSign" ] && window [ "asc_IsVisibleSign" ] ( guid ) ) this . gotoSignatureInternal ( guid ) } ; baseEditorsApi . prototype . gotoSignatureInternal = function ( 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 . showDate = _sig . showDate ; _add _sig . instructions = _sig . instructions ; _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 . privateDropEvent =
function ( obj ) { if ( ! obj || ! obj . type ) return ; var e = { pageX : obj [ "x" ] , pageY : obj [ "y" ] } ; switch ( obj . type ) { case "onbeforedrop" : { this . beginInlineDropTarget ( e ) ; break } case "ondrop" : { this . endInlineDropTarget ( e ) ; if ( obj [ "html" ] ) this [ "pluginMethod_PasteHtml" ] ( obj [ "html" ] ) ; else if ( obj [ "text" ] ) this [ "pluginMethod_PasteText" ] ( obj [ "text" ] ) ; break } default : break } } ; baseEditorsApi . prototype . getTargetOnBodyCoords = function ( ) { var ret = { X : 0 , Y : 0 , W : 0 , H : 0 , TargetH : 0 } ; ret . W = Math . max ( document . documentElement . clientWidth , window . innerWidth ||
0 ) ; ret . H = Math . max ( document . documentElement . clientHeight , window . innerHeight || 0 ) ; switch ( this . editorId ) { case c _oEditorId . Word : { ret . X += this . WordControl . X ; ret . Y += this . WordControl . Y ; ret . X += this . WordControl . m _oMainView . AbsolutePosition . L * AscCommon . g _dKoef _mm _to _pix ; ret . Y += this . WordControl . m _oMainView . AbsolutePosition . T * AscCommon . g _dKoef _mm _to _pix ; ret . X += this . WordControl . m _oDrawingDocument . TargetHtmlElementLeft ; ret . Y += this . WordControl . m _oDrawingDocument . TargetHtmlElementTop ; ret . X >>= 0 ; ret . Y >>= 0 ; ret . TargetH =
this . WordControl . m _oDrawingDocument . m _dTargetSize * this . WordControl . m _nZoomValue * AscCommon . g _dKoef _mm _to _pix / 100 >> 0 ; break } case c _oEditorId . Presentation : { ret . X += this . WordControl . X ; ret . Y += this . WordControl . Y ; ret . X += this . WordControl . m _oMainParent . AbsolutePosition . L * AscCommon . g _dKoef _mm _to _pix ; if ( ! this . WordControl . m _oLogicDocument . IsFocusOnNotes ( ) ) ret . Y += this . WordControl . m _oMainView . AbsolutePosition . T * AscCommon . g _dKoef _mm _to _pix ; else ret . Y += this . WordControl . m _oNotesContainer . AbsolutePosition . T * AscCommon . g _dKoef _mm _to _pix ;
ret . X += this . WordControl . m _oDrawingDocument . TargetHtmlElementLeft ; ret . Y += this . WordControl . m _oDrawingDocument . TargetHtmlElementTop ; ret . X >>= 0 ; ret . Y >>= 0 ; ret . TargetH = this . WordControl . m _oDrawingDocument . m _dTargetSize * this . WordControl . m _nZoomValue * AscCommon . g _dKoef _mm _to _pix / 100 >> 0 ; break } case c _oEditorId . Spreadsheet : { var off , selectionType = this . asc _getCellInfo ( ) . asc _getSelectionType ( ) ; if ( this . asc _getCellEditMode ( ) ) { var cellEditor = this . wb . cellEditor ; ret . X = cellEditor . curLeft ; ret . Y = cellEditor . curTop ; ret . TargetH =
cellEditor . curHeight ; off = cellEditor . cursor } else if ( Asc . c _oAscSelectionType . RangeShapeText === selectionType || Asc . c _oAscSelectionType . RangeChartText === selectionType ) { var drDoc = this . wb . getWorksheet ( ) . objectRender . controller . drawingDocument ; ret . X = drDoc . TargetHtmlElementLeft ; ret . Y = drDoc . TargetHtmlElementTop ; ret . TargetH = drDoc . m _dTargetSize * this . asc _getZoom ( ) * AscCommon . g _dKoef _mm _to _pix ; off = this . HtmlElement } if ( off ) { off = jQuery ( off ) . offset ( ) ; if ( off ) { ret . X += off . left ; ret . Y += off . top } } ret . X >>= 0 ; ret . Y >>= 0 ; ret . TargetH >>=
0 ; break } } return ret } ; baseEditorsApi . prototype . onKeyDown = function ( e ) { } ; baseEditorsApi . prototype . onKeyPress = function ( e ) { } ; baseEditorsApi . prototype . onKeyUp = function ( e ) { } ; 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 ) } ; 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 . checkInterfaceElementBlur = function ( ) { if ( ! document . activeElement || ! document . createEvent || document . activeElement . id === "area_id" ) return ; var e = document . createEvent ( "HTMLEvents" ) ; e . initEvent ( "blur" , true , true ) ; e . eventName = "blur" ; document . activeElement . dispatchEvent ( e ) } ; baseEditorsApi . prototype . checkLastWork = function ( ) { this . lastWorkTime = ( new Date ) . getTime ( ) } ; baseEditorsApi . prototype . setViewModeDisconnect = function ( enableDownload ) { this . sendEvent ( "asc_onCoAuthoringDisconnect" ,
enableDownload ) ; this . asc _setViewMode ( true ) } ; baseEditorsApi . prototype . asc _setCurrentPassword = function ( password ) { this . currentPassword = password ; this . asc _Save ( false , undefined , true ) ; if ( ! ( this . DocInfo && this . DocInfo . get _OfflineApp ( ) ) ) { var rData = { "c" : "setpassword" , "id" : this . documentId , "password" : password } ; var t = this ; t . fCurCallback = function ( input ) { if ( null != input && "setpassword" == input [ "type" ] ) if ( "ok" === input [ "status" ] ) t . sendEvent ( "asc_onDocumentPassword" , "" !== t . currentPassword ) ; else t . sendEvent ( "asc_onError" ,
AscCommon . mapAscServerErrorToAscError ( parseInt ( input [ "data" ] ) ) , c _oAscError . Level . NoCritical ) ; else t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . NoCritical ) } ; AscCommon . sendCommand ( this , null , rData ) } } ; baseEditorsApi . prototype . asc _resetPassword = function ( ) { this . asc _setCurrentPassword ( "" ) } ; 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 _this = this ; Asc . editor . checkObjectsLock ( [ this . macros . Get _Id ( ) ] , 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 ( ) } ; baseEditorsApi . prototype . _beforeEvalCommand = function ( ) { var oApi = this ; switch ( this . editorId ) { case AscCommon . c _oEditorId . Word : { if ( this . WordControl && this . WordControl . m _oLogicDocument ) this . WordControl . m _oLogicDocument . LockPanelStyles ( ) ; break } case AscCommon . c _oEditorId . Spreadsheet : { if ( AscCommonExcel ) { oApi . tmpR1C1mode = AscCommonExcel . g _R1C1Mode ; AscCommonExcel . g _R1C1Mode = false } break } default : break } } ; baseEditorsApi . prototype . _afterEvalCommand = function ( endAction ) { var oApi =
this ; switch ( this . editorId ) { case AscCommon . c _oEditorId . Word : case AscCommon . c _oEditorId . Presentation : { var oLogicDocument = this . WordControl . m _oLogicDocument ; if ( ! oLogicDocument ) { endAction && endAction ( ) ; return } var _imagesArray = oLogicDocument . Get _AllImageUrls ( ) ; var _images = { } ; for ( var i = 0 ; i < _imagesArray . length ; i ++ ) _images [ _imagesArray [ i ] ] = _imagesArray [ i ] ; AscCommon . Check _LoadingDataBeforePrepaste ( this , oLogicDocument . Document _Get _AllFontNames ( ) , _images , function ( ) { if ( oLogicDocument . Reassign _ImageUrls ) oLogicDocument . Reassign _ImageUrls ( _images ) ;
if ( AscCommon . c _oEditorId . Word === oApi . editorId ) { oLogicDocument . UnlockPanelStyles ( true ) ; oLogicDocument . OnEndLoadScript ( ) } oApi . asc _Recalculate ( true ) ; oLogicDocument . FinalizeAction ( ) ; if ( oApi . SaveAfterMacros ) { oApi . asc _Save ( ) ; oApi . SaveAfterMacros = false } endAction && endAction ( ) } ) ; break } case AscCommon . c _oEditorId . Spreadsheet : { var oModel = this . wbModel ; var _imagesArray = oModel . getAllImageUrls ( ) ; var _images = { } ; for ( var i = 0 ; i < _imagesArray . length ; i ++ ) _images [ _imagesArray [ i ] ] = _imagesArray [ i ] ; AscCommon . Check _LoadingDataBeforePrepaste ( this ,
oModel . _generateFontMap ( ) , _images , function ( ) { oModel . reassignImageUrls ( _images ) ; oApi . asc _Recalculate ( true ) ; var wsView = oApi . wb && oApi . wb . getWorksheet ( ) ; if ( wsView && wsView . objectRender && wsView . objectRender . controller ) wsView . objectRender . controller . recalculate2 ( undefined ) ; if ( oApi . SaveAfterMacros ) { oApi . asc _Save ( ) ; oApi . SaveAfterMacros = false } endAction && endAction ( ) } ) ; if ( AscCommonExcel ) { AscCommonExcel . g _R1C1Mode = oApi . tmpR1C1mode ; oApi . tmpR1C1mode = null } break } default : break } } ; baseEditorsApi . prototype . asc _runAutostartMacroses =
function ( ) { if ( ! this . macros || this . disableAutostartMacros ) return ; if ( ! this . asc _canPaste ( ) ) return ; this . _beforeEvalCommand ( ) ; this . macros . runAuto ( ) ; this . _afterEvalCommand ( undefined ) } ; baseEditorsApi . prototype . asc _runMacros = function ( sGuid ) { if ( ! this . macros ) return ; if ( ! this . asc _canPaste ( ) ) return ; this . _beforeEvalCommand ( ) ; this . macros . run ( sGuid ) ; this . _afterEvalCommand ( undefined ) } ; baseEditorsApi . prototype . asc _getAllMacrosNames = function ( ) { if ( ! this . macros ) return [ ] ; return this . macros . getAllNames ( ) } ; baseEditorsApi . prototype . asc _getMacrosGuidByName =
function ( sName ) { if ( ! this . macros ) return "" ; return this . macros . getGuidByName ( sName ) } ; baseEditorsApi . prototype . asc _getMacrosByGuid = function ( sGuid ) { if ( ! this . macros ) return "" ; return this . macros . getNameByGuid ( sGuid ) } ; baseEditorsApi . prototype . asc _getSelectedDrawingObjectsCount = function ( ) { return 0 } ; baseEditorsApi . prototype . asc _decodeBuffer = function ( buffer , options , callback ) { var reader = new FileReader ; reader . onload = reader . onerror = function ( e ) { var text = e . target . result ? e . target . result : "" ; if ( options instanceof Asc . asc _CTextOptions ) callback ( AscCommon . parseText ( text ,
options ) ) ; else callback ( text . match ( /[^\r\n]+/g ) ) } ; var encoding = "UTF-8" ; var codePage = options . asc _getCodePage ( ) ; var encodingsLen = AscCommon . c _oAscEncodings . length ; for ( var i = 0 ; i < encodingsLen ; ++ i ) if ( AscCommon . c _oAscEncodings [ i ] [ 0 ] == codePage ) { encoding = AscCommon . c _oAscEncodings [ i ] [ 2 ] ; break } reader . readAsText ( new Blob ( [ buffer ] ) , encoding ) } ; baseEditorsApi . prototype . asc _setVisiblePasteButton = function ( val ) { if ( AscCommon . g _specialPasteHelper ) AscCommon . g _specialPasteHelper . setVisiblePasteButton ( val ) } ; baseEditorsApi . prototype . asc _getAutoCorrectMathSymbols =
function ( ) { return window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathSymbolsList } ; baseEditorsApi . prototype . asc _getAutoCorrectMathFunctions = function ( ) { return window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathFuncs } ; baseEditorsApi . prototype . asc _resetToDefaultAutoCorrectMathSymbols = function ( ) { window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols = JSON . parse ( JSON . stringify ( window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathSymbolsList ) ) } ;
baseEditorsApi . prototype . asc _resetToDefaultAutoCorrectMathFunctions = function ( ) { window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs = JSON . parse ( JSON . stringify ( window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathFuncs ) ) } ; baseEditorsApi . prototype . asc _deleteFromAutoCorrectMathSymbols = function ( element ) { var remInd = window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . findIndex ( function ( val , index ) { if ( val [ 0 ] === element ) return true } ) ; window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . splice ( remInd ,
1 ) } ; baseEditorsApi . prototype . asc _deleteFromAutoCorrectMathFunctions = function ( element ) { var remInd = window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs . findIndex ( function ( val , index ) { if ( val === element ) return true } ) ; window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs . splice ( remInd , 1 ) } ; baseEditorsApi . prototype . asc _AddOrEditFromAutoCorrectMathSymbols = function ( element , repVal ) { if ( typeof repVal === "string" ) repVal = AscCommon . convertUTF16toUnicode ( repVal ) ; var changeInd = window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . findIndex ( function ( val ,
index ) { if ( val [ 0 ] === element ) return true } ) ; if ( changeInd >= 0 ) window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols [ changeInd ] [ 1 ] = repVal ; else window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . push ( [ element , repVal ] ) } ; baseEditorsApi . prototype . asc _AddFromAutoCorrectMathFunctions = function ( newEl ) { window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs . push ( newEl ) } ; baseEditorsApi . prototype . asc _refreshOnStartAutoCorrectMathSymbols = function ( remItems , addItems , flag ) { var me =
this ; this . asc _resetToDefaultAutoCorrectMathSymbols ( ) ; if ( remItems ) remItems . forEach ( function ( el ) { me . asc _deleteFromAutoCorrectMathSymbols ( el ) } ) ; if ( addItems ) addItems . forEach ( function ( el ) { me . asc _AddOrEditFromAutoCorrectMathSymbols ( el [ 0 ] , el [ 1 ] ) } ) ; this . asc _updateFlagAutoCorrectMathSymbols ( flag ) } ; baseEditorsApi . prototype . asc _refreshOnStartAutoCorrectMathFunctions = function ( remItems , addItems ) { var me = this ; this . asc _resetToDefaultAutoCorrectMathFunctions ( ) ; if ( remItems ) remItems . forEach ( function ( el ) { me . asc _deleteFromAutoCorrectMathFunctions ( el ) } ) ;
if ( addItems ) addItems . forEach ( function ( el ) { me . asc _AddFromAutoCorrectMathFunctions ( el ) } ) } ; baseEditorsApi . prototype . asc _updateFlagAutoCorrectMathSymbols = function ( flag ) { window [ "AscCommonWord" ] . b _DoAutoCorrectMathSymbols = flag } ; baseEditorsApi . prototype . getFileAsFromChanges = function ( ) { var func _before = null ; var func _after = null ; if ( this . editorId === AscCommon . c _oEditorId . Word ) if ( this . WordControl && this . WordControl . m _oLogicDocument && this . WordControl . m _oLogicDocument . IsViewModeInReview ( ) ) { var isFinal = this . WordControl . m _oLogicDocument . ViewModeInReview . mode ===
1 ? true : false ; func _before = function ( api ) { api . WordControl . m _oLogicDocument . Start _SilentMode ( ) ; api . asc _EndViewModeInReview ( ) } ; func _after = function ( api ) { api . asc _BeginViewModeInReview ( isFinal ) ; api . WordControl . m _oLogicDocument . End _SilentMode ( false ) } } func _before && func _before ( this ) ; var ret = this . asc _nativeGetFile3 ( ) ; func _after && func _after ( this ) ; return ret } ; baseEditorsApi . prototype . initShortcuts = function ( arrShortcuts , isRemoveBeforeAdd ) { for ( var nIndex = 0 , nCount = arrShortcuts . length ; nIndex < nCount ; ++ nIndex ) { var s =
arrShortcuts [ nIndex ] ; if ( true === isRemoveBeforeAdd ) this . Shortcuts . RemoveByType ( s [ 0 ] ) ; this . Shortcuts . Add ( s [ 0 ] , s [ 1 ] , s [ 2 ] , s [ 3 ] , s [ 4 ] ) } } ; baseEditorsApi . prototype . initDefaultShortcuts = function ( ) { } ; baseEditorsApi . prototype . getShortcut = function ( e ) { if ( e . GetKeyCode ) return this . Shortcuts . Get ( e . GetKeyCode ( ) , e . IsCtrl ( ) , e . IsShift ( ) , e . IsAlt ( ) ) ; else return this . Shortcuts . Get ( e . KeyCode , e . CtrlKey , e . ShiftKey , e . AltKey ) } ; baseEditorsApi . prototype . getCustomShortcutAction = function ( nActionType ) { return this . Shortcuts . GetCustomAction ( nActionType ) } ;
baseEditorsApi . prototype . asc _initShortcuts = baseEditorsApi . prototype . initShortcuts ; baseEditorsApi . prototype . asc _getShortcutAction = function ( nKeyCode , isCtrl , isShift , isAlt ) { return this . Shortcuts . Get ( nKeyCode , isCtrl , isShift , isAlt ) } ; baseEditorsApi . prototype . asc _removeShortcuts = function ( arrShortcuts , arrActionTypes ) { if ( arrShortcuts ) for ( var nIndex = 0 , nCount = arrShortcuts . length ; nIndex < nCount ; ++ nIndex ) { var s = arrShortcuts [ nIndex ] ; this . Shortcuts . Remove ( s [ 0 ] , s [ 1 ] , s [ 2 ] , s [ 3 ] ) } if ( arrActionTypes ) for ( var nIndex = 0 , nCount =
arrActionTypes . length ; nIndex < nCount ; ++ nIndex ) this . Shortcuts . RemoveByType ( arrActionTypes [ nIndex ] ) } ; baseEditorsApi . prototype . asc _addCustomShortcutInsertSymbol = function ( nCharCode , sFont , sShortcut ) { var nActionType = this . Shortcuts . AddCustomActionSymbol ( nCharCode , sFont ) ; this . Shortcuts . Add ( nActionType , sShortcut [ 0 ] , sShortcut [ 1 ] , sShortcut [ 2 ] , sShortcut [ 3 ] ) ; return nActionType } ; baseEditorsApi . prototype . asc _setSkin = function ( obj ) { } ; baseEditorsApi . prototype [ "GetVersion" ] = baseEditorsApi . prototype . GetVersion = function ( ) { var ver =
"0.0.0" ; return ver === "0.0.0" || ver . substr ( 2 ) === "Version" ? "develop" : ver } ; baseEditorsApi . prototype [ "asc_isSupportFeature" ] = function ( type ) { return window [ "Asc" ] && window [ "Asc" ] [ "Addons" ] && window [ "Asc" ] [ "Addons" ] [ type ] === true ? true : false } ; baseEditorsApi . prototype [ "asc_setDefaultBlitMode" ] = function ( value ) { AscFonts . setDefaultBlitting ( value ) } ; baseEditorsApi . prototype [ "attachEvent" ] = function ( name , callback , listenerId ) { if ( ! this . internalEvents . hasOwnProperty ( name ) ) this . internalEvents [ name ] = { } ; this . internalEvents [ name ] [ "" +
( undefined === listenerId ? 0 : listenerId ) ] = callback } ; baseEditorsApi . prototype [ "detachEvent" ] = function ( name , listenerId ) { if ( ! this . internalEvents . hasOwnProperty ( name ) ) return ; var obj = this . internalEvents [ name ] ; var prop = "" + ( undefined === listenerId ? 0 : listenerId ) ; if ( obj [ prop ] ) delete obj [ prop ] ; if ( 0 === Object . getOwnPropertyNames ( obj ) . length ) delete this . internalEvents [ name ] } ; baseEditorsApi . prototype . sendInternalEvent = function ( ) { var name = arguments [ 0 ] ; if ( this . internalEvents . hasOwnProperty ( name ) ) { var obj = this . internalEvents [ name ] ;
for ( var prop in obj ) obj [ prop ] . apply ( this || window , Array . prototype . slice . call ( arguments , 1 ) ) } return false } ; baseEditorsApi . prototype [ "asc_onShowPopupWindow" ] = function ( ) { this . hideVideoControl ( ) } ; baseEditorsApi . prototype . asc _wopi _renameFile = function ( name ) { var t = this ; var callback = function ( isTimeout , response ) { if ( response ) t . CoAuthoringApi . onMeta ( { "title" : response [ "Name" ] + "." + AscCommon . GetFileExtension ( t . documentTitle ) } ) ; else t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . NoCritical ) } ; if ( ! this . CoAuthoringApi . callPRC ( { "type" : "wopi_RenameFile" ,
"name" : name } , Asc . c _nCommonRequestTime , callback ) ) callback ( false , undefined ) } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . baseEditorsApi = baseEditorsApi ; prot = baseEditorsApi . prototype ; prot [ "asc_loadFontsFromServer" ] = prot . asc _loadFontsFromServer ; prot [ "asc_setRestriction" ] = prot . asc _setRestriction ; prot [ "asc_selectSearchingResults" ] = prot . asc _selectSearchingResults ; prot [ "asc_showRevision" ] = prot . asc _showRevision ; prot [ "asc_getAdvancedOptions" ] = prot . asc _getAdvancedOptions ; prot [ "asc_Print" ] =
prot . asc _Print ; prot [ "asc_GetCurrentColorSchemeName" ] = prot . asc _GetCurrentColorSchemeName ; prot [ "asc_GetCurrentColorSchemeIndex" ] = prot . asc _GetCurrentColorSchemeIndex ; prot [ "asc_runAutostartMacroses" ] = prot . asc _runAutostartMacroses ; prot [ "asc_runMacros" ] = prot . asc _runMacros ; prot [ "asc_getAllMacrosNames" ] = prot . asc _getAllMacrosNames ; prot [ "asc_setVisiblePasteButton" ] = prot . asc _setVisiblePasteButton ; prot [ "asc_getAutoCorrectMathSymbols" ] = prot . asc _getAutoCorrectMathSymbols ; prot [ "asc_getAutoCorrectMathFunctions" ] =
prot . asc _getAutoCorrectMathFunctions ; prot [ "asc_resetToDefaultAutoCorrectMathSymbols" ] = prot . asc _resetToDefaultAutoCorrectMathSymbols ; prot [ "asc_resetToDefaultAutoCorrectMathFunctions" ] = prot . asc _resetToDefaultAutoCorrectMathFunctions ; prot [ "asc_deleteFromAutoCorrectMathSymbols" ] = prot . asc _deleteFromAutoCorrectMathSymbols ; prot [ "asc_deleteFromAutoCorrectMathFunctions" ] = prot . asc _deleteFromAutoCorrectMathFunctions ; prot [ "asc_AddOrEditFromAutoCorrectMathSymbols" ] = prot . asc _AddOrEditFromAutoCorrectMathSymbols ;
prot [ "asc_AddFromAutoCorrectMathFunctions" ] = prot . asc _AddFromAutoCorrectMathFunctions ; prot [ "asc_refreshOnStartAutoCorrectMathSymbols" ] = prot . asc _refreshOnStartAutoCorrectMathSymbols ; prot [ "asc_refreshOnStartAutoCorrectMathFunctions" ] = prot . asc _refreshOnStartAutoCorrectMathFunctions ; prot [ "asc_updateFlagAutoCorrectMathSymbols" ] = prot . asc _updateFlagAutoCorrectMathSymbols ; prot [ "asc_initShortcuts" ] = prot . asc _initShortcuts ; prot [ "asc_getShortcutAction" ] = prot . asc _getShortcutAction ; prot [ "asc_removeShortcuts" ] = prot . asc _removeShortcuts ;
prot [ "asc_addCustomShortcutInsertSymbol" ] = prot . asc _addCustomShortcutInsertSymbol ; prot [ "asc_wopi_renameFile" ] = prot . asc _wopi _renameFile ; prot [ "asc_isCrypto" ] = prot . asc _isCrypto } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var Api = window [ "AscCommon" ] . baseEditorsApi ; Api . prototype [ "pluginMethod_GetVersion" ] = function ( ) { return this . GetVersion ( ) } ; Api . prototype [ "pluginMethod_AddOleObject" ] = function ( data ) { return this . asc _addOleObject ( data ) } ; Api . prototype [ "pluginMethod_EditOleObject" ] = function ( data ) { return this . asc _editOleObject ( data ) } ; Api . prototype [ "pluginMethod_GetFontList" ] = function ( ) { return AscFonts . g _fontApplication . g _fontSelections . SerializeList ( ) } ; Api . prototype [ "pluginMethod_InputText" ] = function ( text ,
textReplace ) { if ( this . isViewMode || ! AscCommon . g _inputContext ) return ; var codes = [ ] ; for ( var i = text . getUnicodeIterator ( ) ; i . check ( ) ; i . next ( ) ) codes . push ( i . value ( ) ) ; if ( textReplace ) for ( var i = 0 ; i < textReplace . length ; i ++ ) AscCommon . g _inputContext . emulateKeyDownApi ( 8 ) ; AscCommon . g _inputContext . apiInputText ( codes ) ; AscCommon . g _inputContext . keyPressInput = "" } ; Api . prototype [ "pluginMethod_PasteHtml" ] = function ( htmlText ) { if ( ! AscCommon . g _clipboardBase ) return null ; var _elem = document . getElementById ( "pmpastehtml" ) ; if ( _elem ) return ;
_elem = document . createElement ( "div" ) ; _elem . id = "pmpastehtml" ; if ( this . editorId == AscCommon . c _oEditorId . Word || this . editorId == AscCommon . 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 == AscCommon . 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 ) ; 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 } } ; Api . prototype [ "pluginMethod_PasteText" ] = function ( text ) { if ( ! AscCommon . g _clipboardBase ) return null ;
this . asc _PasteData ( AscCommon . c _oAscClipboardDataFormat . Text , text ) } ; Api . prototype [ "pluginMethod_GetMacros" ] = function ( ) { return this . asc _getMacros ( ) } ; Api . prototype [ "pluginMethod_SetMacros" ] = function ( data ) { return this . asc _setMacros ( data ) } ; Api . prototype [ "pluginMethod_StartAction" ] = function ( type , description ) { this . sync _StartAction ( type == "Block" ? Asc . c _oAscAsyncActionType . BlockInteraction : Asc . c _oAscAsyncActionType . Information , description ) } ; Api . prototype [ "pluginMethod_EndAction" ] = function ( type , description ,
status ) { this . sync _EndAction ( type == "Block" ? Asc . c _oAscAsyncActionType . BlockInteraction : Asc . c _oAscAsyncActionType . Information , description ) ; if ( window [ "AscDesktopEditor" ] && status != null && status != "" ) { if ( ! window [ "AscDesktopEditor" ] [ "IsLocalFile" ] ( ) ) { this . sendEvent ( "asc_onError" , "Encryption error: " + status + ". The file was not compiled." , c _oAscError . Level . Critical ) ; window [ "AscDesktopEditor" ] [ "CryptoMode" ] = 0 } else { this . sendEvent ( "asc_onError" , "Encryption error: " + status + ". End-to-end encryption mode is disabled." ,
c _oAscError . Level . NoCritical ) ; window [ "AscDesktopEditor" ] [ "CryptoMode" ] = 0 ; if ( undefined !== window . LastUserSavedIndex ) { AscCommon . History . UserSavedIndex = window . LastUserSavedIndex ; if ( this . editorId == AscCommon . c _oEditorId . Spreadsheet ) this . onUpdateDocumentModified ( AscCommon . History . Have _Changes ( ) ) ; else this . UpdateInterfaceState ( ) } } window . LastUserSavedIndex = undefined ; setTimeout ( function ( ) { window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( false ) } , 500 ) ; return } window . LastUserSavedIndex = undefined ; if ( this . _callbackPluginEndAction ) this . _callbackPluginEndAction . call ( this ) } ;
Api . 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 } if ( "no_build" === obj [ "error" ] ) { window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( true ) ; return } var _ret = _editor . getFileAsFromChanges ( ) ; AscCommon . EncryptionWorker . isPasswordCryptoPresent = true ; _editor . currentDocumentInfoNext =
obj [ "docinfo" ] ; 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 ( { message : obj [ "message" ] } , true ) ; break } case "encryptData" : case "decryptData" : { AscCommon . EncryptionWorker . receiveChanges ( obj ) ; break } } } ; Api . prototype [ "pluginMethod_SetProperties" ] = function ( obj ) { if ( ! obj ) return ; for ( var prop in obj ) switch ( prop ) { case "copyoutenabled" : { this . copyOutEnabled = obj [ prop ] ; this . sync _CanCopyCutCallback ( this . copyOutEnabled ) ; break } case "watermark_on_draw" : { var sText = "" ; var tempProp = { } ; try { tempProp =
typeof obj [ prop ] === "string" ? JSON . parse ( obj [ prop ] ) : obj [ prop ] } catch ( err ) { tempProp = { } } if ( tempProp [ "paragraphs" ] ) tempProp [ "paragraphs" ] . forEach ( function ( el ) { if ( el [ "runs" ] ) sText += el [ "runs" ] . reduce ( function ( accum , curel ) { return accum + ( curel [ "text" ] ? curel [ "text" ] : "" ) } , "" ) } ) ; if ( ! ( typeof sText === "string" ) ) sText = "" ; AscFonts . FontPickerByCharacter . checkText ( sText , this , function ( ) { this . watermarkDraw = obj [ prop ] ? new AscCommon . CWatermarkOnDraw ( obj [ prop ] , this ) : null ; this . watermarkDraw . checkOnReady ( ) } ) ; break } case "hideContentControlTrack" : { if ( this . editorId ===
AscCommon . c _oEditorId . Word && this . WordControl && this . WordControl . m _oLogicDocument ) this . WordControl . m _oLogicDocument . SetForceHideContentControlTrack ( obj [ prop ] ) ; break } case "disableAutostartMacros" : { this . disableAutostartMacros = true } default : break } } ; Api . prototype [ "pluginMethod_ShowInputHelper" ] = function ( guid , w , h , isKeyboardTake ) { var _frame = document . getElementById ( "iframe_" + guid ) ; if ( ! _frame ) return ; var _offset = this . getTargetOnBodyCoords ( ) ; if ( w > _offset . W ) w = _offset . W ; if ( h > _offset . H ) h = _offset . H ; var _offsetToFrame =
10 ; var _r = _offset . X + _offsetToFrame + w ; var _t = _offset . Y - _offsetToFrame - h ; var _b = _offset . Y + _offset . TargetH + _offsetToFrame + h ; var _x = _offset . X + _offsetToFrame ; if ( _r > _offset . W ) _x += _offset . W - _r ; var _y = 0 ; if ( _b < _offset . H ) _y = _offset . Y + _offset . TargetH + _offsetToFrame ; else if ( _t > 0 ) _y = _t ; else { _y = _offset . Y + _offset . TargetH + _offsetToFrame ; h += _offset . H - _b } _frame . style . left = _x + "px" ; _frame . style . top = _y + "px" ; _frame . style . width = w + "px" ; _frame . style . height = h + "px" ; if ( ! this . isMobileVersion ) _frame . style . zIndex = 1E3 ; else _frame . style . zIndex =
5001 ; if ( ! _frame . style . boxShadow ) { _frame . style . boxShadow = "0 6px 12px rgba(0, 0, 0, 0.175)" ; _frame . style . webkitBoxShadow = "0 6px 12px rgba(0, 0, 0, 0.175)" } if ( isKeyboardTake ) { _frame . setAttribute ( "oo_editor_input" , "true" ) ; _frame . focus ( ) } else { _frame . removeAttribute ( "oo_editor_input" ) ; if ( AscCommon . g _inputContext ) { AscCommon . g _inputContext . isNoClearOnFocus = true ; AscCommon . g _inputContext . HtmlArea . focus ( ) } } if ( AscCommon . g _inputContext ) { AscCommon . g _inputContext . isInputHelpersPresent = true ; AscCommon . g _inputContext . isInputHelpers [ guid ] =
true } } ; Api . prototype [ "pluginMethod_UnShowInputHelper" ] = function ( guid , isclear ) { var _frame = document . getElementById ( "iframe_" + guid ) ; if ( ! _frame ) return ; _frame . style . width = "10px" ; _frame . style . height = "10px" ; _frame . removeAttribute ( "oo_editor_input" ) ; _frame . style . zIndex = - 1E3 ; if ( AscCommon . g _inputContext && AscCommon . g _inputContext . HtmlArea ) { AscCommon . g _inputContext . HtmlArea . focus ( ) ; if ( AscCommon . g _inputContext . isInputHelpers [ guid ] ) delete AscCommon . g _inputContext . isInputHelpers [ guid ] ; var count = 0 ; for ( var test in AscCommon . g _inputContext . isInputHelpers ) if ( AscCommon . g _inputContext . isInputHelpers [ test ] ) count ++ ;
AscCommon . g _inputContext . isInputHelpersPresent = 0 != count } if ( AscCommon . g _inputContext && isclear ) AscCommon . g _inputContext . keyPressInput = "" } ; Api . prototype [ "pluginMethod_CoAuthoringChatSendMessage" ] = function ( sText ) { return this . CoAuthoringChatSendMessage ( sText ) } ; Api . prototype [ "pluginMethod_GetSelectionType" ] = function ( ) { switch ( this . editorId ) { case AscCommon . c _oEditorId . Word : { if ( ! this . WordControl || ! this . WordControl . m _oLogicDocument ) return "none" ; var logicDoc = this . WordControl . m _oLogicDocument ; if ( ! logicDoc . IsSelectionUse ( ) ) return "none" ;
var selectionBounds = logicDoc . GetSelectionBounds ( ) ; var eps = 1E-4 ; if ( selectionBounds && selectionBounds . Start && selectionBounds . End && Math . abs ( selectionBounds . Start . W ) > eps && Math . abs ( selectionBounds . End . W ) > eps ) return "text" ; if ( logicDoc . DrawingObjects . getSelectedObjectsBounds ( ) ) return "drawing" ; return "none" } case AscCommon . c _oEditorId . Presentation : { if ( ! this . WordControl || ! this . WordControl . m _oLogicDocument ) return "none" ; var logicDoc = this . WordControl . m _oLogicDocument ; if ( - 1 === logicDoc . CurPage ) return "none" ; var _controller =
logicDoc . Slides [ logicDoc . CurPage ] . graphicObjects ; var _elementsCount = _controller . selectedObjects . length ; var retType = "slide" ; if ( ! _controller . IsSelectionUse ( ) && _elementsCount > 0 ) retType = "none" ; var selectionBounds = logicDoc . GetSelectionBounds ( ) ; var eps = 1E-4 ; if ( selectionBounds && selectionBounds . Start && selectionBounds . End && Math . abs ( selectionBounds . Start . W ) > eps && Math . abs ( selectionBounds . End . W ) > eps ) return "text" ; if ( retType === "slide" && _controller . getSelectedObjectsBounds ( ) ) retType = "drawing" ; return retType } case AscCommon . c _oEditorId . Spreadsheet : { if ( ! this . wb ||
! this . wb . getWorksheet ( ) ) return "none" ; var objectRender = this . wb . getWorksheet ( ) . objectRender ; if ( ! objectRender ) return "none" ; var controller = objectRender . controller ; if ( ! controller ) return "none" ; var selection = this . wb . GetSelectionRectsBounds ( ) ; var retType = "none" ; if ( ! controller . IsSelectionUse ( ) && ! selection ) retType = "none" ; if ( controller . GetSelectionBounds ( ) || selection ) retType = "text" ; if ( controller . getSelectedObjectsBounds ( ) ) retType = "drawing" ; return retType } default : break } return "none" } } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function CBackground ( obj ) { if ( obj ) { this . Value = undefined != obj . Value ? obj . Value : null ; if ( obj . GetSimpleColor ) { if ( undefined !== obj . Value && Asc . c _oAscShd . Nil !== this . Value ) this . Value = Asc . c _oAscShd . Clear ; if ( Asc . c _oAscShd . Clear === obj . Value && 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 { var oColor = obj . GetSimpleColor ( ) ; this . Color = AscCommon . CreateAscColorCustom ( oColor . r ,
oColor . g , oColor . b , oColor . Auto ) } } else 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 } 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 ; 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 { this . CellSelect = false ; 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 . 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 ; this . OutlineLvl = undefined !== obj . OutlineLvl ? obj . OutlineLvl : 0 } else { 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 ; this . OutlineLvl = 0 } } 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 } ; CParagraphPropEx . prototype . get _OutlineLvl = function ( ) { return this . OutlineLvl } ; 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 ; this . Lang = undefined != obj . Lang ? obj . Lang . Val : null } else { 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 ; this . Lang = null } } 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 } ; CTextProp . prototype . get _Lang = function ( ) { return this . Lang } ; 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 ; CParagraphPropEx . prototype [ "get_OutlineLvl" ] = CParagraphPropEx . prototype . get _OutlineLvl ; 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 ; CTextProp . prototype [ "get_Lang" ] = CTextProp . prototype . get _Lang ; CTextProp . prototype [ "put_Bold" ] = CTextProp . prototype . put _Bold = function ( v ) { this . Bold = v } ; CTextProp . prototype [ "put_Italic" ] = CTextProp . prototype . put _Italic = function ( v ) { this . Italic = v } ; CTextProp . prototype [ "put_Underline" ] = CTextProp . prototype . put _Underline = function ( v ) { this . Underline =
v } ; CTextProp . prototype [ "put_Strikeout" ] = CTextProp . prototype . put _Strikeout = function ( v ) { this . Strikeout = v } ; CTextProp . prototype [ "put_FontFamily" ] = CTextProp . prototype . put _FontFamily = function ( v ) { this . FontFamily = v } ; CTextProp . prototype [ "put_FontSize" ] = CTextProp . prototype . put _FontSize = function ( v ) { this . FontSize = v } ; CTextProp . prototype [ "put_Color" ] = CTextProp . prototype . put _Color = function ( v ) { this . Color = v } ; CTextProp . prototype [ "put_VertAlign" ] = CTextProp . prototype . put _VertAlign = function ( v ) { this . VertAlign = v } ; CTextProp . prototype [ "put_HighLight" ] =
CTextProp . prototype . put _HighLight = function ( v ) { this . HighLight = v } ; CTextProp . prototype [ "put_Spacing" ] = CTextProp . prototype . put _Spacing = function ( v ) { this . Spacing = v } ; CTextProp . prototype [ "put_DStrikeout" ] = CTextProp . prototype . put _DStrikeout = function ( v ) { this . DStrikeout = v } ; CTextProp . prototype [ "put_Caps" ] = CTextProp . prototype . put _Caps = function ( v ) { this . Caps = v } ; CTextProp . prototype [ "put_SmallCaps" ] = CTextProp . prototype . put _SmallCaps = function ( v ) { this . SmallCaps = v } ; CTextProp . prototype [ "put_Lang" ] = CTextProp . prototype . put _Lang =
function ( v ) { this . Lang = v } ; window [ "Asc" ] [ "CTextProp" ] = window [ "Asc" ] . CTextProp = CTextProp ; function CParagraphAndTextProp ( paragraphProp , textProp ) { this . ParaPr = undefined != paragraphProp && null != paragraphProp ? new CParagraphPropEx ( paragraphProp ) : null ; this . TextPr = undefined != textProp && null != textProp ? new CTextProp ( textProp ) : null } CParagraphAndTextProp . prototype . get _ParaPr = function ( ) { return this . ParaPr } ; 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 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 ; this . Y = undefined != obj . Y ? obj . Y : null ; this . level = undefined != obj . level ? obj . level :
null } else { this . headerText = null ; this . pageNumber = null ; this . X = null ; this . Y = null ; 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 ; function CTableOfContentsPr ( ) { this . Hyperlink = true ; this . OutlineStart = 1 ; this . OutlineEnd = 9 ; this . Styles = [ ] ; this . PageNumbers = true ; this . RightTab = true ; this . TabLeader = undefined ; this . StylesType = Asc . c _oAscTOCStylesType . Current ; this . ComplexField = null ; this . Caption = undefined ; this . IsIncludeLabelAndNumber =
true } 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 ; if ( oInstruction . IsTableOfFigures ( ) ) { this . Caption = oInstruction . Caption || oInstruction . CaptionOnlyText ; if ( ! this . Caption ) this . Caption = null ; this . IsIncludeLabelAndNumber = this . CaptionOnlyText === undefined } } ; CTableOfContentsPr . prototype . InitFromSdtTOC = function ( oSdtTOC ) { this . ComplexField =
oSdtTOC } ; CTableOfContentsPr . prototype . CheckStylesType = function ( oStyles ) { if ( oStyles ) if ( this . Caption !== undefined ) this . StylesType = oStyles . GetTOFStyleType ( ) ; else 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 } ; CTableOfContentsPr . prototype . put _Caption = function ( sCaption ) { this . Caption =
sCaption } ; CTableOfContentsPr . prototype . get _Caption = function ( ) { return this . Caption } ; CTableOfContentsPr . prototype . get _CaptionForInstruction = function ( ) { if ( typeof this . Caption === "string" ) { var aSplit = this . Caption . split ( " " ) ; var sResult = aSplit [ 0 ] ; for ( var nIdx = 1 ; nIdx < aSplit . length ; ++ nIdx ) sResult += "_" + aSplit [ nIdx ] ; return sResult } return this . Caption } ; CTableOfContentsPr . prototype . put _IncludeLabelAndNumber = function ( bInclude ) { this . IsIncludeLabelAndNumber = bInclude } ; CTableOfContentsPr . prototype . get _IncludeLabelAndNumber =
function ( ) { return this . IsIncludeLabelAndNumber } ; 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 ; CTableOfContentsPr . prototype [ "put_Caption" ] = CTableOfContentsPr . prototype . put _Caption ; CTableOfContentsPr . prototype [ "get_Caption" ] = CTableOfContentsPr . prototype . get _Caption ; CTableOfContentsPr . prototype [ "put_IncludeLabelAndNumber" ] =
CTableOfContentsPr . prototype . put _IncludeLabelAndNumber ; CTableOfContentsPr . prototype [ "get_IncludeLabelAndNumber" ] = CTableOfContentsPr . prototype . get _IncludeLabelAndNumber ; 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 } ; CAscStyle . prototype . get _TranslatedName = function ( ) { if ( typeof this . Name === "string" && this . Name . length > 0 ) return AscCommon . translateManager . getValue ( this . Name ) ;
return this . Name } ; 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 ; CAscStyle . prototype [ "get_TranslatedName" ] = CAscStyle . prototype . get _TranslatedName ; 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 ; 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 ; 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 ; this . PStyle = undefined } 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 } ; CAscNumberingLvl . prototype . get _PStyle = function ( ) { return this . PStyle } ;
CAscNumberingLvl . prototype . put _PStyle = function ( sStyleId ) { this . PStyle = sStyleId } ; 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 ; CAscNumberingLvl . prototype [ "get_PStyle" ] = CAscNumberingLvl . prototype . get _PStyle ; CAscNumberingLvl . prototype [ "put_PStyle" ] = CAscNumberingLvl . prototype . put _PStyle ; function CAscWatermarkProperties ( ) { this . Type =
Asc . c _oAscWatermarkType . None ; this . Text = null ; this . TextPr = null ; this . Opacity = null ; this . IsDiagonal = null ; this . ImageUrl = null ; this . Scale = null ; this . DivId = null ; this . Api = null } window [ "Asc" ] [ "CAscWatermarkProperties" ] = window [ "Asc" ] . CAscWatermarkProperties = CAscWatermarkProperties ; CAscWatermarkProperties . prototype [ "put_Api" ] = CAscWatermarkProperties . prototype . put _Api = function ( v ) { this . Api = v } ; CAscWatermarkProperties . prototype [ "put_Type" ] = CAscWatermarkProperties . prototype . put _Type = function ( v ) { this . Type = v } ; CAscWatermarkProperties . prototype [ "get_Type" ] =
CAscWatermarkProperties . prototype . get _Type = function ( ) { return this . Type } ; CAscWatermarkProperties . prototype [ "put_Text" ] = CAscWatermarkProperties . prototype . put _Text = function ( v ) { this . Text = v } ; CAscWatermarkProperties . prototype [ "get_Text" ] = CAscWatermarkProperties . prototype . get _Text = function ( ) { return this . Text } ; CAscWatermarkProperties . prototype [ "put_TextPr" ] = CAscWatermarkProperties . prototype . put _TextPr = function ( v ) { this . TextPr = v } ; CAscWatermarkProperties . prototype [ "get_TextPr" ] = CAscWatermarkProperties . prototype . get _TextPr =
function ( ) { return this . TextPr } ; CAscWatermarkProperties . prototype [ "put_Opacity" ] = CAscWatermarkProperties . prototype . put _Opacity = function ( v ) { this . Opacity = v } ; CAscWatermarkProperties . prototype [ "get_Opacity" ] = CAscWatermarkProperties . prototype . get _Opacity = function ( ) { return this . Opacity } ; CAscWatermarkProperties . prototype [ "put_IsDiagonal" ] = CAscWatermarkProperties . prototype . put _IsDiagonal = function ( v ) { this . IsDiagonal = v } ; CAscWatermarkProperties . prototype [ "get_IsDiagonal" ] = CAscWatermarkProperties . prototype . get _IsDiagonal =
function ( ) { return this . IsDiagonal } ; CAscWatermarkProperties . prototype [ "put_ImageUrl" ] = CAscWatermarkProperties . prototype . put _ImageUrl = function ( sUrl , token ) { var _this = this ; if ( ! _this . Api ) return ; AscCommon . sendImgUrls ( _this . Api , [ sUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !== "error" ) { var url = AscCommon . g _oDocumentUrls . imagePath2Local ( data [ 0 ] . path ) ; _this . Api . ImageLoader . LoadImagesWithCallback ( [ AscCommon . getFullImageSrc2 ( url ) ] , function ( ) { _this . ImageUrl = url ; _this . Type = Asc . c _oAscWatermarkType . Image ; _this . drawTexture ( ) ;
_this . Api . sendEvent ( "asc_onWatermarkImageLoaded" ) } ) } } , false , undefined , token ) } ; CAscWatermarkProperties . prototype [ "put_ImageUrl2" ] = CAscWatermarkProperties . prototype . put _ImageUrl2 = function ( sUrl ) { this . ImageUrl = sUrl } ; CAscWatermarkProperties . prototype [ "get_ImageUrl" ] = CAscWatermarkProperties . prototype . get _ImageUrl = function ( ) { return this . ImageUrl } ; CAscWatermarkProperties . prototype [ "put_Scale" ] = CAscWatermarkProperties . prototype . put _Scale = function ( v ) { this . Scale = v } ; CAscWatermarkProperties . prototype [ "get_Scale" ] =
CAscWatermarkProperties . prototype . get _Scale = function ( ) { return this . Scale } ; CAscWatermarkProperties . prototype [ "put_DivId" ] = CAscWatermarkProperties . prototype . put _DivId = function ( v ) { this . DivId = v ; this . drawTexture ( ) } ; CAscWatermarkProperties . prototype [ "updateView" ] = CAscWatermarkProperties . prototype . updateView = function ( v ) { this . drawTexture ( ) } ; CAscWatermarkProperties . prototype [ "showFileDialog" ] = CAscWatermarkProperties . prototype . showFileDialog = function ( ) { if ( ! this . Api || ! this . DivId ) return ; var t = this . Api ; var _this =
this ; AscCommon . ShowImageFileDialog ( t . documentId , t . documentUserId , t . CoAuthoringApi . get _jwt ( ) , function ( error , files ) { if ( Asc . c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ; else { t . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) ; AscCommon . UploadImageFiles ( files , t . documentId , t . documentUserId , t . CoAuthoringApi . get _jwt ( ) , function ( error , urls ) { if ( Asc . c _oAscError . ID . No !== error ) { t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ;
t . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) } else t . ImageLoader . LoadImagesWithCallback ( urls , function ( ) { if ( urls . length > 0 ) { _this . ImageUrl = urls [ 0 ] ; _this . Type = Asc . c _oAscWatermarkType . Image ; _this . drawTexture ( ) ; t . sendEvent ( "asc_onWatermarkImageLoaded" ) } t . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) } ) } ) } } , function ( error ) { if ( Asc . c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ;
t . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) } ) } ; CAscWatermarkProperties . prototype [ "loadImageUrl" ] = CAscWatermarkProperties . prototype . loadImageUrl = function ( sUrl , token ) { var _this = this ; if ( ! _this . Api ) return ; AscCommon . sendImgUrls ( _this . Api , [ sUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !== "error" ) _this . ImageLoader . LoadImagesWithCallback ( [ data [ 0 ] . url ] , function ( ) { _this . ImageUrl = data [ 0 ] . url ; _this . Type = Asc . c _oAscWatermarkType . Image ; _this . drawTexture ( ) ;
_this . sendEvent ( "asc_onWatermarkImageLoaded" ) } ) } , false , undefined , token ) } ; CAscWatermarkProperties . prototype [ "drawTexture" ] = CAscWatermarkProperties . prototype . drawTexture = function ( ) { if ( ! this . ImageUrl || ! this . Api ) return ; var oDiv = document . getElementById ( this . DivId ) ; if ( ! oDiv ) return ; var aChildren = oDiv . children ; var oCanvas = null ; for ( var i = 0 ; i < aChildren . length ; ++ i ) if ( aChildren [ i ] . nodeName && aChildren [ i ] . nodeName . toUpperCase ( ) === "CANVAS" ) { oCanvas = aChildren [ i ] ; break } var nWidth = oDiv . clientWidth ; var nHeight = oDiv . clientHeight ;
if ( null === oCanvas ) { oCanvas = document . createElement ( "canvas" ) ; oCanvas . width = parseInt ( nWidth ) ; oCanvas . height = parseInt ( nHeight ) ; oDiv . appendChild ( oCanvas ) } var oContext = oCanvas . getContext ( "2d" ) ; oContext . clearRect ( 0 , 0 , oCanvas . width , oCanvas . height ) ; var _img = this . Api . ImageLoader . map _image _index [ AscCommon . getFullImageSrc2 ( this . ImageUrl ) ] ; if ( _img != undefined && _img . Image != null && _img . Status != AscFonts . ImageLoadStatus . Loading ) { var _x = 0 ; var _y = 0 ; var _w = Math . max ( _img . Image . width , 1 ) ; var _h = Math . max ( _img . Image . height ,
1 ) ; var dAspect1 = nWidth / nHeight ; var dAspect2 = _w / _h ; _w = nWidth ; _h = nHeight ; if ( dAspect1 >= dAspect2 ) { _w = dAspect2 * nHeight ; _x = ( nWidth - _w ) / 2 } else { _h = _w / dAspect2 ; _y = ( nHeight - _h ) / 2 } oContext . drawImage ( _img . Image , _x , _y , _w , _h ) } else if ( ! _img || ! _img . Image ) { oContext . lineWidth = 1 ; oContext . beginPath ( ) ; oContext . moveTo ( 0 , 0 ) ; oContext . lineTo ( nWidth , nHeight ) ; oContext . moveTo ( nWidth , 0 ) ; oContext . lineTo ( 0 , nHeight ) ; oContext . strokeStyle = "#FF0000" ; oContext . stroke ( ) ; oContext . beginPath ( ) ; oContext . moveTo ( 0 , 0 ) ; oContext . lineTo ( nWidth ,
0 ) ; oContext . lineTo ( nWidth , nHeight ) ; oContext . lineTo ( 0 , nHeight ) ; oContext . closePath ( ) ; oContext . strokeStyle = "#000000" ; oContext . stroke ( ) ; oContext . beginPath ( ) } } ; function CAscCaptionProperties ( ) { this . Name = null ; this . Additional = null ; this . Label = null ; this . Before = false ; this . ExcludeLabel = false ; this . Format = Asc . c _oAscNumberingFormat . Decimal ; this . IncludeChapterNumber = false ; this . HeadingLvl = null ; this . Separator = ":" ; this . Document = null } function CAscDateTime ( ) { this . Format = null ; this . Update = true ; this . Lang = null } CAscDateTime . prototype . get _Format =
function ( ) { return this . Format } ; CAscDateTime . prototype . put _Format = function ( v ) { this . Format = v } ; CAscDateTime . prototype . get _Update = function ( ) { return this . Update } ; CAscDateTime . prototype . put _Update = function ( v ) { this . Update = v } ; CAscDateTime . prototype . get _Lang = function ( ) { return this . Lang } ; CAscDateTime . prototype . put _Lang = function ( v ) { this . Lang = v } ; CAscDateTime . prototype . get _FormatsExamples = function ( ) { return [ "M/d/yyyy" , "dddd, MMMM d, yyyy" , "MMMM d, yyyy" , "M/d/yy" , "yyyy-MM-dd" , "d-MMM-yy" , "M.d.yyyy" , "MMM. d, yy" ,
"d MMMM yyyy" , "MMMM yy" , "MMM-yy" , "M/d/yyyy h:mm am/pm" , "M/d/yyyy h:mm:ss am/pm" , "h:mm am/pm" , "h:mm:ss am/pm" , "HH:mm" , "HH:mm:ss" ] } ; CAscDateTime . prototype . get _String = function ( sFormat , sDate , nLangId ) { if ( undefined === sFormat ) sFormat = this . Format ; if ( undefined === nLangId ) nLangId = this . Lang ; var oFormat = AscCommon . oNumFormatCache . get ( sFormat , AscCommon . NumFormatType . WordFieldDate ) ; if ( oFormat ) { var oCultureInfo = AscCommon . g _aCultureInfos [ nLangId ] ; if ( ! oCultureInfo ) oCultureInfo = AscCommon . g _aCultureInfos [ 1033 ] ; var oDateTime =
sDate ? new Asc . cDate ( sDate ) : new Asc . cDate ; return oFormat . formatToWord ( oDateTime . getExcelDate ( ) + ( oDateTime . getHours ( ) * 60 * 60 + oDateTime . getMinutes ( ) * 60 + oDateTime . getSeconds ( ) ) / AscCommonExcel . c _sPerDay , 15 , oCultureInfo ) } return sDate } ; window [ "Asc" ] [ "CAscDateTime" ] = window [ "Asc" ] . CAscDateTime = CAscDateTime ; CAscDateTime . prototype [ "get_Format" ] = CAscDateTime . prototype . get _Format ; CAscDateTime . prototype [ "put_Format" ] = CAscDateTime . prototype . put _Format ; CAscDateTime . prototype [ "get_Update" ] = CAscDateTime . prototype . get _Update ;
CAscDateTime . prototype [ "put_Update" ] = CAscDateTime . prototype . put _Update ; CAscDateTime . prototype [ "get_Lang" ] = CAscDateTime . prototype . get _Lang ; CAscDateTime . prototype [ "put_Lang" ] = CAscDateTime . prototype . put _Lang ; CAscDateTime . prototype [ "get_FormatsExamples" ] = CAscDateTime . prototype . get _FormatsExamples ; CAscDateTime . prototype [ "get_String" ] = CAscDateTime . prototype . get _String ; window [ "Asc" ] [ "CAscCaptionProperties" ] = window [ "Asc" ] . CAscCaptionProperties = CAscCaptionProperties ; var prot = CAscCaptionProperties . prototype ;
prot . get _Name = prot [ "get_Name" ] = function ( ) { return this . Name } ; prot . get _Label = prot [ "get_Label" ] = function ( ) { if ( typeof this . Label === "string" ) { var aSplit = this . Label . split ( "_" ) ; var sResult = aSplit [ 0 ] ; for ( var nIdx = 1 ; nIdx < aSplit . length ; ++ nIdx ) sResult += " " + aSplit [ nIdx ] ; return sResult } return this . Label } ; prot . get _Before = prot [ "get_Before" ] = function ( ) { return this . Before } ; prot . get _ExcludeLabel = prot [ "get_ExcludeLabel" ] = function ( ) { return this . ExcludeLabel } ; prot . get _Format = prot [ "get_Format" ] = function ( ) { return this . Format } ;
prot . get _FormatGeneral = prot [ "get_FormatGeneral" ] = function ( ) { switch ( this . Format ) { case Asc . c _oAscNumberingFormat . UpperLetter : { return "ALPHABETIC" } case Asc . c _oAscNumberingFormat . LowerLetter : { return "alphabetic" } case Asc . c _oAscNumberingFormat . UpperRoman : { return "Roman" } case Asc . c _oAscNumberingFormat . LowerRoman : { return "roman" } default : { return "Arabic" } } } ; prot . get _IncludeChapterNumber = prot [ "get_IncludeChapterNumber" ] = function ( ) { return this . IncludeChapterNumber } ; prot . get _HeadingLvl = prot [ "get_HeadingLvl" ] = function ( ) { return this . HeadingLvl } ;
prot . get _Separator = prot [ "get_Separator" ] = function ( ) { return this . Separator } ; prot . get _Additional = prot [ "get_Additional" ] = function ( ) { return this . Additional } ; prot . put _Name = prot [ "put_Name" ] = function ( v ) { this . Name = v } ; prot . put _Label = prot [ "put_Label" ] = function ( v ) { this . Label = v } ; prot . put _Before = prot [ "put_Before" ] = function ( v ) { this . Before = v } ; prot . put _ExcludeLabel = prot [ "put_ExcludeLabel" ] = function ( v ) { this . ExcludeLabel = v } ; prot . put _Format = prot [ "put_Format" ] = function ( v ) { this . Format = v } ; prot . put _IncludeChapterNumber =
prot [ "put_IncludeChapterNumber" ] = function ( v ) { this . IncludeChapterNumber = v } ; prot . put _HeadingLvl = prot [ "put_HeadingLvl" ] = function ( v ) { this . HeadingLvl = v } ; prot . put _Separator = prot [ "put_Separator" ] = function ( v ) { this . Separator = v } ; prot . put _Additional = prot [ "put_Additional" ] = function ( v ) { this . Additional = v } ; prot . getSeqInstruction = function ( ) { var oComplexField = new CFieldInstructionSEQ ; if ( this . Format ) oComplexField . SetGeneralSwitches ( [ this . Format ] ) ; if ( this . Label ) oComplexField . SetId ( this . getLabelForInstruction ( ) ) ; if ( AscFormat . isRealNumber ( this . HeadingLvl ) ) oComplexField . SetS ( this . HeadingLvl ) ;
return oComplexField } ; prot . getLabelForInstruction = function ( ) { if ( typeof this . Label === "string" ) { var aSplited = this . Label . split ( " " ) ; var sResult = aSplited [ 0 ] ; for ( var nIdx = 1 ; nIdx < aSplited . length ; ++ nIdx ) sResult += "_" + aSplited [ nIdx ] ; return sResult } return "" } ; prot . getSeqInstructionLine = function ( ) { return this . getSeqInstruction ( ) . ToString ( ) } ; prot . updateName = prot [ "updateName" ] = function ( ) { this . Name = "" ; if ( ! this . ExcludeLabel ) if ( typeof this . Label === "string" && this . Label . length > 0 ) this . Name += this . Label + " " ; if ( this . IncludeChapterNumber ) { this . Name +=
"1" ; if ( typeof this . Separator === "string" && this . Separator . length > 0 ) this . Name += this . Separator ; else this . Name += " " } this . Name += AscCommon . IntToNumberFormat ( 1 , this . Format ) } ; function CAscTextToTableProperties ( oSelectedContent ) { this . Rows = 0 ; this . Cols = 0 ; this . AutoFitType = Asc . c _oAscTextToTableAutoFitType . Fixed ; this . FitValue = - 1 ; this . SeparatorType = Asc . c _oAscTextToTableSeparator . Paragraph ; this . Separator = null ; this . Selected = oSelectedContent } CAscTextToTableProperties . prototype . get _Size = function ( ) { return [ this . Rows , this . Cols ] } ;
CAscTextToTableProperties . prototype . put _ColsCount = function ( nCols ) { this . Cols = nCols > 1 ? nCols : 1 ; this . CalculateTableSize ( true ) ; return this . get _Size ( ) } ; CAscTextToTableProperties . prototype . get _ColsCount = function ( ) { return this . Cols } ; CAscTextToTableProperties . prototype . put _RowsCount = function ( nRows ) { this . Rows = nRows > 1 ? nRows : 1 } ; CAscTextToTableProperties . prototype . get _RowsCount = function ( ) { return this . Rows } ; CAscTextToTableProperties . prototype . get _AutoFitType = function ( ) { return this . AutoFitType } ; CAscTextToTableProperties . prototype . put _AutoFitType =
function ( nAutoFitType ) { this . AutoFitType = nAutoFitType } ; CAscTextToTableProperties . prototype . get _Fit = function ( ) { return this . FitValue } ; CAscTextToTableProperties . prototype . put _Fit = function ( val ) { this . FitValue = val } ; CAscTextToTableProperties . prototype . get _SeparatorType = function ( ) { return this . SeparatorType } ; CAscTextToTableProperties . prototype . put _SeparatorType = function ( nSeparatorType ) { this . SeparatorType = nSeparatorType ; this . CalculateTableSize ( ) ; return this . get _Size ( ) } ; CAscTextToTableProperties . prototype . get _Separator =
function ( ) { return this . Separator } ; CAscTextToTableProperties . prototype . put _Separator = function ( nCharCode ) { this . Separator = nCharCode ; return this . put _SeparatorType ( Asc . c _oAscTextToTableSeparator . Symbol ) } ; CAscTextToTableProperties . prototype . CalculateTableSize = function ( isColsFixed ) { var nMaxCols = isColsFixed ? this . Cols : 0 ; var oEngine = new AscCommonWord . CTextToTableEngine ; oEngine . SetCalculateTableSizeMode ( this . SeparatorType , this . Separator , nMaxCols ) ; for ( var nIndex = 0 , nCount = this . Selected . Elements . length ; nIndex <
nCount ; ++ nIndex ) { var oElement = this . Selected . Elements [ nIndex ] . Element ; oElement . CalculateTextToTable ( oEngine ) } var nCols = isColsFixed ? nMaxCols : oEngine . Cols ; var nRows = oEngine . Rows ; this . Cols = nCols > 1 ? nCols : 1 ; this . Rows = nRows > 1 ? nRows : 1 } ; window [ "Asc" ] [ "CAscTextToTableProperties" ] = window [ "Asc" ] . CAscTextToTableProperties = CAscTextToTableProperties ; CAscTextToTableProperties . prototype [ "get_Size" ] = CAscTextToTableProperties . prototype . get _Size ; CAscTextToTableProperties . prototype [ "put_RowsCount" ] = CAscTextToTableProperties . prototype . put _RowsCount ;
CAscTextToTableProperties . prototype [ "get_RowsCount" ] = CAscTextToTableProperties . prototype . get _RowsCount ; CAscTextToTableProperties . prototype [ "put_ColsCount" ] = CAscTextToTableProperties . prototype . put _ColsCount ; CAscTextToTableProperties . prototype [ "get_ColsCount" ] = CAscTextToTableProperties . prototype . get _ColsCount ; CAscTextToTableProperties . prototype [ "get_AutoFitType" ] = CAscTextToTableProperties . prototype . get _AutoFitType ; CAscTextToTableProperties . prototype [ "put_AutoFitType" ] = CAscTextToTableProperties . prototype . put _AutoFitType ;
CAscTextToTableProperties . prototype [ "get_Fit" ] = CAscTextToTableProperties . prototype . get _Fit ; CAscTextToTableProperties . prototype [ "put_Fit" ] = CAscTextToTableProperties . prototype . put _Fit ; CAscTextToTableProperties . prototype [ "get_SeparatorType" ] = CAscTextToTableProperties . prototype . get _SeparatorType ; CAscTextToTableProperties . prototype [ "put_SeparatorType" ] = CAscTextToTableProperties . prototype . put _SeparatorType ; CAscTextToTableProperties . prototype [ "get_Separator" ] = CAscTextToTableProperties . prototype . get _Separator ;
CAscTextToTableProperties . prototype [ "put_Separator" ] = CAscTextToTableProperties . prototype . put _Separator } ) ( window , undefined ) ; "use strict" ; var editor ;
( function ( window , undefined ) { var asc = window [ "Asc" ] ; var prot ; var c _oAscAdvancedOptionsAction = AscCommon . c _oAscAdvancedOptionsAction ; var c _oAscLockTypes = AscCommon . c _oAscLockTypes ; var CColor = AscCommon . CColor ; var g _oDocumentUrls = AscCommon . g _oDocumentUrls ; var sendCommand = AscCommon . sendCommand ; var parserHelp = AscCommon . parserHelp ; var g _oIdCounter = AscCommon . g _oIdCounter ; var g _oTableId = AscCommon . g _oTableId ; var c _oAscLockTypeElem = AscCommonExcel . c _oAscLockTypeElem ; 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 History = null ; function spreadsheet _api ( config ) { AscCommon . baseEditorsApi . call ( this , config , AscCommon . c _oEditorId . Spreadsheet ) ; this . topLineEditorName = config [ "id-input" ] || "" ; this . topLineEditorElement = null ; this . controller = null ; this . handlers = new AscCommonExcel . asc _CHandlersList ; this . fontRenderingMode = Asc . c _oAscFontRenderingModeType . hintingAndSubpixeling ;
this . wb = null ; this . wbModel = null ; this . tmpLCID = null ; this . tmpDecimalSeparator = null ; this . tmpGroupSeparator = null ; this . tmpLocalization = null ; this . defaultLanguage = 1033 ; this . spellcheckState = new AscCommonExcel . CSpellcheckState ; this . documentFormatSave = c _oAscFileType . XLSX ; this . _gui _control _colors = null ; this . GuiControlColorsMap = null ; this . IsSendStandartColors = false ; this . asyncMethodCallback = undefined ; this . FontLoadWaitComplete = false ; this . oRedoObjectParamNative = null ; this . collaborativeEditing = null ; this . autoSaveGapRealTime =
30 ; this . isStartAddShape = false ; this . shapeElementId = null ; this . textArtElementId = null ; this . frozenPaneBorderType = Asc . c _oAscFrozenPaneBorderType . shadow ; this . styleThumbnailWidth = 112 ; this . styleThumbnailHeight = 40 ; this . formulasList = null ; this . openingEnd = { bin : false , xlsxStart : false , xlsx : false , data : null } ; this . tmpR1C1mode = null ; this . insertDocumentUrlsData = null ; if ( window . editor == undefined ) window . editorCell = this ; this . _init ( ) ; return this } spreadsheet _api . prototype = Object . create ( AscCommon . baseEditorsApi . prototype ) ; spreadsheet _api . prototype . constructor =
spreadsheet _api ; spreadsheet _api . prototype . sendEvent = function ( ) { this . sendInternalEvent . apply ( this , arguments ) ; this . handlers . trigger . apply ( this . handlers , arguments ) } ; spreadsheet _api . prototype . _init = function ( ) { AscCommon . baseEditorsApi . prototype . _init . call ( this ) ; this . topLineEditorElement = document . getElementById ( this . topLineEditorName ) ; asc [ "editor" ] = asc [ "editor" ] || this } ; spreadsheet _api . prototype . _loadSdkImages = function ( ) { var aImages = AscCommonExcel . getIconsForLoad ( ) ; aImages . push ( AscCommonExcel . sFrozenImageUrl ,
AscCommonExcel . sFrozenImageRotUrl ) ; this . ImageLoader . bIsAsyncLoadDocumentImages = false ; this . ImageLoader . LoadDocumentImages ( aImages ) ; this . ImageLoader . bIsAsyncLoadDocumentImages = true } ; spreadsheet _api . prototype . asc _CheckGuiControlColors = function ( ) { var arr _colors = new Array ( 10 ) ; var _count = arr _colors . length ; for ( var i = 0 ; i < _count ; ++ i ) { var color = AscCommonExcel . g _oColorManager . getThemeColor ( i ) ; arr _colors [ i ] = new CColor ( color . getR ( ) , color . getG ( ) , color . getB ( ) ) } var bIsSend = false ; if ( this . GuiControlColorsMap != null ) for ( var i =
0 ; i < _count ; ++ i ) { var _color1 = this . GuiControlColorsMap [ i ] ; var _color2 = arr _colors [ i ] ; if ( _color1 . r !== _color2 . r || _color1 . g !== _color2 . g || _color1 . b !== _color2 . b ) { bIsSend = true ; break } } else { this . GuiControlColorsMap = new Array ( _count ) ; bIsSend = true } if ( bIsSend ) { for ( var i = 0 ; i < _count ; ++ i ) this . GuiControlColorsMap [ i ] = arr _colors [ i ] ; this . asc _SendControlColors ( ) } } ; spreadsheet _api . prototype . asc _SendControlColors = function ( ) { var standart _colors = null ; if ( ! this . IsSendStandartColors ) { var standartColors = AscCommon . g _oStandartColors ;
var _c _s = standartColors . length ; standart _colors = new Array ( _c _s ) ; for ( var i = 0 ; i < _c _s ; ++ i ) standart _colors [ i ] = new CColor ( standartColors [ i ] . R , standartColors [ i ] . G , standartColors [ i ] . B ) ; this . IsSendStandartColors = true } var _count = this . GuiControlColorsMap . length ; var _ret _array = new Array ( _count * 6 ) ; var _cur _index = 0 ; for ( var i = 0 ; i < _count ; ++ i ) { var basecolor = AscCommonExcel . g _oColorManager . getThemeColor ( i ) ; var aTints = AscCommonExcel . g _oThemeColorsDefaultModsSpreadsheet [ AscCommon . GetDefaultColorModsIndex ( basecolor . getR ( ) ,
basecolor . getG ( ) , basecolor . getB ( ) ) ] ; for ( var j = 0 , length = aTints . length ; j < length ; ++ j ) { var tint = aTints [ j ] ; var color = AscCommonExcel . g _oColorManager . getThemeColor ( i , tint ) ; _ret _array [ _cur _index ] = new CColor ( color . getR ( ) , color . getG ( ) , color . getB ( ) ) ; _cur _index ++ } } this . asc _SendThemeColors ( _ret _array , standart _colors ) } ; spreadsheet _api . prototype . asc _getFunctionArgumentSeparator = function ( ) { return AscCommon . FormulaSeparators . functionArgumentSeparator } ; spreadsheet _api . prototype . asc _getCurrencySymbols = function ( ) { var result =
{ } ; for ( var key in AscCommon . g _aCultureInfos ) result [ key ] = AscCommon . g _aCultureInfos [ key ] . CurrencySymbol ; return result } ; spreadsheet _api . prototype . asc _getLocaleExample = function ( format , value , culture ) { var cultureInfo = AscCommon . g _aCultureInfos [ culture ] || AscCommon . g _oDefaultCultureInfo ; var numFormat = AscCommon . oNumFormatCache . get ( format ) ; var res ; if ( null == value ) { var ws = this . wbModel . getActiveWs ( ) ; var activeCell = ws . selectionRange . activeCell ; ws . _getCellNoEmpty ( activeCell . row , activeCell . col , function ( cell ) { if ( cell ) res =
cell . getValueForExample ( numFormat , cultureInfo ) ; else res = "" } ) } else res = numFormat . formatToChart ( value , undefined , cultureInfo ) ; return res } ; spreadsheet _api . prototype . asc _convertNumFormatLocal2NumFormat = function ( format ) { var oFormat = new AscCommon . CellFormat ( format , undefined , true ) ; return oFormat . toString ( 0 , false ) } ; spreadsheet _api . prototype . asc _convertNumFormat2NumFormatLocal = function ( format ) { var oFormat = new AscCommon . CellFormat ( format , undefined , false ) ; return oFormat . toString ( 0 , true ) } ; spreadsheet _api . prototype . asc _getFormatCells =
function ( info ) { var res = AscCommon . getFormatCells ( info ) ; if ( Asc . c _oAscNumFormatType . Custom === info . type ) { var unique = { } ; res . forEach ( function ( elem ) { unique [ elem ] = 1 } ) ; var wbNums = AscCommonExcel . g _StyleCache . getNumFormatStrings ( ) ; wbNums . forEach ( function ( elem ) { if ( ! unique [ elem ] ) { unique [ elem ] = 1 ; res . push ( elem ) } } ) } return res } ; spreadsheet _api . prototype . asc _getLocaleCurrency = function ( val ) { var cultureInfo = AscCommon . g _aCultureInfos [ val ] ; if ( ! cultureInfo ) cultureInfo = AscCommon . g _aCultureInfos [ 1033 ] ; return AscCommonExcel . getCurrencyFormat ( cultureInfo ,
2 , true , true ) } ; spreadsheet _api . prototype . asc _getCurrentListType = function ( ) { var ws = this . wb . getWorksheet ( ) ; var oParaPr ; if ( ws && ws . objectRender && ws . objectRender . controller ) oParaPr = ws . objectRender . controller . getParagraphParaPr ( ) ; return new AscCommon . asc _CListType ( AscFormat . fGetListTypeFromBullet ( oParaPr && oParaPr . Bullet ) ) } ; spreadsheet _api . prototype . asc _setLocale = function ( LCID , decimalSeparator , groupSeparator ) { if ( ! this . isLoadFullApi ) { this . tmpLCID = LCID ; this . tmpDecimalSeparator = decimalSeparator ; this . tmpGroupSeparator =
groupSeparator ; return } if ( AscCommon . setCurrentCultureInfo ( LCID , decimalSeparator , groupSeparator ) ) { parserHelp . setDigitSeparator ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ; if ( this . wbModel ) { AscCommon . oGeneralEditFormatCache . cleanCache ( ) ; AscCommon . oNumFormatCache . cleanCache ( ) ; this . wbModel . rebuildColors ( ) ; if ( this . isDocumentLoadComplete ) { AscCommon . checkCultureInfoFontPicker ( ) ; this . _loadFonts ( [ ] , function ( ) { this . _onUpdateAfterApplyChanges ( ) } ) } } } } ; spreadsheet _api . prototype . asc _getLocale = function ( ) { return this . isLoadFullApi ?
AscCommon . g _oDefaultCultureInfo . LCID : this . tmpLCID } ; spreadsheet _api . prototype . asc _getDecimalSeparator = function ( culture ) { var cultureInfo = AscCommon . g _aCultureInfos [ culture ] || AscCommon . g _oDefaultCultureInfo ; return cultureInfo . NumberDecimalSeparator } ; spreadsheet _api . prototype . asc _getGroupSeparator = function ( culture ) { var cultureInfo = AscCommon . g _aCultureInfos [ culture ] || AscCommon . g _oDefaultCultureInfo ; return cultureInfo . NumberGroupSeparator } ; spreadsheet _api . prototype . asc _getFrozenPaneBorderType = function ( ) { return this . frozenPaneBorderType } ;
spreadsheet _api . prototype . asc _setFrozenPaneBorderType = function ( nType ) { if ( this . frozenPaneBorderType !== nType ) { this . frozenPaneBorderType = nType ; if ( this . wbModel ) this . asc _showWorksheet ( this . asc _getActiveWorksheetIndex ( ) ) } } ; spreadsheet _api . prototype . _openDocument = function ( data ) { this . wbModel = new AscCommonExcel . Workbook ( this . handlers , this ) ; this . initGlobalObjects ( this . wbModel ) ; AscFonts . IsCheckSymbols = true ; var oBinaryFileReader = new AscCommonExcel . BinaryFileReader ; oBinaryFileReader . Read ( data , this . wbModel ) ; AscFonts . IsCheckSymbols =
false ; this . openingEnd . bin = true ; this . _onEndOpen ( ) } ; spreadsheet _api . prototype . initGlobalObjectsNamedSheetView = function ( wbModel ) { } ; spreadsheet _api . prototype . initGlobalObjects = function ( wbModel ) { History . init ( wbModel ) ; AscCommonExcel . g _oUndoRedoCell = new AscCommonExcel . UndoRedoCell ( wbModel ) ; AscCommonExcel . g _oUndoRedoWorksheet = new AscCommonExcel . UndoRedoWoorksheet ( wbModel ) ; AscCommonExcel . g _oUndoRedoWorkbook = new AscCommonExcel . UndoRedoWorkbook ( wbModel ) ; AscCommonExcel . g _oUndoRedoCol = new AscCommonExcel . UndoRedoRowCol ( wbModel ,
false ) ; AscCommonExcel . g _oUndoRedoRow = new AscCommonExcel . UndoRedoRowCol ( wbModel , true ) ; AscCommonExcel . g _oUndoRedoComment = new AscCommonExcel . UndoRedoComment ( wbModel ) ; AscCommonExcel . g _oUndoRedoAutoFilters = new AscCommonExcel . UndoRedoAutoFilters ( wbModel ) ; AscCommonExcel . g _oUndoRedoSparklines = new AscCommonExcel . UndoRedoSparklines ( wbModel ) ; AscCommonExcel . g _DefNameWorksheet = new AscCommonExcel . Worksheet ( wbModel , - 1 ) ; AscCommonExcel . g _oUndoRedoSharedFormula = new AscCommonExcel . UndoRedoSharedFormula ( wbModel ) ; AscCommonExcel . g _oUndoRedoLayout =
new AscCommonExcel . UndoRedoRedoLayout ( wbModel ) ; AscCommonExcel . g _oUndoRedoHeaderFooter = new AscCommonExcel . UndoRedoHeaderFooter ( wbModel ) ; AscCommonExcel . g _oUndoRedoArrayFormula = new AscCommonExcel . UndoRedoArrayFormula ( wbModel ) ; AscCommonExcel . g _oUndoRedoSortState = new AscCommonExcel . UndoRedoSortState ( wbModel ) ; AscCommonExcel . g _oUndoRedoSlicer = new AscCommonExcel . UndoRedoSlicer ( wbModel ) ; AscCommonExcel . g _oUndoRedoPivotTables = new AscCommonExcel . UndoRedoPivotTables ( wbModel ) ; AscCommonExcel . g _oUndoRedoPivotFields =
new AscCommonExcel . UndoRedoPivotFields ( wbModel ) ; AscCommonExcel . g _oUndoRedoCF = new AscCommonExcel . UndoRedoCF ( wbModel ) ; this . initGlobalObjectsNamedSheetView ( wbModel ) } ; spreadsheet _api . prototype . asc _DownloadAs = function ( options ) { if ( ! this . canSave || this . isChartEditor || c _oAscAdvancedOptionsAction . None !== this . advancedOptionsAction ) return ; this . downloadAs ( c _oAscAsyncAction . DownloadAs , options ) } ; spreadsheet _api . prototype . _saveCheck = function ( ) { return ! this . isChartEditor && c _oAscAdvancedOptionsAction . None === this . advancedOptionsAction &&
! this . isLongAction ( ) && ! this . asc _getIsTrackShape ( ) && ! this . isOpenedChartFrame && History . IsEndTransaction ( ) } ; spreadsheet _api . prototype . _haveOtherChanges = function ( ) { return this . collaborativeEditing . haveOtherChanges ( ) } ; spreadsheet _api . prototype . _prepareSave = function ( isIdle ) { var tmpHandlers ; if ( isIdle ) { tmpHandlers = this . wbModel . handlers . handlers [ "asc_onError" ] ; this . wbModel . handlers . handlers [ "asc_onError" ] = null } if ( ! this . asc _closeCellEditor ( ) ) if ( isIdle ) this . asc _closeCellEditor ( true ) ; else return false ; if ( isIdle ) this . wbModel . handlers . handlers [ "asc_onError" ] =
tmpHandlers ; return true } ; spreadsheet _api . prototype . _printDesktop = function ( options ) { window . AscDesktopEditor _PrintOptions = options ; window [ "AscDesktopEditor" ] [ "Print" ] ( ) ; return true } ; spreadsheet _api . prototype . asc _ChangePrintArea = function ( type ) { var ws = this . wb . getWorksheet ( ) ; return ws . changePrintArea ( type ) } ; spreadsheet _api . prototype . asc _CanAddPrintArea = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . canAddPrintArea ( ) } ; spreadsheet _api . prototype . asc _SetPrintScale = function ( width , height , scale ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . setPrintScale ( width , height , scale ) } ; spreadsheet _api . prototype . asc _Copy = function ( ) { if ( window [ "AscDesktopEditor" ] ) { window [ "asc_desktop_copypaste" ] ( this , "Copy" ) ; return true } return AscCommon . g _clipboardBase . Button _Copy ( ) } ; spreadsheet _api . prototype . asc _Paste = function ( ) { if ( window [ "AscDesktopEditor" ] ) { window [ "asc_desktop_copypaste" ] ( this , "Paste" ) ; return true } if ( ! AscCommon . g _clipboardBase . IsWorking ( ) ) return AscCommon . g _clipboardBase . Button _Paste ( ) ;
return false } ; spreadsheet _api . prototype . asc _SpecialPaste = function ( props ) { return AscCommon . g _specialPasteHelper . Special _Paste ( props ) } ; spreadsheet _api . prototype . asc _SpecialPasteData = function ( props ) { if ( this . canEdit ( ) ) this . wb . specialPasteData ( props ) } ; spreadsheet _api . prototype . asc _TextImport = function ( options , callback , bPaste ) { if ( this . canEdit ( ) ) { var text ; if ( bPaste ) text = AscCommon . g _specialPasteHelper . GetPastedData ( true ) ; else { var ws = this . wb . getWorksheet ( ) ; text = ws . getRangeText ( ) } if ( ! text ) { this . sendEvent ( "asc_onError" ,
c _oAscError . ID . NoDataToParse , c _oAscError . Level . NoCritical ) ; callback ( false ) ; return } callback ( AscCommon . parseText ( text , options , true ) ) } } ; spreadsheet _api . prototype . asc _TextFromFileOrUrl = function ( options , callback , url ) { if ( this . canEdit ( ) ) if ( url ) this . _getTextFromUrl ( url , options , callback ) ; else this . _getTextFromFile ( options , callback ) } ; spreadsheet _api . prototype . _getTextFromUrl = function ( url , options , callback ) { if ( this . canEdit ( ) ) { var document = { url : url , format : "TXT" } ; this . insertDocumentUrlsData = { imageMap : null , documents : [ document ] ,
convertCallback : function ( _api , url ) { _api . insertDocumentUrlsData . imageMap = url ; if ( ! url [ "output.txt" ] ) { _api . endInsertDocumentUrls ( ) ; _api . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . DirectUrl , Asc . c _oAscError . Level . NoCritical ) ; return } if ( typeof Blob !== "undefined" && typeof FileReader !== "undefined" ) AscCommon . getJSZipUtils ( ) . getBinaryContent ( url [ "output.txt" ] , function ( err , data ) { var cp = { "codepage" : AscCommon . c _oAscCodePageUtf8 , "delimiter" : AscCommon . c _oAscCsvDelimiter . Comma , "encodings" : AscCommon . getEncodingParams ( ) } ;
if ( err ) t . handlers . trigger ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) ; else { var dataUint = new Uint8Array ( data ) ; var bom = AscCommon . getEncodingByBOM ( dataUint ) ; if ( AscCommon . c _oAscCodePageNone !== bom . encoding ) { cp [ "codepage" ] = bom . encoding ; data = dataUint . subarray ( bom . size ) } cp [ "data" ] = data ; callback ( new AscCommon . asc _CAdvancedOptions ( cp ) ) } _api . endInsertDocumentUrls ( ) } ) } , endCallback : function ( _api ) { } } ; var _options = new Asc . asc _CDownloadOptions ( Asc . c _oAscFileType . TXT ) ; _options . isNaturalDownload =
true ; _options . isGetTextFromUrl = true ; this . asc _DownloadAs ( _options ) } } ; spreadsheet _api . prototype . _getTextFromFile = function ( options , callback ) { var t = this ; function wrapper _callback ( data ) { var cp = { "codepage" : AscCommon . c _oAscCodePageUtf8 , "delimiter" : AscCommon . c _oAscCsvDelimiter . Comma , "encodings" : AscCommon . getEncodingParams ( ) , "data" : data } ; callback ( new AscCommon . asc _CAdvancedOptions ( cp ) ) } if ( window [ "AscDesktopEditor" ] ) { window [ "AscDesktopEditor" ] [ "OpenFilenameDialog" ] ( "All supported files (*.txt *.csv);;Txt File (*.txt);;Csv File(*.csv);;All files (*.*)" ,
false , function ( _file ) { var file = _file ; if ( Array . isArray ( file ) ) file = file [ 0 ] ; if ( ! file ) return ; window [ "AscDesktopEditor" ] [ "loadLocalFile" ] ( file , function ( uint8Array ) { if ( ! uint8Array ) return ; wrapper _callback ( uint8Array ) } ) } ) ; return } AscCommon . ShowTextFileDialog ( function ( error , files ) { if ( Asc . c _oAscError . ID . No !== error ) { t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ; return } var reader = new FileReader ; reader . onload = function ( ) { wrapper _callback ( reader . result ) } ; reader . onerror = function ( ) { t . sendEvent ( "asc_onError" ,
Asc . c _oAscError . ID . Unknown , Asc . c _oAscError . Level . NoCritical ) } ; reader . readAsArrayBuffer ( files [ 0 ] ) } ) } ; spreadsheet _api . prototype . endInsertDocumentUrls = function ( ) { if ( this . insertDocumentUrlsData ) { this . insertDocumentUrlsData . endCallback ( this ) ; this . insertDocumentUrlsData = null } } ; spreadsheet _api . prototype . asc _TextToColumns = function ( options , opt _text , opt _activeRange ) { if ( this . canEdit ( ) ) { var ws = this . wb . getWorksheet ( ) ; var text = opt _text ? opt _text : ws . getRangeText ( ) ; var specialPasteHelper = window [ "AscCommon" ] . g _specialPasteHelper ;
if ( ! specialPasteHelper . specialPasteProps ) specialPasteHelper . specialPasteProps = new Asc . SpecialPasteProps ; specialPasteHelper . specialPasteProps . property = Asc . c _oSpecialPasteProps . useTextImport ; specialPasteHelper . specialPasteProps . asc _setAdvancedOptions ( options ) ; if ( opt _text && opt _text . length > 1 && opt _text [ opt _text . length - 1 ] && opt _text [ opt _text . length - 1 ] . length === 1 && opt _text [ opt _text . length - 1 ] [ 0 ] === "" ) opt _text . splice ( opt _text . length - 1 , 1 ) ; var selectionRange ; var activeSheet = null ; if ( opt _activeRange ) { var is3dRef =
parserHelp . parse3DRef ( opt _activeRange ) ; var range , sheetModel ; if ( is3dRef ) { sheetModel = this . wb . model . getWorksheetByName ( is3dRef . sheet ) ; if ( sheetModel ) range = AscCommonExcel . g _oRangeCache . getAscRange ( is3dRef . range ) } else range = AscCommonExcel . g _oRangeCache . getAscRange ( opt _activeRange ) ; if ( sheetModel && sheetModel !== ws . model ) { activeSheet = sheetModel ; this . wb . model . nActive = sheetModel . index } if ( range ) if ( activeSheet ) { selectionRange = activeSheet . selectionRange . clone ( ) ; activeSheet . selectionRange . ranges = [ range . clone ( ) ] } else { selectionRange =
ws . model . selectionRange . clone ( ) ; ws . model . selectionRange . ranges = [ range . clone ( ) ] } } this . wb . pasteData ( AscCommon . c _oAscClipboardDataFormat . Text , text , null , null , true ) ; if ( selectionRange ) if ( activeSheet !== null ) { activeSheet . selectionRange = selectionRange ; this . wb . model . nActive = ws . model . index ; ws . draw ( ) } else { ws . cleanSelection ( ) ; ws . model . selectionRange = selectionRange ; ws . _drawSelection ( ) } } } ; spreadsheet _api . prototype . asc _ShowSpecialPasteButton = function ( props ) { if ( this . canEdit ( ) ) this . wb . showSpecialPasteButton ( props ) } ;
spreadsheet _api . prototype . asc _UpdateSpecialPasteButton = function ( props ) { if ( this . canEdit ( ) ) this . wb . updateSpecialPasteButton ( props ) } ; spreadsheet _api . prototype . asc _HideSpecialPasteButton = function ( ) { if ( this . canEdit ( ) ) this . wb . hideSpecialPasteButton ( ) } ; spreadsheet _api . prototype . asc _Cut = function ( ) { if ( window [ "AscDesktopEditor" ] ) { window [ "asc_desktop_copypaste" ] ( this , "Cut" ) ; return true } return AscCommon . g _clipboardBase . Button _Cut ( ) } ; spreadsheet _api . prototype . asc _PasteData = function ( _format , data1 , data2 , text _data ) { if ( this . canEdit ( ) ) this . wb . pasteData ( _format ,
data1 , data2 , text _data , arguments [ 5 ] ) } ; spreadsheet _api . prototype . asc _CheckCopy = function ( _clipboard , _formats ) { return this . wb . checkCopyToClipboard ( _clipboard , _formats ) } ; spreadsheet _api . prototype . asc _SelectionCut = function ( ) { if ( this . canEdit ( ) ) this . wb . selectionCut ( ) } ; spreadsheet _api . prototype . asc _bIsEmptyClipboard = function ( ) { var result = this . wb . bIsEmptyClipboard ( ) ; this . wb . restoreFocus ( ) ; return result } ; spreadsheet _api . prototype . asc _Undo = function ( ) { this . wb . undo ( ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _Redo =
function ( ) { this . wb . redo ( ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _Resize = function ( ) { var oldScale = AscCommon . AscBrowser . retinaPixelRatio ; AscCommon . AscBrowser . checkZoom ( ) ; if ( this . wb ) { if ( Math . abs ( oldScale - AscCommon . AscBrowser . retinaPixelRatio ) > . 001 ) { this . wb . changeZoom ( null ) ; this . _sendWorkbookStyles ( ) } this . wb . resize ( ) ; if ( AscCommon . g _inputContext ) AscCommon . g _inputContext . onResize ( "ws-canvas-outer" ) } } ; spreadsheet _api . prototype . asc _addAutoFilter = function ( styleName , addFormatTableOptionsObj ) { var ws =
this . wb . getWorksheet ( ) ; return ws . addAutoFilter ( styleName , addFormatTableOptionsObj ) } ; spreadsheet _api . prototype . asc _changeAutoFilter = function ( tableName , optionType , val ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . changeAutoFilter ( tableName , optionType , val ) } ; spreadsheet _api . prototype . asc _applyAutoFilter = function ( autoFilterObject ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ;
ws . applyAutoFilter ( autoFilterObject ) } ; spreadsheet _api . prototype . asc _applyAutoFilterByType = function ( autoFilterObject ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . applyAutoFilterByType ( autoFilterObject ) } ; spreadsheet _api . prototype . asc _reapplyAutoFilter = function ( displayName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . reapplyAutoFilter ( displayName ) } ; spreadsheet _api . prototype . asc _sortColFilter =
function ( type , cellId , displayName , color , bIsExpandRange ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . sortRange ( type , cellId , displayName , color , bIsExpandRange ) } ; spreadsheet _api . prototype . asc _getAddFormatTableOptions = function ( range ) { var ws = this . wb . getWorksheet ( ) ; return ws . getAddFormatTableOptions ( range ) } ; spreadsheet _api . prototype . asc _clearFilter = function ( ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ;
return ws . clearFilter ( ) } ; spreadsheet _api . prototype . asc _clearFilterColumn = function ( cellId , displayName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . clearFilterColumn ( cellId , displayName ) } ; spreadsheet _api . prototype . asc _changeSelectionFormatTable = function ( tableName , optionType ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . changeTableSelection ( tableName , optionType ) } ;
spreadsheet _api . prototype . asc _changeFormatTableInfo = function ( tableName , optionType , val ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; return this . wb . changeFormatTableInfo ( tableName , optionType , val ) } ; spreadsheet _api . prototype . asc _applyAutoCorrectOptions = function ( val ) { this . wb . applyAutoCorrectOptions ( val ) } ; spreadsheet _api . prototype . asc _insertCellsInTable = function ( tableName , optionType ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ;
return ws . af _insertCellsInTable ( tableName , optionType ) } ; spreadsheet _api . prototype . asc _deleteCellsInTable = function ( tableName , optionType ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _deleteCellsInTable ( tableName , optionType ) } ; spreadsheet _api . prototype . asc _changeDisplayNameTable = function ( tableName , newName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _changeDisplayNameTable ( tableName ,
newName ) } ; spreadsheet _api . prototype . asc _changeTableRange = function ( tableName , range ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _changeTableRange ( tableName , range ) } ; spreadsheet _api . prototype . asc _convertTableToRange = function ( tableName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _convertTableToRange ( tableName ) } ; spreadsheet _api . prototype . asc _getTablePictures =
function ( props , pivot ) { return this . wb . getTableStyles ( props , pivot ) } ; spreadsheet _api . prototype . asc _getSlicerPictures = function ( ) { return this . wb . getSlicerStyles ( ) } ; spreadsheet _api . prototype . asc _setViewMode = function ( isViewMode ) { this . isViewMode = ! ! isViewMode ; if ( ! this . isLoadFullApi ) return ; if ( this . collaborativeEditing ) this . collaborativeEditing . setViewerMode ( isViewMode ) } ; spreadsheet _api . prototype . asc _setFilteringMode = function ( mode ) { window [ "AscCommonExcel" ] . filteringMode = ! ! mode } ; spreadsheet _api . prototype . asc _setAdvancedOptions =
function ( idOption , option ) { if ( this . advancedOptionsAction !== c _oAscAdvancedOptionsAction . Open ) return ; if ( AscCommon . EncryptionWorker . asc _setAdvancedOptions ( this , idOption , option ) ) return ; var v ; switch ( idOption ) { case c _oAscAdvancedOptionsID . CSV : v = { "id" : this . documentId , "userid" : this . documentUserId , "format" : this . documentFormat , "c" : "reopen" , "title" : this . documentTitle , "delimiter" : option . asc _getDelimiter ( ) , "delimiterChar" : option . asc _getDelimiterChar ( ) , "codepage" : option . asc _getCodePage ( ) , "nobase64" : true } ; sendCommand ( this ,
null , v ) ; break ; case c _oAscAdvancedOptionsID . DRM : this . currentPassword = option . asc _getPassword ( ) ; v = { "id" : this . documentId , "userid" : this . documentUserId , "format" : this . documentFormat , "c" : "reopen" , "title" : this . documentTitle , "password" : option . asc _getPassword ( ) , "nobase64" : true } ; sendCommand ( this , null , v ) ; break } } ; spreadsheet _api . prototype . asc _setPageOptions = function ( options , index ) { var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; this . wb . getWorksheet ( sheetIndex ) . setPageOptions ( options ) } ;
spreadsheet _api . prototype . asc _savePagePrintOptions = function ( arrPagesPrint ) { this . wb . savePagePrintOptions ( arrPagesPrint ) } ; spreadsheet _api . prototype . asc _getPageOptions = function ( index , initPrintTitles ) { var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wbModel . getWorksheet ( sheetIndex ) ; if ( initPrintTitles && ws . PagePrintOptions ) ws . PagePrintOptions . initPrintTitles ( ) ; return ws . PagePrintOptions } ; spreadsheet _api . prototype . asc _setPageOption = function ( func , val , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . setPageOption ( func , val ) } ; spreadsheet _api . prototype . asc _changeDocSize = function ( width , height , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . changeDocSize ( width , height ) } ; spreadsheet _api . prototype . asc _changePageMargins =
function ( left , right , top , bottom , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . changePageMargins ( left , right , top , bottom ) } ; spreadsheet _api . prototype . asc _changePageOrient = function ( isPortrait , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ;
var ws = this . wb . getWorksheet ( sheetIndex ) ; if ( isPortrait ) ws . changePageOrient ( Asc . c _oAscPageOrientation . PagePortrait ) ; else ws . changePageOrient ( Asc . c _oAscPageOrientation . PageLandscape ) } ; spreadsheet _api . prototype . asc _changePrintTitles = function ( cols , rows , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . changePrintTitles ( cols , rows ) } ; spreadsheet _api . prototype . asc _getPrintTitlesRange =
function ( prop , byHeight , index ) { var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; return ws . getPrintTitlesRange ( prop , byHeight ) } ; spreadsheet _api . prototype . _onNeedParams = function ( data , opt _isPassword ) { var t = this ; if ( this . documentOpenOptions && ! opt _isPassword ) { var codePageCsv = AscCommon . c _oAscEncodingsMap [ this . documentOpenOptions [ "codePage" ] ] || AscCommon . c _oAscCodePageUtf8 , delimiterCsv = this . documentOpenOptions [ "delimiter" ] , delimiterCharCsv =
this . documentOpenOptions [ "delimiterChar" ] ; if ( null != codePageCsv && ( null != delimiterCsv || null != delimiterCharCsv ) ) { this . asc _setAdvancedOptions ( c _oAscAdvancedOptionsID . CSV , new asc . asc _CTextOptions ( codePageCsv , delimiterCsv , delimiterCharCsv ) ) ; return } } if ( opt _isPassword ) if ( t . handlers . hasTrigger ( "asc_onAdvancedOptions" ) ) { asc [ "editor" ] . sendEvent ( "asc_onDocumentPassword" , true ) ; t . handlers . trigger ( "asc_onAdvancedOptions" , c _oAscAdvancedOptionsID . DRM ) } else t . handlers . trigger ( "asc_onError" , c _oAscError . ID . ConvertationPassword ,
c _oAscError . Level . Critical ) ; else if ( t . handlers . hasTrigger ( "asc_onAdvancedOptions" ) ) { var cp = { "codepage" : AscCommon . c _oAscCodePageUtf8 , "delimiter" : AscCommon . c _oAscCsvDelimiter . Comma , "encodings" : AscCommon . getEncodingParams ( ) } ; if ( data && typeof Blob !== "undefined" && typeof FileReader !== "undefined" ) AscCommon . getJSZipUtils ( ) . getBinaryContent ( data , function ( err , data ) { if ( err ) t . handlers . trigger ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) ; else { var dataUint = new Uint8Array ( data ) ; var bom = AscCommon . getEncodingByBOM ( dataUint ) ;
if ( AscCommon . c _oAscCodePageNone !== bom . encoding ) { cp [ "codepage" ] = bom . encoding ; data = dataUint . subarray ( bom . size ) } cp [ "data" ] = data ; t . handlers . trigger ( "asc_onAdvancedOptions" , c _oAscAdvancedOptionsID . CSV , new AscCommon . asc _CAdvancedOptions ( cp ) ) } } ) ; else t . handlers . trigger ( "asc_onAdvancedOptions" , c _oAscAdvancedOptionsID . CSV , new AscCommon . asc _CAdvancedOptions ( cp ) ) } else this . asc _setAdvancedOptions ( c _oAscAdvancedOptionsID . CSV , new asc . asc _CTextOptions ( AscCommon . c _oAscCodePageUtf8 , AscCommon . c _oAscCsvDelimiter . Comma ) ) } ;
spreadsheet _api . prototype . _onEndOpen = function ( ) { var t = this ; if ( this . openingEnd . bin && this . openingEnd . xlsx ) this . openDocumentFromZip ( t . wbModel , this . openingEnd . data ) . then ( function ( ) { g _oIdCounter . Set _Load ( false ) ; AscCommon . checkCultureInfoFontPicker ( ) ; AscCommonExcel . checkStylesNames ( t . wbModel . CellStyles ) ; t . FontLoader . LoadDocumentFonts ( t . wbModel . generateFontMap2 ( ) ) ; if ( t . isMobileVersion ) { AscCommon . AscBrowser . isSafariMacOs = false ; AscCommon . PasteElementsId . PASTE _ELEMENT _ID = "wrd_pastebin" ; AscCommon . PasteElementsId . ELEMENT _DISPAY _STYLE =
"none" } } ) . catch ( function ( err ) { if ( window . console && window . console . log ) window . console . log ( err ) ; t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) } ) } ; spreadsheet _api . prototype . _openOnClient = function ( ) { var t = this ; if ( this . openingEnd . xlsxStart ) return ; this . openingEnd . xlsxStart = true ; var url = AscCommon . g _oDocumentUrls . getUrl ( "Editor.xlsx" ) ; if ( url ) AscCommon . getJSZipUtils ( ) . getBinaryContent ( url , function ( err , data ) { if ( err ) { if ( window . console && window . console . log ) window . console . log ( err ) ; t . sendEvent ( "asc_onError" ,
c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) } else { t . openingEnd . xlsx = true ; t . openingEnd . data = data ; t . _onEndOpen ( ) } } ) ; else { t . openingEnd . xlsx = true ; t . _onEndOpen ( ) } } ; spreadsheet _api . prototype . _downloadAs = function ( actionType , options , oAdditionalData , dataContainer ) { var fileType = options . fileType ; if ( c _oAscFileType . PDF === fileType || c _oAscFileType . PDFA === fileType ) { var printPagesData = this . wb . calcPagesPrint ( options . advancedOptions ) ; var pdfPrinterMemory = this . wb . printSheets ( printPagesData ) . DocumentRenderer . Memory ;
dataContainer . data = oAdditionalData [ "nobase64" ] ? pdfPrinterMemory . GetData ( ) : pdfPrinterMemory . GetBase64Memory ( ) } else if ( this . insertDocumentUrlsData ) { var last = this . insertDocumentUrlsData . documents . shift ( ) ; oAdditionalData [ "url" ] = last . url ; oAdditionalData [ "format" ] = last . format ; if ( last . token ) { oAdditionalData [ "tokenDownload" ] = last . token ; oAdditionalData [ "tokenSession" ] = undefined } oAdditionalData [ "outputurls" ] = true ; oAdditionalData [ "codepage" ] = AscCommon . c _oAscCodePageUtf8 ; dataContainer . data = last . data } else { var oBinaryFileWriter =
new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; if ( c _oAscFileType . CSV === fileType ) if ( options . advancedOptions instanceof asc . asc _CTextOptions ) { oAdditionalData [ "codepage" ] = options . advancedOptions . asc _getCodePage ( ) ; oAdditionalData [ "delimiter" ] = options . advancedOptions . asc _getDelimiter ( ) ; oAdditionalData [ "delimiterChar" ] = options . advancedOptions . asc _getDelimiterChar ( ) } dataContainer . data = oBinaryFileWriter . Write ( oAdditionalData [ "nobase64" ] ) } if ( window . isCloudCryptoDownloadAs ) { var sParamXml = "<m_nCsvTxtEncoding>" +
oAdditionalData [ "codepage" ] + "</m_nCsvTxtEncoding>" ; sParamXml += "<m_nCsvDelimiter>" + oAdditionalData [ "delimiter" ] + "</m_nCsvDelimiter>" ; window [ "AscDesktopEditor" ] [ "CryptoDownloadAs" ] ( dataContainer . data , fileType , sParamXml ) ; return true } } ; spreadsheet _api . prototype . processSavedFile = function ( url , downloadType ) { if ( this . insertDocumentUrlsData && this . insertDocumentUrlsData . convertCallback ) this . insertDocumentUrlsData . convertCallback ( this , url ) ; else AscCommon . baseEditorsApi . prototype . processSavedFile . call ( this , url ,
downloadType ) } ; spreadsheet _api . prototype . asc _isDocumentModified = function ( ) { if ( ! this . canSave || this . asc _getCellEditMode ( ) ) return true ; else if ( History && History . Have _Changes ) return History . Have _Changes ( ) ; return false } ; spreadsheet _api . prototype . asc _registerCallback = function ( name , callback , replaceOldCallback ) { this . handlers . add ( name , callback , replaceOldCallback ) } ; spreadsheet _api . prototype . asc _unregisterCallback = function ( name , callback ) { this . handlers . remove ( name , callback ) } ; spreadsheet _api . prototype . asc _SetDocumentPlaceChangedEnabled =
function ( val ) { this . wb . setDocumentPlaceChangedEnabled ( val ) } ; spreadsheet _api . prototype . asc _SetFastCollaborative = function ( bFast ) { if ( this . collaborativeEditing ) { if ( window . parent && window . parent . APP && window . parent . APP . onFastChange ) window . parent . APP . onFastChange ( bFast ) ; AscCommon . CollaborativeEditing . Set _Fast ( bFast ) ; this . collaborativeEditing . setFast ( bFast ) } } ; spreadsheet _api . prototype . asc _setThumbnailStylesSizes = function ( width , height ) { this . styleThumbnailWidth = width ; this . styleThumbnailHeight = height } ; spreadsheet _api . prototype . sheetsChanged =
function ( ) { this . handlers . trigger ( "asc_onSheetsChanged" ) } ; spreadsheet _api . prototype . asyncFontsDocumentStartLoaded = function ( blockType ) { this . OpenDocumentProgress . Type = c _oAscAsyncAction . LoadDocumentFonts ; this . OpenDocumentProgress . FontsCount = this . FontLoader . fonts _loading . length ; this . OpenDocumentProgress . CurrentFont = 0 ; this . sync _StartAction ( undefined === blockType ? c _oAscAsyncActionType . BlockInteraction : blockType , c _oAscAsyncAction . LoadDocumentFonts ) } ; spreadsheet _api . prototype . asyncFontsDocumentEndLoaded = function ( blockType ) { this . sync _EndAction ( undefined ===
blockType ? c _oAscAsyncActionType . BlockInteraction : blockType , c _oAscAsyncAction . LoadDocumentFonts ) ; if ( this . asyncMethodCallback !== undefined ) { this . asyncMethodCallback ( ) ; this . asyncMethodCallback = undefined } else { this . FontLoadWaitComplete = true ; this . _openDocumentEndCallback ( ) } } ; spreadsheet _api . prototype . asyncFontEndLoaded = function ( font ) { this . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . LoadFont ) } ; spreadsheet _api . prototype . _loadFonts = function ( fonts , callback ) { if ( window [ "NATIVE_EDITOR_ENJINE" ] ) return callback . call ( this ) ;
this . asyncMethodCallback = callback ; var arrLoadFonts = [ ] ; for ( var i in fonts ) arrLoadFonts . push ( new AscFonts . CFont ( i , 0 , "" , 0 ) ) ; AscFonts . FontPickerByCharacter . extendFonts ( arrLoadFonts ) ; this . FontLoader . LoadDocumentFonts2 ( arrLoadFonts ) } ; spreadsheet _api . prototype . openDocument = function ( file ) { this . _openDocument ( file . data ) ; this . _openOnClient ( ) } ; spreadsheet _api . prototype . openDocumentFromZip = function ( wb , data ) { var t = this ; return new Promise ( function ( resolve , reject ) { var openXml = AscCommon . openXml ; if ( t . isChartEditor ) { resolve ( ) ;
return } var pivotCaches = { } ; var nextPromise ; if ( data ) { var doc = new openXml . OpenXmlPackage ; var wbPart = null ; var wbXml = null ; var jsZipWrapper = new AscCommon . JSZipWrapper ; nextPromise = jsZipWrapper . loadAsync ( data ) . then ( function ( zip ) { return doc . openFromZip ( zip ) } ) . then ( function ( ) { wbPart = doc . getPartByRelationshipType ( openXml . relationshipTypes . workbook ) ; return wbPart . getDocumentContent ( ) } ) . then ( function ( contentWorkbook ) { AscCommonExcel . executeInR1C1Mode ( false , function ( ) { wbXml = new AscCommonExcel . CT _Workbook ; ( new openXml . SaxParserBase ) . parse ( contentWorkbook ,
wbXml ) } ) ; if ( wbXml . pivotCaches ) return wbXml . pivotCaches . reduce ( function ( prevVal , wbPivotCacheXml ) { var pivotTableCacheDefinitionPart ; var pivotTableCacheDefinition ; return prevVal . then ( function ( ) { if ( null !== wbPivotCacheXml . cacheId && null !== wbPivotCacheXml . id ) { pivotTableCacheDefinitionPart = wbPart . getPartById ( wbPivotCacheXml . id ) ; return pivotTableCacheDefinitionPart . getDocumentContent ( ) } } ) . then ( function ( content ) { if ( content ) { AscCommonExcel . executeInR1C1Mode ( false , function ( ) { pivotTableCacheDefinition = new Asc . CT _PivotCacheDefinition ;
( new openXml . SaxParserBase ) . parse ( content , pivotTableCacheDefinition ) } ) ; if ( pivotTableCacheDefinition . isValidCacheSource ( ) ) { pivotCaches [ wbPivotCacheXml . cacheId ] = pivotTableCacheDefinition ; if ( pivotTableCacheDefinition . id ) { var partPivotTableCacheRecords = pivotTableCacheDefinitionPart . getPartById ( pivotTableCacheDefinition . id ) ; return partPivotTableCacheRecords . getDocumentContent ( ) } } } } ) . then ( function ( content ) { if ( content ) AscCommonExcel . executeInR1C1Mode ( false , function ( ) { var pivotTableCacheRecords = new Asc . CT _PivotCacheRecords ;
( new openXml . SaxParserBase ) . parse ( content , pivotTableCacheRecords ) ; pivotTableCacheDefinition . cacheRecords = pivotTableCacheRecords } ) } ) } , Promise . resolve ( ) ) } ) . then ( function ( ) { if ( wbXml . sheets ) { var wsIndex = 0 ; return wbXml . sheets . reduce ( function ( prevVal , wbSheetXml ) { var wsPart ; return prevVal . then ( function ( ) { if ( null !== wbSheetXml . id ) { var actions = [ ] ; wsPart = wbPart . getPartById ( wbSheetXml . id ) ; var pivotParts = wsPart . getPartsByRelationshipType ( openXml . relationshipTypes . pivotTable ) ; for ( var i = 0 ; i < pivotParts . length ; ++ i ) actions . push ( pivotParts [ i ] . getDocumentContent ( ) ) ;
return Promise . all ( actions ) } } ) . then ( function ( res ) { if ( res ) { var ws = t . wbModel . getWorksheet ( wsIndex ) ; for ( var i = 0 ; i < res . length ; ++ i ) { var pivotTable = new Asc . CT _pivotTableDefinition ( true ) ; ( new openXml . SaxParserBase ) . parse ( res [ i ] , pivotTable ) ; var cacheDefinition = pivotCaches [ pivotTable . cacheId ] ; if ( cacheDefinition ) { pivotTable . cacheDefinition = cacheDefinition ; ws . insertPivotTable ( pivotTable ) } } } wsIndex ++ } ) } , Promise . resolve ( ) ) } } ) . catch ( function ( err ) { if ( window . console && window . console . log ) window . console . log ( err ) } ) . then ( function ( ) { wb . initPostOpenZip ( pivotCaches ) } ) . then ( function ( ) { jsZipWrapper . close ( ) } ) } else nextPromise =
Promise . resolve ( ) ; nextPromise . then ( function ( err ) { openXml . SaxParserDataTransfer = { } ; return Asc . ReadDefTableStyles ( wb ) } ) . then ( function ( ) { wb . initPostOpenZip ( pivotCaches ) } ) . then ( resolve , reject ) } ) } ; spreadsheet _api . prototype . syncCollaborativeChanges = function ( ) { if ( ! this . collaborativeEditing . getFast ( ) ) this . handlers . trigger ( "asc_onCollaborativeChanges" ) } ; spreadsheet _api . prototype . _applyFirstLoadChanges = function ( ) { if ( this . isDocumentLoadComplete ) return ; if ( this . collaborativeEditing . applyChanges ( ) ) this . onDocumentContentReady ( ) ;
this . collaborativeEditing . sendChanges ( ) } ; spreadsheet _api . prototype . _goToComment = function ( data ) { var comment = this . wbModel . getComment ( data ) ; if ( comment ) { this . asc _showWorksheet ( this . wbModel . getWorksheetById ( comment . wsId ) . getIndex ( ) ) ; this . asc _selectComment ( comment . nId ) ; this . asc _showComment ( comment . nId ) } } ; spreadsheet _api . prototype . _goToBookmark = function ( data ) { var tmpRestrictions = this . restrictions ; this . restrictions = Asc . c _oAscRestrictionType . View ; var tmpR1C1 = AscCommonExcel . g _R1C1Mode ; AscCommonExcel . g _R1C1Mode =
false ; this . asc _findCell ( data ) ; this . restrictions = tmpRestrictions ; AscCommonExcel . g _R1C1Mode = tmpR1C1 } ; spreadsheet _api . prototype . _coAuthoringInitEnd = function ( ) { var t = this ; this . collaborativeEditing = new AscCommonExcel . CCollaborativeEditing ( { "askLock" : function ( ) { t . CoAuthoringApi . askLock . apply ( t . CoAuthoringApi , arguments ) } , "releaseLocks" : function ( ) { t . CoAuthoringApi . releaseLocks . apply ( t . CoAuthoringApi , arguments ) } , "sendChanges" : function ( ) { t . _onSaveChanges . apply ( t , arguments ) } , "applyChanges" : function ( ) { t . _onApplyChanges . apply ( t ,
arguments ) } , "updateAfterApplyChanges" : function ( ) { t . _onUpdateAfterApplyChanges . apply ( t , arguments ) } , "drawSelection" : function ( ) { t . _onDrawSelection . apply ( t , arguments ) } , "drawFrozenPaneLines" : function ( ) { t . _onDrawFrozenPaneLines . apply ( t , arguments ) } , "updateAllSheetsLock" : function ( ) { t . _onUpdateAllSheetsLock . apply ( t , arguments ) } , "showDrawingObjects" : function ( ) { t . _onShowDrawingObjects . apply ( t , arguments ) } , "showComments" : function ( ) { t . _onShowComments . apply ( t , arguments ) } , "cleanSelection" : function ( ) { t . _onCleanSelection . apply ( t ,
arguments ) } , "updateDocumentCanSave" : function ( ) { t . _onUpdateDocumentCanSave ( ) } , "checkCommentRemoveLock" : function ( lockElem ) { return t . _onCheckCommentRemoveLock ( lockElem ) } , "unlockDefName" : function ( ) { t . _onUnlockDefName . apply ( t , arguments ) } , "checkDefNameLock" : function ( lockElem ) { return t . _onCheckDefNameLock ( lockElem ) } , "updateAllLayoutsLock" : function ( ) { t . _onUpdateAllLayoutsLock . apply ( t , arguments ) } , "updateAllHeaderFooterLock" : function ( ) { t . _onUpdateAllHeaderFooterLock . apply ( t , arguments ) } , "updateAllPrintScaleLock" : function ( ) { t . _onUpdateAllPrintScaleLock . apply ( t ,
arguments ) } , "updateAllSheetViewLock" : function ( ) { if ( t . _onUpdateAllSheetViewLock ) t . _onUpdateAllSheetViewLock . apply ( t , arguments ) } , "unlockCF" : function ( ) { t . _onUnlockCF . apply ( t , arguments ) } , "checkCFRemoveLock" : function ( lockElem ) { return t . _onCheckCFRemoveLock ( lockElem ) } } , this . getViewMode ( ) ) ; this . CoAuthoringApi . onConnectionStateChanged = function ( e ) { t . handlers . trigger ( "asc_onConnectionStateChanged" , e ) } ; this . CoAuthoringApi . onLocksAcquired = function ( e ) { if ( t . _coAuthoringCheckEndOpenDocument ( t . CoAuthoringApi . onLocksAcquired ,
e ) ) return ; if ( 2 != e [ "state" ] ) { var elementValue = e [ "blockValue" ] ; var lockElem = t . collaborativeEditing . getLockByElem ( elementValue , c _oAscLockTypes . kLockTypeOther ) ; if ( null === lockElem ) { lockElem = new AscCommonExcel . CLock ( elementValue ) ; t . collaborativeEditing . addUnlock ( lockElem ) } var drawing , lockType = lockElem . Element [ "type" ] ; var oldType = lockElem . getType ( ) ; if ( c _oAscLockTypes . kLockTypeOther2 === oldType || c _oAscLockTypes . kLockTypeOther3 === oldType ) lockElem . setType ( c _oAscLockTypes . kLockTypeOther3 , true ) ; else lockElem . setType ( c _oAscLockTypes . kLockTypeOther ,
true ) ; lockElem . setUserId ( e [ "user" ] ) ; if ( lockType === c _oAscLockTypeElem . Object ) { drawing = g _oTableId . Get _ById ( lockElem . Element [ "rangeOrObjectId" ] ) ; if ( drawing ) { var bLocked , bLocked2 ; bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = lockElem . Type ; if ( drawing instanceof AscCommon . CCore ) { bLocked2 = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; if ( bLocked2 !== bLocked ) t . sendEvent ( "asc_onLockCore" ,
bLocked2 ) } } } if ( t . wb ) { t . wb . _onWSSelectionChanged ( true ) ; t . _onUpdateSheetsLock ( lockElem ) ; t . _onUpdateDefinedNames ( lockElem ) ; t . _onUpdateLayoutLock ( lockElem ) ; t . _onUpdatePrintAreaLock ( lockElem ) ; t . _onUpdateHeaderFooterLock ( lockElem ) ; t . _onUpdatePrintScaleLock ( lockElem ) ; if ( t . _onUpdateNamedSheetViewLock ) t . _onUpdateNamedSheetViewLock ( lockElem ) ; t . _onUpdateCFLock ( lockElem ) ; var ws = t . wb . getWorksheet ( ) ; var lockSheetId = lockElem . Element [ "sheetId" ] ; if ( lockSheetId === ws . model . getId ( ) ) if ( lockType === c _oAscLockTypeElem . Object ) if ( t . _onUpdateFrozenPane ( lockElem ) ) ws . draw ( ) ;
else { if ( drawing && ws . model === drawing . worksheet ) if ( ws . objectRender ) ws . objectRender . showDrawingObjects ( ) } else { if ( lockType === c _oAscLockTypeElem . Range || lockType === c _oAscLockTypeElem . Sheet ) ws . updateSelection ( ) } else if ( - 1 !== lockSheetId && 0 === lockSheetId . indexOf ( AscCommonExcel . CCellCommentator . sStartCommentId ) ) t . handlers . trigger ( "asc_onLockComment" , lockElem . Element [ "rangeOrObjectId" ] , e [ "user" ] ) } } } ; this . CoAuthoringApi . onLocksReleased = function ( e , bChanges ) { if ( t . _coAuthoringCheckEndOpenDocument ( t . CoAuthoringApi . onLocksReleased ,
e , bChanges ) ) return ; var element = e [ "block" ] ; var lockElem = t . collaborativeEditing . getLockByElem ( element , c _oAscLockTypes . kLockTypeOther ) ; if ( null != lockElem ) { var curType = lockElem . getType ( ) ; var newType = c _oAscLockTypes . kLockTypeNone ; if ( curType === c _oAscLockTypes . kLockTypeOther ) if ( true != bChanges ) newType = c _oAscLockTypes . kLockTypeNone ; else newType = c _oAscLockTypes . kLockTypeOther2 ; else if ( curType === c _oAscLockTypes . kLockTypeMine ) newType = c _oAscLockTypes . kLockTypeMine ; else if ( curType === c _oAscLockTypes . kLockTypeOther2 ||
curType === c _oAscLockTypes . kLockTypeOther3 ) newType = c _oAscLockTypes . kLockTypeOther2 ; if ( t . wb ) t . wb . getWorksheet ( ) . cleanSelection ( ) ; var drawing ; if ( c _oAscLockTypes . kLockTypeNone !== newType ) lockElem . setType ( newType , true ) ; else { t . collaborativeEditing . removeUnlock ( lockElem ) ; if ( ! t . _onCheckCommentRemoveLock ( lockElem . Element ) ) if ( lockElem . Element [ "type" ] === c _oAscLockTypeElem . Object ) { drawing = g _oTableId . Get _ById ( lockElem . Element [ "rangeOrObjectId" ] ) ; if ( drawing ) { var bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone &&
drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = c _oAscLockTypes . kLockTypeNone ; if ( drawing instanceof AscCommon . CCore ) if ( bLocked ) t . sendEvent ( "asc_onLockCore" , false ) } } } if ( t . wb ) { t . _onUpdateSheetsLock ( lockElem ) ; t . handlers . trigger ( "asc_onLockDefNameManager" , Asc . c _oAscDefinedNameReason . OK ) ; t . _onUpdateLayoutLock ( lockElem ) ; t . _onUpdatePrintAreaLock ( lockElem ) ; t . _onUpdateHeaderFooterLock ( lockElem ) ; t . _onUpdatePrintScaleLock ( lockElem ) } } } ; this . CoAuthoringApi . onLocksReleasedEnd = function ( ) { if ( ! t . isDocumentLoadComplete ) return ;
if ( t . wb ) { t . wb . _onWSSelectionChanged ( true ) ; var worksheet = t . wb . getWorksheet ( ) ; worksheet . cleanSelection ( ) ; worksheet . _drawSelection ( ) ; worksheet . _drawFrozenPaneLines ( ) ; if ( worksheet . objectRender ) worksheet . objectRender . showDrawingObjects ( ) } } ; this . CoAuthoringApi . onSaveChanges = function ( e , userId , bFirstLoad ) { t . collaborativeEditing . addChanges ( e ) ; if ( ! bFirstLoad && t . isDocumentLoadComplete ) t . syncCollaborativeChanges ( ) } ; this . CoAuthoringApi . onRecalcLocks = function ( excelAdditionalInfo ) { if ( ! excelAdditionalInfo ) return ;
var tmpAdditionalInfo = JSON . parse ( excelAdditionalInfo ) ; var oRecalcIndexColumns = t . collaborativeEditing . addRecalcIndex ( "0" , tmpAdditionalInfo [ "indexCols" ] ) ; var oRecalcIndexRows = t . collaborativeEditing . addRecalcIndex ( "1" , tmpAdditionalInfo [ "indexRows" ] ) ; if ( null !== oRecalcIndexColumns || null !== oRecalcIndexRows ) { t . collaborativeEditing . _recalcLockArray ( c _oAscLockTypes . kLockTypeMine , oRecalcIndexColumns , oRecalcIndexRows ) ; t . collaborativeEditing . _recalcLockArray ( c _oAscLockTypes . kLockTypeOther , oRecalcIndexColumns ,
oRecalcIndexRows ) } } } ; spreadsheet _api . prototype . _onSaveChanges = function ( recalcIndexColumns , recalcIndexRows , isAfterAskSave ) { if ( this . isDocumentLoadComplete ) { var arrChanges = this . wbModel . SerializeHistory ( ) ; var deleteIndex = History . GetDeleteIndex ( ) ; var excelAdditionalInfo = null ; var bCollaborative = this . collaborativeEditing . getCollaborativeEditing ( ) ; if ( bCollaborative ) if ( recalcIndexColumns || recalcIndexRows ) excelAdditionalInfo = { "indexCols" : recalcIndexColumns , "indexRows" : recalcIndexRows } ; if ( 0 < arrChanges . length ||
null !== deleteIndex || null !== excelAdditionalInfo ) { this . CoAuthoringApi . saveChanges ( arrChanges , deleteIndex , excelAdditionalInfo , this . canUnlockDocument2 , bCollaborative ) ; History . CanNotAddChanges = true } else this . CoAuthoringApi . unLockDocument ( ! ! isAfterAskSave , this . canUnlockDocument2 , null , bCollaborative ) ; this . canUnlockDocument2 = false } } ; spreadsheet _api . prototype . _onApplyChanges = function ( changes , fCallback ) { this . wbModel . DeserializeHistory ( changes , fCallback ) } ; spreadsheet _api . prototype . _onUpdateAfterApplyChanges =
function ( ) { if ( ! this . isDocumentLoadComplete ) { this . collaborativeEditing . clearRecalcIndex ( ) ; this . onDocumentContentReady ( ) } else if ( this . wb && ! window [ "NATIVE_EDITOR_ENJINE" ] ) { AscCommon . CollaborativeEditing . Load _Images ( ) ; this . wb . _onWSSelectionChanged ( ) ; History . TurnOff ( ) ; this . wb . drawWorksheet ( ) ; History . TurnOn ( ) } if ( this . isApplyChangesOnVersionHistory ) { this . isApplyChangesOnVersionHistory = false ; this . _openVersionHistoryEndCallback ( ) } } ; spreadsheet _api . prototype . _onCleanSelection = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . cleanSelection ( ) } ;
spreadsheet _api . prototype . _onDrawSelection = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . _drawSelection ( ) } ; spreadsheet _api . prototype . _onDrawFrozenPaneLines = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . _drawFrozenPaneLines ( ) } ; spreadsheet _api . prototype . _onUpdateAllSheetsLock = function ( ) { if ( this . wbModel ) { this . handlers . trigger ( "asc_onWorkbookLocked" , this . asc _isWorkbookLocked ( ) ) ; var i , length , wsModel , wsIndex ; for ( i = 0 , length = this . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = this . wbModel . getWorksheet ( i ) ;
wsIndex = wsModel . getIndex ( ) ; this . handlers . trigger ( "asc_onWorksheetLocked" , wsIndex , this . asc _isWorksheetLockedOrDeleted ( wsIndex ) ) } } } ; spreadsheet _api . prototype . _onUpdateAllLayoutsLock = function ( ) { var t = this ; if ( t . wbModel ) { var i , length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockDocumentProps" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockDocumentProps" ,
wsIndex ) } } } ; spreadsheet _api . prototype . _onUpdateAllHeaderFooterLock = function ( ) { var t = this ; if ( t . wbModel ) { var i , length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockHeaderFooter" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockHeaderFooter" , wsIndex ) } } } ; spreadsheet _api . prototype . _onUpdateAllPrintScaleLock = function ( ) { var t = this ; if ( t . wbModel ) { var i ,
length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockPrintScale" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockPrintScale" , wsIndex ) } } } ; spreadsheet _api . prototype . _onUpdateLayoutMenu = function ( nSheetId ) { var t = this ; if ( t . wbModel ) { var wsModel = t . wbModel . getWorksheetById ( nSheetId ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; t . handlers . trigger ( "asc_onUpdateDocumentProps" ,
wsIndex ) } } } ; spreadsheet _api . prototype . _onShowDrawingObjects = function ( ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . showDrawingObjects ( ) } } ; spreadsheet _api . prototype . _onShowComments = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . cellCommentator . drawCommentCells ( ) } ; spreadsheet _api . prototype . _onUpdateSheetsLock = function ( lockElem ) { if ( c _oAscLockTypeElem . Sheet === lockElem . Element [ "type" ] ) this . _onUpdateAllSheetsLock ( ) ; else { var wsModel = this . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ;
if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; this . handlers . trigger ( "asc_onWorksheetLocked" , wsIndex , this . asc _isWorksheetLockedOrDeleted ( wsIndex ) ) } } } ; spreadsheet _api . prototype . _onUpdateLayoutLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockDocumentProps" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockDocumentProps" , wsIndex ) } } ;
spreadsheet _api . prototype . _onUpdatePrintAreaLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; var wsIndex = wsModel ? wsModel . getIndex ( ) : undefined ; var isLocked = t . asc _isPrintAreaLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockPrintArea" ) ; else t . handlers . trigger ( "asc_onUnLockPrintArea" ) } ; spreadsheet _api . prototype . _onUpdateHeaderFooterLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; if ( wsModel ) { var wsIndex =
wsModel . getIndex ( ) ; var isLocked = t . asc _isHeaderFooterLocked ( ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockHeaderFooter" ) ; else t . handlers . trigger ( "asc_onUnLockHeaderFooter" ) } } ; spreadsheet _api . prototype . _onUpdatePrintScaleLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isPrintScaleLocked ( ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockPrintScale" ) ; else t . handlers . trigger ( "asc_onUnLockPrintScale" ) } } ;
spreadsheet _api . prototype . _onUpdateFrozenPane = function ( lockElem ) { return c _oAscLockTypeElem . Object === lockElem . Element [ "type" ] && lockElem . Element [ "rangeOrObjectId" ] === AscCommonExcel . c _oAscLockNameFrozenPane } ; spreadsheet _api . prototype . _sendWorkbookStyles = function ( ) { if ( this . wbModel && ! window [ "NATIVE_EDITOR_ENJINE" ] ) this . handlers . trigger ( "asc_onInitEditorStyles" , this . wb . getCellStyles ( this . styleThumbnailWidth , this . styleThumbnailHeight ) ) } ; spreadsheet _api . prototype . startCollaborationEditing = function ( ) { this . collaborativeEditing . startCollaborationEditing ( ) ;
if ( this . isDocumentLoadComplete ) { var worksheet = this . wb . getWorksheet ( ) ; worksheet . cleanSelection ( ) ; worksheet . _drawSelection ( ) ; worksheet . _drawFrozenPaneLines ( ) ; if ( worksheet . objectRender ) worksheet . objectRender . showDrawingObjects ( ) } } ; spreadsheet _api . prototype . endCollaborationEditing = function ( ) { this . collaborativeEditing . endCollaborationEditing ( ) } ; spreadsheet _api . prototype . _openDocumentEndCallback = function ( ) { if ( this . isDocumentLoadComplete || ! this . ServerIdWaitComplete || ! this . FontLoadWaitComplete ) return ; if ( AscCommon . EncryptionWorker ) { AscCommon . EncryptionWorker . init ( ) ;
if ( ! AscCommon . EncryptionWorker . isChangesHandled ) return AscCommon . EncryptionWorker . handleChanges ( this . collaborativeEditing . m _arrChanges , this , this . _openDocumentEndCallback ) } if ( 0 === this . wbModel . getWorksheetCount ( ) ) { this . sendEvent ( "asc_onError" , c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; return } this . wb = new AscCommonExcel . WorkbookView ( this . wbModel , this . controller , this . handlers , this . HtmlElement , this . topLineEditorElement , this , this . collaborativeEditing , this . fontRenderingMode ) ; if ( this . isCopyOutEnabled &&
this . topLineEditorElement ) if ( this . isCopyOutEnabled ( ) === false ) { this . topLineEditorElement . oncopy = function ( ) { return false } ; this . topLineEditorElement . oncut = function ( ) { return false } } if ( this . isMobileVersion ) { this . wb . defaults . worksheetView . halfSelection = true ; this . wb . defaults . worksheetView . activeCellBorderColor = new CColor ( 79 , 158 , 79 ) ; var _container = document . getElementById ( this . HtmlElementName ) ; if ( _container ) _container . style . overflow = "hidden" ; this . wb . MobileTouchManager = new AscCommonExcel . CMobileTouchManager ( { eventsElement : "cell_mobile_element" } ) ;
this . wb . MobileTouchManager . Init ( this ) ; var _areaId = AscCommon . g _inputContext . HtmlArea . id ; var _element = document . getElementById ( _areaId ) ; _element . parentNode . parentNode . style . zIndex = 10 ; this . wb . MobileTouchManager . initEvents ( AscCommon . g _inputContext . HtmlArea . id ) } this . asc _CheckGuiControlColors ( ) ; this . sendColorThemes ( this . wbModel . theme ) ; this . asc _ApplyColorScheme ( false ) ; this . sendStandartTextures ( ) ; this . sendMathToMenu ( ) ; this . _applyPreOpenLocks ( ) ; this . _applyFirstLoadChanges ( ) ; this . goTo ( ) ; this . advancedOptionsAction =
c _oAscAdvancedOptionsAction . None ; if ( 0 < this . wbModel . openErrors . length ) this . sendEvent ( "asc_onError" , c _oAscError . ID . OpenWarning , c _oAscError . Level . NoCritical ) } ; spreadsheet _api . prototype . _asc _setWorksheetRange = function ( val ) { var ranges = null , ws ; var sheet = val . asc _getSheet ( ) ; if ( ! sheet ) { ranges = AscCommonExcel . getRangeByRef ( val . asc _getLocation ( ) , this . wbModel . getActiveWs ( ) , true ) ; if ( ranges = ranges [ 0 ] ) ws = ranges . worksheet } else ws = this . wbModel . getWorksheetByName ( sheet ) ; if ( ! ws ) { this . handlers . trigger ( "asc_onHyperlinkClick" ,
null ) ; return } else if ( ws . getHidden ( ) ) return ; var sheetIndex = ws . getIndex ( ) ; if ( this . asc _getActiveWorksheetIndex ( ) !== sheetIndex ) this . asc _showWorksheet ( sheetIndex ) ; var range ; if ( ranges ) range = ranges . bbox ; else { range = ws . getRange2 ( val . asc _getRange ( ) ) ; if ( range ) range = range . getBBox0 ( ) } this . wb . _onSetSelection ( range , true ) } ; spreadsheet _api . prototype . asc _setWorksheetRange = function ( val ) { this . _asc _setWorksheetRange ( val ) } ; spreadsheet _api . prototype . _onSaveCallbackInner = function ( ) { var t = this ; AscCommon . CollaborativeEditing . Clear _CollaborativeMarks ( ) ;
this . collaborativeEditing . applyChanges ( ) ; this . CoAuthoringApi . onUnSaveLock = function ( ) { t . CoAuthoringApi . onUnSaveLock = null ; if ( t . isForceSaveOnUserSave && t . IsUserSave ) t . forceSaveButtonContinue = t . forceSave ( ) ; if ( t . forceSaveForm ) t . forceSaveForm ( ) ; if ( t . collaborativeEditing . getCollaborativeEditing ( ) ) t . wb . _onWSSelectionChanged ( true ) ; t . canSave = true ; t . IsUserSave = false ; t . lastSaveTime = null ; if ( ! t . forceSaveButtonContinue ) t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . Save ) ; t . onUpdateDocumentModified ( History . Have _Changes ( ) ) ;
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 ( ) } ; this . collaborativeEditing . sendChanges ( this . IsUserSave , true ) } ; spreadsheet _api . prototype . _isLockedSparkline = function ( id , callback ) { var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , this . asc _getActiveWorksheetId ( ) , id ) ; this . collaborativeEditing . lock ( [ lockInfo ] ,
callback ) } ; spreadsheet _api . prototype . _isLockedAddWorksheets = function ( callback ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , AscCommonExcel . c _oAscLockAddSheet , AscCommonExcel . c _oAscLockAddSheet ) ; this . collaborativeEditing . lock ( [ lockInfo ] , callback ) } ; spreadsheet _api . prototype . _addWorksheets = function ( arrNames , where ) { var t = this ; this . _isLockedAddWorksheets ( function ( res ) { if ( res ) t . _addWorksheetsWithoutLock ( arrNames ,
where ) } ) } ; spreadsheet _api . prototype . _addWorksheetsWithoutLock = function ( arrNames , where ) { var res = [ ] ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( var i = arrNames . length - 1 ; i >= 0 ; -- i ) res . push ( this . wbModel . createWorksheet ( where , arrNames [ i ] ) ) ; this . wbModel . setActive ( where ) ; this . wb . updateWorksheetByModel ( ) ; this . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; this . sheetsChanged ( ) ; return res } ; spreadsheet _api . prototype . asc _getWorksheetsCount = function ( ) { return this . wbModel . getWorksheetCount ( ) } ; spreadsheet _api . prototype . asc _getWorksheetName =
function ( index ) { return this . wbModel . getWorksheet ( index ) . getName ( ) } ; spreadsheet _api . prototype . asc _getWorksheetTabColor = function ( index ) { return this . wbModel . getWorksheet ( index ) . getTabColor ( ) } ; spreadsheet _api . prototype . asc _setWorksheetTabColor = function ( color , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object ,
null , sheet . getId ( ) , AscCommonExcel . c _oAscLockNameTabColor ) ) } var t = this ; var changeTabColorCallback = function ( res ) { if ( res ) { color = AscCommonExcel . CorrectAscColor ( color ) ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) t . wbModel . getWorksheet ( arrSheets [ i ] ) . setTabColor ( color ) ; History . EndTransaction ( ) } } ; this . collaborativeEditing . lock ( arrLocks , changeTabColorCallback ) } ; spreadsheet _api . prototype . asc _getActiveWorksheetIndex = function ( ) { return this . wbModel . getActive ( ) } ; spreadsheet _api . prototype . asc _getActiveWorksheetId =
function ( ) { var activeIndex = this . wbModel . getActive ( ) ; return this . wbModel . getWorksheet ( activeIndex ) . getId ( ) } ; spreadsheet _api . prototype . asc _getWorksheetId = function ( index ) { return this . wbModel . getWorksheet ( index ) . getId ( ) } ; spreadsheet _api . prototype . asc _isWorksheetHidden = function ( index ) { return this . wbModel . getWorksheet ( index ) . getHidden ( ) } ; spreadsheet _api . prototype . asc _getDefinedNames = function ( defNameListId , excludeErrorRefNames ) { return this . wb . getDefinedNames ( defNameListId , excludeErrorRefNames ) } ; spreadsheet _api . prototype . asc _setDefinedNames =
function ( defName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; return this . wb . editDefinedNames ( null , defName ) } ; spreadsheet _api . prototype . asc _editDefinedNames = function ( oldName , newName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; return this . wb . editDefinedNames ( oldName , newName ) } ; spreadsheet _api . prototype . asc _delDefinedNames = function ( oldName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; return this . wb . delDefinedNames ( oldName ) } ; spreadsheet _api . prototype . asc _checkDefinedName =
function ( checkName , scope ) { return this . wbModel . checkDefName ( checkName , scope ) } ; spreadsheet _api . prototype . asc _getDefaultDefinedName = function ( ) { return this . wb . getDefaultDefinedName ( ) } ; spreadsheet _api . prototype . asc _getDefaultTableStyle = function ( ) { return this . wb . getDefaultTableStyle ( ) } ; spreadsheet _api . prototype . _onUpdateDefinedNames = function ( lockElem ) { if ( lockElem . Element [ "sheetId" ] == - 1 && lockElem . Element [ "rangeOrObjectId" ] != - 1 && ! this . collaborativeEditing . getFast ( ) ) { var dN = this . wbModel . dependencyFormulas . getDefNameByNodeId ( lockElem . Element [ "rangeOrObjectId" ] ) ;
if ( dN ) { dN . isLock = lockElem . UserId ; this . handlers . trigger ( "asc_onRefreshDefNameList" , dN . getAscCDefName ( ) ) } this . handlers . trigger ( "asc_onLockDefNameManager" , Asc . c _oAscDefinedNameReason . LockDefNameManager ) } } ; spreadsheet _api . prototype . _onUnlockDefName = function ( ) { this . wb . unlockDefName ( ) } ; spreadsheet _api . prototype . _onCheckDefNameLock = function ( ) { return this . wb . _onCheckDefNameLock ( ) } ; spreadsheet _api . prototype . asc _isWorksheetLockedOrDeleted = function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId =
null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheetId , sheetId ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isWorkbookLocked = function ( ) { var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , null , null ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo ,
c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isLayoutLocked = function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId = null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , "layoutOptions" ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isHeaderFooterLocked =
function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId = null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , "headerFooter" ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isPrintScaleLocked = function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId = null ;
if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , "printScaleOptions" ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isPrintAreaLocked = function ( index ) { var res = false ; if ( index !== undefined ) { var sheetId = this . wbModel . getWorksheet ( index ) . getId ( ) ; var dN = this . wbModel . dependencyFormulas . getDefNameByName ( "Print_Area" ,
sheetId ) ; if ( dN ) res = ! ! dN . isLock } return res } ; spreadsheet _api . prototype . asc _getHiddenWorksheets = function ( ) { var model = this . wbModel ; var len = model . getWorksheetCount ( ) ; var i , ws , res = [ ] ; for ( i = 0 ; i < len ; ++ i ) { ws = model . getWorksheet ( i ) ; if ( ws . getHidden ( ) ) res . push ( { "index" : i , "name" : ws . getName ( ) } ) } return res } ; spreadsheet _api . prototype . asc _showWorksheet = function ( index ) { if ( typeof index === "number" ) { var t = this ; var ws = this . wbModel . getWorksheet ( index ) ; var isHidden = ws . getHidden ( ) ; var showWorksheetCallback = function ( res ) { if ( res ) { t . wbModel . getWorksheet ( index ) . setHidden ( false ) ;
t . wb . showWorksheet ( index ) } } ; if ( isHidden ) { var sheetId = this . wbModel . getWorksheet ( index ) . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheetId , sheetId ) ; this . collaborativeEditing . lock ( [ lockInfo ] , showWorksheetCallback ) } else showWorksheetCallback ( true ) } } ; spreadsheet _api . prototype . asc _hideWorksheet = function ( arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; if ( this . asc _getWorksheetsCount ( ) <=
this . asc _getHiddenWorksheets ( ) . length + arrSheets . length ) return false ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var hideWorksheetCallback = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) t . wbModel . getWorksheet ( arrSheets [ i ] ) . setHidden ( true ) ; History . EndTransaction ( ) } } ;
this . collaborativeEditing . lock ( arrLocks , hideWorksheetCallback ) ; return true } ; spreadsheet _api . prototype . asc _renameWorksheet = function ( name ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var i = this . wbModel . getActive ( ) ; var sheetId = this . wbModel . getWorksheet ( i ) . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheetId , sheetId ) ; var t = this ; var renameCallback = function ( res ) { if ( res ) { AscFonts . FontPickerByCharacter . getFontsByString ( name ) ; t . _loadFonts ( [ ] ,
function ( ) { var oWorkbook = t . wbModel ; var oWorksheet = oWorkbook . getWorksheet ( i ) ; var sOldName = oWorksheet . getName ( ) ; oWorksheet . setName ( name ) ; t . sheetsChanged ( ) ; if ( t . wb ) t . wb . handleChartsOnChangeSheetName ( oWorksheet , sOldName , name ) } ) } else t . handlers . trigger ( "asc_onError" , c _oAscError . ID . LockedWorksheetRename , c _oAscError . Level . NoCritical ) } ; this . collaborativeEditing . lock ( [ lockInfo ] , renameCallback ) ; return true } ; spreadsheet _api . prototype . asc _addWorksheet = function ( name ) { var i = this . wbModel . getActive ( ) ; this . _addWorksheets ( [ name ] ,
i + 1 ) } ; spreadsheet _api . prototype . asc _insertWorksheet = function ( arrNames ) { if ( ! Array . isArray ( arrNames ) ) arrNames = [ arrNames ] ; var i = this . wbModel . getActive ( ) ; this . _addWorksheets ( arrNames , i ) } ; spreadsheet _api . prototype . asc _deleteWorksheet = function ( arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; if ( this . wbModel . getWorksheetCount ( ) === arrSheets . length ) return false ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet =
arrSheets [ i ] = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var deleteCallback = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) t . wbModel . removeWorksheet ( arrSheets [ i ] . getIndex ( ) ) ; t . wbModel . handleChartsOnWorksheetsRemove ( arrSheets ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ;
this . collaborativeEditing . lock ( arrLocks , deleteCallback ) ; return true } ; spreadsheet _api . prototype . asc _moveWorksheet = function ( where , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; var active , sheet , i , index , _where , arrLocks = [ ] ; var arrSheetsLeft = [ ] , arrSheetsRight = [ ] ; for ( i = 0 ; i < arrSheets . length ; ++ i ) { index = arrSheets [ i ] ; sheet = this . wbModel . getWorksheet ( index ) ; ( index < where ? arrSheetsLeft : arrSheetsRight ) . push ( sheet ) ; if ( ! active ) active =
sheet ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var moveCallback = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( i = 0 , _where = where ; i < arrSheetsRight . length ; ++ i , ++ _where ) { index = arrSheetsRight [ i ] . getIndex ( ) ; if ( index !== _where ) t . wbModel . replaceWorksheet ( index , _where ) } for ( i = arrSheetsLeft . length - 1 , _where = where - 1 ; i >= 0 ; -- i , -- _where ) { index = arrSheetsLeft [ i ] . getIndex ( ) ; if ( index !== _where ) t . wbModel . replaceWorksheet ( index ,
_where ) } t . wbModel . setActive ( active . getIndex ( ) ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; this . collaborativeEditing . lock ( arrLocks , moveCallback ) ; return true } ; spreadsheet _api . prototype . asc _copyWorksheet = function ( where , arrNames , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! Array . isArray ( arrNames ) ) arrNames = [ arrNames ] ; if ( 0 === arrNames . length ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; var scale =
this . asc _getZoom ( ) ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = arrSheets [ i ] = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var copyWorksheet = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; var index ; for ( var i = arrSheets . length - 1 ; i >= 0 ; -- i ) { index = arrSheets [ i ] . getIndex ( ) ; t . wbModel . copyWorksheet ( index , where , arrNames [ i ] ) } t . wbModel . setActive ( where ) ;
t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; this . collaborativeEditing . lock ( arrLocks , copyWorksheet ) } ; spreadsheet _api . prototype . asc _StartMoveSheet = function ( arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( this . wbModel . aWorksheets . length === 1 ) return null ; else if ( ! arrSheets || this . wbModel . aWorksheets && this . wbModel . aWorksheets . length === arrSheets . length ) arrSheets = [ arrSheets [ arrSheets . length - 1 ] ] ; var sheet , sBinarySheet ,
res = [ ] ; var activeIndex = this . wbModel . nActive ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; this . wbModel . nActive = sheet . getIndex ( ) ; sBinarySheet = AscCommonExcel . g _clipboardExcel . copyProcessor . getBinaryForCopy ( sheet , null , null , true , true ) ; res . push ( sBinarySheet ) } this . wbModel . nActive = activeIndex ; return res } ; spreadsheet _api . prototype . asc _EndMoveSheet = function ( where , arrNames , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! Array . isArray ( arrNames ) ) arrNames =
[ arrNames ] ; if ( 0 === arrNames . length ) return false ; if ( ! arrSheets ) return false ; var scale = this . asc _getZoom ( ) ; var t = this ; var addWorksheet = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; var renameParamsArr = [ ] , renameSheetMap = { } ; for ( var i = arrSheets . length - 1 ; i >= 0 ; -- i ) t . wb . pasteSheet ( arrSheets [ i ] , where , arrNames [ i ] , function ( renameParams ) { renameParamsArr . push ( renameParams ) ; renameSheetMap [ renameParams . lastName ] = renameParams . newName ; t . asc _showWorksheet ( where ) ; t . asc _setZoom ( scale ) ; t . sheetsChanged ( ) } ) ;
for ( var j = 0 ; j < renameParamsArr . length ; j ++ ) { var newSheet = t . wb . model . getWorksheetByName ( renameParamsArr [ j ] . newName ) ; newSheet . copyFromFormulas ( renameParamsArr [ j ] , renameSheetMap ) } t . wbModel . setActive ( where ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; addWorksheet ( true ) } ; spreadsheet _api . prototype . asc _cleanSelection = function ( ) { this . wb . getWorksheet ( ) . cleanSelection ( ) } ; spreadsheet _api . prototype . asc _getZoom = function ( ) { return this . wb . getZoom ( ) } ; spreadsheet _api . prototype . asc _setZoom =
function ( scale ) { this . wb . changeZoom ( scale ) } ; spreadsheet _api . prototype . asc _enableKeyEvents = function ( isEnabled , isFromInput ) { if ( ! this . isLoadFullApi ) { this . tmpFocus = isEnabled ; return } if ( this . wb ) this . wb . enableKeyEventsHandler ( isEnabled ) ; if ( isFromInput !== true && AscCommon . g _inputContext ) AscCommon . g _inputContext . setInterfaceEnableKeyEvents ( isEnabled ) } ; spreadsheet _api . prototype . asc _IsFocus = function ( bIsNaturalFocus ) { var res = true ; if ( this . wb . cellEditor . isTopLineActive ) res = false ; else if ( this . wb ) res = this . wb . getEnableKeyEventsHandler ( bIsNaturalFocus ) ;
return res } ; spreadsheet _api . prototype . asc _searchEnabled = function ( bIsEnabled ) { } ; spreadsheet _api . prototype . asc _findText = function ( options ) { if ( window [ "NATIVE_EDITOR_ENJINE" ] ) { if ( this . wb . findCellText ( options ) ) { var ws = this . wb . getWorksheet ( ) ; var activeCell = this . wbModel . getActiveWs ( ) . selectionRange . activeCell ; return [ ws . getCellLeftRelative ( activeCell . col , 0 ) , ws . getCellTopRelative ( activeCell . row , 0 ) ] } return null } var d = this . wb . findCellText ( options ) ; this . controller . scroll ( d ) ; return ! ! d } ; spreadsheet _api . prototype . asc _replaceText =
function ( options ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; options . lookIn = Asc . c _oAscFindLookIn . Formulas ; this . wb . replaceCellText ( options ) } ; spreadsheet _api . prototype . asc _endFindText = function ( ) { this . wb . _cleanFindResults ( ) } ; spreadsheet _api . prototype . asc _findCell = function ( reference ) { if ( this . asc _getCellEditMode ( ) ) return ; var ws = this . wb . getWorksheet ( ) ; var d = ws . findCell ( reference ) ; if ( 0 === d . length ) return ; ws = d [ 0 ] . getWorksheet ( ) ; if ( ! ws || ws . getHidden ( ) ) return ; var sheetIndex = ws . getIndex ( ) ;
if ( this . asc _getActiveWorksheetIndex ( ) !== sheetIndex ) this . asc _showWorksheet ( sheetIndex ) ; ws = this . wb . getWorksheet ( ) ; ws . setSelection ( 1 === d . length ? d [ 0 ] . getBBox0 ( ) : d ) } ; spreadsheet _api . prototype . asc _closeCellEditor = function ( cancel ) { var result = true ; if ( this . wb ) { this . wb . setWizardMode ( false ) ; result = this . wb . closeCellEditor ( cancel ) } return result } ; spreadsheet _api . prototype . asc _setR1C1Mode = function ( value ) { AscCommonExcel . g _R1C1Mode = value ; if ( this . wbModel ) { this . _onUpdateAfterApplyChanges ( ) ; this . wb . _onUpdateSelectionName ( true ) } } ;
spreadsheet _api . prototype . asc _setAutoCorrectHyperlinks = function ( value ) { window [ "AscCommonExcel" ] . g _AutoCorrectHyperlinks = value } ; spreadsheet _api . prototype . asc _setIncludeNewRowColTable = function ( value ) { window [ "AscCommonExcel" ] . g _IncludeNewRowColInTable = value } ; spreadsheet _api . prototype . asc _getColumnWidth = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . getSelectedColumnWidthInSymbols ( ) } ; spreadsheet _api . prototype . asc _setColumnWidth = function ( width ) { this . wb . getWorksheet ( ) . changeWorksheet ( "colWidth" , width ) } ;
spreadsheet _api . prototype . asc _showColumns = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "showCols" ) } ; spreadsheet _api . prototype . asc _hideColumns = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "hideCols" ) } ; spreadsheet _api . prototype . asc _autoFitColumnWidth = function ( ) { this . wb . getWorksheet ( ) . autoFitColumnsWidth ( null ) } ; spreadsheet _api . prototype . asc _getRowHeight = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . getSelectedRowHeight ( ) } ; spreadsheet _api . prototype . asc _setRowHeight = function ( height ) { this . wb . getWorksheet ( ) . changeWorksheet ( "rowHeight" ,
height ) } ; spreadsheet _api . prototype . asc _autoFitRowHeight = function ( ) { this . wb . getWorksheet ( ) . autoFitRowHeight ( null ) } ; spreadsheet _api . prototype . asc _showRows = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "showRows" ) } ; spreadsheet _api . prototype . asc _hideRows = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "hideRows" ) } ; spreadsheet _api . prototype . asc _group = function ( val ) { if ( val ) this . wb . getWorksheet ( ) . changeWorksheet ( "groupRows" ) ; else this . wb . getWorksheet ( ) . changeWorksheet ( "groupCols" ) } ; spreadsheet _api . prototype . _canGroupPivot =
function ( ) { var ws = this . wbModel . getActiveWs ( ) ; var activeCell = ws . selectionRange . activeCell ; var pivotTable = ws . getPivotTable ( activeCell . col , activeCell . row ) ; if ( pivotTable && ws . selectionRange . inContains ( pivotTable . getReportRanges ( ) ) ) { var layout = pivotTable . getLayoutsForGroup ( ws . selectionRange ) ; if ( null !== layout . fld ) return { pivotTable : pivotTable , layout : layout } } return null } ; spreadsheet _api . prototype . asc _canGroupPivot = function ( ) { return ! ! this . _canGroupPivot ( ) } ; spreadsheet _api . prototype . _groupPivot = function ( confirmation ,
onRepeat , opt _rangePr , opt _dateTypes ) { var canGroupRes = this . _canGroupPivot ( ) ; if ( canGroupRes ) canGroupRes . pivotTable . groupPivot ( this , canGroupRes . layout , confirmation , onRepeat , opt _rangePr , opt _dateTypes ) } ; spreadsheet _api . prototype . asc _groupPivot = function ( opt _rangePr , opt _dateTypes ) { var t = this ; var onRepeat = function ( ) { t . _groupPivot ( true , onRepeat , opt _rangePr , opt _dateTypes ) } ; this . _groupPivot ( false , onRepeat , opt _rangePr , opt _dateTypes ) } ; spreadsheet _api . prototype . _ungroupPivot = function ( confirmation , onRepeat ) { var canGroupRes =
this . _canGroupPivot ( ) ; if ( canGroupRes ) canGroupRes . pivotTable . ungroupPivot ( this , canGroupRes . layout , confirmation , onRepeat ) } ; spreadsheet _api . prototype . asc _ungroupPivot = function ( ) { var t = this ; var onRepeat = function ( ) { t . _ungroupPivot ( true , onRepeat ) } ; this . _ungroupPivot ( false , onRepeat ) } ; spreadsheet _api . prototype . asc _ungroup = function ( val ) { if ( val ) this . wb . getWorksheet ( ) . changeWorksheet ( "groupRows" , true ) ; else this . wb . getWorksheet ( ) . changeWorksheet ( "groupCols" , true ) } ; spreadsheet _api . prototype . asc _checkAddGroup =
function ( bUngroup ) { return this . wb . getWorksheet ( ) . checkAddGroup ( bUngroup ) } ; spreadsheet _api . prototype . asc _clearOutline = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "clearOutline" ) } ; spreadsheet _api . prototype . asc _changeGroupDetails = function ( bExpand ) { this . wb . getWorksheet ( ) . changeGroupDetails ( bExpand ) } ; spreadsheet _api . prototype . asc _insertCells = function ( options ) { this . wb . getWorksheet ( ) . changeWorksheet ( "insCell" , options ) } ; spreadsheet _api . prototype . asc _deleteCells = function ( options ) { this . wb . getWorksheet ( ) . changeWorksheet ( "delCell" ,
options ) } ; spreadsheet _api . prototype . asc _mergeCells = function ( options ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "merge" , options ) } ; spreadsheet _api . prototype . asc _sortCells = function ( options ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "sort" , options ) } ; spreadsheet _api . prototype . asc _emptyCells = function ( options , isMineComments ) { this . wb . emptyCells ( options , isMineComments ) } ; spreadsheet _api . prototype . asc _drawDepCells = function ( se ) { } ; spreadsheet _api . prototype . asc _mergeCellsDataLost = function ( options ) { return this . wb . getWorksheet ( ) . getSelectionMergeInfo ( options ) } ;
spreadsheet _api . prototype . asc _sortCellsRangeExpand = function ( ) { return this . wb . getWorksheet ( ) . getSelectionSortInfo ( ) } ; spreadsheet _api . prototype . asc _getSheetViewSettings = function ( ) { return this . wb . getWorksheet ( ) . getSheetViewSettings ( ) } ; spreadsheet _api . prototype . asc _setDisplayGridlines = function ( value ) { this . wb . getWorksheet ( ) . changeSheetViewSettings ( AscCH . historyitem _Worksheet _SetDisplayGridlines , value ) } ; spreadsheet _api . prototype . asc _setDisplayHeadings = function ( value ) { this . wb . getWorksheet ( ) . changeSheetViewSettings ( AscCH . historyitem _Worksheet _SetDisplayHeadings ,
value ) } ; spreadsheet _api . prototype . asc _setShowZeros = function ( value ) { this . wb . getWorksheet ( ) . changeSheetViewSettings ( AscCH . historyitem _Worksheet _SetShowZeros , value ) } ; spreadsheet _api . prototype . asc _drawingObjectsExist = function ( ) { for ( var i = 0 ; i < this . wb . model . aWorksheets . length ; i ++ ) if ( this . wb . model . aWorksheets [ i ] . Drawings && this . wb . model . aWorksheets [ i ] . Drawings . length ) return true ; return false } ; spreadsheet _api . prototype . asc _getChartObject = function ( bNoLock ) { if ( bNoLock !== true ) this . asc _onOpenChartFrame ( ) ; var ws =
this . wb . getWorksheet ( ) ; return ws . objectRender . getAscChartObject ( bNoLock ) } ; spreadsheet _api . prototype . asc _addChartDrawingObject = function ( chart ) { var ws = this . wb . getWorksheet ( ) ; AscFonts . IsCheckSymbols = true ; var ret = ws . objectRender . addChartDrawingObject ( chart ) ; AscFonts . IsCheckSymbols = false ; this . asc _onCloseChartFrame ( ) ; return ret } ; spreadsheet _api . prototype . asc _editChartDrawingObject = function ( chart ) { var ws = this . wb . getWorksheet ( ) ; var ret = ws . objectRender . editChartDrawingObject ( chart ) ; this . asc _onCloseChartFrame ( ) ;
return ret } ; spreadsheet _api . prototype . asc _addImageDrawingObject = function ( imageUrl , imgProp , token ) { var t = this ; AscCommon . sendImgUrls ( this , [ imageUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !== "error" ) { var ws = t . wb . getWorksheet ( ) ; ws . objectRender . addImageDrawingObject ( [ data [ 0 ] . url ] , null ) } } , true , false , token ) } ; spreadsheet _api . prototype . asc _AddMath = function ( Type ) { var t = this , fonts = { } ; fonts [ "Cambria Math" ] = 1 ; t . _loadFonts ( fonts , function ( ) { t . asc _AddMath2 ( Type ) } ) } ; spreadsheet _api . prototype . asc _AddMath2 = function ( Type ) { var ws =
this . wb . getWorksheet ( ) ; ws . objectRender . addMath ( Type ) } ; spreadsheet _api . prototype . asc _SetMathProps = function ( MathProps ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . setMathProps ( MathProps ) } ; spreadsheet _api . prototype . asc _showImageFileDialog = function ( ) { this . asc _addImage ( ) } ; spreadsheet _api . prototype . asc _addImageCallback = function ( res ) { g _oDocumentUrls . addImageUrl ( res . name , res . url ) } ; spreadsheet _api . prototype . asyncImageEndLoadedBackground = function ( _image ) { } ; spreadsheet _api . prototype . _addImageUrl = function ( urls ,
obj ) { var ws = this . wb . getWorksheet ( ) ; if ( ws ) if ( obj && ( obj . isImageChangeUrl || obj . isShapeImageChangeUrl || obj . isTextArtChangeUrl ) ) ws . objectRender . editImageDrawingObject ( urls [ 0 ] , obj ) ; else ws . objectRender . addImageDrawingObject ( urls , null ) } ; spreadsheet _api . prototype . asc _addSignatureLine = function ( oPr , Width , Height , sImgUrl ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . addSignatureLine ( oPr , Width , Height , sImgUrl ) } ; spreadsheet _api . prototype . asc _getAllSignatures = function ( ) { var ret = [ ] ; var aSpTree =
[ ] ; this . wbModel . forEach ( function ( ws ) { for ( var j = 0 ; j < ws . Drawings . length ; ++ j ) aSpTree . push ( ws . Drawings [ j ] . graphicObject ) } ) ; AscFormat . DrawingObjectsController . prototype . getAllSignatures2 ( ret , aSpTree ) ; return ret } ; spreadsheet _api . prototype . getSignatureLineSp = function ( sGuid ) { var ret = [ ] ; var aSpTree = [ ] ; this . wbModel . forEach ( function ( ws ) { for ( var j = 0 ; j < ws . Drawings . length ; ++ j ) aSpTree . push ( ws . Drawings [ j ] . graphicObject ) } ) ; AscFormat . DrawingObjectsController . prototype . getAllSignatures2 ( ret , aSpTree ) ; for ( var i = 0 ; i < aSpTree . length ; ++ i ) if ( aSpTree [ i ] . signatureLine &&
aSpTree [ i ] . signatureLine . id === sGuid ) return aSpTree [ i ] ; return null } ; spreadsheet _api . prototype . asc _CallSignatureDblClickEvent = function ( sGuid ) { var oSp = this . getSignatureLineSp ( sGuid ) ; if ( oSp ) this . sendEvent ( "asc_onSignatureDblClick" , sGuid , oSp . extX , oSp . extY ) } ; spreadsheet _api . prototype . gotoSignatureInternal = function ( sGuid ) { var oSp = this . getSignatureLineSp ( sGuid ) ; if ( oSp && ! oSp . group ) { var oWorksheet = oSp . worksheet ; if ( oWorksheet ) { var nSheetIdx = oWorksheet . getIndex ( ) ; if ( this . asc _getActiveWorksheetIndex ( ) !== nSheetIdx ) this . asc _showWorksheet ( nSheetIdx ) ;
var oWSView = this . wb . getWorksheet ( ) ; if ( oWSView ) { var oRender = oWSView . objectRender ; if ( oRender ) { var oController = oRender . controller ; if ( oController ) { oSp . Set _CurrentElement ( false ) ; oController . selection . textSelection = null ; oWSView . setSelectionShape ( true ) ; oController . updateSelectionState ( ) ; oController . updateOverlay ( ) ; oRender . sendGraphicObjectProps ( ) } } } } } } ; spreadsheet _api . prototype . asc _getCurrentDrawingMacrosName = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getCurrentDrawingMacrosName ( ) } ;
spreadsheet _api . prototype . asc _assignMacrosToCurrentDrawing = function ( sName ) { var ws = this . wb . getWorksheet ( ) ; var sGuid = this . asc _getMacrosGuidByName ( sName ) ; return ws . objectRender . assignMacrosToCurrentDrawing ( sGuid ) } ; spreadsheet _api . prototype . asc _setSelectedDrawingObjectLayer = function ( layerType ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . setGraphicObjectLayer ( layerType ) } ; spreadsheet _api . prototype . asc _setSelectedDrawingObjectAlign = function ( alignType ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . setGraphicObjectAlign ( alignType ) } ;
spreadsheet _api . prototype . asc _DistributeSelectedDrawingObjectHor = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . distributeGraphicObjectHor ( ) } ; spreadsheet _api . prototype . asc _DistributeSelectedDrawingObjectVer = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . distributeGraphicObjectVer ( ) } ; spreadsheet _api . prototype . asc _getSelectedDrawingObjectsCount = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getSelectedDrawingObjectsCount ( ) } ; spreadsheet _api . prototype . SetDrawImagePreviewBulletForMenu =
function ( id , type ) { if ( this . wbModel . DrawingDocument ) this . wbModel . DrawingDocument . SetDrawImagePreviewBulletForMenu ( id , type , this ) } ; spreadsheet _api . prototype . asc _canEditCrop = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canStartImageCrop ( ) } ; spreadsheet _api . prototype . asc _startEditCrop = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . startImageCrop ( ) } ; spreadsheet _api . prototype . asc _endEditCrop = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . endImageCrop ( ) } ;
spreadsheet _api . prototype . asc _cropFit = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . cropFit ( ) } ; spreadsheet _api . prototype . asc _cropFill = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . cropFill ( ) } ; spreadsheet _api . prototype . asc _addTextArt = function ( nStyle ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . addTextArt ( nStyle ) } ; spreadsheet _api . prototype . asc _checkDataRange = function ( dialogType , dataRange , fullCheck , isRows , chartType ) { return parserHelp . checkDataRange ( this . wbModel ,
this . wb , dialogType , dataRange , fullCheck , isRows , chartType ) } ; spreadsheet _api . prototype . asc _getBinaryFileWriter = function ( ) { return new AscCommonExcel . BinaryFileWriter ( this . wbModel ) } ; spreadsheet _api . prototype . asc _getWordChartObject = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getWordChartObject ( ) } ; spreadsheet _api . prototype . asc _cleanWorksheet = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) ws . objectRender . cleanWorksheet ( ) } ; spreadsheet _api . prototype . asc _setData = function ( oData ) { this . wb . getWorksheet ( ) . setData ( oData ) } ;
spreadsheet _api . prototype . asc _getData = function ( ) { this . asc _closeCellEditor ( ) ; return this . wb . getWorksheet ( ) . getData ( ) } ; spreadsheet _api . prototype . asc _addComment = function ( oComment ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) && ! this . isRestrictionComments ( ) ) return false ; var oPlace = oComment . bDocument ? this . wb : this . wb . getWorksheet ( ) ; oPlace . cellCommentator . addComment ( oComment ) } ; spreadsheet _api . prototype . asc _changeComment = function ( id , oComment ) { if ( oComment . bDocument ) this . wb . cellCommentator . changeComment ( id ,
oComment ) ; else { var ws = this . wb . getWorksheet ( ) ; ws . cellCommentator . changeComment ( id , oComment ) } } ; spreadsheet _api . prototype . asc _selectComment = function ( id ) { this . wb . getWorksheet ( ) . cellCommentator . selectComment ( id ) } ; spreadsheet _api . prototype . asc _showComment = function ( id , bNew ) { var ws = this . wb . getWorksheet ( ) ; ws . cellCommentator . showCommentById ( id , bNew ) } ; spreadsheet _api . prototype . asc _findComment = function ( id ) { var ws = this . wb . getWorksheet ( ) ; return ws . cellCommentator . findComment ( id ) } ; spreadsheet _api . prototype . asc _removeComment =
function ( id ) { this . wb . removeComment ( id ) } ; spreadsheet _api . prototype . asc _RemoveAllComments = function ( isMine , isCurrent ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) && ! this . isRestrictionComments ( ) ) return ; this . wb . removeAllComments ( isMine , isCurrent ) } ; spreadsheet _api . prototype . asc _ResolveAllComments = function ( isMine , isCurrent , arrIds ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; this . wb . resolveAllComments ( isMine , isCurrent ) } ; spreadsheet _api . prototype . asc _showComments =
function ( isShowSolved ) { this . wb . showComments ( true , isShowSolved ) } ; spreadsheet _api . prototype . asc _hideComments = function ( ) { this . wb . showComments ( false , false ) } ; spreadsheet _api . prototype . setStartPointHistory = function ( ) { this . noCreatePoint = true ; this . exucuteHistory = true ; this . asc _stopSaving ( ) } ; spreadsheet _api . prototype . setEndPointHistory = function ( ) { this . noCreatePoint = false ; this . exucuteHistoryEnd = true ; this . asc _continueSaving ( ) } ; spreadsheet _api . prototype . asc _startAddShape = function ( sPreset ) { this . isStartAddShape =
this . controller . isShapeAction = true ; var ws = this . wb . getWorksheet ( ) ; ws . objectRender . controller . startTrackNewShape ( sPreset ) } ; spreadsheet _api . prototype . asc _endAddShape = function ( ) { this . isStartAddShape = false ; this . handlers . trigger ( "asc_onEndAddShape" ) } ; spreadsheet _api . prototype . asc _addShapeOnSheet = function ( sPreset ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . addShapeOnSheet ( sPreset ) } } ; spreadsheet _api . prototype . asc _addOleObjectAction = function ( sLocalUrl , sData , sApplicationId ,
fWidth , fHeight , nWidthPix , nHeightPix ) { var _image = this . ImageLoader . LoadImage ( AscCommon . getFullImageSrc2 ( sLocalUrl ) , 1 ) ; if ( null != _image ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) { this . asc _canPaste ( ) ; ws . objectRender . addOleObject ( fWidth , fHeight , nWidthPix , nHeightPix , sLocalUrl , sData , sApplicationId ) ; this . asc _endPaste ( ) } } } ; spreadsheet _api . prototype . asc _editOleObjectAction = function ( bResize , oOleObject , sImageUrl , sData , nPixWidth , nPixHeight ) { if ( oOleObject ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) { this . asc _canPaste ( ) ;
ws . objectRender . editOleObject ( oOleObject , sData , sImageUrl , nPixWidth , nPixHeight , bResize ) ; this . asc _endPaste ( ) } } } ; spreadsheet _api . prototype . asc _startEditCurrentOleObject = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . startEditCurrentOleObject ( ) } ; spreadsheet _api . prototype . asc _isAddAutoshape = function ( ) { return this . isStartAddShape } ; spreadsheet _api . prototype . asc _canAddShapeHyperlink = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canAddHyperlink ( ) } ;
spreadsheet _api . prototype . asc _canGroupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canGroup ( ) } ; spreadsheet _api . prototype . asc _groupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . groupGraphicObjects ( ) } ; spreadsheet _api . prototype . asc _canUnGroupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canUnGroup ( ) } ; spreadsheet _api . prototype . asc _unGroupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ;
ws . objectRender . unGroupGraphicObjects ( ) } ; spreadsheet _api . prototype . asc _changeShapeType = function ( value ) { this . asc _setGraphicObjectProps ( new Asc . asc _CImgProperty ( { ShapeProperties : { type : value } } ) ) } ; spreadsheet _api . prototype . asc _getGraphicObjectProps = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender && ws . objectRender . controller ) return ws . objectRender . controller . getGraphicObjectProps ( ) ; return null } ; spreadsheet _api . prototype . asc _GetSelectedText = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( this . wb . getCellEditMode ( ) ) { var fragments =
this . wb . cellEditor . copySelection ( ) ; if ( null !== fragments ) return AscCommonExcel . getFragmentsText ( fragments ) } if ( ws && ws . objectRender && ws . objectRender . controller ) return ws . objectRender . controller . GetSelectedText ( true ) ; return "" } ; spreadsheet _api . prototype . asc _setGraphicObjectProps = function ( props ) { if ( ! this . canEdit ( ) ) return ; var ws = this . wb . getWorksheet ( ) ; var fReplaceCallback = null , sImageUrl = null , sToken = undefined ; if ( ! AscCommon . isNullOrEmptyString ( props . ImageUrl ) ) { if ( ! g _oDocumentUrls . getImageLocal ( props . ImageUrl ) ) { sImageUrl =
props . ImageUrl ; sToken = props . Token ; fReplaceCallback = function ( sLocalUrl ) { props . ImageUrl = sLocalUrl } } } else if ( props . ShapeProperties && props . ShapeProperties . fill && props . ShapeProperties . fill . fill && ! AscCommon . isNullOrEmptyString ( props . ShapeProperties . fill . fill . url ) ) { if ( ! g _oDocumentUrls . getImageLocal ( props . ShapeProperties . fill . fill . url ) ) { sImageUrl = props . ShapeProperties . fill . fill . url ; sToken = props . ShapeProperties . fill . fill . token ; fReplaceCallback = function ( sLocalUrl ) { props . ShapeProperties . fill . fill . url = sLocalUrl } } } else if ( props . ShapeProperties &&
props . ShapeProperties . textArtProperties && props . ShapeProperties . textArtProperties . Fill && props . ShapeProperties . textArtProperties . Fill . fill && ! AscCommon . isNullOrEmptyString ( props . ShapeProperties . textArtProperties . Fill . fill . url ) ) if ( ! g _oDocumentUrls . getImageLocal ( props . ShapeProperties . textArtProperties . Fill . fill . url ) ) { sImageUrl = props . ShapeProperties . textArtProperties . Fill . fill . url ; sToken = props . ShapeProperties . textArtProperties . Fill . fill . token ; fReplaceCallback = function ( sLocalUrl ) { props . ShapeProperties . textArtProperties . Fill . fill . url =
sLocalUrl } } if ( fReplaceCallback ) { if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "IsLocalFile" ] ( ) ) { var firstUrl = window [ "AscDesktopEditor" ] [ "LocalFileGetImageUrl" ] ( sImageUrl ) ; firstUrl = g _oDocumentUrls . getImageUrl ( firstUrl ) ; fReplaceCallback ( firstUrl ) ; ws . objectRender . setGraphicObjectProps ( props ) ; return } AscCommon . sendImgUrls ( this , [ sImageUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !== "error" ) { fReplaceCallback ( data [ 0 ] . url ) ; ws . objectRender . setGraphicObjectProps ( props ) } } , true , undefined , sToken ) } else { var sBulletSymbol =
props . asc _getBulletSymbol && props . asc _getBulletSymbol ( ) ; var sBulletFont = props . asc _getBulletFont && props . asc _getBulletFont ( ) ; if ( typeof sBulletSymbol === "string" && sBulletSymbol . length > 0 && typeof sBulletFont === "string" && sBulletFont . length > 0 ) { var t = this ; var fonts = { } ; fonts [ sBulletFont ] = 1 ; AscFonts . FontPickerByCharacter . checkTextLight ( sBulletSymbol ) ; t . _loadFonts ( fonts , function ( ) { ws . objectRender . setGraphicObjectProps ( props ) } ) } else { var oSlicerPr = props . SlicerProperties ; var sForCheck = null ; if ( oSlicerPr && typeof oSlicerPr . caption ===
"string" && oSlicerPr . caption . length > 0 ) sForCheck = oSlicerPr . caption ; if ( typeof sForCheck === "string" && sForCheck . length > 0 ) AscFonts . FontPickerByCharacter . checkText ( sForCheck , this , function ( ) { ws . objectRender . setGraphicObjectProps ( props ) } ) ; else ws . objectRender . setGraphicObjectProps ( props ) } } } ; spreadsheet _api . prototype . asc _getOriginalImageSize = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getOriginalImageSize ( ) } ; spreadsheet _api . prototype . asc _setInterfaceDrawImagePlaceTextArt = function ( elementId ) { this . textArtElementId =
elementId } ; spreadsheet _api . prototype . asc _changeImageFromFile = function ( ) { this . asc _addImage ( { isImageChangeUrl : true } ) } ; spreadsheet _api . prototype . asc _changeShapeImageFromFile = function ( type ) { this . asc _addImage ( { isShapeImageChangeUrl : true , textureType : type } ) } ; spreadsheet _api . prototype . asc _changeArtImageFromFile = function ( type ) { this . asc _addImage ( { isTextArtChangeUrl : true , textureType : type } ) } ; spreadsheet _api . prototype . asc _putPrLineSpacing = function ( type , value ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . controller . putPrLineSpacing ( type ,
value ) } ; spreadsheet _api . prototype . asc _putLineSpacingBeforeAfter = function ( type , value ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . controller . putLineSpacingBeforeAfter ( type , value ) } ; spreadsheet _api . prototype . asc _setDrawImagePlaceParagraph = function ( element _id , props ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . setDrawImagePlaceParagraph ( element _id , props ) } ; spreadsheet _api . prototype . asc _replaceLoadImageCallback = function ( fCallback ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) ws . objectRender . asyncImageEndLoaded =
fCallback } } ; spreadsheet _api . prototype . asyncImageEndLoaded = function ( _image ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . asyncImageEndLoaded ) ws . objectRender . asyncImageEndLoaded ( _image ) } } ; spreadsheet _api . prototype . asyncImagesDocumentEndLoaded = function ( ) { if ( c _oAscAdvancedOptionsAction . None === this . advancedOptionsAction && this . wb && ! window [ "NATIVE_EDITOR_ENJINE" ] ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . showDrawingObjects ( ) ; ws . objectRender . controller . getGraphicObjectProps ( ) } } ; spreadsheet _api . prototype . asyncImageEndLoadedBackground =
function ( ) { var worksheet = this . wb . getWorksheet ( ) ; if ( worksheet && worksheet . objectRender ) { var drawing _area = worksheet . objectRender . drawingArea ; if ( drawing _area ) for ( var i = 0 ; i < drawing _area . frozenPlaces . length ; ++ i ) { worksheet . objectRender . showDrawingObjects ( ) ; worksheet . objectRender . controller && worksheet . objectRender . controller . getGraphicObjectProps ( ) } } } ; spreadsheet _api . prototype . cleanSpelling = function ( isCellEditing ) { if ( ! this . spellcheckState . lockSpell ) if ( this . spellcheckState . startCell ) { var cellsChange = this . spellcheckState . cellsChange ;
var lastFindOptions = this . spellcheckState . lastFindOptions ; if ( cellsChange . length !== 0 && lastFindOptions && ! isCellEditing ) this . asc _replaceMisspelledWords ( lastFindOptions ) ; this . handlers . trigger ( "asc_onSpellCheckVariantsFound" , null ) ; this . spellcheckState . clean ( ) } } ; spreadsheet _api . prototype . SpellCheck _CallBack = function ( e ) { this . spellcheckState . lockSpell = false ; var ws = this . wb . getWorksheet ( ) ; var type = e [ "type" ] ; var usrWords = e [ "usrWords" ] ; var cellsInfo = e [ "cellsInfo" ] ; var changeWords = this . spellcheckState . changeWords ;
var ignoreWords = this . spellcheckState . ignoreWords ; var lastOptions = this . spellcheckState . lastFindOptions ; var cellsChange = this . spellcheckState . cellsChange ; var isStart = this . spellcheckState . isStart ; if ( type === "spell" ) { var usrCorrect = e [ "usrCorrect" ] ; this . spellcheckState . wordsIndex = e [ "wordsIndex" ] ; var lastIndex = this . spellcheckState . lastIndex ; var activeCell = ws . model . selectionRange . activeCell ; var isIgnoreUppercase = this . spellcheckState . isIgnoreUppercase ; for ( var i = 0 ; i < usrWords . length ; i ++ ) { if ( this . spellcheckState . isIgnoreNumbers ) { var isNumberInStr =
/\d+/ ; if ( usrWords [ i ] . match ( isNumberInStr ) ) usrCorrect [ i ] = true } if ( ignoreWords [ usrWords [ i ] ] || changeWords [ usrWords [ i ] ] || usrWords [ i ] . length === 1 || isIgnoreUppercase && AscCommon . private _IsAbbreviation ( usrWords [ i ] ) ) usrCorrect [ i ] = true } while ( ! isStart && usrCorrect [ lastIndex ] ) ++ lastIndex ; this . spellcheckState . lockSpell = false ; this . spellcheckState . lastIndex = lastIndex ; var currIndex = cellsInfo [ lastIndex ] ; if ( currIndex && ( currIndex . col !== activeCell . col || currIndex . row !== activeCell . row ) ) var currentCellIsInactive = true ; while ( isStart &&
currentCellIsInactive && usrCorrect [ lastIndex ] ) { if ( ! cellsInfo [ lastIndex + 1 ] || cellsInfo [ lastIndex + 1 ] . col !== cellsInfo [ lastIndex ] . col ) { var cell = cellsInfo [ lastIndex ] ; cellsChange . push ( new Asc . Range ( cell . col , cell . row , cell . col , cell . row ) ) } ++ lastIndex } if ( undefined === cellsInfo [ lastIndex ] ) { this . spellcheckState . nextRow ( ) ; this . asc _nextWord ( ) ; return } var cellStartIndex = 0 ; while ( cellsInfo [ cellStartIndex ] . col !== cellsInfo [ lastIndex ] . col ) cellStartIndex ++ ; e [ "usrWords" ] . splice ( 0 , cellStartIndex ) ; e [ "usrCorrect" ] . splice ( 0 , cellStartIndex ) ;
e [ "usrLang" ] . splice ( 0 , cellStartIndex ) ; e [ "cellsInfo" ] . splice ( 0 , cellStartIndex ) ; e [ "wordsIndex" ] . splice ( 0 , cellStartIndex ) ; lastIndex = lastIndex - cellStartIndex ; this . spellcheckState . lastIndex = lastIndex ; this . spellcheckState . lockSpell = true ; this . spellcheckState . lastSpellInfo = e ; this . SpellCheckApi . spellCheck ( { "type" : "suggest" , "usrWords" : [ e [ "usrWords" ] [ lastIndex ] ] , "usrLang" : [ e [ "usrLang" ] [ lastIndex ] ] , "cellInfo" : e [ "cellsInfo" ] [ lastIndex ] , "wordsIndex" : e [ "wordsIndex" ] [ lastIndex ] } ) } else if ( type === "suggest" ) { this . handlers . trigger ( "asc_onSpellCheckVariantsFound" ,
new AscCommon . asc _CSpellCheckProperty ( e [ "usrWords" ] [ 0 ] , null , e [ "usrSuggest" ] [ 0 ] , null , null ) ) ; var cellInfo = e [ "cellInfo" ] ; this . spellcheckState . lockSpell = true ; if ( ! ws . model . selectionRange . activeCell . isEqual ( cellInfo ) && isStart && lastOptions ) this . asc _replaceMisspelledWords ( lastOptions ) ; else { ws . setSelection ( new Asc . Range ( cellInfo . col , cellInfo . row , cellInfo . col , cellInfo . row ) ) ; this . spellcheckState . lockSpell = false ; if ( this . spellcheckState . afterReplace ) { History . EndTransaction ( ) ; this . spellcheckState . afterReplace =
false } } this . spellcheckState . isStart = true ; this . spellcheckState . wordsIndex = e [ "wordsIndex" ] } } ; spreadsheet _api . prototype . _spellCheckDisconnect = function ( ) { this . cleanSpelling ( ) } ; spreadsheet _api . prototype . _spellCheckRestart = function ( word ) { var lastSpellInfo ; if ( lastSpellInfo = this . spellcheckState . lastSpellInfo ) { var lastIndex = this . spellcheckState . lastIndex ; this . spellcheckState . lastIndex = - 1 ; var usrLang = [ ] ; for ( var i = lastIndex ; i < lastSpellInfo [ "usrWords" ] . length ; ++ i ) usrLang . push ( this . defaultLanguage ) ; this . spellcheckState . lockSpell =
true ; this . SpellCheckApi . spellCheck ( { "type" : "spell" , "usrWords" : lastSpellInfo [ "usrWords" ] . slice ( lastIndex ) , "usrLang" : usrLang , "cellsInfo" : lastSpellInfo [ "cellsInfo" ] . slice ( lastIndex ) , "wordsIndex" : lastSpellInfo [ "wordsIndex" ] . slice ( lastIndex ) } ) } else this . cleanSpelling ( ) } ; spreadsheet _api . prototype . asc _setDefaultLanguage = function ( val ) { if ( this . spellcheckState . lockSpell || this . defaultLanguage === val ) return ; this . defaultLanguage = val ; this . _spellCheckRestart ( ) } ; spreadsheet _api . prototype . asc _nextWord = function ( ) { if ( this . spellcheckState . lockSpell ) return ;
var ws = this . wb . getWorksheet ( ) ; var activeCell = ws . model . selectionRange . activeCell ; var lastSpell = this . spellcheckState . lastSpellInfo ; var cellsInfo ; if ( lastSpell ) { cellsInfo = lastSpell [ "cellsInfo" ] ; var usrWords = lastSpell [ "usrWords" ] ; var usrCorrect = lastSpell [ "usrCorrect" ] ; var wordsIndex = lastSpell [ "wordsIndex" ] ; var ignoreWords = this . spellcheckState . ignoreWords ; var changeWords = this . spellcheckState . changeWords ; var lastIndex = this . spellcheckState . lastIndex ; this . spellcheckState . cellText = this . asc _getCellInfo ( ) . text ;
var cellText = this . spellcheckState . newCellText || this . spellcheckState . cellText ; var afterReplace = this . spellcheckState . afterReplace ; for ( var i = 0 ; i < usrWords . length ; i ++ ) { var usrWord = usrWords [ i ] ; if ( ignoreWords [ usrWord ] || changeWords [ usrWord ] ) usrCorrect [ i ] = true } while ( cellsInfo [ lastIndex ] . col === activeCell . col && cellsInfo [ lastIndex ] . row === activeCell . row ) { var letterDifference = null ; var word = usrWords [ lastIndex ] ; var newWord = this . spellcheckState . newWord ; if ( newWord ) letterDifference = newWord . length - word . length ; else if ( changeWords [ word ] ) letterDifference =
changeWords [ word ] . length - word . length ; if ( letterDifference !== null ) { var replaceWith = newWord || changeWords [ word ] ; var valueForSearching = new RegExp ( usrWords [ lastIndex ] , "y" ) ; valueForSearching . lastIndex = wordsIndex [ lastIndex ] ; cellText = cellText . replace ( valueForSearching , replaceWith ) ; if ( letterDifference !== 0 ) { var j = lastIndex + 1 ; while ( j < usrWords . length && cellsInfo [ j ] . col === cellsInfo [ lastIndex ] . col ) { wordsIndex [ j ] += letterDifference ; j ++ } } this . spellcheckState . newCellText = cellText ; this . spellcheckState . newWord = null } if ( this . spellcheckState . newCellText ) { this . spellcheckState . cellsChange =
[ ] ; var cell = cellsInfo [ lastIndex ] ; this . spellcheckState . cellsChange . push ( new Asc . Range ( cell . col , cell . row , cell . col , cell . row ) ) } if ( afterReplace && ! usrCorrect [ lastIndex ] ) { afterReplace = false ; break } ++ lastIndex ; if ( ! afterReplace && ! usrCorrect [ lastIndex ] ) { afterReplace = false ; break } } this . spellcheckState . lastIndex = lastIndex ; this . SpellCheck _CallBack ( this . spellcheckState . lastSpellInfo ) ; return } var maxC = ws . model . getColsCount ( ) - 1 ; var maxR = ws . model . getRowsCount ( ) - 1 ; if ( - 1 === maxC || - 1 === maxR ) { this . handlers . trigger ( "asc_onSpellCheckVariantsFound" ,
new AscCommon . asc _CSpellCheckProperty ) ; return } if ( ! this . spellcheckState . startCell ) { this . spellcheckState . startCell = activeCell . clone ( ) ; if ( this . spellcheckState . startCell . col > maxC ) { this . spellcheckState . startCell . row += 1 ; this . spellcheckState . startCell . col = 0 } if ( this . spellcheckState . startCell . row > maxR ) { this . spellcheckState . startCell . row = 0 ; this . spellcheckState . startCell . col = 0 } this . spellcheckState . currentCell = this . spellcheckState . startCell . clone ( ) } var startCell = this . spellcheckState . startCell ; var currentCell =
this . spellcheckState . currentCell ; var lang = this . defaultLanguage ; var langArray = [ ] ; var wordsArray = [ ] ; cellsInfo = [ ] ; var wordsIndexArray = [ ] ; var isEnd = false ; do { if ( this . spellcheckState . iteration && currentCell . row > startCell . row ) break ; if ( currentCell . row > maxR ) { currentCell . row = 0 ; currentCell . col = 0 ; this . spellcheckState . iteration = true } if ( this . spellcheckState . iteration && currentCell . row === startCell . row ) maxC = startCell . col - 1 ; if ( currentCell . col > maxC ) { this . spellcheckState . nextRow ( ) ; continue } ws . model . getRange3 ( currentCell . row ,
currentCell . col , currentCell . row , maxC ) . _foreachNoEmpty ( function ( cell , r , c ) { if ( cell . text !== null && ! cell . isFormula ( ) ) { var cellInfo = new AscCommon . CellBase ( r , c ) ; var wordsObject = AscCommonExcel . WordSplitting ( cell . text ) ; var words = wordsObject . wordsArray ; var wordsIndex = wordsObject . wordsIndex ; for ( var i = 0 ; i < words . length ; ++ i ) { wordsArray . push ( words [ i ] ) ; wordsIndexArray . push ( wordsIndex [ i ] ) ; langArray . push ( lang ) ; cellsInfo . push ( cellInfo ) } isEnd = true } } ) ; if ( isEnd ) break ; this . spellcheckState . nextRow ( ) } while ( true ) ; if ( 0 < wordsArray . length ) { this . spellcheckState . lockSpell =
true ; this . SpellCheckApi . spellCheck ( { "type" : "spell" , "usrWords" : wordsArray , "usrLang" : langArray , "cellsInfo" : cellsInfo , "wordsIndex" : wordsIndexArray } ) } else { this . handlers . trigger ( "asc_onSpellCheckVariantsFound" , new AscCommon . asc _CSpellCheckProperty ) ; var lastFindOptions = this . spellcheckState . lastFindOptions ; var cellsChange = this . spellcheckState . cellsChange ; if ( cellsChange . length !== 0 && lastFindOptions ) { this . spellcheckState . lockSpell = true ; this . asc _replaceMisspelledWords ( lastFindOptions ) } this . spellcheckState . isStart =
false } } ; spreadsheet _api . prototype . asc _replaceMisspelledWord = function ( newWord , variantsFound , replaceAll ) { var options = new Asc . asc _CFindOptions ; options . isSpellCheck = true ; options . wordsIndex = this . spellcheckState . wordsIndex ; this . spellcheckState . newWord = newWord ; options . isMatchCase = true ; if ( replaceAll === true ) { if ( ! this . spellcheckState . isIgnoreUppercase ) this . spellcheckState . changeWords [ variantsFound . Word ] = newWord ; else this . spellcheckState . changeWords [ variantsFound . Word . toLowerCase ( ) ] = newWord ; options . isReplaceAll =
true } this . spellcheckState . lockSpell = false ; this . spellcheckState . lastFindOptions = options ; this . asc _nextWord ( ) } ; spreadsheet _api . prototype . asc _replaceMisspelledWords = function ( options ) { var t = this ; var ws = this . wb . getWorksheet ( ) ; var cellsChange = this . spellcheckState . cellsChange ; var changeWords = this . spellcheckState . changeWords ; var cellText = this . spellcheckState . cellText ; var newCellText = this . spellcheckState . newCellText ; if ( ! newCellText ) { cellText = null ; newCellText = null } var replaceWords = [ ] ; options . isWholeWord = true ;
for ( var key in changeWords ) replaceWords . push ( [ AscCommonExcel . getFindRegExp ( key , options ) , changeWords [ key ] ] ) ; options . findWhat = cellText ; options . isMatchCase = true ; options . replaceWith = newCellText ; options . replaceWords = replaceWords ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; ws . _replaceCellsText ( cellsChange , options , false , function ( ) { t . spellcheckState . cellsChange = [ ] ; options . indexInArray = 0 ; var lastSpell = t . spellcheckState . lastSpellInfo ; if ( lastSpell ) { var lastIndex = t . spellcheckState . lastIndex ; var cellInfo =
lastSpell [ "cellsInfo" ] [ lastIndex ] ; t . spellcheckState . lockSpell = true ; ws . setSelection ( new Asc . Range ( cellInfo . col , cellInfo . row , cellInfo . col , cellInfo . row ) ) ; t . spellcheckState . lockSpell = false ; t . spellcheckState . newWord = null ; t . spellcheckState . newCellText = null ; t . spellcheckState . afterReplace = true ; t . spellcheckState . lastIndex = 0 ; t . spellcheckState . cellText = t . asc _getCellInfo ( ) . text ; t . asc _nextWord ( ) ; return } t . spellcheckState . lockSpell = false ; History . EndTransaction ( ) } ) } ; spreadsheet _api . prototype . asc _ignoreMisspelledWord =
function ( spellCheckProperty , ignoreAll ) { if ( ignoreAll ) { var word = spellCheckProperty . Word ; this . spellcheckState . ignoreWords [ word ] = word } this . asc _nextWord ( ) } ; spreadsheet _api . prototype . asc _ignoreNumbers = function ( isIgnore ) { this . spellcheckState . isIgnoreNumbers = isIgnore } ; spreadsheet _api . prototype . asc _ignoreUppercase = function ( isIgnore ) { this . spellcheckState . isIgnoreUppercase = isIgnore } ; spreadsheet _api . prototype . asc _cancelSpellCheck = function ( ) { this . cleanSpelling ( ) } ; spreadsheet _api . prototype . asc _freezePane = function ( type ) { if ( this . canEdit ( ) ) this . wb . getWorksheet ( ) . freezePane ( type ) } ;
spreadsheet _api . prototype . asc _setSparklineGroup = function ( id , oSparklineGroup ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; var t = this ; var changeSparkline = function ( res ) { if ( res ) { var changedSparkline = g _oTableId . Get _ById ( id ) ; if ( changedSparkline ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; changedSparkline . set ( oSparklineGroup ) ; History . EndTransaction ( ) ; t . wb . _onWSSelectionChanged ( ) ; t . wb . getWorksheet ( ) . draw ( ) } } } ; this . _isLockedSparkline ( id , changeSparkline ) } ; spreadsheet _api . prototype . asc _addSparklineGroup =
function ( type , sDataRange , sLocationRange ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; var wsView = this . wb . getWorksheet ( ) ; return wsView . addSparklineGroup ( type , sDataRange , sLocationRange ) } ; spreadsheet _api . prototype . asc _setListType = function ( type , subtype ) { var t = this ; var sNeedFont = AscFormat . fGetFontByNumInfo ( type , subtype ) ; if ( typeof sNeedFont === "string" && sNeedFont . length > 0 ) { var t = this , fonts = { } ; fonts [ sNeedFont ] = 1 ; t . _loadFonts ( fonts , function ( ) { t . asc _setListType2 ( type , subtype ) } ) } else t . asc _setListType2 ( type ,
subtype ) } ; spreadsheet _api . prototype . asc _setListType2 = function ( type , subtype ) { var oWorksheet = this . wb . getWorksheet ( ) ; if ( oWorksheet ) if ( oWorksheet . isSelectOnShape ) return oWorksheet . objectRender . setListType ( type , subtype ) } ; spreadsheet _api . prototype . asc _getCellInfo = function ( ) { return this . wb . getSelectionInfo ( ) } ; spreadsheet _api . prototype . asc _getActiveCellCoord = function ( ) { var oWorksheet = this . wb . getWorksheet ( ) ; if ( oWorksheet ) if ( oWorksheet . isSelectOnShape ) return oWorksheet . objectRender . getContextMenuPosition ( ) ;
else return oWorksheet . getActiveCellCoord ( ) } ; spreadsheet _api . prototype . asc _getAnchorPosition = function ( ) { return this . asc _getActiveCellCoord ( ) } ; spreadsheet _api . prototype . asc _getCellEditMode = function ( ) { return this . wb ? this . wb . getCellEditMode ( ) : false } ; spreadsheet _api . prototype . asc _getHeaderFooterMode = function ( ) { return this . wb && this . wb . getCellEditMode ( ) && this . wb . cellEditor && this . wb . cellEditor . options && this . wb . cellEditor . options . menuEditor } ; spreadsheet _api . prototype . asc _getActiveRangeStr = function ( referenceType ,
opt _getActiveCell ) { var ws = this . wb . getWorksheet ( ) ; var res = null ; if ( ws && ws . model && ws . model . selectionRange ) { var range ; if ( opt _getActiveCell ) { var activeCell = ws . model . selectionRange . activeCell ; range = new Asc . Range ( activeCell . col , activeCell . row , activeCell . col , activeCell . row ) } else { var lastRange = ws . model . selectionRange . getLast ( ) ; range = new Asc . Range ( lastRange . c1 , lastRange . r1 , lastRange . c2 , lastRange . r2 ) } res = range . getName ( referenceType ) } return res } ; spreadsheet _api . prototype . asc _getIsTrackShape = function ( ) { return this . wb ?
this . wb . getIsTrackShape ( ) : false } ; spreadsheet _api . prototype . asc _setCellFontName = function ( fontName ) { var t = this , fonts = { } ; fonts [ fontName ] = 1 ; t . _loadFonts ( fonts , function ( ) { var ws = t . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellFontName ) ws . objectRender . controller . setCellFontName ( fontName ) ; else { t . wb . setFontAttributes ( "fn" , fontName ) ; t . wb . restoreFocus ( ) } } ) } ; spreadsheet _api . prototype . asc _setCellFontSize = function ( fontSize ) { var ws = this . wb . getWorksheet ( ) ;
if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellFontSize ) ws . objectRender . controller . setCellFontSize ( fontSize ) ; else { this . wb . setFontAttributes ( "fs" , fontSize ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellBold = function ( isBold ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellBold ) ws . objectRender . controller . setCellBold ( isBold ) ; else { this . wb . setFontAttributes ( "b" , isBold ) ; this . wb . restoreFocus ( ) } } ;
spreadsheet _api . prototype . asc _setCellItalic = function ( isItalic ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellItalic ) ws . objectRender . controller . setCellItalic ( isItalic ) ; else { this . wb . setFontAttributes ( "i" , isItalic ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellUnderline = function ( isUnderline ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellUnderline ) ws . objectRender . controller . setCellUnderline ( isUnderline ) ;
else { this . wb . setFontAttributes ( "u" , isUnderline ? Asc . EUnderline . underlineSingle : Asc . EUnderline . underlineNone ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellStrikeout = function ( isStrikeout ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellStrikeout ) ws . objectRender . controller . setCellStrikeout ( isStrikeout ) ; else { this . wb . setFontAttributes ( "s" , isStrikeout ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellSubscript =
function ( isSubscript ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellSubscript ) ws . objectRender . controller . setCellSubscript ( isSubscript ) ; else { this . wb . setFontAttributes ( "fa" , isSubscript ? AscCommon . vertalign _SubScript : null ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellSuperscript = function ( isSuperscript ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellSuperscript ) ws . objectRender . controller . setCellSuperscript ( isSuperscript ) ;
else { this . wb . setFontAttributes ( "fa" , isSuperscript ? AscCommon . vertalign _SuperScript : null ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellAlign = function ( align ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellAlign ) ws . objectRender . controller . setCellAlign ( align ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "a" , align ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellVertAlign = function ( align ) { var ws = this . wb . getWorksheet ( ) ;
if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellVertAlign ) ws . objectRender . controller . setCellVertAlign ( align ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "va" , align ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellTextWrap = function ( isWrapped ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellTextWrap ) ws . objectRender . controller . setCellTextWrap ( isWrapped ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "wrap" ,
isWrapped ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellTextShrink = function ( isShrinked ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellTextShrink ) ws . objectRender . controller . setCellTextShrink ( isShrinked ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "shrink" , isShrinked ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellTextColor = function ( color ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) &&
ws . objectRender . controller . setCellTextColor ) ws . objectRender . controller . setCellTextColor ( color ) ; else if ( color instanceof Asc . asc _CColor ) { color = AscCommonExcel . CorrectAscColor ( color ) ; this . wb . setFontAttributes ( "c" , color ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellFill = function ( fill ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellBackgroundColor ) ws . objectRender . controller . setCellBackgroundColor ( fill ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "f" ,
fill ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellBackgroundColor = function ( color ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellBackgroundColor ) ws . objectRender . controller . setCellBackgroundColor ( color ) ; else if ( color instanceof Asc . asc _CColor || null == color ) { if ( null != color ) color = AscCommonExcel . CorrectAscColor ( color ) ; this . wb . getWorksheet ( ) . setSelectionInfo ( "bc" , color ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellBorders =
function ( borders ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "border" , borders ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _setCellFormat = function ( format ) { var t = this ; var numFormat = AscCommon . oNumFormatCache . get ( format ) ; numFormat . checkCultureInfoFontPicker ( ) ; this . _loadFonts ( [ ] , function ( ) { t . wb . setCellFormat ( format ) ; t . wb . restoreFocus ( ) } ) } ; spreadsheet _api . prototype . asc _setCellAngle = function ( angle ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellAngle ) ws . objectRender . controller . setCellAngle ( angle ) ;
else { this . wb . getWorksheet ( ) . setSelectionInfo ( "angle" , angle ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellStyle = function ( name ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "style" , name ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _increaseCellDigitNumbers = function ( ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "changeDigNum" , + 1 ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _decreaseCellDigitNumbers = function ( ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "changeDigNum" , - 1 ) ; this . wb . restoreFocus ( ) } ;
spreadsheet _api . prototype . asc _increaseFontSize = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . increaseFontSize ) ws . objectRender . controller . increaseFontSize ( ) ; else { this . wb . changeFontSize ( "changeFontSize" , true ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _decreaseFontSize = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . decreaseFontSize ) ws . objectRender . controller . decreaseFontSize ( ) ;
else { this . wb . changeFontSize ( "changeFontSize" , false ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellIndent = function ( val ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "indent" , val ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _formatPainter = function ( formatPainterState ) { if ( this . wb ) this . wb . formatPainter ( formatPainterState ) } ; spreadsheet _api . prototype . asc _showAutoComplete = function ( ) { this . wb . showAutoComplete ( ) } ; spreadsheet _api . prototype . asc _onMouseUp = function ( event , x , y ) { if ( this . wb ) this . wb . _onWindowMouseUpExternal ( event ,
x , y ) } ; spreadsheet _api . prototype . asc _selectFunction = function ( ) { } ; spreadsheet _api . prototype . asc _insertHyperlink = function ( options ) { AscFonts . FontPickerByCharacter . checkText ( options . text , this , function ( ) { this . wb . insertHyperlink ( options ) } ) } ; spreadsheet _api . prototype . asc _removeHyperlink = function ( ) { this . wb . removeHyperlink ( ) } ; spreadsheet _api . prototype . asc _getFullHyperlinkLength = function ( str ) { return window [ "AscCommonExcel" ] . getFullHyperlinkLength ( str ) } ; spreadsheet _api . prototype . asc _cleanSelectRange = function ( ) { this . wb . _onCleanSelectRange ( ) } ;
spreadsheet _api . prototype . asc _insertInCell = function ( functionName , type , autoComplete ) { this . wb . insertInCellEditor ( functionName , type , autoComplete ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _startWizard = function ( name , doCleanCellContent ) { this . wb . startWizard ( name , doCleanCellContent ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _canEnterWizardRange = function ( char ) { return this . wb . canEnterWizardRange ( char ) } ; spreadsheet _api . prototype . asc _insertArgumentsInFormula = function ( val , argNum , argType ,
name ) { var res = this . wb . insertArgumentsInFormula ( val , argNum , argType , name ) ; this . wb . restoreFocus ( ) ; return res } ; spreadsheet _api . prototype . asc _getFormulasInfo = function ( ) { return this . formulasList } ; spreadsheet _api . prototype . asc _getFormulaLocaleName = function ( name ) { return AscCommonExcel . cFormulaFunctionToLocale ? AscCommonExcel . cFormulaFunctionToLocale [ name ] : name } ; spreadsheet _api . prototype . asc _getFormulaNameByLocale = function ( name ) { var f = AscCommonExcel . cFormulaFunctionLocalized && AscCommonExcel . cFormulaFunctionLocalized [ name ] ;
return f ? f . prototype . name : name } ; spreadsheet _api . prototype . asc _calculate = function ( type ) { if ( this . canEdit ( ) ) this . wb . calculate ( type ) } ; spreadsheet _api . prototype . asc _setFontRenderingMode = function ( mode ) { if ( mode !== this . fontRenderingMode ) { this . fontRenderingMode = mode ; if ( this . wb ) this . wb . setFontRenderingMode ( mode , false ) } } ; spreadsheet _api . prototype . asc _setSelectionDialogMode = function ( selectionDialogType , selectRange ) { if ( this . wb ) { this . wb . _onStopFormatPainter ( ) ; this . wb . setSelectionDialogMode ( selectionDialogType ,
selectRange ) } } ; spreadsheet _api . prototype . asc _SendThemeColors = function ( colors , standart _colors ) { this . _gui _control _colors = { Colors : colors , StandartColors : standart _colors } ; var ret = this . handlers . trigger ( "asc_onSendThemeColors" , colors , standart _colors ) ; if ( false !== ret ) this . _gui _control _colors = null } ; spreadsheet _api . prototype . getCurrentTheme = function ( ) { return this . wbModel && this . wbModel . theme } ; spreadsheet _api . prototype . asc _ChangeColorScheme = function ( sSchemeName ) { var t = this ; var onChangeColorScheme = function ( res ) { if ( res ) if ( t . wbModel . changeColorScheme ( sSchemeName ) ) t . asc _AfterChangeColorScheme ( ) } ;
var sheetId = - 1 ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , sheetId ) ; this . collaborativeEditing . lock ( [ lockInfo ] , onChangeColorScheme ) } ; spreadsheet _api . prototype . asc _ChangeColorSchemeByIdx = function ( nIdx ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; var t = this ; var onChangeColorScheme = function ( res ) { if ( res ) if ( t . wbModel . changeColorSchemeByIdx ( nIdx ) ) t . asc _AfterChangeColorScheme ( ) } ; var sheetId = - 1 ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object ,
null , sheetId , sheetId ) ; this . collaborativeEditing . lock ( [ lockInfo ] , onChangeColorScheme ) } ; spreadsheet _api . prototype . asc _AfterChangeColorScheme = function ( ) { this . asc _CheckGuiControlColors ( ) ; this . asc _ApplyColorScheme ( true ) } ; spreadsheet _api . prototype . asc _ApplyColorScheme = function ( bRedraw ) { if ( window [ "IS_NATIVE_EDITOR" ] || ! window [ "NATIVE_EDITOR_ENJINE" ] ) { Asc [ "editor" ] . wb . recalculateDrawingObjects ( ) ; this . chartPreviewManager . clearPreviews ( ) ; this . textArtPreviewManager . clear ( ) } if ( ! this . getViewMode ( ) ) this . _sendWorkbookStyles ( ) ;
if ( bRedraw ) { this . handlers . trigger ( "asc_onUpdateChartStyles" ) ; this . handlers . trigger ( "asc_onSelectionChanged" , this . asc _getCellInfo ( ) ) ; this . wb . drawWS ( ) } } ; spreadsheet _api . prototype . _autoSaveInner = function ( ) { if ( this . asc _getCellEditMode ( ) || this . asc _getIsTrackShape ( ) ) return ; if ( ! History . Have _Changes ( true ) && ! ( this . collaborativeEditing . getCollaborativeEditing ( ) && 0 !== this . collaborativeEditing . getOwnLocksLength ( ) ) ) { if ( this . collaborativeEditing . getFast ( ) && this . collaborativeEditing . haveOtherChanges ( ) ) { AscCommon . CollaborativeEditing . Clear _CollaborativeMarks ( ) ;
this . collaborativeEditing . applyChanges ( ) ; this . collaborativeEditing . sendChanges ( ) ; this . wb . _onWSSelectionChanged ( ) } return } if ( null === this . lastSaveTime ) { this . lastSaveTime = new Date ; return } var saveGap = this . collaborativeEditing . getFast ( ) ? this . autoSaveGapRealTime : this . collaborativeEditing . getCollaborativeEditing ( ) ? this . autoSaveGapSlow : this . autoSaveGapFast ; var gap = new Date - this . lastSaveTime - saveGap ; if ( 0 <= gap ) this . asc _Save ( true ) } ; spreadsheet _api . prototype . _onUpdateDocumentCanSave = function ( ) { var tmp = History . Have _Changes ( ) ||
this . collaborativeEditing . getCollaborativeEditing ( ) && 0 !== this . collaborativeEditing . getOwnLocksLength ( ) || this . asc _getCellEditMode ( ) ; if ( tmp !== this . isDocumentCanSave ) { this . isDocumentCanSave = tmp ; this . handlers . trigger ( "asc_onDocumentCanSaveChanged" , this . isDocumentCanSave ) } } ; spreadsheet _api . prototype . _onUpdateDocumentCanUndoRedo = function ( ) { AscCommon . History . _sendCanUndoRedo ( ) } ; spreadsheet _api . prototype . _onCheckCommentRemoveLock = function ( lockElem ) { var res = false ; var sheetId = lockElem [ "sheetId" ] ; if ( - 1 !== sheetId &&
0 === sheetId . indexOf ( AscCommonExcel . CCellCommentator . sStartCommentId ) ) { res = true ; this . handlers . trigger ( "asc_onUnLockComment" , lockElem [ "rangeOrObjectId" ] ) } return res } ; spreadsheet _api . prototype . onUpdateDocumentModified = function ( bIsModified ) { if ( this . canSave ) { this . handlers . trigger ( "asc_onDocumentModifiedChanged" , bIsModified ) ; this . _onUpdateDocumentCanSave ( ) ; if ( undefined !== window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "onDocumentModifiedChanged" ] ( bIsModified ) } } ; spreadsheet _api . prototype . asc _setLocalization =
function ( oLocalizedData ) { if ( ! this . isLoadFullApi ) { this . tmpLocalization = oLocalizedData ; return } if ( null == oLocalizedData ) { AscCommonExcel . cFormulaFunctionLocalized = null ; AscCommonExcel . cFormulaFunctionToLocale = null } else { AscCommonExcel . cFormulaFunctionLocalized = { } ; AscCommonExcel . cFormulaFunctionToLocale = { } ; var localName ; for ( var i in AscCommonExcel . cFormulaFunction ) { localName = oLocalizedData [ i ] ? oLocalizedData [ i ] : null ; localName = localName ? localName : i ; AscCommonExcel . cFormulaFunctionLocalized [ localName ] = AscCommonExcel . cFormulaFunction [ i ] ;
AscCommonExcel . cFormulaFunctionToLocale [ i ] = localName } } AscCommon . build _local _rx ( oLocalizedData ? oLocalizedData [ "LocalFormulaOperands" ] : null ) ; if ( this . wb ) this . wb . initFormulasList ( ) ; if ( this . wbModel ) this . wbModel . rebuildColors ( ) } ; spreadsheet _api . prototype . asc _nativeOpenFile = function ( base64File , version , isUser , xlsxPath ) { var t = this ; asc [ "editor" ] = this ; this . SpellCheckUrl = "" ; if ( undefined == isUser ) { this . User = new AscCommon . asc _CUser ; this . User . setId ( "TM" ) ; this . User . setUserName ( "native" ) } if ( undefined !== version ) AscCommon . CurFileVersion =
version ; this . _openDocument ( base64File ) ; var thenCallback = function ( ) { g _oIdCounter . Set _Load ( false ) ; AscCommon . checkCultureInfoFontPicker ( ) ; AscCommonExcel . checkStylesNames ( t . wbModel . CellStyles ) ; t . _coAuthoringInit ( ) ; t . wb = new AscCommonExcel . WorkbookView ( t . wbModel , t . controller , t . handlers , window [ "_null_object" ] , window [ "_null_object" ] , t , t . collaborativeEditing , t . fontRenderingMode ) } ; return this . openDocumentFromZip ( t . wbModel , xlsxPath ) . then ( thenCallback , thenCallback ) } ; spreadsheet _api . prototype . asc _nativeCalculateFile =
function ( ) { window [ "DoctRendererMode" ] = true ; this . wb . _nativeCalculate ( ) } ; spreadsheet _api . prototype . asc _nativeApplyChanges = function ( changes ) { for ( var i = 0 , l = changes . length ; i < l ; ++ i ) this . CoAuthoringApi . onSaveChanges ( changes [ i ] , null , true ) ; this . collaborativeEditing . applyChanges ( ) } ; spreadsheet _api . prototype . asc _nativeApplyChanges2 = function ( data , isFull ) { if ( null != this . wbModel ) this . oRedoObjectParamNative = this . wbModel . DeserializeHistoryNative ( this . oRedoObjectParamNative , data , isFull ) ; if ( isFull ) { this . _onUpdateAfterApplyChanges ( ) ;
if ( window [ "NATIVE_EDITOR_ENJINE" ] === true && window [ "native" ] [ "AddImageInChanges" ] && window [ "NATIVE_EDITOR_ENJINE_NEW_IMAGES" ] ) { var _new _images = window [ "NATIVE_EDITOR_ENJINE_NEW_IMAGES" ] ; var _new _images _len = _new _images . length ; for ( var nImage = 0 ; nImage < _new _images _len ; nImage ++ ) window [ "native" ] [ "AddImageInChanges" ] ( _new _images [ nImage ] ) } } } ; spreadsheet _api . prototype . asc _nativeGetFile = function ( ) { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; return oBinaryFileWriter . Write ( ) } ; spreadsheet _api . prototype . asc _nativeGetFile3 =
function ( ) { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; oBinaryFileWriter . Write ( true , true ) ; return { data : oBinaryFileWriter . Write ( true , true ) , header : oBinaryFileWriter . WriteFileHeader ( oBinaryFileWriter . Memory . GetCurPosition ( ) , Asc . c _nVersionNoBase64 ) } } ; spreadsheet _api . prototype . asc _nativeGetFileData = function ( ) { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; oBinaryFileWriter . Write ( true ) ; var _header = oBinaryFileWriter . WriteFileHeader ( oBinaryFileWriter . Memory . GetCurPosition ( ) ,
Asc . c _nVersionNoBase64 ) ; window [ "native" ] [ "Save_End" ] ( _header , oBinaryFileWriter . Memory . GetCurPosition ( ) ) ; return oBinaryFileWriter . Memory . ImData . data } ; spreadsheet _api . prototype . asc _nativeCalculate = function ( ) { } ; spreadsheet _api . prototype . asc _nativePrint = function ( _printer , _page , _options ) { var _adjustPrint = window . AscDesktopEditor _PrintOptions && window . AscDesktopEditor _PrintOptions . advancedOptions || new Asc . asc _CAdjustPrint ; window . AscDesktopEditor _PrintOptions = undefined ; var pageSetup ; var countWorksheets = this . wbModel . getWorksheetCount ( ) ;
if ( _options ) { var isOnlyFirstPage = _options [ "printOptions" ] && _options [ "printOptions" ] [ "onlyFirstPage" ] ; if ( isOnlyFirstPage ) _adjustPrint . isOnlyFirstPage = true ; var spreadsheetLayout = _options [ "spreadsheetLayout" ] ; var _ignorePrintArea = spreadsheetLayout && ( true === spreadsheetLayout [ "ignorePrintArea" ] || false === spreadsheetLayout [ "ignorePrintArea" ] ) ? spreadsheetLayout [ "ignorePrintArea" ] : null ; if ( null !== _ignorePrintArea ) _adjustPrint . asc _setIgnorePrintArea ( _ignorePrintArea ) ; else _adjustPrint . asc _setIgnorePrintArea ( true ) ;
_adjustPrint . asc _setPrintType ( Asc . c _oAscPrintType . EntireWorkbook ) ; var ws , newPrintOptions ; var _orientation = spreadsheetLayout ? spreadsheetLayout [ "orientation" ] : null ; if ( _orientation === "portrait" ) _orientation = Asc . c _oAscPageOrientation . PagePortrait ; else if ( _orientation === "landscape" ) _orientation = Asc . c _oAscPageOrientation . PageLandscape ; else _orientation = null ; var _fitToWidth = spreadsheetLayout && AscCommon . isNumber ( spreadsheetLayout [ "fitToWidth" ] ) ? spreadsheetLayout [ "fitToWidth" ] : null ; var _fitToHeight = spreadsheetLayout &&
AscCommon . isNumber ( spreadsheetLayout [ "fitToHeight" ] ) ? spreadsheetLayout [ "fitToHeight" ] : null ; var _scale = spreadsheetLayout && AscCommon . isNumber ( spreadsheetLayout [ "scale" ] ) ? spreadsheetLayout [ "scale" ] : null ; var _headings = spreadsheetLayout && ( true === spreadsheetLayout [ "headings" ] || false === spreadsheetLayout [ "headings" ] ) ? spreadsheetLayout [ "headings" ] : null ; var _gridLines = spreadsheetLayout && ( true === spreadsheetLayout [ "gridLines" ] || false === spreadsheetLayout [ "gridLines" ] ) ? spreadsheetLayout [ "gridLines" ] : null ; var _pageSize =
spreadsheetLayout ? spreadsheetLayout [ "pageSize" ] : null ; if ( _pageSize ) { var width = AscCommon . valueToMm ( _pageSize [ "width" ] ) ; var height = AscCommon . valueToMm ( _pageSize [ "height" ] ) ; _pageSize = null !== width && null !== height ? { width : width , height : height } : null } var _margins = spreadsheetLayout ? spreadsheetLayout [ "margins" ] : null ; if ( _margins ) { var left = AscCommon . valueToMm ( _margins [ "left" ] ) ; var right = AscCommon . valueToMm ( _margins [ "right" ] ) ; var top = AscCommon . valueToMm ( _margins [ "top" ] ) ; var bottom = AscCommon . valueToMm ( _margins [ "bottom" ] ) ;
_margins = null !== left && null !== right && null !== top && null !== bottom ? { left : left , right : right , top : top , bottom : bottom } : null } for ( var index = 0 ; index < this . wbModel . getWorksheetCount ( ) ; ++ index ) { ws = this . wbModel . getWorksheet ( index ) ; newPrintOptions = ws . PagePrintOptions . clone ( ) ; var _pageSetup = newPrintOptions . pageSetup ; if ( null !== _orientation ) _pageSetup . orientation = _orientation ; if ( _fitToWidth || _fitToHeight ) { _pageSetup . fitToWidth = _fitToWidth ; _pageSetup . fitToHeight = _fitToHeight } else if ( _scale ) { _pageSetup . scale = _scale ; _pageSetup . fitToWidth =
0 ; _pageSetup . fitToHeight = 0 } if ( null !== _headings ) newPrintOptions . headings = _headings ; if ( null !== _gridLines ) newPrintOptions . gridLines = _gridLines ; if ( _pageSize ) { _pageSetup . width = _pageSize . width ; _pageSetup . height = _pageSize . height } var pageMargins = newPrintOptions . pageMargins ; if ( _margins ) { pageMargins . left = _margins . left ; pageMargins . right = _margins . right ; pageMargins . top = _margins . top ; pageMargins . bottom = _margins . bottom } if ( ! _adjustPrint . pageOptionsMap ) _adjustPrint . pageOptionsMap = [ ] ; _adjustPrint . pageOptionsMap [ index ] =
newPrintOptions } } var _printPagesData = this . wb . calcPagesPrint ( _adjustPrint ) ; if ( undefined === _printer && _page === undefined ) { _printer = this . wb . printSheets ( _printPagesData ) . DocumentRenderer ; if ( undefined !== window [ "AscDesktopEditor" ] ) { var pagescount = _printer . m _lPagesCount ; window [ "AscDesktopEditor" ] [ "Print_Start" ] ( this . documentId + "/" , pagescount , "" , - 1 ) ; for ( var i = 0 ; i < pagescount ; i ++ ) { var _start = _printer . m _arrayPages [ i ] . StartOffset ; var _end = _printer . Memory . pos ; if ( i != pagescount - 1 ) _end = _printer . m _arrayPages [ i + 1 ] . StartOffset ;
window [ "AscDesktopEditor" ] [ "Print_Page" ] ( _printer . Memory . GetBase64Memory2 ( _start , _end - _start ) , _printer . m _arrayPages [ i ] . Width , _printer . m _arrayPages [ i ] . Height ) } var paramEnd = 0 ; if ( _adjustPrint && _adjustPrint . asc _getPrintType ( ) == Asc . c _oAscPrintType . EntireWorkbook ) for ( var j = 0 ; j < countWorksheets ; ++ j ) { if ( _adjustPrint && _adjustPrint . pageOptionsMap && _adjustPrint . pageOptionsMap [ j ] ) pageSetup = _adjustPrint . pageOptionsMap [ j ] . pageSetup ; else pageSetup = this . wbModel . getWorksheet ( j ) . PagePrintOptions . asc _getPageSetup ( ) ;
if ( pageSetup . asc _getFitToWidth ( ) || pageSetup . asc _getFitToHeight ( ) ) paramEnd |= 1 } if ( _adjustPrint && _adjustPrint . asc _getPrintType ( ) == Asc . c _oAscPrintType . ActiveSheets ) { var activeSheet = this . wbModel . getActive ( ) ; if ( _adjustPrint && _adjustPrint . pageOptionsMap && _adjustPrint . pageOptionsMap [ activeSheet ] ) pageSetup = _adjustPrint . pageOptionsMap [ activeSheet ] . pageSetup ; else pageSetup = this . wbModel . getWorksheet ( activeSheet ) . PagePrintOptions . asc _getPageSetup ( ) ; if ( pageSetup . asc _getFitToWidth ( ) || pageSetup . asc _getFitToHeight ( ) ) paramEnd |=
1 } window [ "AscDesktopEditor" ] [ "Print_End" ] ( paramEnd ) } } else this . wb . printSheets ( _printPagesData , _printer ) ; return _printer . Memory } ; spreadsheet _api . prototype . asc _nativePrintPagesCount = function ( ) { return 1 } ; spreadsheet _api . prototype . asc _nativeGetPDF = function ( options ) { var _ret = this . asc _nativePrint ( undefined , undefined , options ) ; window [ "native" ] [ "Save_End" ] ( "" , _ret . GetCurPosition ( ) ) ; return _ret . data } ; spreadsheet _api . prototype . asc _canPaste = function ( ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; return true } ;
spreadsheet _api . prototype . asc _endPaste = function ( ) { History . EndTransaction ( ) } ; spreadsheet _api . prototype . asc _Recalculate = function ( ) { History . EndTransaction ( ) ; var ws = this . wbModel . getActiveWs ( ) ; this . wbModel . handlers . trigger ( "showWorksheet" , ws . getId ( ) ) ; var lastPointIndex = History . Points && History . Points . length - 1 ; var lastPoint = History . Points [ lastPointIndex ] ; if ( lastPoint && lastPoint . UpdateRigions ) for ( var i in lastPoint . UpdateRigions ) this . wb . handlers . trigger ( "cleanCellCache" , i , [ lastPoint . UpdateRigions [ i ] ] , null ,
true ) ; this . _onUpdateAfterApplyChanges ( ) } ; spreadsheet _api . prototype . pre _Paste = function ( _fonts , _images , callback ) { AscFonts . FontPickerByCharacter . extendFonts ( _fonts ) ; var oFontMap = { } ; for ( var i = 0 ; i < _fonts . length ; ++ i ) oFontMap [ _fonts [ i ] . name ] = 1 ; this . _loadFonts ( oFontMap , function ( ) { var aImages = [ ] ; for ( var key in _images ) if ( _images . hasOwnProperty ( key ) ) aImages . push ( _images [ key ] ) ; if ( aImages . length > 0 ) window [ "Asc" ] [ "editor" ] . ImageLoader . LoadDocumentImages ( aImages , true ) ; callback ( ) } ) } ; spreadsheet _api . prototype . getDefaultFontFamily =
function ( ) { return this . wbModel . getDefaultFont ( ) } ; spreadsheet _api . prototype . getDefaultFontSize = function ( ) { return this . wbModel . getDefaultSize ( ) } ; spreadsheet _api . prototype . _onEndLoadSdk = function ( ) { AscCommon . baseEditorsApi . prototype . _onEndLoadSdk . call ( this ) ; History = AscCommon . History ; this . controller = new AscCommonExcel . asc _CEventsController ; this . formulasList = AscCommonExcel . getFormulasInfo ( ) ; this . asc _setLocale ( this . tmpLCID , this . tmpDecimalSeparator , this . tmpGroupSeparator ) ; this . asc _setLocalization ( this . tmpLocalization ) ;
this . asc _setViewMode ( this . isViewMode ) ; if ( this . openFileCryptBinary ) this . openFileCryptCallback ( this . openFileCryptBinary ) } ; spreadsheet _api . prototype . asc _OnShowContextMenu = function ( ) { this . asc _closeCellEditor ( ) } ; spreadsheet _api . prototype . _changePivotSimple = function ( pivot , isInsert , needUpdateView , callback ) { var wsModel = pivot . GetWS ( ) ; var ws = this . wb . getWorksheet ( wsModel . getIndex ( ) ) ; if ( isInsert ) pivot . stashEmptyReportRange ( ) ; else pivot . stashCurReportRange ( ) ; callback ( wsModel ) ; var dataRow ; var pivotChanged = pivot . getAndCleanChanged ( ) ;
if ( pivotChanged . data ) { var updateRes = pivot . updateAfterEdit ( ) ; dataRow = updateRes . dataRow } this . _updatePivotTable ( pivot , pivotChanged , wsModel , ws , dataRow , needUpdateView , false ) } ; spreadsheet _api . prototype . updatePivotTables = function ( ) { var t = this ; this . wbModel . forEach ( function ( wsModel ) { var ws = t . wb . getWorksheet ( wsModel . getIndex ( ) ) ; for ( var i = 0 ; i < wsModel . pivotTables . length ; ++ i ) { var pivot = wsModel . pivotTables [ i ] ; t . _updatePivotTable ( pivot , pivot . getAndCleanChanged ( ) , wsModel , ws , undefined , false , true ) } } ) } ; spreadsheet _api . prototype . _updatePivotTable =
function ( pivot , changed , wsModel , ws , dataRow , needUpdateView , canModifyDocument ) { var ranges = wsModel . updatePivotTable ( pivot , changed , dataRow , canModifyDocument ) ; if ( needUpdateView ) { if ( changed . oldRanges ) ws . updateRanges ( changed . oldRanges ) ; if ( ranges ) { ws . updateRanges ( ranges ) ; ws . _autoFitColumnsWidth ( ranges ) } if ( this . wbModel . getActive ( ) === wsModel . getIndex ( ) ) ws . draw ( ) } } ; spreadsheet _api . prototype . asc _getAddPivotTableOptions = function ( range ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . model . getSelection ( ) . isSingleRange ( ) ) return ws . getAddFormatTableOptions ( range ,
true ) ; else { var res = new AscCommonExcel . AddFormatTableOptions ; res . asc _setIsTitle ( false ) ; res . asc _setRange ( "" ) } return res } ; spreadsheet _api . prototype . asc _insertPivotNewWorksheet = function ( dataRef , newSheetName ) { var t = this ; if ( Asc . CT _pivotTableDefinition . prototype . isValidDataRef ( dataRef ) ) { var wb = this . wbModel ; this . _isLockedAddWorksheets ( function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; var worksheets = t . _addWorksheetsWithoutLock ( [ newSheetName ] , wb . getActive ( ) ) ; var ws = worksheets [ 0 ] ; var range =
new Asc . Range ( AscCommonExcel . NEW _PIVOT _COL , AscCommonExcel . NEW _PIVOT _ROW , AscCommonExcel . NEW _PIVOT _COL , AscCommonExcel . NEW _PIVOT _ROW ) ; t . _asc _insertPivot ( wb , dataRef , ws , range , false ) ; History . EndTransaction ( ) } else t . sendEvent ( "asc_onError" , c _oAscError . ID . LockedCellPivot , c _oAscError . Level . NoCritical ) } ) } else this . sendEvent ( "asc_onError" , c _oAscError . ID . PivotLabledColumns , c _oAscError . Level . NoCritical ) } ; spreadsheet _api . prototype . asc _insertPivotExistingWorksheet = function ( dataRef , pivotRef , confirmation ) { var location =
AscFormat . ExecuteNoHistory ( function ( ) { return Asc . CT _pivotTableDefinition . prototype . parseDataRef ( pivotRef ) } , this , [ ] ) ; if ( location ) { var wb = this . wbModel ; var ws = location . ws ; if ( ws ) this . wbModel . setActiveById ( ws . getId ( ) ) ; else ws = wb . getActiveWs ( ) ; this . wb . updateWorksheetByModel ( ) ; this . wb . showWorksheet ( ) ; this . _asc _insertPivot ( wb , dataRef , ws , location . bbox , false ) } } ; spreadsheet _api . prototype . _asc _insertPivot = function ( wb , dataRef , ws , location , confirmation ) { var t = this ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ;
var pivotName = wb . dependencyFormulas . getNextPivotName ( ) ; var pivot = new Asc . CT _pivotTableDefinition ( true ) ; var cacheDefinition = wb . getPivotCacheByDataRef ( dataRef ) ; if ( ! cacheDefinition ) { cacheDefinition = new Asc . CT _PivotCacheDefinition ; cacheDefinition . asc _create ( ) ; cacheDefinition . fromDataRef ( dataRef ) } pivot . asc _create ( ws , pivotName , cacheDefinition , location ) ; pivot . stashEmptyReportRange ( ) ; this . _changePivotWithLockExt ( pivot , confirmation , true , function ( ) { ws . insertPivotTable ( pivot , true , false ) ; pivot . setChanged ( true ) } ,
function ( error , warn ) { t . _changePivotEndCheckError ( error , warn , function ( can ) { if ( can ) t . _asc _insertPivot ( wb , dataRef , ws , location , true ) } ) } ) ; History . EndTransaction ( ) ; return pivot } ; spreadsheet _api . prototype . asc _refreshAllPivots = function ( ) { var t = this ; this . wbModel . forEach ( function ( ws ) { for ( var i = 0 ; i < ws . pivotTables . length ; ++ i ) ws . pivotTables [ i ] . asc _refresh ( t ) } ) } ; spreadsheet _api . prototype . _isLockedPivot = function ( pivot , callback ) { var lockInfos = [ ] ; pivot . fillLockInfo ( lockInfos , this . collaborativeEditing ) ; this . collaborativeEditing . lock ( lockInfos ,
callback ) } ; spreadsheet _api . prototype . _isLockedPivotAndConnectedBySlicer = function ( pivot , flds , callback ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) { callback ( false ) ; return } var t = this ; var lockInfos = [ ] ; pivot . fillLockInfo ( lockInfos , this . collaborativeEditing ) ; flds . forEach ( function ( fld ) { var pivotTables = pivot . getPivotTablesConnectedBySlicer ( fld ) ; pivotTables . forEach ( function ( pivotTable ) { pivotTable . fillLockInfo ( lockInfos , t . collaborativeEditing ) } ) } ) ; this . collaborativeEditing . lock ( lockInfos ,
callback ) } ; spreadsheet _api . prototype . _isLockedPivotAndConnectedByPivotCache = function ( pivotTables , callback ) { if ( this . collaborativeEditing . getGlobalLock ( ) ) { callback ( false ) ; return } var t = this ; var lockInfos = [ ] ; pivotTables . forEach ( function ( pivotTable ) { pivotTable . fillLockInfo ( lockInfos , t . collaborativeEditing ) } ) ; this . collaborativeEditing . lock ( lockInfos , callback ) } ; spreadsheet _api . prototype . _changePivotWithLock = function ( pivot , onAction , doNotCheckUnderlyingData ) { this . _changePivotWithLockExt ( pivot , false , true , onAction ,
doNotCheckUnderlyingData ) } ; spreadsheet _api . prototype . _changePivotWithLockExt = function ( pivot , confirmation , updateSelection , onAction , doNotCheckUnderlyingData ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; var t = this ; this . _isLockedPivot ( pivot , function ( res ) { if ( ! res ) { t . sendEvent ( "asc_onError" , c _oAscError . ID . PivotOverlap , c _oAscError . Level . NoCritical ) ; return } History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; t . wbModel . dependencyFormulas . lockRecal ( ) ; var changeRes = t . _changePivot ( pivot ,
confirmation , updateSelection , onAction , doNotCheckUnderlyingData ) ; t . wbModel . dependencyFormulas . unlockRecal ( ) ; History . EndTransaction ( ) ; t . _changePivotEndCheckError ( pivot , changeRes , function ( ) { t . _changePivotWithLockExt ( pivot , true , updateSelection , onAction ) } ) } ) } ; spreadsheet _api . prototype . _changePivotAndConnectedBySlicerWithLock = function ( pivot , flds , onAction ) { var t = this ; this . _isLockedPivotAndConnectedBySlicer ( pivot , flds , function ( res ) { if ( ! res ) { t . sendEvent ( "asc_onError" , c _oAscError . ID . PivotOverlap , c _oAscError . Level . NoCritical ) ;
return } onAction ( ) } ) } ; spreadsheet _api . prototype . _changePivotAndConnectedByPivotCacheWithLock = function ( pivot , confirmation , onAction , onRepeat ) { var t = this ; var pivotTables = pivot . getPivotTablesConnectedByPivotCache ( ) ; this . _isLockedPivotAndConnectedByPivotCache ( pivotTables , function ( res ) { if ( ! res ) { t . sendEvent ( "asc_onError" , c _oAscError . ID . PivotOverlap , c _oAscError . Level . NoCritical ) ; return } History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; t . wbModel . dependencyFormulas . lockRecal ( ) ; var changeRes = onAction ( confirmation ,
pivotTables ) ; t . wbModel . dependencyFormulas . unlockRecal ( ) ; History . EndTransaction ( ) ; t . _changePivotEndCheckError ( pivot , changeRes , onRepeat ) } ) } ; spreadsheet _api . prototype . _changePivot = function ( pivot , confirmation , updateSelection , onAction , doNotCheckUnderlyingData ) { if ( ! doNotCheckUnderlyingData && ! pivot . checkPivotUnderlyingData ( ) ) return { error : c _oAscError . ID . PivotWithoutUnderlyingData , warning : c _oAscError . ID . No , updateRes : undefined } ; var wsModel = pivot . GetWS ( ) ; pivot . stashCurReportRange ( ) ; onAction ( wsModel ) ; var pivotChanged =
pivot . getAndCleanChanged ( ) ; var error = c _oAscError . ID . No ; var warning = c _oAscError . ID . No ; var updateRes , reportRanges ; if ( pivotChanged . data ) { updateRes = pivot . updateAfterEdit ( ) ; reportRanges = pivot . getReportRanges ( ) ; error = wsModel . checkPivotReportLocationForError ( reportRanges , pivot ) ; if ( c _oAscError . ID . No === error ) { warning = wsModel . checkPivotReportLocationForConfirm ( reportRanges , pivotChanged ) ; if ( confirmation ) warning = c _oAscError . ID . No } } var isSuccess = c _oAscError . ID . No === error && c _oAscError . ID . No === warning ; if ( isSuccess ) { var ws =
this . wb . getWorksheet ( wsModel . getIndex ( ) ) ; this . _updatePivotTable ( pivot , pivotChanged , wsModel , ws , updateRes && updateRes . dataRow , true , true ) ; if ( updateSelection ) pivot . updateSelection ( ws ) ; if ( this . wbModel . getActive ( ) === wsModel . getIndex ( ) ) ws . draw ( ) } else pivot . stashEmptyReportRange ( ) ; return { error : error , warning : warning , updateRes : updateRes } } ; spreadsheet _api . prototype . _changePivotRevert = function ( pivot ) { History . Undo ( ) ; History . Clear _Redo ( ) ; this . _onUpdateDocumentCanUndoRedo ( ) } ; spreadsheet _api . prototype . _changePivotEndCheckError =
function ( pivot , changeRes , onRepeat ) { if ( ! changeRes ) return true ; if ( c _oAscError . ID . No !== changeRes . error ) { this . _changePivotRevert ( pivot ) ; this . sendEvent ( "asc_onError" , changeRes . error , c _oAscError . Level . NoCritical ) } else if ( c _oAscError . ID . No !== changeRes . warning ) { this . _changePivotRevert ( pivot ) ; this . handlers . trigger ( "asc_onConfirmAction" , Asc . c _oAscConfirm . ConfirmReplaceRange , function ( can ) { if ( can ) onRepeat ( ) } ) } else return true ; return false } ; spreadsheet _api . prototype . _selectSearchingResults = function ( ) { var ws = this . wbModel . getActiveWs ( ) ;
if ( ws && ws . lastFindOptions ) this . wb . drawWS ( ) } ; spreadsheet _api . prototype . asc _getAppProps = function ( ) { return this . wbModel && this . wbModel . App || null } ; spreadsheet _api . prototype . checkObjectsLock = function ( aObjectsId , fCallback ) { if ( ! this . collaborativeEditing ) { fCallback ( true , true ) ; return } this . collaborativeEditing . checkObjectsLock ( aObjectsId , fCallback ) } ; spreadsheet _api . prototype . asc _setCoreProps = function ( oProps ) { var oCore = this . getInternalCoreProps ( ) ; if ( ! oCore ) return ; this . checkObjectsLock ( [ oCore . Get _Id ( ) ] , function ( bNoLock ) { if ( bNoLock ) { History . Create _NewPoint ( ) ;
oCore . setProps ( oProps ) } } ) ; return null } ; spreadsheet _api . prototype . getInternalCoreProps = function ( ) { return this . wbModel && this . wbModel . Core } ; spreadsheet _api . prototype . asc _setGroupSummary = function ( val , bCol ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) ws . asc _setGroupSummary ( val , bCol ) } ; spreadsheet _api . prototype . asc _getGroupSummaryRight = function ( ) { var ws = this . wbModel . getActiveWs ( ) ; return ws && ws . sheetPr ? ws . sheetPr . SummaryRight : true } ; spreadsheet _api . prototype . asc _getGroupSummaryBelow = function ( ) { var ws = this . wbModel . getActiveWs ( ) ;
return ws && ws . sheetPr ? ws . sheetPr . SummaryBelow : true } ; spreadsheet _api . prototype . asc _getSortProps = function ( bExpand ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) return ws . getSortProps ( bExpand ) } ; spreadsheet _api . prototype . asc _setSortProps = function ( props , bCancel ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) if ( bCancel ) ws . setSortProps ( props , null , true ) ; else ws . setSelectionInfo ( "customSort" , props ) } ; spreadsheet _api . prototype . asc _validSheetName = function ( val ) { return window [ "AscCommon" ] . rx _test _ws _name . isValidName ( val ) } ;
spreadsheet _api . prototype . asc _getRemoveDuplicates = function ( bExpand ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) return ws . getRemoveDuplicates ( bExpand ) } ; spreadsheet _api . prototype . asc _setRemoveDuplicates = function ( props , bCancel ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) return ws . setRemoveDuplicates ( props , bCancel ) } ; spreadsheet _api . prototype . asc _getCF = function ( type , id ) { var sheet ; var rules = this . wbModel . getRulesByType ( type , id ,
true ) ; var aSheet = type === Asc . c _oAscSelectionForCFType . selection ? sheet : this . wbModel . getActiveWs ( ) ; var activeRanges = aSheet . selectionRange . ranges ; var sActiveRanges = [ ] ; if ( activeRanges ) activeRanges . forEach ( function ( item ) { sActiveRanges . push ( item . getAbsName ( ) ) } ) ; return [ rules , "=" + sActiveRanges . join ( AscCommon . FormulaSeparators . functionArgumentSeparator ) ] } ; spreadsheet _api . prototype . asc _getPreviewCF = function ( id , props , text ) { if ( ! props && text ) props = new AscCommonExcel . CellXfs ; if ( props ) props . asc _getPreview2 ( this , id ,
text ) } ; spreadsheet _api . prototype . asc _setCF = function ( arr , deleteIdArr , presetId ) { var ws = this . wb . getWorksheet ( ) ; ws . setCF ( arr , deleteIdArr , presetId ) } ; spreadsheet _api . prototype . asc _clearCF = function ( type , id ) { var rules = this . wbModel . getRulesByType ( type , id ) ; if ( rules && rules . length ) { var ws = this . wb . getWorksheet ( ) ; ws . deleteCF ( rules , type ) } } ; spreadsheet _api . prototype . _onUpdateCFLock = function ( lockElem ) { var t = this ; var sheetId = lockElem . Element [ "sheetId" ] ; if ( - 1 !== sheetId && 0 === sheetId . indexOf ( AscCommonExcel . CConditionalFormattingRule . sStartLockCFId ) ) { sheetId =
sheetId . split ( AscCommonExcel . CConditionalFormattingRule . sStartLockCFId ) [ 1 ] ; var wsModel = this . wbModel . getWorksheetById ( sheetId ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; var cFRule = wsModel . getCFRuleById ( lockElem . Element [ "rangeOrObjectId" ] ) ; if ( cFRule && cFRule . val ) { cFRule = cFRule . val ; cFRule . isLock = lockElem . UserId ; this . handlers . trigger ( "asc_onLockCFRule" , wsIndex , cFRule . id , lockElem . UserId ) } else { var wsView = this . wb . getWorksheetById ( sheetId ) ; wsView . _lockAddNewRule = true } this . handlers . trigger ( "asc_onLockCFManager" ,
wsModel . index ) } } } ; spreadsheet _api . prototype . _onUnlockCF = function ( ) { var t = this ; if ( t . wbModel ) { var i , length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLockedRules = false ; if ( wsModel . aConditionalFormattingRules && wsModel . aConditionalFormattingRules . length ) { wsModel . aConditionalFormattingRules . forEach ( function ( _rule ) { if ( _rule . isLock ) isLockedRules = true } ) ; if ( ! isLockedRules ) { var wsView = this . wb . getWorksheetById ( wsModel . Id ) ;
if ( wsView . _lockAddNewRule ) isLockedRules = true } } if ( ! isLockedRules ) t . handlers . trigger ( "asc_onUnLockCFManager" , wsIndex ) } } } ; spreadsheet _api . prototype . asc _getFullCFIcons = function ( ) { return AscCommonExcel . getFullCFIcons ( ) } ; spreadsheet _api . prototype . asc _getCFPresets = function ( ) { return AscCommonExcel . getFullCFPresets ( ) } ; spreadsheet _api . prototype . asc _getCFIconsByType = function ( ) { return AscCommonExcel . getCFIconsByType ( ) } ; spreadsheet _api . prototype . _onCheckCFRemoveLock = function ( lockElem ) { var res = false ; var t = this ;
var sheetId = lockElem [ "sheetId" ] ; if ( - 1 !== sheetId && 0 === sheetId . indexOf ( AscCommonExcel . CConditionalFormattingRule . sStartLockCFId ) ) { res = true ; if ( t . wbModel ) { sheetId = sheetId . split ( AscCommonExcel . CConditionalFormattingRule . sStartLockCFId ) [ 1 ] ; var wsModel = t . wbModel . getWorksheetById ( sheetId ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; var wsView = this . wb . getWorksheetById ( sheetId ) ; var cFRule = wsModel . getCFRuleById ( lockElem [ "rangeOrObjectId" ] ) ; if ( cFRule ) { if ( cFRule . val . isLock ) cFRule . val . isLock = null ; else wsView . _lockAddNewRule =
null ; this . handlers . trigger ( "asc_onUnLockCFRule" , wsIndex , lockElem [ "rangeOrObjectId" ] ) } else wsView . _lockAddNewRule = null } } } return res } ; spreadsheet _api . prototype . asc _isValidDataRefCf = function ( type , props ) { return AscCommonExcel . isValidDataRefCf ( type , props ) } ; spreadsheet _api . prototype . asc _beforeInsertSlicer = function ( ) { return this . wb . beforeInsertSlicer ( ) } ; spreadsheet _api . prototype . asc _insertSlicer = function ( arr ) { return this . wb . insertSlicers ( arr ) } ; spreadsheet _api . prototype . asc _setSlicers = function ( names , obj ) { return this . wb . setSlicers ( names ,
obj ) } ; spreadsheet _api . prototype . asc _Remove = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender && ws . objectRender . controller ) ws . objectRender . controller . resetChartElementsSelection ( ) ; AscCommon . baseEditorsApi . prototype . asc _Remove . call ( this ) } ; spreadsheet _api . prototype . asc _getDataValidationProps = function ( extend ) { var ws = this . wbModel . getActiveWs ( ) ; if ( ws ) return ws . getDataValidationProps ( extend ) } ; spreadsheet _api . prototype . asc _setDataValidation = function ( props , switchApplySameSettings ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; if ( ws ) if ( undefined === switchApplySameSettings ) return ws . setDataValidationProps ( props ) ; else return ws . setDataValidationSameSettings ( props , switchApplySameSettings ) } ; spreadsheet _api . prototype . asc _setSkin = function ( theme ) { AscCommon . updateGlobalSkin ( theme ) ; var elem = document . getElementById ( "ws-v-scrollbar" ) ; if ( elem ) elem . style . backgroundColor = AscCommon . GlobalSkin . ScrollBackgroundColor ; elem = document . getElementById ( "ws-h-scrollbar" ) ; if ( elem ) elem . style . backgroundColor =
AscCommon . GlobalSkin . ScrollBackgroundColor ; elem = document . getElementById ( "ws-scrollbar-corner" ) ; if ( elem ) elem . style . backgroundColor = AscCommon . GlobalSkin . ScrollBackgroundColor ; if ( this . wb ) { this . wb . updateSkin ( ) ; var ws = this . wb . getWorksheet ( ) ; if ( ws ) { this . controller . updateScrollSettings ( ) ; ws . draw ( ) } } } ; spreadsheet _api . prototype . onUpdateRestrictions = function ( ) { var oHistory = AscCommon . History ; if ( this . isRestrictionSignatures ( ) && oHistory && ! oHistory . Have _Changes ( ) ) oHistory . Clear ( ) } ; spreadsheet _api . prototype . isShowShapeAdjustments =
function ( ) { return this . canEdit ( ) } ; spreadsheet _api . prototype . isShowTableAdjustments = function ( ) { return this . canEdit ( ) } ; spreadsheet _api . prototype . isShowEquationTrack = function ( ) { return this . canEdit ( ) } ; spreadsheet _api . prototype . asc _getEscapeSheetName = function ( sheet ) { return AscCommon . parserHelp . getEscapeSheetName ( sheet ) } ; spreadsheet _api . prototype . asc _undoAllChanges = function ( ) { if ( this . wb . getCellEditMode ( ) ) this . asc _closeCellEditor ( ) ; this . wb . undo ( { All : true } ) } ; spreadsheet _api . prototype . asc _restartCheckSpelling =
function ( ) { if ( this . wb ) this . _spellCheckRestart ( ) } ; asc [ "spreadsheet_api" ] = spreadsheet _api ; prot = spreadsheet _api . prototype ; prot [ "asc_GetFontThumbnailsPath" ] = prot . asc _GetFontThumbnailsPath ; prot [ "asc_setDocInfo" ] = prot . asc _setDocInfo ; prot [ "asc_changeDocInfo" ] = prot . asc _changeDocInfo ; prot [ "asc_getFunctionArgumentSeparator" ] = prot . asc _getFunctionArgumentSeparator ; prot [ "asc_getCurrencySymbols" ] = prot . asc _getCurrencySymbols ; prot [ "asc_getLocaleExample" ] = prot . asc _getLocaleExample ; prot [ "asc_convertNumFormatLocal2NumFormat" ] =
prot . asc _convertNumFormatLocal2NumFormat ; prot [ "asc_convertNumFormat2NumFormatLocal" ] = prot . asc _convertNumFormat2NumFormatLocal ; prot [ "asc_getFormatCells" ] = prot . asc _getFormatCells ; prot [ "asc_getLocaleCurrency" ] = prot . asc _getLocaleCurrency ; prot [ "asc_setLocale" ] = prot . asc _setLocale ; prot [ "asc_getLocale" ] = prot . asc _getLocale ; prot [ "asc_getDecimalSeparator" ] = prot . asc _getDecimalSeparator ; prot [ "asc_getGroupSeparator" ] = prot . asc _getGroupSeparator ; prot [ "asc_getFrozenPaneBorderType" ] = prot . asc _getFrozenPaneBorderType ;
prot [ "asc_setFrozenPaneBorderType" ] = prot . asc _setFrozenPaneBorderType ; prot [ "asc_getEditorPermissions" ] = prot . asc _getEditorPermissions ; prot [ "asc_LoadDocument" ] = prot . asc _LoadDocument ; prot [ "asc_DownloadAs" ] = prot . asc _DownloadAs ; prot [ "asc_Save" ] = prot . asc _Save ; prot [ "forceSave" ] = prot . forceSave ; prot [ "asc_setIsForceSaveOnUserSave" ] = prot . asc _setIsForceSaveOnUserSave ; prot [ "asc_Resize" ] = prot . asc _Resize ; prot [ "asc_Copy" ] = prot . asc _Copy ; prot [ "asc_Paste" ] = prot . asc _Paste ; prot [ "asc_SpecialPaste" ] = prot . asc _SpecialPaste ;
prot [ "asc_Cut" ] = prot . asc _Cut ; prot [ "asc_Undo" ] = prot . asc _Undo ; prot [ "asc_Redo" ] = prot . asc _Redo ; prot [ "asc_TextImport" ] = prot . asc _TextImport ; prot [ "asc_TextToColumns" ] = prot . asc _TextToColumns ; prot [ "asc_TextFromFileOrUrl" ] = prot . asc _TextFromFileOrUrl ; prot [ "asc_getDocumentName" ] = prot . asc _getDocumentName ; prot [ "asc_getAppProps" ] = prot . asc _getAppProps ; prot [ "asc_getCoreProps" ] = prot . asc _getCoreProps ; prot [ "asc_setCoreProps" ] = prot . asc _setCoreProps ; prot [ "asc_isDocumentModified" ] = prot . asc _isDocumentModified ; prot [ "asc_isDocumentCanSave" ] =
prot . asc _isDocumentCanSave ; prot [ "asc_getCanUndo" ] = prot . asc _getCanUndo ; prot [ "asc_getCanRedo" ] = prot . asc _getCanRedo ; prot [ "can_CopyCut" ] = prot . can _CopyCut ; prot [ "asc_setAutoSaveGap" ] = prot . asc _setAutoSaveGap ; prot [ "asc_setViewMode" ] = prot . asc _setViewMode ; prot [ "asc_setFilteringMode" ] = prot . asc _setFilteringMode ; prot [ "asc_setAdvancedOptions" ] = prot . asc _setAdvancedOptions ; prot [ "asc_setPageOptions" ] = prot . asc _setPageOptions ; prot [ "asc_savePagePrintOptions" ] = prot . asc _savePagePrintOptions ; prot [ "asc_getPageOptions" ] =
prot . asc _getPageOptions ; prot [ "asc_changeDocSize" ] = prot . asc _changeDocSize ; prot [ "asc_changePageMargins" ] = prot . asc _changePageMargins ; prot [ "asc_setPageOption" ] = prot . asc _setPageOption ; prot [ "asc_changePageOrient" ] = prot . asc _changePageOrient ; prot [ "asc_changePrintTitles" ] = prot . asc _changePrintTitles ; prot [ "asc_getPrintTitlesRange" ] = prot . asc _getPrintTitlesRange ; prot [ "asc_ChangePrintArea" ] = prot . asc _ChangePrintArea ; prot [ "asc_CanAddPrintArea" ] = prot . asc _CanAddPrintArea ; prot [ "asc_SetPrintScale" ] = prot . asc _SetPrintScale ;
prot [ "asc_decodeBuffer" ] = prot . asc _decodeBuffer ; prot [ "asc_registerCallback" ] = prot . asc _registerCallback ; prot [ "asc_unregisterCallback" ] = prot . asc _unregisterCallback ; prot [ "asc_changeArtImageFromFile" ] = prot . asc _changeArtImageFromFile ; prot [ "asc_SetDocumentPlaceChangedEnabled" ] = prot . asc _SetDocumentPlaceChangedEnabled ; prot [ "asc_SetFastCollaborative" ] = prot . asc _SetFastCollaborative ; prot [ "asc_setThumbnailStylesSizes" ] = prot . asc _setThumbnailStylesSizes ; prot [ "asc_getWorksheetsCount" ] = prot . asc _getWorksheetsCount ;
prot [ "asc_getWorksheetName" ] = prot . asc _getWorksheetName ; prot [ "asc_getWorksheetTabColor" ] = prot . asc _getWorksheetTabColor ; prot [ "asc_setWorksheetTabColor" ] = prot . asc _setWorksheetTabColor ; prot [ "asc_getActiveWorksheetIndex" ] = prot . asc _getActiveWorksheetIndex ; prot [ "asc_getActiveWorksheetId" ] = prot . asc _getActiveWorksheetId ; prot [ "asc_getWorksheetId" ] = prot . asc _getWorksheetId ; prot [ "asc_isWorksheetHidden" ] = prot . asc _isWorksheetHidden ; prot [ "asc_isWorksheetLockedOrDeleted" ] = prot . asc _isWorksheetLockedOrDeleted ; prot [ "asc_isWorkbookLocked" ] =
prot . asc _isWorkbookLocked ; prot [ "asc_isLayoutLocked" ] = prot . asc _isLayoutLocked ; prot [ "asc_isPrintAreaLocked" ] = prot . asc _isPrintAreaLocked ; prot [ "asc_isHeaderFooterLocked" ] = prot . asc _isHeaderFooterLocked ; prot [ "asc_getHiddenWorksheets" ] = prot . asc _getHiddenWorksheets ; prot [ "asc_showWorksheet" ] = prot . asc _showWorksheet ; prot [ "asc_hideWorksheet" ] = prot . asc _hideWorksheet ; prot [ "asc_renameWorksheet" ] = prot . asc _renameWorksheet ; prot [ "asc_addWorksheet" ] = prot . asc _addWorksheet ; prot [ "asc_insertWorksheet" ] = prot . asc _insertWorksheet ;
prot [ "asc_deleteWorksheet" ] = prot . asc _deleteWorksheet ; prot [ "asc_moveWorksheet" ] = prot . asc _moveWorksheet ; prot [ "asc_copyWorksheet" ] = prot . asc _copyWorksheet ; prot [ "asc_cleanSelection" ] = prot . asc _cleanSelection ; prot [ "asc_getZoom" ] = prot . asc _getZoom ; prot [ "asc_setZoom" ] = prot . asc _setZoom ; prot [ "asc_enableKeyEvents" ] = prot . asc _enableKeyEvents ; prot [ "asc_searchEnabled" ] = prot . asc _searchEnabled ; prot [ "asc_findText" ] = prot . asc _findText ; prot [ "asc_replaceText" ] = prot . asc _replaceText ; prot [ "asc_endFindText" ] = prot . asc _endFindText ;
prot [ "asc_findCell" ] = prot . asc _findCell ; prot [ "asc_closeCellEditor" ] = prot . asc _closeCellEditor ; prot [ "asc_StartMoveSheet" ] = prot . asc _StartMoveSheet ; prot [ "asc_EndMoveSheet" ] = prot . asc _EndMoveSheet ; prot [ "asc_setWorksheetRange" ] = prot . asc _setWorksheetRange ; prot [ "asc_setR1C1Mode" ] = prot . asc _setR1C1Mode ; prot [ "asc_setIncludeNewRowColTable" ] = prot . asc _setIncludeNewRowColTable ; prot [ "asc_setShowZeroCellValues" ] = prot . asc _setShowZeroCellValues ; prot [ "asc_setAutoCorrectHyperlinks" ] = prot . asc _setAutoCorrectHyperlinks ; prot [ "asc_getColumnWidth" ] =
prot . asc _getColumnWidth ; prot [ "asc_setColumnWidth" ] = prot . asc _setColumnWidth ; prot [ "asc_showColumns" ] = prot . asc _showColumns ; prot [ "asc_hideColumns" ] = prot . asc _hideColumns ; prot [ "asc_autoFitColumnWidth" ] = prot . asc _autoFitColumnWidth ; prot [ "asc_getRowHeight" ] = prot . asc _getRowHeight ; prot [ "asc_setRowHeight" ] = prot . asc _setRowHeight ; prot [ "asc_autoFitRowHeight" ] = prot . asc _autoFitRowHeight ; prot [ "asc_showRows" ] = prot . asc _showRows ; prot [ "asc_hideRows" ] = prot . asc _hideRows ; prot [ "asc_insertCells" ] = prot . asc _insertCells ; prot [ "asc_deleteCells" ] =
prot . asc _deleteCells ; prot [ "asc_mergeCells" ] = prot . asc _mergeCells ; prot [ "asc_sortCells" ] = prot . asc _sortCells ; prot [ "asc_emptyCells" ] = prot . asc _emptyCells ; prot [ "asc_mergeCellsDataLost" ] = prot . asc _mergeCellsDataLost ; prot [ "asc_sortCellsRangeExpand" ] = prot . asc _sortCellsRangeExpand ; prot [ "asc_getSheetViewSettings" ] = prot . asc _getSheetViewSettings ; prot [ "asc_setDisplayGridlines" ] = prot . asc _setDisplayGridlines ; prot [ "asc_setDisplayHeadings" ] = prot . asc _setDisplayHeadings ; prot [ "asc_setShowZeros" ] = prot . asc _setShowZeros ; prot [ "asc_getDefinedNames" ] =
prot . asc _getDefinedNames ; prot [ "asc_setDefinedNames" ] = prot . asc _setDefinedNames ; prot [ "asc_editDefinedNames" ] = prot . asc _editDefinedNames ; prot [ "asc_delDefinedNames" ] = prot . asc _delDefinedNames ; prot [ "asc_getDefaultDefinedName" ] = prot . asc _getDefaultDefinedName ; prot [ "asc_checkDefinedName" ] = prot . asc _checkDefinedName ; prot [ "asc_addAutoFilter" ] = prot . asc _addAutoFilter ; prot [ "asc_changeAutoFilter" ] = prot . asc _changeAutoFilter ; prot [ "asc_applyAutoFilter" ] = prot . asc _applyAutoFilter ; prot [ "asc_applyAutoFilterByType" ] = prot . asc _applyAutoFilterByType ;
prot [ "asc_reapplyAutoFilter" ] = prot . asc _reapplyAutoFilter ; prot [ "asc_sortColFilter" ] = prot . asc _sortColFilter ; prot [ "asc_getAddFormatTableOptions" ] = prot . asc _getAddFormatTableOptions ; prot [ "asc_clearFilter" ] = prot . asc _clearFilter ; prot [ "asc_clearFilterColumn" ] = prot . asc _clearFilterColumn ; prot [ "asc_changeSelectionFormatTable" ] = prot . asc _changeSelectionFormatTable ; prot [ "asc_changeFormatTableInfo" ] = prot . asc _changeFormatTableInfo ; prot [ "asc_insertCellsInTable" ] = prot . asc _insertCellsInTable ; prot [ "asc_deleteCellsInTable" ] =
prot . asc _deleteCellsInTable ; prot [ "asc_changeDisplayNameTable" ] = prot . asc _changeDisplayNameTable ; prot [ "asc_changeTableRange" ] = prot . asc _changeTableRange ; prot [ "asc_convertTableToRange" ] = prot . asc _convertTableToRange ; prot [ "asc_getTablePictures" ] = prot . asc _getTablePictures ; prot [ "asc_getSlicerPictures" ] = prot . asc _getSlicerPictures ; prot [ "asc_getDefaultTableStyle" ] = prot . asc _getDefaultTableStyle ; prot [ "asc_applyAutoCorrectOptions" ] = prot . asc _applyAutoCorrectOptions ; prot [ "asc_group" ] = prot . asc _group ; prot [ "asc_ungroup" ] =
prot . asc _ungroup ; prot [ "asc_canGroupPivot" ] = prot . asc _canGroupPivot ; prot [ "asc_groupPivot" ] = prot . asc _groupPivot ; prot [ "asc_ungroupPivot" ] = prot . asc _ungroupPivot ; prot [ "asc_clearOutline" ] = prot . asc _clearOutline ; prot [ "asc_changeGroupDetails" ] = prot . asc _changeGroupDetails ; prot [ "asc_checkAddGroup" ] = prot . asc _checkAddGroup ; prot [ "asc_setGroupSummary" ] = prot . asc _setGroupSummary ; prot [ "asc_getGroupSummaryRight" ] = prot . asc _getGroupSummaryRight ; prot [ "asc_getGroupSummaryBelow" ] = prot . asc _getGroupSummaryBelow ; prot [ "asc_showDrawingObjects" ] =
prot . asc _showDrawingObjects ; prot [ "asc_drawingObjectsExist" ] = prot . asc _drawingObjectsExist ; prot [ "asc_getChartObject" ] = prot . asc _getChartObject ; prot [ "asc_addChartDrawingObject" ] = prot . asc _addChartDrawingObject ; prot [ "asc_editChartDrawingObject" ] = prot . asc _editChartDrawingObject ; prot [ "asc_addImageDrawingObject" ] = prot . asc _addImageDrawingObject ; prot [ "asc_getCurrentDrawingMacrosName" ] = prot . asc _getCurrentDrawingMacrosName ; prot [ "asc_assignMacrosToCurrentDrawing" ] = prot . asc _assignMacrosToCurrentDrawing ; prot [ "asc_setSelectedDrawingObjectLayer" ] =
prot . asc _setSelectedDrawingObjectLayer ; prot [ "asc_setSelectedDrawingObjectAlign" ] = prot . asc _setSelectedDrawingObjectAlign ; prot [ "asc_DistributeSelectedDrawingObjectHor" ] = prot . asc _DistributeSelectedDrawingObjectHor ; prot [ "asc_DistributeSelectedDrawingObjectVer" ] = prot . asc _DistributeSelectedDrawingObjectVer ; prot [ "asc_getSelectedDrawingObjectsCount" ] = prot . asc _getSelectedDrawingObjectsCount ; prot [ "SetDrawImagePreviewBulletForMenu" ] = prot . SetDrawImagePreviewBulletForMenu ; prot [ "asc_getChartPreviews" ] = prot . asc _getChartPreviews ;
prot [ "asc_getTextArtPreviews" ] = prot . asc _getTextArtPreviews ; prot [ "asc_getPropertyEditorShapes" ] = prot . asc _getPropertyEditorShapes ; prot [ "asc_getPropertyEditorTextArts" ] = prot . asc _getPropertyEditorTextArts ; prot [ "asc_checkDataRange" ] = prot . asc _checkDataRange ; prot [ "asc_getBinaryFileWriter" ] = prot . asc _getBinaryFileWriter ; prot [ "asc_getWordChartObject" ] = prot . asc _getWordChartObject ; prot [ "asc_cleanWorksheet" ] = prot . asc _cleanWorksheet ; prot [ "asc_showImageFileDialog" ] = prot . asc _showImageFileDialog ; prot [ "asc_addImage" ] =
prot . asc _addImage ; prot [ "asc_setData" ] = prot . asc _setData ; prot [ "asc_getData" ] = prot . asc _getData ; prot [ "asc_onCloseChartFrame" ] = prot . asc _onCloseChartFrame ; prot [ "asc_addComment" ] = prot . asc _addComment ; prot [ "asc_changeComment" ] = prot . asc _changeComment ; prot [ "asc_findComment" ] = prot . asc _findComment ; prot [ "asc_removeComment" ] = prot . asc _removeComment ; prot [ "asc_RemoveAllComments" ] = prot . asc _RemoveAllComments ; prot [ "asc_ResolveAllComments" ] = prot . asc _ResolveAllComments ; prot [ "asc_showComment" ] = prot . asc _showComment ; prot [ "asc_selectComment" ] =
prot . asc _selectComment ; prot [ "asc_showComments" ] = prot . asc _showComments ; prot [ "asc_hideComments" ] = prot . asc _hideComments ; prot [ "setStartPointHistory" ] = prot . setStartPointHistory ; prot [ "setEndPointHistory" ] = prot . setEndPointHistory ; prot [ "asc_startAddShape" ] = prot . asc _startAddShape ; prot [ "asc_endAddShape" ] = prot . asc _endAddShape ; prot [ "asc_addShapeOnSheet" ] = prot . asc _addShapeOnSheet ; prot [ "asc_isAddAutoshape" ] = prot . asc _isAddAutoshape ; prot [ "asc_canAddShapeHyperlink" ] = prot . asc _canAddShapeHyperlink ; prot [ "asc_canGroupGraphicsObjects" ] =
prot . asc _canGroupGraphicsObjects ; prot [ "asc_groupGraphicsObjects" ] = prot . asc _groupGraphicsObjects ; prot [ "asc_canUnGroupGraphicsObjects" ] = prot . asc _canUnGroupGraphicsObjects ; prot [ "asc_unGroupGraphicsObjects" ] = prot . asc _unGroupGraphicsObjects ; prot [ "asc_getGraphicObjectProps" ] = prot . asc _getGraphicObjectProps ; prot [ "asc_GetSelectedText" ] = prot . asc _GetSelectedText ; prot [ "asc_setGraphicObjectProps" ] = prot . asc _setGraphicObjectProps ; prot [ "asc_getOriginalImageSize" ] = prot . asc _getOriginalImageSize ; prot [ "asc_changeShapeType" ] =
prot . asc _changeShapeType ; prot [ "asc_setInterfaceDrawImagePlaceShape" ] = prot . asc _setInterfaceDrawImagePlaceShape ; prot [ "asc_setInterfaceDrawImagePlaceTextArt" ] = prot . asc _setInterfaceDrawImagePlaceTextArt ; prot [ "asc_changeImageFromFile" ] = prot . asc _changeImageFromFile ; prot [ "asc_putPrLineSpacing" ] = prot . asc _putPrLineSpacing ; prot [ "asc_addTextArt" ] = prot . asc _addTextArt ; prot [ "asc_canEditCrop" ] = prot . asc _canEditCrop ; prot [ "asc_startEditCrop" ] = prot . asc _startEditCrop ; prot [ "asc_endEditCrop" ] = prot . asc _endEditCrop ; prot [ "asc_cropFit" ] =
prot . asc _cropFit ; prot [ "asc_cropFill" ] = prot . asc _cropFill ; prot [ "asc_putLineSpacingBeforeAfter" ] = prot . asc _putLineSpacingBeforeAfter ; prot [ "asc_setDrawImagePlaceParagraph" ] = prot . asc _setDrawImagePlaceParagraph ; prot [ "asc_changeShapeImageFromFile" ] = prot . asc _changeShapeImageFromFile ; prot [ "asc_AddMath" ] = prot . asc _AddMath ; prot [ "asc_SetMathProps" ] = prot . asc _SetMathProps ; prot [ "asc_setDefaultLanguage" ] = prot . asc _setDefaultLanguage ; prot [ "asc_nextWord" ] = prot . asc _nextWord ; prot [ "asc_replaceMisspelledWord" ] = prot . asc _replaceMisspelledWord ;
prot [ "asc_ignoreMisspelledWord" ] = prot . asc _ignoreMisspelledWord ; prot [ "asc_spellCheckAddToDictionary" ] = prot . asc _spellCheckAddToDictionary ; prot [ "asc_spellCheckClearDictionary" ] = prot . asc _spellCheckClearDictionary ; prot [ "asc_cancelSpellCheck" ] = prot . asc _cancelSpellCheck ; prot [ "asc_ignoreNumbers" ] = prot . asc _ignoreNumbers ; prot [ "asc_ignoreUppercase" ] = prot . asc _ignoreUppercase ; prot [ "asc_freezePane" ] = prot . asc _freezePane ; prot [ "asc_setSparklineGroup" ] = prot . asc _setSparklineGroup ; prot [ "asc_addSparklineGroup" ] = prot . asc _addSparklineGroup ;
prot [ "asc_getCellInfo" ] = prot . asc _getCellInfo ; prot [ "asc_getActiveCellCoord" ] = prot . asc _getActiveCellCoord ; prot [ "asc_getAnchorPosition" ] = prot . asc _getAnchorPosition ; prot [ "asc_setCellFontName" ] = prot . asc _setCellFontName ; prot [ "asc_setCellFontSize" ] = prot . asc _setCellFontSize ; prot [ "asc_setCellBold" ] = prot . asc _setCellBold ; prot [ "asc_setCellItalic" ] = prot . asc _setCellItalic ; prot [ "asc_setCellUnderline" ] = prot . asc _setCellUnderline ; prot [ "asc_setCellStrikeout" ] = prot . asc _setCellStrikeout ; prot [ "asc_setCellSubscript" ] = prot . asc _setCellSubscript ;
prot [ "asc_setCellSuperscript" ] = prot . asc _setCellSuperscript ; prot [ "asc_setCellAlign" ] = prot . asc _setCellAlign ; prot [ "asc_setCellVertAlign" ] = prot . asc _setCellVertAlign ; prot [ "asc_setCellTextWrap" ] = prot . asc _setCellTextWrap ; prot [ "asc_setCellTextShrink" ] = prot . asc _setCellTextShrink ; prot [ "asc_setCellTextColor" ] = prot . asc _setCellTextColor ; prot [ "asc_setCellFill" ] = prot . asc _setCellFill ; prot [ "asc_setCellBackgroundColor" ] = prot . asc _setCellBackgroundColor ; prot [ "asc_setCellBorders" ] = prot . asc _setCellBorders ; prot [ "asc_setCellFormat" ] =
prot . asc _setCellFormat ; prot [ "asc_setCellAngle" ] = prot . asc _setCellAngle ; prot [ "asc_setCellStyle" ] = prot . asc _setCellStyle ; prot [ "asc_increaseCellDigitNumbers" ] = prot . asc _increaseCellDigitNumbers ; prot [ "asc_decreaseCellDigitNumbers" ] = prot . asc _decreaseCellDigitNumbers ; prot [ "asc_increaseFontSize" ] = prot . asc _increaseFontSize ; prot [ "asc_decreaseFontSize" ] = prot . asc _decreaseFontSize ; prot [ "asc_setCellIndent" ] = prot . asc _setCellIndent ; prot [ "asc_formatPainter" ] = prot . asc _formatPainter ; prot [ "asc_showAutoComplete" ] = prot . asc _showAutoComplete ;
prot [ "asc_getHeaderFooterMode" ] = prot . asc _getHeaderFooterMode ; prot [ "asc_getActiveRangeStr" ] = prot . asc _getActiveRangeStr ; prot [ "asc_onMouseUp" ] = prot . asc _onMouseUp ; prot [ "asc_selectFunction" ] = prot . asc _selectFunction ; prot [ "asc_insertHyperlink" ] = prot . asc _insertHyperlink ; prot [ "asc_removeHyperlink" ] = prot . asc _removeHyperlink ; prot [ "asc_getFullHyperlinkLength" ] = prot . asc _getFullHyperlinkLength ; prot [ "asc_cleanSelectRange" ] = prot . asc _cleanSelectRange ; prot [ "asc_insertInCell" ] = prot . asc _insertInCell ; prot [ "asc_getFormulasInfo" ] =
prot . asc _getFormulasInfo ; prot [ "asc_getFormulaLocaleName" ] = prot . asc _getFormulaLocaleName ; prot [ "asc_getFormulaNameByLocale" ] = prot . asc _getFormulaNameByLocale ; prot [ "asc_startWizard" ] = prot . asc _startWizard ; prot [ "asc_canEnterWizardRange" ] = prot . asc _canEnterWizardRange ; prot [ "asc_insertArgumentsInFormula" ] = prot . asc _insertArgumentsInFormula ; prot [ "asc_calculate" ] = prot . asc _calculate ; prot [ "asc_setFontRenderingMode" ] = prot . asc _setFontRenderingMode ; prot [ "asc_setSelectionDialogMode" ] = prot . asc _setSelectionDialogMode ;
prot [ "asc_ChangeColorScheme" ] = prot . asc _ChangeColorScheme ; prot [ "asc_ChangeColorSchemeByIdx" ] = prot . asc _ChangeColorSchemeByIdx ; prot [ "asc_setListType" ] = prot . asc _setListType ; prot [ "asc_getCurrentListType" ] = prot . asc _getCurrentListType ; prot [ "asc_coAuthoringChatSendMessage" ] = prot . asc _coAuthoringChatSendMessage ; prot [ "asc_coAuthoringGetUsers" ] = prot . asc _coAuthoringGetUsers ; prot [ "asc_coAuthoringChatGetMessages" ] = prot . asc _coAuthoringChatGetMessages ; prot [ "asc_coAuthoringDisconnect" ] = prot . asc _coAuthoringDisconnect ;
prot [ "asc_stopSaving" ] = prot . asc _stopSaving ; prot [ "asc_continueSaving" ] = prot . asc _continueSaving ; prot [ "sendEvent" ] = prot . sendEvent ; prot [ "asc_undoAllChanges" ] = prot . asc _undoAllChanges ; prot [ "asc_setLocalization" ] = prot . asc _setLocalization ; prot [ "asc_nativeOpenFile" ] = prot . asc _nativeOpenFile ; prot [ "asc_nativeCalculateFile" ] = prot . asc _nativeCalculateFile ; prot [ "asc_nativeApplyChanges" ] = prot . asc _nativeApplyChanges ; prot [ "asc_nativeApplyChanges2" ] = prot . asc _nativeApplyChanges2 ; prot [ "asc_nativeGetFile" ] = prot . asc _nativeGetFile ;
prot [ "asc_nativeGetFileData" ] = prot . asc _nativeGetFileData ; prot [ "asc_nativeCalculate" ] = prot . asc _nativeCalculate ; prot [ "asc_nativePrint" ] = prot . asc _nativePrint ; prot [ "asc_nativePrintPagesCount" ] = prot . asc _nativePrintPagesCount ; prot [ "asc_nativeGetPDF" ] = prot . asc _nativeGetPDF ; prot [ "asc_isOffline" ] = prot . asc _isOffline ; prot [ "asc_getUrlType" ] = prot . asc _getUrlType ; prot [ "asc_getSessionToken" ] = prot . asc _getSessionToken ; prot [ "asc_nativeInitBuilder" ] = prot . asc _nativeInitBuilder ; prot [ "asc_SetSilentMode" ] = prot . asc _SetSilentMode ;
prot [ "asc_pluginsRegister" ] = prot . asc _pluginsRegister ; prot [ "asc_pluginRun" ] = prot . asc _pluginRun ; prot [ "asc_pluginStop" ] = prot . asc _pluginStop ; prot [ "asc_pluginResize" ] = prot . asc _pluginResize ; prot [ "asc_pluginButtonClick" ] = prot . asc _pluginButtonClick ; prot [ "asc_startEditCurrentOleObject" ] = prot . asc _startEditCurrentOleObject ; prot [ "asc_pluginEnableMouseEvents" ] = prot . asc _pluginEnableMouseEvents ; prot [ "SetTextBoxInputMode" ] = prot . SetTextBoxInputMode ; prot [ "GetTextBoxInputMode" ] = prot . GetTextBoxInputMode ; prot [ "asc_InputClearKeyboardElement" ] =
prot . asc _InputClearKeyboardElement ; prot [ "asc_OnHideContextMenu" ] = prot . asc _OnHideContextMenu ; prot [ "asc_OnShowContextMenu" ] = prot . asc _OnShowContextMenu ; prot [ "asc_getAddPivotTableOptions" ] = prot . asc _getAddPivotTableOptions ; prot [ "asc_insertPivotNewWorksheet" ] = prot . asc _insertPivotNewWorksheet ; prot [ "asc_insertPivotExistingWorksheet" ] = prot . asc _insertPivotExistingWorksheet ; prot [ "asc_addSignatureLine" ] = prot . asc _addSignatureLine ; prot [ "asc_CallSignatureDblClickEvent" ] = prot . asc _CallSignatureDblClickEvent ; prot [ "asc_getRequestSignatures" ] =
prot . asc _getRequestSignatures ; prot [ "asc_AddSignatureLine2" ] = prot . asc _AddSignatureLine2 ; prot [ "asc_Sign" ] = prot . asc _Sign ; prot [ "asc_RequestSign" ] = prot . asc _RequestSign ; prot [ "asc_ViewCertificate" ] = prot . asc _ViewCertificate ; prot [ "asc_SelectCertificate" ] = prot . asc _SelectCertificate ; prot [ "asc_GetDefaultCertificate" ] = prot . asc _GetDefaultCertificate ; prot [ "asc_getSignatures" ] = prot . asc _getSignatures ; prot [ "asc_isSignaturesSupport" ] = prot . asc _isSignaturesSupport ; prot [ "asc_isProtectionSupport" ] = prot . asc _isProtectionSupport ;
prot [ "asc_RemoveSignature" ] = prot . asc _RemoveSignature ; prot [ "asc_RemoveAllSignatures" ] = prot . asc _RemoveAllSignatures ; prot [ "asc_gotoSignature" ] = prot . asc _gotoSignature ; prot [ "asc_getSignatureSetup" ] = prot . asc _getSignatureSetup ; prot [ "asc_setCurrentPassword" ] = prot . asc _setCurrentPassword ; prot [ "asc_resetPassword" ] = prot . asc _resetPassword ; prot [ "asc_Remove" ] = prot . asc _Remove ; prot [ "asc_getSortProps" ] = prot . asc _getSortProps ; prot [ "asc_setSortProps" ] = prot . asc _setSortProps ; prot [ "asc_validSheetName" ] = prot . asc _validSheetName ;
prot [ "asc_getRemoveDuplicates" ] = prot . asc _getRemoveDuplicates ; prot [ "asc_setRemoveDuplicates" ] = prot . asc _setRemoveDuplicates ; prot [ "asc_getCF" ] = prot . asc _getCF ; prot [ "asc_setCF" ] = prot . asc _setCF ; prot [ "asc_getPreviewCF" ] = prot . asc _getPreviewCF ; prot [ "asc_clearCF" ] = prot . asc _clearCF ; prot [ "asc_getCFIconsByType" ] = prot . asc _getCFIconsByType ; prot [ "asc_getCFPresets" ] = prot . asc _getCFPresets ; prot [ "asc_getFullCFIcons" ] = prot . asc _getFullCFIcons ; prot [ "asc_isValidDataRefCf" ] = prot . asc _isValidDataRefCf ; prot [ "asc_beforeInsertSlicer" ] =
prot . asc _beforeInsertSlicer ; prot [ "asc_insertSlicer" ] = prot . asc _insertSlicer ; prot [ "asc_setDataValidation" ] = prot . asc _setDataValidation ; prot [ "asc_getDataValidationProps" ] = prot . asc _getDataValidationProps ; prot [ "asc_setSkin" ] = prot . asc _setSkin ; prot [ "asc_getEscapeSheetName" ] = prot . asc _getEscapeSheetName } ) ( window ) ; "use strict" ;
function CSpellchecker ( settings ) { this . api = settings . api ; this . useWasm = false ; var webAsmObj = window [ "WebAssembly" ] ; if ( typeof webAsmObj === "object" ) if ( typeof webAsmObj [ "Memory" ] === "function" ) if ( typeof webAsmObj [ "instantiateStreaming" ] === "function" || typeof webAsmObj [ "instantiate" ] === "function" ) this . useWasm = true ; this . enginePath = "./spell/" ; if ( settings && settings . enginePath ) { this . enginePath = settings . enginePath ; if ( this . enginePath . substring ( this . enginePath . length - 1 ) != "/" ) this . enginePath += "/" } var dictionariesPath =
"./../dictionaries" ; if ( settings && settings . dictionariesPath ) { dictionariesPath = settings . dictionariesPath ; if ( dictionariesPath . substring ( dictionariesPath . length - 1 ) == "/" ) dictionariesPath = dictionariesPath . substr ( 0 , dictionariesPath . length - 1 ) } this . isUseSharedWorker = ! ! window . SharedWorker ; if ( this . isUseSharedWorker && false === settings . useShared ) this . isUseSharedWorker = false ; this . worker = null ; this . languages = { 1068 : "az_Latn_AZ" , 1026 : "bg_BG" , 1027 : "ca_ES" , 2051 : "ca_ES_valencia" , 1029 : "cs_CZ" , 1030 : "da_DK" , 3079 : "de_AT" ,
2055 : "de_CH" , 1031 : "de_DE" , 1032 : "el_GR" , 3081 : "en_AU" , 4105 : "en_CA" , 2057 : "en_GB" , 1033 : "en_US" , 7177 : "en_ZA" , 3082 : "es_ES" , 1069 : "eu_ES" , 1036 : "fr_FR" , 1110 : "gl_ES" , 1050 : "hr_HR" , 1038 : "hu_HU" , 1057 : "id_ID" , 1040 : "it_IT" , 1087 : "kk_KZ" , 1042 : "ko_KR" , 1134 : "lb_LU" , 1063 : "lt_LT" , 1062 : "lv_LV" , 1104 : "mn_MN" , 1044 : "nb_NO" , 1043 : "nl_NL" , 2068 : "nn_NO" , 1045 : "pl_PL" , 1046 : "pt_BR" , 2070 : "pt_PT" , 1048 : "ro_RO" , 1049 : "ru_RU" , 1051 : "sk_SK" , 1060 : "sl_SI" , 10266 : "sr_Cyrl_RS" , 9242 : "sr_Latn_RS" , 1053 : "sv_SE" , 1055 : "tr_TR" , 1058 : "uk_UA" , 1066 : "vi_VN" ,
2067 : "nl_NL" } ; this . stop = function ( ) { if ( ! this . worker ) return ; try { if ( this . worker . port ) this . worker . port . close ( ) ; else if ( this . worker . terminate ) this . worker . terminate ( ) } catch ( err ) { } this . worker = null } ; this . restart = function ( ) { return ; this . stop ( ) ; var worker _src = this . useWasm ? "spell.js" : "spell_ie.js" ; worker _src = this . enginePath + worker _src ; if ( this . isUseSharedWorker ) { this . worker = new SharedWorker ( worker _src , "onlyoffice-spellchecker" ) ; this . worker . creator = this ; this . worker . onerror = function ( ) { var creator = this . creator ; creator . worker =
new Worker ( worker _src ) ; creator . _start ( creator . worker ) } ; this . _start ( this . worker . port ) } else { this . worker = new Worker ( worker _src ) ; var _t = this ; this . worker . onerror = function ( e ) { AscCommon . stopEvent ( e ) ; if ( _t . useWasm ) { _t . useWasm = false ; _t . restart ( ) ; _t . api . asc _restartCheckSpelling ( ) } } ; this . _start ( this . worker ) } } ; this . oncommand = function ( message ) { console . log ( message ) } ; this . checkDictionary = function ( lang ) { return undefined !== this . languages [ "" + lang ] ? true : false } ; this . getLanguages = function ( ) { var ret = [ ] ; for ( var lang in this . languages ) ret . push ( lang ) ;
return ret } ; this . _start = function ( _port ) { var _worker = this ; _port . onmessage = function ( message ) { _worker . oncommand && _worker . oncommand ( message . data ) } ; _port . postMessage ( { "type" : "init" , "dictionaries_path" : dictionariesPath , "languages" : this . languages } ) ; this . command = function ( message ) { _port && _port . postMessage ( message ) } } ; this . restart ( ) }