Commit 8bd98cc0 authored by Ilya Kirillov's avatar Ilya Kirillov

Новые файлы, связанные со сносками, переформатированы на табы.

parent 0701ee69
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
*/ */
function CFootEndnote(DocumentController) function CFootEndnote(DocumentController)
{ {
CFootEndnote.superclass.constructor.call(this, DocumentController, DocumentController.Get_DrawingDocument(), 0, 0, 0, 0, true, false, false); CFootEndnote.superclass.constructor.call(this, DocumentController, DocumentController.Get_DrawingDocument(), 0, 0, 0, 0, true, false, false);
} }
AscCommon.extendClass(CFootEndnote, CDocumentContent); AscCommon.extendClass(CFootEndnote, CDocumentContent);
\ No newline at end of file
...@@ -13,15 +13,16 @@ ...@@ -13,15 +13,16 @@
*/ */
function CFootnotesController(LogicDocument) function CFootnotesController(LogicDocument)
{ {
CFootnotesController.superclass.constructor.call(this, LogicDocument); CFootnotesController.superclass.constructor.call(this, LogicDocument);
this.Id = LogicDocument.Get_IdCounter().Get_NewId(); this.Id = LogicDocument.Get_IdCounter().Get_NewId();
this.Footnote = {}; // Список всех сносок с ключом - Id. this.Footnote = {}; // Список всех сносок с ключом - Id.
this.Pages = []; this.Pages = [];
// Добавляем данный класс в таблицу Id (обязательно в конце конструктора)
LogicDocument.Get_TableId().Add(this, this.Id); // Добавляем данный класс в таблицу Id (обязательно в конце конструктора)
LogicDocument.Get_TableId().Add(this, this.Id);
} }
AscCommon.extendClass(CFootnotesController, CDocumentControllerBase); AscCommon.extendClass(CFootnotesController, CDocumentControllerBase);
...@@ -31,7 +32,7 @@ AscCommon.extendClass(CFootnotesController, CDocumentControllerBase); ...@@ -31,7 +32,7 @@ AscCommon.extendClass(CFootnotesController, CDocumentControllerBase);
*/ */
CFootnotesController.prototype.Get_Id = function() CFootnotesController.prototype.Get_Id = function()
{ {
return this.Id; return this.Id;
}; };
/** /**
* Создаем новую сноску. * Создаем новую сноску.
...@@ -39,9 +40,9 @@ CFootnotesController.prototype.Get_Id = function() ...@@ -39,9 +40,9 @@ CFootnotesController.prototype.Get_Id = function()
*/ */
CFootnotesController.prototype.Create_Footnote = function() CFootnotesController.prototype.Create_Footnote = function()
{ {
var NewFootnote = new CFootEndnote(this); var NewFootnote = new CFootEndnote(this);
this.Footnote[NewFootnote.Get_Id()] = NewFootnote; this.Footnote[NewFootnote.Get_Id()] = NewFootnote;
return NewFootnote; return NewFootnote;
}; };
/** /**
* Сбрасываем рассчетные данный для заданной страницы. * Сбрасываем рассчетные данный для заданной страницы.
...@@ -49,36 +50,35 @@ CFootnotesController.prototype.Create_Footnote = function() ...@@ -49,36 +50,35 @@ CFootnotesController.prototype.Create_Footnote = function()
*/ */
CFootnotesController.prototype.Reset = function(nPageIndex) CFootnotesController.prototype.Reset = function(nPageIndex)
{ {
if (!this.Pages[nPageIndex]) if (!this.Pages[nPageIndex])
this.Pages[nPageIndex] = new CFootEndnotePage(); this.Pages[nPageIndex] = new CFootEndnotePage();
this.Pages[nPageIndex].Reset(); this.Pages[nPageIndex].Reset();
}; };
/** /**
* Пересчитываем сноски на заданной странице. * Пересчитываем сноски на заданной странице.
*/ */
CFootnotesController.prototype.Recalculate = function(nPageIndex, X, XLimit, Y, YLimit) CFootnotesController.prototype.Recalculate = function(nPageIndex, X, XLimit, Y, YLimit)
{ {
if (!this.Pages[nPageIndex]) if (!this.Pages[nPageIndex])
this.Pages[nPageIndex] = new CFootEndnotePage(); this.Pages[nPageIndex] = new CFootEndnotePage();
// Мы пересчет начинаем с 0, потом просто делаем сдвиг, через функцию Shift.
var CurY = Y; // Мы пересчет начинаем с 0, потом просто делаем сдвиг, через функцию Shift.
for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex) var CurY = Y;
{ for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex)
var Footnote = this.Pages[nPageIndex].Elements[nIndex]; {
Footnote.Reset(X, CurY, XLimit, 10000); var Footnote = this.Pages[nPageIndex].Elements[nIndex];
Footnote.Reset(X, CurY, XLimit, 10000);
var CurPage = 0; var CurPage = 0;
var RecalcResult = recalcresult2_NextPage; var RecalcResult = recalcresult2_NextPage;
while (recalcresult2_End != RecalcResult) while (recalcresult2_End != RecalcResult)
RecalcResult = Footnote.Recalculate_Page(CurPage++, true); RecalcResult = Footnote.Recalculate_Page(CurPage++, true);
var Bounds = Footnote.Get_PageBounds(0); var Bounds = Footnote.Get_PageBounds(0);
CurY += Bounds.Bottom - Bounds.Top; CurY += Bounds.Bottom - Bounds.Top;
} }
}; };
/** /**
* Получаем суммарную высоту, занимаемую сносками на заданной странице. * Получаем суммарную высоту, занимаемую сносками на заданной странице.
...@@ -86,15 +86,15 @@ CFootnotesController.prototype.Recalculate = function(nPageIndex, X, XLimit, Y, ...@@ -86,15 +86,15 @@ CFootnotesController.prototype.Recalculate = function(nPageIndex, X, XLimit, Y,
*/ */
CFootnotesController.prototype.Get_Height = function(nPageIndex) CFootnotesController.prototype.Get_Height = function(nPageIndex)
{ {
var nHeight = 0; var nHeight = 0;
for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex) for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex)
{ {
var Footnote = this.Pages[nPageIndex].Elements[nIndex]; var Footnote = this.Pages[nPageIndex].Elements[nIndex];
var Bounds = Footnote.Get_PageBounds(0); var Bounds = Footnote.Get_PageBounds(0);
nHeight += Bounds.Bottom - Bounds.Top; nHeight += Bounds.Bottom - Bounds.Top;
} }
return nHeight; return nHeight;
}; };
/** /**
* Отрисовываем сноски на заданной странице. * Отрисовываем сноски на заданной странице.
...@@ -103,11 +103,11 @@ CFootnotesController.prototype.Get_Height = function(nPageIndex) ...@@ -103,11 +103,11 @@ CFootnotesController.prototype.Get_Height = function(nPageIndex)
*/ */
CFootnotesController.prototype.Draw = function(nPageIndex, pGraphics) CFootnotesController.prototype.Draw = function(nPageIndex, pGraphics)
{ {
for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex) for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex)
{ {
var Footnote = this.Pages[nPageIndex].Elements[nIndex]; var Footnote = this.Pages[nPageIndex].Elements[nIndex];
Footnote.Draw(0, pGraphics); Footnote.Draw(0, pGraphics);
} }
}; };
/** /**
* Сдвигаем все рассчитанные позиции на заданной странице. * Сдвигаем все рассчитанные позиции на заданной странице.
...@@ -117,11 +117,11 @@ CFootnotesController.prototype.Draw = function(nPageIndex, pGraphics) ...@@ -117,11 +117,11 @@ CFootnotesController.prototype.Draw = function(nPageIndex, pGraphics)
*/ */
CFootnotesController.prototype.Shift = function(nPageIndex, dX, dY) CFootnotesController.prototype.Shift = function(nPageIndex, dX, dY)
{ {
for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex) for (var nIndex = 0; nIndex < this.Pages[nPageIndex].Elements.length; ++nIndex)
{ {
var Footnote = this.Pages[nPageIndex].Elements[nIndex]; var Footnote = this.Pages[nPageIndex].Elements[nIndex];
Footnote.Shift(0, dX, dY); Footnote.Shift(0, dX, dY);
} }
}; };
/** /**
* Добавляем заданную сноску на страницу для пересчета. * Добавляем заданную сноску на страницу для пересчета.
...@@ -130,10 +130,10 @@ CFootnotesController.prototype.Shift = function(nPageIndex, dX, dY) ...@@ -130,10 +130,10 @@ CFootnotesController.prototype.Shift = function(nPageIndex, dX, dY)
*/ */
CFootnotesController.prototype.Add_FootnoteOnPage = function(nPageIndex, oFootnote) CFootnotesController.prototype.Add_FootnoteOnPage = function(nPageIndex, oFootnote)
{ {
if (!this.Pages[nPageIndex]) if (!this.Pages[nPageIndex])
this.Pages[nPageIndex] = new CFootEndnotePage(); this.Pages[nPageIndex] = new CFootEndnotePage();
this.Pages[nPageIndex].Elements.push(oFootnote); this.Pages[nPageIndex].Elements.push(oFootnote);
}; };
/** /**
* Проверяем, используется заданная сноска в документе. * Проверяем, используется заданная сноска в документе.
...@@ -142,33 +142,33 @@ CFootnotesController.prototype.Add_FootnoteOnPage = function(nPageIndex, oFootno ...@@ -142,33 +142,33 @@ CFootnotesController.prototype.Add_FootnoteOnPage = function(nPageIndex, oFootno
*/ */
CFootnotesController.prototype.Is_UseInDocument = function(sFootnoteId) CFootnotesController.prototype.Is_UseInDocument = function(sFootnoteId)
{ {
// TODO: Надо бы еще проверить, если ли в документе ссылка на данную сноску. // TODO: Надо бы еще проверить, если ли в документе ссылка на данную сноску.
for (var sId in this.Footnote) for (var sId in this.Footnote)
{ {
if (sId === sFootnoteId) if (sId === sFootnoteId)
return true; return true;
} }
return false; return false;
}; };
function CFootEndnotePage() function CFootEndnotePage()
{ {
this.X = 0; this.X = 0;
this.Y = 0; this.Y = 0;
this.XLimit = 0; this.XLimit = 0;
this.YLimit = 0; this.YLimit = 0;
this.Elements = []; this.Elements = [];
} }
CFootEndnotePage.prototype.Reset = function() CFootEndnotePage.prototype.Reset = function()
{ {
this.X = 0; this.X = 0;
this.Y = 0; this.Y = 0;
this.XLimit = 0; this.XLimit = 0;
this.YLimit = 0; this.YLimit = 0;
this.Elements = []; this.Elements = [];
}; };
......
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