hqchart 1.1.14793 → 1.1.14798

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.
@@ -12915,15 +12915,16 @@ for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.Is
12915
12915
  this.RequestDealData=function(){this.ChartSplashPaint.SetTitle(this.LoadDataSplashTitle);this.ChartSplashPaint.EnableSplash(true);this.Draw();var self=this;if(this.NetworkFilter){var obj={Name:'JSDealChartContainer::RequestDealData',//类名::
12916
12916
  Explain:'成交明细',Request:{Data:{symbol:self.Symbol,tradeDate:self.TradeDate}},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvDealData(data);self.AutoUpdateEvent(true,'JSDealChartContainer::RequestDealData');self.AutoUpdate();});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
12917
12917
  }var cacheUrl=g_JSChartResource.CacheDomain+'/cache/dealday/today/'+this.Symbol+'.json';JSNetwork.HttpRequest({url:cacheUrl,type:"get",dataType:"json",async:true,success:function success(data){self.ChartSplashPaint.EnableSplash(false);self.RecvDealData(data);self.AutoUpdate(1);},error:function error(http,e){self.ChartSplashPaint.EnableSplash(false);self.AutoUpdate();//self.RecvError(http,e,param);;
12918
- }});};this.RecvDealData=function(data){var aryDeal=JSDealChartContainer.JsonDataToDealData(data);this.SourceData={DataOffset:0,Data:aryDeal};this.Data={DataOffset:0,Data:this.FilterData(this.CloneArray(aryDeal))};this.Symbol=data.symbol;this.Name=data.name;var chart=this.ChartPaint[0];chart.Data=this.Data;chart.Symbol=this.Symbol;chart.YClose=data.yclose;chart.Open=data.open;if(this.IsShowLastPage)this.SetLastPageDataOffset();//显示最后一屏
12919
- this.Draw();};this.SetLastPageDataOffset=function(){var chart=this.ChartPaint[0];var dataCount=0;if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))dataCount=this.SourceData.Data.length;var pageSize=chart.GetPageSize(true);var offset=dataCount-pageSize;if(offset<0)offset=0;this.Data.DataOffset=offset;};//增量数据下载
12918
+ }});};this.RecvDealData=function(data){var chart=this.GetDealChart();if(!chart)return;var aryDeal=JSDealChartContainer.JsonDataToDealData(data);if(chart.ShowOrder===1&&IFrameSplitOperator.IsNonEmptyArray(aryDeal))//倒序
12919
+ aryDeal=aryDeal.reverse();this.SourceData={DataOffset:0,Data:aryDeal};this.Data={DataOffset:0,Data:this.FilterData(this.CloneArray(aryDeal))};this.Symbol=data.symbol;this.Name=data.name;var chart=this.ChartPaint[0];chart.Data=this.Data;chart.Symbol=this.Symbol;chart.YClose=data.yclose;chart.Open=data.open;if(this.IsShowLastPage)this.SetLastPageDataOffset();//显示最后一屏
12920
+ this.Draw();};this.SetLastPageDataOffset=function(){var chart=this.GetDealChart();if(!chart)return;if(chart.ShowOrder===1){this.Data.DataOffset=0;}else{var dataCount=0;if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))dataCount=this.SourceData.Data.length;var pageSize=chart.GetPageSize(true);var offset=dataCount-pageSize;if(offset<0)offset=0;this.Data.DataOffset=offset;}};//增量数据下载
12920
12921
  this.RequestDealUpdateData=function(){var self=this;if(this.NetworkFilter){var obj={Name:'JSDealChartContainer::RequestDealUpdateData',//类名::函数名
12921
12922
  Explain:'增量成交明细',Request:{Data:{symbol:self.Symbol}},Self:this,PreventDefault:false};if(this.Data&&IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)){var lastItem=this.Data.Data[this.Data.Data.length-1];//最后一条数据
12922
12923
  obj.LastItem=lastItem;}this.NetworkFilter(obj,function(data){self.RecvDealUpdateData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;}};this.GetDealChart=function(){return this.ChartPaint[0];};this.RecvDealUpdateData=function(data){var aryDeal=JSDealChartContainer.JsonDataToDealData(data);if(!IFrameSplitOperator.IsNonEmptyArray(aryDeal))return;var chart=this.GetDealChart();if(!chart)return;if(data.UpdateType===1)//全量更新
12923
- {this.SourceData.Data=aryDeal;var oldCount=0,newCount=0;if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))oldCount=this.Data.Data.length;this.Data.Data=this.FilterData(this.CloneArray(aryDeal));if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))newCount=this.Data.Data.length;if(oldCount==0){if(this.IsShowLastPage)this.SetLastPageDataOffset();//显示最后一屏
12924
+ {if(chart.ShowOrder===1){if(IFrameSplitOperator.IsNonEmptyArray(aryDeal))aryDeal=aryDeal.reverse();this.SourceData.Data=aryDeal;this.Data.Data=this.FilterData(this.CloneArray(aryDeal));}else{this.SourceData.Data=aryDeal;var oldCount=0,newCount=0;if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))oldCount=this.Data.Data.length;this.Data.Data=this.FilterData(this.CloneArray(aryDeal));if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))newCount=this.Data.Data.length;if(oldCount==0){if(this.IsShowLastPage)this.SetLastPageDataOffset();//显示最后一屏
12924
12925
  }else if(newCount>oldCount)//增长 偏移增加
12925
- {var pageSize=chart.GetPageSize();var count=newCount-oldCount;for(var i=0;i<count;++i){if(this.Data.DataOffset+pageSize<this.Data.Data.length)++this.Data.DataOffset;}}else{if(this.Data.DataOffset>=this.Data.Data.length)this.Data.DataOffset=0;}}else{this.AddDealData(this.SourceData,aryDeal);this.AddDealData(this.Data,this.FilterData(aryDeal));}if(data.IsShowLastPage===true)this.SetLastPageDataOffset();this.Draw();};this.AddDealData=function(dealData,aryNewData){if(!dealData.Data)//原来是空的
12926
- {dealData.Data=aryNewData;}else{var pageSize=0;var chart=this.ChartPaint[0];if(chart)pageSize=chart.GetPageSize();for(var i=0;i<aryNewData.length;++i){dealData.Data.push(aryNewData[i]);if(dealData.DataOffset+pageSize<dealData.Data.length)++dealData.DataOffset;}}};this.AutoUpdate=function(waitTime)//waitTime 更新时间
12926
+ {var pageSize=chart.GetPageSize();var count=newCount-oldCount;for(var i=0;i<count;++i){if(this.Data.DataOffset+pageSize<this.Data.Data.length)++this.Data.DataOffset;}}else{if(this.Data.DataOffset>=this.Data.Data.length)this.Data.DataOffset=0;}}}else{this.AddDealData(this.SourceData,aryDeal);this.AddDealData(this.Data,this.FilterData(aryDeal));}if(data.IsShowLastPage===true)this.SetLastPageDataOffset();this.Draw();};this.AddDealData=function(dealData,aryNewData){var chart=this.GetDealChart();if(!chart)return;if(!dealData.Data)//原来是空的
12927
+ {if(chart.ShowOrder===1&&IFrameSplitOperator.IsNonEmptyArray(aryNewData))aryNewData=aryNewData.reverse();dealData.Data=aryNewData;}else{if(chart.ShowOrder===1){for(var i=0;i<aryNewData.length;++i){dealData.Data.unshift(aryNewData[i]);}}else{var pageSize=chart.GetPageSize();for(var i=0;i<aryNewData.length;++i){dealData.Data.push(aryNewData[i]);if(dealData.DataOffset+pageSize<dealData.Data.length)++dealData.DataOffset;}}}};this.AutoUpdate=function(waitTime)//waitTime 更新时间
12927
12928
  {this.CancelAutoUpdate();if(!this.IsAutoUpdate)return;if(!this.Symbol)return;var self=this;var marketStatus=MARKET_SUFFIX_NAME.GetMarketStatus(this.Symbol);if(marketStatus==0||marketStatus==3)//闭市,盘后
12928
12929
  {this.AutoUpdateTimer=setTimeout(function(){self.AutoUpdate();},20000);return;}var frequency=this.AutoUpdateFrequency;if(marketStatus==1)//盘前
12929
12930
  {this.AutoUpdateTimer=setTimeout(function(){self.AutoUpdate();},frequency);}else if(marketStatus==2)//盘中
@@ -13015,7 +13016,50 @@ if(IFrameSplitOperator.IsNumber(item.ColorType))colItem.ColorType=item.ColorType
13015
13016
  this.UpdateCacheData=function(){this.RectClient.Left=this.ChartBorder.GetLeft();this.RectClient.Right=this.ChartBorder.GetRight();this.RectClient.Top=this.ChartBorder.GetTop();this.RectClient.Bottom=this.ChartBorder.GetBottom();this.Decimal=GetfloatPrecision(this.Symbol);};this.GetPageSize=function(recalculate)//recalculate 是否重新计算
13016
13017
  {if(recalculate)this.CalculateSize();var size=this.TableCount*this.RowCount;return size;};this.CalculateSize=function()//计算大小
13017
13018
  {this.UpdateCacheData();var pixelRatio=GetDevicePixelRatio();this.HeaderFont=this.HeaderFontConfig.Size*pixelRatio+'px '+this.HeaderFontConfig.Name;this.ItemFont=this.ItemFontConfig.Size*pixelRatio+'px '+this.ItemFontConfig.Name;this.Canvas.font=this.ItemFont;var sumWidth=0,itemWidth=0;for(var i=0;i<this.Column.length;++i){var item=this.Column[i];itemWidth=this.Canvas.measureText(item.MaxText).width;item.Width=itemWidth+4;sumWidth+=item.Width;}var clientWidth=this.RectClient.Right-this.RectClient.Left;this.TableCount=parseInt(clientWidth/sumWidth);if(this.TableCount<=0)this.TableCount=1;//只少显示一个
13018
- if(this.IsSingleTable)this.TableCount=1;this.TableWidth=clientWidth/this.TableCount;this.HeaderHeight=this.GetFontHeight(this.HeaderFont,"擎")+this.HeaderMergin.Top+this.HeaderMergin.Bottom;if(!this.IsShowHeader)this.HeaderHeight=0;this.RowHeight=this.GetFontHeight(this.ItemFont,"擎")+this.HeaderMergin.Top+this.HeaderMergin.Bottom;this.RowCount=parseInt((this.RectClient.Bottom-this.RectClient.Top-this.HeaderHeight)/this.RowHeight);};this.DrawHeader=function(){if(!this.IsShowHeader)return;var left=this.RectClient.Left+this.HeaderMergin.Left;var top=this.RectClient.Top;var y=top+this.HeaderMergin.Top+(this.HeaderHeight-this.HeaderMergin.Top-this.HeaderMergin.Bottom)/2;this.Canvas.font=this.HeaderFont;this.Canvas.fillStyle=this.HeaderColor;for(var i=0,j=0;i<this.TableCount;++i){var tableLeft=left+this.TableWidth*i;var textLeft=tableLeft;for(j=0;j<this.Column.length;++j){var item=this.Column[j];var itemWidth=item.Width;if(j==this.Column.length-1)itemWidth=this.TableWidth-(textLeft-tableLeft)-this.HeaderMergin.Right-this.HeaderMergin.Left;var x=textLeft;if(item.TextAlign=='center'){x=textLeft+itemWidth/2;this.Canvas.textAlign="center";}else if(item.TextAlign=='right'){x=textLeft+itemWidth;this.Canvas.textAlign="right";}else{this.Canvas.textAlign="left";}this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Title,x,y);textLeft+=item.Width;}}};this.DrawBorder=function(){var left=ToFixedPoint(this.RectClient.Left);var right=ToFixedPoint(this.RectClient.Right);var top=ToFixedPoint(this.RectClient.Top);var bottom=ToFixedPoint(this.RectClient.Bottom);this.Canvas.strokeStyle=this.BorderColor;this.Canvas.beginPath();if(this.IsShowHeader){this.Canvas.moveTo(left,top+this.HeaderHeight);this.Canvas.lineTo(right,top+this.HeaderHeight);}var tableLeft=ToFixedPoint(left+this.TableWidth);for(var i=1;i<this.TableCount;++i){this.Canvas.moveTo(tableLeft,top);this.Canvas.lineTo(tableLeft,bottom);tableLeft=ToFixedPoint(tableLeft+this.TableWidth);}this.Canvas.stroke();};this.DrawBody=function(){if(!this.Data)return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;this.Canvas.font=this.ItemFont;var top=this.RectClient.Top+this.HeaderHeight;var left=this.RectClient.Left+this.HeaderMergin.Left;var dataCount=this.Data.Data.length;var index=this.Data.DataOffset;var selectedRowData=null;if(this.ShowOrder==1){var index=this.Data.DataOffset+this.TableCount*this.RowCount;if(index>=dataCount)index=dataCount-1;for(var i=0,j=0;i<this.TableCount;++i){var tableLeft=left+this.TableWidth*i;var textLeft=tableLeft;var textTop=top;for(j=0;j<this.RowCount&&index>=0;++j,--index){var dataItem=this.Data.Data[index];var rtRow={Left:textLeft-this.HeaderMergin.Left,Top:textTop,Height:this.RowHeight,Width:this.TableWidth};rtRow.Right=rtRow.Left+rtRow.Width;rtRow.Bottom=rtRow.Top+rtRow.Height;if(dataItem.BGColor){this.Canvas.fillStyle=dataItem.BGColor;this.Canvas.fillRect(rtRow.Left,rtRow.Top,rtRow.Width,rtRow.Height);}if(this.DrawSelectedRow(dataItem,index,rtRow))selectedRowData={Rect:rtRow};this.DrawRow(dataItem,textLeft,textTop,index);this.AryCellRect.push({Rect:rtRow,Type:1,DataIndex:index});textTop+=this.RowHeight;}}if(selectedRowData&&this.SelectedStyle===2){var rtBG=selectedRowData.Rect;this.Canvas.fillStyle=this.SelectedConfig.LineColor;var lineWidth=this.SelectedConfig.LineWidth;this.Canvas.fillRect(rtBG.Left,rtBG.Bottom-lineWidth,rtBG.Width,lineWidth);}}else{for(var i=0,j=0;i<this.TableCount;++i){var tableLeft=left+this.TableWidth*i;var textLeft=tableLeft;var textTop=top;for(j=0;j<this.RowCount&&index<dataCount;++j,++index){var dataItem=this.Data.Data[index];var rtRow={Left:textLeft-this.HeaderMergin.Left,Top:textTop,Height:this.RowHeight,Width:this.TableWidth};rtRow.Right=rtRow.Left+rtRow.Width;rtRow.Bottom=rtRow.Top+rtRow.Height;if(dataItem.BGColor){this.Canvas.fillStyle=dataItem.BGColor;this.Canvas.fillRect(rtRow.Left,rtRow.Top,rtRow.Width,rtRow.Height);}if(this.DrawSelectedRow(dataItem,index,rtRow))selectedRowData={Rect:rtRow};this.DrawRow(dataItem,textLeft,textTop,index);this.AryCellRect.push({Rect:rtRow,Type:1,DataIndex:index});textTop+=this.RowHeight;}}if(selectedRowData&&this.SelectedStyle===2){var rtBG=selectedRowData.Rect;this.Canvas.fillStyle=this.SelectedConfig.LineColor;var lineWidth=this.SelectedConfig.LineWidth;this.Canvas.fillRect(rtBG.Left,rtBG.Bottom-lineWidth,rtBG.Width,lineWidth);}}};this.DrawRow=function(data,left,top,dataIndex,colIndex){var tableLeft=left;var tableRight=left+this.TableWidth;var borderRight=this.RectClient.Right;for(var i=0;i<this.Column.length;++i){var item=this.Column[i];var textColor=item.TextColor;var text=null;var itemWidth=item.Width;var textAlign=item.TextAlign;if(left+itemWidth>tableRight)break;if(i==this.Column.length-1)itemWidth=this.TableWidth-(left-tableLeft)-this.HeaderMergin.Right-this.HeaderMergin.Left;var drawInfo={Text:null,TextColor:item.TextColor,TextAlign:item.TextAlign,Tooltip:null,Index:dataIndex,ColumnIndex:i};var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};rtItem.Right=rtItem.Left+rtItem.Width;rtItem.Bottom=rtItem.Top+rtItem.Height;drawInfo.Rect=rtItem;var bDrawV2=false;if(item.Type==DEAL_COLUMN_ID.TIME_ID){text=IFrameSplitOperator.FormatTimeString(data.Time,item.Foramt);}else if(item.Type==DEAL_COLUMN_ID.STRING_TIME_ID){text=data.StrTime;}else if(item.Type==DEAL_COLUMN_ID.PRICE_ID){if(data.Price>this.YClose)textColor=this.UpColor;else if(data.Price<this.YClose)textColor=this.DownColor;else textColor=this.UnchangeColor;text=data.Price.toFixed(this.Decimal);}else if(item.Type==DEAL_COLUMN_ID.VOL_ID){text=IFrameSplitOperator.FormatValueString(data.Vol,0);textColor=this.GetVolColor(item,data);}else if(item.Type==DEAL_COLUMN_ID.DEAL_ID){text=IFrameSplitOperator.FormatValueString(data.Deal,0);}else if(item.Type==DEAL_COLUMN_ID.BS_ID){if(data.BS==1){text="B";textColor=this.UpColor;}else if(data.BS==2){text="S";textColor=this.DownColor;}}else if(item.Type==DEAL_COLUMN_ID.UPDOWN_ID){if(IFrameSplitOperator.IsNumber(this.YClose)){var value=data.Price-this.YClose;text=value.toFixed(2);if(value>0)textColor=this.UpColor;else if(value<0)textColor=this.DownColor;else textColor=this.UnchangeColor;}}else if(item.Type==DEAL_COLUMN_ID.INDEX_ID){text=(dataIndex+1).toString();}else if(item.Type==DEAL_COLUMN_ID.MULTI_BAR_ID){var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};this.DrawMultiBar(item,data,rtItem);}else if(item.Type==DEAL_COLUMN_ID.CENTER_BAR_ID){var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};this.DrawCenterBar(item,data,rtItem);}else if(item.Type==DEAL_COLUMN_ID.CUSTOM_TEXT_ID){var out={Text:null,TextColor:null,TextAlign:null};//输出
13019
+ if(this.IsSingleTable)this.TableCount=1;this.TableWidth=clientWidth/this.TableCount;this.HeaderHeight=this.GetFontHeight(this.HeaderFont,"擎")+this.HeaderMergin.Top+this.HeaderMergin.Bottom;if(!this.IsShowHeader)this.HeaderHeight=0;this.RowHeight=this.GetFontHeight(this.ItemFont,"擎")+this.HeaderMergin.Top+this.HeaderMergin.Bottom;this.RowCount=parseInt((this.RectClient.Bottom-this.RectClient.Top-this.HeaderHeight)/this.RowHeight);};this.DrawHeader=function(){if(!this.IsShowHeader)return;var left=this.RectClient.Left+this.HeaderMergin.Left;var top=this.RectClient.Top;var y=top+this.HeaderMergin.Top+(this.HeaderHeight-this.HeaderMergin.Top-this.HeaderMergin.Bottom)/2;this.Canvas.font=this.HeaderFont;this.Canvas.fillStyle=this.HeaderColor;for(var i=0,j=0;i<this.TableCount;++i){var tableLeft=left+this.TableWidth*i;var textLeft=tableLeft;for(j=0;j<this.Column.length;++j){var item=this.Column[j];var itemWidth=item.Width;if(j==this.Column.length-1)itemWidth=this.TableWidth-(textLeft-tableLeft)-this.HeaderMergin.Right-this.HeaderMergin.Left;var x=textLeft;if(item.TextAlign=='center'){x=textLeft+itemWidth/2;this.Canvas.textAlign="center";}else if(item.TextAlign=='right'){x=textLeft+itemWidth;this.Canvas.textAlign="right";}else{this.Canvas.textAlign="left";}this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Title,x,y);textLeft+=item.Width;}}};this.DrawBorder=function(){var left=ToFixedPoint(this.RectClient.Left);var right=ToFixedPoint(this.RectClient.Right);var top=ToFixedPoint(this.RectClient.Top);var bottom=ToFixedPoint(this.RectClient.Bottom);this.Canvas.strokeStyle=this.BorderColor;this.Canvas.beginPath();if(this.IsShowHeader){this.Canvas.moveTo(left,top+this.HeaderHeight);this.Canvas.lineTo(right,top+this.HeaderHeight);}var tableLeft=ToFixedPoint(left+this.TableWidth);for(var i=1;i<this.TableCount;++i){this.Canvas.moveTo(tableLeft,top);this.Canvas.lineTo(tableLeft,bottom);tableLeft=ToFixedPoint(tableLeft+this.TableWidth);}this.Canvas.stroke();};this.DrawBody=function(){if(!this.Data)return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;this.Canvas.font=this.ItemFont;var top=this.RectClient.Top+this.HeaderHeight;var left=this.RectClient.Left+this.HeaderMergin.Left;var dataCount=this.Data.Data.length;var index=this.Data.DataOffset;var selectedRowData=null;/*
13020
+ if (this.ShowOrder==1)
13021
+ {
13022
+ var index=this.Data.DataOffset+(this.TableCount*this.RowCount);
13023
+ if (index>=dataCount) index=dataCount-1;
13024
+ for(var i=0,j=0;i<this.TableCount;++i)
13025
+ {
13026
+ var tableLeft=left+(this.TableWidth*i);
13027
+ var textLeft=tableLeft;
13028
+ var textTop=top;
13029
+ for(j=0;j<this.RowCount && index>=0;++j, --index)
13030
+ {
13031
+ var dataItem=this.Data.Data[index];
13032
+ var rtRow={ Left:textLeft-this.HeaderMergin.Left, Top:textTop, Height:this.RowHeight, Width:this.TableWidth };
13033
+ rtRow.Right=rtRow.Left+rtRow.Width;
13034
+ rtRow.Bottom=rtRow.Top+rtRow.Height;
13035
+
13036
+ if (dataItem.BGColor)
13037
+ {
13038
+ this.Canvas.fillStyle=dataItem.BGColor;
13039
+ this.Canvas.fillRect(rtRow.Left,rtRow.Top, rtRow.Width, rtRow.Height);
13040
+ }
13041
+
13042
+ if (this.DrawSelectedRow(dataItem, index, rtRow))
13043
+ selectedRowData={ Rect:rtRow };
13044
+
13045
+ this.DrawRow(dataItem, textLeft, textTop, index);
13046
+
13047
+ this.AryCellRect.push({ Rect:rtRow, Type:1, DataIndex:index });
13048
+
13049
+ textTop+=this.RowHeight;
13050
+ }
13051
+ }
13052
+
13053
+ if (selectedRowData && this.SelectedStyle===2)
13054
+ {
13055
+ var rtBG=selectedRowData.Rect;
13056
+ this.Canvas.fillStyle=this.SelectedConfig.LineColor;
13057
+ var lineWidth=this.SelectedConfig.LineWidth;
13058
+ this.Canvas.fillRect(rtBG.Left,rtBG.Bottom-lineWidth,rtBG.Width,lineWidth);
13059
+ }
13060
+ }
13061
+ else
13062
+ */{for(var i=0,j=0;i<this.TableCount;++i){var tableLeft=left+this.TableWidth*i;var textLeft=tableLeft;var textTop=top;for(j=0;j<this.RowCount&&index<dataCount;++j,++index){var dataItem=this.Data.Data[index];var rtRow={Left:textLeft-this.HeaderMergin.Left,Top:textTop,Height:this.RowHeight,Width:this.TableWidth};rtRow.Right=rtRow.Left+rtRow.Width;rtRow.Bottom=rtRow.Top+rtRow.Height;if(dataItem.BGColor){this.Canvas.fillStyle=dataItem.BGColor;this.Canvas.fillRect(rtRow.Left,rtRow.Top,rtRow.Width,rtRow.Height);}if(this.DrawSelectedRow(dataItem,index,rtRow))selectedRowData={Rect:rtRow};this.DrawRow(dataItem,textLeft,textTop,index);this.AryCellRect.push({Rect:rtRow,Type:1,DataIndex:index});textTop+=this.RowHeight;}}if(selectedRowData&&this.SelectedStyle===2){var rtBG=selectedRowData.Rect;this.Canvas.fillStyle=this.SelectedConfig.LineColor;var lineWidth=this.SelectedConfig.LineWidth;this.Canvas.fillRect(rtBG.Left,rtBG.Bottom-lineWidth,rtBG.Width,lineWidth);}}};this.DrawRow=function(data,left,top,dataIndex,colIndex){var tableLeft=left;var tableRight=left+this.TableWidth;var borderRight=this.RectClient.Right;for(var i=0;i<this.Column.length;++i){var item=this.Column[i];var textColor=item.TextColor;var text=null;var itemWidth=item.Width;var textAlign=item.TextAlign;if(left+itemWidth>tableRight)break;if(i==this.Column.length-1)itemWidth=this.TableWidth-(left-tableLeft)-this.HeaderMergin.Right-this.HeaderMergin.Left;var drawInfo={Text:null,TextColor:item.TextColor,TextAlign:item.TextAlign,Tooltip:null,Index:dataIndex,ColumnIndex:i};var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};rtItem.Right=rtItem.Left+rtItem.Width;rtItem.Bottom=rtItem.Top+rtItem.Height;drawInfo.Rect=rtItem;var bDrawV2=false;if(item.Type==DEAL_COLUMN_ID.TIME_ID){text=IFrameSplitOperator.FormatTimeString(data.Time,item.Foramt);}else if(item.Type==DEAL_COLUMN_ID.STRING_TIME_ID){text=data.StrTime;}else if(item.Type==DEAL_COLUMN_ID.PRICE_ID){if(data.Price>this.YClose)textColor=this.UpColor;else if(data.Price<this.YClose)textColor=this.DownColor;else textColor=this.UnchangeColor;text=data.Price.toFixed(this.Decimal);}else if(item.Type==DEAL_COLUMN_ID.VOL_ID){text=IFrameSplitOperator.FormatValueString(data.Vol,0);textColor=this.GetVolColor(item,data);}else if(item.Type==DEAL_COLUMN_ID.DEAL_ID){text=IFrameSplitOperator.FormatValueString(data.Deal,0);}else if(item.Type==DEAL_COLUMN_ID.BS_ID){if(data.BS==1){text="B";textColor=this.UpColor;}else if(data.BS==2){text="S";textColor=this.DownColor;}}else if(item.Type==DEAL_COLUMN_ID.UPDOWN_ID){if(IFrameSplitOperator.IsNumber(this.YClose)){var value=data.Price-this.YClose;text=value.toFixed(2);if(value>0)textColor=this.UpColor;else if(value<0)textColor=this.DownColor;else textColor=this.UnchangeColor;}}else if(item.Type==DEAL_COLUMN_ID.INDEX_ID){text=(dataIndex+1).toString();}else if(item.Type==DEAL_COLUMN_ID.MULTI_BAR_ID){var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};this.DrawMultiBar(item,data,rtItem);}else if(item.Type==DEAL_COLUMN_ID.CENTER_BAR_ID){var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};this.DrawCenterBar(item,data,rtItem);}else if(item.Type==DEAL_COLUMN_ID.CUSTOM_TEXT_ID){var out={Text:null,TextColor:null,TextAlign:null};//输出
13019
13063
  var rtItem={Left:left,Top:top,Width:itemWidth,Height:this.RowHeight};if(this.DrawCustomText(item,data,rtItem,dataIndex,i,out)){if(out.Text)text=out.Text;if(out.TextColor)textColor=out.TextColor;if(out.TextAlign)textAlign=out.TextAlign;}}else if(this.IsReserveString(item.Type)){this.FormatReserveString(item,data,drawInfo);bDrawV2=true;}else if(this.IsReserveNumber(item.Type)){this.FormatReserveNumber(item,data,drawInfo);bDrawV2=true;}if(bDrawV2){//this.DrawItemText(drawInfo.Text, drawInfo.TextColor, drawInfo.TextAlign, rtItem.Left, rtItem.Top, rtItem.Width, drawInfo.BGColor);
13020
13064
  this.DrawItemTextV2(drawInfo,rtItem);}else{this.DrawItemText(text,textColor,textAlign,left,top,itemWidth);}if(drawInfo.Tooltip){//Type:2=数据提示信息
13021
13065
  var tooltipData=(0,_defineProperty3.default)({Rect:rtItem,Data:data,Index:dataIndex,Column:item,Type:drawInfo.Tooltip.Type},'Data',drawInfo.Tooltip.Data);this.TooltipRect.push(tooltipData);}else if(item.ChartTooltip&&item.ChartTooltip.Enable&&IFrameSplitOperator.IsNumber(item.ChartTooltip.Type))//Type 20分时图 21K线图
@@ -14980,7 +15024,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
14980
15024
  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);};}/********************************************************************************
14981
15025
  * 版本信息输出
14982
15026
  *
14983
- */var HQCHART_VERSION="1.1.14792";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();//把给外界调用的方法暴露出来
15027
+ */var HQCHART_VERSION="1.1.14797";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();//把给外界调用的方法暴露出来
14984
15028
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
14985
15029
  // BaseIndex:BaseIndex,
14986
15030
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14793",
3
+ "version": "1.1.14798",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -598,7 +598,13 @@ function JSDealChartContainer(uielement)
598
598
 
599
599
  this.RecvDealData=function(data)
600
600
  {
601
+ var chart=this.GetDealChart();
602
+ if (!chart) return;
603
+
601
604
  var aryDeal=JSDealChartContainer.JsonDataToDealData(data);
605
+ if (chart.ShowOrder===1 && IFrameSplitOperator.IsNonEmptyArray(aryDeal)) //倒序
606
+ aryDeal=aryDeal.reverse();
607
+
602
608
  this.SourceData={ DataOffset:0, Data:aryDeal };
603
609
  this.Data={ DataOffset:0, Data:this.FilterData(this.CloneArray(aryDeal)) };
604
610
 
@@ -618,13 +624,22 @@ function JSDealChartContainer(uielement)
618
624
 
619
625
  this.SetLastPageDataOffset=function()
620
626
  {
621
- var chart=this.ChartPaint[0];
622
- var dataCount=0;
623
- if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
624
- var pageSize=chart.GetPageSize(true);
625
- var offset=dataCount-pageSize;
626
- if (offset<0) offset=0;
627
- this.Data.DataOffset=offset;
627
+ var chart=this.GetDealChart();
628
+ if (!chart) return;
629
+
630
+ if (chart.ShowOrder===1)
631
+ {
632
+ this.Data.DataOffset=0;
633
+ }
634
+ else
635
+ {
636
+ var dataCount=0;
637
+ if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
638
+ var pageSize=chart.GetPageSize(true);
639
+ var offset=dataCount-pageSize;
640
+ if (offset<0) offset=0;
641
+ this.Data.DataOffset=offset;
642
+ }
628
643
  }
629
644
 
630
645
  //增量数据下载
@@ -674,30 +689,42 @@ function JSDealChartContainer(uielement)
674
689
 
675
690
  if (data.UpdateType===1) //全量更新
676
691
  {
677
- this.SourceData.Data=aryDeal;
678
- var oldCount=0, newCount=0;
679
- if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) oldCount=this.Data.Data.length;
680
- this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
681
- if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) newCount=this.Data.Data.length;
682
-
683
- if (oldCount==0)
692
+ if (chart.ShowOrder===1)
684
693
  {
685
- if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
694
+ if (IFrameSplitOperator.IsNonEmptyArray(aryDeal))
695
+ aryDeal=aryDeal.reverse();
696
+
697
+ this.SourceData.Data=aryDeal;
698
+ this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
686
699
  }
687
- else if (newCount>oldCount) //增长 偏移增加
700
+ else
688
701
  {
689
- var pageSize=chart.GetPageSize();
690
- var count=newCount-oldCount;
691
- for(var i=0;i<count;++i)
702
+ this.SourceData.Data=aryDeal;
703
+ var oldCount=0, newCount=0;
704
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) oldCount=this.Data.Data.length;
705
+ this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
706
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) newCount=this.Data.Data.length;
707
+
708
+ if (oldCount==0)
692
709
  {
693
- if (this.Data.DataOffset+pageSize<this.Data.Data.length)
694
- ++this.Data.DataOffset;
710
+ if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
711
+ }
712
+ else if (newCount>oldCount) //增长 偏移增加
713
+ {
714
+ var pageSize=chart.GetPageSize();
715
+ var count=newCount-oldCount;
716
+ for(var i=0;i<count;++i)
717
+ {
718
+ if (this.Data.DataOffset+pageSize<this.Data.Data.length)
719
+ ++this.Data.DataOffset;
720
+ }
721
+ }
722
+ else
723
+ {
724
+ if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
695
725
  }
696
726
  }
697
- else
698
- {
699
- if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
700
- }
727
+
701
728
  }
702
729
  else
703
730
  {
@@ -712,23 +739,37 @@ function JSDealChartContainer(uielement)
712
739
 
713
740
  this.AddDealData=function(dealData, aryNewData)
714
741
  {
742
+ var chart=this.GetDealChart();
743
+ if (!chart) return;
744
+
715
745
  if (!dealData.Data) //原来是空的
716
746
  {
747
+ if (chart.ShowOrder===1 && IFrameSplitOperator.IsNonEmptyArray(aryNewData))
748
+ aryNewData=aryNewData.reverse();
749
+
717
750
  dealData.Data=aryNewData;
718
751
  }
719
752
  else
720
753
  {
721
- var pageSize=0;
722
- var chart=this.ChartPaint[0];
723
- if (chart) pageSize=chart.GetPageSize();
724
-
725
- for(var i=0;i<aryNewData.length;++i)
754
+ if (chart.ShowOrder===1)
726
755
  {
727
- dealData.Data.push(aryNewData[i]);
756
+ for(var i=0;i<aryNewData.length;++i)
757
+ {
758
+ dealData.Data.unshift(aryNewData[i]);
759
+ }
760
+ }
761
+ else
762
+ {
763
+ var pageSize=chart.GetPageSize();
764
+ for(var i=0;i<aryNewData.length;++i)
765
+ {
766
+ dealData.Data.push(aryNewData[i]);
728
767
 
729
- if (dealData.DataOffset+pageSize<dealData.Data.length)
730
- ++dealData.DataOffset;
768
+ if (dealData.DataOffset+pageSize<dealData.Data.length)
769
+ ++dealData.DataOffset;
770
+ }
731
771
  }
772
+
732
773
  }
733
774
  }
734
775
 
@@ -1644,6 +1685,7 @@ function ChartDealList()
1644
1685
  var index=this.Data.DataOffset;
1645
1686
  var selectedRowData=null;
1646
1687
 
1688
+ /*
1647
1689
  if (this.ShowOrder==1)
1648
1690
  {
1649
1691
  var index=this.Data.DataOffset+(this.TableCount*this.RowCount);
@@ -1686,6 +1728,7 @@ function ChartDealList()
1686
1728
  }
1687
1729
  }
1688
1730
  else
1731
+ */
1689
1732
  {
1690
1733
  for(var i=0,j=0;i<this.TableCount;++i)
1691
1734
  {
@@ -134411,7 +134411,13 @@ function JSDealChartContainer(uielement)
134411
134411
 
134412
134412
  this.RecvDealData=function(data)
134413
134413
  {
134414
+ var chart=this.GetDealChart();
134415
+ if (!chart) return;
134416
+
134414
134417
  var aryDeal=JSDealChartContainer.JsonDataToDealData(data);
134418
+ if (chart.ShowOrder===1 && IFrameSplitOperator.IsNonEmptyArray(aryDeal)) //倒序
134419
+ aryDeal=aryDeal.reverse();
134420
+
134415
134421
  this.SourceData={ DataOffset:0, Data:aryDeal };
134416
134422
  this.Data={ DataOffset:0, Data:this.FilterData(this.CloneArray(aryDeal)) };
134417
134423
 
@@ -134431,13 +134437,22 @@ function JSDealChartContainer(uielement)
134431
134437
 
134432
134438
  this.SetLastPageDataOffset=function()
134433
134439
  {
134434
- var chart=this.ChartPaint[0];
134435
- var dataCount=0;
134436
- if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
134437
- var pageSize=chart.GetPageSize(true);
134438
- var offset=dataCount-pageSize;
134439
- if (offset<0) offset=0;
134440
- this.Data.DataOffset=offset;
134440
+ var chart=this.GetDealChart();
134441
+ if (!chart) return;
134442
+
134443
+ if (chart.ShowOrder===1)
134444
+ {
134445
+ this.Data.DataOffset=0;
134446
+ }
134447
+ else
134448
+ {
134449
+ var dataCount=0;
134450
+ if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
134451
+ var pageSize=chart.GetPageSize(true);
134452
+ var offset=dataCount-pageSize;
134453
+ if (offset<0) offset=0;
134454
+ this.Data.DataOffset=offset;
134455
+ }
134441
134456
  }
134442
134457
 
134443
134458
  //增量数据下载
@@ -134487,30 +134502,42 @@ function JSDealChartContainer(uielement)
134487
134502
 
134488
134503
  if (data.UpdateType===1) //全量更新
134489
134504
  {
134490
- this.SourceData.Data=aryDeal;
134491
- var oldCount=0, newCount=0;
134492
- if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) oldCount=this.Data.Data.length;
134493
- this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134494
- if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) newCount=this.Data.Data.length;
134495
-
134496
- if (oldCount==0)
134505
+ if (chart.ShowOrder===1)
134497
134506
  {
134498
- if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
134507
+ if (IFrameSplitOperator.IsNonEmptyArray(aryDeal))
134508
+ aryDeal=aryDeal.reverse();
134509
+
134510
+ this.SourceData.Data=aryDeal;
134511
+ this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134499
134512
  }
134500
- else if (newCount>oldCount) //增长 偏移增加
134513
+ else
134501
134514
  {
134502
- var pageSize=chart.GetPageSize();
134503
- var count=newCount-oldCount;
134504
- for(var i=0;i<count;++i)
134515
+ this.SourceData.Data=aryDeal;
134516
+ var oldCount=0, newCount=0;
134517
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) oldCount=this.Data.Data.length;
134518
+ this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134519
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) newCount=this.Data.Data.length;
134520
+
134521
+ if (oldCount==0)
134505
134522
  {
134506
- if (this.Data.DataOffset+pageSize<this.Data.Data.length)
134507
- ++this.Data.DataOffset;
134523
+ if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
134524
+ }
134525
+ else if (newCount>oldCount) //增长 偏移增加
134526
+ {
134527
+ var pageSize=chart.GetPageSize();
134528
+ var count=newCount-oldCount;
134529
+ for(var i=0;i<count;++i)
134530
+ {
134531
+ if (this.Data.DataOffset+pageSize<this.Data.Data.length)
134532
+ ++this.Data.DataOffset;
134533
+ }
134534
+ }
134535
+ else
134536
+ {
134537
+ if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
134508
134538
  }
134509
134539
  }
134510
- else
134511
- {
134512
- if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
134513
- }
134540
+
134514
134541
  }
134515
134542
  else
134516
134543
  {
@@ -134525,23 +134552,37 @@ function JSDealChartContainer(uielement)
134525
134552
 
134526
134553
  this.AddDealData=function(dealData, aryNewData)
134527
134554
  {
134555
+ var chart=this.GetDealChart();
134556
+ if (!chart) return;
134557
+
134528
134558
  if (!dealData.Data) //原来是空的
134529
134559
  {
134560
+ if (chart.ShowOrder===1 && IFrameSplitOperator.IsNonEmptyArray(aryNewData))
134561
+ aryNewData=aryNewData.reverse();
134562
+
134530
134563
  dealData.Data=aryNewData;
134531
134564
  }
134532
134565
  else
134533
134566
  {
134534
- var pageSize=0;
134535
- var chart=this.ChartPaint[0];
134536
- if (chart) pageSize=chart.GetPageSize();
134537
-
134538
- for(var i=0;i<aryNewData.length;++i)
134567
+ if (chart.ShowOrder===1)
134568
+ {
134569
+ for(var i=0;i<aryNewData.length;++i)
134570
+ {
134571
+ dealData.Data.unshift(aryNewData[i]);
134572
+ }
134573
+ }
134574
+ else
134539
134575
  {
134540
- dealData.Data.push(aryNewData[i]);
134576
+ var pageSize=chart.GetPageSize();
134577
+ for(var i=0;i<aryNewData.length;++i)
134578
+ {
134579
+ dealData.Data.push(aryNewData[i]);
134541
134580
 
134542
- if (dealData.DataOffset+pageSize<dealData.Data.length)
134543
- ++dealData.DataOffset;
134581
+ if (dealData.DataOffset+pageSize<dealData.Data.length)
134582
+ ++dealData.DataOffset;
134583
+ }
134544
134584
  }
134585
+
134545
134586
  }
134546
134587
  }
134547
134588
 
@@ -135457,6 +135498,7 @@ function ChartDealList()
135457
135498
  var index=this.Data.DataOffset;
135458
135499
  var selectedRowData=null;
135459
135500
 
135501
+ /*
135460
135502
  if (this.ShowOrder==1)
135461
135503
  {
135462
135504
  var index=this.Data.DataOffset+(this.TableCount*this.RowCount);
@@ -135499,6 +135541,7 @@ function ChartDealList()
135499
135541
  }
135500
135542
  }
135501
135543
  else
135544
+ */
135502
135545
  {
135503
135546
  for(var i=0,j=0;i<this.TableCount;++i)
135504
135547
  {
@@ -149150,7 +149193,7 @@ function ScrollBarBGChart()
149150
149193
 
149151
149194
 
149152
149195
 
149153
- var HQCHART_VERSION="1.1.14792";
149196
+ var HQCHART_VERSION="1.1.14797";
149154
149197
 
149155
149198
  function PrintHQChartVersion()
149156
149199
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14792";
8
+ var HQCHART_VERSION="1.1.14797";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -134455,7 +134455,13 @@ function JSDealChartContainer(uielement)
134455
134455
 
134456
134456
  this.RecvDealData=function(data)
134457
134457
  {
134458
+ var chart=this.GetDealChart();
134459
+ if (!chart) return;
134460
+
134458
134461
  var aryDeal=JSDealChartContainer.JsonDataToDealData(data);
134462
+ if (chart.ShowOrder===1 && IFrameSplitOperator.IsNonEmptyArray(aryDeal)) //倒序
134463
+ aryDeal=aryDeal.reverse();
134464
+
134459
134465
  this.SourceData={ DataOffset:0, Data:aryDeal };
134460
134466
  this.Data={ DataOffset:0, Data:this.FilterData(this.CloneArray(aryDeal)) };
134461
134467
 
@@ -134475,13 +134481,22 @@ function JSDealChartContainer(uielement)
134475
134481
 
134476
134482
  this.SetLastPageDataOffset=function()
134477
134483
  {
134478
- var chart=this.ChartPaint[0];
134479
- var dataCount=0;
134480
- if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
134481
- var pageSize=chart.GetPageSize(true);
134482
- var offset=dataCount-pageSize;
134483
- if (offset<0) offset=0;
134484
- this.Data.DataOffset=offset;
134484
+ var chart=this.GetDealChart();
134485
+ if (!chart) return;
134486
+
134487
+ if (chart.ShowOrder===1)
134488
+ {
134489
+ this.Data.DataOffset=0;
134490
+ }
134491
+ else
134492
+ {
134493
+ var dataCount=0;
134494
+ if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
134495
+ var pageSize=chart.GetPageSize(true);
134496
+ var offset=dataCount-pageSize;
134497
+ if (offset<0) offset=0;
134498
+ this.Data.DataOffset=offset;
134499
+ }
134485
134500
  }
134486
134501
 
134487
134502
  //增量数据下载
@@ -134531,30 +134546,42 @@ function JSDealChartContainer(uielement)
134531
134546
 
134532
134547
  if (data.UpdateType===1) //全量更新
134533
134548
  {
134534
- this.SourceData.Data=aryDeal;
134535
- var oldCount=0, newCount=0;
134536
- if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) oldCount=this.Data.Data.length;
134537
- this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134538
- if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) newCount=this.Data.Data.length;
134539
-
134540
- if (oldCount==0)
134549
+ if (chart.ShowOrder===1)
134541
134550
  {
134542
- if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
134551
+ if (IFrameSplitOperator.IsNonEmptyArray(aryDeal))
134552
+ aryDeal=aryDeal.reverse();
134553
+
134554
+ this.SourceData.Data=aryDeal;
134555
+ this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134543
134556
  }
134544
- else if (newCount>oldCount) //增长 偏移增加
134557
+ else
134545
134558
  {
134546
- var pageSize=chart.GetPageSize();
134547
- var count=newCount-oldCount;
134548
- for(var i=0;i<count;++i)
134559
+ this.SourceData.Data=aryDeal;
134560
+ var oldCount=0, newCount=0;
134561
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) oldCount=this.Data.Data.length;
134562
+ this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134563
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) newCount=this.Data.Data.length;
134564
+
134565
+ if (oldCount==0)
134549
134566
  {
134550
- if (this.Data.DataOffset+pageSize<this.Data.Data.length)
134551
- ++this.Data.DataOffset;
134567
+ if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
134568
+ }
134569
+ else if (newCount>oldCount) //增长 偏移增加
134570
+ {
134571
+ var pageSize=chart.GetPageSize();
134572
+ var count=newCount-oldCount;
134573
+ for(var i=0;i<count;++i)
134574
+ {
134575
+ if (this.Data.DataOffset+pageSize<this.Data.Data.length)
134576
+ ++this.Data.DataOffset;
134577
+ }
134578
+ }
134579
+ else
134580
+ {
134581
+ if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
134552
134582
  }
134553
134583
  }
134554
- else
134555
- {
134556
- if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
134557
- }
134584
+
134558
134585
  }
134559
134586
  else
134560
134587
  {
@@ -134569,23 +134596,37 @@ function JSDealChartContainer(uielement)
134569
134596
 
134570
134597
  this.AddDealData=function(dealData, aryNewData)
134571
134598
  {
134599
+ var chart=this.GetDealChart();
134600
+ if (!chart) return;
134601
+
134572
134602
  if (!dealData.Data) //原来是空的
134573
134603
  {
134604
+ if (chart.ShowOrder===1 && IFrameSplitOperator.IsNonEmptyArray(aryNewData))
134605
+ aryNewData=aryNewData.reverse();
134606
+
134574
134607
  dealData.Data=aryNewData;
134575
134608
  }
134576
134609
  else
134577
134610
  {
134578
- var pageSize=0;
134579
- var chart=this.ChartPaint[0];
134580
- if (chart) pageSize=chart.GetPageSize();
134581
-
134582
- for(var i=0;i<aryNewData.length;++i)
134611
+ if (chart.ShowOrder===1)
134612
+ {
134613
+ for(var i=0;i<aryNewData.length;++i)
134614
+ {
134615
+ dealData.Data.unshift(aryNewData[i]);
134616
+ }
134617
+ }
134618
+ else
134583
134619
  {
134584
- dealData.Data.push(aryNewData[i]);
134620
+ var pageSize=chart.GetPageSize();
134621
+ for(var i=0;i<aryNewData.length;++i)
134622
+ {
134623
+ dealData.Data.push(aryNewData[i]);
134585
134624
 
134586
- if (dealData.DataOffset+pageSize<dealData.Data.length)
134587
- ++dealData.DataOffset;
134625
+ if (dealData.DataOffset+pageSize<dealData.Data.length)
134626
+ ++dealData.DataOffset;
134627
+ }
134588
134628
  }
134629
+
134589
134630
  }
134590
134631
  }
134591
134632
 
@@ -135501,6 +135542,7 @@ function ChartDealList()
135501
135542
  var index=this.Data.DataOffset;
135502
135543
  var selectedRowData=null;
135503
135544
 
135545
+ /*
135504
135546
  if (this.ShowOrder==1)
135505
135547
  {
135506
135548
  var index=this.Data.DataOffset+(this.TableCount*this.RowCount);
@@ -135543,6 +135585,7 @@ function ChartDealList()
135543
135585
  }
135544
135586
  }
135545
135587
  else
135588
+ */
135546
135589
  {
135547
135590
  for(var i=0,j=0;i<this.TableCount;++i)
135548
135591
  {
@@ -160119,7 +160162,7 @@ function HQChartScriptWorker()
160119
160162
 
160120
160163
 
160121
160164
 
160122
- var HQCHART_VERSION="1.1.14792";
160165
+ var HQCHART_VERSION="1.1.14797";
160123
160166
 
160124
160167
  function PrintHQChartVersion()
160125
160168
  {