Commit 0d4821b4 authored by Anna.Pavlova's avatar Anna.Pavlova Committed by Alexander.Trofimov

kind for math elements

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@53125 954022d7-b5bf-4e40-9824-e11837661b57
parent 866271a5
...@@ -604,6 +604,8 @@ CSign.prototype.getCodeAccent = function() ...@@ -604,6 +604,8 @@ CSign.prototype.getCodeAccent = function()
function CAccent() function CAccent()
{ {
this.kind = MATH_ACCENT;
this.code = null; // храним код буквы и тип здесь this.code = null; // храним код буквы и тип здесь
this. type = null; // т.к в класах, которые вызываем, не учитываем случаи, когда элементы (стрелки/скобки) переворачиваются this. type = null; // т.к в класах, которые вызываем, не учитываем случаи, когда элементы (стрелки/скобки) переворачиваются
this.loc = LOCATION_TOP; this.loc = LOCATION_TOP;
......
function CBorderBox() function CBorderBox()
{ {
this.kind = MATH_BORDER_BOX;
this.gapBrd = 0; this.gapBrd = 0;
this.bLeft = true; this.bLeft = true;
...@@ -262,6 +264,8 @@ CBorderBox.prototype.getBase = function() ...@@ -262,6 +264,8 @@ CBorderBox.prototype.getBase = function()
function CBox() function CBox()
{ {
this.kind = MATH_BOX;
this.opEmu = false; this.opEmu = false;
this.diff = false; this.diff = false;
this.noBreak = false; this.noBreak = false;
...@@ -290,6 +294,8 @@ CBox.prototype.getBase = function() ...@@ -290,6 +294,8 @@ CBox.prototype.getBase = function()
function CBar() function CBar()
{ {
this.kind = MATH_BAR;
this.loc = LOCATION_BOT; this.loc = LOCATION_BOT;
CCharacter.call(this); CCharacter.call(this);
} }
......
function CDegree() function CDegree()
{ {
this.kind = MATH_DEGREE;
this.type = DEGREE_SUPERSCRIPT ; this.type = DEGREE_SUPERSCRIPT ;
this.shiftDegree = 0; this.shiftDegree = 0;
CMathBase.call(this); CMathBase.call(this);
...@@ -208,6 +210,8 @@ CIterators.prototype.getCtrPrp = function() ...@@ -208,6 +210,8 @@ CIterators.prototype.getCtrPrp = function()
function CDegreeSubSup() function CDegreeSubSup()
{ {
this.kind = MATH_DEGREESubSup;
this.type = DEGREE_SubSup; this.type = DEGREE_SubSup;
this.alnScr = false; // не выровнены, итераторы идут в соответствии с наклоном буквы/мат. объекта this.alnScr = false; // не выровнены, итераторы идут в соответствии с наклоном буквы/мат. объекта
CSubMathBase.call(this); CSubMathBase.call(this);
......
function CFraction() function CFraction()
{ {
this.kind = MATH_FRACTION;
this.type = BAR_FRACTION; this.type = BAR_FRACTION;
this.bHideBar = false; this.bHideBar = false;
CMathBase.call(this); CMathBase.call(this);
...@@ -382,6 +384,13 @@ CFraction.prototype.findDisposition = function( mCoord ) ...@@ -382,6 +384,13 @@ CFraction.prototype.findDisposition = function( mCoord )
return disposition; return disposition;
} }
CFraction.prototype.getPropsForWrite = function()
{
var props = {};
props.type = this.type;
return props;
}
function CNumerator() function CNumerator()
......
function CLimit() function CLimit()
{ {
this.kind = MATH_LIMIT;
this.type = LIMIT_LOW; this.type = LIMIT_LOW;
CMathBase.call(this); CMathBase.call(this);
} }
...@@ -59,6 +61,8 @@ CLimit.prototype.setDistance = function() ...@@ -59,6 +61,8 @@ CLimit.prototype.setDistance = function()
function CMathFunc() function CMathFunc()
{ {
this.kind = MATH_FUNCTION;
CMathBase.call(this); CMathBase.call(this);
} }
extend(CMathFunc, CMathBase); extend(CMathFunc, CMathBase);
......
//поправить центр у N-арных операторов //поправить центр у N-арных операторов
/* /*
FRACTION FRACTION
MATH_FUNCTION MATH_FUNCTION
NARY NARY
BOX (доделать Spacing) BOX (доделать Spacing)
DEGREE DEGREE
DEGREE_SubSup DEGREE_SubSup
RADICAL RADICAL
LIMIT LIMIT
*/ */
//Bugs //Bugs
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
// 3. центр => baseline // 3. центр => baseline
// 4. сделать gaps для мат. объектов, +, - в зависимости от расположения в контенте // 4. сделать gaps для мат. объектов, +, - в зависимости от расположения в контенте
// 5. баг с отрисовкой кругового интеграла // 5. баг с отрисовкой кругового интеграла
// 5. ctr + shift // 6. cursor_Up, cursor_Down (+ c зажитым shift)
// 6. Merge textPrp и mathTextPrp (bold, italic) // 7. Merge textPrp и mathTextPrp (bold, italic)
// 7. Для управляющих символов запрашивать не getCtrPrp, getPrpToControlLetter (реализована, нужно только протащить для всех управляющих элементов) // 8. Для управляющих символов запрашивать не getCtrPrp, getPrpToControlLetter (реализована, нужно только протащить для всех управляющих элементов)
// 8. объединение формул на remove и add // 9. объединение формул на remove и add
...@@ -471,7 +471,6 @@ CMathContent.prototype = ...@@ -471,7 +471,6 @@ CMathContent.prototype =
//var l_gap = 0, r_gap = 0; //var l_gap = 0, r_gap = 0;
var mathElem = null; //положение этого элемента будет this.CurPos + 1 var mathElem = null; //положение этого элемента будет this.CurPos + 1
switch(ind) switch(ind)
{ {
case MATH_FRACTION: case MATH_FRACTION:
...@@ -6074,11 +6073,10 @@ CMathContent.prototype = ...@@ -6074,11 +6073,10 @@ CMathContent.prototype =
else else
{ {
SelectContent = this; SelectContent = this;
var direction = (posStart < posEnd) ? 1 : -1; var direction = (posStart < posEnd) ? 1 : -1;
if ( this.content[posStart].value.typeObj === MATH_COMP ) if( this.content[posStart].value.typeObj === MATH_COMP )
{ {
if( direction == 1 ) if( direction == 1 )
this.setStartPos_Selection( posStart - 1); this.setStartPos_Selection( posStart - 1);
......
...@@ -56,30 +56,31 @@ var BOX_BREAK = 3; ...@@ -56,30 +56,31 @@ var BOX_BREAK = 3;
var BOX_NOBREAK = 4; var BOX_NOBREAK = 4;
var OPERATOR_EMPTY = -1; var OPERATOR_EMPTY = -1;
var PARENTHESIS_LEFT = 0; var OPERATOR_TEXT = 0;
var PARENTHESIS_RIGHT = 1; var PARENTHESIS_LEFT = 1;
var BRACKET_CURLY_LEFT = 2; var PARENTHESIS_RIGHT = 2;
var BRACKET_CURLY_RIGHT = 3; var BRACKET_CURLY_LEFT = 3;
var BRACKET_SQUARE_LEFT = 4; var BRACKET_CURLY_RIGHT = 4;
var BRACKET_SQUARE_RIGHT = 5; var BRACKET_SQUARE_LEFT = 5;
var BRACKET_ANGLE_LEFT = 6; var BRACKET_SQUARE_RIGHT = 6;
var BRACKET_ANGLE_RIGHT = 7; var BRACKET_ANGLE_LEFT = 7;
var HALF_SQUARE_LEFT = 8; var BRACKET_ANGLE_RIGHT = 8;
var HALF_SQUARE_RIGHT = 9; var HALF_SQUARE_LEFT = 9;
var HALF_SQUARE_LEFT_UPPER = 10; var HALF_SQUARE_RIGHT = 10;
var HALF_SQUARE_RIGHT_UPPER = 11; var HALF_SQUARE_LEFT_UPPER = 11;
var DELIMITER_LINE = 12; var HALF_SQUARE_RIGHT_UPPER = 12;
var DELIMITER_DOUBLE_LINE = 13; var DELIMITER_LINE = 13;
var WHITE_SQUARE_LEFT = 14; var DELIMITER_DOUBLE_LINE = 14;
var WHITE_SQUARE_RIGHT = 15; var WHITE_SQUARE_LEFT = 15;
var BRACKET_CURLY_TOP = 16; var WHITE_SQUARE_RIGHT = 16;
var BRACKET_CURLY_BOTTOM = 17; var BRACKET_CURLY_TOP = 17;
var ARROW_LEFT = 18; var BRACKET_CURLY_BOTTOM = 18;
var ARROW_RIGHT = 19; var ARROW_LEFT = 19;
var ARROW_LR = 20; var ARROW_RIGHT = 20;
var DOUBLE_LEFT_ARROW = 21; var ARROW_LR = 21;
var DOUBLE_RIGHT_ARROW = 22; var DOUBLE_LEFT_ARROW = 22;
var DOUBLE_ARROW_LR = 23; var DOUBLE_RIGHT_ARROW = 23;
var DOUBLE_ARROW_LR = 24;
var SCR_ROMAN = 0; var SCR_ROMAN = 0;
var SCR_SCRIPT = 1; var SCR_SCRIPT = 1;
......
function CMathMatrix() function CMathMatrix()
{ {
this.kind = MATH_MATRIX;
this.lineGapColumn = 1.5; this.lineGapColumn = 1.5;
this.lineGapRow = 1; this.lineGapRow = 1;
this.gaps = null; this.gaps = null;
...@@ -470,6 +472,8 @@ CMathMatrix.prototype.baseJustification = function(type) ...@@ -470,6 +472,8 @@ CMathMatrix.prototype.baseJustification = function(type)
//// ////
function CEqArray() function CEqArray()
{ {
this.kind = MATH_EQ_ARRAY;
CMathMatrix.call(this); CMathMatrix.call(this);
} }
extend(CEqArray, CMathMatrix); extend(CEqArray, CMathMatrix);
......
...@@ -13,6 +13,8 @@ ...@@ -13,6 +13,8 @@
function CNary() function CNary()
{ {
this.kind = MATH_NARY;
this.type = null; this.type = null;
this.code = null; // for "read" this.code = null; // for "read"
this.grow = false; this.grow = false;
......
...@@ -167,6 +167,8 @@ CSignRadical.prototype.relate = function(parent) ...@@ -167,6 +167,8 @@ CSignRadical.prototype.relate = function(parent)
function CRadical() function CRadical()
{ {
this.kind = MATH_RADICAL;
this.type = SQUARE_RADICAL; // default this.type = SQUARE_RADICAL; // default
this.degHide = false; this.degHide = false;
this.signRadical = null; this.signRadical = null;
......
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