hqchart 1.1.14446 → 1.1.14452

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14446",
3
+ "version": "1.1.14452",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -491,6 +491,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
491
491
  if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
492
492
  if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
493
493
  if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
494
+
495
+ if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
494
496
 
495
497
  }
496
498
 
@@ -984,6 +986,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
984
986
  if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
985
987
  if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
986
988
  if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
989
+ if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
987
990
  }
988
991
 
989
992
  if (option.MinuteInfo) chart.CreateMinuteInfo(option.MinuteInfo);
@@ -2875,6 +2878,7 @@ var JSCHART_MENU_ID=
2875
2878
  CMD_CORSS_ON_CLOSE_LINE_ID:49, //十字光标在价格线上(分时图)
2876
2879
  CMD_CORSS_ON_VAILD_TIME_ID:50, //超出当前时间的,X轴调整到当前最后的时间(分时图)
2877
2880
  CMD_CORSS_ON_KLINE_ID:51, //十字光标只能画在K线上
2881
+ CMD_CORSS_POINT_ID:52, //十字光标圆点
2878
2882
 
2879
2883
 
2880
2884
 
@@ -10277,6 +10281,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10277
10281
  this.ChartCorssCursor.IsShowClose=srcParam;
10278
10282
  }
10279
10283
  break;
10284
+ case JSCHART_MENU_ID.CMD_CORSS_POINT_ID:
10285
+ if (IFrameSplitOperator.IsBool(srcParam) && this.ChartCorssCursor) this.ChartCorssCursor.CorssPointConfig.Enable=srcParam;
10286
+ break;
10280
10287
  }
10281
10288
  }
10282
10289
 
@@ -40818,9 +40825,10 @@ function ChartMultiBar()
40818
40825
  var groupItem=this.Bars[i];
40819
40826
  if (!groupItem || !IFrameSplitOperator.IsNonEmptyArray(groupItem.Point)) continue;
40820
40827
 
40821
- var clrConfig= { Color:groupItem.Color, Width:null, Name:groupItem.Name, Type:0 };
40828
+ var clrConfig= { Color:groupItem.Color, BGColor:null, Width:null, Name:groupItem.Name, Type:0 };
40822
40829
  if (IFrameSplitOperator.IsNumber(groupItem.Width)) clrConfig.Width=groupItem.Width;
40823
40830
  if (IFrameSplitOperator.IsNumber(groupItem.Type)) clrConfig.Type=groupItem.Type;
40831
+ if (groupItem.BorderColor) clrConfig.BorderColor=groupItem.BorderColor;
40824
40832
 
40825
40833
  for(var j=0; j<groupItem.Point.length; ++j)
40826
40834
  {
@@ -40941,8 +40949,9 @@ function ChartMultiBar()
40941
40949
 
40942
40950
  var config=null;
40943
40951
  var path=new Path2D();
40952
+ var pathBG=new Path2D();
40944
40953
  var count=0;
40945
- var drawType=-1; //1=直线 2=实心 3=空心
40954
+ var drawType=-1; //1=直线 2=实心 3=空心 4=边框+背景
40946
40955
  var barWidth=dataWidth; //默认K线宽度
40947
40956
  this.Canvas.beginPath();
40948
40957
  for(var i=0;i<aryBar.length;++i)
@@ -40957,6 +40966,7 @@ function ChartMultiBar()
40957
40966
  {
40958
40967
  if (config.Type==0) drawType=2; //实心
40959
40968
  else if (config.Type==1) drawType=3; //空心
40969
+ else if (config.Type==2) drawType=4; //边框+背景
40960
40970
  else continue;
40961
40971
  }
40962
40972
  else //太细了, 直线
@@ -41013,6 +41023,31 @@ function ChartMultiBar()
41013
41023
  path.addPath(barPath);
41014
41024
  ++count;
41015
41025
  }
41026
+ else if (drawType==4) //背景+边框
41027
+ {
41028
+ var x=item.X-(barWidth/2);
41029
+ var y=Math.min(item.Y,item.Y2);
41030
+ var barWidth=barWidth;
41031
+ var barHeight=Math.abs(item.Y-item.Y2);
41032
+
41033
+ var barPath = new Path2D();
41034
+ if (this.IsHScreen)
41035
+ barPath.rect(ToFixedRect(y),ToFixedRect(x),ToFixedRect(barHeight),ToFixedRect(barWidth))
41036
+ else
41037
+ barPath.rect(ToFixedRect(x),ToFixedRect(y),ToFixedRect(barWidth),ToFixedRect(barHeight))
41038
+
41039
+ pathBG.addPath(barPath);
41040
+
41041
+ var barPath = new Path2D();
41042
+ if (this.IsHScreen)
41043
+ barPath.rect(ToFixedPoint(y),ToFixedPoint(x),ToFixedPoint(barHeight),ToFixedPoint(barWidth))
41044
+ else
41045
+ barPath.rect(ToFixedPoint(x),ToFixedPoint(y),ToFixedPoint(barWidth),ToFixedPoint(barHeight))
41046
+
41047
+ path.addPath(barPath);
41048
+
41049
+ ++count;
41050
+ }
41016
41051
  }
41017
41052
 
41018
41053
 
@@ -41035,6 +41070,21 @@ function ChartMultiBar()
41035
41070
  this.Canvas.strokeStyle=config.Color;
41036
41071
  this.Canvas.stroke(path);
41037
41072
  }
41073
+ else if (drawType==4)
41074
+ {
41075
+ if (config.Color)
41076
+ {
41077
+ this.Canvas.fillStyle=config.Color; //背景填充颜色
41078
+ this.Canvas.fill(path);
41079
+ }
41080
+
41081
+ if (config.BorderColor)
41082
+ {
41083
+ this.Canvas.lineWidth=1*pixelRatio;
41084
+ this.Canvas.strokeStyle=config.BorderColor;
41085
+ this.Canvas.stroke(path);
41086
+ }
41087
+ }
41038
41088
  }
41039
41089
 
41040
41090
  }
@@ -53442,6 +53492,13 @@ function ChartCorssCursor()
53442
53492
  this.IsFixXLastTime=false; //是否修正X轴,超出当前时间的,X轴调整到当前最后的时间.
53443
53493
  this.IsDrawXRangeBG=false; //是否绘制十字光标背景
53444
53494
 
53495
+ this.CorssPointConfig=
53496
+ {
53497
+ Enable:false,
53498
+ Center:CloneData(g_JSChartResource.CorssCursor.CorssPoint.Center),
53499
+ Border:CloneData(g_JSChartResource.CorssCursor.CorssPoint.Border)
53500
+ }
53501
+
53445
53502
  this.EnableNewIndex=false; //分时图是否使用最新的索引结构 (由外部chart容器传入)
53446
53503
  this.CorssCursorIndex; //分时图新版本的索引结构 (由外部chart容器传入)
53447
53504
 
@@ -53490,6 +53547,10 @@ function ChartCorssCursor()
53490
53547
  this.BorderColor=g_JSChartResource.CorssCursorBorderColor; //边框颜色
53491
53548
  this.XRangeBGColor=g_JSChartResource.CorssCursorXRangeBGColor;
53492
53549
  this.LineDash=g_JSChartResource.CorssCursorLineDash.slice(); //虚线
53550
+
53551
+
53552
+ this.CorssPointConfig.Center=CloneData(g_JSChartResource.CorssCursor.CorssPoint.Center);
53553
+ this.CorssPointConfig.Border=CloneData(g_JSChartResource.CorssCursor.CorssPoint.Border);
53493
53554
  }
53494
53555
 
53495
53556
  this.GetCloseYPoint=function(index)
@@ -53814,7 +53875,10 @@ function ChartCorssCursor()
53814
53875
 
53815
53876
  this.Canvas.stroke();
53816
53877
  this.Canvas.restore();
53817
-
53878
+
53879
+ this.Canvas.save();
53880
+ this.DrawCorssPoint(x,y);
53881
+ this.Canvas.restore();
53818
53882
  }
53819
53883
 
53820
53884
  var xValue=this.Frame.GetXData(x);
@@ -54676,6 +54740,30 @@ function ChartCorssCursor()
54676
54740
  }
54677
54741
  }
54678
54742
 
54743
+
54744
+ this.DrawCorssPoint=function(x,y)
54745
+ {
54746
+ var config=this.CorssPointConfig;
54747
+ if (!config.Enable) return;
54748
+
54749
+ this.Canvas.beginPath();
54750
+ this.Canvas.arc(x,y,config.Center.Radius,0,360,false);
54751
+ this.Canvas.closePath();
54752
+
54753
+ if (config.Center && config.Center.Color)
54754
+ {
54755
+ this.Canvas.fillStyle=config.Center.Color;
54756
+ this.Canvas.fill();
54757
+ }
54758
+
54759
+ if (config.Border && config.Border.Color)
54760
+ {
54761
+ this.Canvas.strokeStyle=config.Border.Color;
54762
+ if (IFrameSplitOperator.IsNumber(config.Border.Width)) this.Canvas.lineWidth=config.Border.Width;
54763
+ this.Canvas.stroke();
54764
+ }
54765
+ }
54766
+
54679
54767
  }
54680
54768
 
54681
54769
 
@@ -71419,7 +71507,9 @@ function JSChartResource()
71419
71507
  RightMargin: { Left:2, Right:2, Top:5, Bottom:3 },
71420
71508
 
71421
71509
  BottomText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
71422
- LeftText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } }
71510
+ LeftText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
71511
+
71512
+ CorssPoint:{ Center:{ Radius:5*GetDevicePixelRatio(), Color:"rgb(50,171,205)"}, Border:{ Color:'rgb(255,255,255)', Width:1*GetDevicePixelRatio() } }
71423
71513
  };
71424
71514
 
71425
71515
  this.LockBGColor = "rgb(220, 220, 220)"; //指标锁区域颜色
@@ -72858,6 +72948,26 @@ function JSChartResource()
72858
72948
  if (item.PenColor) this.CorssCursor.RightButton.PenColor=item.PenColor;
72859
72949
  if (item.Icon) this.CorssCursor.RightButton.Icon=item.Icon;
72860
72950
  }
72951
+
72952
+ if (style.CorssCursor && style.CorssCursor.CorssPoint)
72953
+ {
72954
+ var item=style.CorssCursor.CorssPoint;
72955
+ if (item.Center)
72956
+ {
72957
+ var subItem=item.Center;
72958
+ var subDest=this.CorssCursor.CorssPoint.Center;
72959
+ if (IFrameSplitOperator.IsNumber(subItem.Radius)) subDest.Radius=subItem.Radius;
72960
+ if (subItem.Color) subDest.Color=subItem.Color;
72961
+ }
72962
+
72963
+ if (item.Border)
72964
+ {
72965
+ var subItem=item.Border;
72966
+ var subDest=this.CorssCursor.CorssPoint.Border;
72967
+ if (IFrameSplitOperator.IsNumber(subItem.Width)) subDest.Width=subItem.Width;
72968
+ if (subItem.Color) subDest.Color=subItem.Color;
72969
+ }
72970
+ }
72861
72971
 
72862
72972
  if (style.KLine) this.KLine = style.KLine;
72863
72973
  if (style.VirtualKLine)
@@ -80878,11 +80988,13 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
80878
80988
  var bShowCorss=false; //十字光标十字线
80879
80989
  var bCorssDrawKLine=false;
80880
80990
  var bCorssDrawVaildTime=false;
80991
+ var bCorssDrawPoint=false;
80881
80992
  if (this.ChartCorssCursor)
80882
80993
  {
80883
80994
  bShowCorss=this.ChartCorssCursor.IsShowCorss;
80884
80995
  bCorssDrawKLine=this.ChartCorssCursor.IsOnlyDrawKLine && this.ChartCorssCursor.IsShowClose;
80885
80996
  bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
80997
+ bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
80886
80998
  }
80887
80999
 
80888
81000
  var bPopMinuteChart=false;
@@ -81059,6 +81171,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
81059
81171
  { Name:"显示", Data:{ ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID, Args:[!bShowCorss]}, Checked:bShowCorss },
81060
81172
  { Name:"显示在K线上", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID, Args:[!bCorssDrawKLine]}, Checked:bCorssDrawKLine },
81061
81173
  { Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
81174
+ { Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
81062
81175
  ]
81063
81176
  },
81064
81177
  {
@@ -85038,11 +85151,13 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
85038
85151
  var bShowCorss=false; //十字光标十字线
85039
85152
  var bCorssDrawCloseLine=false; //十字光标只能画在走势图价格线上
85040
85153
  var bCorssDrawVaildTime=false;
85154
+ var bCorssDrawPoint=false;
85041
85155
  if (this.ChartCorssCursor)
85042
85156
  {
85043
85157
  bShowCorss=this.ChartCorssCursor.IsShowCorss;
85044
85158
  bCorssDrawCloseLine=this.ChartCorssCursor.IsOnlyDrawMinute;
85045
85159
  bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
85160
+ bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
85046
85161
  }
85047
85162
 
85048
85163
 
@@ -85127,6 +85242,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
85127
85242
  { Name:"显示", Data:{ ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID, Args:[!bShowCorss]}, Checked:bShowCorss },
85128
85243
  { Name:"画在价格线上", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID, Args:[!bCorssDrawCloseLine]}, Checked:bCorssDrawCloseLine },
85129
85244
  { Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
85245
+ { Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
85130
85246
  ]
85131
85247
  },
85132
85248
 
@@ -188,7 +188,9 @@ function GetBlackStyle()
188
188
  BGColor:'rgb(43,54,69)',
189
189
  PenColor:'rgb(255,255,255)',
190
190
  Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:18 }
191
- }
191
+ },
192
+
193
+ CorssPoint:{ Center:{ Color:"rgb(50,171,205)" }, Border:{ Color:'rgba(0,0,0,0.8)', Width:1*GetDevicePixelRatio() } }
192
194
  },
193
195
 
194
196
  //订单流配置
@@ -4416,6 +4416,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4416
4416
  if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
4417
4417
  if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
4418
4418
  if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
4419
+
4420
+ if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
4419
4421
 
4420
4422
  }
4421
4423
 
@@ -4909,6 +4911,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4909
4911
  if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
4910
4912
  if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
4911
4913
  if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
4914
+ if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
4912
4915
  }
4913
4916
 
4914
4917
  if (option.MinuteInfo) chart.CreateMinuteInfo(option.MinuteInfo);
@@ -6800,6 +6803,7 @@ var JSCHART_MENU_ID=
6800
6803
  CMD_CORSS_ON_CLOSE_LINE_ID:49, //十字光标在价格线上(分时图)
6801
6804
  CMD_CORSS_ON_VAILD_TIME_ID:50, //超出当前时间的,X轴调整到当前最后的时间(分时图)
6802
6805
  CMD_CORSS_ON_KLINE_ID:51, //十字光标只能画在K线上
6806
+ CMD_CORSS_POINT_ID:52, //十字光标圆点
6803
6807
 
6804
6808
 
6805
6809
 
@@ -14202,6 +14206,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
14202
14206
  this.ChartCorssCursor.IsShowClose=srcParam;
14203
14207
  }
14204
14208
  break;
14209
+ case JSCHART_MENU_ID.CMD_CORSS_POINT_ID:
14210
+ if (IFrameSplitOperator.IsBool(srcParam) && this.ChartCorssCursor) this.ChartCorssCursor.CorssPointConfig.Enable=srcParam;
14211
+ break;
14205
14212
  }
14206
14213
  }
14207
14214
 
@@ -44743,9 +44750,10 @@ function ChartMultiBar()
44743
44750
  var groupItem=this.Bars[i];
44744
44751
  if (!groupItem || !IFrameSplitOperator.IsNonEmptyArray(groupItem.Point)) continue;
44745
44752
 
44746
- var clrConfig= { Color:groupItem.Color, Width:null, Name:groupItem.Name, Type:0 };
44753
+ var clrConfig= { Color:groupItem.Color, BGColor:null, Width:null, Name:groupItem.Name, Type:0 };
44747
44754
  if (IFrameSplitOperator.IsNumber(groupItem.Width)) clrConfig.Width=groupItem.Width;
44748
44755
  if (IFrameSplitOperator.IsNumber(groupItem.Type)) clrConfig.Type=groupItem.Type;
44756
+ if (groupItem.BorderColor) clrConfig.BorderColor=groupItem.BorderColor;
44749
44757
 
44750
44758
  for(var j=0; j<groupItem.Point.length; ++j)
44751
44759
  {
@@ -44866,8 +44874,9 @@ function ChartMultiBar()
44866
44874
 
44867
44875
  var config=null;
44868
44876
  var path=new Path2D();
44877
+ var pathBG=new Path2D();
44869
44878
  var count=0;
44870
- var drawType=-1; //1=直线 2=实心 3=空心
44879
+ var drawType=-1; //1=直线 2=实心 3=空心 4=边框+背景
44871
44880
  var barWidth=dataWidth; //默认K线宽度
44872
44881
  this.Canvas.beginPath();
44873
44882
  for(var i=0;i<aryBar.length;++i)
@@ -44882,6 +44891,7 @@ function ChartMultiBar()
44882
44891
  {
44883
44892
  if (config.Type==0) drawType=2; //实心
44884
44893
  else if (config.Type==1) drawType=3; //空心
44894
+ else if (config.Type==2) drawType=4; //边框+背景
44885
44895
  else continue;
44886
44896
  }
44887
44897
  else //太细了, 直线
@@ -44938,6 +44948,31 @@ function ChartMultiBar()
44938
44948
  path.addPath(barPath);
44939
44949
  ++count;
44940
44950
  }
44951
+ else if (drawType==4) //背景+边框
44952
+ {
44953
+ var x=item.X-(barWidth/2);
44954
+ var y=Math.min(item.Y,item.Y2);
44955
+ var barWidth=barWidth;
44956
+ var barHeight=Math.abs(item.Y-item.Y2);
44957
+
44958
+ var barPath = new Path2D();
44959
+ if (this.IsHScreen)
44960
+ barPath.rect(ToFixedRect(y),ToFixedRect(x),ToFixedRect(barHeight),ToFixedRect(barWidth))
44961
+ else
44962
+ barPath.rect(ToFixedRect(x),ToFixedRect(y),ToFixedRect(barWidth),ToFixedRect(barHeight))
44963
+
44964
+ pathBG.addPath(barPath);
44965
+
44966
+ var barPath = new Path2D();
44967
+ if (this.IsHScreen)
44968
+ barPath.rect(ToFixedPoint(y),ToFixedPoint(x),ToFixedPoint(barHeight),ToFixedPoint(barWidth))
44969
+ else
44970
+ barPath.rect(ToFixedPoint(x),ToFixedPoint(y),ToFixedPoint(barWidth),ToFixedPoint(barHeight))
44971
+
44972
+ path.addPath(barPath);
44973
+
44974
+ ++count;
44975
+ }
44941
44976
  }
44942
44977
 
44943
44978
 
@@ -44960,6 +44995,21 @@ function ChartMultiBar()
44960
44995
  this.Canvas.strokeStyle=config.Color;
44961
44996
  this.Canvas.stroke(path);
44962
44997
  }
44998
+ else if (drawType==4)
44999
+ {
45000
+ if (config.Color)
45001
+ {
45002
+ this.Canvas.fillStyle=config.Color; //背景填充颜色
45003
+ this.Canvas.fill(path);
45004
+ }
45005
+
45006
+ if (config.BorderColor)
45007
+ {
45008
+ this.Canvas.lineWidth=1*pixelRatio;
45009
+ this.Canvas.strokeStyle=config.BorderColor;
45010
+ this.Canvas.stroke(path);
45011
+ }
45012
+ }
44963
45013
  }
44964
45014
 
44965
45015
  }
@@ -57367,6 +57417,13 @@ function ChartCorssCursor()
57367
57417
  this.IsFixXLastTime=false; //是否修正X轴,超出当前时间的,X轴调整到当前最后的时间.
57368
57418
  this.IsDrawXRangeBG=false; //是否绘制十字光标背景
57369
57419
 
57420
+ this.CorssPointConfig=
57421
+ {
57422
+ Enable:false,
57423
+ Center:CloneData(g_JSChartResource.CorssCursor.CorssPoint.Center),
57424
+ Border:CloneData(g_JSChartResource.CorssCursor.CorssPoint.Border)
57425
+ }
57426
+
57370
57427
  this.EnableNewIndex=false; //分时图是否使用最新的索引结构 (由外部chart容器传入)
57371
57428
  this.CorssCursorIndex; //分时图新版本的索引结构 (由外部chart容器传入)
57372
57429
 
@@ -57415,6 +57472,10 @@ function ChartCorssCursor()
57415
57472
  this.BorderColor=g_JSChartResource.CorssCursorBorderColor; //边框颜色
57416
57473
  this.XRangeBGColor=g_JSChartResource.CorssCursorXRangeBGColor;
57417
57474
  this.LineDash=g_JSChartResource.CorssCursorLineDash.slice(); //虚线
57475
+
57476
+
57477
+ this.CorssPointConfig.Center=CloneData(g_JSChartResource.CorssCursor.CorssPoint.Center);
57478
+ this.CorssPointConfig.Border=CloneData(g_JSChartResource.CorssCursor.CorssPoint.Border);
57418
57479
  }
57419
57480
 
57420
57481
  this.GetCloseYPoint=function(index)
@@ -57739,7 +57800,10 @@ function ChartCorssCursor()
57739
57800
 
57740
57801
  this.Canvas.stroke();
57741
57802
  this.Canvas.restore();
57742
-
57803
+
57804
+ this.Canvas.save();
57805
+ this.DrawCorssPoint(x,y);
57806
+ this.Canvas.restore();
57743
57807
  }
57744
57808
 
57745
57809
  var xValue=this.Frame.GetXData(x);
@@ -58601,6 +58665,30 @@ function ChartCorssCursor()
58601
58665
  }
58602
58666
  }
58603
58667
 
58668
+
58669
+ this.DrawCorssPoint=function(x,y)
58670
+ {
58671
+ var config=this.CorssPointConfig;
58672
+ if (!config.Enable) return;
58673
+
58674
+ this.Canvas.beginPath();
58675
+ this.Canvas.arc(x,y,config.Center.Radius,0,360,false);
58676
+ this.Canvas.closePath();
58677
+
58678
+ if (config.Center && config.Center.Color)
58679
+ {
58680
+ this.Canvas.fillStyle=config.Center.Color;
58681
+ this.Canvas.fill();
58682
+ }
58683
+
58684
+ if (config.Border && config.Border.Color)
58685
+ {
58686
+ this.Canvas.strokeStyle=config.Border.Color;
58687
+ if (IFrameSplitOperator.IsNumber(config.Border.Width)) this.Canvas.lineWidth=config.Border.Width;
58688
+ this.Canvas.stroke();
58689
+ }
58690
+ }
58691
+
58604
58692
  }
58605
58693
 
58606
58694
 
@@ -75344,7 +75432,9 @@ function JSChartResource()
75344
75432
  RightMargin: { Left:2, Right:2, Top:5, Bottom:3 },
75345
75433
 
75346
75434
  BottomText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
75347
- LeftText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } }
75435
+ LeftText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
75436
+
75437
+ CorssPoint:{ Center:{ Radius:5*GetDevicePixelRatio(), Color:"rgb(50,171,205)"}, Border:{ Color:'rgb(255,255,255)', Width:1*GetDevicePixelRatio() } }
75348
75438
  };
75349
75439
 
75350
75440
  this.LockBGColor = "rgb(220, 220, 220)"; //指标锁区域颜色
@@ -76783,6 +76873,26 @@ function JSChartResource()
76783
76873
  if (item.PenColor) this.CorssCursor.RightButton.PenColor=item.PenColor;
76784
76874
  if (item.Icon) this.CorssCursor.RightButton.Icon=item.Icon;
76785
76875
  }
76876
+
76877
+ if (style.CorssCursor && style.CorssCursor.CorssPoint)
76878
+ {
76879
+ var item=style.CorssCursor.CorssPoint;
76880
+ if (item.Center)
76881
+ {
76882
+ var subItem=item.Center;
76883
+ var subDest=this.CorssCursor.CorssPoint.Center;
76884
+ if (IFrameSplitOperator.IsNumber(subItem.Radius)) subDest.Radius=subItem.Radius;
76885
+ if (subItem.Color) subDest.Color=subItem.Color;
76886
+ }
76887
+
76888
+ if (item.Border)
76889
+ {
76890
+ var subItem=item.Border;
76891
+ var subDest=this.CorssCursor.CorssPoint.Border;
76892
+ if (IFrameSplitOperator.IsNumber(subItem.Width)) subDest.Width=subItem.Width;
76893
+ if (subItem.Color) subDest.Color=subItem.Color;
76894
+ }
76895
+ }
76786
76896
 
76787
76897
  if (style.KLine) this.KLine = style.KLine;
76788
76898
  if (style.VirtualKLine)
@@ -84803,11 +84913,13 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84803
84913
  var bShowCorss=false; //十字光标十字线
84804
84914
  var bCorssDrawKLine=false;
84805
84915
  var bCorssDrawVaildTime=false;
84916
+ var bCorssDrawPoint=false;
84806
84917
  if (this.ChartCorssCursor)
84807
84918
  {
84808
84919
  bShowCorss=this.ChartCorssCursor.IsShowCorss;
84809
84920
  bCorssDrawKLine=this.ChartCorssCursor.IsOnlyDrawKLine && this.ChartCorssCursor.IsShowClose;
84810
84921
  bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
84922
+ bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
84811
84923
  }
84812
84924
 
84813
84925
  var bPopMinuteChart=false;
@@ -84984,6 +85096,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84984
85096
  { Name:"显示", Data:{ ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID, Args:[!bShowCorss]}, Checked:bShowCorss },
84985
85097
  { Name:"显示在K线上", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID, Args:[!bCorssDrawKLine]}, Checked:bCorssDrawKLine },
84986
85098
  { Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
85099
+ { Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
84987
85100
  ]
84988
85101
  },
84989
85102
  {
@@ -88963,11 +89076,13 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
88963
89076
  var bShowCorss=false; //十字光标十字线
88964
89077
  var bCorssDrawCloseLine=false; //十字光标只能画在走势图价格线上
88965
89078
  var bCorssDrawVaildTime=false;
89079
+ var bCorssDrawPoint=false;
88966
89080
  if (this.ChartCorssCursor)
88967
89081
  {
88968
89082
  bShowCorss=this.ChartCorssCursor.IsShowCorss;
88969
89083
  bCorssDrawCloseLine=this.ChartCorssCursor.IsOnlyDrawMinute;
88970
89084
  bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
89085
+ bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
88971
89086
  }
88972
89087
 
88973
89088
 
@@ -89052,6 +89167,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
89052
89167
  { Name:"显示", Data:{ ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID, Args:[!bShowCorss]}, Checked:bShowCorss },
89053
89168
  { Name:"画在价格线上", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID, Args:[!bCorssDrawCloseLine]}, Checked:bCorssDrawCloseLine },
89054
89169
  { Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
89170
+ { Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
89055
89171
  ]
89056
89172
  },
89057
89173
 
@@ -128488,7 +128604,9 @@ function GetBlackStyle()
128488
128604
  BGColor:'rgb(43,54,69)',
128489
128605
  PenColor:'rgb(255,255,255)',
128490
128606
  Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:18 }
128491
- }
128607
+ },
128608
+
128609
+ CorssPoint:{ Center:{ Color:"rgb(50,171,205)" }, Border:{ Color:'rgba(0,0,0,0.8)', Width:1*GetDevicePixelRatio() } }
128492
128610
  },
128493
128611
 
128494
128612
  //订单流配置
@@ -143451,7 +143569,7 @@ function ScrollBarBGChart()
143451
143569
 
143452
143570
 
143453
143571
 
143454
- var HQCHART_VERSION="1.1.14445";
143572
+ var HQCHART_VERSION="1.1.14451";
143455
143573
 
143456
143574
  function PrintHQChartVersion()
143457
143575
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14445";
8
+ var HQCHART_VERSION="1.1.14451";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {