hqchart 1.1.14995 → 1.1.15002

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.
@@ -2573,9 +2573,11 @@ if(this.BorderLine==null){if(this.IsDrawRightBorder||this.IsDrawLeftBorder){this
2573
2573
  this.Canvas.stroke();
2574
2574
  }
2575
2575
  */};//画标题背景色
2576
- this.DrawTitleBG=function(){if(this.ChartBorder.TitleHeight<=0)return;var border=this.GetBorder();var left=ToFixedPoint(border.Left);var top=ToFixedPoint(border.Top);var right=ToFixedPoint(border.Right);var bottom=ToFixedPoint(this.ChartBorder.GetTopTitle());var width=right-left;var height=bottom-top;this.Canvas.fillStyle=this.TitleBGColor;this.Canvas.fillRect(left,top,width,height);if(this.IsDrawTitleBottomLine){this.Canvas.strokeStyle=this.PenBorder;this.Canvas.beginPath();this.Canvas.moveTo(left,ToFixedPoint(border.TopTitle));this.Canvas.lineTo(right,ToFixedPoint(border.TopTitle));this.Canvas.stroke();}};this.DrawLock=function(){if(this.IsLocked){if(this.LockPaint==null)this.LockPaint=new ChartLock();this.LockPaint.Canvas=this.Canvas;this.LockPaint.ChartBorder=this.ChartBorder;this.LockPaint.ChartFrame=this;this.LockPaint.Draw(true);}};this.DrawLogo=function(){var border=this.GetBorder();var text=g_JSChartResource.FrameLogo.Text;if(!IFrameSplitOperator.IsString(text))return;this.Canvas.font=this.LogoTextFont;this.Canvas.textAlign='left';this.Canvas.textBaseline='bottom';var height=this.Canvas.measureText("").width;var width=this.Canvas.measureText(text).width;if(this.IsHScreen){var x=border.Left+5;var y=border.Top+5;this.Canvas.save();this.Canvas.translate(x,y);this.Canvas.rotate(90*Math.PI/180);var rtBG={Left:0,Bottom:0,Width:width+4,Height:height+4};rtBG.Top=rtBG.Bottom-rtBG.Height;rtBG.Right=rtBG.Left+rtBG.Width;if(this.LogoBGColor){this.Canvas.fillStyle=this.LogoBGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}this.Canvas.fillStyle=this.LogoTextColor;this.Canvas.fillText(text,1,0);this.Canvas.restore();}else{var rtBG={Left:border.Left+5,Bottom:border.Bottom-5,Width:width+4,Height:height+4};rtBG.Top=rtBG.Bottom-rtBG.Height;rtBG.Right=rtBG.Left+rtBG.Width;if(this.LogoBGColor){this.Canvas.fillStyle=this.LogoBGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}var x=rtBG.Left+1;var y=rtBG.Bottom-1;this.Canvas.fillStyle=this.LogoTextColor;this.Canvas.fillText(text,x,y);}};this.CalculateLock=function(){if(this.IsLocked){if(this.LockPaint==null)this.LockPaint=new ChartLock();this.LockPaint.Canvas=this.Canvas;this.LockPaint.ChartBorder=this.ChartBorder;this.LockPaint.ChartFrame=this;this.LockPaint.Draw(false);}};//设施上锁
2576
+ this.DrawTitleBG=function(){if(this.ChartBorder.TitleHeight<=0)return;var border=this.GetBorder();var left=ToFixedPoint(border.Left);var top=ToFixedPoint(border.Top);var right=ToFixedPoint(border.Right);var bottom=ToFixedPoint(this.ChartBorder.GetTopTitle());var width=right-left;var height=bottom-top;this.Canvas.fillStyle=this.TitleBGColor;this.Canvas.fillRect(left,top,width,height);if(this.IsDrawTitleBottomLine){this.Canvas.strokeStyle=this.PenBorder;this.Canvas.beginPath();this.Canvas.moveTo(left,ToFixedPoint(border.TopTitle));this.Canvas.lineTo(right,ToFixedPoint(border.TopTitle));this.Canvas.stroke();}};this.DrawLock=function(){if(this.IsLocked){if(this.LockPaint==null)this.LockPaint=g_ChartPaintFactory.Create("ChartLock");//new ChartLock();
2577
+ this.LockPaint.Canvas=this.Canvas;this.LockPaint.ChartBorder=this.ChartBorder;this.LockPaint.ChartFrame=this;this.LockPaint.Draw(true);}};this.DrawLogo=function(){var border=this.GetBorder();var text=g_JSChartResource.FrameLogo.Text;if(!IFrameSplitOperator.IsString(text))return;this.Canvas.font=this.LogoTextFont;this.Canvas.textAlign='left';this.Canvas.textBaseline='bottom';var height=this.Canvas.measureText("擎").width;var width=this.Canvas.measureText(text).width;if(this.IsHScreen){var x=border.Left+5;var y=border.Top+5;this.Canvas.save();this.Canvas.translate(x,y);this.Canvas.rotate(90*Math.PI/180);var rtBG={Left:0,Bottom:0,Width:width+4,Height:height+4};rtBG.Top=rtBG.Bottom-rtBG.Height;rtBG.Right=rtBG.Left+rtBG.Width;if(this.LogoBGColor){this.Canvas.fillStyle=this.LogoBGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}this.Canvas.fillStyle=this.LogoTextColor;this.Canvas.fillText(text,1,0);this.Canvas.restore();}else{var rtBG={Left:border.Left+5,Bottom:border.Bottom-5,Width:width+4,Height:height+4};rtBG.Top=rtBG.Bottom-rtBG.Height;rtBG.Right=rtBG.Left+rtBG.Width;if(this.LogoBGColor){this.Canvas.fillStyle=this.LogoBGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}var x=rtBG.Left+1;var y=rtBG.Bottom-1;this.Canvas.fillStyle=this.LogoTextColor;this.Canvas.fillText(text,x,y);}};this.CalculateLock=function(){if(this.IsLocked){if(this.LockPaint==null)this.LockPaint=g_ChartPaintFactory.Create("ChartLock");// new ChartLock();
2578
+ this.LockPaint.Canvas=this.Canvas;this.LockPaint.ChartBorder=this.ChartBorder;this.LockPaint.ChartFrame=this;this.LockPaint.Draw(false);}};//设施上锁
2577
2579
  this.SetLock=function(lockData){if(!lockData)//空数据不上锁
2578
- {this.IsLocked=false;return;}this.IsLocked=true;if(!this.LockPaint)this.LockPaint=new ChartLock();//创建锁
2580
+ {this.IsLocked=false;return;}this.IsLocked=true;if(!this.LockPaint)this.LockPaint=g_ChartPaintFactory.Create("ChartLock");//new ChartLock(); //创建锁
2579
2581
  if(lockData.Callback)this.LockPaint.Callback=lockData.Callback;//回调
2580
2582
  if(lockData.IndexName)this.LockPaint.IndexName=lockData.IndexName;//指标名字
2581
2583
  if(lockData.ID)this.LockPaint.LockID=lockData.ID;//锁ID
@@ -2651,7 +2653,7 @@ if(rightExtendLine&&rightExtendLine.Width>1){var lineLength=rightExtendLine.Widt
2651
2653
  {var text=item.Message[1][0];if(item.TextColor2)this.Canvas.fillStyle=item.TextColor2;if(rightExtendText&&rightExtendText.Align===2&&this.YRightTextInfo)//右对齐
2652
2654
  {this.Canvas.textAlign="right";var xRight=this.YRightTextInfo.MainTextWidth+right-this.YTextPadding[1];this.Canvas.fillText(text,xRight,yText);}else{this.Canvas.fillText(text,xText+this.YTextPadding[1],yText);}}}else{//计算显示的区域
2653
2655
  rtRight=this.GetTextTopBottom(textBaseline,yText);if(!rtPreRight||rtRight&&!this.IsTextTopBottomOverlap(rtRight,rtPreRight)){if(item.TextColor2)this.Canvas.fillStyle=item.TextColor2;if(rightExtendText&&rightExtendText.Align===2&&this.YRightTextInfo)//右对齐
2654
- {this.Canvas.textAlign="right";var xRight=this.YRightTextInfo.MainTextWidth+right-this.YTextPadding[1];this.Canvas.fillText(item.Message[1],xRight,yText+yOffset);}else{this.Canvas.fillText(item.Message[1],xText+this.YTextPadding[1],yText+yOffset);}rtPreRight=rtRight;}}}yPrev=y;}if(IFrameSplitOperator.IsNonEmptyArray(aryLeftMulitText)&&this.MultiTextFormat==1)this.DrawMultiCoordinateLeftText(aryLeftMulitText);if(IFrameSplitOperator.IsNonEmptyArray(aryMultiText)&&this.MultiTextFormat==1)this.DrawMultiCoordinateRightText(aryMultiText);if(isDrawRight&&this.IsDrawRightBorder&&this.YRightTextInfo){var xRight=this.YRightTextInfo.MainTextWidth+right;xLine=ToFixedPoint(xRight);this.Canvas.strokeStyle=this.PenBorder;this.Canvas.beginPath();this.Canvas.moveTo(xLine,top);this.Canvas.lineTo(xLine,bottom);this.Canvas.stroke();if(IFrameSplitOperator.IsNonEmptyArray(this.YRightTextInfo.AryOverlayWidth)){this.Canvas.beginPath();for(var i=0;i<this.YRightTextInfo.AryOverlayWidth.length;++i){var width=this.YRightTextInfo.AryOverlayWidth[i];xRight+=width;xLine=ToFixedPoint(xRight);this.Canvas.moveTo(xLine,top);this.Canvas.lineTo(xLine,bottom);}this.Canvas.stroke();}}};this.CreateMulitCoordinateItem=function(aryData,x,y,textBaseline,data){var coordinateItem={AryText:[],X:x,Y:y,TextBaseline:textBaseline,Item:data};for(var i=0;i<aryData.length;++i){var item=aryData[i];if(item.Font)this.Canvas.font=item.Font;var textWidth=0;if(item.Text)textWidth=this.Canvas.measureText(item.Text).width;coordinateItem.AryText.push({Width:textWidth,Item:item});}return coordinateItem;};this.GetMulitCoordinateItemTextWidth=function(aryData){var total=0;for(var i=0;i<aryData.length;++i){var item=aryData[i];if(item.Font)this.Canvas.font=item.Font;var width=this.Canvas.measureText(item.Text).width;total+=width;}return total;};//多行文字刻度输出 obj={ Data:, X:, Y:, TextBaseLine:, IsLeft:, Item:刻度数据 }
2656
+ {this.Canvas.textAlign="right";var xRight=this.YRightTextInfo.MainTextWidth+right-this.YTextPadding[1];this.Canvas.fillText(item.Message[1],xRight,yText+yOffset);}else{this.Canvas.fillText(item.Message[1],xText+this.YTextPadding[1],yText+yOffset);}rtPreRight=rtRight;}}}yPrev=y;}if(IFrameSplitOperator.IsNonEmptyArray(aryLeftMulitText)&&this.MultiTextFormat==1)this.DrawMultiCoordinateLeftText(aryLeftMulitText);if(IFrameSplitOperator.IsNonEmptyArray(aryMultiText)&&this.MultiTextFormat==1)this.DrawMultiCoordinateRightText(aryMultiText);if(isDrawRight&&this.IsDrawRightBorder&&this.YRightTextInfo){var xRight=this.YRightTextInfo.MainTextWidth+right;var xLine=ToFixedPoint(xRight);this.Canvas.strokeStyle=this.PenBorder;this.Canvas.beginPath();this.Canvas.moveTo(xLine,top);this.Canvas.lineTo(xLine,bottom);this.Canvas.stroke();if(IFrameSplitOperator.IsNonEmptyArray(this.YRightTextInfo.AryOverlayWidth)){this.Canvas.beginPath();for(var i=0;i<this.YRightTextInfo.AryOverlayWidth.length;++i){var width=this.YRightTextInfo.AryOverlayWidth[i];xRight+=width;xLine=ToFixedPoint(xRight);this.Canvas.moveTo(xLine,top);this.Canvas.lineTo(xLine,bottom);}this.Canvas.stroke();}}};this.CreateMulitCoordinateItem=function(aryData,x,y,textBaseline,data){var coordinateItem={AryText:[],X:x,Y:y,TextBaseline:textBaseline,Item:data};for(var i=0;i<aryData.length;++i){var item=aryData[i];if(item.Font)this.Canvas.font=item.Font;var textWidth=0;if(item.Text)textWidth=this.Canvas.measureText(item.Text).width;coordinateItem.AryText.push({Width:textWidth,Item:item});}return coordinateItem;};this.GetMulitCoordinateItemTextWidth=function(aryData){var total=0;for(var i=0;i<aryData.length;++i){var item=aryData[i];if(item.Font)this.Canvas.font=item.Font;var width=this.Canvas.measureText(item.Text).width;total+=width;}return total;};//多行文字刻度输出 obj={ Data:, X:, Y:, TextBaseLine:, IsLeft:, Item:刻度数据 }
2655
2657
  this.DrawMultiLineText=function(obj){var lineSpacing=2;var lineHeight=this.Canvas.measureText('擎').width;var lineCount=obj.Data.length;var textHeight=lineHeight*lineCount+lineSpacing*(lineCount-1);var yText=obj.Y;if(obj.Item.Font!=null)this.Canvas.font=obj.Item.Font;if(obj.IsLeft){this.Canvas.textAlign="right";var xText=obj.X-obj.TextPadding;}else{this.Canvas.textAlign="left";var xText=obj.X+obj.TextPadding;}var textBaseline=this.Canvas.textBaseline;//备份下原来的对齐方式
2656
2658
  this.Canvas.textBaseline='top';if(obj.TextBaseLine==1)//middle
2657
2659
  {yText-=textHeight/2;}else if(obj.TextBaseLine==0)//top
@@ -3623,7 +3625,7 @@ ChartData.GetPeriodName=function(period){var mapName=new _map2.default([[0,'日
3623
3625
  function ChartPaintFactory(){//[key:name, { Create:function(option) { return new class(); }} ]
3624
3626
  this.DataMap=new _map2.default([["ChartKLine",{Create:function Create(option){return new ChartKLine();}}],//K线图
3625
3627
  ["ChartMinuteVolumBar",{Create:function Create(option){return new ChartMinuteVolumBar();}}],//分时成交量柱子
3626
- ["ChartMinutePriceLine",{Create:function Create(option){return new ChartMinutePriceLine();}}],["ChartMinuteBuySellBar",{Create:function Create(option){return new ChartMinuteBuySellBar();}}],["ChartMinuteBarCallAuction",{Create:function Create(option){return new ChartMinuteBarCallAuction();}}]]);this.Create=function(name,option){if(!this.DataMap.has(name)){JSConsole.Chart.Warn('[ChartPaintFactory::Create] can\'t find class='+name+'.');return null;}var item=this.DataMap.get(name);return item.Create(option);};this.Add=function(name,option){this.DataMap.set(name,{Create:option.Create});};}var g_ChartPaintFactory=new ChartPaintFactory();//图新画法接口类
3628
+ ["ChartMinutePriceLine",{Create:function Create(option){return new ChartMinutePriceLine();}}],["ChartMinuteBuySellBar",{Create:function Create(option){return new ChartMinuteBuySellBar();}}],["ChartMinuteBarCallAuction",{Create:function Create(option){return new ChartMinuteBarCallAuction();}}],["ChartLock",{Create:function Create(option){return new ChartLock();}}]]);this.Create=function(name,option){if(!this.DataMap.has(name)){JSConsole.Chart.Warn('[ChartPaintFactory::Create] can\'t find class='+name+'.');return null;}var item=this.DataMap.get(name);return item.Create(option);};this.Add=function(name,option){this.DataMap.set(name,{Create:option.Create});};}var g_ChartPaintFactory=new ChartPaintFactory();//图新画法接口类
3627
3629
  function IChartPainting(){this.Canvas;//画布
3628
3630
  this.ChartBorder;//边框信息
3629
3631
  this.ChartFrame;//框架画法
@@ -5136,7 +5138,7 @@ if(upperSymbol)isFutures=MARKET_SUFFIX_NAME.IsFutures(upperSymbol);//国内期
5136
5138
  var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);if(drawData.Type==0)//连续交易
5137
5139
  {var item=drawData.Data;if(!item)return;this.YClose=item.YClose;if(isFutures&&IFrameSplitOperator.IsNumber(item.YClearing))this.YClose=item.YClearing;var titleItem=this.FormatDate(item.Date);if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtTime(item.Time,"HH:MM",'PCTooltip-Time');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtPrice(item.Close,defaultfloatPrecision,'PCTooltip-Price');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtPrice(item.AvPrice,defaultfloatPrecision,'PCTooltip-AvPrice');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtIncrease(item.Close,"PCTooltip-Increase");if(titleItem)aryText.push(titleItem);var titleItem=this.FormatVol(item.Vol/unit,'PCTooltip-Vol');if(titleItem)aryText.push(titleItem);if(IFrameSplitOperator.IsNumber(item.Amount)){var titleItem={Title:g_JSChartLocalization.GetText('PCTooltip-Amount',this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FromatIntegerString(item.Amount,2,this.LanguageID),TextColor:this.AmountColor};aryText.push(titleItem);}if(isFutures&&IFrameSplitOperator.IsNumber(item.Position))//持仓
5138
5140
  {var titleItem=this.FormatPosition(item.Position,'PCTooltip-Position');if(titleItem)aryText.push(titleItem);}}else if(drawData.Type==1)//集合竞价
5139
- {var item=drawData.Data.Data;if(!item)return;this.YClose=item.YClose;if(isFutures&&IFrameSplitOperator.IsNumber(item.YClearing))this.YClose=item.YClearing;var titleItem=this.FormatDate(item.Date);if(titleItem)aryText.push(titleItem);var timeForamt="HH:MM:SS";if(item.Ver===1)timeForamt="HH:MM";var titleItem=this.ForamtTime(item.Time,timeForamt,'PCTooltip-Time');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtPrice(item.Price,defaultfloatPrecision,'PCTooltip-AC-Price');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtIncrease(item.Price,"PCTooltip-AC-Increase");if(titleItem)aryText.push(titleItem);if(IFrameSplitOperator.IsNonEmptyArray(item.Vol)){var titleItem=this.FormatVol(item.Vol[0]/unit,'PCTooltip-AC-Vol');if(titleItem)aryText.push(titleItem);var titleItem=this.FormatVol(item.Vol[1]/unit,'PCTooltip-AC-NotMatchVol');if(titleItem)aryText.push(titleItem);}}return aryText;};this.GetColor=function(price,yclse){if(price>yclse)return this.UpColor;else if(price<yclse)return this.DownColor;else return this.UnchagneColor;};this.FormatDate=function(date){if(!IFrameSplitOperator.IsNumber(date))return null;var titleItem={Title:g_JSChartLocalization.GetText('PCTooltip-Date',this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FormatDateString(date,"MM-DD",this.LanguageID),TextColor:this.DateTimeColor};return titleItem;};this.ForamtTime=function(time,format,TitleID){if(!IFrameSplitOperator.IsNumber(time))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FormatTimeString(time,format,this.LanguageID),TextColor:this.DateTimeColor};return titleItem;};this.ForamtPrice=function(price,defaultfloatPrecision,TitleID){if(!IFrameSplitOperator.IsNumber(price))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:price.toFixed(defaultfloatPrecision),TextColor:this.GetColor(price,this.YClose)};return titleItem;};this.ForamtIncrease=function(price,TitleID){if(!IFrameSplitOperator.IsNumber(price)||price==0)return null;var value=(price-this.YClose)/this.YClose*100;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:value.toFixed(2)+'%',TextColor:this.GetColor(value,0)};if(this.YClose===0){titleItem.Text="--.--";titleItem.TextColor=this.TitleColor;}return titleItem;};this.FormatVol=function(vol,TitleID){if(!IFrameSplitOperator.IsNumber(vol))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FromatIntegerString(vol,2,this.LanguageID),TextColor:this.VolColor};return titleItem;};this.FormatPosition=function(value,TitleID){if(!IFrameSplitOperator.IsNumber(value))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:value.toFixed(0),TextColor:this.PositionColor};return titleItem;};}//股票信息
5141
+ {var item=drawData.Data.Data;if(!item)return;var version=drawData.Data.Ver;this.YClose=item.YClose;if(isFutures&&IFrameSplitOperator.IsNumber(item.YClearing))this.YClose=item.YClearing;var titleItem=this.FormatDate(item.Date);if(titleItem)aryText.push(titleItem);var timeForamt="HH:MM:SS";if(version===1)timeForamt="HH:MM";var titleItem=this.ForamtTime(item.Time,timeForamt,'PCTooltip-Time');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtPrice(item.Price,defaultfloatPrecision,'PCTooltip-AC-Price');if(titleItem)aryText.push(titleItem);var titleItem=this.ForamtIncrease(item.Price,"PCTooltip-AC-Increase");if(titleItem)aryText.push(titleItem);if(IFrameSplitOperator.IsNonEmptyArray(item.Vol)){var titleItem=this.FormatVol(item.Vol[0]/unit,'PCTooltip-AC-Vol');if(titleItem)aryText.push(titleItem);var titleItem=this.FormatVol(item.Vol[1]/unit,'PCTooltip-AC-NotMatchVol');if(titleItem)aryText.push(titleItem);}}return aryText;};this.GetColor=function(price,yclse){if(price>yclse)return this.UpColor;else if(price<yclse)return this.DownColor;else return this.UnchagneColor;};this.FormatDate=function(date){if(!IFrameSplitOperator.IsNumber(date))return null;var titleItem={Title:g_JSChartLocalization.GetText('PCTooltip-Date',this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FormatDateString(date,"MM-DD",this.LanguageID),TextColor:this.DateTimeColor};return titleItem;};this.ForamtTime=function(time,format,TitleID){if(!IFrameSplitOperator.IsNumber(time))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FormatTimeString(time,format,this.LanguageID),TextColor:this.DateTimeColor};return titleItem;};this.ForamtPrice=function(price,defaultfloatPrecision,TitleID){if(!IFrameSplitOperator.IsNumber(price))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:price.toFixed(defaultfloatPrecision),TextColor:this.GetColor(price,this.YClose)};return titleItem;};this.ForamtIncrease=function(price,TitleID){if(!IFrameSplitOperator.IsNumber(price)||price==0)return null;var value=(price-this.YClose)/this.YClose*100;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:value.toFixed(2)+'%',TextColor:this.GetColor(value,0)};if(this.YClose===0){titleItem.Text="--.--";titleItem.TextColor=this.TitleColor;}return titleItem;};this.FormatVol=function(vol,TitleID){if(!IFrameSplitOperator.IsNumber(vol))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:IFrameSplitOperator.FromatIntegerString(vol,2,this.LanguageID),TextColor:this.VolColor};return titleItem;};this.FormatPosition=function(value,TitleID){if(!IFrameSplitOperator.IsNumber(value))return null;var titleItem={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),TitleColor:this.TitleColor,Text:value.toFixed(0),TextColor:this.PositionColor};return titleItem;};}//股票信息
5140
5142
  function StockInfoExtendChartPaint(){this.newMethod=IExtendChartPainting;//派生
5141
5143
  this.newMethod();delete this.newMethod;this.Left=80;this.Right=1;this.Top=1;this.Bottom=1;this.BorderColor=g_JSChartResource.FrameBorderPen;this.Symbol;this.Name;this.TitleFont=["14px 微软雅黑"];this.Draw=function(){var left=this.ChartBorder.GetRight()+this.Left;var right=this.ChartBorder.GetChartWidth()-this.Right;var y=this.Top+18;var middle=left+(right-left)/2;if(this.Symbol&&this.Name){this.Canvas.font=this.TitleFont[0];this.Canvas.textAlign="right";this.Canvas.textBaseline="bottom";this.Canvas.fillText(this.Symbol,middle-2,y);this.Canvas.textAlign="left";this.Canvas.fillText(this.Name,middle+2,y);}this.Canvas.strokeStyle=this.BorderColor;this.Canvas.moveTo(left,y);this.Canvas.lineTo(right,y);this.Canvas.stroke();y+=30;this.DrawBorder();};this.DrawBorder=function(){var left=this.ChartBorder.GetRight()+this.Left;var right=this.ChartBorder.GetChartWidth()-this.Right;var top=this.Top;var bottom=this.ChartBorder.GetChartHeight()-this.Bottom;this.Canvas.strokeStyle=this.BorderColor;this.Canvas.strokeRect(left,top,right-left,bottom-top);};}//筹码分布
5142
5144
  function StockChip(){this.newMethod=IExtendChartPainting;//派生
@@ -8951,7 +8953,7 @@ this.GetRightMenuData=function(frameID,option){var windowCount=this.Frame.SubFra
8951
8953
  var aryOverlaySymbol=[];//叠加的股票列表
8952
8954
  for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(item&&item.Symbol)aryOverlaySymbol.push(item.Symbol);}var bShowCorss=false;//十字光标十字线
8953
8955
  var bCorssDrawCloseLine=false;//十字光标只能画在走势图价格线上
8954
- var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;var bCorssBCClick=false;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawCloseLine=this.ChartCorssCursor.IsOnlyDrawMinute;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;bCorssBCClick=this.ChartCorssCursor.EnableDBClick;}var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var bShowBuySellBar=this.IsShowMinuteBuySellBar();var minItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+parseInt(option.CursorIndex.toFixed(0));if(dataIndex>=0&&dataIndex<kData.Data.length)minItem=kData.Data[dataIndex];}}var aryMenu=[{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"多日分时图",SubMenu:[{Name:"当日分时图",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[1]},Checked:this.DayCount==1},{Name:"最近2日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[2]},Checked:this.DayCount==2},{Name:"最近3日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[3]},Checked:this.DayCount==3},{Name:"最近4日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[4]},Checked:this.DayCount==4},{Name:"最近5日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[5]},Checked:this.DayCount==5},{Name:"基准线选择",SubMenu:[{Name:"最新昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[0]},Checked:this.BaselineType===0},{Name:"多日前昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[1]},Checked:this.BaselineType===1}]}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:3==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:4==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:5==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:6==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:7==windowCount}]},{Name:"指标切换",SubMenu:[{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMI"]}},{Name:"DMA",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMA"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"CCI"]}},{Name:"TRIX",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"TRIX"]}}]},{Name:"区间选择",SubMenu:[{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"画在价格线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID,Args:[!bCorssDrawCloseLine]},Checked:bCorssDrawCloseLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint},{Name:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick}]},{Name:"其他设置",SubMenu:[{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"盘口分析",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_BUYSELL_BAR_ID,Args:[!bShowBuySellBar]},Checked:bShowBuySellBar},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]}]}];if(MARKET_SUFFIX_NAME.IsSHSZStockA(this.Symbol)){var item={Name:"集合竞价",SubMenu:[]};var bShow=this.IsShowAfterData&&this.IsShowBeforeData;var subItem={Name:"盘后盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!bShow,Right:!bShow}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!this.IsShowBeforeData}]},Checked:this.IsShowBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Right:!this.IsShowAfterData}]},Checked:this.IsShowAfterData};item.SubMenu.push(subItem);var bShow=this.IsShowMultiDayBeforeData&&this.IsShowMultiDayAfterData;var subItem={Name:"盘后盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!bShow,Right:!bShow}}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!this.IsShowMultiDayBeforeData}}]},Checked:this.IsShowMultiDayBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Right:!this.IsShowMultiDayAfterData}}]},Checked:this.IsShowMultiDayAfterData};item.SubMenu.push(subItem);aryMenu.splice(4,0,item);}for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="叠加品种")//删除菜单
8956
+ var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;var bCorssBCClick=false;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawCloseLine=this.ChartCorssCursor.IsOnlyDrawMinute;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;bCorssBCClick=this.ChartCorssCursor.EnableDBClick;}var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var bShowBuySellBar=this.IsShowMinuteBuySellBar();var minItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+parseInt(option.CursorIndex.toFixed(0));if(dataIndex>=0&&dataIndex<kData.Data.length)minItem=kData.Data[dataIndex];}}var aryMenu=[{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"多日分时图",SubMenu:[{Name:"当日分时图",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[1]},Checked:this.DayCount==1},{Name:"最近2日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[2]},Checked:this.DayCount==2},{Name:"最近3日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[3]},Checked:this.DayCount==3},{Name:"最近4日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[4]},Checked:this.DayCount==4},{Name:"最近5日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[5]},Checked:this.DayCount==5},{Name:"基准线选择",SubMenu:[{Name:"最新昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[0]},Checked:this.BaselineType===0},{Name:"多日前昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[1]},Checked:this.BaselineType===1}]}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:3==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:4==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:5==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:6==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:7==windowCount}]},{Name:"指标切换",SubMenu:[{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMI"]}},{Name:"DMA",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMA"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"CCI"]}},{Name:"TRIX",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"TRIX"]}}]},{Name:"区间选择",SubMenu:[{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"画在价格线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID,Args:[!bCorssDrawCloseLine]},Checked:bCorssDrawCloseLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint},{Name:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick}]},{Name:"其他设置",SubMenu:[{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"盘口分析",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_BUYSELL_BAR_ID,Args:[!bShowBuySellBar]},Checked:bShowBuySellBar},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]}]}];if(MARKET_SUFFIX_NAME.IsEnableCallAuction(this.Symbol)){var item={Name:"集合竞价",SubMenu:[]};var bShow=this.IsShowAfterData&&this.IsShowBeforeData;var subItem={Name:"盘后盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!bShow,Right:!bShow}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!this.IsShowBeforeData}]},Checked:this.IsShowBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Right:!this.IsShowAfterData}]},Checked:this.IsShowAfterData};item.SubMenu.push(subItem);var bShow=this.IsShowMultiDayBeforeData&&this.IsShowMultiDayAfterData;var subItem={Name:"盘后盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!bShow,Right:!bShow}}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!this.IsShowMultiDayBeforeData}}]},Checked:this.IsShowMultiDayBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Right:!this.IsShowMultiDayAfterData}}]},Checked:this.IsShowMultiDayAfterData};item.SubMenu.push(subItem);aryMenu.splice(4,0,item);}for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="叠加品种")//删除菜单
8955
8957
  {for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"取消叠加",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_OVERLAY_SYMBOL_ID}});break;}}}else if(item.Name=="十字光标"){if(minItem){var bLocked=this.IsLockCorssCursor();if(bLocked)item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR},Checked:bLocked});else item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR,Args:[{KItem:{Date:minItem.Date,Time:minItem.Time},Draw:true}]},Checked:bLocked});}}}return aryMenu;};this.OnWheel=function(e){JSConsole.Chart.Log('[MinuteChartContainer::OnWheel]',e);if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var isInClient=false;var rtClient={Left:this.Frame.ChartBorder.GetLeft(),Right:this.Frame.ChartBorder.GetRight(),Top:this.Frame.ChartBorder.GetTop(),Bottom:this.Frame.ChartBorder.GetBottom(),Width:this.Frame.ChartBorder.GetWidth(),Height:this.Frame.ChartBorder.GetHeight()};if(x>=rtClient.Left&&x<=rtClient.Right&&y>=rtClient.Top&&y<=rtClient.Bottom)isInClient=true;var bPreventDefault=false;if(this.OnWheel_ChangeDayCount(e,x,y))//ctrl+上下滚轴
8956
8958
  {bPreventDefault=true;}else{if(this.OnWheel_ZoomUpDownFrameY(e,x,y))bPreventDefault=true;}if(bPreventDefault){if(e.preventDefault)e.preventDefault();else e.returnValue=false;}};//通过滚轴缩放Y轴
8957
8959
  this.OnWheel_ZoomUpDownFrameY=function(e,x,y){if(!this.EnableYDrag.Wheel)return false;var frameID=this.Frame.PtInFrame(x,y);if(frameID<0)return false;var frame=this.Frame.SubFrame[frameID].Frame;var splitOper=frame.YSplitOperator;if(!splitOper||!splitOper.FixedYMaxMin)return false;//Y轴缩放状态下才有效
@@ -9099,7 +9101,7 @@ if(stock&&IFrameSplitOperator.IsNumber(stock.yclose))item.YClose=stock.yclose;if
9099
9101
  this.UpdateLatestMinuteDataV2=function(minuteData){if(!minuteData||!IFrameSplitOperator.IsNonEmptyArray(minuteData.Data))return;if(this.DayCount>1){if(!this.DayData)return;var findItem=null;for(var i=0;i<this.DayData.length;++i){var item=this.DayData[i];if(item.Date===minuteData.Date){findItem=item;break;}}if(!findItem)return;var findIndex=-1;var firstItem=minuteData.Data[0];for(var i=0;i<findItem.Data.length;++i){var item=findItem.Data[i];if(item.Date==firstItem.Date&&item.Time==firstItem.Time){findIndex=i;break;}}if(findIndex<0)findIndex=findItem.Data.length;for(var i=0,j=findIndex;i<minuteData.Data.length;++i,++j){var item=minuteData.Data[i];findItem.Data[j]=item;}}else{if(!this.SourceData)return;var findIndex=-1;var firstItem=minuteData.Data[0];for(var i=0;i<this.SourceData.Data.length;++i){var item=this.SourceData.Data[i];if(item.Date==firstItem.Date&&item.Time==firstItem.Time){findIndex=i;break;}}if(findIndex<0)findIndex=this.SourceData.Data.length;for(var i=0,j=findIndex;i<minuteData.Data.length;++i,++j){var item=minuteData.Data[i];this.SourceData.Data[j]=item;}}};//请求分钟数据
9100
9102
  this.RequestMinuteData=function(){var self=this;var fields=["name","symbol","yclose","open","price","high","low","vol","amount","date","time","minute","minutecount"];var upperSymbol=this.Symbol.toUpperCase();if(MARKET_SUFFIX_NAME.IsFutures(upperSymbol)){//期货的需要加上结算价
9101
9103
  fields.push("clearing");fields.push("yclearing");}// 盘前数据(A股)
9102
- this.IsBeforeData=false;if(this.IsShowBeforeData&&this.DayCount===1&&MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol)){this.IsBeforeData=true;fields.push('before');}this.IsAfterData=false;if(this.IsShowAfterData&&this.DayCount===1&&MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol)){this.IsAfterData=true;}//5档买卖盘
9104
+ this.IsBeforeData=false;if(this.IsShowBeforeData&&this.DayCount===1&&MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol)){this.IsBeforeData=true;fields.push('before');}this.IsAfterData=false;if(this.IsShowAfterData&&this.DayCount===1&&MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol)){this.IsAfterData=true;fields.push('after');}//5档买卖盘
9103
9105
  var bBuySellBar=this.IsShowMinuteBuySellBar();if(this.NetworkFilter){var dateRange=null;if(this.DayCount>1){if(IFrameSplitOperator.IsNonEmptyArray(this.DayData)){var dayData=this.DayData[0];dateRange=dayData.GetDateRange();}}else{if(this.SourceData)dateRange=this.SourceData.GetDateRange();}var callCation={Before:this.IsShowBeforeData,After:this.IsShowAfterData//集合竞价
9104
9106
  };if(this.DayCount>1)callCation={Before:this.IsShowMultiDayBeforeData,After:this.IsShowMultiDayAfterData//多日集合竞价
9105
9107
  };callCation.Latest={Before:this.GetLatestBeforeOpenItem(),After:this.GetLatestAfterCloseItem()};//最新一条的盘前盘后数据
@@ -9340,7 +9342,7 @@ IsShowCorss:this.ChartCorssCursor.IsShowCorss,//是否显示十字线
9340
9342
  MinItem:minuteItem,Symbol:this.Symbol,Name:this.Name,LastValue:this.ChartCorssCursor.LastValue};this.DialogTooltip.Update(sendData);return true;};this.DrawSelectRectDialog=function(e){if(!this.DialogSelectRect)return;this.UpdateSelectRectDialog(e);};this.UpdateSelectRectDialog=function(e){if(!this.DialogSelectRect)return false;var data=e.data;//区间统计数据
9341
9343
  var x,y;if(data&&IFrameSplitOperator.IsNumber(data.X)&&IFrameSplitOperator.IsNumber(data.Y)){var pixelRatio=GetDevicePixelRatio();var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();x=data.X;y=data.Y;x+=rtClient.left+rtScroll.Left;y+=rtClient.top+rtScroll.Top;}var sendData={Symbol:this.Symbol,Name:this.Name,SelectData:data.SelectData,X:x,Y:y,e:e};this.DialogSelectRect.Update(sendData);};this.GetKData=function(){if(!this.SourceData)return null;var data=this.SourceData;if(!data)return null;return data;};//获取最新的一条盘前数据
9342
9344
  this.GetLatestBeforeOpenItem=function(){var lastItem=null;if(this.DayCount>1){if(!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))return null;var dayItem=this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1];if(!dayItem||!IFrameSplitOperator.IsNonEmptyArray(dayItem.Data))return null;var finder=dayItem.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}else{if(!this.BeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(this.BeforeOpenData.Data))return null;var finder=this.BeforeOpenData.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}return lastItem;};//获取最新的一条盘后数据
9343
- this.GetLatestAfterCloseItem=function(){var lastItem=null;if(this.DayCount>1){if(!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return null;var dayItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];if(!dayItem||!IFrameSplitOperator.IsNonEmptyArray(dayItem.Data))return null;var finder=dayItem.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}else{if(!this.AfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.AfterCloseData.Data))return null;var finder=this.AfterCloseData.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}return lastItem;};this.IsCallAuctionFrame=function(frameID){if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(frameID<0||frameID>=this.Frame.SubFrame.length)return false;var subItem=this.Frame.SubFrame[frameID];if(!subItem||!subItem.Frame)return false;var subFrame=subItem.Frame;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];if(item.ChartFrame&&item.ChartFrame.Guid==subFrame.Guid)return true;}return false;};}//盘前数据
9345
+ this.GetLatestAfterCloseItem=function(){var lastItem=null;if(this.DayCount>1){if(!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return null;var dayItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];if(!dayItem||!IFrameSplitOperator.IsNonEmptyArray(dayItem.Data))return null;var finder=dayItem.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}else{if(!this.AfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.AfterCloseData.Data))return null;var finder=this.AfterCloseData.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}return lastItem;};this.IsCallAuctionFrame=function(frameID){if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(frameID<0||frameID>=this.Frame.SubFrame.length)return false;var subItem=this.Frame.SubFrame[frameID];if(!subItem||!subItem.Frame)return false;var subFrame=subItem.Frame;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];if(item.ChartFrame&&item.ChartFrame.Guid==subFrame.Guid)return true;}return false;};this.TryClickLock=function(x,y){for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];if(!item.Frame.IsLocked)continue;if(!item.Frame.LockPaint)continue;var tooltip=new TooltipData();if(!item.Frame.LockPaint.GetTooltipData(x,y,tooltip))continue;tooltip.HQChart=this;if(tooltip.Data.Callback)tooltip.Data.Callback(tooltip);return true;}return false;};}//盘前数据
9344
9346
  MinuteChartContainer.JsonDataToBeforeOpenData=function(data){var symbol=data.stock[0].symbol;var upperSymbol=symbol.toUpperCase();var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);var yClose=data.stock[0].yclose;var preClose=data.stock[0].yclose;//前一个数据价格
9345
9347
  var stockData=data.stock[0];var date=stockData.date;//日期
9346
9348
  var beforeOpenData={Data:[],TotalCount:15,Ver:1.0,Date:date,YClose:stockData.yclose,YClearing:stockData.yclearing};var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA;//扩展数据序号
@@ -9887,7 +9889,11 @@ return false;},IsShowMinutePostionLine:function IsShowMinutePostionLine(upperSym
9887
9889
  {if(!MARKET_SUFFIX_NAME.IsSHSZStockA(symbol)&&!MARKET_SUFFIX_NAME.IsBJStock(symbol))return false;if(ChartData.IsTickPeriod(period))return false;//分笔没有复权
9888
9890
  if(IFrameSplitOperator.IsPlusNumber(rightFormula))return true;//复权因子复权
9889
9891
  if(ChartData.IsMinutePeriod(period,true))return false;//内置分钟K线不支持复权
9890
- return true;},//获取成交量单位
9892
+ return true;},IsEnableCallAuction:function IsEnableCallAuction(symbol)//是否支持集合竞价
9893
+ {if(MARKET_SUFFIX_NAME.IsSHSZStockA(symbol))return true;//A股
9894
+ if(MARKET_SUFFIX_NAME.IsBJStock(symbol))return true;//北交所
9895
+ if(MARKET_SUFFIX_NAME.IsSHSZIndex(symbol))return true;//指数
9896
+ return false;},//获取成交量单位
9891
9897
  GetVolUnit:function GetVolUnit(upperSymbol){if(!upperSymbol)return 1;if(MARKET_SUFFIX_NAME.IsSHSZETFOption(upperSymbol))return 1;//沪深ETF期权
9892
9898
  if(MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol))return 100;//单位手=100股
9893
9899
  if(MARKET_SUFFIX_NAME.IsBJ(upperSymbol))return 100;//单位手=100股
@@ -13878,7 +13884,7 @@ if(drawInfo.Tooltip){//Type:1=数据截断 4=提示信息
13878
13884
  var tooltipData={Rect:rtItem,Stock:stock,Index:index,Column:column,RowType:rowType,Type:drawInfo.Tooltip.Type,Data:drawInfo.Tooltip.Data};this.TooltipRect.push(tooltipData);}else if(column.ChartTooltip&&column.ChartTooltip.Enable&&IFrameSplitOperator.IsNumber(column.ChartTooltip.Type))//Type 20分时图 21K线图
13879
13885
  {var tooltipData={Rect:rtItem,Stock:stock,Index:index,Column:column,RowType:rowType,Type:column.ChartTooltip.Type};this.TooltipRect.push(tooltipData);}if(drawInfo.Botton){var buttonData={Stock:stock,Index:index,ColumnIndex:columnIndex,Column:column,Rect:drawInfo.Botton.Rect,Type:drawInfo.Botton.Type,Data:drawInfo.Data};this.ButtonRect.push(buttonData);}};this.FormatDrawInfoEvent=function(stock,data,column,drawInfo){if(!column.EnableFormatDrawInfoEvent)return;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_FORMAT_DRAW_INFO);if(!event||!event.Callback)return;var sendData={Stock:stock,Column:column,Data:data,DrawInfo:drawInfo};event.Callback(event,sendData,this);};this.IsReserveProgressBarColumn=function(value){var ARARY_TYPE=[REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR1_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR2_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR3_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR4_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR5_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR6_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR7_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR8_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR9_ID,REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR10_ID];return ARARY_TYPE.includes(value);};this.IsReserveButtonColumn=function(value){var ARARY_TYPE=[REPORT_COLUMN_ID.RESERVE_BUTTON1_ID,REPORT_COLUMN_ID.RESERVE_BUTTON2_ID,REPORT_COLUMN_ID.RESERVE_BUTTON3_ID,REPORT_COLUMN_ID.RESERVE_BUTTON4_ID,REPORT_COLUMN_ID.RESERVE_BUTTON5_ID,REPORT_COLUMN_ID.RESERVE_BUTTON6_ID,REPORT_COLUMN_ID.RESERVE_BUTTON7_ID,REPORT_COLUMN_ID.RESERVE_BUTTON8_ID,REPORT_COLUMN_ID.RESERVE_BUTTON9_ID,REPORT_COLUMN_ID.RESERVE_BUTTON10_ID];return ARARY_TYPE.includes(value);};this.IsReserveNumber=function(value){var ARARY_TYPE=[REPORT_COLUMN_ID.RESERVE_NUMBER1_ID,REPORT_COLUMN_ID.RESERVE_NUMBER2_ID,REPORT_COLUMN_ID.RESERVE_NUMBER3_ID,REPORT_COLUMN_ID.RESERVE_NUMBER4_ID,REPORT_COLUMN_ID.RESERVE_NUMBER5_ID,REPORT_COLUMN_ID.RESERVE_NUMBER6_ID,REPORT_COLUMN_ID.RESERVE_NUMBER7_ID,REPORT_COLUMN_ID.RESERVE_NUMBER8_ID,REPORT_COLUMN_ID.RESERVE_NUMBER9_ID,REPORT_COLUMN_ID.RESERVE_NUMBER10_ID,REPORT_COLUMN_ID.RESERVE_NUMBER11_ID,REPORT_COLUMN_ID.RESERVE_NUMBER12_ID,REPORT_COLUMN_ID.RESERVE_NUMBER13_ID,REPORT_COLUMN_ID.RESERVE_NUMBER14_ID,REPORT_COLUMN_ID.RESERVE_NUMBER15_ID,REPORT_COLUMN_ID.RESERVE_NUMBER16_ID,REPORT_COLUMN_ID.RESERVE_NUMBER17_ID,REPORT_COLUMN_ID.RESERVE_NUMBER18_ID,REPORT_COLUMN_ID.RESERVE_NUMBER19_ID,REPORT_COLUMN_ID.RESERVE_NUMBER20_ID];return ARARY_TYPE.includes(value);};this.IsReserveString=function(value){var ARARY_TYPE=[REPORT_COLUMN_ID.RESERVE_STRING1_ID,REPORT_COLUMN_ID.RESERVE_STRING2_ID,REPORT_COLUMN_ID.RESERVE_STRING3_ID,REPORT_COLUMN_ID.RESERVE_STRING4_ID,REPORT_COLUMN_ID.RESERVE_STRING5_ID,REPORT_COLUMN_ID.RESERVE_STRING6_ID,REPORT_COLUMN_ID.RESERVE_STRING7_ID,REPORT_COLUMN_ID.RESERVE_STRING8_ID,REPORT_COLUMN_ID.RESERVE_STRING9_ID,REPORT_COLUMN_ID.RESERVE_STRING10_ID,REPORT_COLUMN_ID.RESERVE_STRING11_ID,REPORT_COLUMN_ID.RESERVE_STRING12_ID,REPORT_COLUMN_ID.RESERVE_STRING13_ID,REPORT_COLUMN_ID.RESERVE_STRING14_ID,REPORT_COLUMN_ID.RESERVE_STRING15_ID,REPORT_COLUMN_ID.RESERVE_STRING16_ID,REPORT_COLUMN_ID.RESERVE_STRING17_ID,REPORT_COLUMN_ID.RESERVE_STRING18_ID,REPORT_COLUMN_ID.RESERVE_STRING19_ID,REPORT_COLUMN_ID.RESERVE_STRING20_ID];return ARARY_TYPE.includes(value);};this.IsReserveDateTime=function(value){var ARARY_TYPE=[REPORT_COLUMN_ID.RESERVE_DATETIME1_ID,REPORT_COLUMN_ID.RESERVE_DATETIME2_ID,REPORT_COLUMN_ID.RESERVE_DATETIME3_ID,REPORT_COLUMN_ID.RESERVE_DATETIME4_ID,REPORT_COLUMN_ID.RESERVE_DATETIME5_ID,REPORT_COLUMN_ID.RESERVE_DATETIME6_ID,REPORT_COLUMN_ID.RESERVE_DATETIME7_ID,REPORT_COLUMN_ID.RESERVE_DATETIME8_ID,REPORT_COLUMN_ID.RESERVE_DATETIME9_ID,REPORT_COLUMN_ID.RESERVE_DATETIME10_ID];return ARARY_TYPE.includes(value);};//AryText=[ { Text:, Color,}, .... ]
13880
13886
  this.DrawComplexText=function(drawInfo,column,left,top,cellWidth){//计算大小
13881
- var aryText=[];var textWidth=0;for(var i=0;i<drawInfo.AryText.length;++i){var item=drawInfo.AryText[i];if(!item.Text)continue;var itemWidth=this.Canvas.measureText(item.Text).width;var newItem={Text:item.Text,Margin:{Left:0,Right:0},TextColor:drawInfo.TextColor};if(item.Color)newItem.TextColor=item.Color;if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left)){itemWidth+=margin.Left;newItem.Left=margin.Left;}if(IFrameSplitOperator.IsNumber(margin.Right)){itemWidth+=margin.Right;newItem.Right=margin.Right;;}}newItem.Width=itemWidth;aryText.push(newItem);textWidth+=itemWidth;}if(!IFrameSplitOperator.IsNonEmptyArray(aryText))return;var x=left;var y=top+this.RowHeight-this.ItemMergin.Bottom;if(drawInfo.TextAlign=='center'){x=left+cellWidth/2-textWidth/2;}else if(drawInfo.TextAlign=='right'){x=left+cellWidth-textWidth;}var bClip=false;if(textWidth>=cellWidth)//长度超过单元格 裁剪
13887
+ var aryText=[];var textWidth=0;for(var i=0;i<drawInfo.AryText.length;++i){var item=drawInfo.AryText[i];if(!item||!item.Text)continue;var itemWidth=this.Canvas.measureText(item.Text).width;var newItem={Text:item.Text,Margin:{Left:0,Right:0},TextColor:drawInfo.TextColor};if(item.Color)newItem.TextColor=item.Color;if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left)){itemWidth+=margin.Left;newItem.Left=margin.Left;}if(IFrameSplitOperator.IsNumber(margin.Right)){itemWidth+=margin.Right;newItem.Right=margin.Right;;}}newItem.Width=itemWidth;aryText.push(newItem);textWidth+=itemWidth;}if(!IFrameSplitOperator.IsNonEmptyArray(aryText))return;var x=left;var y=top+this.RowHeight-this.ItemMergin.Bottom;if(drawInfo.TextAlign=='center'){x=left+cellWidth/2-textWidth/2;}else if(drawInfo.TextAlign=='right'){x=left+cellWidth-textWidth;}var bClip=false;if(textWidth>=cellWidth)//长度超过单元格 裁剪
13882
13888
  {this.Canvas.save();bClip=true;var rtCell={Left:left,Top:top+this.ItemMergin.Top,Width:cellWidth,Height:this.RowHeight};this.Canvas.beginPath();this.Canvas.rect(rtCell.Left,rtCell.Top,rtCell.Width,rtCell.Height);//this.Canvas.stroke(); //调试用
13883
13889
  this.Canvas.clip();//数据截断提示信息
13884
13890
  if(!drawInfo.Tooltip&&drawInfo.Text){drawInfo.Tooltip={Type:1,Data:{AryText:[{Text:drawInfo.Text}]}};}}this.Canvas.textBaseline="bottom";this.Canvas.textAlign="left";for(var i=0;i<aryText.length;++i){var item=aryText[i];this.Canvas.fillStyle=item.TextColor;this.Canvas.fillText(item.Text,x+item.Margin.Left,y);x+=item.Width;}if(bClip)this.Canvas.restore();};this.DrawReserveString=function(drawInfo,column,left,top,cellWidth){if(IFrameSplitOperator.IsNonEmptyArray(drawInfo.AryText)){this.DrawComplexText(drawInfo,column,left,top,cellWidth);return;}if(!drawInfo.Text)return;var text=drawInfo.Text;var x=left;if(drawInfo.TextAlign=='center'){x=left+cellWidth/2;this.Canvas.textAlign="center";}else if(drawInfo.TextAlign=='right'){x=left+cellWidth-2;this.Canvas.textAlign="right";}else{x+=2;this.Canvas.textAlign="left";}var textWidth=this.Canvas.measureText(text).width+1;var bClip=false;if(textWidth>=cellWidth)//长度超过单元格 裁剪
@@ -15059,7 +15065,7 @@ value=item.Data.Data[dataIndex];var text="--";if(value)text=titleChart.FormatVal
15059
15065
  if(dyTitle)title=dyTitle;var tooltipItem={Title:title,Text:text,Color:item.Color};aryText.push(tooltipItem);}++k;}return aryText;};this.GetFormatMinuteTooltipText=function(data){var defaultfloatPrecision=GetfloatPrecision(this.HQChart.Symbol);//价格小数位数
15060
15066
  var upperSymbol=this.HQChart.Symbol.toUpperCase();var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);var aryText=[];if(data.Type==0)//连续交易
15061
15067
  {var item=data.Data;if(!item)item={};aryText=[this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date'),this.FormatTime(item.Time,null,"HH:MM",'DialogTooltip-Time'),this.ForamtPrice(item.Close,item.YClose,defaultfloatPrecision,'DialogTooltip-Price',1),this.ForamtPrice(item.AvPrice,item.YClose,defaultfloatPrecision,'DialogTooltip-AvPrice',1),this.FormatRisefall(item.Close,item.YClose,defaultfloatPrecision,'DialogTooltip-Risefall'),this.FormatIncrease(item.Close,item.YClose,defaultfloatPrecision,'DialogTooltip-Increase',1),this.FormatVol(item.Vol/unit,'DialogTooltip-Vol'),this.FormatAmount(item.Amount,'DialogTooltip-Amount')];if(this.LastValueCache&&this.LastValueCache.Y){var item=this.LastValueCache.Y;var rowItem=null;if(item.Extend.FrameID==0){rowItem=this.ForamtPrice(item.Value,null,defaultfloatPrecision,'DialogTooltip-Value',2);}else{rowItem=this.ForamtValue(item.Value,2,'DialogTooltip-Value');}if(rowItem)aryText.splice(2,0,rowItem);}}else if(data.Type==1)//集合竞价
15062
- {var item=data.Data.Data;if(!item)item={Vol:[]};if(data.Data.Ver===1){var timeForamt="HH:MM";aryText=[this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date'),this.FormatTime(item.Time,null,timeForamt,'DialogTooltip-Time'),this.ForamtPrice(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Price',1),this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol')];}else{var timeForamt="HH:MM:SS";aryText=[this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date'),this.FormatTime(item.Time,null,timeForamt,'DialogTooltip-Time'),this.ForamtPrice(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Price',1),this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol',2),this.FormatVol(item.Vol[1]/unit,'DialogTooltip-AC-NotMatchVol',2)];}}else{}var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_DIALOG_TOOLTIP);if(event&&event.Callback){var sendData={AryText:aryText,Data:data,Symbol:this.HQChart.Symbol,HQChart:this.HQChart,IsMinute:true};event.Callback(event,sendData,this);}return aryText;};this.GetColor=function(price,yClose){if(price>yClose)return this.UpColor;else if(price<yClose)return this.DownColor;else return this.UnchangeColor;};this.GetPriceColor=function(price,yClose){var color=this.GetColor(price,yClose);return color;};//配色修改
15068
+ {var item=data.Data.Data;if(!item)item={Vol:[]};if(data.Data.Ver===1){var timeForamt="HH:MM";aryText=[this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date'),this.FormatTime(item.Time,null,timeForamt,'DialogTooltip-Time'),this.ForamtPrice(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Price',1),this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol')];}else if(data.Data.Ver===3){var timeForamt="HH:MM:SS";aryText=[this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date'),this.FormatTime(item.Time,null,timeForamt,'DialogTooltip-Time'),this.ForamtPrice(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Price',1),this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol',2)];}else{var timeForamt="HH:MM:SS";aryText=[this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date'),this.FormatTime(item.Time,null,timeForamt,'DialogTooltip-Time'),this.ForamtPrice(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Price',1),this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol',2),this.FormatVol(item.Vol[1]/unit,'DialogTooltip-AC-NotMatchVol',2)];}}else{}var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_DIALOG_TOOLTIP);if(event&&event.Callback){var sendData={AryText:aryText,Data:data,Symbol:this.HQChart.Symbol,HQChart:this.HQChart,IsMinute:true};event.Callback(event,sendData,this);}return aryText;};this.GetColor=function(price,yClose){if(price>yClose)return this.UpColor;else if(price<yClose)return this.DownColor;else return this.UnchangeColor;};this.GetPriceColor=function(price,yClose){var color=this.GetColor(price,yClose);return color;};//配色修改
15063
15069
  this.ReloadResource=function(option){this.UpColor=g_JSChartResource.UpTextColor;this.DownColor=g_JSChartResource.DownTextColor;this.UnchangeColor=g_JSChartResource.UnchagneTextColor;this.TitleColor=g_JSChartResource.DialogTooltip.TitleColor;this.TitleBGColor=g_JSChartResource.DialogTooltip.TitleBGColor;this.BGColor=g_JSChartResource.DialogTooltip.BGColor;this.BorderColor=g_JSChartResource.DialogTooltip.BorderColor;this.VolColor=g_JSChartResource.DialogTooltip.VolColor;this.AmountColor=g_JSChartResource.DialogTooltip.AmountColor;this.TurnoverRateColor=g_JSChartResource.DialogTooltip.TurnoverRateColor;this.PositionColor=g_JSChartResource.DialogTooltip.PositionColor;this.DateTimeColor=g_JSChartResource.DialogTooltip.DateTimeColor;this.TextColor=g_JSChartResource.DialogTooltip.TextColor;this.ValueColor=g_JSChartResource.DialogTooltip.ValueColor;if(!this.DivDialog)return;this.UpdateStyle();};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;if(this.TitleBGColor)this.TitleBox.DivTitle.style['background-color']=this.TitleBGColor;if(this.TitleColor)this.TitleBox.DivName.style['color']=this.TitleColor;this.UpdateTableDOM();};/////////////////////////////////////////////////////////////////////////////////////////////
15064
15070
  //数据格式化 format=0 点差+涨幅 1=涨幅
15065
15071
  this.ForamtPrice=function(price,yClose,defaultfloatPrecision,TitleID,format){var item={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),Text:"--.--",Color:this.ValueColor};if(!IFrameSplitOperator.IsNumber(price))return item;if(format==2){item.Text=price.toFixed(defaultfloatPrecision);item.Color=this.ValueColor;return item;}if(IFrameSplitOperator.IsNumber(yClose)&&format!=1){var value=(price-yClose)/yClose*100;item.Text=price.toFixed(defaultfloatPrecision)+'('+value.toFixed(2)+'%)';}else{item.Text=price.toFixed(defaultfloatPrecision);}item.Color=this.GetColor(price,yClose);return item;};this.ForamtValue=function(value,defaultfloatPrecision,TitleID){var item={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),Text:'--',Color:this.ValueColor};if(!IFrameSplitOperator.IsNumber(value))return item;item.Text=IFrameSplitOperator.FormatValueStringV2(value,defaultfloatPrecision,2,this.LanguageID);return item;};this.FormatVol=function(vol,TitleID,floatPrecision){var item={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),Text:'--',Color:this.VolColor};if(!IFrameSplitOperator.IsNumber(vol))return item;var decimal=0;//小数位数
@@ -15269,7 +15275,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15269
15275
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
15270
15276
  * 版本信息输出
15271
15277
  *
15272
- */var HQCHART_VERSION="1.1.14994";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15278
+ */var HQCHART_VERSION="1.1.15001";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15273
15279
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15274
15280
  // BaseIndex:BaseIndex,
15275
15281
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14995",
3
+ "version": "1.1.15002",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -756,6 +756,18 @@ function JSDialogTooltip()
756
756
  this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol'),
757
757
  ];
758
758
  }
759
+ else if (data.Data.Ver===3)
760
+ {
761
+ var timeForamt="HH:MM:SS";
762
+ aryText=
763
+ [
764
+ this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date' ),
765
+ this.FormatTime(item.Time, null, timeForamt, 'DialogTooltip-Time'),
766
+ this.ForamtPrice(item.Price,item.YClose, defaultfloatPrecision,'DialogTooltip-AC-Price',1),
767
+ this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),
768
+ this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol', 2),
769
+ ];
770
+ }
759
771
  else
760
772
  {
761
773
  var timeForamt="HH:MM:SS";
@@ -13122,7 +13122,7 @@ function IChartFramePainting()
13122
13122
  if (this.IsLocked)
13123
13123
  {
13124
13124
  if (this.LockPaint == null)
13125
- this.LockPaint = new ChartLock();
13125
+ this.LockPaint = g_ChartPaintFactory.Create("ChartLock");//new ChartLock();
13126
13126
  this.LockPaint.Canvas=this.Canvas;
13127
13127
  this.LockPaint.ChartBorder=this.ChartBorder;
13128
13128
  this.LockPaint.ChartFrame=this;
@@ -13188,7 +13188,7 @@ function IChartFramePainting()
13188
13188
  if (this.IsLocked)
13189
13189
  {
13190
13190
  if (this.LockPaint == null)
13191
- this.LockPaint = new ChartLock();
13191
+ this.LockPaint = g_ChartPaintFactory.Create("ChartLock"); // new ChartLock();
13192
13192
  this.LockPaint.Canvas=this.Canvas;
13193
13193
  this.LockPaint.ChartBorder=this.ChartBorder;
13194
13194
  this.LockPaint.ChartFrame=this;
@@ -13206,7 +13206,7 @@ function IChartFramePainting()
13206
13206
  }
13207
13207
 
13208
13208
  this.IsLocked=true;
13209
- if (!this.LockPaint) this.LockPaint=new ChartLock(); //创建锁
13209
+ if (!this.LockPaint) this.LockPaint=g_ChartPaintFactory.Create("ChartLock"); //new ChartLock(); //创建锁
13210
13210
 
13211
13211
  if (lockData.Callback) this.LockPaint.Callback=lockData.Callback; //回调
13212
13212
  if (lockData.IndexName) this.LockPaint.IndexName=lockData.IndexName; //指标名字
@@ -13937,7 +13937,7 @@ function AverageWidthFrame()
13937
13937
  if (isDrawRight && this.IsDrawRightBorder && this.YRightTextInfo)
13938
13938
  {
13939
13939
  var xRight=this.YRightTextInfo.MainTextWidth+right;
13940
- xLine=ToFixedPoint(xRight);
13940
+ var xLine=ToFixedPoint(xRight);
13941
13941
  this.Canvas.strokeStyle=this.PenBorder;
13942
13942
  this.Canvas.beginPath();
13943
13943
  this.Canvas.moveTo(xLine,top);
@@ -26393,7 +26393,8 @@ function ChartPaintFactory()
26393
26393
  ["ChartMinuteVolumBar",{ Create:function(option) { return new ChartMinuteVolumBar(); } }], //分时成交量柱子
26394
26394
  ["ChartMinutePriceLine",{ Create:function(option) { return new ChartMinutePriceLine();} }],
26395
26395
  ["ChartMinuteBuySellBar", { Create:function(option){ return new ChartMinuteBuySellBar(); }}],
26396
- ["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}]
26396
+ ["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}],
26397
+ ["ChartLock",{ Create:function(option){ return new ChartLock(); }}]
26397
26398
  ]);
26398
26399
 
26399
26400
  this.Create=function(name, option)
@@ -48957,6 +48958,7 @@ function MinuteLeftTooltipPaint()
48957
48958
  {
48958
48959
  var item=drawData.Data.Data;
48959
48960
  if (!item) return;
48961
+ var version=drawData.Data.Ver;
48960
48962
 
48961
48963
  this.YClose=item.YClose;
48962
48964
  if (isFutures && IFrameSplitOperator.IsNumber(item.YClearing)) this.YClose=item.YClearing;
@@ -48964,7 +48966,7 @@ function MinuteLeftTooltipPaint()
48964
48966
  if (titleItem) aryText.push(titleItem);
48965
48967
 
48966
48968
  var timeForamt="HH:MM:SS";
48967
- if (item.Ver===1) timeForamt="HH:MM"
48969
+ if (version===1) timeForamt="HH:MM"
48968
48970
 
48969
48971
  var titleItem=this.ForamtTime(item.Time,timeForamt,'PCTooltip-Time');
48970
48972
  if (titleItem) aryText.push(titleItem);
@@ -91282,7 +91284,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
91282
91284
 
91283
91285
  ];
91284
91286
 
91285
- if (MARKET_SUFFIX_NAME.IsSHSZStockA(this.Symbol))
91287
+ if (MARKET_SUFFIX_NAME.IsEnableCallAuction(this.Symbol))
91286
91288
  {
91287
91289
  var item=
91288
91290
  {
@@ -93294,16 +93296,17 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
93294
93296
 
93295
93297
  // 盘前数据(A股)
93296
93298
  this.IsBeforeData=false;
93297
- if (this.IsShowBeforeData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol))
93299
+ if (this.IsShowBeforeData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol))
93298
93300
  {
93299
93301
  this.IsBeforeData=true;
93300
93302
  fields.push('before');
93301
93303
  }
93302
93304
 
93303
93305
  this.IsAfterData=false;
93304
- if (this.IsShowAfterData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol))
93306
+ if (this.IsShowAfterData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol))
93305
93307
  {
93306
93308
  this.IsAfterData=true;
93309
+ fields.push('after');
93307
93310
  }
93308
93311
 
93309
93312
  //5档买卖盘
@@ -95469,6 +95472,25 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95469
95472
 
95470
95473
  return false;
95471
95474
  }
95475
+
95476
+ this.TryClickLock=function(x,y)
95477
+ {
95478
+ for(var i=0;i<this.Frame.SubFrame.length; ++i)
95479
+ {
95480
+ var item=this.Frame.SubFrame[i];
95481
+ if (!item.Frame.IsLocked) continue;
95482
+ if (!item.Frame.LockPaint) continue;
95483
+
95484
+ var tooltip=new TooltipData();
95485
+ if (!item.Frame.LockPaint.GetTooltipData(x,y,tooltip)) continue;
95486
+
95487
+ tooltip.HQChart=this;
95488
+ if (tooltip.Data.Callback) tooltip.Data.Callback(tooltip);
95489
+ return true;
95490
+ }
95491
+
95492
+ return false;
95493
+ }
95472
95494
  }
95473
95495
 
95474
95496
  //盘前数据
@@ -101058,6 +101080,15 @@ var MARKET_SUFFIX_NAME=
101058
101080
  return true;
101059
101081
  },
101060
101082
 
101083
+ IsEnableCallAuction:function(symbol) //是否支持集合竞价
101084
+ {
101085
+ if (MARKET_SUFFIX_NAME.IsSHSZStockA(symbol)) return true; //A股
101086
+ if (MARKET_SUFFIX_NAME.IsBJStock(symbol)) return true; //北交所
101087
+ if (MARKET_SUFFIX_NAME.IsSHSZIndex(symbol)) return true; //指数
101088
+
101089
+ return false;
101090
+ },
101091
+
101061
101092
  //获取成交量单位
101062
101093
  GetVolUnit:function(upperSymbol)
101063
101094
  {
@@ -7327,7 +7327,7 @@ function ChartReport()
7327
7327
  for(var i=0;i<drawInfo.AryText.length;++i)
7328
7328
  {
7329
7329
  var item=drawInfo.AryText[i];
7330
- if (!item.Text) continue;
7330
+ if (!item || !item.Text) continue;
7331
7331
  var itemWidth=this.Canvas.measureText(item.Text).width;
7332
7332
 
7333
7333
  var newItem={ Text:item.Text, Margin:{ Left:0, Right:0 }, TextColor:drawInfo.TextColor };
@@ -17218,7 +17218,7 @@ function IChartFramePainting()
17218
17218
  if (this.IsLocked)
17219
17219
  {
17220
17220
  if (this.LockPaint == null)
17221
- this.LockPaint = new ChartLock();
17221
+ this.LockPaint = g_ChartPaintFactory.Create("ChartLock");//new ChartLock();
17222
17222
  this.LockPaint.Canvas=this.Canvas;
17223
17223
  this.LockPaint.ChartBorder=this.ChartBorder;
17224
17224
  this.LockPaint.ChartFrame=this;
@@ -17284,7 +17284,7 @@ function IChartFramePainting()
17284
17284
  if (this.IsLocked)
17285
17285
  {
17286
17286
  if (this.LockPaint == null)
17287
- this.LockPaint = new ChartLock();
17287
+ this.LockPaint = g_ChartPaintFactory.Create("ChartLock"); // new ChartLock();
17288
17288
  this.LockPaint.Canvas=this.Canvas;
17289
17289
  this.LockPaint.ChartBorder=this.ChartBorder;
17290
17290
  this.LockPaint.ChartFrame=this;
@@ -17302,7 +17302,7 @@ function IChartFramePainting()
17302
17302
  }
17303
17303
 
17304
17304
  this.IsLocked=true;
17305
- if (!this.LockPaint) this.LockPaint=new ChartLock(); //创建锁
17305
+ if (!this.LockPaint) this.LockPaint=g_ChartPaintFactory.Create("ChartLock"); //new ChartLock(); //创建锁
17306
17306
 
17307
17307
  if (lockData.Callback) this.LockPaint.Callback=lockData.Callback; //回调
17308
17308
  if (lockData.IndexName) this.LockPaint.IndexName=lockData.IndexName; //指标名字
@@ -18033,7 +18033,7 @@ function AverageWidthFrame()
18033
18033
  if (isDrawRight && this.IsDrawRightBorder && this.YRightTextInfo)
18034
18034
  {
18035
18035
  var xRight=this.YRightTextInfo.MainTextWidth+right;
18036
- xLine=ToFixedPoint(xRight);
18036
+ var xLine=ToFixedPoint(xRight);
18037
18037
  this.Canvas.strokeStyle=this.PenBorder;
18038
18038
  this.Canvas.beginPath();
18039
18039
  this.Canvas.moveTo(xLine,top);
@@ -30489,7 +30489,8 @@ function ChartPaintFactory()
30489
30489
  ["ChartMinuteVolumBar",{ Create:function(option) { return new ChartMinuteVolumBar(); } }], //分时成交量柱子
30490
30490
  ["ChartMinutePriceLine",{ Create:function(option) { return new ChartMinutePriceLine();} }],
30491
30491
  ["ChartMinuteBuySellBar", { Create:function(option){ return new ChartMinuteBuySellBar(); }}],
30492
- ["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}]
30492
+ ["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}],
30493
+ ["ChartLock",{ Create:function(option){ return new ChartLock(); }}]
30493
30494
  ]);
30494
30495
 
30495
30496
  this.Create=function(name, option)
@@ -53053,6 +53054,7 @@ function MinuteLeftTooltipPaint()
53053
53054
  {
53054
53055
  var item=drawData.Data.Data;
53055
53056
  if (!item) return;
53057
+ var version=drawData.Data.Ver;
53056
53058
 
53057
53059
  this.YClose=item.YClose;
53058
53060
  if (isFutures && IFrameSplitOperator.IsNumber(item.YClearing)) this.YClose=item.YClearing;
@@ -53060,7 +53062,7 @@ function MinuteLeftTooltipPaint()
53060
53062
  if (titleItem) aryText.push(titleItem);
53061
53063
 
53062
53064
  var timeForamt="HH:MM:SS";
53063
- if (item.Ver===1) timeForamt="HH:MM"
53065
+ if (version===1) timeForamt="HH:MM"
53064
53066
 
53065
53067
  var titleItem=this.ForamtTime(item.Time,timeForamt,'PCTooltip-Time');
53066
53068
  if (titleItem) aryText.push(titleItem);
@@ -95378,7 +95380,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95378
95380
 
95379
95381
  ];
95380
95382
 
95381
- if (MARKET_SUFFIX_NAME.IsSHSZStockA(this.Symbol))
95383
+ if (MARKET_SUFFIX_NAME.IsEnableCallAuction(this.Symbol))
95382
95384
  {
95383
95385
  var item=
95384
95386
  {
@@ -97390,16 +97392,17 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
97390
97392
 
97391
97393
  // 盘前数据(A股)
97392
97394
  this.IsBeforeData=false;
97393
- if (this.IsShowBeforeData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol))
97395
+ if (this.IsShowBeforeData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol))
97394
97396
  {
97395
97397
  this.IsBeforeData=true;
97396
97398
  fields.push('before');
97397
97399
  }
97398
97400
 
97399
97401
  this.IsAfterData=false;
97400
- if (this.IsShowAfterData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol))
97402
+ if (this.IsShowAfterData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol))
97401
97403
  {
97402
97404
  this.IsAfterData=true;
97405
+ fields.push('after');
97403
97406
  }
97404
97407
 
97405
97408
  //5档买卖盘
@@ -99565,6 +99568,25 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
99565
99568
 
99566
99569
  return false;
99567
99570
  }
99571
+
99572
+ this.TryClickLock=function(x,y)
99573
+ {
99574
+ for(var i=0;i<this.Frame.SubFrame.length; ++i)
99575
+ {
99576
+ var item=this.Frame.SubFrame[i];
99577
+ if (!item.Frame.IsLocked) continue;
99578
+ if (!item.Frame.LockPaint) continue;
99579
+
99580
+ var tooltip=new TooltipData();
99581
+ if (!item.Frame.LockPaint.GetTooltipData(x,y,tooltip)) continue;
99582
+
99583
+ tooltip.HQChart=this;
99584
+ if (tooltip.Data.Callback) tooltip.Data.Callback(tooltip);
99585
+ return true;
99586
+ }
99587
+
99588
+ return false;
99589
+ }
99568
99590
  }
99569
99591
 
99570
99592
  //盘前数据
@@ -105154,6 +105176,15 @@ var MARKET_SUFFIX_NAME=
105154
105176
  return true;
105155
105177
  },
105156
105178
 
105179
+ IsEnableCallAuction:function(symbol) //是否支持集合竞价
105180
+ {
105181
+ if (MARKET_SUFFIX_NAME.IsSHSZStockA(symbol)) return true; //A股
105182
+ if (MARKET_SUFFIX_NAME.IsBJStock(symbol)) return true; //北交所
105183
+ if (MARKET_SUFFIX_NAME.IsSHSZIndex(symbol)) return true; //指数
105184
+
105185
+ return false;
105186
+ },
105187
+
105157
105188
  //获取成交量单位
105158
105189
  GetVolUnit:function(upperSymbol)
105159
105190
  {
@@ -145999,7 +146030,7 @@ function ChartReport()
145999
146030
  for(var i=0;i<drawInfo.AryText.length;++i)
146000
146031
  {
146001
146032
  var item=drawInfo.AryText[i];
146002
- if (!item.Text) continue;
146033
+ if (!item || !item.Text) continue;
146003
146034
  var itemWidth=this.Canvas.measureText(item.Text).width;
146004
146035
 
146005
146036
  var newItem={ Text:item.Text, Margin:{ Left:0, Right:0 }, TextColor:drawInfo.TextColor };
@@ -152450,7 +152481,7 @@ function ScrollBarBGChart()
152450
152481
 
152451
152482
 
152452
152483
 
152453
- var HQCHART_VERSION="1.1.14994";
152484
+ var HQCHART_VERSION="1.1.15001";
152454
152485
 
152455
152486
  function PrintHQChartVersion()
152456
152487
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14994";
8
+ var HQCHART_VERSION="1.1.15001";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -17262,7 +17262,7 @@ function IChartFramePainting()
17262
17262
  if (this.IsLocked)
17263
17263
  {
17264
17264
  if (this.LockPaint == null)
17265
- this.LockPaint = new ChartLock();
17265
+ this.LockPaint = g_ChartPaintFactory.Create("ChartLock");//new ChartLock();
17266
17266
  this.LockPaint.Canvas=this.Canvas;
17267
17267
  this.LockPaint.ChartBorder=this.ChartBorder;
17268
17268
  this.LockPaint.ChartFrame=this;
@@ -17328,7 +17328,7 @@ function IChartFramePainting()
17328
17328
  if (this.IsLocked)
17329
17329
  {
17330
17330
  if (this.LockPaint == null)
17331
- this.LockPaint = new ChartLock();
17331
+ this.LockPaint = g_ChartPaintFactory.Create("ChartLock"); // new ChartLock();
17332
17332
  this.LockPaint.Canvas=this.Canvas;
17333
17333
  this.LockPaint.ChartBorder=this.ChartBorder;
17334
17334
  this.LockPaint.ChartFrame=this;
@@ -17346,7 +17346,7 @@ function IChartFramePainting()
17346
17346
  }
17347
17347
 
17348
17348
  this.IsLocked=true;
17349
- if (!this.LockPaint) this.LockPaint=new ChartLock(); //创建锁
17349
+ if (!this.LockPaint) this.LockPaint=g_ChartPaintFactory.Create("ChartLock"); //new ChartLock(); //创建锁
17350
17350
 
17351
17351
  if (lockData.Callback) this.LockPaint.Callback=lockData.Callback; //回调
17352
17352
  if (lockData.IndexName) this.LockPaint.IndexName=lockData.IndexName; //指标名字
@@ -18077,7 +18077,7 @@ function AverageWidthFrame()
18077
18077
  if (isDrawRight && this.IsDrawRightBorder && this.YRightTextInfo)
18078
18078
  {
18079
18079
  var xRight=this.YRightTextInfo.MainTextWidth+right;
18080
- xLine=ToFixedPoint(xRight);
18080
+ var xLine=ToFixedPoint(xRight);
18081
18081
  this.Canvas.strokeStyle=this.PenBorder;
18082
18082
  this.Canvas.beginPath();
18083
18083
  this.Canvas.moveTo(xLine,top);
@@ -30533,7 +30533,8 @@ function ChartPaintFactory()
30533
30533
  ["ChartMinuteVolumBar",{ Create:function(option) { return new ChartMinuteVolumBar(); } }], //分时成交量柱子
30534
30534
  ["ChartMinutePriceLine",{ Create:function(option) { return new ChartMinutePriceLine();} }],
30535
30535
  ["ChartMinuteBuySellBar", { Create:function(option){ return new ChartMinuteBuySellBar(); }}],
30536
- ["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}]
30536
+ ["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}],
30537
+ ["ChartLock",{ Create:function(option){ return new ChartLock(); }}]
30537
30538
  ]);
30538
30539
 
30539
30540
  this.Create=function(name, option)
@@ -53097,6 +53098,7 @@ function MinuteLeftTooltipPaint()
53097
53098
  {
53098
53099
  var item=drawData.Data.Data;
53099
53100
  if (!item) return;
53101
+ var version=drawData.Data.Ver;
53100
53102
 
53101
53103
  this.YClose=item.YClose;
53102
53104
  if (isFutures && IFrameSplitOperator.IsNumber(item.YClearing)) this.YClose=item.YClearing;
@@ -53104,7 +53106,7 @@ function MinuteLeftTooltipPaint()
53104
53106
  if (titleItem) aryText.push(titleItem);
53105
53107
 
53106
53108
  var timeForamt="HH:MM:SS";
53107
- if (item.Ver===1) timeForamt="HH:MM"
53109
+ if (version===1) timeForamt="HH:MM"
53108
53110
 
53109
53111
  var titleItem=this.ForamtTime(item.Time,timeForamt,'PCTooltip-Time');
53110
53112
  if (titleItem) aryText.push(titleItem);
@@ -95422,7 +95424,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95422
95424
 
95423
95425
  ];
95424
95426
 
95425
- if (MARKET_SUFFIX_NAME.IsSHSZStockA(this.Symbol))
95427
+ if (MARKET_SUFFIX_NAME.IsEnableCallAuction(this.Symbol))
95426
95428
  {
95427
95429
  var item=
95428
95430
  {
@@ -97434,16 +97436,17 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
97434
97436
 
97435
97437
  // 盘前数据(A股)
97436
97438
  this.IsBeforeData=false;
97437
- if (this.IsShowBeforeData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol))
97439
+ if (this.IsShowBeforeData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol))
97438
97440
  {
97439
97441
  this.IsBeforeData=true;
97440
97442
  fields.push('before');
97441
97443
  }
97442
97444
 
97443
97445
  this.IsAfterData=false;
97444
- if (this.IsShowAfterData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol))
97446
+ if (this.IsShowAfterData && this.DayCount===1 && MARKET_SUFFIX_NAME.IsEnableCallAuction(self.Symbol))
97445
97447
  {
97446
97448
  this.IsAfterData=true;
97449
+ fields.push('after');
97447
97450
  }
97448
97451
 
97449
97452
  //5档买卖盘
@@ -99609,6 +99612,25 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
99609
99612
 
99610
99613
  return false;
99611
99614
  }
99615
+
99616
+ this.TryClickLock=function(x,y)
99617
+ {
99618
+ for(var i=0;i<this.Frame.SubFrame.length; ++i)
99619
+ {
99620
+ var item=this.Frame.SubFrame[i];
99621
+ if (!item.Frame.IsLocked) continue;
99622
+ if (!item.Frame.LockPaint) continue;
99623
+
99624
+ var tooltip=new TooltipData();
99625
+ if (!item.Frame.LockPaint.GetTooltipData(x,y,tooltip)) continue;
99626
+
99627
+ tooltip.HQChart=this;
99628
+ if (tooltip.Data.Callback) tooltip.Data.Callback(tooltip);
99629
+ return true;
99630
+ }
99631
+
99632
+ return false;
99633
+ }
99612
99634
  }
99613
99635
 
99614
99636
  //盘前数据
@@ -105198,6 +105220,15 @@ var MARKET_SUFFIX_NAME=
105198
105220
  return true;
105199
105221
  },
105200
105222
 
105223
+ IsEnableCallAuction:function(symbol) //是否支持集合竞价
105224
+ {
105225
+ if (MARKET_SUFFIX_NAME.IsSHSZStockA(symbol)) return true; //A股
105226
+ if (MARKET_SUFFIX_NAME.IsBJStock(symbol)) return true; //北交所
105227
+ if (MARKET_SUFFIX_NAME.IsSHSZIndex(symbol)) return true; //指数
105228
+
105229
+ return false;
105230
+ },
105231
+
105201
105232
  //获取成交量单位
105202
105233
  GetVolUnit:function(upperSymbol)
105203
105234
  {
@@ -146043,7 +146074,7 @@ function ChartReport()
146043
146074
  for(var i=0;i<drawInfo.AryText.length;++i)
146044
146075
  {
146045
146076
  var item=drawInfo.AryText[i];
146046
- if (!item.Text) continue;
146077
+ if (!item || !item.Text) continue;
146047
146078
  var itemWidth=this.Canvas.measureText(item.Text).width;
146048
146079
 
146049
146080
  var newItem={ Text:item.Text, Margin:{ Left:0, Right:0 }, TextColor:drawInfo.TextColor };
@@ -159952,6 +159983,18 @@ function JSDialogTooltip()
159952
159983
  this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol'),
159953
159984
  ];
159954
159985
  }
159986
+ else if (data.Data.Ver===3)
159987
+ {
159988
+ var timeForamt="HH:MM:SS";
159989
+ aryText=
159990
+ [
159991
+ this.ForamtDate(item.Date,this.Style==1?"MM/DD/W":"YYYY/MM/DD/W",'DialogTooltip-Date' ),
159992
+ this.FormatTime(item.Time, null, timeForamt, 'DialogTooltip-Time'),
159993
+ this.ForamtPrice(item.Price,item.YClose, defaultfloatPrecision,'DialogTooltip-AC-Price',1),
159994
+ this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),
159995
+ this.FormatVol(item.Vol[0]/unit,'DialogTooltip-AC-Vol', 2),
159996
+ ];
159997
+ }
159955
159998
  else
159956
159999
  {
159957
160000
  var timeForamt="HH:MM:SS";
@@ -163829,7 +163872,7 @@ function HQChartScriptWorker()
163829
163872
 
163830
163873
 
163831
163874
 
163832
- var HQCHART_VERSION="1.1.14994";
163875
+ var HQCHART_VERSION="1.1.15001";
163833
163876
 
163834
163877
  function PrintHQChartVersion()
163835
163878
  {