hqchart 1.1.13059 → 1.1.13065

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.
@@ -6691,7 +6691,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
6691
6691
  {
6692
6692
  IsValueFullRange:false ,
6693
6693
  IsDisplayLatest:false,
6694
- SelectedBorder:{ Mode:0, SelFrame:0 } //边框选中模式 Mode:0=禁用 1=右侧标记选中 2=指标窗口标记选中
6694
+ SelectedBorder:{ Mode:0, SelFrame:0 }, //边框选中模式 Mode:0=禁用 1=右侧标记选中 2=指标窗口标记选中
6695
+ SelectedXBorder: { Mode:0, Date:null } //X边框选中模式 Mode:0=禁用 分时图图有效
6695
6696
  //XDateFormat (多日分时图x轴底部日期格式)
6696
6697
  };
6697
6698
 
@@ -7144,6 +7145,20 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7144
7145
  }
7145
7146
  }
7146
7147
 
7148
+ if (this.GlobalOption.SelectedXBorder && this.GlobalOption.SelectedXBorder.Mode>=1)
7149
+ {
7150
+ if (this.PtInMulitDayMinute)
7151
+ {
7152
+ var item=this.GlobalOption.SelectedXBorder;
7153
+ var selectedDate=this.PtInMulitDayMinute(x,y);
7154
+ if (item.Date!=selectedDate)
7155
+ {
7156
+ item.Date=selectedDate
7157
+ bDrawDynamicInfo=true;
7158
+ }
7159
+ }
7160
+ }
7161
+
7147
7162
  if (this.TryClickCrossCursor(x,y, e))
7148
7163
  {
7149
7164
  return;
@@ -8948,6 +8963,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8948
8963
  this.DrawSelectedStatus();
8949
8964
 
8950
8965
  this.DrawSelectedBorder();
8966
+ if (this.DrawSelectedXBorder) this.DrawSelectedXBorder();
8951
8967
 
8952
8968
  var moveonPoint=null;
8953
8969
  if (this.LastMouseStatus && this.LastMouseStatus.MoveOnPoint) moveonPoint=this.LastMouseStatus.MoveOnPoint;
@@ -9152,7 +9168,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9152
9168
  var item=this.ExtendChartPaint[i];
9153
9169
  if (item.IsCallbackDraw)
9154
9170
  {
9155
- if (["KLineYAxisBGPaint","DepthMapPaint","BackgroundPaint","MinuteBackgroundPaint"].includes(item.ClassName))
9171
+ if (["KLineYAxisBGPaint","DepthMapPaint","BackgroundPaint","MinuteBackgroundPaint", "SessionBreaksPaint"].includes(item.ClassName))
9156
9172
  {
9157
9173
  if (item.FrameID==frame.Identify) item.Draw();
9158
9174
  }
@@ -9374,6 +9390,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9374
9390
 
9375
9391
  this.DrawSelectedStatus();
9376
9392
  this.DrawSelectedBorder();
9393
+ if (this.DrawSelectedXBorder) this.DrawSelectedXBorder();
9377
9394
 
9378
9395
  var moveonPoint=null;
9379
9396
  if (this.LastMouseStatus && this.LastMouseStatus.MoveOnPoint) moveonPoint=this.LastMouseStatus.MoveOnPoint;
@@ -42860,7 +42877,8 @@ function ExtendChartPaintFactory()
42860
42877
  [
42861
42878
  ["FrameSplitPaint", { Create:function() { return new FrameSplitPaint(); } }],
42862
42879
  ["RectSelectPaint", { Create:function() { return new RectSelectPaint(); } }],
42863
- ["DragMovePaint", { Create:function() { return new DragMovePaint(); } }]
42880
+ ["DragMovePaint", { Create:function() { return new DragMovePaint(); } }],
42881
+ ["SessionBreaksPaint", { Create:function() { return new SessionBreaksPaint(); }}]
42864
42882
  ]
42865
42883
  );
42866
42884
 
@@ -47118,6 +47136,266 @@ function DragMovePaint()
47118
47136
  }
47119
47137
 
47120
47138
 
47139
+ function SessionBreaksPaint()
47140
+ {
47141
+ this.newMethod=IExtendChartPainting; //派生
47142
+ this.newMethod();
47143
+ delete this.newMethod;
47144
+
47145
+ this.ClassName='SessionBreaksPaint';
47146
+ this.IsDynamic=false;
47147
+ this.IsCallbackDraw=true; //在回调函数里绘制, 不在Draw()中绘制
47148
+ this.FrameID=0;
47149
+ this.KDataFeature; //数据特征 { Symbol, Period, DataCount }
47150
+ this.Data;
47151
+ this.ChartFrame;
47152
+
47153
+ this.BGColor=g_JSChartResource.SessionBreaksPaint.BGColor.slice();
47154
+ this.SplitLine=
47155
+ {
47156
+ Color:g_JSChartResource.SessionBreaksPaint.SplitLine.Color,
47157
+ Width:g_JSChartResource.SessionBreaksPaint.SplitLine.Width,
47158
+ Dash:g_JSChartResource.SessionBreaksPaint.SplitLine.Dash
47159
+ };
47160
+
47161
+ this.MapPeriod=new Map(
47162
+ [
47163
+ [0, { SplitType:1 }], //日
47164
+ [1, { SplitType:1 }], //周
47165
+ [2, { SplitType:2 }], //月
47166
+ [21, { SplitType:2 }], //双周
47167
+
47168
+ [4, { SplitType:3 }], //1分钟
47169
+ [5, { SplitType:3 }], //5分钟
47170
+ [6, { SplitType:3 }], //15分钟
47171
+ [7, { SplitType:3 }],
47172
+ [8, { SplitType:3 }],
47173
+ ]); //周期和分割对应关系
47174
+
47175
+ this.SetOption=function(option) //设置
47176
+ {
47177
+ if (option.FrameID>0) this.FrameID=option.FrameID;
47178
+ }
47179
+
47180
+ this.Draw=function()
47181
+ {
47182
+ if (!this.HQChart) return;
47183
+ var hisData=this.HQChart.ChartOperator_Temp_GetHistroyData();;
47184
+ if (!hisData) return; //数据还没有到达
47185
+ if (!IFrameSplitOperator.IsNonEmptyArray(hisData.Data)) return;
47186
+
47187
+ if (this.IsKDataChange(hisData))
47188
+ {
47189
+ this.BuildCacheData(hisData);
47190
+ }
47191
+
47192
+ if (!IFrameSplitOperator.IsNonEmptyArray(this.Data)) return;
47193
+
47194
+ var mainFrame=this.HQChart.Frame.SubFrame[0].Frame;
47195
+ var bHScreen=(this.ChartFrame.IsHScreen===true);
47196
+ var dataWidth=mainFrame.DataWidth;
47197
+ var distanceWidth=mainFrame.DistanceWidth;
47198
+ var xPointCount=mainFrame.XPointCount;
47199
+
47200
+ if (bHScreen)
47201
+ {
47202
+ var border=this.ChartBorder.GetHScreenBorder();
47203
+ var chartright=border.BottomEx;
47204
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
47205
+ }
47206
+ else
47207
+ {
47208
+ var border=this.ChartBorder.GetBorder();
47209
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
47210
+ var chartright=border.RightEx;
47211
+ }
47212
+
47213
+ var preID=null;
47214
+ var aryBG=[];
47215
+ var bgItem=null;
47216
+ for(var i=hisData.DataOffset,j=0;i<hisData.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
47217
+ {
47218
+ var item=this.Data[i];
47219
+ if (!item) continue;
47220
+
47221
+ var left=xOffset;
47222
+ var right=xOffset+dataWidth;
47223
+ if (right>chartright) break;
47224
+ var x=left+(right-left)/2;
47225
+
47226
+ var xStart=left-distanceWidth/2;
47227
+ var xEnd=right+distanceWidth/2;
47228
+
47229
+ var id=item.ID;
47230
+ if (!IFrameSplitOperator.IsNumber(id)) continue;
47231
+
47232
+ if (preID==null)
47233
+ {
47234
+ bgItem={ Start:{ X:xStart }, End:{ X:xEnd }, ColorIndex:id, Count:1, IsStart:false, IsEnd:false };
47235
+ preID=id;
47236
+ if (i-1>=0)
47237
+ {
47238
+ var preItem=this.Data[i-1];
47239
+ if (preItem && preItem.ID!=id) bgItem.IsStart=true;
47240
+ }
47241
+ }
47242
+ else if (preID!=id)
47243
+ {
47244
+ bgItem.End.X=xStart;
47245
+ bgItem.IsEnd=true;
47246
+ aryBG.push(bgItem);
47247
+
47248
+ bgItem={ Start:{ X:xStart }, End:{ X:xEnd }, ColorIndex:id, Count:1, IsStart:true, IsEnd:false };
47249
+ preID=id;
47250
+ }
47251
+ else
47252
+ {
47253
+ bgItem.End.X=xEnd;
47254
+ ++bgItem.Count;
47255
+ }
47256
+ }
47257
+
47258
+ if (bgItem && bgItem.Count>=2) aryBG.push(bgItem);
47259
+
47260
+ this.Canvas.save();
47261
+ this.DrawBG(aryBG);
47262
+ this.Canvas.restore();
47263
+ }
47264
+
47265
+ this.DrawBG=function(aryBG)
47266
+ {
47267
+ if (!IFrameSplitOperator.IsNonEmptyArray(aryBG)) return;
47268
+
47269
+ var bHScreen=(this.ChartFrame.IsHScreen===true);
47270
+ if (bHScreen)
47271
+ {
47272
+ var border=this.ChartBorder.GetHScreenBorder();
47273
+ var top=border.RightEx;
47274
+ var bottom=border.Left;
47275
+ var height=bottom-top;
47276
+ }
47277
+ else
47278
+ {
47279
+ var border=this.ChartBorder.GetBorder();
47280
+ var top=border.TopEx;
47281
+ var bottom=border.BottomEx;
47282
+ var height=bottom-top;
47283
+ }
47284
+
47285
+
47286
+ var bDrawSplitLine=false;
47287
+ if (this.SplitLine.Color) bDrawSplitLine=true;
47288
+ var lineCount=0;
47289
+ for(var i=0;i<aryBG.length;++i)
47290
+ {
47291
+ var item=aryBG[i];
47292
+ var xLeft=item.Start.X;
47293
+ var xRight=item.End.X;
47294
+
47295
+ var index=item.ColorIndex%this.BGColor.length;
47296
+ var bgColor=this.BGColor[index];
47297
+ if (bgColor)
47298
+ {
47299
+ this.Canvas.fillStyle=bgColor;
47300
+ if (bHScreen)
47301
+ this.Canvas.fillRect(ToFixedPoint(top),ToFixedPoint(xLeft),ToFixedRect(height),ToFixedRect(xRight-xLeft));
47302
+ else
47303
+ this.Canvas.fillRect(ToFixedPoint(xLeft),ToFixedPoint(top),ToFixedRect(xRight-xLeft),ToFixedRect(height));
47304
+ }
47305
+
47306
+ if (bDrawSplitLine && item.IsStart)
47307
+ {
47308
+ if (lineCount==0) this.Canvas.beginPath();
47309
+ if (bHScreen)
47310
+ {
47311
+ this.Canvas.moveTo(top, ToFixedPoint(xLeft));
47312
+ this.Canvas.lineTo(bottom, ToFixedPoint(xLeft));
47313
+ }
47314
+ else
47315
+ {
47316
+ this.Canvas.moveTo(ToFixedPoint(xLeft), top);
47317
+ this.Canvas.lineTo(ToFixedPoint(xLeft), bottom);
47318
+ }
47319
+
47320
+ ++lineCount;
47321
+ }
47322
+ }
47323
+
47324
+ if (bDrawSplitLine && lineCount>=1)
47325
+ {
47326
+ if (this.SplitLine.Width>=1) this.Canvas.linewidth=this.SplitLine.Width;
47327
+ if (this.SplitLine.Dash) this.Canvas.setLineDash(this.SplitLine.Dash);
47328
+ if (this.SplitLine.Color) this.Canvas.strokeStyle=this.SplitLine.Color;
47329
+
47330
+ this.Canvas.stroke();
47331
+ }
47332
+ }
47333
+
47334
+ this.IsKDataChange=function(hisData)
47335
+ {
47336
+ if (!this.KDataFeature) return true;
47337
+
47338
+ if (this.KDataFeature.Symbol!=this.HQChart.Symbol) return true;
47339
+ if (this.KDataFeature.Period!=this.HQChart.Period) return true;
47340
+ if (this.KDataFeature.DataCount!=hisData.Data.length) return true;
47341
+
47342
+ return false;
47343
+ }
47344
+
47345
+ this.BuildCacheData=function(hisData)
47346
+ {
47347
+ var period=this.HQChart.Period;
47348
+ if (!this.MapPeriod.has(period))
47349
+ {
47350
+ this.Data=[];
47351
+ this.KDataFeature={ Symbol:this.HQChart.Symbol, Period:period, DataCount:hisData.Data.length };
47352
+ return;
47353
+ }
47354
+
47355
+ var splitType=this.MapPeriod.get(period).SplitType; //1=month 2=year 3=day 4=1hour
47356
+
47357
+ var startDate=0;
47358
+ var index=-1;
47359
+ this.Data=[];
47360
+ for(var i=0;i<hisData.Data.length;++i)
47361
+ {
47362
+ var item=hisData.Data[i];
47363
+ switch(splitType)
47364
+ {
47365
+ case 1: //月
47366
+ if (parseInt(item.Date/100)!=parseInt(startDate/100))
47367
+ {
47368
+ startDate=item.Date;
47369
+ ++index;
47370
+ }
47371
+ this.Data.push({ ID:index, Date:item.Date });
47372
+ break;
47373
+ case 2: //年
47374
+ if (parseInt(item.Date/10000)!=parseInt(startDate/10000))
47375
+ {
47376
+ startDate=item.Date;
47377
+ ++index;
47378
+ }
47379
+ this.Data.push({ ID:index, Date:item.Date });
47380
+ break;
47381
+ case 3: //日
47382
+ if (item.Date!=startDate)
47383
+ {
47384
+ startDate=item.Date;
47385
+ ++index;
47386
+ }
47387
+ this.Data.push({ ID:index, Date:item.Date });
47388
+ break;
47389
+ }
47390
+
47391
+ }
47392
+
47393
+
47394
+ this.KDataFeature={ Symbol:this.HQChart.Symbol, Period:period, DataCount:hisData.Data.length };
47395
+ }
47396
+ }
47397
+
47398
+
47121
47399
 
47122
47400
  //弹幕数据 { X:X偏移, Y:Y偏移, Text:内容, Color:颜色 }
47123
47401
  function BarrageList()
@@ -67363,6 +67641,12 @@ function JSChartResource()
67363
67641
  Font:14*GetDevicePixelRatio() +"px 微软雅黑"
67364
67642
  }
67365
67643
 
67644
+ this.SessionBreaksPaint=
67645
+ {
67646
+ BGColor:[null, "rgb(245,246,246)"],
67647
+ SplitLine:{ Color:'rgb(73,133,231)', Width:1*GetDevicePixelRatio(), Dash:[5*GetDevicePixelRatio(),5*GetDevicePixelRatio()] }
67648
+ }
67649
+
67366
67650
 
67367
67651
  //成交明细
67368
67652
  this.DealList=
@@ -68307,6 +68591,19 @@ function JSChartResource()
68307
68591
  if (item.Font) this.DragMovePaint.Font=item.Font;
68308
68592
  }
68309
68593
 
68594
+ if (style.SessionBreaksPaint)
68595
+ {
68596
+ var item=style.SessionBreaksPaint;
68597
+ if (IFrameSplitOperator.IsNonEmptyArray(item.BGColor)) this.SessionBreaksPaint.BGColor=item.BGColor.slice();
68598
+ if (item.SplitLine)
68599
+ {
68600
+ var subItem=item.SplitLine;
68601
+ if (subItem.Color) this.SessionBreaksPaint.SplitLine.Color=subItem.Color;
68602
+ if (IFrameSplitOperator.IsNumber(subItem.Width)) this.SessionBreaksPaint.SplitLine.Width=subItem.Width;
68603
+ this.SessionBreaksPaint.SplitLine.Dash=subItem.Dash;
68604
+ }
68605
+ }
68606
+
68310
68607
  if (IFrameSplitOperator.IsNumber(style.ToolbarButtonStyle)) this.ToolbarButtonStyle=style.ToolbarButtonStyle;
68311
68608
 
68312
68609
  if (style.Buttons)
@@ -76439,7 +76736,6 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
76439
76736
  this.DataStatus={ MultiDay:false, LatestDay:false }; //MultiDay=多日 LatestDay:当天
76440
76737
 
76441
76738
  this.ZoomStepPixel=50;
76442
-
76443
76739
 
76444
76740
  //集合竞价设置 obj={ Left:true/false, Right:true/false, MultiDay:{Left:, Right:} }
76445
76741
  this.SetCallCationDataBorder=function(obj)
@@ -81427,6 +81723,105 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
81427
81723
 
81428
81724
  return false;
81429
81725
  }
81726
+
81727
+ this.ClearSelectedXBorder=function()
81728
+ {
81729
+ if (!this.GlobalOption || !this.GlobalOption.SelectedXBorder) return;
81730
+ var item=this.GlobalOption.SelectedXBorder;
81731
+ item.Date=null;
81732
+ }
81733
+
81734
+ this.DrawSelectedXBorder=function()
81735
+ {
81736
+ if (this.DayCount<=1) return null;
81737
+ if (this.Frame.IsHScreen===true) return null;
81738
+
81739
+ if (!this.GlobalOption || !this.GlobalOption.SelectedXBorder) return;
81740
+ var item=this.GlobalOption.SelectedXBorder;
81741
+ if (!IFrameSplitOperator.IsPlusNumber(item.Mode)) return;
81742
+ if (!IFrameSplitOperator.IsPlusNumber(item.Date)) return;
81743
+ if (!IFrameSplitOperator.IsNonEmptyArray(this.DayData)) return;
81744
+
81745
+ var rtSelected=null;
81746
+ var dayIndex=item.DayIndex;
81747
+ var border=this.Frame.ChartBorder.GetBorder();
81748
+ var rtClient={ Left:border.Left, Top:border.Top, Right:border.Right, Bottom: border.Bottom };
81749
+ rtClient.Width=rtClient.Right-rtClient.Left;
81750
+ var mainFrame=this.Frame.SubFrame[0].Frame; //主图框架
81751
+ var xPointCount=mainFrame.XPointCount;
81752
+ var minuteCount=mainFrame.MinuteCount;
81753
+ var lDayCount=xPointCount/minuteCount;
81754
+ var dayWidth=rtClient.Width/lDayCount;
81755
+
81756
+ if (border.DayBorder)
81757
+ {
81758
+
81759
+ }
81760
+ else
81761
+ {
81762
+ var dayIndex=-1;
81763
+ for(var i=0;i<this.DayData.length;++i)
81764
+ {
81765
+ var dayItem=this.DayData[i];
81766
+ if (dayItem.Date==item.Date)
81767
+ {
81768
+ dayIndex=this.DayData.length-1-i;
81769
+ break;
81770
+ }
81771
+ }
81772
+
81773
+ if (dayIndex<0) return;
81774
+
81775
+ rtSelected={ Left:border.Left+dayIndex*dayWidth, Width:dayWidth, Top:border.Bottom, Bottom:border.ChartHeight };
81776
+ rtSelected.Right=rtSelected.Left+rtSelected.Width;
81777
+ rtSelected.Height=rtSelected.Bottom-rtSelected.Top;
81778
+ }
81779
+
81780
+
81781
+ mainFrame.Canvas.strokeStyle=g_JSChartResource.SelFrameBorderColor;
81782
+ mainFrame.Canvas.strokeRect(ToFixedPoint(rtSelected.Left),ToFixedPoint(rtSelected.Top),ToFixedRect(rtSelected.Width),ToFixedRect(rtSelected.Height)-1);
81783
+ }
81784
+
81785
+ this.PtInMulitDayMinute=function(x,y)
81786
+ {
81787
+ if (this.DayCount<=1) return null;
81788
+ if (this.Frame.IsHScreen===true) return null;
81789
+ if (!IFrameSplitOperator.IsNonEmptyArray(this.DayData)) return null;
81790
+
81791
+ var border=this.Frame.ChartBorder.GetBorder();
81792
+ var rtClient={ Left:border.Left, Top:border.Top, Right:border.Right, Bottom: border.Bottom };
81793
+ rtClient.Width=rtClient.Right-rtClient.Left;
81794
+ if (!(x>rtClient.Left && x<rtClient.Right && y>rtClient.Top && y<rtClient.Bottom)) return null; //不在窗口里面
81795
+
81796
+ if (border.DayBorder)
81797
+ {
81798
+
81799
+ }
81800
+ else
81801
+ {
81802
+ var mainFrame=this.Frame.SubFrame[0].Frame; //主图框架
81803
+ var xPointCount=mainFrame.XPointCount;
81804
+ var minuteCount=mainFrame.MinuteCount;
81805
+ var lDayCount=xPointCount/minuteCount;
81806
+ var dayWidth=rtClient.Width/lDayCount;
81807
+ var rtDay={ Left:rtClient.Left, Right:dayWidth+rtClient.Left };
81808
+ for(var i=0;i<lDayCount;++i)
81809
+ {
81810
+ if (x>=rtDay.Left && x<=rtDay.Right)
81811
+ {
81812
+ var dayItem=this.DayData[this.DayData.length-1-i];
81813
+ if (!dayItem) return null;
81814
+
81815
+ return dayItem.Date;
81816
+ }
81817
+
81818
+ rtDay.Left+=dayWidth;
81819
+ rtDay.Right+=dayWidth;
81820
+ }
81821
+ }
81822
+
81823
+ return null;
81824
+ }
81430
81825
  }
81431
81826
 
81432
81827
  //盘前数据
@@ -88595,6 +88990,39 @@ function KLineRightMenu(divElement)
88595
88990
  return data;
88596
88991
  }
88597
88992
 
88993
+ this.GetBGSplit=function(chart)
88994
+ {
88995
+ var data=
88996
+ [
88997
+ {
88998
+ text: "启用",
88999
+ click: function ()
89000
+ {
89001
+ chart.CreateExtendChart("SessionBreaksPaint", { });
89002
+ chart.Draw();
89003
+ }
89004
+ },
89005
+ {
89006
+ text: "关闭",
89007
+ click: function ()
89008
+ {
89009
+ var finder=chart.GetExtendChartByClassName("SessionBreaksPaint");
89010
+ if (finder)
89011
+ {
89012
+ chart.DeleteExtendChartByID(finder.Chart.ID);
89013
+ chart.Draw();
89014
+ }
89015
+ }
89016
+ },
89017
+ ];
89018
+
89019
+ var finder=chart.GetExtendChartByClassName("SessionBreaksPaint");
89020
+ if (finder) data[0].selected=true;
89021
+ else data[1].selected=true;
89022
+
89023
+ return data;
89024
+ }
89025
+
88598
89026
 
88599
89027
  this.GetKLineInfo=function(chart)
88600
89028
  {
@@ -88701,6 +89129,10 @@ function KLineRightMenu(divElement)
88701
89129
  {
88702
89130
  text:"工具",
88703
89131
  children:this.GetTools(chart)
89132
+ },
89133
+ {
89134
+ text:"背景分割",
89135
+ children:this.GetBGSplit(chart)
88704
89136
  }
88705
89137
  ];
88706
89138
 
@@ -119777,6 +120209,12 @@ function GetBlackStyle()
119777
120209
  TextColor:"rgb(255,255,255)",
119778
120210
  //Font:14*GetDevicePixelRatio() +"px 微软雅黑"
119779
120211
  },
120212
+
120213
+ SessionBreaksPaint:
120214
+ {
120215
+ BGColor:[null, "rgb(42,46,57)"],
120216
+ SplitLine:{ Color:'rgb(73,133,231)', Width:1*GetDevicePixelRatio(), Dash:[5*GetDevicePixelRatio(),5*GetDevicePixelRatio()] }
120217
+ },
119780
120218
 
119781
120219
  //成交明细
119782
120220
  DealList:
@@ -130235,7 +130673,7 @@ function ScrollBarBGChart()
130235
130673
 
130236
130674
 
130237
130675
 
130238
- var HQCHART_VERSION="1.1.13058";
130676
+ var HQCHART_VERSION="1.1.13064";
130239
130677
 
130240
130678
  function PrintHQChartVersion()
130241
130679
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.13058";
8
+ var HQCHART_VERSION="1.1.13064";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -48726,6 +48726,10 @@ HQData.NetworkFilter=function(data, callback)
48726
48726
  HQData.AnnouncementInfo_RequestData(data,callback);
48727
48727
  break;
48728
48728
 
48729
+ case "JSSymbolData::GetLatestData":
48730
+ HQData.RequestLatestData(data,callback);
48731
+ break;
48732
+
48729
48733
 
48730
48734
 
48731
48735
 
@@ -48958,6 +48962,39 @@ HQData.TradeDetail_RequestData=function(data,callback)
48958
48962
  callback(TEST_TRADE_DETAL_DATA);
48959
48963
  }
48960
48964
 
48965
+ HQData.RequestLatestData=function(data,callback)
48966
+ {
48967
+ data.PreventDefault=true;
48968
+ var symbol=data.Request.Data.symbol[0];
48969
+ var id=data.Args[0];
48970
+ var value=1;
48971
+ switch(id)
48972
+ {
48973
+ case 3:
48974
+ value=KLINE_1DAY_DATA.stock[0].yclose;
48975
+ break;
48976
+ case 4:
48977
+ value=KLINE_1DAY_DATA.stock[0].open;
48978
+ break;
48979
+ case 5:
48980
+ value=KLINE_1DAY_DATA.stock[0].high;
48981
+ break;
48982
+ case 6:
48983
+ value=KLINE_1DAY_DATA.stock[0].low;
48984
+ break;
48985
+ case 7:
48986
+ value=KLINE_1DAY_DATA.stock[0].price;
48987
+ break;
48988
+ case 8:
48989
+ value=KLINE_1DAY_DATA.stock[0].vol;
48990
+ break;
48991
+ }
48992
+
48993
+ var hqchartData={ symbol:symbol, ver:2.0, data:[ {id:id, value:value }]};
48994
+
48995
+ callback(hqchartData);
48996
+ }
48997
+
48961
48998
 
48962
48999
  /*暴露外部用的方法*/
48963
49000
  export default