hqchart 1.1.12513 → 1.1.12522
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +67 -22
- package/package.json +1 -1
- package/src/jscommon/umychart.js +487 -27
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +488 -28
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +488 -28
- package/src/jscommon/umychart.wechat/umychart.chartpaint.wechat.js +13 -1
- package/src/jscommon/umychart.wechat/umychart.index.wechat.js +6 -0
|
@@ -5712,6 +5712,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
5712
5712
|
|
|
5713
5713
|
this.JSChartContainer=chart;
|
|
5714
5714
|
|
|
5715
|
+
if (option.DefaultCursor) chart.DefaultCursor=option.DefaultCursor;
|
|
5715
5716
|
if (option.OnCreatedCallback) option.OnCreatedCallback(chart);
|
|
5716
5717
|
|
|
5717
5718
|
//是否自动更新
|
|
@@ -6817,6 +6818,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
6817
6818
|
this.IsClickShowCorssCursor=false; //手势点击显示十字光标
|
|
6818
6819
|
this.ChartSplashPaint=null; //等待提示
|
|
6819
6820
|
this.LoadDataSplashTitle="数据加载中"; //下载数据提示信息
|
|
6821
|
+
this.DefaultCursor="default"; //crosshair , default 默认手型
|
|
6820
6822
|
|
|
6821
6823
|
//绘图缓存
|
|
6822
6824
|
this.CacheCanvas=null;
|
|
@@ -7296,7 +7298,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7296
7298
|
event.Callback(event, sendData, this);
|
|
7297
7299
|
this.CustomChartDrag=sendData.ChartDrag;
|
|
7298
7300
|
|
|
7299
|
-
|
|
7301
|
+
this.SetCursor(sendData);
|
|
7300
7302
|
}
|
|
7301
7303
|
|
|
7302
7304
|
this.TryDragMove_CustomChartDrag=function(sendData)
|
|
@@ -7375,7 +7377,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7375
7377
|
{
|
|
7376
7378
|
if (item.Type==4)
|
|
7377
7379
|
{
|
|
7378
|
-
this.UIElement.style.cursor="pointer";
|
|
7380
|
+
//this.UIElement.style.cursor="pointer";
|
|
7381
|
+
this.SetCursor({Cursor:"pointer"});
|
|
7379
7382
|
var obj={ X:e.clientX };
|
|
7380
7383
|
if (this.GetXDataIndex(obj))
|
|
7381
7384
|
{
|
|
@@ -7385,7 +7388,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7385
7388
|
}
|
|
7386
7389
|
else
|
|
7387
7390
|
{
|
|
7388
|
-
this.UIElement.style.cursor="ew-resize";
|
|
7391
|
+
//this.UIElement.style.cursor="ew-resize";
|
|
7392
|
+
this.SetCursor({Cursor:"ew-resize"});
|
|
7389
7393
|
this.RectSelectDrag={ Index:item.PointIndex, Type:item.Type };
|
|
7390
7394
|
JSConsole.Chart.Log("[JSChartContainer::UIOnMouseDown] drag rect select ",item);
|
|
7391
7395
|
}
|
|
@@ -7399,7 +7403,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7399
7403
|
var dragBorder=this.Frame.PtInFrameBorder(x,y);
|
|
7400
7404
|
if (dragBorder && dragBorder.Index>=0)
|
|
7401
7405
|
{
|
|
7402
|
-
this.UIElement.style.cursor="n-resize";
|
|
7406
|
+
//this.UIElement.style.cursor="n-resize";
|
|
7407
|
+
this.SetCursor({Cursor:"n-resize"});
|
|
7403
7408
|
this.BorderDrag={ Index:dragBorder.Index };
|
|
7404
7409
|
JSConsole.Chart.Log("[JSChartContainer::UIOnMouseDown] DragBorder ",dragBorder);
|
|
7405
7410
|
}
|
|
@@ -7411,7 +7416,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7411
7416
|
var dragY=this.TryYDrag(x,y);
|
|
7412
7417
|
if (dragY)
|
|
7413
7418
|
{
|
|
7414
|
-
this.UIElement.style.cursor=dragY.Position==0 ? "n-resize":"row-resize";
|
|
7419
|
+
//this.UIElement.style.cursor=dragY.Position==0 ? "n-resize":"row-resize";
|
|
7420
|
+
var cursor=dragY.Position==0 ? "n-resize":"row-resize";
|
|
7421
|
+
this.SetCursor({Cursor:cursor});
|
|
7415
7422
|
this.YDrag=dragY;
|
|
7416
7423
|
JSConsole.Chart.Log("[JSChartContainer::UIOnMouseDown] dragY ",dragY);
|
|
7417
7424
|
}
|
|
@@ -7420,7 +7427,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7420
7427
|
var dragUpDown=this.TryUpDownDrag(x,y);
|
|
7421
7428
|
if (dragUpDown)
|
|
7422
7429
|
{
|
|
7423
|
-
this.UIElement.style.cursor="pointer";
|
|
7430
|
+
//this.UIElement.style.cursor="pointer";
|
|
7431
|
+
this.SetCursor({Cursor:"pointer"});
|
|
7424
7432
|
this.UpDownDrag=dragUpDown;
|
|
7425
7433
|
JSConsole.Chart.Log("[JSChartContainer::UIOnMouseDown] dragUpDown ",dragUpDown);
|
|
7426
7434
|
}
|
|
@@ -7743,8 +7751,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7743
7751
|
|
|
7744
7752
|
if (moveSetp<5 && yMoveSetp<5) return;
|
|
7745
7753
|
|
|
7746
|
-
this.UIElement.style.cursor="default";
|
|
7747
|
-
|
|
7754
|
+
//this.UIElement.style.cursor="default";
|
|
7755
|
+
this.SetCursor({Cursor:"default"});
|
|
7748
7756
|
var x=drag.Click.X-uielement.getBoundingClientRect().left;
|
|
7749
7757
|
var y=drag.Click.Y-uielement.getBoundingClientRect().top;
|
|
7750
7758
|
var x2=e.clientX-uielement.getBoundingClientRect().left;
|
|
@@ -7773,7 +7781,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7773
7781
|
{
|
|
7774
7782
|
var yMove=e.clientY-drag.LastMove.Y;
|
|
7775
7783
|
JSConsole.Chart.Log("[JSChartContainer::OnDragMode_One] UpDownDrag ",this.UpDownDrag,yMove);
|
|
7776
|
-
this.UIElement.style.cursor="pointer";
|
|
7784
|
+
//this.UIElement.style.cursor="pointer";
|
|
7785
|
+
this.SetCursor({Cursor:"pointer"});
|
|
7777
7786
|
if (this.OnUpDonwFrameY(this.UpDownDrag, yMove))
|
|
7778
7787
|
{
|
|
7779
7788
|
bNeedDraw=true;
|
|
@@ -7820,7 +7829,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7820
7829
|
var oneStepWidth=this.GetMoveOneStepWidth();
|
|
7821
7830
|
if (moveSetp<oneStepWidth)
|
|
7822
7831
|
{
|
|
7823
|
-
this.UIElement.style.cursor=cursorStatus;
|
|
7832
|
+
//this.UIElement.style.cursor=cursorStatus;
|
|
7833
|
+
this.SetCursor({Cursor:cursorStatus});
|
|
7824
7834
|
if (bNeedDraw) this.Draw();
|
|
7825
7835
|
return;
|
|
7826
7836
|
}
|
|
@@ -7850,7 +7860,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7850
7860
|
if (this.DragDownloadData) this.DragDownloadData();
|
|
7851
7861
|
}
|
|
7852
7862
|
}
|
|
7853
|
-
this.UIElement.style.cursor=cursorStatus;
|
|
7863
|
+
//this.UIElement.style.cursor=cursorStatus;
|
|
7864
|
+
this.SetCursor({Cursor:cursorStatus});
|
|
7854
7865
|
}
|
|
7855
7866
|
drag.LastMove.X=e.clientX;
|
|
7856
7867
|
}
|
|
@@ -7918,7 +7929,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
7918
7929
|
var chartMove=this.GetExtendChartByClassName("DragMovePaint");
|
|
7919
7930
|
if (chartMove && chartMove.Chart) chartMove.Chart.Clear();
|
|
7920
7931
|
if (!this.OnDragChart(this.IndexChartDrag)) this.DrawDynamicInfo();
|
|
7921
|
-
this.UIElement.style.cursor="default";
|
|
7932
|
+
//this.UIElement.style.cursor="default";
|
|
7933
|
+
this.SetCursor({Cursor:"default"});
|
|
7922
7934
|
}
|
|
7923
7935
|
else if (this.CustomChartDrag)
|
|
7924
7936
|
{
|
|
@@ -8008,7 +8020,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
8008
8020
|
//清空数据
|
|
8009
8021
|
JSConsole.Chart.Log('[KLineChartContainer::document.onmouseup]',e);
|
|
8010
8022
|
if (this.SelectChartDrawPicture) this.SelectChartDrawPicture.DragInfo=null;
|
|
8011
|
-
this.UIElement.style.cursor="default";
|
|
8023
|
+
//this.UIElement.style.cursor="default";
|
|
8024
|
+
this.SetCursor({Cursor:"default"});
|
|
8012
8025
|
this.MouseDrag=null;
|
|
8013
8026
|
this.ClickDownPoint=null;
|
|
8014
8027
|
this.IsOnTouch=false;
|
|
@@ -9843,7 +9856,6 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
9843
9856
|
var frameID=this.Frame.PtInFrame(x,y);
|
|
9844
9857
|
if (IFrameSplitOperator.IsNumber(frameID) && frameID>=0) //在K线内部移动,调整K线索引
|
|
9845
9858
|
this.CursorIndex=this.Frame.GetXData(x);
|
|
9846
|
-
|
|
9847
9859
|
|
|
9848
9860
|
|
|
9849
9861
|
if (this.EnableBorderDrag && this.Frame && !this.CurrentChartDrawPicture)
|
|
@@ -9966,13 +9978,13 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
9966
9978
|
|
|
9967
9979
|
if (drawPictrueData.PointIndex===100)
|
|
9968
9980
|
{
|
|
9969
|
-
if (drawPictrueData.Cursor) this.UIElement.style.cursor=drawPictrueData.Cursor;
|
|
9970
|
-
else this.UIElement.style.cursor="move";
|
|
9981
|
+
if (drawPictrueData.Cursor) this.SetCursor(drawPictrueData); //this.UIElement.style.cursor=drawPictrueData.Cursor;
|
|
9982
|
+
else this.SetCursor({Cursor:"move"}); //this.UIElement.style.cursor="move";
|
|
9971
9983
|
}
|
|
9972
9984
|
else
|
|
9973
9985
|
{
|
|
9974
|
-
if (drawPictrueData.Cursor) this.UIElement.style.cursor=drawPictrueData.Cursor
|
|
9975
|
-
else this.UIElement.style.cursor="pointer";
|
|
9986
|
+
if (drawPictrueData.Cursor) this.SetCursor(drawPictrueData); //this.UIElement.style.cursor=drawPictrueData.Cursor
|
|
9987
|
+
else this.SetCursor({Cursor:"pointer"}); //this.UIElement.style.cursor="pointer";
|
|
9976
9988
|
}
|
|
9977
9989
|
|
|
9978
9990
|
bDrawPicture=true;
|
|
@@ -9980,7 +9992,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
9980
9992
|
}
|
|
9981
9993
|
else
|
|
9982
9994
|
{
|
|
9983
|
-
if (!this.MouseDrag) this.UIElement.style.cursor="default";
|
|
9995
|
+
if (!this.MouseDrag) this.SetCursor({Cursor:"default"}); //this.UIElement.style.cursor="default";
|
|
9984
9996
|
}
|
|
9985
9997
|
}
|
|
9986
9998
|
|
|
@@ -10003,7 +10015,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
10003
10015
|
this.DrawDynamicInfo(option);
|
|
10004
10016
|
}
|
|
10005
10017
|
|
|
10006
|
-
|
|
10018
|
+
this.SetCursor(mouseStatus);
|
|
10007
10019
|
|
|
10008
10020
|
if (this.IsShowTooltip && bDrawPicture==false)
|
|
10009
10021
|
{
|
|
@@ -10031,6 +10043,17 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
10031
10043
|
}
|
|
10032
10044
|
}
|
|
10033
10045
|
|
|
10046
|
+
//设置鼠标形状 {Cursor:鼠标形状 }
|
|
10047
|
+
this.SetCursor=function(obj)
|
|
10048
|
+
{
|
|
10049
|
+
if (!obj || !obj.Cursor) return;
|
|
10050
|
+
|
|
10051
|
+
if (obj.Cursor=="default")
|
|
10052
|
+
this.UIElement.style.cursor=this.DefaultCursor;
|
|
10053
|
+
else
|
|
10054
|
+
this.UIElement.style.cursor=obj.Cursor;
|
|
10055
|
+
}
|
|
10056
|
+
|
|
10034
10057
|
this.OnKeyDown=function(e)
|
|
10035
10058
|
{
|
|
10036
10059
|
if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
|
|
@@ -12784,6 +12807,7 @@ function CoordinateInfo()
|
|
|
12784
12807
|
this.Value; //坐标数据
|
|
12785
12808
|
this.Message=[]; //坐标输出文字信息 0=左 1=右 2=内左 3=内右
|
|
12786
12809
|
this.TextColor=g_JSChartResource.FrameSplitTextColor //文字颜色
|
|
12810
|
+
this.TextBGColor; //文字背景色
|
|
12787
12811
|
this.TextColor2; //右侧文字颜色,空使用TextColor
|
|
12788
12812
|
this.Font=g_JSChartResource.FrameSplitTextFont; //字体
|
|
12789
12813
|
this.LineColor=g_JSChartResource.FrameSplitPen; //线段颜色
|
|
@@ -14296,9 +14320,10 @@ function AverageWidthFrame()
|
|
|
14296
14320
|
this.Canvas.font=this.VerticalInfo[i].Font;
|
|
14297
14321
|
|
|
14298
14322
|
var textLeft=0;
|
|
14299
|
-
|
|
14323
|
+
|
|
14300
14324
|
this.Canvas.strokeStyle=item.TextColor;
|
|
14301
14325
|
var testWidth=this.Canvas.measureText(this.VerticalInfo[i].Message[0]).width;
|
|
14326
|
+
var textHeight=this.Canvas.measureText("擎").width;
|
|
14302
14327
|
if (x<testWidth/2)
|
|
14303
14328
|
{
|
|
14304
14329
|
this.Canvas.textAlign="left";
|
|
@@ -14332,6 +14357,15 @@ function AverageWidthFrame()
|
|
|
14332
14357
|
yText+=lineLength+2*pixelRatio;
|
|
14333
14358
|
}
|
|
14334
14359
|
|
|
14360
|
+
//item.TextBGColor="rgb(0,255,0)";
|
|
14361
|
+
if (item.TextBGColor) //文字背景色
|
|
14362
|
+
{
|
|
14363
|
+
var rtText={ Left:textLeft, Top:yText+this.XBottomOffset, Width:testWidth, Height:textHeight };
|
|
14364
|
+
this.Canvas.fillStyle=item.TextBGColor;
|
|
14365
|
+
this.Canvas.fillRect(rtText.Left-1, rtText.Top, rtText.Width+2, rtText.Height);
|
|
14366
|
+
}
|
|
14367
|
+
|
|
14368
|
+
this.Canvas.fillStyle=item.TextColor;
|
|
14335
14369
|
this.Canvas.fillText(this.VerticalInfo[i].Message[0],x,yText+this.XBottomOffset);
|
|
14336
14370
|
textRightPrev=textLeft+testWidth;
|
|
14337
14371
|
}
|
|
@@ -33105,6 +33139,7 @@ function ChartStick()
|
|
|
33105
33139
|
this.Draw=function()
|
|
33106
33140
|
{
|
|
33107
33141
|
if (!this.IsShow || this.ChartFrame.IsMinSize) return;
|
|
33142
|
+
if (this.IsHideScriptIndex()) return;
|
|
33108
33143
|
|
|
33109
33144
|
if (this.NotSupportMessage)
|
|
33110
33145
|
{
|
|
@@ -33130,6 +33165,8 @@ function ChartLineStick()
|
|
|
33130
33165
|
this.Draw=function()
|
|
33131
33166
|
{
|
|
33132
33167
|
if (!this.IsShow || this.ChartFrame.IsMinSize) return;
|
|
33168
|
+
if (this.IsShowIndexTitleOnly()) return;
|
|
33169
|
+
if (this.IsHideScriptIndex()) return;
|
|
33133
33170
|
|
|
33134
33171
|
if (this.NotSupportMessage)
|
|
33135
33172
|
{
|
|
@@ -43658,7 +43695,7 @@ function DrawToolsButton()
|
|
|
43658
43695
|
{ HTML: { Title: 'M头W底', IClass: 'iconfont icon-draw_wavemw', ID: 'icon-wavemw' }, Name: 'M头W底' },
|
|
43659
43696
|
{ HTML: { Title: '头肩型', IClass: 'iconfont icon-draw_head_shoulders_bt', ID: 'icon-Head-Shoulders' }, Name: '头肩型' },
|
|
43660
43697
|
{ HTML: { Title: '波浪尺', IClass: 'iconfont icon-waveruler', ID: 'icon-wave-ruler' }, Name: '波浪尺' },
|
|
43661
|
-
{ HTML: { Title: 'AB波浪尺', IClass: 'iconfont icon-waveruler', ID: 'icon-wave-
|
|
43698
|
+
{ HTML: { Title: 'AB波浪尺', IClass: 'iconfont icon-waveruler', ID: 'icon-wave-ruler2' }, Name: 'AB波浪尺' },
|
|
43662
43699
|
{ HTML: { Title: '箱型线', IClass: 'iconfont icon-draw_box', ID: 'icon-drawbox' }, Name: '箱型线' },
|
|
43663
43700
|
{ HTML: { Title: '涂鸦线段', IClass: 'iconfont icon-draw_line', ID: 'icon-segment2' }, Name: '涂鸦线段' },
|
|
43664
43701
|
|
|
@@ -48846,6 +48883,7 @@ function FrameSplitMinuteX()
|
|
|
48846
48883
|
info.Value=item[0];
|
|
48847
48884
|
if (this.ShowText) info.Message[0]=item[3];
|
|
48848
48885
|
if (item[4]) info.LineColor=item[4]; //线段颜色
|
|
48886
|
+
if (item[5]) info.TextBGColor=item[5]; //文字背景色
|
|
48849
48887
|
this.Frame.VerticalInfo[i]=info;
|
|
48850
48888
|
}
|
|
48851
48889
|
}
|
|
@@ -52640,7 +52678,8 @@ function DynamicMinuteTitlePainting()
|
|
|
52640
52678
|
|
|
52641
52679
|
if (beforeItem && dataItem) //盘前数据
|
|
52642
52680
|
{
|
|
52643
|
-
if (beforeItem.Date>dataItem.Date || (beforeItem.Date==dataItem.Date && beforeItem.Time>dataItem.Time &&
|
|
52681
|
+
if (beforeItem.Date>dataItem.Date || (beforeItem.Date==dataItem.Date && beforeItem.Time>dataItem.Time && beforeDataVer==1.0)
|
|
52682
|
+
|| (beforeItem.Date==dataItem.Date && parseInt(beforeItem.Time>dataItem.Time) && beforeDataVer==2.0))
|
|
52644
52683
|
return { Type:2, Data:beforeItem, Ver: beforeDataVer, Explain:beforeExplain};
|
|
52645
52684
|
}
|
|
52646
52685
|
|
|
@@ -56054,7 +56093,9 @@ IChartDrawPicture.ArrayDrawPricture=
|
|
|
56054
56093
|
{ Name:"AnchoredText", ClassName:"ChartDrawAnchoredText", Create:function() { return new ChartDrawAnchoredText();} },
|
|
56055
56094
|
{ Name:"PriceLabel", ClassName:"ChartDrawPriceLabel", Create:function() { return new ChartDrawPriceLabel();} },
|
|
56056
56095
|
{ Name:"PriceNote", ClassName:"ChartDrawPriceNote", Create:function() { return new ChartDrawPriceNote();} },
|
|
56057
|
-
{ Name:"FibWedge", ClassName:"ChartDrawFibWedge", Create:function(){ return new ChartDrawFibWedge(); }}
|
|
56096
|
+
{ Name:"FibWedge", ClassName:"ChartDrawFibWedge", Create:function(){ return new ChartDrawFibWedge(); }},
|
|
56097
|
+
{ Name:"FibRetracement", ClassName:"ChartFibRetracement", Create:function() { return new ChartFibRetracement(); }}, //斐波那契回测
|
|
56098
|
+
{ Name:"FibSpeedResistanceFan", ClassName:"ChartFibSpeedResistanceFan", Create:function() { return new ChartFibSpeedResistanceFan(); }} //斐波那契扇形
|
|
56058
56099
|
];
|
|
56059
56100
|
|
|
56060
56101
|
IChartDrawPicture.MapIonFont=new Map(
|
|
@@ -58325,7 +58366,7 @@ function ChartDrawPictureParallelChannel()
|
|
|
58325
58366
|
var ptCenter=new Point();
|
|
58326
58367
|
ptCenter.X=linePoint.Start.X+(linePoint.End.X-linePoint.Start.X)/2;
|
|
58327
58368
|
ptCenter.Y=linePoint.Start.Y+(linePoint.End.Y-linePoint.Start.Y)/2;
|
|
58328
|
-
drawPoint[
|
|
58369
|
+
drawPoint[2]=ptCenter;
|
|
58329
58370
|
|
|
58330
58371
|
this.Point[2]=ptCenter;
|
|
58331
58372
|
var xValue=parseInt(this.Frame.GetXData(ptCenter.X))+data.DataOffset;
|
|
@@ -58758,6 +58799,7 @@ function ChartDrawPictureGannFan()
|
|
|
58758
58799
|
else return 3;
|
|
58759
58800
|
}
|
|
58760
58801
|
|
|
58802
|
+
|
|
58761
58803
|
//isDotline 是否是虚线
|
|
58762
58804
|
this.DrawLine=function(ptStart,ptEnd,isDottedline)
|
|
58763
58805
|
{
|
|
@@ -63537,6 +63579,423 @@ function ChartDrawFibWedge()
|
|
|
63537
63579
|
|
|
63538
63580
|
}
|
|
63539
63581
|
|
|
63582
|
+
//////////////////////////////////////////////////////////////////////////////
|
|
63583
|
+
// 斐波那契回测
|
|
63584
|
+
//
|
|
63585
|
+
function ChartFibRetracement()
|
|
63586
|
+
{
|
|
63587
|
+
this.newMethod=IChartDrawPicture; //派生
|
|
63588
|
+
this.newMethod();
|
|
63589
|
+
delete this.newMethod;
|
|
63590
|
+
|
|
63591
|
+
this.ClassName='ChartFibRetracement';
|
|
63592
|
+
this.PointCount=2;
|
|
63593
|
+
this.Font=12*GetDevicePixelRatio() +"px 微软雅黑";
|
|
63594
|
+
this.IsPointIn=this.IsPointIn_XYValue_Line;
|
|
63595
|
+
this.GetXYCoordinate=this.GetXYCoordinate_default;
|
|
63596
|
+
this.PointToValue_Default=this.PointToValue;
|
|
63597
|
+
this.OnlyMoveXIndex=true;
|
|
63598
|
+
this.IsSupportMagnet=true;
|
|
63599
|
+
this.LineDash=[6,3];
|
|
63600
|
+
this.LineWidth=1;
|
|
63601
|
+
this.EnableBGColor=true;
|
|
63602
|
+
this.ExtendLine={ Left:false, Right: false }; //延长线
|
|
63603
|
+
|
|
63604
|
+
this.AreaConfig=
|
|
63605
|
+
{
|
|
63606
|
+
AryData:
|
|
63607
|
+
[
|
|
63608
|
+
{ Value: 0, Color:"rgb(128,128,128)", Enable:true },
|
|
63609
|
+
{ Value: 0.236, Color:"rgb(242,52,69)", Enable:true },
|
|
63610
|
+
{ Value: 0.382, Color:"rgb(255,152,0)",Enable:true },
|
|
63611
|
+
{ Value: 0.5, Color:"rgb(76,175,80)", Enable:true },
|
|
63612
|
+
{ Value: 0.618, Color:"rgb(8,153,129)", Enable:true },
|
|
63613
|
+
{ Value: 0.786, Color:"rgb(0,188,212)" ,Enable:true },
|
|
63614
|
+
{ Value: 1, Color:"rgb(120,123,134)", Enable:true },
|
|
63615
|
+
{ Value: 1.618, Color:"rgb(41,98,255)",Enable:true },
|
|
63616
|
+
{ Value: 2.618, Color:"rgb(242,54,69)",Enable:false },
|
|
63617
|
+
],
|
|
63618
|
+
|
|
63619
|
+
Opacity:0.3
|
|
63620
|
+
}
|
|
63621
|
+
|
|
63622
|
+
this.SetOption=function(option)
|
|
63623
|
+
{
|
|
63624
|
+
if (!option) return;
|
|
63625
|
+
|
|
63626
|
+
if (option.Font) this.Font=option.Font;
|
|
63627
|
+
if (option.LineWidth) this.LineWidth=option.LineWidth;
|
|
63628
|
+
if (option.LineDash) this.LineDash=option.LineDash;
|
|
63629
|
+
if (IFrameSplitOperator.IsBool(option.EnableBGColor)) this.EnableBGColor=option.EnableBGColor;
|
|
63630
|
+
if (option.ExtendLine)
|
|
63631
|
+
{
|
|
63632
|
+
var item=option.ExtendLine;
|
|
63633
|
+
if (IFrameSplitOperator.IsBool(item.Left)) this.ExtendLine.Left=item.Left;
|
|
63634
|
+
if (IFrameSplitOperator.IsBool(item.Right)) this.ExtendLine.Left=item.Right;
|
|
63635
|
+
}
|
|
63636
|
+
|
|
63637
|
+
if (option.AreaConfig) this.AreaConfig=option.AreaConfig;
|
|
63638
|
+
}
|
|
63639
|
+
|
|
63640
|
+
//导出成存储格式
|
|
63641
|
+
this.ExportStorageData=function()
|
|
63642
|
+
{
|
|
63643
|
+
var storageData=this.ExportBaseData();
|
|
63644
|
+
|
|
63645
|
+
storageData.Value=[];
|
|
63646
|
+
for(var i=0;i<this.Value.length && i<this.PointCount;++i)
|
|
63647
|
+
{
|
|
63648
|
+
var item=this.Value[i];
|
|
63649
|
+
storageData.Value.push( { XValue:item.XValue, YValue:item.YValue } );
|
|
63650
|
+
}
|
|
63651
|
+
|
|
63652
|
+
storageData.Font=this.Font;
|
|
63653
|
+
storageData.EnableBGColor=this.EnableBGColor;
|
|
63654
|
+
storageData.LineDash=this.LineDash;
|
|
63655
|
+
storageData.ExtendLine={ Left:this.ExtendLine.Left, Right:this.ExtendLine.Right };
|
|
63656
|
+
storageData.AreaConfig=CloneData(this.AreaConfig);
|
|
63657
|
+
|
|
63658
|
+
return storageData;
|
|
63659
|
+
}
|
|
63660
|
+
|
|
63661
|
+
this.ImportStorageData=function(storageData)
|
|
63662
|
+
{
|
|
63663
|
+
if (storageData.Font) this.Font=storageData.Font;
|
|
63664
|
+
if (storageData.LineDash) this.LineDash=storageData.LineDash;
|
|
63665
|
+
if (IFrameSplitOperator.IsBool(storageData.EnableBGColor)) this.EnableBGColor=storageData.EnableBGColor;
|
|
63666
|
+
if (storageData.ExtendLine) this.ExtendLine=storageData.ExtendLine;
|
|
63667
|
+
if (storageData.AreaConfig) this.AreaConfig=storageData.AreaConfig;
|
|
63668
|
+
}
|
|
63669
|
+
|
|
63670
|
+
this.Draw=function()
|
|
63671
|
+
{
|
|
63672
|
+
this.LinePoint=[];
|
|
63673
|
+
if (this.IsFrameMinSize()) return;
|
|
63674
|
+
var bCheckXY=true;
|
|
63675
|
+
if (this.ExtendLine.Left || this.ExtendLine.Right) bCheckXY=false;
|
|
63676
|
+
var drawPoint=this.CalculateDrawPoint( {IsCheckX:bCheckXY, IsCheckY:bCheckXY} );
|
|
63677
|
+
if (!drawPoint) return;
|
|
63678
|
+
if (drawPoint.length!=2) return;
|
|
63679
|
+
|
|
63680
|
+
this.ClipFrame();
|
|
63681
|
+
|
|
63682
|
+
var ptStart=drawPoint[0];
|
|
63683
|
+
var ptEnd=drawPoint[1];
|
|
63684
|
+
|
|
63685
|
+
this.SetLineWidth();
|
|
63686
|
+
this.Canvas.strokeStyle=this.LineColor;
|
|
63687
|
+
this.Canvas.setLineDash(this.LineDash);
|
|
63688
|
+
this.Canvas.beginPath();
|
|
63689
|
+
this.Canvas.moveTo(ptStart.X,ptStart.Y);
|
|
63690
|
+
this.Canvas.lineTo(ptEnd.X,ptEnd.Y);
|
|
63691
|
+
this.Canvas.stroke();
|
|
63692
|
+
this.Canvas.setLineDash([]);
|
|
63693
|
+
|
|
63694
|
+
this.DrawBlock(ptStart, ptEnd);
|
|
63695
|
+
|
|
63696
|
+
this.RestoreLineWidth();
|
|
63697
|
+
|
|
63698
|
+
var line={Start:ptStart, End:ptEnd};
|
|
63699
|
+
this.LinePoint.push(line);
|
|
63700
|
+
|
|
63701
|
+
this.DrawPoint(drawPoint); //画点
|
|
63702
|
+
this.Canvas.restore();
|
|
63703
|
+
}
|
|
63704
|
+
|
|
63705
|
+
this.GetArrayAreaConfig=function()
|
|
63706
|
+
{
|
|
63707
|
+
var aryArea=[];
|
|
63708
|
+
for(var i=0;i<this.AreaConfig.AryData.length;++i)
|
|
63709
|
+
{
|
|
63710
|
+
var item=this.AreaConfig.AryData[i];
|
|
63711
|
+
if (item.Enable) aryArea.push(item);
|
|
63712
|
+
}
|
|
63713
|
+
|
|
63714
|
+
aryArea.sort((left,right)=>{ return right.Value-left.Value; })
|
|
63715
|
+
|
|
63716
|
+
return aryArea;
|
|
63717
|
+
}
|
|
63718
|
+
|
|
63719
|
+
this.DrawBlock=function(ptStart, ptEnd)
|
|
63720
|
+
{
|
|
63721
|
+
var yTop=Math.min(ptStart.Y, ptEnd.Y);
|
|
63722
|
+
var yBottom=Math.max(ptStart.Y, ptEnd.Y);
|
|
63723
|
+
var xLeft=Math.min(ptStart.X, ptEnd.X);
|
|
63724
|
+
var xRight=Math.max(ptStart.X, ptEnd.X);
|
|
63725
|
+
var height=yBottom-yTop;
|
|
63726
|
+
//var baseValue=Math.min(this.Value[0].YValue, this.Value[1].YValue);
|
|
63727
|
+
//var diffValue=Math.abs(this.Value[0].YValue-this.Value[1].YValue); //差值
|
|
63728
|
+
|
|
63729
|
+
if (this.ExtendLine.Right) xRight=this.Frame.ChartBorder.GetRight();
|
|
63730
|
+
if (this.ExtendLine.Left) xLeft=this.Frame.ChartBorder.GetLeft();
|
|
63731
|
+
|
|
63732
|
+
var aryArea=this.GetArrayAreaConfig();
|
|
63733
|
+
var yPre=null; //上一个点
|
|
63734
|
+
var clrArea=null;
|
|
63735
|
+
this.Canvas.font=this.Font;
|
|
63736
|
+
if (this.ExtendLine.Left) this.Canvas.textAlign="left";
|
|
63737
|
+
else this.Canvas.textAlign="right";
|
|
63738
|
+
this.Canvas.textBaseline="bottom";
|
|
63739
|
+
|
|
63740
|
+
for(var i=0;i<aryArea.length;++i)
|
|
63741
|
+
{
|
|
63742
|
+
var item=aryArea[i];
|
|
63743
|
+
var y=yBottom-height*item.Value;
|
|
63744
|
+
//var yValue=baseValue+diffValue*item.Value;
|
|
63745
|
+
yValue=this.Frame.GetYData(y,false);
|
|
63746
|
+
y=ToFixedPoint(y);
|
|
63747
|
+
if (this.EnableBGColor && IFrameSplitOperator.IsNumber(yPre))
|
|
63748
|
+
{
|
|
63749
|
+
var rtBG={ Left:xLeft, Right:xRight, Top:yPre, Bottom:y };
|
|
63750
|
+
rtBG.Width=rtBG.Right-rtBG.Left;
|
|
63751
|
+
rtBG.Height=rtBG.Bottom-rtBG.Top;
|
|
63752
|
+
this.Canvas.fillStyle=clrArea;
|
|
63753
|
+
this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
|
|
63754
|
+
}
|
|
63755
|
+
|
|
63756
|
+
this.Canvas.strokeStyle=item.Color;
|
|
63757
|
+
this.Canvas.beginPath();
|
|
63758
|
+
this.Canvas.moveTo(xLeft,y);
|
|
63759
|
+
this.Canvas.lineTo(xRight,y);
|
|
63760
|
+
this.Canvas.stroke();
|
|
63761
|
+
|
|
63762
|
+
var line={ Start:{X:xLeft, Y:y}, End:{X:xRight, Y:y} };
|
|
63763
|
+
this.LinePoint.push(line);
|
|
63764
|
+
|
|
63765
|
+
//文字
|
|
63766
|
+
var text=`${item.Value} (${yValue.toFixed(2)})`;
|
|
63767
|
+
this.Canvas.fillStyle=item.Color;
|
|
63768
|
+
if (this.ExtendLine.Left)
|
|
63769
|
+
this.Canvas.fillText(text,xLeft+2,y-2);
|
|
63770
|
+
else
|
|
63771
|
+
this.Canvas.fillText(text,xLeft-2,y-2);
|
|
63772
|
+
|
|
63773
|
+
yPre=y;
|
|
63774
|
+
clrArea=IChartDrawPicture.ColorToRGBA(item.Color, this.AreaConfig.Opacity);
|
|
63775
|
+
}
|
|
63776
|
+
}
|
|
63777
|
+
|
|
63778
|
+
}
|
|
63779
|
+
|
|
63780
|
+
|
|
63781
|
+
function ChartFibSpeedResistanceFan()
|
|
63782
|
+
{
|
|
63783
|
+
this.newMethod=IChartDrawPicture; //派生
|
|
63784
|
+
this.newMethod();
|
|
63785
|
+
delete this.newMethod;
|
|
63786
|
+
|
|
63787
|
+
this.ClassName='ChartFibSpeedResistanceFan';
|
|
63788
|
+
this.PointCount=2;
|
|
63789
|
+
this.Font=12*GetDevicePixelRatio() +"px 微软雅黑";
|
|
63790
|
+
this.IsPointIn=this.IsPointIn_XYValue_Line;
|
|
63791
|
+
this.GetXYCoordinate=this.GetXYCoordinate_default;
|
|
63792
|
+
this.PointToValue_Default=this.PointToValue;
|
|
63793
|
+
this.OnlyMoveXIndex=true;
|
|
63794
|
+
this.IsSupportMagnet=true;
|
|
63795
|
+
this.LineWidth=1;
|
|
63796
|
+
this.EnableBGColor=true;
|
|
63797
|
+
|
|
63798
|
+
this.AreaConfig=
|
|
63799
|
+
{
|
|
63800
|
+
AryYData:
|
|
63801
|
+
[
|
|
63802
|
+
{ Value: 0, Color:"rgb(128,128,128)", Enable:true },
|
|
63803
|
+
{ Value: 0.25, Color:"rgb(242,52,69)", Enable:true },
|
|
63804
|
+
{ Value: 0.382, Color:"rgb(255,152,0)",Enable:true },
|
|
63805
|
+
{ Value: 0.5, Color:"rgb(76,175,80)", Enable:true },
|
|
63806
|
+
{ Value: 0.618, Color:"rgb(8,153,129)", Enable:true },
|
|
63807
|
+
{ Value: 0.75, Color:"rgb(0,188,212)" ,Enable:true },
|
|
63808
|
+
{ Value: 1, Color:"rgb(120,123,134)", Enable:true },
|
|
63809
|
+
|
|
63810
|
+
],
|
|
63811
|
+
|
|
63812
|
+
AryXData:
|
|
63813
|
+
[
|
|
63814
|
+
{ Value: 0, Color:"rgb(128,128,128)", Enable:true },
|
|
63815
|
+
{ Value: 0.25, Color:"rgb(242,52,69)", Enable:true },
|
|
63816
|
+
{ Value: 0.382, Color:"rgb(255,152,0)",Enable:true },
|
|
63817
|
+
{ Value: 0.5, Color:"rgb(76,175,80)", Enable:true },
|
|
63818
|
+
{ Value: 0.618, Color:"rgb(8,153,129)", Enable:true },
|
|
63819
|
+
{ Value: 0.75, Color:"rgb(0,188,212)" ,Enable:true },
|
|
63820
|
+
{ Value: 1, Color:"rgb(120,123,134)", Enable:true },
|
|
63821
|
+
],
|
|
63822
|
+
|
|
63823
|
+
Opacity:0.3
|
|
63824
|
+
}
|
|
63825
|
+
|
|
63826
|
+
this.Draw=function()
|
|
63827
|
+
{
|
|
63828
|
+
this.LinePoint=[];
|
|
63829
|
+
if (this.IsFrameMinSize()) return;
|
|
63830
|
+
var bCheckXY=false;
|
|
63831
|
+
var drawPoint=this.CalculateDrawPoint( {IsCheckX:bCheckXY, IsCheckY:bCheckXY} );
|
|
63832
|
+
if (!drawPoint) return;
|
|
63833
|
+
if (drawPoint.length!=2) return;
|
|
63834
|
+
|
|
63835
|
+
this.ClipFrame();
|
|
63836
|
+
|
|
63837
|
+
var ptStart=drawPoint[0];
|
|
63838
|
+
var ptEnd=drawPoint[1];
|
|
63839
|
+
|
|
63840
|
+
this.SetLineWidth();
|
|
63841
|
+
this.DrawBlock(ptEnd, ptStart);
|
|
63842
|
+
this.RestoreLineWidth();
|
|
63843
|
+
|
|
63844
|
+
this.DrawPoint(drawPoint); //画点
|
|
63845
|
+
this.Canvas.restore();
|
|
63846
|
+
}
|
|
63847
|
+
|
|
63848
|
+
//获取在第几象限
|
|
63849
|
+
this.GetQuadrant=function(ptStart,ptEnd)
|
|
63850
|
+
{
|
|
63851
|
+
if (ptStart.X<ptEnd.X && ptStart.Y>ptEnd.Y) return 1;
|
|
63852
|
+
else if (ptStart.X>ptEnd.X && ptStart.Y>ptEnd.Y) return 2;
|
|
63853
|
+
else if (ptStart.X<ptEnd.X && ptStart.Y< ptEnd.Y) return 4;
|
|
63854
|
+
else return 3;
|
|
63855
|
+
}
|
|
63856
|
+
|
|
63857
|
+
this.DrawBlock=function(ptStart, ptEnd)
|
|
63858
|
+
{
|
|
63859
|
+
var center=ptEnd;
|
|
63860
|
+
var xDiff=ptEnd.X-ptStart.X;
|
|
63861
|
+
var yDiff=ptEnd.Y-ptStart.Y;
|
|
63862
|
+
var quadrant=this.GetQuadrant(center,ptStart); //象限
|
|
63863
|
+
|
|
63864
|
+
var aryYData=this.GetArrayAreaConfig(this.AreaConfig.AryYData);
|
|
63865
|
+
var ptPre=null; //上一个点
|
|
63866
|
+
var clrArea=null;
|
|
63867
|
+
this.Canvas.font=this.Font;
|
|
63868
|
+
var textOffset=4;
|
|
63869
|
+
if (quadrant==1 || quadrant==4)
|
|
63870
|
+
{
|
|
63871
|
+
this.Canvas.textAlign="right";
|
|
63872
|
+
textOffset=-4;
|
|
63873
|
+
}
|
|
63874
|
+
else
|
|
63875
|
+
{
|
|
63876
|
+
this.Canvas.textAlign="left";
|
|
63877
|
+
textOffset=4;
|
|
63878
|
+
}
|
|
63879
|
+
this.Canvas.textBaseline="middle";
|
|
63880
|
+
for(var i=0;i<aryYData.length;++i)
|
|
63881
|
+
{
|
|
63882
|
+
var item=aryYData[i];
|
|
63883
|
+
var y=item.Value*yDiff+ptStart.Y;
|
|
63884
|
+
|
|
63885
|
+
var pt=this.CalculateExtendLineEndPoint([center, {X:ptStart.X, Y:y}]);
|
|
63886
|
+
|
|
63887
|
+
if (ptPre)
|
|
63888
|
+
{
|
|
63889
|
+
this.Canvas.beginPath();
|
|
63890
|
+
this.Canvas.moveTo(center.X,center.Y);
|
|
63891
|
+
this.Canvas.lineTo(ptPre.X,ptPre.Y);
|
|
63892
|
+
this.Canvas.lineTo(pt.X,pt.Y);
|
|
63893
|
+
this.Canvas.closePath();
|
|
63894
|
+
this.Canvas.fillStyle=clrArea;
|
|
63895
|
+
this.Canvas.fill();
|
|
63896
|
+
}
|
|
63897
|
+
|
|
63898
|
+
this.Canvas.strokeStyle=item.Color;
|
|
63899
|
+
this.Canvas.beginPath();
|
|
63900
|
+
this.Canvas.moveTo(center.X,center.Y);
|
|
63901
|
+
this.Canvas.lineTo(pt.X,pt.Y);
|
|
63902
|
+
this.Canvas.stroke();
|
|
63903
|
+
|
|
63904
|
+
this.LinePoint.push({Start:center, End:pt});
|
|
63905
|
+
|
|
63906
|
+
if (item.Value!=1)
|
|
63907
|
+
{
|
|
63908
|
+
this.Canvas.strokeStyle=this.LineColor;
|
|
63909
|
+
this.Canvas.beginPath();
|
|
63910
|
+
this.Canvas.moveTo(center.X,y);
|
|
63911
|
+
this.Canvas.lineTo(ptStart.X,y);
|
|
63912
|
+
this.Canvas.stroke();
|
|
63913
|
+
}
|
|
63914
|
+
|
|
63915
|
+
ptPre=pt;
|
|
63916
|
+
clrArea=IChartDrawPicture.ColorToRGBA(item.Color, this.AreaConfig.Opacity);
|
|
63917
|
+
|
|
63918
|
+
//文字
|
|
63919
|
+
var text=`${item.Value}`;
|
|
63920
|
+
this.Canvas.fillStyle=item.Color;
|
|
63921
|
+
this.Canvas.fillText(text,center.X+textOffset,y);
|
|
63922
|
+
}
|
|
63923
|
+
|
|
63924
|
+
var aryXData=this.GetArrayAreaConfig(this.AreaConfig.AryXData);
|
|
63925
|
+
var ptPre=null;
|
|
63926
|
+
this.Canvas.textAlign="center";
|
|
63927
|
+
if (quadrant==3 || quadrant==4)
|
|
63928
|
+
{
|
|
63929
|
+
this.Canvas.textBaseline="bottom";
|
|
63930
|
+
textOffset=-5;
|
|
63931
|
+
}
|
|
63932
|
+
else
|
|
63933
|
+
{
|
|
63934
|
+
this.Canvas.textBaseline="top";
|
|
63935
|
+
textOffset=5;
|
|
63936
|
+
}
|
|
63937
|
+
|
|
63938
|
+
for(var i=0;i<aryXData.length;++i)
|
|
63939
|
+
{
|
|
63940
|
+
var item=aryXData[i];
|
|
63941
|
+
var x=item.Value*xDiff+ptStart.X;
|
|
63942
|
+
|
|
63943
|
+
var pt=this.CalculateExtendLineEndPoint([center, {X:x, Y:ptStart.Y}]);
|
|
63944
|
+
|
|
63945
|
+
if (ptPre) //面积
|
|
63946
|
+
{
|
|
63947
|
+
this.Canvas.beginPath();
|
|
63948
|
+
this.Canvas.moveTo(center.X,center.Y);
|
|
63949
|
+
this.Canvas.lineTo(ptPre.X,ptPre.Y);
|
|
63950
|
+
this.Canvas.lineTo(pt.X,pt.Y);
|
|
63951
|
+
this.Canvas.closePath();
|
|
63952
|
+
this.Canvas.fillStyle=clrArea;
|
|
63953
|
+
this.Canvas.fill();
|
|
63954
|
+
}
|
|
63955
|
+
|
|
63956
|
+
this.Canvas.strokeStyle=item.Color;
|
|
63957
|
+
this.Canvas.beginPath();
|
|
63958
|
+
this.Canvas.moveTo(center.X,center.Y);
|
|
63959
|
+
this.Canvas.lineTo(pt.X,pt.Y);
|
|
63960
|
+
this.Canvas.stroke();
|
|
63961
|
+
|
|
63962
|
+
this.LinePoint.push({Start:center, End:pt});
|
|
63963
|
+
|
|
63964
|
+
if (item.Value!=1)
|
|
63965
|
+
{
|
|
63966
|
+
this.Canvas.strokeStyle=this.LineColor;
|
|
63967
|
+
this.Canvas.beginPath();
|
|
63968
|
+
this.Canvas.moveTo(x,center.Y);
|
|
63969
|
+
this.Canvas.lineTo(x,ptStart.Y);
|
|
63970
|
+
this.Canvas.stroke();
|
|
63971
|
+
}
|
|
63972
|
+
|
|
63973
|
+
ptPre=pt;
|
|
63974
|
+
clrArea=IChartDrawPicture.ColorToRGBA(item.Color, this.AreaConfig.Opacity);
|
|
63975
|
+
|
|
63976
|
+
//文字
|
|
63977
|
+
var text=`${item.Value}`;
|
|
63978
|
+
this.Canvas.fillStyle=item.Color;
|
|
63979
|
+
this.Canvas.fillText(text,x,center.Y+textOffset);
|
|
63980
|
+
}
|
|
63981
|
+
}
|
|
63982
|
+
|
|
63983
|
+
this.GetArrayAreaConfig=function(aryData)
|
|
63984
|
+
{
|
|
63985
|
+
var aryArea=[];
|
|
63986
|
+
for(var i=0;i<aryData.length;++i)
|
|
63987
|
+
{
|
|
63988
|
+
var item=aryData[i];
|
|
63989
|
+
if (item.Enable) aryArea.push(item);
|
|
63990
|
+
}
|
|
63991
|
+
|
|
63992
|
+
aryArea.sort((left,right)=>{ return right.Value-left.Value; })
|
|
63993
|
+
|
|
63994
|
+
return aryArea;
|
|
63995
|
+
}
|
|
63996
|
+
|
|
63997
|
+
}
|
|
63998
|
+
|
|
63540
63999
|
function ChartDrawStorage()
|
|
63541
64000
|
{
|
|
63542
64001
|
this.DrawData=new Map(); //画图工具数据 key=symbol-Period, value=Map() Key:Guid, Value:{Guid, Symbol, Period, ClassName, Value}
|
|
@@ -74922,7 +75381,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
74922
75381
|
if (moveSetp<5 && yMoveSetp<5) return;
|
|
74923
75382
|
if (!this.EnableSelectRect) return;
|
|
74924
75383
|
|
|
74925
|
-
this.UIElement.style.cursor="default";
|
|
75384
|
+
//this.UIElement.style.cursor="default";
|
|
75385
|
+
this.SetCursor({Cursor:"default"});
|
|
74926
75386
|
var x=drag.Click.X-uielement.getBoundingClientRect().left;
|
|
74927
75387
|
var y=drag.Click.Y-uielement.getBoundingClientRect().top;
|
|
74928
75388
|
var x2=e.clientX-uielement.getBoundingClientRect().left;
|
|
@@ -89864,7 +90324,7 @@ function MinuteCoordinateData()
|
|
|
89864
90324
|
{
|
|
89865
90325
|
Full: //完整模式
|
|
89866
90326
|
[
|
|
89867
|
-
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型 [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色
|
|
90327
|
+
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型 [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
89868
90328
|
[31, 0, "RGB(200,200,200)", "10:00"],
|
|
89869
90329
|
[61, 0, "RGB(200,200,200)", "10:30"],
|
|
89870
90330
|
[91, 0, "RGB(200,200,200)", "11:00"],
|
|
@@ -128580,7 +129040,7 @@ function HQChartScriptWorker()
|
|
|
128580
129040
|
|
|
128581
129041
|
|
|
128582
129042
|
|
|
128583
|
-
var HQCHART_VERSION="1.1.
|
|
129043
|
+
var HQCHART_VERSION="1.1.12521";
|
|
128584
129044
|
|
|
128585
129045
|
function PrintHQChartVersion()
|
|
128586
129046
|
{
|