Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
sdkjs
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boris Kocherov
sdkjs
Commits
58a727a4
Commit
58a727a4
authored
Apr 06, 2017
by
Ilya Kirillov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Functions for work with Parent, Next, Prev, Index were moved to a base class.
parent
7d98cda8
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
58 additions
and
100 deletions
+58
-100
word/Editor/DocumentContentElementBase.js
word/Editor/DocumentContentElementBase.js
+49
-2
word/Editor/Paragraph.js
word/Editor/Paragraph.js
+1
-45
word/Editor/StructuredDocumentTags/BlockLevel.js
word/Editor/StructuredDocumentTags/BlockLevel.js
+7
-9
word/Editor/Table.js
word/Editor/Table.js
+1
-44
No files found.
word/Editor/DocumentContentElementBase.js
View file @
58a727a4
...
@@ -42,6 +42,53 @@
...
@@ -42,6 +42,53 @@
* Базовый класс для элементов содержимого документа (Paragraph, CTable, CBlockLevelSdt)
* Базовый класс для элементов содержимого документа (Paragraph, CTable, CBlockLevelSdt)
* @constructor
* @constructor
*/
*/
function
CDocumentContentElementBase
()
function
CDocumentContentElementBase
(
oParent
)
{
{
}
this
.
Id
=
AscCommon
.
g_oIdCounter
.
Get_NewId
();
\ No newline at end of file
this
.
Parent
=
oParent
;
this
.
Prev
=
null
;
this
.
Next
=
null
;
this
.
Index
=
-
1
;
// перед тем как пользоваться этим параметром нужно у родительского класса вызывать this.Parent.Update_ContentIndexing();
}
CDocumentContentElementBase
.
prototype
.
Is_Inline
=
function
()
{
return
true
;
};
CDocumentContentElementBase
.
prototype
.
Set_DocumentIndex
=
function
(
nIndex
)
{
this
.
Index
=
nIndex
;
};
CDocumentContentElementBase
.
prototype
.
Set_DocumentNext
=
function
(
oElement
)
{
this
.
Next
=
oElement
;
};
CDocumentContentElementBase
.
prototype
.
Set_DocumentPrev
=
function
(
oElement
)
{
this
.
Prev
=
oElement
;
};
CDocumentContentElementBase
.
prototype
.
Get_DocumentNext
=
function
()
{
return
this
.
Next
;
};
CDocumentContentElementBase
.
prototype
.
Get_DocumentPrev
=
function
()
{
return
this
.
Prev
;
};
CDocumentContentElementBase
.
prototype
.
Set_Parent
=
function
(
oParent
)
{
this
.
Parent
=
oParent
;
};
CDocumentContentElementBase
.
prototype
.
Get_Parent
=
function
()
{
return
this
.
Parent
;
};
CDocumentContentElementBase
.
prototype
.
GetId
=
function
()
{
return
this
.
Id
;
};
CDocumentContentElementBase
.
prototype
.
Get_Id
=
function
()
{
return
this
.
GetId
();
};
\ No newline at end of file
word/Editor/Paragraph.js
View file @
58a727a4
...
@@ -68,16 +68,8 @@ var REVIEW_COLOR = new AscCommon.CColor(255, 0, 0, 255);
...
@@ -68,16 +68,8 @@ var REVIEW_COLOR = new AscCommon.CColor(255, 0, 0, 255);
*/
*/
function
Paragraph
(
DrawingDocument
,
Parent
,
PageNum
,
X
,
Y
,
XLimit
,
YLimit
,
bFromPresentation
)
function
Paragraph
(
DrawingDocument
,
Parent
,
PageNum
,
X
,
Y
,
XLimit
,
YLimit
,
bFromPresentation
)
{
{
CDocumentContentElementBase
.
call
(
this
);
CDocumentContentElementBase
.
call
(
this
,
Parent
);
this
.
Id
=
AscCommon
.
g_oIdCounter
.
Get_NewId
();
this
.
Prev
=
null
;
this
.
Next
=
null
;
this
.
Index
=
-
1
;
// перед тем как пользоваться этим параметром нужно у родительского класса вызывать this.Parent.Update_ContentIndexing();
this
.
Parent
=
Parent
;
this
.
PageNum
=
PageNum
;
this
.
PageNum
=
PageNum
;
this
.
ColumnNum
=
0
;
this
.
ColumnNum
=
0
;
this
.
ColumnsCount
=
1
;
this
.
ColumnsCount
=
1
;
...
@@ -239,14 +231,6 @@ Paragraph.prototype.Save_StartState = function()
...
@@ -239,14 +231,6 @@ Paragraph.prototype.Save_StartState = function()
{
{
this
.
StartState
=
new
CParagraphStartState
(
this
);
this
.
StartState
=
new
CParagraphStartState
(
this
);
};
};
Paragraph
.
prototype
.
GetId
=
function
()
{
return
this
.
Id
;
};
Paragraph
.
prototype
.
Get_Id
=
function
()
{
return
this
.
GetId
();
};
Paragraph
.
prototype
.
Use_Wrap
=
function
()
Paragraph
.
prototype
.
Use_Wrap
=
function
()
{
{
if
(
true
!==
this
.
Is_Inline
())
if
(
true
!==
this
.
Is_Inline
())
...
@@ -9096,34 +9080,6 @@ Paragraph.prototype.Get_AnchorPos = function(Drawing)
...
@@ -9096,34 +9080,6 @@ Paragraph.prototype.Get_AnchorPos = function(Drawing)
return
Result
;
return
Result
;
};
};
Paragraph
.
prototype
.
Set_DocumentNext
=
function
(
Object
)
{
this
.
Next
=
Object
;
};
Paragraph
.
prototype
.
Set_DocumentPrev
=
function
(
Object
)
{
this
.
Prev
=
Object
;
};
Paragraph
.
prototype
.
Get_DocumentNext
=
function
()
{
return
this
.
Next
;
};
Paragraph
.
prototype
.
Get_DocumentPrev
=
function
()
{
return
this
.
Prev
;
};
Paragraph
.
prototype
.
Set_DocumentIndex
=
function
(
Index
)
{
this
.
Index
=
Index
;
};
Paragraph
.
prototype
.
Set_Parent
=
function
(
ParentObject
)
{
this
.
Parent
=
ParentObject
;
};
Paragraph
.
prototype
.
Get_Parent
=
function
()
{
return
this
.
Parent
;
};
Paragraph
.
prototype
.
Is_ContentOnFirstPage
=
function
()
Paragraph
.
prototype
.
Is_ContentOnFirstPage
=
function
()
{
{
// Если параграф сразу переносится на новую страницу, тогда это значение обычно -1
// Если параграф сразу переносится на новую страницу, тогда это значение обычно -1
...
...
word/Editor/StructuredDocumentTags/BlockLevel.js
View file @
58a727a4
...
@@ -38,18 +38,17 @@
...
@@ -38,18 +38,17 @@
*/
*/
/**
/**
*
*
@param oParent - родительский класс
* @param oLogicDocument
* @param oLogicDocument
- главный класс документа
* @constructor
* @constructor
* @extends {CDocumentContentElementBase}
* @extends {CDocumentContentElementBase}
*/
*/
function
CBlockLevelSdt
(
oLogicDocument
)
function
CBlockLevelSdt
(
oLogicDocument
,
oParent
)
{
{
CDocumentContentElementBase
.
call
(
this
);
CDocumentContentElementBase
.
call
(
this
,
oParent
);
this
.
LogicDocument
=
oLogicDocument
;
this
.
LogicDocument
=
oLogicDocument
;
this
.
Content
=
new
CDocumentContent
(
this
,
oLogicDocument
.
Get_DrawingDocument
(),
0
,
0
,
0
,
0
,
true
,
false
,
false
);
this
.
Content
=
new
CDocumentContent
(
this
,
oLogicDocument
.
Get_DrawingDocument
(),
0
,
0
,
0
,
0
,
true
,
false
,
false
);
this
.
Index
=
-
1
;
this
.
X
=
0
;
this
.
X
=
0
;
this
.
Y
=
0
;
this
.
Y
=
0
;
...
@@ -58,6 +57,9 @@ function CBlockLevelSdt(oLogicDocument)
...
@@ -58,6 +57,9 @@ function CBlockLevelSdt(oLogicDocument)
this
.
PageNum
=
0
;
this
.
PageNum
=
0
;
this
.
ColumnNum
=
0
;
this
.
ColumnNum
=
0
;
this
.
ColumnsCount
=
0
;
this
.
ColumnsCount
=
0
;
// Добавляем данный класс в таблицу Id (обязательно в конце конструктора)
g_oTableId
.
Add
(
this
,
this
.
Id
);
}
}
CBlockLevelSdt
.
prototype
=
Object
.
create
(
CDocumentContentElementBase
.
prototype
);
CBlockLevelSdt
.
prototype
=
Object
.
create
(
CDocumentContentElementBase
.
prototype
);
...
@@ -67,10 +69,6 @@ CBlockLevelSdt.prototype.Is_Inline = function()
...
@@ -67,10 +69,6 @@ CBlockLevelSdt.prototype.Is_Inline = function()
{
{
return
true
;
return
true
;
};
};
CBlockLevelSdt
.
prototype
.
Set_DocumentIndex
=
function
(
nIndex
)
{
this
.
Index
=
nIndex
;
};
CBlockLevelSdt
.
prototype
.
Reset
=
function
(
X
,
Y
,
XLimit
,
YLimit
,
PageAbs
,
ColumnAbs
,
ColumnsCount
)
CBlockLevelSdt
.
prototype
.
Reset
=
function
(
X
,
Y
,
XLimit
,
YLimit
,
PageAbs
,
ColumnAbs
,
ColumnsCount
)
{
{
this
.
Content
.
Reset
(
X
,
Y
,
XLimit
,
YLimit
);
this
.
Content
.
Reset
(
X
,
Y
,
XLimit
,
YLimit
);
...
...
word/Editor/Table.js
View file @
58a727a4
...
@@ -82,16 +82,10 @@ var type_Table = 0x0002;
...
@@ -82,16 +82,10 @@ var type_Table = 0x0002;
//----------------------------------------------------------------------------------------------------------------------
//----------------------------------------------------------------------------------------------------------------------
function
CTable
(
DrawingDocument
,
Parent
,
Inline
,
PageNum
,
X
,
Y
,
XLimit
,
YLimit
,
Rows
,
Cols
,
TableGrid
,
bPresentation
)
function
CTable
(
DrawingDocument
,
Parent
,
Inline
,
PageNum
,
X
,
Y
,
XLimit
,
YLimit
,
Rows
,
Cols
,
TableGrid
,
bPresentation
)
{
{
CDocumentContentElementBase
.
call
(
this
);
CDocumentContentElementBase
.
call
(
this
,
Parent
);
this
.
Id
=
AscCommon
.
g_oIdCounter
.
Get_NewId
();
this
.
Markup
=
new
AscCommon
.
CTableMarkup
(
this
);
this
.
Markup
=
new
AscCommon
.
CTableMarkup
(
this
);
this
.
Prev
=
null
;
this
.
Next
=
null
;
this
.
Index
=
-
1
;
// перед тем как пользоваться этим параметром нужно у родительского класса вызывать this.Parent.Update_ContentIndexing();
this
.
Inline
=
Inline
;
this
.
Inline
=
Inline
;
this
.
Lock
=
new
AscCommon
.
CLock
();
this
.
Lock
=
new
AscCommon
.
CLock
();
...
@@ -112,7 +106,6 @@ function CTable(DrawingDocument, Parent, Inline, PageNum, X, Y, XLimit, YLimit,
...
@@ -112,7 +106,6 @@ function CTable(DrawingDocument, Parent, Inline, PageNum, X, Y, XLimit, YLimit,
this
.
LogicDocument
=
this
.
DrawingDocument
.
m_oLogicDocument
;
this
.
LogicDocument
=
this
.
DrawingDocument
.
m_oLogicDocument
;
}
}
this
.
Parent
=
Parent
;
this
.
PageNum
=
PageNum
;
this
.
PageNum
=
PageNum
;
this
.
ColumnNum
=
0
;
this
.
ColumnNum
=
0
;
this
.
ColumnsCount
=
1
;
this
.
ColumnsCount
=
1
;
...
@@ -2284,26 +2277,6 @@ CTable.prototype.Get_MaxTopBorder = function(RowIndex)
...
@@ -2284,26 +2277,6 @@ CTable.prototype.Get_MaxTopBorder = function(RowIndex)
return
MaxTopBorder
;
return
MaxTopBorder
;
};
};
CTable
.
prototype
.
Set_DocumentNext
=
function
(
Object
)
{
this
.
Next
=
Object
;
};
CTable
.
prototype
.
Set_DocumentPrev
=
function
(
Object
)
{
this
.
Prev
=
Object
;
};
CTable
.
prototype
.
Get_DocumentNext
=
function
()
{
return
this
.
Next
;
};
CTable
.
prototype
.
Get_DocumentPrev
=
function
()
{
return
this
.
Prev
;
};
CTable
.
prototype
.
Set_DocumentIndex
=
function
(
Index
)
{
this
.
Index
=
Index
;
};
/**
/**
* Вычисляем небольшое смещение по X, необходимое для совместимости с Word разных версий
* Вычисляем небольшое смещение по X, необходимое для совместимости с Word разных версий
*/
*/
...
@@ -2477,10 +2450,6 @@ CTable.prototype.GetType = function()
...
@@ -2477,10 +2450,6 @@ CTable.prototype.GetType = function()
{
{
return
type_Table
;
return
type_Table
;
};
};
CTable
.
prototype
.
GetId
=
function
()
{
return
this
.
Get_Id
();
};
CTable
.
prototype
.
Get_Type
=
function
()
CTable
.
prototype
.
Get_Type
=
function
()
{
{
return
type_Table
;
return
type_Table
;
...
@@ -3064,18 +3033,6 @@ CTable.prototype.Get_NearestPos = function(CurPage, X, Y, bAnchor, Drawing)
...
@@ -3064,18 +3033,6 @@ CTable.prototype.Get_NearestPos = function(CurPage, X, Y, bAnchor, Drawing)
return
Cell
.
Content_Get_NearestPos
(
CurPage
-
Cell
.
Content
.
Get_StartPage_Relative
(),
X
,
Y
,
bAnchor
,
Drawing
);
return
Cell
.
Content_Get_NearestPos
(
CurPage
-
Cell
.
Content
.
Get_StartPage_Relative
(),
X
,
Y
,
bAnchor
,
Drawing
);
};
};
CTable
.
prototype
.
Set_Parent
=
function
(
ParentObject
)
{
this
.
Parent
=
ParentObject
;
};
CTable
.
prototype
.
Get_Parent
=
function
()
{
return
this
.
Parent
;
};
CTable
.
prototype
.
Get_Id
=
function
()
{
return
this
.
Id
;
};
CTable
.
prototype
.
Get_ParentTextTransform
=
function
()
CTable
.
prototype
.
Get_ParentTextTransform
=
function
()
{
{
return
this
.
Parent
.
Get_ParentTextTransform
();
return
this
.
Parent
.
Get_ParentTextTransform
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment