Commit d5b01de2 authored by Ilya Kirillov's avatar Ilya Kirillov

Рефакторинг классов CDocument и CDocumentContent: у них больше не...

Рефакторинг классов CDocument и CDocumentContent: у них больше не перезаписывается весь прототип целиком, чтобы можно было организовать наследование. Сами классы отнаследованы от нового базового класса CDocumentContentBase.
parent 2b63e5d8
This diff is collapsed.
This diff is collapsed.
/*
*
* (c) Copyright Ascensio System Limited 2010-2016
*
* This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
*
* THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
*
* You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7  3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7  3(e) we decline to grant you any rights under trademark law for use of our trademarks.
*
*/
"use strict";
/**
* User: Ilja.Kirillov
* Date: 29.04.2016
* Time: 18:23
*/
/**
* Базовый класс для работы с содержимым документа (параграфы и таблицы).
* @constructor
*/
function CDocumentContentBase()
{
this.StartPage = 0; // Номер стартовой страницы в родительском классе
this.CurPage = 0; // Номер текущей страницы
this.Content = [];
this.ReindexStartPos = 0;
}
/**
* Обновляем индексы элементов.
*/
CDocumentContentBase.prototype.Update_ContentIndexing = function()
{
if (-1 !== this.ReindexStartPos)
{
for (var Index = this.ReindexStartPos, Count = this.Content.length; Index < Count; Index++)
{
this.Content[Index].Index = Index;
}
this.ReindexStartPos = -1;
}
};
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Private area
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
* Сообщаем, что нужно провести переиндексацию элементов начиная с заданного.
* @param StartPos
*/
CDocumentContentBase.prototype.private_ReindexContent = function(StartPos)
{
if (-1 === this.ReindexStartPos || this.ReindexStartPos > StartPos)
this.ReindexStartPos = StartPos;
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment