hqchart 1.1.14848 → 1.1.14851

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.
@@ -4592,8 +4592,8 @@ function ChartBaseLineBar(){this.newMethod=IChartPainting;//派生
4592
4592
  this.newMethod();delete this.newMethod;this.ClassName="ChartBaseLineBar";this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;this.LineWidth=1;this.IsDrawFirst=true;this.AryData=[];//{ Date, Time, Up, Down }
4593
4593
  this.DefaultMax;//默认最大值
4594
4594
  this.MaxValue;this.YBaseLine;this.BarMaxHeight;//{ Up:, Down: }
4595
- this.Draw=function(){this.YBaseLine=null;this.BarMaxHeight=null;if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!this.HQChart)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;if(!IFrameSplitOperator.IsNumber(this.MaxValue))return;this.CalculateBaseLine();if(!IFrameSplitOperator.IsNumber(this.YBaseLine))return;if(!IFrameSplitOperator.IsPlusNumber(this.BarMaxHeight))return;var bHScreen=this.ChartFrame.IsHScreen===true;var bMinute=this.IsMinuteFrame();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();if(bHScreen){var chartright=border.BottomEx;var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;}else{var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;}var yCenter=this.YBaseLine;var aryUpBar=[],aryDownBar=[];for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var kItem=this.Data.Data[i];if(!kItem)continue;var key=this.BuildKey(kItem);if(!this.MapCache.has(key))continue;var item=this.MapCache.get(key);if(bMinute){var x=this.ChartFrame.GetXFromIndex(j);}else{var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=left+(right-left)/2;}if(IFrameSplitOperator.IsNumber(item.Up)){var value=Math.abs(item.Up)*this.BarMaxHeight/this.MaxValue;if(value<2)value=2;//太短了 就直接画2个像素高度
4596
- var y=yCenter-value;aryUpBar.push({X:x,Y:y});}if(IFrameSplitOperator.IsNumber(item.Down)){var value=Math.abs(item.Down)*this.BarMaxHeight/this.MaxValue;if(value<2)value=2;var y=yCenter+value;aryDownBar.push({X:x,Y:y});}}this.DrawBars(aryUpBar,this.UpColor);this.DrawBars(aryDownBar,this.DownColor);};this.CalculateBaseLine=function(){if(!this.HQChart)return;var bHScreen=this.ChartFrame.IsHScreen===true;var bMinute=this.IsMinuteFrame();var border=this.ChartFrame.GetBorder();if(bMinute){var chart=this.HQChart.ChartPaint[0];if(!chart||!IFrameSplitOperator.IsNumber(chart.YClose))return;this.YBaseLine=this.ChartFrame.GetYFromData(chart.YClose);if(bHScreen){this.BarMaxHeight=(border.RightEx-this.YBaseLine)/3;}else{this.BarMaxHeight=(this.YBaseLine-border.TopEx)/3;}}else{//TODO:K线
4595
+ this.Draw=function(){this.YBaseLine=null;this.BarMaxHeight=null;if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!this.HQChart)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;if(!IFrameSplitOperator.IsNumber(this.MaxValue))return;this.CalculateBaseLine();if(!IFrameSplitOperator.IsNumber(this.YBaseLine))return;if(!IFrameSplitOperator.IsPlusNumber(this.BarMaxHeight))return;var bHScreen=this.ChartFrame.IsHScreen===true;var bMinute=this.IsMinuteFrame();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();if(bHScreen){var chartright=border.BottomEx;var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;}else{var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;}var yCenter=this.YBaseLine;var aryUpBar=[],aryDownBar=[];for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var kItem=this.Data.Data[i];if(!kItem)continue;var key=this.BuildKey(kItem);if(!this.MapCache.has(key))continue;var item=this.MapCache.get(key);if(bMinute){var x=this.ChartFrame.GetXFromIndex(j);}else{var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=left+(right-left)/2;}if(IFrameSplitOperator.IsNumber(item.Up)){var value=Math.abs(item.Up)*this.BarMaxHeight/this.MaxValue;if(value<1.5)value=1.5;//太短了 就直接画2个像素高度
4596
+ var y=yCenter-value;aryUpBar.push({X:x,Y:y});}if(IFrameSplitOperator.IsNumber(item.Down)){var value=Math.abs(item.Down)*this.BarMaxHeight/this.MaxValue;if(value<1.5)value=1.5;var y=yCenter+value;aryDownBar.push({X:x,Y:y});}}this.DrawBars(aryUpBar,this.UpColor);this.DrawBars(aryDownBar,this.DownColor);};this.CalculateBaseLine=function(){if(!this.HQChart)return;var bHScreen=this.ChartFrame.IsHScreen===true;var bMinute=this.IsMinuteFrame();var border=this.ChartFrame.GetBorder();if(bMinute){var chart=this.HQChart.ChartPaint[0];if(!chart||!IFrameSplitOperator.IsNumber(chart.YClose))return;this.YBaseLine=this.ChartFrame.GetYFromData(chart.YClose);if(bHScreen){this.BarMaxHeight=(border.RightEx-this.YBaseLine)/3;}else{this.BarMaxHeight=(this.YBaseLine-border.TopEx)/3;}}else{//TODO:K线
4597
4597
  }};this.DrawBars=function(aryBar,barColor){var bHScreen=this.ChartFrame.IsHScreen===true;var yCenter=this.YBaseLine;this.Canvas.strokeStyle=barColor;this.Canvas.beginPath();var barCount=0;for(var i=0;i<aryBar.length;++i){var item=aryBar[i];var x=ToFixedPoint(item.X);if(bHScreen){this.Canvas.moveTo(yCenter,x);this.Canvas.lineTo(item.Y,x);}else{this.Canvas.moveTo(x,yCenter);this.Canvas.lineTo(x,item.Y);}++barCount;}if(barCount>0)this.Canvas.stroke();};this.BuildCacheData=function(){this.MaxValue=null;var mapData=new _map2.default();this.MapCache=mapData;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryData))return;var max=null,min=null;for(var i=0;i<this.AryData.length;++i){var item=this.AryData[i];if(!item)continue;var key=this.BuildKey(item);mapData.set(key,item);if(IFrameSplitOperator.IsNumber(item.Up)){if(!max)max={Value:item.Up};else if(max.Value<item.Up)max.Value=item.Up;if(!min)min={Value:item.Up};else if(min.Value>item.Up)min.Value=item.Up;}if(IFrameSplitOperator.IsNumber(item.Down)){if(!max)max={Value:item.Down};else if(max.Value<item.Down)max.Value=item.Down;if(!min)min={Value:item.Down};else if(min.Value>item.Down)min.Value=item.Down;}}if(max&&min){this.MaxValue=Math.max(Math.abs(max.Value),Math.abs(min.Value));if(IFrameSplitOperator.IsNumber(this.DefaultMax))this.MaxValue=Math.max(this.DefaultMax,this.MaxValue);}};this.GetMaxMin=function(){return{Min:null,Max:null};};}function ChartClipColorStick(){this.newMethod=IChartPainting;//派生
4598
4598
  this.newMethod();delete this.newMethod;this.ClassName="ChartClipColorStick";this.UpColor=g_JSChartResource.UpBarColor;this.DownColor=g_JSChartResource.DownBarColor;this.LineWidth=1;this.Style=0;//1=同方向 0=上下两个方向
4599
4599
  //差值线
@@ -8938,7 +8938,7 @@ this.RequestHistoryMinuteData=function(){var self=this;this.IsBeforeData=false;t
8938
8938
  };var bBuySellBar=this.IsShowMinuteBuySellBar();var obj={Name:'MinuteChartContainer::RequestHistoryMinuteData',//类名::函数
8939
8939
  Explain:'多日分时数据',Request:{Url:self.HistoryMinuteApiUrl,Data:{daycount:self.DayCount,symbol:self.Symbol,callcation:callCation,AryDate:this.AryDate,IsShowBuySellBar:bBuySellBar},Type:'POST'},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvHistoryMinuteData(data);});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
8940
8940
  }JSNetwork.HttpRequest({url:self.HistoryMinuteApiUrl,data:{"symbol":self.Symbol,"daycount":self.DayCount},type:"post",dataType:"json",async:true,success:function success(data){self.ChartSplashPaint.EnableSplash(false);self.RecvHistoryMinuteData(data);}});};this.RecvHistoryMinuteData=function(data){if(this.EnableVerifyRecvData&&data.symbol!=this.Symbol){JSConsole.Chart.Warn('[MinuteChartContainer::RecvHistoryMinuteData] recv data symbol not match. HQChart['+this.Symbol+'] , Recv['+data.symbol+']');return;}this.DayData=MinuteChartContainer.JsonDataToMinuteDataArray(data);this.ColorLineData=MinuteChartContainer.JsonDataToHistoryMinuteLineColorData(data);this.MultiDayBeforeOpenData=MinuteChartContainer.JosnDataToBeforeOpenDataArray(data);this.MultiDayAfterCloseData=MinuteChartContainer.JosnDataToAfterCloseDataArray(data);var updateTime=MinuteChartContainer.JsonDataToHistoryMinuteLastUpdateTime(data);this.DataStatus.MultiDay=true;var lastDayData=null;if(IFrameSplitOperator.IsNonEmptyArray(data.data)&&data.data[0])lastDayData=data.data[0];if(lastDayData)this.RecvBuySellData(lastDayData.BuySellData);this.CaclutateCallCationYRange();this.Symbol=data.symbol;this.Name=data.name;this.SetCallCationDataBorder({Left:false,Right:false,MultiDay:{Left:this.IsShowMultiDayBeforeData,Right:this.IsShowMultiDayAfterData}});this.CaclutateLimitPrice(this.DayData[0].YClose,data.data[0].limitprice);//计算涨停价格
8941
- this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvHistoryMinuteData"});this.RequestOverlayHistoryMinuteData();this.BindAllOverlayIndexData(this.SourceData);this.AutoUpdateEvent(true,"MinuteChartContainer::RequestHistoryMinuteData");this.AutoUpdate();};this.CaclutateCallCationYRange=function(){//多日集合竞价Y轴统一成交量
8941
+ this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvHistoryMinuteData"});this.RequestOverlayHistoryMinuteData();this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:false});this.AutoUpdateEvent(true,"MinuteChartContainer::RequestHistoryMinuteData");this.AutoUpdate();};this.CaclutateCallCationYRange=function(){//多日集合竞价Y轴统一成交量
8942
8942
  var afterRange=null,beforeRange=null;if(IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData)){var range={Max:null,Min:null};for(var i=0;i<this.MultiDayAfterCloseData.length;++i){var item=this.MultiDayAfterCloseData[i];if(range.Max==null)range.Max=item.VolMax;else if(range.Max<item.VolMax)range.Max=item.VolMax;if(range.Min==null)range.Min=item.VolMin;else if(range.Min>item.VolMin)range.Min=item.VolMin;}afterRange=range;}if(IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData)){var range={Max:null,Min:null};for(var i=0;i<this.MultiDayBeforeOpenData.length;++i){var item=this.MultiDayBeforeOpenData[i];if(range.Max==null)range.Max=item.VolMax;else if(range.Max<item.VolMax)range.Max=item.VolMax;if(range.Min==null)range.Min=item.VolMin;else if(range.Min>item.VolMin)range.Min=item.VolMin;}beforeRange=range;}if(this.ShareAfterVol==2)// 公用坐标
8943
8943
  {if(afterRange&&beforeRange){var max=Math.max(afterRange.Max,beforeRange.Max);var min=Math.min(afterRange.Min,beforeRange.Min);afterRange.Max=beforeRange.Max=max;afterRange.Min=beforeRange.Min=min;}}if(afterRange){for(var i=0;i<this.MultiDayAfterCloseData.length;++i){var item=this.MultiDayAfterCloseData[i];item.VolMax=afterRange.Max;item.VolMin=afterRange.Min;}}if(beforeRange){for(var i=0;i<this.MultiDayBeforeOpenData.length;++i){var item=this.MultiDayBeforeOpenData[i];item.VolMax=beforeRange.Max;item.VolMin=beforeRange.Min;}}};this.UpdateHistoryMinuteUI=function(updateTime){var allMinuteData=this.HistoryMinuteDataToArray(this.DayData);//原始数据
8944
8944
  var sourceData=new ChartData();sourceData.Data=allMinuteData;if(updateTime)sourceData.UpdateTime=updateTime;this.SourceData=sourceData;this.TradeDate=this.DayData[0].Date;if(this.PageInfo&&this.PageInfo.Enable){this.DayOffset.DayCount=this.DayData.length;//一共的数据
@@ -8953,7 +8953,8 @@ item.Frame.XSplitOperator.IsBeforeData=this.IsBeforeData;item.Frame.XSplitOperat
8953
8953
  {var overlayItem=item.OverlayIndex[j];overlayItem.Frame.XPointCount=item.Frame.XPointCount;overlayItem.Frame.MinuteCount=item.Frame.MinuteCount;}}this.ChartCorssCursor.StringFormatY.Symbol=this.Symbol;this.ChartCorssCursor.StringFormatX.Symbol=this.Symbol;this.ChartCorssCursor.StringFormatX.IsBeforeData=this.IsBeforeData;this.ChartCorssCursor.StringFormatX.IsAfterData=this.IsAfterData;this.TitlePaint[0].IsShowDate=true;this.UpdateDataOffset();this.UpdateFrameMaxMin();//调整坐标最大 最小值
8954
8954
  this.CreateChartDrawPictureByStorage();//创建画图工具
8955
8955
  //执行脚本
8956
- if(this.Frame.SubFrame.length>2){var bindData=new ChartData();bindData.Data=allMinuteData;for(var i=2;i<this.Frame.SubFrame.length;++i){this.BindIndexData(i,bindData);}}this.Frame.SetSizeChage(true);this.Draw();};this.HistoryMinuteDataToArray=function(data){var result=[];for(var i=data.length-1;i>=0;--i){var item=data[i];for(var j=0;j<item.Data.length;++j){result.push(item.Data[j]);}}return result;};//更新一天的数据
8956
+ if(this.Frame.SubFrame.length>2){var bindData=new ChartData();bindData.Data=allMinuteData;for(var i=2;i<this.Frame.SubFrame.length;++i){this.BindIndexData(i,bindData);}}this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:true});//同步模式脚本
8957
+ this.Frame.SetSizeChage(true);this.Draw();};this.HistoryMinuteDataToArray=function(data){var result=[];for(var i=data.length-1;i>=0;--i){var item=data[i];for(var j=0;j<item.Data.length;++j){result.push(item.Data[j]);}}return result;};//更新一天的数据
8957
8958
  this.UpdateLatestMinuteData=function(data,date,stock){if(!this.DayData)return;for(var i=0;i<this.DayData.length;++i){var item=this.DayData[i];if(item.Date===date){item.Data=data;//整一天的数据都替换掉
8958
8959
  if(stock&&IFrameSplitOperator.IsNumber(stock.yclose))item.YClose=stock.yclose;if(stock&&IFrameSplitOperator.IsNumber(stock.yclearing))item.YClearing=stock.yclearing;return;}}if(this.DayData.length>0){if(this.DayData[0].Date<date)//新的一天 插入
8959
8960
  {var dayItem=new ChartData();dayItem.Date=date;dayItem.Data=data;if(stock&&IFrameSplitOperator.IsNumber(stock.yclose))dayItem.YClose=stock.yclose;if(stock&&IFrameSplitOperator.IsNumber(stock.yclearing))dayItem.YClearing=stock.yclearing;this.DayData.unshift(dayItem);}}};//更新最新的几条数据
@@ -8973,7 +8974,7 @@ this.MultiDayBeforeOpenData.push(beforeOpenData);}if(afterCloseData&&IFrameSplit
8973
8974
  this.RecvUpdateMinuteData=function(data){var minuteData=MinuteChartContainer.JsonDataToUpdateMinuteData(data);var aryColorData=MinuteChartContainer.JsonDataToMinuteLineColorData(data);var beforeOpenData=MinuteChartContainer.JsonDataToBeforeOpenData(data);var afterCloseData=MinuteChartContainer.JsonDataToAfterCloseData(data);var updateTime=MinuteChartContainer.JsonDataToMinuteLastUpdateTime(data);//数据最后的更新时间
8974
8975
  if(this.DayCount>1)//多日走势图
8975
8976
  {this.UpdateCallCationData(beforeOpenData,afterCloseData);this.UpdateLineColorData(aryColorData,minuteData.date);this.UpdateLatestMinuteDataV2(minuteData);this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvUpdateMinuteData"});this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
8976
- this.BindAllOverlayIndexData(this.SourceData);this.AutoUpdateEvent(true,"MinuteChartContainer::RecvUpdateMinuteData");this.AutoUpdate();return;}if(this.IsBeforeData&&beforeOpenData)this.BeforeOpenData=beforeOpenData;if(this.IsAfterData&&afterCloseData)this.AfterCloseData=afterCloseData;//原始数据
8977
+ this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:false});this.AutoUpdateEvent(true,"MinuteChartContainer::RecvUpdateMinuteData");this.AutoUpdate();return;}if(this.IsBeforeData&&beforeOpenData)this.BeforeOpenData=beforeOpenData;if(this.IsAfterData&&afterCloseData)this.AfterCloseData=afterCloseData;//原始数据
8977
8978
  this.UpdateLatestMinuteDataV2(minuteData);this.UpdateMinuteUI(data.stock[0],{FunctionName:"RecvUpdateMinuteData"});if(data.AutoUpdate===false)//不执行自动更新
8978
8979
  {}else{this.AutoUpdateEvent(true,"MinuteChartContainer::RecvUpdateMinuteData");this.AutoUpdate();}};this.RecvBuySellData=function(data){if(!data)return;if(Array.isArray(data.AryBuy)){this.BuySellData.AryBuy=data.AryBuy.slice();}if(Array.isArray(data.ArySell)){this.BuySellData.ArySell=data.ArySell.slice();}};this.RecvMinuteData=function(data){if(!data){JSConsole.Chart.Warn("[MinuteChartContainer::RecvMinuteData] recv data is null");return;}if(data.dataType==1)//增量更新数据模式
8979
8980
  {this.RecvUpdateMinuteData(data);return;}if(!data.stock[0])return;if(data.stock[0].symbol!=this.Symbol&&this.EnableVerifyRecvData){JSConsole.Chart.Warn('[MinuteChartContainer::RecvMinuteData] recv data symbol not match. HQChart['+this.Symbol+'] , Recv['+data.stock[0].symbol+']');return;}var aryMinuteData=MinuteChartContainer.JsonDataToMinuteData(data);var aryColorData=MinuteChartContainer.JsonDataToMinuteLineColorData(data);this.BeforeOpenData=null;this.AfterCloseData=null;var beforeOpenData=MinuteChartContainer.JsonDataToBeforeOpenData(data);var afterCloseData=MinuteChartContainer.JsonDataToAfterCloseData(data);var updateTime=MinuteChartContainer.JsonDataToMinuteLastUpdateTime(data);//数据最后的更新时间
@@ -8982,7 +8983,7 @@ if(IFrameSplitOperator.IsNonEmptyArray(data.stock)&&data.stock[0]){this.DataStat
8982
8983
  this.RecvBuySellData(data.stock[0].BuySellData);}if(data.LatestPointFlash)//最新数据闪烁
8983
8984
  {var item=data.LatestPointFlash;if(IFrameSplitOperator.IsNumber(item.FlashCount))this.SetLatestPointFlash(item.FlashCount);}this.DataStatus.LatestDay=true;if(this.DayCount>1)//多日走势图
8984
8985
  {this.UpdateCallCationData(beforeOpenData,afterCloseData);this.UpdateLineColorData(aryColorData,data.stock[0].date);this.UpdateLatestMinuteData(aryMinuteData,data.stock[0].date,data.stock[0]);this.UpdateTradeStatusData(data.TradeStatus);this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"});this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
8985
- this.BindAllOverlayIndexData(this.SourceData);this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();return;}if(this.IsOnTouch==true||this.IsPressKeyboard==true)//正在操作中不更新数据
8986
+ this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:false});this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();return;}if(this.IsOnTouch==true||this.IsPressKeyboard==true)//正在操作中不更新数据
8986
8987
  {if(this.SourceData&&IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){this.AutoUpdate();return;}}//原始数据
8987
8988
  var sourceData=new ChartData();sourceData.Data=aryMinuteData;sourceData.UpdateTime=updateTime;this.SourceData=sourceData;this.ColorLineData=aryColorData;this.UpdateTradeStatusData(data.TradeStatus);this.UpdateMinuteUI(data.stock[0],{FunctionName:"RecvMinuteData",Day:{IsFirstData:bFirstData}});if(data.AutoUpdate===false)//不执行自动更新
8988
8989
  {}else{this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();}};//更新单日分时图
@@ -8993,10 +8994,10 @@ this.CaclutateLimitPrice(yClose,stockData.limitprice);//计算涨停价格
8993
8994
  var extendData=null;if(stockData.high>0&&stockData.low>0)extendData={High:stockData.high,Low:stockData.low};this.BindMainData(this.SourceData,yClose,extendData);if(this.Frame.SubFrame.length>2){var bindData=new ChartData();bindData.Data=this.SourceData.Data;for(var i=2;i<this.Frame.SubFrame.length;++i){this.BindIndexData(i,bindData);}}for(var i=0,j=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];item.Frame.XSplitOperator.Symbol=this.Symbol;item.Frame.XSplitOperator.DayCount=1;item.Frame.XSplitOperator.Operator();//调整X轴个数
8994
8995
  item.Frame.YSplitOperator.Symbol=this.Symbol;for(j=0;j<item.OverlayIndex.length;++j)//子坐标X轴个数同步
8995
8996
  {var overlayItem=item.OverlayIndex[j];overlayItem.Frame.XPointCount=item.Frame.XPointCount;overlayItem.Frame.MinuteCount=item.Frame.MinuteCount;}}this.ChartCorssCursor.StringFormatY.Symbol=this.Symbol;this.ChartCorssCursor.StringFormatX.Symbol=this.Symbol;if(MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol))this.TitlePaint[0].IsShowDate=false;if(stockData.IsHistoryMinute==true)this.TitlePaint[0].IsShowDate=true;var chartInfo=this.GetChartMinuteInfo();if(chartInfo)chartInfo.SourceData=this.SourceData;//数据绑定到信息地雷上
8996
- if(eventData)this.RecvMinuteDataEvent(eventData);this.RequestMinuteInfoData();this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
8997
+ this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:true});if(eventData)this.RecvMinuteDataEvent(eventData);this.RequestMinuteInfoData();this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
8997
8998
  this.CreateChartDrawPictureByStorage();//创建画图工具
8998
8999
  this.UpdateFrameMaxMin();//调整坐标最大 最小值
8999
- this.Frame.SetSizeChage(true);this.Draw();this.BindAllOverlayIndexData(this.SourceData);};this.CaclutateLimitPrice=function(yClose,limitData){this.LimitPrice=null;//var limitData=data.stock[0].limitprice;
9000
+ this.Frame.SetSizeChage(true);this.Draw();this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:false});};this.CaclutateLimitPrice=function(yClose,limitData){this.LimitPrice=null;//var limitData=data.stock[0].limitprice;
9000
9001
  if(limitData&&limitData.max>0&&limitData.min>0)//API里带涨停价格 直接使用
9001
9002
  {this.LimitPrice={Max:limitData.max,Min:limitData.min};return;}var range=MARKET_SUFFIX_NAME.GetLimitPriceRange(this.Symbol,this.Name);//通过规则获取涨停价格
9002
9003
  if(!range){JSConsole.Chart.Log('[MinuteChartContainer::CaclutateLimitPrice] '+this.Symbol+' no limit price.');return;}//var yClose=data.stock[0].yclose;
@@ -9137,7 +9138,9 @@ scriptIndex.Create(this,windowIndex);overlayFrame.Script=scriptIndex;}subFrame.O
9137
9138
  {if(!this.DeleteOverlayIndex(identify,null))return;this.Frame.ResetXYSplit(true);this.Draw();};//计算叠加指标
9138
9139
  this.BindAllOverlayIndexData=function(hisData,option){if(!this.Frame||!this.Frame.SubFrame)return;//叠加指标
9139
9140
  for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];this.BindOverlayIndexData(overlayItem,i,hisData,option);}}};//叠加指标
9140
- this.BindOverlayIndexData=function(overlayItem,windowIndex,hisData,option){if(!overlayItem.Script)return;if(typeof overlayItem.Script.RequestData=='function'){overlayItem.Script.RequestData(this,windowIndex,hisData);return;}if(typeof overlayItem.Script.ExecuteScript=='function'){overlayItem.Script.ExecuteScript(this,windowIndex,hisData);return;}overlayItem.Script.BindData(this,windowIndex,hisData);};//获取子窗口的所有画法
9141
+ this.BindOverlayIndexData=function(overlayItem,windowIndex,hisData,option){if(!overlayItem.Script)return;if(typeof overlayItem.Script.RequestData=='function'){overlayItem.Script.RequestData(this,windowIndex,hisData);return;}if(typeof overlayItem.Script.ExecuteScript=='function'){if(option){if(option.CheckRunCount)//检测执行次数
9142
+ {if(overlayItem.Script.IsExcessRunCount())return;}if(IFrameSplitOperator.IsBool(option.SyncExecute))//异步|同步
9143
+ {if(overlayItem.Script.IsSync!=option.SyncExecute)return;}}overlayItem.Script.ExecuteScript(this,windowIndex,hisData);return;}overlayItem.Script.BindData(this,windowIndex,hisData);};//获取子窗口的所有画法
9141
9144
  this.GetChartPaint=function(windowIndex){var paint=new Array();for(var i in this.ChartPaint){if(i<3)continue;//分钟 均线 成交量 3个线不能改
9142
9145
  var item=this.ChartPaint[i];if(item.ChartFrame==this.Frame.SubFrame[windowIndex].Frame)paint.push(item);}return paint;};//创建指定窗口指标
9143
9146
  this.CreateWindowIndex=function(windowIndex){this.WindowIndex[windowIndex].Create(this,windowIndex);};this.OnTouchFinished=function(){if(this.EnableClickModel===true){if(this.ClickModel.IsShowCorssCursor==true&&this.ClickModel.PreventHide)return;//阻止隐藏
@@ -15047,7 +15050,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15047
15050
  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);};}/********************************************************************************
15048
15051
  * 版本信息输出
15049
15052
  *
15050
- */var HQCHART_VERSION="1.1.14847";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();//把给外界调用的方法暴露出来
15053
+ */var HQCHART_VERSION="1.1.14850";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();//把给外界调用的方法暴露出来
15051
15054
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15052
15055
  // BaseIndex:BaseIndex,
15053
15056
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14848",
3
+ "version": "1.1.14851",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -41525,7 +41525,7 @@ function ChartBaseLineBar()
41525
41525
  if (IFrameSplitOperator.IsNumber(item.Up))
41526
41526
  {
41527
41527
  var value=Math.abs(item.Up)*this.BarMaxHeight/this.MaxValue;
41528
- if (value<2) value=2; //太短了 就直接画2个像素高度
41528
+ if (value<1.5) value=1.5; //太短了 就直接画2个像素高度
41529
41529
  var y=yCenter-value;
41530
41530
 
41531
41531
  aryUpBar.push({ X:x, Y:y});
@@ -41534,7 +41534,7 @@ function ChartBaseLineBar()
41534
41534
  if (IFrameSplitOperator.IsNumber(item.Down))
41535
41535
  {
41536
41536
  var value=Math.abs(item.Down)*this.BarMaxHeight/this.MaxValue;
41537
- if (value<2) value=2;
41537
+ if (value<1.5) value=1.5;
41538
41538
  var y=yCenter+value;
41539
41539
  aryDownBar.push({X:x, Y:y});
41540
41540
  }
@@ -91634,7 +91634,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
91634
91634
  this.RecvMinuteDataEvent( {FunctionName:"RecvHistoryMinuteData"} );
91635
91635
  this.RequestOverlayHistoryMinuteData();
91636
91636
 
91637
- this.BindAllOverlayIndexData(this.SourceData);
91637
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
91638
91638
 
91639
91639
  this.AutoUpdateEvent(true, "MinuteChartContainer::RequestHistoryMinuteData");
91640
91640
  this.AutoUpdate();
@@ -91790,6 +91790,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
91790
91790
  }
91791
91791
  }
91792
91792
 
91793
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:true }); //同步模式脚本
91794
+
91793
91795
  this.Frame.SetSizeChage(true);
91794
91796
  this.Draw();
91795
91797
  }
@@ -92078,7 +92080,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
92078
92080
  this.UpdateHistoryMinuteUI(updateTime);
92079
92081
  this.RecvMinuteDataEvent({FunctionName:"RecvUpdateMinuteData"} );
92080
92082
  this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
92081
- this.BindAllOverlayIndexData(this.SourceData);
92083
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
92082
92084
  this.AutoUpdateEvent(true, "MinuteChartContainer::RecvUpdateMinuteData");
92083
92085
  this.AutoUpdate();
92084
92086
  return;
@@ -92175,7 +92177,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
92175
92177
  this.UpdateHistoryMinuteUI(updateTime);
92176
92178
  this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"} );
92177
92179
  this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
92178
- this.BindAllOverlayIndexData(this.SourceData);
92180
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
92179
92181
  this.AutoUpdateEvent(true, "MinuteChartContainer::RecvMinuteData");
92180
92182
  this.AutoUpdate();
92181
92183
  return;
@@ -92279,16 +92281,18 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
92279
92281
  var chartInfo=this.GetChartMinuteInfo();
92280
92282
  if (chartInfo) chartInfo.SourceData=this.SourceData; //数据绑定到信息地雷上
92281
92283
 
92284
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:true });
92285
+
92282
92286
  if (eventData) this.RecvMinuteDataEvent( eventData );
92283
92287
  this.RequestMinuteInfoData();
92284
- this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
92288
+ this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
92285
92289
  this.CreateChartDrawPictureByStorage(); //创建画图工具
92286
92290
 
92287
92291
  this.UpdateFrameMaxMin(); //调整坐标最大 最小值
92288
92292
  this.Frame.SetSizeChage(true);
92289
92293
  this.Draw();
92290
92294
 
92291
- this.BindAllOverlayIndexData(this.SourceData);
92295
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
92292
92296
  }
92293
92297
 
92294
92298
  this.CaclutateLimitPrice=function(yClose, limitData)
@@ -93196,6 +93200,21 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
93196
93200
 
93197
93201
  if (typeof(overlayItem.Script.ExecuteScript)=='function')
93198
93202
  {
93203
+ if (option)
93204
+ {
93205
+ if (option.CheckRunCount) //检测执行次数
93206
+ {
93207
+ if (overlayItem.Script.IsExcessRunCount())
93208
+ return;
93209
+ }
93210
+
93211
+ if (IFrameSplitOperator.IsBool(option.SyncExecute)) //异步|同步
93212
+ {
93213
+ if (overlayItem.Script.IsSync!=option.SyncExecute)
93214
+ return;
93215
+ }
93216
+ }
93217
+
93199
93218
  overlayItem.Script.ExecuteScript(this,windowIndex,hisData);
93200
93219
  return;
93201
93220
  }
@@ -45621,7 +45621,7 @@ function ChartBaseLineBar()
45621
45621
  if (IFrameSplitOperator.IsNumber(item.Up))
45622
45622
  {
45623
45623
  var value=Math.abs(item.Up)*this.BarMaxHeight/this.MaxValue;
45624
- if (value<2) value=2; //太短了 就直接画2个像素高度
45624
+ if (value<1.5) value=1.5; //太短了 就直接画2个像素高度
45625
45625
  var y=yCenter-value;
45626
45626
 
45627
45627
  aryUpBar.push({ X:x, Y:y});
@@ -45630,7 +45630,7 @@ function ChartBaseLineBar()
45630
45630
  if (IFrameSplitOperator.IsNumber(item.Down))
45631
45631
  {
45632
45632
  var value=Math.abs(item.Down)*this.BarMaxHeight/this.MaxValue;
45633
- if (value<2) value=2;
45633
+ if (value<1.5) value=1.5;
45634
45634
  var y=yCenter+value;
45635
45635
  aryDownBar.push({X:x, Y:y});
45636
45636
  }
@@ -95730,7 +95730,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95730
95730
  this.RecvMinuteDataEvent( {FunctionName:"RecvHistoryMinuteData"} );
95731
95731
  this.RequestOverlayHistoryMinuteData();
95732
95732
 
95733
- this.BindAllOverlayIndexData(this.SourceData);
95733
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
95734
95734
 
95735
95735
  this.AutoUpdateEvent(true, "MinuteChartContainer::RequestHistoryMinuteData");
95736
95736
  this.AutoUpdate();
@@ -95886,6 +95886,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95886
95886
  }
95887
95887
  }
95888
95888
 
95889
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:true }); //同步模式脚本
95890
+
95889
95891
  this.Frame.SetSizeChage(true);
95890
95892
  this.Draw();
95891
95893
  }
@@ -96174,7 +96176,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96174
96176
  this.UpdateHistoryMinuteUI(updateTime);
96175
96177
  this.RecvMinuteDataEvent({FunctionName:"RecvUpdateMinuteData"} );
96176
96178
  this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
96177
- this.BindAllOverlayIndexData(this.SourceData);
96179
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
96178
96180
  this.AutoUpdateEvent(true, "MinuteChartContainer::RecvUpdateMinuteData");
96179
96181
  this.AutoUpdate();
96180
96182
  return;
@@ -96271,7 +96273,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96271
96273
  this.UpdateHistoryMinuteUI(updateTime);
96272
96274
  this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"} );
96273
96275
  this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
96274
- this.BindAllOverlayIndexData(this.SourceData);
96276
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
96275
96277
  this.AutoUpdateEvent(true, "MinuteChartContainer::RecvMinuteData");
96276
96278
  this.AutoUpdate();
96277
96279
  return;
@@ -96375,16 +96377,18 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96375
96377
  var chartInfo=this.GetChartMinuteInfo();
96376
96378
  if (chartInfo) chartInfo.SourceData=this.SourceData; //数据绑定到信息地雷上
96377
96379
 
96380
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:true });
96381
+
96378
96382
  if (eventData) this.RecvMinuteDataEvent( eventData );
96379
96383
  this.RequestMinuteInfoData();
96380
- this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
96384
+ this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
96381
96385
  this.CreateChartDrawPictureByStorage(); //创建画图工具
96382
96386
 
96383
96387
  this.UpdateFrameMaxMin(); //调整坐标最大 最小值
96384
96388
  this.Frame.SetSizeChage(true);
96385
96389
  this.Draw();
96386
96390
 
96387
- this.BindAllOverlayIndexData(this.SourceData);
96391
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
96388
96392
  }
96389
96393
 
96390
96394
  this.CaclutateLimitPrice=function(yClose, limitData)
@@ -97292,6 +97296,21 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
97292
97296
 
97293
97297
  if (typeof(overlayItem.Script.ExecuteScript)=='function')
97294
97298
  {
97299
+ if (option)
97300
+ {
97301
+ if (option.CheckRunCount) //检测执行次数
97302
+ {
97303
+ if (overlayItem.Script.IsExcessRunCount())
97304
+ return;
97305
+ }
97306
+
97307
+ if (IFrameSplitOperator.IsBool(option.SyncExecute)) //异步|同步
97308
+ {
97309
+ if (overlayItem.Script.IsSync!=option.SyncExecute)
97310
+ return;
97311
+ }
97312
+ }
97313
+
97295
97314
  overlayItem.Script.ExecuteScript(this,windowIndex,hisData);
97296
97315
  return;
97297
97316
  }
@@ -150074,7 +150093,7 @@ function ScrollBarBGChart()
150074
150093
 
150075
150094
 
150076
150095
 
150077
- var HQCHART_VERSION="1.1.14847";
150096
+ var HQCHART_VERSION="1.1.14850";
150078
150097
 
150079
150098
  function PrintHQChartVersion()
150080
150099
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14847";
8
+ var HQCHART_VERSION="1.1.14850";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -0,0 +1,56 @@
1
+
2
+ /*
3
+ Copyright (c) 2018 jones
4
+
5
+ http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ 开源项目 https://github.com/jones2000/HQChart
8
+
9
+ jones_2000@163.com
10
+
11
+ 阿里云api网关网络请求模块
12
+ */
13
+
14
+ function JSAliYunNetwork()
15
+ {
16
+ this.AliYunUrl=[]; //需要验证的阿里账户的域名
17
+ this.AppCode;
18
+
19
+ this.HttpRequest = function(obj)
20
+ {
21
+ $.ajax(
22
+ {
23
+ headers: this.AppCode,
24
+ url: obj.url, data: obj.data,
25
+ type:obj.type, dataType: obj.dataType,async:obj.async,
26
+ success: obj.success,
27
+ error: obj.error,
28
+ }
29
+ );
30
+ }
31
+ }
32
+
33
+
34
+
35
+ // var g_AilYunNetwork=new JSAliYunNetwork(); //初始化一个全局的变量
36
+ /* g_AilYunNetwork.AliYunUrl[0]="xxxxxxx"; //域名 或 具体的地址
37
+ //设置账户密码
38
+ {
39
+ Authorization:'APPCODE 4333fc85c1284212a4724d7159304e70'
40
+ }
41
+
42
+ //替换默认的网络请求接口
43
+ JSNetwork.HttpRequest= function (obj)
44
+ {
45
+ g_AilYunNetwork.HttpRequest(obj);
46
+ }
47
+ */
48
+
49
+ /*外部导入*/
50
+ import $ from 'jquery'
51
+
52
+ /*暴露外部用的方法*/
53
+ export default {
54
+ g_AliYunNetwork: JSAliYunNetwork
55
+
56
+ }
@@ -45665,7 +45665,7 @@ function ChartBaseLineBar()
45665
45665
  if (IFrameSplitOperator.IsNumber(item.Up))
45666
45666
  {
45667
45667
  var value=Math.abs(item.Up)*this.BarMaxHeight/this.MaxValue;
45668
- if (value<2) value=2; //太短了 就直接画2个像素高度
45668
+ if (value<1.5) value=1.5; //太短了 就直接画2个像素高度
45669
45669
  var y=yCenter-value;
45670
45670
 
45671
45671
  aryUpBar.push({ X:x, Y:y});
@@ -45674,7 +45674,7 @@ function ChartBaseLineBar()
45674
45674
  if (IFrameSplitOperator.IsNumber(item.Down))
45675
45675
  {
45676
45676
  var value=Math.abs(item.Down)*this.BarMaxHeight/this.MaxValue;
45677
- if (value<2) value=2;
45677
+ if (value<1.5) value=1.5;
45678
45678
  var y=yCenter+value;
45679
45679
  aryDownBar.push({X:x, Y:y});
45680
45680
  }
@@ -95774,7 +95774,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95774
95774
  this.RecvMinuteDataEvent( {FunctionName:"RecvHistoryMinuteData"} );
95775
95775
  this.RequestOverlayHistoryMinuteData();
95776
95776
 
95777
- this.BindAllOverlayIndexData(this.SourceData);
95777
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
95778
95778
 
95779
95779
  this.AutoUpdateEvent(true, "MinuteChartContainer::RequestHistoryMinuteData");
95780
95780
  this.AutoUpdate();
@@ -95930,6 +95930,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
95930
95930
  }
95931
95931
  }
95932
95932
 
95933
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:true }); //同步模式脚本
95934
+
95933
95935
  this.Frame.SetSizeChage(true);
95934
95936
  this.Draw();
95935
95937
  }
@@ -96218,7 +96220,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96218
96220
  this.UpdateHistoryMinuteUI(updateTime);
96219
96221
  this.RecvMinuteDataEvent({FunctionName:"RecvUpdateMinuteData"} );
96220
96222
  this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
96221
- this.BindAllOverlayIndexData(this.SourceData);
96223
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
96222
96224
  this.AutoUpdateEvent(true, "MinuteChartContainer::RecvUpdateMinuteData");
96223
96225
  this.AutoUpdate();
96224
96226
  return;
@@ -96315,7 +96317,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96315
96317
  this.UpdateHistoryMinuteUI(updateTime);
96316
96318
  this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"} );
96317
96319
  this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
96318
- this.BindAllOverlayIndexData(this.SourceData);
96320
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
96319
96321
  this.AutoUpdateEvent(true, "MinuteChartContainer::RecvMinuteData");
96320
96322
  this.AutoUpdate();
96321
96323
  return;
@@ -96419,16 +96421,18 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96419
96421
  var chartInfo=this.GetChartMinuteInfo();
96420
96422
  if (chartInfo) chartInfo.SourceData=this.SourceData; //数据绑定到信息地雷上
96421
96423
 
96424
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:true });
96425
+
96422
96426
  if (eventData) this.RecvMinuteDataEvent( eventData );
96423
96427
  this.RequestMinuteInfoData();
96424
- this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
96428
+ this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
96425
96429
  this.CreateChartDrawPictureByStorage(); //创建画图工具
96426
96430
 
96427
96431
  this.UpdateFrameMaxMin(); //调整坐标最大 最小值
96428
96432
  this.Frame.SetSizeChage(true);
96429
96433
  this.Draw();
96430
96434
 
96431
- this.BindAllOverlayIndexData(this.SourceData);
96435
+ this.BindAllOverlayIndexData(this.SourceData, { SyncExecute:false });
96432
96436
  }
96433
96437
 
96434
96438
  this.CaclutateLimitPrice=function(yClose, limitData)
@@ -97336,6 +97340,21 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
97336
97340
 
97337
97341
  if (typeof(overlayItem.Script.ExecuteScript)=='function')
97338
97342
  {
97343
+ if (option)
97344
+ {
97345
+ if (option.CheckRunCount) //检测执行次数
97346
+ {
97347
+ if (overlayItem.Script.IsExcessRunCount())
97348
+ return;
97349
+ }
97350
+
97351
+ if (IFrameSplitOperator.IsBool(option.SyncExecute)) //异步|同步
97352
+ {
97353
+ if (overlayItem.Script.IsSync!=option.SyncExecute)
97354
+ return;
97355
+ }
97356
+ }
97357
+
97339
97358
  overlayItem.Script.ExecuteScript(this,windowIndex,hisData);
97340
97359
  return;
97341
97360
  }
@@ -161114,7 +161133,7 @@ function HQChartScriptWorker()
161114
161133
 
161115
161134
 
161116
161135
 
161117
- var HQCHART_VERSION="1.1.14847";
161136
+ var HQCHART_VERSION="1.1.14850";
161118
161137
 
161119
161138
  function PrintHQChartVersion()
161120
161139
  {