Commit e4cf369d authored by Oleg.Korshul's avatar Oleg.Korshul Committed by Alexander.Trofimov

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@51415 954022d7-b5bf-4e40-9824-e11837661b57
parent d476e193
......@@ -477,6 +477,8 @@ CGeometry.prototype=
{
canFill: function()
{
if(this.preset === "line")
return false;
for(var i = 0; i < this.pathLst.length; ++i)
{
if(this.pathLst[i].fill !== "none")
......
......@@ -5,6 +5,7 @@ var TRACK_DISTANCE_ROTATE = 25;
var TRACK_DISTANCE_ROTATE2 = 25;
var TRACK_ADJUSTMENT_SIZE = 10;
var TRACK_WRAPPOINTS_SIZE = 6;
var IMAGE_ROTATE_TRACK_W = 17;
var bIsUseImageRotateTrack = true;
if (bIsUseImageRotateTrack)
......@@ -14,7 +15,7 @@ if (bIsUseImageRotateTrack)
window.g_track_rotate_marker.onload = function(){
window.g_track_rotate_marker.asc_complete = true;
};
window.g_track_rotate_marker.src = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMTVweCIgaGVpZ2h0PSIxNXB4IiB2aWV3Qm94PSIwIDAgMTUgMTUiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiM5MzkzOTMiIGQ9Ik0xMS45NzksOC4wNzZjMCwwLDAuMDIxLTAuNCwwLjAyMS0wLjU3Ng0KCQljMC0yLjQ4MS0yLjAxNS00LjQ5My00LjUtNC40OTNDNS4wMTYsMy4wMDcsMyw1LjAxOSwzLDcuNXMyLjAxNiw0LjQ5Myw0LjUsNC40OTNjMC45MjYsMCwxLjc4NS0wLjI4LDIuNS0wLjc1OXYxLjEzOQ0KCQlDOS4yNDcsMTIuNzYxLDguNDA1LDEzLDcuNSwxM0M0LjQ2MywxMywyLDEwLjUzNywyLDcuNUMyLDQuNDYyLDQuNDYzLDIsNy41LDJTMTMsNC40NjIsMTMsNy41YzAsMC4xNzQtMC4wMiwwLjU2OS0wLjAyLDAuNTY5DQoJCUwxMi40Niw4LjM1NEwxMS45NzksOC4wNzZ6IE0xNSw3bC0yLjUsNEwxMCw3bDIuNDY5LDEuMzQ0TDE1LDd6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==";
window.g_track_rotate_marker.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAYAAAA7bUf6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAbBJREFUeNqsVM1qwkAQnnry71BopUVRFKoeUrx48yF8gKbtE3iRPoBP0Kdo0pM+gtBexJsgyUHswYtWggERf0HczkyzkqbGttAPvmx2duZjdnZ2QQgBHkaRVeQL0hafsJ151Vn/EnNCH4Ku66Cq6g3+PiIvwR9j5AP6P+8tLsWa+BtqmqYBUWZCGehSeLFYgGmaMBqNYLVaQSgUgng8DoqiQCQScWd1hxlpJBLFyRvygqwU2Gq1IJ/PQzqdhnA4DMvlEgaDAfR6PSiVSizowEZe0TYqMr/5fC4ajYawLOtg/mSv1+vs50IlgEplKWsYBmSzWYjFYgcrSvZcLsdbdaFMIoqc0VYymQwcA62TnwvXJHIuZ+v1mmvgh36/D5vNhmtk2zbXCHEWcIrDCAaD7OCHRCIBzWaT/2lMJpNcXBIxpBNVnU7BD5RloVDgvqLRydr8djpUfb/TIex2O9Fut3mUpyPvylhahsMhC3W7XTGbzcR2uxXT6VR0Op1DmhPkqexYFal5OxYF9x2bSqWgWCx6d3iPHfv0L3fH+wyoyPcfgmn91h0HR96T19++Jx8CDABSF1tWsa6kaQAAAABJRU5ErkJggg==";
TRACK_DISTANCE_ROTATE2 = 20;
}
......@@ -72,6 +73,11 @@ COverlay.prototype =
if (null == this.m_oContext)
{
this.m_oContext = this.m_oControl.HtmlElement.getContext('2d');
this.m_oContext.imageSmoothingEnabled = false;
this.m_oContext.mozImageSmoothingEnabled = false;
this.m_oContext.oImageSmoothingEnabled = false;
this.m_oContext.webkitImageSmoothingEnabled = false;
}
this.m_oContext.beginPath();
......@@ -813,6 +819,33 @@ CAutoshapeTrack.prototype =
var xC = ((x1 + x2) / 2) >> 0;
if (!isLine && isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = IMAGE_ROTATE_TRACK_W;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
if (!isLine && isCanRotate)
{
ctx.moveTo(xC + 0.5, y1);
......@@ -859,33 +892,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (!isLine && isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = 15;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
}
else
{
......@@ -914,6 +920,37 @@ CAutoshapeTrack.prototype =
var xc1 = (x1 + x2) / 2;
var yc1 = (y1 + y2) / 2;
ctx.beginPath();
if (!isLine && isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = IMAGE_ROTATE_TRACK_W;
var _w2 = IMAGE_ROTATE_TRACK_W / 2;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
}
if (!isLine && isCanRotate)
{
ctx.beginPath();
......@@ -959,13 +996,29 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
}
if (!isLine && isCanRotate)
break;
}
case TYPE_TRACK_TEXT:
case TYPE_TRACK_GROUP_PASSIVE:
{
if (bIsClever)
{
overlay.CheckRect(x1, y1, x4 - x1, y4 - y1);
this.AddRectDashClever(ctx, x1, y1, x4, y4, 8, 3);
ctx.strokeStyle = _style_blue;
ctx.stroke();
ctx.beginPath();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
......@@ -975,36 +1028,16 @@ CAutoshapeTrack.prototype =
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = 15;
var _w2 = 7.5;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
var _w = IMAGE_ROTATE_TRACK_W;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
}
break;
}
case TYPE_TRACK_TEXT:
case TYPE_TRACK_GROUP_PASSIVE:
{
if (bIsClever)
{
overlay.CheckRect(x1, y1, x4 - x1, y4 - y1);
this.AddRectDashClever(ctx, x1, y1, x4, y4, 8, 3);
ctx.strokeStyle = _style_blue;
ctx.stroke();
if (isCanRotate)
{
ctx.beginPath();
......@@ -1048,33 +1081,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = 15;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
}
else
{
......@@ -1096,6 +1102,37 @@ CAutoshapeTrack.prototype =
var xc1 = (x1 + x2) / 2;
var yc1 = (y1 + y2) / 2;
ctx.beginPath();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = IMAGE_ROTATE_TRACK_W;
var _w2 = IMAGE_ROTATE_TRACK_W / 2;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
}
if (isCanRotate)
{
ctx.beginPath();
......@@ -1135,37 +1172,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = 15;
var _w2 = 7.5;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
}
ctx.beginPath();
}
break;
......@@ -1194,6 +1200,30 @@ CAutoshapeTrack.prototype =
ctx.beginPath();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = IMAGE_ROTATE_TRACK_W;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
ctx.beginPath();
ctx.fillStyle = _style_white;
if (bIsEllipceCorner)
......@@ -1224,30 +1254,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = 15;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
ctx.beginPath();
}
else
{
......@@ -1293,6 +1299,34 @@ CAutoshapeTrack.prototype =
ctx.beginPath();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = IMAGE_ROTATE_TRACK_W;
var _w2 = IMAGE_ROTATE_TRACK_W / 2;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
ctx.beginPath();
ctx.fillStyle = _style_white;
if (bIsEllipceCorner)
......@@ -1320,34 +1354,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = 15;
var _w2 = 7.5;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
ctx.beginPath();
}
break;
......
......@@ -1230,7 +1230,7 @@ function CLayoutThumbnailDrawer()
this.DrawingDocument = null;
this.GetThumbnail = function(_layout)
this.GetThumbnail = function(_layout, use_background, use_master_shapes, use_layout_shapes)
{
_layout.recalculate2();
......@@ -1305,21 +1305,28 @@ function CLayoutThumbnailDrawer()
if (_back_fill != null)
_back_fill.calculate(_theme, null, _layout, _master, RGBA);
DrawBackground(g, _back_fill, this.WidthMM, this.HeightMM);
if (use_background !== false)
DrawBackground(g, _back_fill, this.WidthMM, this.HeightMM);
var _sx = g.m_oCoordTransform.sx;
var _sy = g.m_oCoordTransform.sy;
if (_layout.showMasterSp == true || _layout.showMasterSp == undefined)
if (use_master_shapes !== false)
{
_master.draw(g);
if (_layout.showMasterSp == true || _layout.showMasterSp == undefined)
{
_master.draw(g);
}
}
for (var i = 0; i < _layout.cSld.spTree.length; i++)
{
var _sp_elem = _layout.cSld.spTree[i];
if (!_sp_elem.isPlaceholder())
_sp_elem.draw(g);
{
if (use_layout_shapes !== false)
_sp_elem.draw(g);
}
else
{
_ctx.globalAlpha = 1;
......@@ -1432,6 +1439,21 @@ function CLayoutThumbnailDrawer()
}
}
return this.CanvasImage.toDataURL("image/png");
try
{
return this.CanvasImage.toDataURL("image/png");
}
catch (err)
{
this.CanvasImage = null;
if (undefined === use_background && undefined === use_master_shapes && undefined == use_layout_shapes)
return this.GetThumbnail(_layout, true, true, false);
else if (use_background && use_master_shapes && !use_layout_shapes)
return this.GetThumbnail(_layout, true, false, false);
else if (use_background && !use_master_shapes && !use_layout_shapes)
return this.GetThumbnail(_layout, false, false, false);
}
return "";
}
}
\ No newline at end of file
......@@ -1008,7 +1008,7 @@ function CMasterThumbnailDrawer()
this.DrawingDocument = null;
this.GetThumbnail = function(_master)
this.GetThumbnail = function(_master, use_background, use_master_shapes)
{
var h_px = 40;
var w_px = (this.WidthMM * h_px / this.HeightMM) >> 0;
......@@ -1066,12 +1066,14 @@ function CMasterThumbnailDrawer()
if (_back_fill != null)
_back_fill.calculate(_theme, null, null, _master, RGBA);
DrawBackground(g, _back_fill, this.WidthMM, this.HeightMM);
if (use_background !== false)
DrawBackground(g, _back_fill, this.WidthMM, this.HeightMM);
var _sx = g.m_oCoordTransform.sx;
var _sy = g.m_oCoordTransform.sy;
_master.draw(g);
if (use_master_shapes !== false)
_master.draw(g);
g.reset();
g.SetIntegerGrid(true);
......@@ -1138,6 +1140,18 @@ function CMasterThumbnailDrawer()
History.TurnOn();
_api.isViewMode = _oldTurn;
return this.CanvasImage.toDataURL("image/png");
try
{
return this.CanvasImage.toDataURL("image/png");
}
catch (err)
{
this.CanvasImage = null;
if (undefined === use_background && undefined === use_master_shapes)
return this.GetThumbnail(_master, true, false);
else if (use_background && !use_master_shapes)
return this.GetThumbnail(_master, false, false);
}
return "";
}
}
\ No newline at end of file
......@@ -5572,7 +5572,7 @@ function CDrawingDocument()
var _pos = this.ConvertCoordsToCursor4(xPos, 0, pageNum);
if (_pos.Error === false)
{
this.m_oWordControl.m_oOverlayApi.DashLineColor = "#FF0000";
this.m_oWordControl.m_oOverlayApi.DashLineColor = "#C8C8C8";
this.m_oWordControl.m_oOverlayApi.VertLine2(_pos.X);
this.m_oWordControl.m_oOverlayApi.DashLineColor = "#000000";
}
......@@ -5589,7 +5589,7 @@ function CDrawingDocument()
var _pos = this.ConvertCoordsToCursor4(0, yPos, pageNum);
if (_pos.Error === false)
{
this.m_oWordControl.m_oOverlayApi.DashLineColor = "#FF0000";
this.m_oWordControl.m_oOverlayApi.DashLineColor = "#C8C8C8";
this.m_oWordControl.m_oOverlayApi.HorLine2(_pos.Y);
this.m_oWordControl.m_oOverlayApi.DashLineColor = "#000000";
}
......
......@@ -5,6 +5,7 @@ var TRACK_DISTANCE_ROTATE = 25;
var TRACK_DISTANCE_ROTATE2 = 25;
var TRACK_ADJUSTMENT_SIZE = 10;
var TRACK_WRAPPOINTS_SIZE = 6;
var IMAGE_ROTATE_TRACK_W = 17;
var bIsUseImageRotateTrack = true;
if (bIsUseImageRotateTrack)
......@@ -14,7 +15,7 @@ if (bIsUseImageRotateTrack)
window.g_track_rotate_marker.onload = function(){
window.g_track_rotate_marker.asc_complete = true;
};
window.g_track_rotate_marker.src = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMTVweCIgaGVpZ2h0PSIxNXB4IiB2aWV3Qm94PSIwIDAgMTUgMTUiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiM5MzkzOTMiIGQ9Ik0xMS45NzksOC4wNzZjMCwwLDAuMDIxLTAuNCwwLjAyMS0wLjU3Ng0KCQljMC0yLjQ4MS0yLjAxNS00LjQ5My00LjUtNC40OTNDNS4wMTYsMy4wMDcsMyw1LjAxOSwzLDcuNXMyLjAxNiw0LjQ5Myw0LjUsNC40OTNjMC45MjYsMCwxLjc4NS0wLjI4LDIuNS0wLjc1OXYxLjEzOQ0KCQlDOS4yNDcsMTIuNzYxLDguNDA1LDEzLDcuNSwxM0M0LjQ2MywxMywyLDEwLjUzNywyLDcuNUMyLDQuNDYyLDQuNDYzLDIsNy41LDJTMTMsNC40NjIsMTMsNy41YzAsMC4xNzQtMC4wMiwwLjU2OS0wLjAyLDAuNTY5DQoJCUwxMi40Niw4LjM1NEwxMS45NzksOC4wNzZ6IE0xNSw3bC0yLjUsNEwxMCw3bDIuNDY5LDEuMzQ0TDE1LDd6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==";
window.g_track_rotate_marker.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAYAAAA7bUf6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAbBJREFUeNqsVM1qwkAQnnry71BopUVRFKoeUrx48yF8gKbtE3iRPoBP0Kdo0pM+gtBexJsgyUHswYtWggERf0HczkyzkqbGttAPvmx2duZjdnZ2QQgBHkaRVeQL0hafsJ151Vn/EnNCH4Ku66Cq6g3+PiIvwR9j5AP6P+8tLsWa+BtqmqYBUWZCGehSeLFYgGmaMBqNYLVaQSgUgng8DoqiQCQScWd1hxlpJBLFyRvygqwU2Gq1IJ/PQzqdhnA4DMvlEgaDAfR6PSiVSizowEZe0TYqMr/5fC4ajYawLOtg/mSv1+vs50IlgEplKWsYBmSzWYjFYgcrSvZcLsdbdaFMIoqc0VYymQwcA62TnwvXJHIuZ+v1mmvgh36/D5vNhmtk2zbXCHEWcIrDCAaD7OCHRCIBzWaT/2lMJpNcXBIxpBNVnU7BD5RloVDgvqLRydr8djpUfb/TIex2O9Fut3mUpyPvylhahsMhC3W7XTGbzcR2uxXT6VR0Op1DmhPkqexYFal5OxYF9x2bSqWgWCx6d3iPHfv0L3fH+wyoyPcfgmn91h0HR96T19++Jx8CDABSF1tWsa6kaQAAAABJRU5ErkJggg==";
TRACK_DISTANCE_ROTATE2 = 20;
}
......@@ -152,6 +153,9 @@ COverlay.prototype =
if (this.max_x < position)
this.max_x = position;
var _old_global = this.m_oContext.globalAlpha;
this.m_oContext.globalAlpha = 1;
this.min_y = 0;
this.max_y = this.m_oControl.HtmlElement.height;
......@@ -160,16 +164,18 @@ COverlay.prototype =
var x = ((position + 0.5) >> 0) + 0.5;
var y = 0;
/*
this.m_oContext.strokeStyle = "#FFFFFF";
this.m_oContext.beginPath();
this.m_oContext.moveTo(x, y);
this.m_oContext.lineTo(x, this.max_y);
this.m_oContext.stroke();
*/
this.m_oContext.strokeStyle = this.DashLineColor;
this.m_oContext.beginPath();
var dist = 5;
var dist = 1;
while (y < this.max_y)
{
......@@ -182,6 +188,8 @@ COverlay.prototype =
this.m_oContext.stroke();
this.m_oContext.beginPath();
this.Show();
this.m_oContext.globalAlpha = _old_global;
},
HorLine : function(position, bIsSimpleAdd)
......@@ -201,8 +209,6 @@ COverlay.prototype =
this.min_x = 0;
this.max_x = this.m_oControl.HtmlElement.width;
//this.min_y = position;
//this.max_y = position;
if (this.min_y > position)
this.min_y = position;
if (this.max_y < position)
......@@ -257,6 +263,9 @@ COverlay.prototype =
if (this.max_y < position)
this.max_y = position;
var _old_global = this.m_oContext.globalAlpha;
this.m_oContext.globalAlpha = 1;
this.min_x = 0;
this.max_x = this.m_oControl.HtmlElement.width;
......@@ -265,16 +274,18 @@ COverlay.prototype =
var y = ((position + 0.5) >> 0) + 0.5;
var x = 0;
/*
this.m_oContext.strokeStyle = "#FFFFFF";
this.m_oContext.beginPath();
this.m_oContext.moveTo(x, y);
this.m_oContext.lineTo(this.max_x, y);
this.m_oContext.stroke();
*/
this.m_oContext.strokeStyle = this.DashLineColor;
this.m_oContext.beginPath();
var dist = 5;
var dist = 1;
while (x < this.max_x)
{
......@@ -287,6 +298,8 @@ COverlay.prototype =
this.m_oContext.stroke();
this.m_oContext.beginPath();
this.Show();
this.m_oContext.globalAlpha = _old_global;
},
CheckPoint1 : function(x,y)
......@@ -914,6 +927,33 @@ CAutoshapeTrack.prototype =
var xC = ((x1 + x2) / 2) >> 0;
if (!isLine && isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = IMAGE_ROTATE_TRACK_W;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
if (!isLine && isCanRotate)
{
ctx.moveTo(xC + 0.5, y1);
......@@ -960,33 +1000,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (!isLine && isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = 15;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
}
else
{
......@@ -1015,6 +1028,37 @@ CAutoshapeTrack.prototype =
var xc1 = (x1 + x2) / 2;
var yc1 = (y1 + y2) / 2;
ctx.beginPath();
if (!isLine && isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = IMAGE_ROTATE_TRACK_W;
var _w2 = IMAGE_ROTATE_TRACK_W / 2;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
}
if (!isLine && isCanRotate)
{
ctx.beginPath();
......@@ -1060,13 +1104,29 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
}
if (!isLine && isCanRotate)
break;
}
case TYPE_TRACK_TEXT:
case TYPE_TRACK_GROUP_PASSIVE:
{
if (bIsClever)
{
overlay.CheckRect(x1, y1, x4 - x1, y4 - y1);
this.AddRectDashClever(ctx, x1, y1, x4, y4, 8, 3);
ctx.strokeStyle = _style_blue;
ctx.stroke();
ctx.beginPath();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
......@@ -1076,36 +1136,16 @@ CAutoshapeTrack.prototype =
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = 15;
var _w2 = 7.5;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
var _w = IMAGE_ROTATE_TRACK_W;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
}
break;
}
case TYPE_TRACK_TEXT:
case TYPE_TRACK_GROUP_PASSIVE:
{
if (bIsClever)
{
overlay.CheckRect(x1, y1, x4 - x1, y4 - y1);
this.AddRectDashClever(ctx, x1, y1, x4, y4, 8, 3);
ctx.strokeStyle = _style_blue;
ctx.stroke();
if (isCanRotate)
{
ctx.beginPath();
......@@ -1149,33 +1189,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = 15;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
}
ctx.beginPath();
}
else
{
......@@ -1197,6 +1210,37 @@ CAutoshapeTrack.prototype =
var xc1 = (x1 + x2) / 2;
var yc1 = (y1 + y2) / 2;
ctx.beginPath();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = IMAGE_ROTATE_TRACK_W;
var _w2 = IMAGE_ROTATE_TRACK_W / 2;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
}
if (isCanRotate)
{
ctx.beginPath();
......@@ -1236,37 +1280,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (isCanRotate)
{
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_CIRCLE_RADIUS);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = 15;
var _w2 = 7.5;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
}
ctx.beginPath();
}
break;
......@@ -1295,6 +1308,30 @@ CAutoshapeTrack.prototype =
ctx.beginPath();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = IMAGE_ROTATE_TRACK_W;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
ctx.beginPath();
ctx.fillStyle = _style_white;
if (bIsEllipceCorner)
......@@ -1325,30 +1362,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xC, y1 - TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _w = 15;
var _xI = ((x1 + x2 - _w) / 2) >> 0;
var _yI = y1 - TRACK_DISTANCE_ROTATE - (_w >> 1);
overlay.CheckRect(_xI, _yI, _w, _w);
ctx.drawImage(window.g_track_rotate_marker, _xI, _yI, _w, _w);
}
}
ctx.beginPath();
}
else
{
......@@ -1394,6 +1407,34 @@ CAutoshapeTrack.prototype =
ctx.beginPath();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = IMAGE_ROTATE_TRACK_W;
var _w2 = IMAGE_ROTATE_TRACK_W / 2;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
ctx.beginPath();
ctx.fillStyle = _style_white;
if (bIsEllipceCorner)
......@@ -1421,34 +1462,6 @@ CAutoshapeTrack.prototype =
ctx.fill();
ctx.stroke();
if (!bIsUseImageRotateTrack)
{
ctx.beginPath();
overlay.AddEllipse(xc1 + ex2 * TRACK_DISTANCE_ROTATE, yc1 + ey2 * TRACK_DISTANCE_ROTATE, TRACK_DISTANCE_ROTATE);
ctx.fillStyle = _style_green;
ctx.fill();
ctx.stroke();
}
else
{
if (window.g_track_rotate_marker.asc_complete)
{
var _xI = xc1 + ex2 * TRACK_DISTANCE_ROTATE;
var _yI = yc1 + ey2 * TRACK_DISTANCE_ROTATE;
var _w = 15;
var _w2 = 7.5;
ctx.setTransform(ex1, ey1, -ey1, ex1, _xI, _yI);
ctx.drawImage(window.g_track_rotate_marker, -_w2, -_w2, _w, _w);
ctx.setTransform(1, 0, 0, 1, 0, 0);
overlay.CheckRect(_xI - _w2, _yI - _w2, _w, _w);
}
}
ctx.beginPath();
}
break;
......
......@@ -483,6 +483,8 @@ CGeometry.prototype=
canFill: function()
{
if(this.preset === "line")
return false;
for(var i = 0; i < this.pathLst.length; ++i)
{
if(this.pathLst[i].fill !== "none")
......
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