hqchart 1.1.15076 → 1.1.15084

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.15076",
3
+ "version": "1.1.15084",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -20679,7 +20679,7 @@ function ScriptIndex(name,script,args,option)
20679
20679
  }
20680
20680
  else //上锁
20681
20681
  {
20682
- let lockData={ IsLocked:true,Callback:param.Self.LockCallback,IndexName:param.Self.Name ,ID:param.Self.LockID,
20682
+ let lockData={ IsLocked:true,Callback:param.Self.LockCallback,IndexName:param.Self.Name,IndexID:param.Self.ID, ID:param.Self.LockID,
20683
20683
  BG:param.Self.LockBG,Text:param.Self.LockText,TextColor:param.Self.LockTextColor, Font:param.Self.LockFont, Count:param.Self.LockCount, MinWidth:param.Self.LockMinWidth };
20684
20684
  param.HQChart.Frame.SubFrame[windowIndex].Frame.SetLock(lockData);
20685
20685
  }
@@ -772,6 +772,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
772
772
  if (IFrameSplitOperator.IsBool(item.MaxMin)) chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;
773
773
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;
774
774
  if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
775
+ if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
775
776
 
776
777
  if (item.IsDrawTitleBG==true) chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
777
778
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -1327,6 +1328,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1327
1328
  if (IFrameSplitOperator.IsBool(item.MaxMin)) frame.MaxMinWindow=item.MaxMin;
1328
1329
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
1329
1330
  if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
1331
+ if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
1330
1332
 
1331
1333
  if (IFrameSplitOperator.IsNumber(item.YSplitType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;
1332
1334
  if (IFrameSplitOperator.IsNumber(item.FilterType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.FilterType=item.FilterType;
@@ -2980,6 +2982,7 @@ var JSCHART_BUTTON_ID=
2980
2982
  ADD_INDEX_WINDOW:44, //增加指标窗口
2981
2983
 
2982
2984
  CHIP_CLOSE:45, //关闭筹码图
2985
+ INDEX_HELP:46, //指标帮助
2983
2986
  }
2984
2987
 
2985
2988
  var JSCHART_DATA_FIELD_ID=
@@ -10317,6 +10320,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10317
10320
  if (IFrameSplitOperator.IsBool(windowItem.Close)) frame.CloseIndex=windowItem.Close;
10318
10321
  if (IFrameSplitOperator.IsBool(windowItem.Overlay)) frame.OverlayIndex=windowItem.Overlay;
10319
10322
  if (IFrameSplitOperator.IsBool(windowItem.AddIndexWindow)) frame.AddIndexWindow=windowItem.AddIndexWindow;
10323
+ if (IFrameSplitOperator.IsBool(windowItem.IndexHelp)) frame.IndexHelp=windowItem.IndexHelp;
10320
10324
 
10321
10325
  if (IFrameSplitOperator.IsBool(windowItem.IsDrawTitleBG)) frame.IsDrawTitleBG=windowItem.IsDrawTitleBG;
10322
10326
 
@@ -10380,6 +10384,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10380
10384
  if (IFrameSplitOperator.IsBool(item.MaxMin)) frame.MaxMinWindow=item.MaxMin;
10381
10385
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
10382
10386
  if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
10387
+ if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
10383
10388
 
10384
10389
  if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) frame.IsDrawTitleBG=item.IsDrawTitleBG;
10385
10390
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -13448,6 +13453,7 @@ function IChartFramePainting()
13448
13453
 
13449
13454
  if (lockData.Callback) this.LockPaint.Callback=lockData.Callback; //回调
13450
13455
  if (lockData.IndexName) this.LockPaint.IndexName=lockData.IndexName; //指标名字
13456
+ if (lockData.IndexID) this.LockPaint.IndexID=lockData.IndexID; //指标ID
13451
13457
  if (lockData.ID) this.LockPaint.LockID=lockData.ID; //锁ID
13452
13458
  if (lockData.BG) this.LockPaint.BGColor=lockData.BG; //背景色
13453
13459
  if (lockData.Text) this.LockPaint.Title= lockData.Text;
@@ -13590,6 +13596,7 @@ function AverageWidthFrame()
13590
13596
  this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);
13591
13597
  this.ExportDataButton=CloneData(g_JSChartResource.Buttons.ExportData);
13592
13598
  this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);
13599
+ this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);
13593
13600
 
13594
13601
  this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);
13595
13602
 
@@ -13628,6 +13635,7 @@ function AverageWidthFrame()
13628
13635
  this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);
13629
13636
  this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);
13630
13637
  this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);
13638
+ this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);
13631
13639
  }
13632
13640
 
13633
13641
  if (this.DivFrameToolbar) this.DivFrameToolbar.ReloadResource(resource);
@@ -16283,6 +16291,7 @@ function MinuteFrame()
16283
16291
  this.ExportData=g_JSChartResource.MinuteToolbar.ExportData; //是否显示'导出数据'菜单
16284
16292
  this.OverlayIndex=g_JSChartResource.MinuteToolbar.OverlayIndex; //是否显示叠加指标
16285
16293
  this.AddIndexWindow=g_JSChartResource.MinuteToolbar.AddIndexWindow; //是否显示'增加指标窗口'菜单
16294
+ this.IndexHelp=g_JSChartResource.MinuteToolbar.IndexHelp;
16286
16295
 
16287
16296
  this.IsShowPositionTitle=false; //是否显示持仓标题
16288
16297
 
@@ -16439,6 +16448,7 @@ function MinuteFrame()
16439
16448
  if (this.ChangeIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.CHANGE_INDEX, Style:this.ChangeIndexButton });
16440
16449
  if (this.ModifyIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM, Style:this.ModifyIndexParamButton });
16441
16450
  if (this.AddIndexWindow) aryButton.push({ ID:JSCHART_BUTTON_ID.ADD_INDEX_WINDOW, Style:this.AddIndexWindowButton} );
16451
+ if (this.IndexHelp) aryButton.push({ ID:JSCHART_BUTTON_ID.INDEX_HELP, Style:this.IndexHelpButton} );
16442
16452
  }
16443
16453
 
16444
16454
  if (IFrameSplitOperator.IsNonEmptyArray(this.CustomToolbar))
@@ -18607,6 +18617,7 @@ function KLineFrame()
18607
18617
  this.TitleWindow=g_JSChartResource.KLineToolbar.TitleWindow;
18608
18618
  this.ExportData=g_JSChartResource.KLineToolbar.ExportData; //是否显示'导出数据'菜单
18609
18619
  this.AddIndexWindow=g_JSChartResource.KLineToolbar.AddIndexWindow; //是否显示'增加指标窗口'菜单
18620
+ this.IndexHelp=g_JSChartResource.KLineToolbar.IndexHelp;
18610
18621
 
18611
18622
  this.SelBorderColor=g_JSChartResource.SelFrameBorderColor;
18612
18623
 
@@ -18806,6 +18817,7 @@ function KLineFrame()
18806
18817
  if (this.ChangeIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.CHANGE_INDEX, Style:this.ChangeIndexButton });
18807
18818
  if (this.ModifyIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM, Style:this.ModifyIndexParamButton });
18808
18819
  if (this.AddIndexWindow) aryButton.push({ ID:JSCHART_BUTTON_ID.ADD_INDEX_WINDOW, Style:this.AddIndexWindowButton} );
18820
+ if (this.IndexHelp) aryButton.push({ ID:JSCHART_BUTTON_ID.INDEX_HELP, Style:this.IndexHelpButton} );
18809
18821
 
18810
18822
  if (IFrameSplitOperator.IsNonEmptyArray(this.CustomToolbar))
18811
18823
  {
@@ -47718,6 +47730,7 @@ function ChartLock()
47718
47730
  this.LockID; //锁ID
47719
47731
  this.Callback; //回调
47720
47732
  this.IndexName; //指标名字
47733
+ this.IndexID; //指标ID
47721
47734
  this.MinWidth=null; //最小宽度
47722
47735
 
47723
47736
  this.Draw=function(isDraw)
@@ -47736,6 +47749,7 @@ function ChartLock()
47736
47749
  }
47737
47750
 
47738
47751
  var xOffset = this.ChartBorder.GetRight();
47752
+ var border=this.ChartBorder.GetBorder();
47739
47753
  var lOffsetWidth = 0;
47740
47754
  if (this.ChartFrame.Data != null)
47741
47755
  {
@@ -47762,7 +47776,6 @@ function ChartLock()
47762
47776
  var lLeft = xOffset - lOffsetWidth;
47763
47777
  if (lLeft < this.ChartBorder.GetLeft())
47764
47778
  lLeft = this.ChartBorder.GetLeft();
47765
- var lHeight = this.ChartBorder.GetBottom() - this.ChartBorder.GetTop();
47766
47779
  var lWidth = this.ChartBorder.GetRight() - lLeft;
47767
47780
 
47768
47781
  if (this.MinWidth>10 && lWidth<this.MinWidth)
@@ -47772,19 +47785,19 @@ function ChartLock()
47772
47785
  if (lLeft < this.ChartBorder.GetLeft()) lLeft = this.ChartBorder.GetLeft();
47773
47786
  }
47774
47787
 
47788
+ var rtBG={ Left:lLeft, Top:border.TopTitle, Bottom:border.Bottom, Width:lWidth };
47789
+ rtBG.Right=rtBG.Width+rtBG.Left;
47790
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
47791
+
47775
47792
  if (isDraw)
47776
47793
  {
47777
- var rtBG={ Left:lLeft, Top:this.ChartBorder.GetTop(), Width:lWidth, Height:lHeight };
47778
- rtBG.Right=rtBG.Width+rtBG.Left;
47779
- rtBG.Bottom=rtBG.Height+rtBG.Top;
47780
-
47781
47794
  //上下渐变
47782
47795
  var bgColor=this.SetFillStyle(this.BGColor, rtBG.Left, rtBG.Top, rtBG.Left, rtBG.Bottom);
47783
47796
  this.Canvas.fillStyle =bgColor;
47784
47797
  this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
47785
47798
 
47786
47799
  var xCenter = rtBG.Left + rtBG.Width / 2;
47787
- var yCenter = rtBG.Top + lHeight / 2;
47800
+ var yCenter = rtBG.Top + rtBG.Height / 2;
47788
47801
  this.Canvas.textAlign = 'center';
47789
47802
  this.Canvas.textBaseline = 'middle';
47790
47803
  this.Canvas.fillStyle = this.TextColor;
@@ -47792,7 +47805,7 @@ function ChartLock()
47792
47805
  this.Canvas.fillText(this.Title, xCenter, yCenter);
47793
47806
  }
47794
47807
 
47795
- this.LockRect={Left:lLeft,Top:this.ChartBorder.GetTop(),Width:lWidth,Heigh:lHeight}; //保存上锁区域
47808
+ this.LockRect=rtBG; //保存上锁区域
47796
47809
  }
47797
47810
 
47798
47811
  this.HScreenDraw=function(isDraw)
@@ -47853,10 +47866,10 @@ function ChartLock()
47853
47866
  if (this.LockRect==null) return false;
47854
47867
 
47855
47868
  this.Canvas.beginPath();
47856
- this.Canvas.rect(this.LockRect.Left,this.LockRect.Top,this.LockRect.Width,this.LockRect.Heigh);
47869
+ this.Canvas.rect(this.LockRect.Left,this.LockRect.Top,this.LockRect.Width,this.LockRect.Height);
47857
47870
  if (this.Canvas.isPointInPath(x,y))
47858
47871
  {
47859
- tooltip.Data={ ID:this.LockID, Callback:this.Callback, IndexName:this.IndexName };
47872
+ tooltip.Data={ ID:this.LockID, Callback:this.Callback, IndexName:this.IndexName, IndexID:this.IndexID };
47860
47873
  tooltip.ChartPaint=this;
47861
47874
  return true;
47862
47875
  }
@@ -61759,7 +61772,7 @@ function DynamicMinuteTitlePainting()
61759
61772
  if (this.TimeFormat) //指定时间格式
61760
61773
  {
61761
61774
  var strDate=null, strTime=null, text=null;
61762
- if (this.IsShowDate) strDate=IFrameSplitOperator.FormatDateString("YYYY-MM-DD", item.Date);
61775
+ if (this.IsShowDate) strDate=IFrameSplitOperator.FormatDateString(item.Date, "YYYY-MM-DD");
61763
61776
  if (this.IsShowTime) strTime=IFrameSplitOperator.FormatTimeString(item.Time,this.TimeFormat);
61764
61777
  if (strDate && strTime) text=`${strDate} ${strTime}`;
61765
61778
  else if (strDate) text=strDate;
@@ -76783,6 +76796,7 @@ function JSChartResource()
76783
76796
  TitleWindow:true, //标题模式
76784
76797
  ExportData:false, //数据导出
76785
76798
  AddIndexWindow:false, //增加指标窗口
76799
+ IndexHelp:false, //指标帮助
76786
76800
 
76787
76801
  IsShowOverlayToolbar:true, //是否显示叠加坐标工具栏按钮
76788
76802
  IsShowOverlayFrame:true, //是否显示右侧叠加坐标
@@ -76799,6 +76813,7 @@ function JSChartResource()
76799
76813
  TitleWindow:true, //标题模式
76800
76814
  ExportData:false, //数据导出
76801
76815
  AddIndexWindow:false, //增加指标窗口
76816
+ IndexHelp:false, //指标帮助
76802
76817
  }
76803
76818
 
76804
76819
  this.TooltipBGColor="rgb(255, 255, 255)"; //背景色
@@ -77403,6 +77418,16 @@ function JSChartResource()
77403
77418
  MerginLeft:4
77404
77419
  },
77405
77420
 
77421
+ IndexHelp:
77422
+ {
77423
+ Color:"rgb(0,0,0)",
77424
+ MoveOnColor:'rgb(30,144,255)',
77425
+ Family:"iconfont",
77426
+ Text:"\ue6ca",
77427
+ Size:13*GetDevicePixelRatio(),
77428
+ MerginLeft:4
77429
+ },
77430
+
77406
77431
  Tooltip:
77407
77432
  {
77408
77433
  Font:13*GetDevicePixelRatio() +"px 微软雅黑",
@@ -79305,6 +79330,8 @@ function JSChartResource()
79305
79330
  T_SetButtonStyle(buttons.TitleWindow, this.Buttons.TitleWindow);
79306
79331
  T_SetButtonStyle(buttons.ExportData, this.Buttons.ExportData);
79307
79332
  T_SetButtonStyle(buttons.AddIndexWindow, this.Buttons.AddIndexWindow);
79333
+ T_SetButtonStyle(buttons.IndexHelp, this.Buttons.IndexHelp);
79334
+
79308
79335
 
79309
79336
  if (buttons.Tooltip)
79310
79337
  {
@@ -80104,6 +80131,7 @@ function JSChartResource()
80104
80131
  if (IFrameSplitOperator.IsBool(style.TitleWindow)) dest.ModifyIndex=style.TitleWindow;
80105
80132
  if (IFrameSplitOperator.IsBool(style.ExportData)) dest.ModifyIndex=style.ExportData;
80106
80133
  if (IFrameSplitOperator.IsBool(style.AddIndexWindow)) dest.AddIndexWindow=style.AddIndexWindow;
80134
+ if (IFrameSplitOperator.IsBool(style.IndexHelp)) dest.IndexHelp=style.IndexHelp;
80107
80135
 
80108
80136
  if (IFrameSplitOperator.IsBool(style.IsShowOverlayToolbar)) dest.IsShowOverlayToolbar=style.IsShowOverlayToolbar;
80109
80137
  if (IFrameSplitOperator.IsBool(style.IsShowOverlayFrame)) dest.IsShowOverlayFrame=style.IsShowOverlayFrame;
@@ -80121,6 +80149,7 @@ function JSChartResource()
80121
80149
  if (IFrameSplitOperator.IsBool(style.TitleWindow)) dest.ModifyIndex=style.TitleWindow;
80122
80150
  if (IFrameSplitOperator.IsBool(style.ExportData)) dest.ModifyIndex=style.ExportData;
80123
80151
  if (IFrameSplitOperator.IsBool(style.AddIndexWindow)) dest.AddIndexWindow=style.AddIndexWindow;
80152
+ if (IFrameSplitOperator.IsBool(style.IndexHelp)) dest.IndexHelp=style.IndexHelp;
80124
80153
  }
80125
80154
 
80126
80155
 
@@ -80456,6 +80485,7 @@ function JSChartLocalization()
80456
80485
  ["Toolbar-"+JSCHART_BUTTON_ID.TITLE_WINDOW, {CN:"折叠窗口", EN:"Collapse window", TC:"折叠窗口"}],
80457
80486
  ["Toolbar-"+JSCHART_BUTTON_ID.EXPORT_DATA, {CN:"数据导出", EN:"Export data", TC:"数据导出"}],
80458
80487
  ["Toolbar-"+JSCHART_BUTTON_ID.ADD_INDEX_WINDOW, {CN:"增加指标窗口", EN:"Add index window", TC:"增加指标窗口"}],
80488
+ ["Toolbar-"+JSCHART_BUTTON_ID.INDEX_HELP, {CN:"指标帮助", EN:"Help", TC:"指标帮助"}],
80459
80489
 
80460
80490
  ["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID, {CN:"关闭集合竞价", EN:"Close call auction", TC:"关闭集合竞价"}],
80461
80491
  ["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_OVERLAY_INDEX, {CN:"关闭叠加指标", EN:"Delte overlay indicator", TC:"关闭叠加指标"}],
@@ -1,8 +1,8 @@
1
1
  @font-face {
2
2
  font-family: "iconfont"; /* Project id 1040563 */
3
- src: url('iconfont.woff2?t=1747303594987') format('woff2'),
4
- url('iconfont.woff?t=1747303594987') format('woff'),
5
- url('iconfont.ttf?t=1747303594987') format('truetype');
3
+ src: url('iconfont.woff2?t=1755154065744') format('woff2'),
4
+ url('iconfont.woff?t=1755154065744') format('woff'),
5
+ url('iconfont.ttf?t=1755154065744') format('truetype');
6
6
  }
7
7
 
8
8
  .iconfont {
@@ -13,6 +13,10 @@
13
13
  -moz-osx-font-smoothing: grayscale;
14
14
  }
15
15
 
16
+ .icon-help:before {
17
+ content: "\e6ca";
18
+ }
19
+
16
20
  .icon-tubiaoBchuang:before {
17
21
  content: "\e6c9";
18
22
  }
@@ -401,6 +401,12 @@ function GetBlackStyle()
401
401
  Color:"rgb(156,156,156)"
402
402
  },
403
403
 
404
+ IndexHelp:
405
+ {
406
+ MoveOnColor:"rgb(255,255,255)",
407
+ Color:"rgb(156,156,156)"
408
+ },
409
+
404
410
  Tooltip:
405
411
  {
406
412
  //Font:12*GetDevicePixelRatio() +"px 微软雅黑",
@@ -4868,6 +4868,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4868
4868
  if (IFrameSplitOperator.IsBool(item.MaxMin)) chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;
4869
4869
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;
4870
4870
  if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
4871
+ if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
4871
4872
 
4872
4873
  if (item.IsDrawTitleBG==true) chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
4873
4874
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -5423,6 +5424,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5423
5424
  if (IFrameSplitOperator.IsBool(item.MaxMin)) frame.MaxMinWindow=item.MaxMin;
5424
5425
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
5425
5426
  if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
5427
+ if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
5426
5428
 
5427
5429
  if (IFrameSplitOperator.IsNumber(item.YSplitType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;
5428
5430
  if (IFrameSplitOperator.IsNumber(item.FilterType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.FilterType=item.FilterType;
@@ -7076,6 +7078,7 @@ var JSCHART_BUTTON_ID=
7076
7078
  ADD_INDEX_WINDOW:44, //增加指标窗口
7077
7079
 
7078
7080
  CHIP_CLOSE:45, //关闭筹码图
7081
+ INDEX_HELP:46, //指标帮助
7079
7082
  }
7080
7083
 
7081
7084
  var JSCHART_DATA_FIELD_ID=
@@ -14413,6 +14416,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
14413
14416
  if (IFrameSplitOperator.IsBool(windowItem.Close)) frame.CloseIndex=windowItem.Close;
14414
14417
  if (IFrameSplitOperator.IsBool(windowItem.Overlay)) frame.OverlayIndex=windowItem.Overlay;
14415
14418
  if (IFrameSplitOperator.IsBool(windowItem.AddIndexWindow)) frame.AddIndexWindow=windowItem.AddIndexWindow;
14419
+ if (IFrameSplitOperator.IsBool(windowItem.IndexHelp)) frame.IndexHelp=windowItem.IndexHelp;
14416
14420
 
14417
14421
  if (IFrameSplitOperator.IsBool(windowItem.IsDrawTitleBG)) frame.IsDrawTitleBG=windowItem.IsDrawTitleBG;
14418
14422
 
@@ -14476,6 +14480,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
14476
14480
  if (IFrameSplitOperator.IsBool(item.MaxMin)) frame.MaxMinWindow=item.MaxMin;
14477
14481
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
14478
14482
  if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
14483
+ if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
14479
14484
 
14480
14485
  if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) frame.IsDrawTitleBG=item.IsDrawTitleBG;
14481
14486
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -17544,6 +17549,7 @@ function IChartFramePainting()
17544
17549
 
17545
17550
  if (lockData.Callback) this.LockPaint.Callback=lockData.Callback; //回调
17546
17551
  if (lockData.IndexName) this.LockPaint.IndexName=lockData.IndexName; //指标名字
17552
+ if (lockData.IndexID) this.LockPaint.IndexID=lockData.IndexID; //指标ID
17547
17553
  if (lockData.ID) this.LockPaint.LockID=lockData.ID; //锁ID
17548
17554
  if (lockData.BG) this.LockPaint.BGColor=lockData.BG; //背景色
17549
17555
  if (lockData.Text) this.LockPaint.Title= lockData.Text;
@@ -17686,6 +17692,7 @@ function AverageWidthFrame()
17686
17692
  this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);
17687
17693
  this.ExportDataButton=CloneData(g_JSChartResource.Buttons.ExportData);
17688
17694
  this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);
17695
+ this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);
17689
17696
 
17690
17697
  this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);
17691
17698
 
@@ -17724,6 +17731,7 @@ function AverageWidthFrame()
17724
17731
  this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);
17725
17732
  this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);
17726
17733
  this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);
17734
+ this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);
17727
17735
  }
17728
17736
 
17729
17737
  if (this.DivFrameToolbar) this.DivFrameToolbar.ReloadResource(resource);
@@ -20379,6 +20387,7 @@ function MinuteFrame()
20379
20387
  this.ExportData=g_JSChartResource.MinuteToolbar.ExportData; //是否显示'导出数据'菜单
20380
20388
  this.OverlayIndex=g_JSChartResource.MinuteToolbar.OverlayIndex; //是否显示叠加指标
20381
20389
  this.AddIndexWindow=g_JSChartResource.MinuteToolbar.AddIndexWindow; //是否显示'增加指标窗口'菜单
20390
+ this.IndexHelp=g_JSChartResource.MinuteToolbar.IndexHelp;
20382
20391
 
20383
20392
  this.IsShowPositionTitle=false; //是否显示持仓标题
20384
20393
 
@@ -20535,6 +20544,7 @@ function MinuteFrame()
20535
20544
  if (this.ChangeIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.CHANGE_INDEX, Style:this.ChangeIndexButton });
20536
20545
  if (this.ModifyIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM, Style:this.ModifyIndexParamButton });
20537
20546
  if (this.AddIndexWindow) aryButton.push({ ID:JSCHART_BUTTON_ID.ADD_INDEX_WINDOW, Style:this.AddIndexWindowButton} );
20547
+ if (this.IndexHelp) aryButton.push({ ID:JSCHART_BUTTON_ID.INDEX_HELP, Style:this.IndexHelpButton} );
20538
20548
  }
20539
20549
 
20540
20550
  if (IFrameSplitOperator.IsNonEmptyArray(this.CustomToolbar))
@@ -22703,6 +22713,7 @@ function KLineFrame()
22703
22713
  this.TitleWindow=g_JSChartResource.KLineToolbar.TitleWindow;
22704
22714
  this.ExportData=g_JSChartResource.KLineToolbar.ExportData; //是否显示'导出数据'菜单
22705
22715
  this.AddIndexWindow=g_JSChartResource.KLineToolbar.AddIndexWindow; //是否显示'增加指标窗口'菜单
22716
+ this.IndexHelp=g_JSChartResource.KLineToolbar.IndexHelp;
22706
22717
 
22707
22718
  this.SelBorderColor=g_JSChartResource.SelFrameBorderColor;
22708
22719
 
@@ -22902,6 +22913,7 @@ function KLineFrame()
22902
22913
  if (this.ChangeIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.CHANGE_INDEX, Style:this.ChangeIndexButton });
22903
22914
  if (this.ModifyIndex) aryButton.push( { ID:JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM, Style:this.ModifyIndexParamButton });
22904
22915
  if (this.AddIndexWindow) aryButton.push({ ID:JSCHART_BUTTON_ID.ADD_INDEX_WINDOW, Style:this.AddIndexWindowButton} );
22916
+ if (this.IndexHelp) aryButton.push({ ID:JSCHART_BUTTON_ID.INDEX_HELP, Style:this.IndexHelpButton} );
22905
22917
 
22906
22918
  if (IFrameSplitOperator.IsNonEmptyArray(this.CustomToolbar))
22907
22919
  {
@@ -51814,6 +51826,7 @@ function ChartLock()
51814
51826
  this.LockID; //锁ID
51815
51827
  this.Callback; //回调
51816
51828
  this.IndexName; //指标名字
51829
+ this.IndexID; //指标ID
51817
51830
  this.MinWidth=null; //最小宽度
51818
51831
 
51819
51832
  this.Draw=function(isDraw)
@@ -51832,6 +51845,7 @@ function ChartLock()
51832
51845
  }
51833
51846
 
51834
51847
  var xOffset = this.ChartBorder.GetRight();
51848
+ var border=this.ChartBorder.GetBorder();
51835
51849
  var lOffsetWidth = 0;
51836
51850
  if (this.ChartFrame.Data != null)
51837
51851
  {
@@ -51858,7 +51872,6 @@ function ChartLock()
51858
51872
  var lLeft = xOffset - lOffsetWidth;
51859
51873
  if (lLeft < this.ChartBorder.GetLeft())
51860
51874
  lLeft = this.ChartBorder.GetLeft();
51861
- var lHeight = this.ChartBorder.GetBottom() - this.ChartBorder.GetTop();
51862
51875
  var lWidth = this.ChartBorder.GetRight() - lLeft;
51863
51876
 
51864
51877
  if (this.MinWidth>10 && lWidth<this.MinWidth)
@@ -51868,19 +51881,19 @@ function ChartLock()
51868
51881
  if (lLeft < this.ChartBorder.GetLeft()) lLeft = this.ChartBorder.GetLeft();
51869
51882
  }
51870
51883
 
51884
+ var rtBG={ Left:lLeft, Top:border.TopTitle, Bottom:border.Bottom, Width:lWidth };
51885
+ rtBG.Right=rtBG.Width+rtBG.Left;
51886
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
51887
+
51871
51888
  if (isDraw)
51872
51889
  {
51873
- var rtBG={ Left:lLeft, Top:this.ChartBorder.GetTop(), Width:lWidth, Height:lHeight };
51874
- rtBG.Right=rtBG.Width+rtBG.Left;
51875
- rtBG.Bottom=rtBG.Height+rtBG.Top;
51876
-
51877
51890
  //上下渐变
51878
51891
  var bgColor=this.SetFillStyle(this.BGColor, rtBG.Left, rtBG.Top, rtBG.Left, rtBG.Bottom);
51879
51892
  this.Canvas.fillStyle =bgColor;
51880
51893
  this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
51881
51894
 
51882
51895
  var xCenter = rtBG.Left + rtBG.Width / 2;
51883
- var yCenter = rtBG.Top + lHeight / 2;
51896
+ var yCenter = rtBG.Top + rtBG.Height / 2;
51884
51897
  this.Canvas.textAlign = 'center';
51885
51898
  this.Canvas.textBaseline = 'middle';
51886
51899
  this.Canvas.fillStyle = this.TextColor;
@@ -51888,7 +51901,7 @@ function ChartLock()
51888
51901
  this.Canvas.fillText(this.Title, xCenter, yCenter);
51889
51902
  }
51890
51903
 
51891
- this.LockRect={Left:lLeft,Top:this.ChartBorder.GetTop(),Width:lWidth,Heigh:lHeight}; //保存上锁区域
51904
+ this.LockRect=rtBG; //保存上锁区域
51892
51905
  }
51893
51906
 
51894
51907
  this.HScreenDraw=function(isDraw)
@@ -51949,10 +51962,10 @@ function ChartLock()
51949
51962
  if (this.LockRect==null) return false;
51950
51963
 
51951
51964
  this.Canvas.beginPath();
51952
- this.Canvas.rect(this.LockRect.Left,this.LockRect.Top,this.LockRect.Width,this.LockRect.Heigh);
51965
+ this.Canvas.rect(this.LockRect.Left,this.LockRect.Top,this.LockRect.Width,this.LockRect.Height);
51953
51966
  if (this.Canvas.isPointInPath(x,y))
51954
51967
  {
51955
- tooltip.Data={ ID:this.LockID, Callback:this.Callback, IndexName:this.IndexName };
51968
+ tooltip.Data={ ID:this.LockID, Callback:this.Callback, IndexName:this.IndexName, IndexID:this.IndexID };
51956
51969
  tooltip.ChartPaint=this;
51957
51970
  return true;
51958
51971
  }
@@ -65855,7 +65868,7 @@ function DynamicMinuteTitlePainting()
65855
65868
  if (this.TimeFormat) //指定时间格式
65856
65869
  {
65857
65870
  var strDate=null, strTime=null, text=null;
65858
- if (this.IsShowDate) strDate=IFrameSplitOperator.FormatDateString("YYYY-MM-DD", item.Date);
65871
+ if (this.IsShowDate) strDate=IFrameSplitOperator.FormatDateString(item.Date, "YYYY-MM-DD");
65859
65872
  if (this.IsShowTime) strTime=IFrameSplitOperator.FormatTimeString(item.Time,this.TimeFormat);
65860
65873
  if (strDate && strTime) text=`${strDate} ${strTime}`;
65861
65874
  else if (strDate) text=strDate;
@@ -80879,6 +80892,7 @@ function JSChartResource()
80879
80892
  TitleWindow:true, //标题模式
80880
80893
  ExportData:false, //数据导出
80881
80894
  AddIndexWindow:false, //增加指标窗口
80895
+ IndexHelp:false, //指标帮助
80882
80896
 
80883
80897
  IsShowOverlayToolbar:true, //是否显示叠加坐标工具栏按钮
80884
80898
  IsShowOverlayFrame:true, //是否显示右侧叠加坐标
@@ -80895,6 +80909,7 @@ function JSChartResource()
80895
80909
  TitleWindow:true, //标题模式
80896
80910
  ExportData:false, //数据导出
80897
80911
  AddIndexWindow:false, //增加指标窗口
80912
+ IndexHelp:false, //指标帮助
80898
80913
  }
80899
80914
 
80900
80915
  this.TooltipBGColor="rgb(255, 255, 255)"; //背景色
@@ -81499,6 +81514,16 @@ function JSChartResource()
81499
81514
  MerginLeft:4
81500
81515
  },
81501
81516
 
81517
+ IndexHelp:
81518
+ {
81519
+ Color:"rgb(0,0,0)",
81520
+ MoveOnColor:'rgb(30,144,255)',
81521
+ Family:"iconfont",
81522
+ Text:"\ue6ca",
81523
+ Size:13*GetDevicePixelRatio(),
81524
+ MerginLeft:4
81525
+ },
81526
+
81502
81527
  Tooltip:
81503
81528
  {
81504
81529
  Font:13*GetDevicePixelRatio() +"px 微软雅黑",
@@ -83401,6 +83426,8 @@ function JSChartResource()
83401
83426
  T_SetButtonStyle(buttons.TitleWindow, this.Buttons.TitleWindow);
83402
83427
  T_SetButtonStyle(buttons.ExportData, this.Buttons.ExportData);
83403
83428
  T_SetButtonStyle(buttons.AddIndexWindow, this.Buttons.AddIndexWindow);
83429
+ T_SetButtonStyle(buttons.IndexHelp, this.Buttons.IndexHelp);
83430
+
83404
83431
 
83405
83432
  if (buttons.Tooltip)
83406
83433
  {
@@ -84200,6 +84227,7 @@ function JSChartResource()
84200
84227
  if (IFrameSplitOperator.IsBool(style.TitleWindow)) dest.ModifyIndex=style.TitleWindow;
84201
84228
  if (IFrameSplitOperator.IsBool(style.ExportData)) dest.ModifyIndex=style.ExportData;
84202
84229
  if (IFrameSplitOperator.IsBool(style.AddIndexWindow)) dest.AddIndexWindow=style.AddIndexWindow;
84230
+ if (IFrameSplitOperator.IsBool(style.IndexHelp)) dest.IndexHelp=style.IndexHelp;
84203
84231
 
84204
84232
  if (IFrameSplitOperator.IsBool(style.IsShowOverlayToolbar)) dest.IsShowOverlayToolbar=style.IsShowOverlayToolbar;
84205
84233
  if (IFrameSplitOperator.IsBool(style.IsShowOverlayFrame)) dest.IsShowOverlayFrame=style.IsShowOverlayFrame;
@@ -84217,6 +84245,7 @@ function JSChartResource()
84217
84245
  if (IFrameSplitOperator.IsBool(style.TitleWindow)) dest.ModifyIndex=style.TitleWindow;
84218
84246
  if (IFrameSplitOperator.IsBool(style.ExportData)) dest.ModifyIndex=style.ExportData;
84219
84247
  if (IFrameSplitOperator.IsBool(style.AddIndexWindow)) dest.AddIndexWindow=style.AddIndexWindow;
84248
+ if (IFrameSplitOperator.IsBool(style.IndexHelp)) dest.IndexHelp=style.IndexHelp;
84220
84249
  }
84221
84250
 
84222
84251
 
@@ -84552,6 +84581,7 @@ function JSChartLocalization()
84552
84581
  ["Toolbar-"+JSCHART_BUTTON_ID.TITLE_WINDOW, {CN:"折叠窗口", EN:"Collapse window", TC:"折叠窗口"}],
84553
84582
  ["Toolbar-"+JSCHART_BUTTON_ID.EXPORT_DATA, {CN:"数据导出", EN:"Export data", TC:"数据导出"}],
84554
84583
  ["Toolbar-"+JSCHART_BUTTON_ID.ADD_INDEX_WINDOW, {CN:"增加指标窗口", EN:"Add index window", TC:"增加指标窗口"}],
84584
+ ["Toolbar-"+JSCHART_BUTTON_ID.INDEX_HELP, {CN:"指标帮助", EN:"Help", TC:"指标帮助"}],
84555
84585
 
84556
84586
  ["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID, {CN:"关闭集合竞价", EN:"Close call auction", TC:"关闭集合竞价"}],
84557
84587
  ["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_OVERLAY_INDEX, {CN:"关闭叠加指标", EN:"Delte overlay indicator", TC:"关闭叠加指标"}],
@@ -130426,7 +130456,7 @@ function ScriptIndex(name,script,args,option)
130426
130456
  }
130427
130457
  else //上锁
130428
130458
  {
130429
- let lockData={ IsLocked:true,Callback:param.Self.LockCallback,IndexName:param.Self.Name ,ID:param.Self.LockID,
130459
+ let lockData={ IsLocked:true,Callback:param.Self.LockCallback,IndexName:param.Self.Name,IndexID:param.Self.ID, ID:param.Self.LockID,
130430
130460
  BG:param.Self.LockBG,Text:param.Self.LockText,TextColor:param.Self.LockTextColor, Font:param.Self.LockFont, Count:param.Self.LockCount, MinWidth:param.Self.LockMinWidth };
130431
130461
  param.HQChart.Frame.SubFrame[windowIndex].Frame.SetLock(lockData);
130432
130462
  }
@@ -136954,6 +136984,12 @@ function GetBlackStyle()
136954
136984
  Color:"rgb(156,156,156)"
136955
136985
  },
136956
136986
 
136987
+ IndexHelp:
136988
+ {
136989
+ MoveOnColor:"rgb(255,255,255)",
136990
+ Color:"rgb(156,156,156)"
136991
+ },
136992
+
136957
136993
  Tooltip:
136958
136994
  {
136959
136995
  //Font:12*GetDevicePixelRatio() +"px 微软雅黑",
@@ -153708,7 +153744,7 @@ function ScrollBarBGChart()
153708
153744
 
153709
153745
 
153710
153746
 
153711
- var HQCHART_VERSION="1.1.15075";
153747
+ var HQCHART_VERSION="1.1.15083";
153712
153748
 
153713
153749
  function PrintHQChartVersion()
153714
153750
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.15075";
8
+ var HQCHART_VERSION="1.1.15083";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {