hqchart 1.1.13142 → 1.1.13152

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.
@@ -21933,6 +21933,29 @@ function HQTradeFrame()
21933
21933
  var firstOpenPrice=frame.YSplitOperator.GetFirstOpenPrice();
21934
21934
  outObject.RightYValue=((yValue-firstOpenPrice)/firstOpenPrice*100).toFixed(2)+'%';
21935
21935
  }
21936
+
21937
+ if (frame.GetMainOverlayFrame)
21938
+ {
21939
+ var aryOverlayFrame=frame.GetMainOverlayFrame();
21940
+ if (aryOverlayFrame)
21941
+ {
21942
+ if (aryOverlayFrame[0]) //左侧
21943
+ {
21944
+ var leftFrame=aryOverlayFrame[0];
21945
+ var value=leftFrame.GetYData(y);
21946
+ outObject.RightYValue=yValue;
21947
+ yValue=value;
21948
+ }
21949
+
21950
+ if (aryOverlayFrame[1]) //右侧
21951
+ {
21952
+ var rightFrame=aryOverlayFrame[1];
21953
+ var value=rightFrame.GetYData(y);
21954
+ outObject.RightYValue=value;
21955
+ }
21956
+ }
21957
+ }
21958
+
21936
21959
  return yValue;
21937
21960
  }
21938
21961
  }
@@ -22459,7 +22482,34 @@ function HQTradeHScreenFrame()
22459
22482
  }
22460
22483
  }
22461
22484
 
22462
- if (frame!=null) return frame.GetYData(x);
22485
+ if (frame!=null)
22486
+ {
22487
+ var xValue= frame.GetYData(x);
22488
+
22489
+ if (frame.GetMainOverlayFrame)
22490
+ {
22491
+ var aryOverlayFrame=frame.GetMainOverlayFrame();
22492
+ if (aryOverlayFrame)
22493
+ {
22494
+ if (aryOverlayFrame[0]) //左侧
22495
+ {
22496
+ var leftFrame=aryOverlayFrame[0];
22497
+ var value=leftFrame.GetYData(x);
22498
+ outObject.RightYValue=xValue;
22499
+ xValue=value;
22500
+ }
22501
+
22502
+ if (aryOverlayFrame[1]) //右侧
22503
+ {
22504
+ var rightFrame=aryOverlayFrame[1];
22505
+ var value=rightFrame.GetYData(x);
22506
+ outObject.RightYValue=value;
22507
+ }
22508
+ }
22509
+ }
22510
+
22511
+ return xValue;
22512
+ }
22463
22513
  }
22464
22514
  }
22465
22515
 
@@ -28582,6 +28632,198 @@ function ChartKLine()
28582
28632
  this.PtMin=ptMin;
28583
28633
  }
28584
28634
 
28635
+ this.DrawKagi=function() //卡吉图
28636
+ {
28637
+ var isHScreen=(this.ChartFrame.IsHScreen===true);
28638
+ var dataWidth=this.ChartFrame.DataWidth;
28639
+ var distanceWidth=this.ChartFrame.DistanceWidth;
28640
+ var xPointCount=this.ChartFrame.XPointCount;
28641
+
28642
+ if (isHScreen)
28643
+ {
28644
+ var border=this.ChartBorder.GetHScreenBorder();
28645
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
28646
+ var chartright=border.BottomEx;
28647
+ var left=border.TopEx+g_JSChartResource.FrameLeftMargin;
28648
+ }
28649
+ else
28650
+ {
28651
+ var border=this.ChartBorder.GetBorder();
28652
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
28653
+ var chartright=border.RightEx;
28654
+ var left=border.Left+g_JSChartResource.FrameLeftMargin;
28655
+ }
28656
+
28657
+ var ptMax={X:null,Y:null,Value:null,Align:'left'};
28658
+ var ptMin={X:null,Y:null,Value:null,Align:'left'};
28659
+ this.ShowRange.Start=this.Data.DataOffset;
28660
+ this.ShowRange.End=this.ShowRange.Start;
28661
+ this.ShowRange.DataCount=0;
28662
+ this.ShowRange.ShowCount=xPointCount;
28663
+ this.DrawKRange.Start=this.Data.DataOffset;
28664
+
28665
+ var lineWidth=2*GetDevicePixelRatio();
28666
+ this.Canvas.lineWidth=lineWidth;
28667
+ var preItem={ Item:null, X:left, Y:null };
28668
+ var index=this.Data.DataOffset-1;
28669
+ if (index>=0 && index<this.Data.Data.length)
28670
+ {
28671
+ var item=this.Data.Data[index];
28672
+ preItem.Item=item;
28673
+ if (item.Direction==1) //上
28674
+ {
28675
+ preItem.Y=this.GetYFromData(item.High,false);
28676
+ }
28677
+ else if (item.Direction==2)
28678
+ {
28679
+ preItem.Y=this.GetYFromData(item.Low,false);
28680
+ }
28681
+ }
28682
+
28683
+
28684
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth),++this.ShowRange.DataCount)
28685
+ {
28686
+ var data=this.Data.Data[i];
28687
+ this.ShowRange.End=i;
28688
+ if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
28689
+
28690
+ var left=xOffset;
28691
+ var right=xOffset+dataWidth;
28692
+ if (right>chartright) break;
28693
+ var x=left+(right-left)/2;
28694
+ var yLow=this.GetYFromData(data.Low,false);
28695
+ var yHigh=this.GetYFromData(data.High,false);
28696
+ this.DrawKRange.End=i;
28697
+
28698
+ if (ptMax.Value==null || ptMax.Value<data.High) //求最大值
28699
+ {
28700
+ ptMax.X=x;
28701
+ ptMax.Y=yHigh;
28702
+ ptMax.Value=data.High;
28703
+ ptMax.Align=j<xPointCount/2?'left':'right';
28704
+ }
28705
+
28706
+ if (ptMin.Value==null || ptMin.Value>data.Low) //求最小值
28707
+ {
28708
+ ptMin.X=x;
28709
+ ptMin.Y=yLow;
28710
+ ptMin.Value=data.Low;
28711
+ ptMin.Align=j<xPointCount/2?'left':'right';
28712
+ }
28713
+
28714
+ var xFixed=ToFixedPoint2(lineWidth,x);
28715
+
28716
+ if (preItem.Item)
28717
+ {
28718
+ this.Canvas.beginPath();
28719
+ var yFixed=ToFixedPoint2(lineWidth,preItem.Y);
28720
+
28721
+ this.Canvas.moveTo(preItem.X, yFixed);
28722
+ this.Canvas.lineTo(xFixed, yFixed);
28723
+ var prePrice=null;
28724
+ if (preItem.Item.Direction==1) prePrice=preItem.Item.Low;
28725
+ else if (preItem.Item.Direction==2) prePrice=preItem.Item.High;
28726
+
28727
+ if (data.Direction==1)
28728
+ {
28729
+ if (data.High<prePrice)
28730
+ {
28731
+ this.Canvas.lineTo(xFixed, yHigh);
28732
+ this.Canvas.strokeStyle=this.DownColor;
28733
+ this.Canvas.stroke();
28734
+ }
28735
+ else
28736
+ {
28737
+ var yPrePrice=this.GetYFromData(prePrice,false);
28738
+ this.Canvas.lineTo(xFixed, yPrePrice);
28739
+ this.Canvas.strokeStyle=this.DownColor;
28740
+ this.Canvas.stroke();
28741
+
28742
+ this.Canvas.beginPath();
28743
+ this.Canvas.moveTo(xFixed, yPrePrice);
28744
+ this.Canvas.lineTo(xFixed, yHigh);
28745
+ this.Canvas.strokeStyle=this.UpColor;
28746
+ this.Canvas.stroke();
28747
+ }
28748
+
28749
+ }
28750
+ else if (data.Direction==2)
28751
+ {
28752
+ if (data.Low>prePrice)
28753
+ {
28754
+ this.Canvas.lineTo(xFixed, yLow);
28755
+ this.Canvas.strokeStyle=this.DownColor; //阳线
28756
+ this.Canvas.stroke();
28757
+ }
28758
+ else
28759
+ {
28760
+ var yPrePrice=this.GetYFromData(prePrice,false);
28761
+ this.Canvas.lineTo(xFixed, yPrePrice);
28762
+ this.Canvas.strokeStyle=this.DownColor; //阳线
28763
+ this.Canvas.stroke();
28764
+
28765
+ this.Canvas.beginPath();
28766
+ this.Canvas.moveTo(xFixed, yPrePrice);
28767
+ this.Canvas.lineTo(xFixed, yLow);
28768
+ this.Canvas.strokeStyle=this.UpColor;
28769
+ this.Canvas.stroke();
28770
+ }
28771
+ }
28772
+
28773
+ }
28774
+ else
28775
+ {
28776
+ this.Canvas.beginPath();
28777
+ if (data.Direction==1)
28778
+ {
28779
+ this.Canvas.moveTo(xFixed, yLow);
28780
+ this.Canvas.lineTo(xFixed, yHigh);
28781
+ }
28782
+ else if (data.Direction==2)
28783
+ {
28784
+ this.Canvas.moveTo(xFixed, yHigh);
28785
+ this.Canvas.lineTo(xFixed, yLow);
28786
+ }
28787
+ this.Canvas.stroke();
28788
+ }
28789
+
28790
+ /*
28791
+ if (data.YClose<data.Close)
28792
+ {
28793
+ this.Canvas.strokeStyle=this.UpColor; //阳线
28794
+ this.Canvas.fillStyle=this.UpColor;
28795
+ }
28796
+ else if (data.YClose>data.Close)
28797
+ {
28798
+ this.Canvas.strokeStyle=this.DownColor; //阴线
28799
+ this.Canvas.fillStyle=this.DownColor;
28800
+ }
28801
+
28802
+ this.Canvas.beginPath();
28803
+ if (isHScreen)
28804
+ {
28805
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
28806
+ this.Canvas.lineTo(yLow,ToFixedPoint(x));
28807
+ }
28808
+ else
28809
+ {
28810
+ this.Canvas.moveTo(ToFixedPoint2(lineWidth,x),yHigh);
28811
+ this.Canvas.lineTo(ToFixedPoint2(lineWidth,x),yLow);
28812
+ }
28813
+ this.Canvas.stroke();
28814
+ */
28815
+
28816
+ preItem.Item=data;
28817
+ preItem.X=x;
28818
+
28819
+ if (data.Direction==1) preItem.Y=yHigh; //上
28820
+ else if (data.Direction==2) preItem.Y=yLow //下
28821
+ }
28822
+
28823
+ this.PtMax=ptMax;
28824
+ this.PtMin=ptMin;
28825
+ }
28826
+
28585
28827
  this.DrawTrade=function() //交易系统
28586
28828
  {
28587
28829
  if (!this.TradeData) return;
@@ -29089,6 +29331,10 @@ function ChartKLine()
29089
29331
  {
29090
29332
  this.DrawHLCArea();
29091
29333
  }
29334
+ else if (this.DrawType==16)
29335
+ {
29336
+ this.DrawKagi();
29337
+ }
29092
29338
  else if (this.DrawType==17)
29093
29339
  {
29094
29340
  this.DrawOrderFlow_Style4();
@@ -49930,7 +50176,7 @@ function FrameSplitY()
49930
50176
  var item=this.Frame.HorizontalInfo[i];
49931
50177
  var y=this.Frame.GetYFromData(item.Value);
49932
50178
  var yValue=leftFrame.GetYData(y);
49933
- if (ySplitOper && ySplitOper.FormatValueString) item.Message[1] = ySplitOper.FormatValueString(yValue);
50179
+ if (ySplitOper && ySplitOper.FormatValueString) item.Message[0] = ySplitOper.FormatValueString(yValue);
49934
50180
  else item.Message[0] = this.FormatValueString(yValue);
49935
50181
  }
49936
50182
  }
@@ -52188,6 +52434,7 @@ function ChartCorssCursor()
52188
52434
 
52189
52435
  this.StringFormatY.Value=yValue;
52190
52436
  this.StringFormatY.FrameID=yValueExtend.FrameID;
52437
+ this.StringFormatY.RValue=yValueExtend.RightYValue; //右侧子坐标
52191
52438
  this.StringFormatY.Point={X:x, Y:y};
52192
52439
  this.StringFormatY.ClientPos=this.ClientPos;
52193
52440
 
@@ -52992,6 +53239,7 @@ function HQPriceStringFormat()
52992
53239
  {
52993
53240
  if (this.DataFormatType==1) this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
52994
53241
  else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);
53242
+ if (IFrameSplitOperator.IsNumber(this.RValue)) this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);
52995
53243
  }
52996
53244
 
52997
53245
  if (this.GetEventCallback)
@@ -69629,20 +69877,24 @@ function RenkoCalculate()
69629
69877
  //
69630
69878
  function KagiCalculate()
69631
69879
  {
69632
- this.Symbol;
69633
- this.SourceData;
69634
- this.FloatPrecision=2; //品种小数位数
69635
- this.ATR={ Count:14 }; //使用ATR计算砖块大小
69880
+ this.newMethod=RenkoCalculate; //派生
69881
+ this.newMethod();
69882
+ delete this.newMethod;
69883
+
69884
+ this.ClassName="KagiCalculate";
69885
+ this.BrickSizeType=0;
69886
+ this.BrickSize=0.5; //固定大小
69636
69887
 
69637
69888
  this.RecvHistoryData=function(sourceData, option) //历史日线数据
69638
69889
  {
69639
69890
  this.Symbol=option.Symbol;
69640
69891
  this.SourceData=sourceData;
69641
69892
  this.FloatPrecision=GetfloatPrecision(this.Symbol);
69642
- return this.Calculate(sourceData);
69893
+ if (this.BrickSizeType==1) this.CalculateATR();
69894
+ return this.CalculateByClose(sourceData);
69643
69895
  }
69644
69896
 
69645
- this.Calculate=function(sourceData)
69897
+ this.CalculateByClose=function(sourceData)
69646
69898
  {
69647
69899
  var bindData=new ChartData();
69648
69900
  bindData.Data=[]
@@ -69653,13 +69905,139 @@ function KagiCalculate()
69653
69905
 
69654
69906
  if (!IFrameSplitOperator.IsNonEmptyArray(sourceData.Data)) return bindData;
69655
69907
 
69656
- var periodCount=this.ATR.Count;
69908
+ var brickSize=this.BrickSize;
69909
+ if (this.BrickSizeType==1) brickSize=this.ATR.BrickSize;
69657
69910
 
69658
69911
  var kItem=sourceData.Data[0];
69659
- this.LastData=HistoryData.Copy(kItem);
69660
- for(var i=1; i<sourceData.Data.length; )
69912
+ var kagiItem=HistoryData.Copy(kItem);
69913
+
69914
+ kagiItem.High=kagiItem.Low=kItem.Close;
69915
+ kagiItem.StartItem=kItem;
69916
+ kagiItem.Direction=0; //1 上 2=下
69917
+
69918
+ var T_MergeKData=function(dest, src)
69661
69919
  {
69920
+ dest.Vol+=src.Vol;
69921
+ dest.Amount+=src.Amount;
69662
69922
  }
69923
+
69924
+ var index=1;
69925
+ for( ;index<sourceData.Data.length;++index) //确定好方向
69926
+ {
69927
+ var kItem=sourceData.Data[index];
69928
+ if (kItem.Close>kagiItem.Close)
69929
+ {
69930
+ kagiItem.Direction=1;
69931
+ kagiItem.Close=kItem.Close;
69932
+ kagiItem.EndItem=kItem;
69933
+ kagiItem.High=kItem.Close;
69934
+ break;
69935
+ }
69936
+ else if (kItem.Close<kagiItem.Close)
69937
+ {
69938
+ kagiItem.Direction=2;
69939
+ kagiItem.Close=kItem.Close;
69940
+ kagiItem.EndItem=kItem;
69941
+ kagiItem.Low=kItem.Close;
69942
+ break;
69943
+ }
69944
+ }
69945
+
69946
+ var changeItem=null;
69947
+ for(++index; index<sourceData.Data.length;++index )
69948
+ {
69949
+ var kItem=sourceData.Data[index];
69950
+ if (kagiItem.Direction==1) //上
69951
+ {
69952
+ if (kItem.Close>=kagiItem.High)
69953
+ {
69954
+ kagiItem.Close=kItem.Close;
69955
+ kagiItem.High=kItem.Close;
69956
+ kagiItem.EndItem=kItem;
69957
+ changeItem=null;
69958
+ }
69959
+ else
69960
+ {
69961
+ if (!changeItem)
69962
+ {
69963
+ changeItem=HistoryData.Copy(kItem);
69964
+ changeItem.High=changeItem.Low=kItem.Close;
69965
+ }
69966
+ else
69967
+ {
69968
+ changeItem.Close=kItem.Close;
69969
+ if (changeItem.Low>kItem.Close) changeItem.Low=kItem.Close;
69970
+ }
69971
+
69972
+ if (Math.abs(changeItem.Low-kagiItem.High)>brickSize) //达到变盘点
69973
+ {
69974
+ bindData.Data.push(kagiItem);
69975
+
69976
+ var newItem=HistoryData.Copy(kItem);
69977
+ newItem.High=kagiItem.High;
69978
+ newItem.Low=kItem.Close;
69979
+ newItem.Direction=2; //1 上 2=下
69980
+ newItem.StartItem=kItem;
69981
+
69982
+ kagiItem=newItem;
69983
+ changeItem=null;
69984
+ }
69985
+ }
69986
+ }
69987
+ else if (kagiItem.Direction==2) //下
69988
+ {
69989
+ if (kItem.Close<=kagiItem.Low)
69990
+ {
69991
+ kagiItem.Close=kItem.Close;
69992
+ kagiItem.Low=kItem.Close;
69993
+ kagiItem.EndItem=kItem;
69994
+ }
69995
+ else
69996
+ {
69997
+ if (!changeItem)
69998
+ {
69999
+ changeItem=HistoryData.Copy(kItem);
70000
+ changeItem.High=changeItem.Low=kItem.Close;
70001
+ }
70002
+ else
70003
+ {
70004
+ changeItem.Close=kItem.Close;
70005
+ if (changeItem.High<kItem.Close) changeItem.High=kItem.Close;
70006
+ }
70007
+
70008
+ if (Math.abs(changeItem.High-kagiItem.Low)>brickSize) //达到变盘点
70009
+ {
70010
+ bindData.Data.push(kagiItem);
70011
+
70012
+ var newItem=HistoryData.Copy(kItem);
70013
+ newItem.High=kItem.Close;
70014
+ newItem.Low=kagiItem.Low;
70015
+ newItem.Direction=1; //1 上 2=下
70016
+ newItem.StartItem=kItem;
70017
+
70018
+ kagiItem=newItem;
70019
+ changeItem=null;
70020
+ }
70021
+ }
70022
+ }
70023
+ }
70024
+
70025
+ return bindData;
70026
+ }
70027
+
70028
+ //获取配置信息
70029
+ this.GetTitle=function()
70030
+ {
70031
+ if (this.BrickSizeType==1)
70032
+ {
70033
+ var text=`Kagi [ATR(${this.ATR.Count}), ${this.ATR.BrickSize}]`;
70034
+ }
70035
+ else
70036
+ {
70037
+ var text=`Kagi [Traditional]`;
70038
+ }
70039
+
70040
+ return text;
69663
70041
  }
69664
70042
  }
69665
70043
 
@@ -73267,12 +73645,17 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73267
73645
  //删除某一个窗口的指标, bCallDestory=是否调用图形销毁函数
73268
73646
  this.DeleteIndexPaint=function(windowIndex, bCallDestroy)
73269
73647
  {
73270
- let paint=new Array(); //踢出当前窗口的指标画法
73271
- for(let i in this.ChartPaint)
73648
+ if (!this.Frame.SubFrame[windowIndex]) return;
73649
+ var subFrame=this.Frame.SubFrame[windowIndex].Frame;
73650
+ if (!subFrame) return;
73651
+
73652
+ var paint=[]; //踢出当前窗口的指标画法
73653
+ for(var i=0;i<this.ChartPaint.length; ++i)
73272
73654
  {
73273
- let item=this.ChartPaint[i];
73655
+ var item=this.ChartPaint[i];
73656
+ var bFind=(item.ChartFrame.Guid==subFrame.Guid || item.ChartFrame==subFrame);
73274
73657
 
73275
- if (i==0 || item.ChartFrame!=this.Frame.SubFrame[windowIndex].Frame)
73658
+ if (i==0 || !bFind)
73276
73659
  {
73277
73660
  paint.push(item);
73278
73661
  }
@@ -73285,7 +73668,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73285
73668
  }
73286
73669
  }
73287
73670
 
73288
- var subFrame=this.Frame.SubFrame[windowIndex].Frame;
73671
+
73289
73672
  subFrame.YSpecificMaxMin=null; //清空指定最大最小值
73290
73673
  subFrame.IsLocked=false; //解除上锁
73291
73674
  subFrame.YSplitScale = null; //清空固定刻度
@@ -79019,6 +79402,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
79019
79402
  }
79020
79403
 
79021
79404
  var subFrame=new SubFrameItem();
79405
+ frame.FrameData.SubFrameItem=subFrame;
79022
79406
  subFrame.Frame=frame;
79023
79407
  if (i==0)
79024
79408
  subFrame.Height=20;
@@ -79105,6 +79489,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
79105
79489
  }
79106
79490
 
79107
79491
  var subFrame=new SubFrameItem();
79492
+ frame.FrameData.SubFrameItem=subFrame;
79108
79493
  subFrame.Frame=frame;
79109
79494
  subFrame.Height=10;
79110
79495
 
@@ -79176,12 +79561,16 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
79176
79561
  //删除某一个窗口的指标
79177
79562
  this.DeleteIndexPaint=function(windowIndex,bCallDestroy)
79178
79563
  {
79179
- let paint=new Array(); //踢出当前窗口的指标画法
79180
- for(let i in this.ChartPaint)
79564
+ var subFrame=this.Frame.SubFrame[windowIndex].Frame;
79565
+ if (!subFrame) return;
79566
+
79567
+ var paint=[]; //踢出当前窗口的指标画法
79568
+ for(var i=0;i<this.ChartPaint.length;++i)
79181
79569
  {
79182
- let item=this.ChartPaint[i];
79570
+ var item=this.ChartPaint[i];
79571
+ var bFind=(item.ChartFrame.Guid==subFrame.Guid || item.ChartFrame==subFrame);
79183
79572
 
79184
- if (i==0 || item.ChartFrame!=this.Frame.SubFrame[windowIndex].Frame)
79573
+ if (i==0 || !bFind)
79185
79574
  {
79186
79575
  paint.push(item);
79187
79576
  }
@@ -79195,7 +79584,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
79195
79584
  }
79196
79585
 
79197
79586
  //清空指定最大最小值
79198
- var subFrame=this.Frame.SubFrame[windowIndex].Frame;
79587
+
79199
79588
  subFrame.YSpecificMaxMin=null;
79200
79589
  subFrame.IsLocked=false; //解除上锁
79201
79590
  subFrame.YSplitOperator.SplitType=subFrame.YSplitOperator.DefaultSplitType; //还原Y坐标分割模式
@@ -84518,6 +84907,7 @@ function KLineChartHScreenContainer(uielement)
84518
84907
  }
84519
84908
 
84520
84909
  var subFrame=new SubFrameItem();
84910
+ frame.FrameData.SubFrameItem=subFrame;
84521
84911
  subFrame.Frame=frame;
84522
84912
  if (i==0)
84523
84913
  subFrame.Height=20;
@@ -84662,6 +85052,7 @@ function MinuteChartHScreenContainer(uielement)
84662
85052
  }
84663
85053
 
84664
85054
  var subFrame=new SubFrameItem();
85055
+ frame.FrameData.SubFrameItem=subFrame;
84665
85056
  subFrame.Frame=frame;
84666
85057
  if (i==0)
84667
85058
  subFrame.Height=20;
@@ -131760,7 +132151,7 @@ function ScrollBarBGChart()
131760
132151
 
131761
132152
 
131762
132153
 
131763
- var HQCHART_VERSION="1.1.13141";
132154
+ var HQCHART_VERSION="1.1.13151";
131764
132155
 
131765
132156
  function PrintHQChartVersion()
131766
132157
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.13141";
8
+ var HQCHART_VERSION="1.1.13151";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {