hqchart 1.1.14910 → 1.1.14915
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.
- package/lib/umychart.vue.js +18 -15
- package/package.json +1 -1
- package/src/jscommon/umychart.complier.js +10 -1
- package/src/jscommon/umychart.js +56 -1
- package/src/jscommon/umychart.report.js +12 -1
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +79 -4
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +79 -4
package/lib/umychart.vue.js
CHANGED
|
@@ -4606,14 +4606,14 @@ return this.PtInBar(x,y,{BarWidth:barWidth});};this.DrawBars=function(lineWidth,
|
|
|
4606
4606
|
if(isHSCreen){this.Canvas.moveTo(yBottom,ToFixedPoint(x));this.Canvas.lineTo(y,ToFixedPoint(x));}else{this.Canvas.moveTo(xFix,yBottom);this.Canvas.lineTo(xFix,y);}++drawCount;}if(drawCount>0)this.Canvas.stroke();};this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}var dataWidth=this.ChartFrame.DataWidth;var lineWidth=this.LineWidth*GetDevicePixelRatio();if(this.LineWidth==50)lineWidth=dataWidth;else if(lineWidth>dataWidth)lineWidth=dataWidth;var backupLineWidth=this.Canvas.lineWidth;this.Canvas.lineWidth=lineWidth;//上下分开画
|
|
4607
4607
|
this.DrawBars(lineWidth,true);this.DrawBars(lineWidth,false);this.Canvas.lineWidth=backupLineWidth;};this.GetItemData=function(indexData){if(!indexData)return null;if(!IFrameSplitOperator.IsNumber(indexData.Index))return null;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return null;var index=indexData.Index;if(index<0||index>=this.Data.Data.length)return null;var item=this.Data.Data[index];return[{Value:item,Color:item>0?this.UpColor:this.DownColor,Name:this.Name}];};}//基准线上下柱子
|
|
4608
4608
|
function ChartBaseLineBar(){this.newMethod=IChartPainting;//派生
|
|
4609
|
-
this.newMethod();delete this.newMethod;this.ClassName="ChartBaseLineBar";this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;this.LineWidth=1;this.Style=0;//0=坐标使用主图坐标 1=独立坐标
|
|
4609
|
+
this.newMethod();delete this.newMethod;this.ClassName="ChartBaseLineBar";this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;this.UpName;this.DownName;this.LineWidth=1;this.Style=0;//0=坐标使用主图坐标 1=独立坐标
|
|
4610
4610
|
this.IsDrawFirst=true;this.AryData=[];//{ Date, Time, Up, Down }
|
|
4611
4611
|
this.DefaultMax;//默认最大值
|
|
4612
4612
|
this.MaxValue;this.YBaseLine;this.BarMaxHeight;//{ Up:, Down: }
|
|
4613
4613
|
this.DrawStyle2=function(){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;}this.Canvas.save();this.ClipClient(bHScreen);this.YBaseLine=this.ChartFrame.GetYFromData(0,false);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);var y=this.ChartFrame.GetYFromData(value,false);aryUpBar.push({X:x,Y:y});}if(IFrameSplitOperator.IsNumber(item.Down)){var value=Math.abs(item.Down)*-1;var y=this.ChartFrame.GetYFromData(value,false);aryDownBar.push({X:x,Y:y});}}this.DrawBars(aryUpBar,this.UpColor);this.DrawBars(aryDownBar,this.DownColor);this.Canvas.restore();};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;if(this.Style==1){this.DrawStyle2();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个像素高度
|
|
4614
4614
|
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线
|
|
4615
4615
|
}};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(){var range={Min:null,Max:null};if(this.Style==1)//独立坐标
|
|
4616
|
-
{if(IFrameSplitOperator.IsNumber(this.DefaultMax))range.Max=this.DefaultMax;range.Min=0;var xPointCount=this.ChartFrame.XPointCount;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){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);var value=Math.abs(item.Up);if(range.Max==null||range.Max<value)range.Max=value;var value=Math.abs(item.Down)*-1;if(range.Min>value)range.Min=value;}}return range;};}function ChartClipColorStick(){this.newMethod=IChartPainting;//派生
|
|
4616
|
+
{if(IFrameSplitOperator.IsNumber(this.DefaultMax))range.Max=this.DefaultMax;range.Min=0;var xPointCount=this.ChartFrame.XPointCount;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){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);var value=Math.abs(item.Up);if(range.Max==null||range.Max<value)range.Max=value;var value=Math.abs(item.Down)*-1;if(range.Min>value)range.Min=value;}}return range;};this.GetItem=function(kItem){if(!this.MapCache||this.MapCache.size<=0)return null;var key=this.BuildKey(kItem);if(!this.MapCache.has(key))return null;return this.MapCache.get(key);};}function ChartClipColorStick(){this.newMethod=IChartPainting;//派生
|
|
4617
4617
|
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=上下两个方向
|
|
4618
4618
|
//差值线
|
|
4619
4619
|
this.DownDiffColor=g_JSChartResource.DownBarColor;this.UpDiffColor=g_JSChartResource.UpBarColor;//文字
|
|
@@ -6308,8 +6308,8 @@ this.IsShowMainIndexTitle=true;//是否显示主图指标标题
|
|
|
6308
6308
|
this.MainTitlePaint=null;//主标题
|
|
6309
6309
|
this.ReloadResource=function(){this.Font=g_JSChartResource.TitleFont;this.TitleColor=g_JSChartResource.DefaultTextColor;this.SelectedColor=g_JSChartResource.IndexTitleSelectedColor;this.OverlayIndexType.BGColor=g_JSChartResource.OverlayIndexTitleBGColor;this.BGColor=g_JSChartResource.IndexTitleBGColor;this.BGBorderColor=g_JSChartResource.IndexTitleBorderColor;this.BGBorderMoveOnColor=g_JSChartResource.IndexTitleBorderMoveOnColor;this.UpColor=g_JSChartResource.UpTextColor;this.DownColor=g_JSChartResource.DownTextColor;this.UnchangeColor=g_JSChartResource.UnchagneTextColor;this.VolColor=g_JSChartResource.Title.VolColor;this.AmountColor=g_JSChartResource.Title.AmountColor;this.DateTimeColor=g_JSChartResource.Title.DateTimeColor;this.PositionColor=g_JSChartResource.Title.PositionColor;//持仓
|
|
6310
6310
|
};this.SetDynamicTitleData=function(outName,args,data){if(!data.OutName)data.OutName=new _map2.default();else data.OutName.clear();if(!data.OutValue)data.OutValue=new _map2.default();else data.OutValue.clear();var mapArgs=new _map2.default();for(var i in args){var item=args[i];mapArgs.set('{'+item.Name+'}',item);}for(var i in outName){var item=outName[i];if(item.DynamicName){var aryFond=item.DynamicName.match(/{\w*}/i);if(!aryFond||aryFond.length<=0){data.OutName.set(item.Name,item.DynamicName);}else{var dyName=item.DynamicName;var bFind=true;for(var j=0;j<aryFond.length;++j){var findItem=aryFond[j];if(mapArgs.has(findItem)){var value=mapArgs.get(findItem).Value;dyName=dyName.replace(findItem,value.toString());}else{bFind=false;break;}}if(bFind)data.OutName.set(item.Name,dyName);}}if(item.DynamicValue){data.OutValue.set(item.Name,item.DynamicValue);}}};this.SetDynamicTitle=function(outName,args,overlayID){if(IFrameSplitOperator.IsString(overlayID)){var dynamicTitle=null;if(this.OverlayDynamicTitle.has(overlayID)){dynamicTitle=this.OverlayDynamicTitle.get(overlayID);}else{dynamicTitle={OutName:null,OutValue:null};this.OverlayDynamicTitle.set(overlayID,dynamicTitle);}this.SetDynamicTitleData(outName,args,dynamicTitle);}else{this.SetDynamicTitleData(outName,args,this.DynamicTitle);}};this.GetDynamicOutName=function(key,overlayID){if(IFrameSplitOperator.IsString(overlayID)){if(!this.OverlayDynamicTitle.has(overlayID))return null;var dynamicTitle=this.OverlayDynamicTitle.get(overlayID);var outName=dynamicTitle.OutName;}else{var outName=this.DynamicTitle.OutName;}if(!outName||outName.size<=0)return null;if(!outName.has(key))return null;return outName.get(key);};this.GetDynamicOutValue=function(key,value){var outValue=this.DynamicTitle.OutValue;if(!outValue||outValue.size<=0)return null;if(!outValue.has(key))return null;var strFormat=outValue.get(key);strFormat=strFormat.replace('{Value}',value);return strFormat;};this.IsClickTitle=function(x,y)//是否点击了指标标题
|
|
6311
|
-
{if(!this.TitleRect)return false;if(x>this.TitleRect.Left&&x<this.TitleRect.Left+this.TitleRect.Width&&y>this.TitleRect.Top&&y<this.TitleRect.Top+this.TitleRect.Height){return true;}return false;};this.FormatValue=function(value,item){if(item.StringFormat==STRING_FORMAT_TYPE.DEFAULT)return IFrameSplitOperator.
|
|
6312
|
-
this.FormatStackedBarTitle=function(aryBar,dataInfo){if(!IFrameSplitOperator.IsNonEmptyArray(aryBar))return null;if(!IFrameSplitOperator.IsNonEmptyArray(dataInfo.Color))return null;var aryText=[];for(var i=0;i<aryBar.length;++i){var value=aryBar[i];if(!IFrameSplitOperator.IsNumber(value))continue;var item={Text:value.toFixed(2)};if(dataInfo.Name&&dataInfo.Name[i])item.Name=dataInfo.Name[i];item.Color=dataInfo.Color[i];aryText.push(item);}if(aryText.length<=0)return null;return aryText;};this.FormatKLineTitle=function(item,dataInfo){if(!item)return null;var defaultfloatPrecision=GetfloatPrecision(dataInfo.Symbol);//价格小数位数
|
|
6311
|
+
{if(!this.TitleRect)return false;if(x>this.TitleRect.Left&&x<this.TitleRect.Left+this.TitleRect.Width&&y>this.TitleRect.Top&&y<this.TitleRect.Top+this.TitleRect.Height){return true;}return false;};this.FormatValue=function(value,item){if(item.StringFormat==STRING_FORMAT_TYPE.DEFAULT)return IFrameSplitOperator.FormatValueStringV2(value,item.FloatPrecision,2,this.LanguageID);else if(item.StringFormat==STRING_FORMAT_TYPE.THOUSANDS)return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);else if(item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)return value.toFixed(item.FloatPrecision).toString();else if(item.StringFormat==STRING_FORMAT_TYPE.INTEGER)return IFrameSplitOperator.FromatIntegerString(value,item.FloatPrecision,this.LanguageID);};this.FormatMultiReport=function(data,format){if(!IFrameSplitOperator.IsNonEmptyArray(data))return null;var text="";for(var i=0;i<data.length;++i){var item=data[i];var quarter=item.Quarter;var year=item.Year;var _value2=item.Value;if(text.length>0)text+=',';text+=year.toString();switch(quarter){case 1:text+='一季报 ';break;case 2:text+='半年报 ';break;case 3:text+='三季报 ';break;case 4:text+='年报 ';break;}text+=this.FormatValue(_value2,format);}return text;};this.FormatMultiDataLine=function(value,dataInfo){if(!value)return null;var text="";if(Array.isArray(value)){for(var i=0;i<value.length;++i){var item=value[i];if(item.Type==0)continue;if(!IFrameSplitOperator.IsNumber(item.Value))continue;var strValue=this.FormatValue(item.Value,dataInfo);if(text.length>0)text+=',';text+=strValue;}}else{if(value.Type!=0&&IFrameSplitOperator.IsNumber(value.Value)){text=this.FormatValue(value.Value,dataInfo);}}if(text.length<=0)return null;return text;};//多变量输出
|
|
6312
|
+
this.FormatStackedBarTitle=function(aryBar,dataInfo){if(!IFrameSplitOperator.IsNonEmptyArray(aryBar))return null;if(!IFrameSplitOperator.IsNonEmptyArray(dataInfo.Color))return null;var aryText=[];for(var i=0;i<aryBar.length;++i){var value=aryBar[i];if(!IFrameSplitOperator.IsNumber(value))continue;var item={Text:value.toFixed(2)};if(dataInfo.Name&&dataInfo.Name[i])item.Name=dataInfo.Name[i];item.Color=dataInfo.Color[i];aryText.push(item);}if(aryText.length<=0)return null;return aryText;};this.FormatBaseLineBarTitle=function(kItem,dataInfo){var result=null;var aryText=[];if(!kItem)return result;if(!dataInfo.Chart)return result;var chart=dataInfo.Chart;var item=chart.GetItem(kItem);if(!item)return result;if(!IFrameSplitOperator.IsNumber(item.Up)&&!IFrameSplitOperator.IsNumber(item.Down))return result;result={Text:null,ArrayText:aryText};if(IFrameSplitOperator.IsNumber(item.Up)){var textItem={Name:null,Text:null};textItem.Text=this.FormatValue(item.Up,dataInfo);if(chart.UpName)textItem.Name=chart.UpName;if(chart.UpColor)textItem.Color=chart.UpColor;aryText.push(textItem);}if(IFrameSplitOperator.IsNumber(item.Down)){var textItem={Name:null,Text:null};textItem.Text=this.FormatValue(item.Down,dataInfo);if(chart.DownName)textItem.Name=chart.DownName;if(chart.DownColor)textItem.Color=chart.DownColor;if(aryText.length>0)textItem.LeftSpace=3;aryText.push(textItem);}return result;};this.FormatKLineTitle=function(item,dataInfo){if(!item)return null;var defaultfloatPrecision=GetfloatPrecision(dataInfo.Symbol);//价格小数位数
|
|
6313
6313
|
var upperSymbol="";if(dataInfo.Symbol)upperSymbol=dataInfo.Symbol.toUpperCase();var pixelRatio=GetDevicePixelRatio();var leftSpace=3*pixelRatio;var aryText=[];if(IFrameSplitOperator.IsNumber(item.Date)){var text=IFrameSplitOperator.FormatDateString(item.Date);aryText.push({Text:text,Color:this.DateTimeColor});}if(IFrameSplitOperator.IsNumber(item.Open)){var color=this.GetColor(item.Open,item.YClose);var text=g_JSChartLocalization.GetText('KTitle-Open',this.LanguageID)+item.Open.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color,LeftSpace:leftSpace});}if(IFrameSplitOperator.IsNumber(item.High)){var color=this.GetColor(item.High,item.YClose);var text=g_JSChartLocalization.GetText('KTitle-High',this.LanguageID)+item.High.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color,LeftSpace:leftSpace});}if(IFrameSplitOperator.IsNumber(item.Low)){var color=this.GetColor(item.Low,item.YClose);var text=g_JSChartLocalization.GetText('KTitle-Low',this.LanguageID)+item.Low.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color,LeftSpace:leftSpace});}if(IFrameSplitOperator.IsNumber(item.Close)){var color=this.GetColor(item.Close,item.YClose);var text=g_JSChartLocalization.GetText('KTitle-Close',this.LanguageID)+item.Close.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color,LeftSpace:leftSpace});}//涨幅
|
|
6314
6314
|
if(item.YFClose>0&&MARKET_SUFFIX_NAME.IsChinaFutures(upperSymbol)){var value=(item.Close-item.YFClose)/item.YFClose*100;var color=this.GetColor(value,0);var text=g_JSChartLocalization.GetText('KTitle-Increase',this.LanguageID)+value.toFixed(2)+'%';aryText.push({Text:text,Color:color,LeftSpace:leftSpace});}else if(item.YClose>0){var value=(item.Close-item.YClose)/item.YClose*100;var color=this.GetColor(value,0);var text=g_JSChartLocalization.GetText('KTitle-Increase',this.LanguageID)+value.toFixed(2)+'%';aryText.push({Text:text,Color:color,LeftSpace:leftSpace});}if(IFrameSplitOperator.IsNumber(item.Vol))//成交量
|
|
6315
6315
|
{var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);var vol=item.Vol/unit;var text=g_JSChartLocalization.GetText('KTitle-Vol',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(vol,2,this.LanguageID);aryText.push({Text:text,Color:this.VolColor,LeftSpace:leftSpace});}if(IFrameSplitOperator.IsNumber(item.Amount))//成交金额
|
|
@@ -6337,7 +6337,7 @@ var value=null;var preVaildItem=null;if(item.DataType=="StraightLine")//直线
|
|
|
6337
6337
|
{value=item.Data.Data[0];valueText=this.FormatValue(value,item);}else if(item.ChartClassName=="ChartVolProfileVisibleRange"){aryText=this.FormatVPVRTitle(this.LastPoint,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else{if(isShowLastData){var dataIndex=item.Data.Data.length-1;//显示最后一个数据
|
|
6338
6338
|
}else{var index=Math.abs(this.CursorIndex);index=parseInt(index.toFixed(0));if(this.IsKLineFrame)index=this.CursorIndex;var dataIndex=item.Data.DataOffset+index;if(dataIndex>=item.Data.Data.length)dataIndex=item.Data.Data.length-1;if(dataIndex<0)return null;}var value=null;if(dataIndex>=0&&item.Data&&IFrameSplitOperator.IsNonEmptyArray(item.Data.Data))value=item.Data.Data[dataIndex];if(this.GetEventCallback)//外部处理
|
|
6339
6339
|
{var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_INDEX_OUT_TEXT);if(event){var sendData={Item:item,Index:titleIndex,Data:this.Data,FrameID:this.Frame.Identify,DataIndex:dataIndex,Value:value,PreventDefault:false,Out:null};event.Callback(event,sendData,this);if(sendData.Out)return sendData.Out;if(sendData.PreventDefault)return sendData.Out;}}if(item.DataType=="ChartMultiLine")//多线段数据
|
|
6340
|
-
{aryText=this.ForamtMultiLineTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartMultiPoint"){aryText=this.ForamtMultiPointTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartMultiBar"){aryText=this.ForamtMultiBarTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="MultiReport"){valueText=this.FormatMultiReport(value,item);if(!valueText)return null;}else if(item.DataType=="MULTI_POINT_LINE"){valueText=this.FormatMultiDataLine(value,item);if(!valueText)return null;}else if(item.DataType=="ChartStackedBar"){aryText=this.FormatStackedBarTitle(value,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="DRAWKLINE"){aryText=this.FormatKLineTitle(value,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartIndexTitle"){var outTitle=this.FormatIndexTitle(value,item);return outTitle;}else if(item.DataType=="ChartBand"){return null;}else if(g_ScriptIndexChartFactory.Has(item.DataType))//外部挂接
|
|
6340
|
+
{aryText=this.ForamtMultiLineTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartMultiPoint"){aryText=this.ForamtMultiPointTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartMultiBar"){aryText=this.ForamtMultiBarTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="MultiReport"){valueText=this.FormatMultiReport(value,item);if(!valueText)return null;}else if(item.DataType=="MULTI_POINT_LINE"){valueText=this.FormatMultiDataLine(value,item);if(!valueText)return null;}else if(item.DataType=="ChartStackedBar"){aryText=this.FormatStackedBarTitle(value,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="DRAWKLINE"){aryText=this.FormatKLineTitle(value,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartIndexTitle"){var outTitle=this.FormatIndexTitle(value,item);return outTitle;}else if(item.DataType=="ChartBand"){return null;}else if(item.DataType=="ChartBaseLineBar"){var outTitle=this.FormatBaseLineBarTitle(value,item);return outTitle;}else if(g_ScriptIndexChartFactory.Has(item.DataType))//外部挂接
|
|
6341
6341
|
{var find=g_ScriptIndexChartFactory.Get(item.DataType);if(find&&find.FormatTitleCallback)return find.FormatTitleCallback(value,item,dataIndex);}else if(value==null&&item.ChartClassName=="ChartStepLine")//当前值无效,上一个值延续
|
|
6342
6342
|
{preVaildItem=this.GetPreVaildItem(item.Data.Data,dataIndex);if(!preVaildItem)return null;preText=this.FormatValue(preVaildItem.Item,item);if(item.Name){var dyValue=this.GetDynamicOutValue(item.Name,preText);if(dyValue)preText=dyValue;}valueText='--('+preText+')';return{Text:valueText,ArrayText:aryText};}else{if(value==null)return null;var arrowSuper=null;//独立颜色
|
|
6343
6343
|
if(this.IsShowUpDownArrow){var preValue=null;if(dataIndex-1>=0)preValue=item.Data.Data[dataIndex-1];if(IFrameSplitOperator.IsNumber(preValue)){if(preValue>value)arrowSuper={Text:'↓',TextColor:this.UpDownArrowConfig.DownColor};else if(preValue<value)arrowSuper={Text:'↑',TextColor:this.UpDownArrowConfig.UpColor};else arrowSuper={Text:'→',TextColor:this.UpDownArrowConfig.UnchangeColor};if(this.TitleArrowType==1)arrowSuper.TextColor=item.Color;}}valueText=this.FormatValue(value,item);if(item.Name){var dyValue=this.GetDynamicOutValue(item.Name,valueText);if(dyValue)valueText=dyValue;}if(arrowSuper){var outItem={Name:null,Text:valueText,Color:item.Color,TextEx:[arrowSuper]};if(item.Name){var text=item.Name;var dyTitle=this.GetDynamicOutName(item.Name);//动态标题
|
|
@@ -12458,8 +12458,9 @@ chart.Texts=varItem.Draw.DrawData;chart.BuildCacheData();this.SetChartIndexName(
|
|
|
12458
12458
|
chart.Family=varItem.Draw.DrawData.Family;chart.AryIcon=varItem.Draw.DrawData.Icon;chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateChartDrawSVG=function(hqChart,windowIndex,varItem,i){var chart=new ChartDrawSVG();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.GetKData();if(IFrameSplitOperator.IsBool(varItem.Draw.DrawData.EnableTooltip))chart.EnableTooltip=varItem.Draw.DrawData.EnableTooltip;if(IFrameSplitOperator.IsBool(varItem.Draw.DrawData.IsDrawFirst))chart.IsDrawFirst=varItem.Draw.DrawData.IsDrawFirst;if(IFrameSplitOperator.IsBool(varItem.Draw.EnalbeDetailNoOverlap))chart.EnalbeDetailNoOverlap=varItem.Draw.EnalbeDetailNoOverlap;if(IFrameSplitOperator.IsBool(varItem.Draw.EnableClick))chart.EnableClick=varItem.Draw.EnableClick;if(varItem.Draw.BuildKeyCallback)chart.BuildKeyCallback=varItem.Draw.BuildKeyCallback;chart.Family=varItem.Draw.DrawData.Family;chart.TextFont=varItem.Draw.DrawData.TextFont;chart.Texts=varItem.Draw.DrawData.Data;chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateMulitHtmlDom=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiHtmlDom();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
12459
12459
|
chart.Texts=varItem.Draw.DrawData;chart.DrawCallback=varItem.Draw.Callback;hqChart.ChartPaint.push(chart);};this.CreateStackedBar=function(hqChart,windowIndex,varItem,i){var chart=new ChartStackedBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarColor))chart.BarColor=varItem.Draw.BarColor;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarName))chart.BarName=varItem.Draw.BarName;if(IFrameSplitOperator.IsNumber(varItem.Draw.LineWidth))chart.LineWidth=varItem.Draw.LineWidth;if(IFrameSplitOperator.IsNumber(varItem.Draw.BarType))chart.BarType=varItem.Draw.BarType;hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartStackedBar";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateKLineTable=function(hqChart,windowIndex,varItem,i){var chart=new ChartKLineTable();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
|
|
12460
12460
|
chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;var config=varItem.Draw.Config;if(config){if(config.BGColor)chart.BGColor=config.BGColor;if(config.TextColor)chart.TextColor=config.TextColor;if(config.BorderColor)chart.BorderColor=config.BorderColor;if(IFrameSplitOperator.IsNumber(config.RowNamePosition))chart.RowNamePosition=config.RowNamePosition;if(IFrameSplitOperator.IsNumber(config.RowHeightType))chart.RowHeightType=config.RowHeightType;if(config.ItemMergin){var subItem=config.ItemMergin;if(IFrameSplitOperator.IsNumber(subItem.Left))chart.ItemMergin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))chart.ItemMergin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))chart.ItemMergin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))chart.ItemMergin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))chart.ItemMergin.YOffset=subItem.YOffset;}if(config.TextFont){var subItem=config.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))chart.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)chart.TextFontConfig.Family=subItem.Family;}}chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateScatterPlot=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlot();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;chart.Color=varItem.Draw.Color;chart.Radius=varItem.Draw.Radius;hqChart.ChartPaint.push(chart);};this.CreateScatterPlotV2=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlotV2();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
|
|
12461
|
-
chart.AryPoint=varItem.Draw.DrawData;var config=varItem.Draw.Config;if(config){if(config.Color)chart.Color=config.Color;if(IFrameSplitOperator.IsNumber(config.Radius))chart.Radius=config.Radius;if(config.TextColor)chart.TextColor=config.TextColor;if(config.Font)chart.Font=config.Font;}chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,
|
|
12462
|
-
chart.AryData=varItem.Draw.DrawData;
|
|
12461
|
+
chart.AryPoint=varItem.Draw.DrawData;var config=varItem.Draw.Config;if(config){if(config.Color)chart.Color=config.Color;if(IFrameSplitOperator.IsNumber(config.Radius))chart.Radius=config.Radius;if(config.TextColor)chart.TextColor=config.TextColor;if(config.Font)chart.Font=config.Font;}chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,i){var chart=new ChartBaseLineBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
|
|
12462
|
+
chart.AryData=varItem.Draw.DrawData;chart.Style=1;//主图使用独立坐标模式
|
|
12463
|
+
var config=varItem.Draw.Config;if(config){if(config.UpColor)chart.UpColor=config.UpColor;if(config.DownColor)chart.DownColor=config.DownColor;if(IFrameSplitOperator.IsNumber(config.DefaultMax))chart.DefaultMax=config.DefaultMax;if(IFrameSplitOperator.IsNumber(config.Style))chart.Style=config.Style;if(config.UpName)chart.UpName=config.UpName;if(config.DownName)chart.DownName=config.DownName;}chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,null,chart.Color);titleData.DataType="ChartBaseLineBar";titleData.Chart=chart;hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateClipColorStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartClipColorStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(varItem.Option&&chart.SetOption)chart.SetOption(varItem.Option);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;if(varItem.IsShowTitle===false){}else{var clrTitle=this.GetDefaultColor(id);if(varItem.Option&&varItem.Option.TitleColor)clrTitle=this.GetColor(varItem.Option.TitleColor);hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,clrTitle);}};this.CreateColorKLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartColorKline();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
12463
12464
|
chart.KLineColor=varItem.Draw.DrawData.KLine;if(varItem.Color)chart.Color=varItem.Color;hqChart.ChartPaint.push(chart);};this.CreateRectangle=function(hqChart,windowIndex,varItem,i){var chart=new ChartRectangle();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Color=[varItem.Draw.DrawData.Color];chart.Rect=varItem.Draw.DrawData.Rect;if(varItem.Color)chart.BorderColor=this.GetColor(varItem.Color);hqChart.ChartPaint.push(chart);};this.CreateScriptOverlayLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartOverlayLine();chart.Canvas=hqChart.Canvas;chart.DrawType=1;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(i);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}if(varItem.IsDotLine)chart.IsDotLine=true;//虚线
|
|
12464
12465
|
if(varItem.IsShow==false)chart.IsShow=false;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Draw.DrawData.Data;chart.MainData.Data=varItem.Draw.DrawData.MainData;if(varItem.Draw.DrawData.Title)hqChart.TitlePaint[titleIndex].Data[i]=new DynamicTitleData(chart.Data,varItem.Draw.DrawData.Title,chart.Color);hqChart.ChartPaint.push(chart);};//创建K线
|
|
12465
12466
|
this.CreateSelfKLine=function(hqChart,windowIndex,hisData){var chart=new ChartKLine();chart.Canvas=hqChart.Canvas;chart.Name="Self Kline";chart.Identify=this.Guid;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hisData;chart.IsShowMaxMinPrice=false;chart.IsShowKTooltip=false;chart.DrawType=this.KLineType;hqChart.ChartPaint.push(chart);};this.BindInstructionData=function(hqChart,windowIndex,hisData)//绑定指示指标
|
|
@@ -13304,7 +13305,8 @@ this.TooltipMinuteChart;//分时图
|
|
|
13304
13305
|
this.TooltipKLineChart;//分时图
|
|
13305
13306
|
this.FloatTooltip;//提示浮框
|
|
13306
13307
|
//MouseOnStatus:{ RowIndex:行, ColumnIndex:列}
|
|
13307
|
-
this.LastMouseStatus={MoveStatus:null,TooltipStatus:null,MouseOnStatus:null};this.
|
|
13308
|
+
this.LastMouseStatus={MoveStatus:null,TooltipStatus:null,MouseOnStatus:null};this.RequestStatus={IsFinishStockList:false,IsFinishMemberList:false};//下载状态
|
|
13309
|
+
this.ChartDestroy=function()//销毁
|
|
13308
13310
|
{this.IsDestroy=true;this.StopAutoUpdate();this.DestroyMinuteChartTooltip();this.DestroyKLineChartTooltip();this.DestroyFloatTooltip();};this.StopAutoDragScrollTimer=function(){JSConsole.Chart.Log("[JSReportChartContainer::StopAutoDragScrollTimer] stop ");this.EnablePageScroll=false;if(this.AutoDragScrollTimer!=null){clearTimeout(this.AutoDragScrollTimer);this.AutoDragScrollTimer=null;}};this.InitalPopMenu=function()//初始化弹出窗口
|
|
13309
13311
|
{if(this.JSPopMenu)return;this.JSPopMenu=new JSPopMenu();//内置菜单
|
|
13310
13312
|
this.JSPopMenu.Inital();};this.InitalMinuteChartTooltip=function(option){if(this.TooltipMinuteChart)return;this.TooltipMinuteChart=new JSTooltipMinuteChart();this.TooltipMinuteChart.Inital(this,option);this.TooltipMinuteChart.Create();};this.DestroyMinuteChartTooltip=function(){if(!this.TooltipMinuteChart)return;this.TooltipMinuteChart.Destroy();this.TooltipMinuteChart=null;};this.InitalKLineChartTooltip=function(option){if(this.TooltipKLineChart)return;this.TooltipKLineChart=new JSTooltipKLineChart();this.TooltipKLineChart.Inital(this,option);this.TooltipKLineChart.Create();};this.DestroyKLineChartTooltip=function(){if(!this.TooltipKLineChart)return;this.TooltipKLineChart.Destroy();this.TooltipKLineChart=null;};this.InitalFloatTooltip=function(option){if(this.FloatTooltip)return;this.FloatTooltip=new JSFloatTooltip();this.FloatTooltip.Inital(this,option);this.FloatTooltip.Create();};this.HideFloatTooltip=function(){if(!this.FloatTooltip)return;this.FloatTooltip.Hide();};this.DestroyFloatTooltip=function(){if(!this.FloatTooltip)return;this.FloatTooltip.Destroy();this.FloatTooltip=null;};this.DrawFloatTooltip=function(point,toolTip){if(!this.FloatTooltip)return;this.UpdateFloatTooltip(point,toolTip);};this.UpdateFloatTooltip=function(point,toolTip){if(!this.FloatTooltip)return;var sendData={Tooltip:toolTip,Point:point,DataType:3};this.FloatTooltip.Update(sendData);};//data={ Symbol }
|
|
@@ -13329,7 +13331,7 @@ this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段
|
|
|
13329
13331
|
this.LastMouseStatus.MouseOnStatus=null;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash){this.Frame.Draw({IsEnableSplash:this.ChartSplashPaint.IsEnableSplash});this.ChartSplashPaint.Draw();return;}this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
|
|
13330
13332
|
for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.IsDrawFirst)item.Draw(this.LastMouseStatus);}for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.IsDrawFirst)item.Draw(this.LastMouseStatus);}if(this.GlobalOption.FlashBGCount>0){this.DelayDraw(500);}};this.DelayDraw=function(frequency){var _this60=this;if(typeof this.FlashBGTimer=='number'){clearTimeout(this.FlashBGTimer);this.FlashBGTimer=null;}this.FlashBGTimer=setTimeout(function(){_this60.Draw();},frequency);};this.ResetReportStatus=function(){this.Data.XOffset=0;this.Data.YOffset=0;};this.ResetReportSelectStatus=function(){var chart=this.GetReportChart();if(chart){chart.SelectedRow=-1;chart.SelectedFixedRow=-1;chart.MultiSelectedRow=[];}};this.ClearData=function(){this.SourceData.Data=[];this.Data.Data=[];this.Data.Virtual.Count=0;this.BlockData=new _map2.default();};this.ClearMapStockData=function(){this.MapStockData=new _map2.default();};this.ResetSortStatus=function(){this.SortInfo.Field=-1;this.SortInfo.Sort=0;};this.SetSelectedRow=function(option){var reportChart=this.GetReportChart();if(!reportChart)return false;if(!reportChart.SetSelectedRow(option))return false;this.Draw();};//设置股票列表
|
|
13331
13333
|
this.SetSymbolList=function(arySymbol,option){this.ClearData();this.ResetReportStatus();this.ResetSortStatus();if(IFrameSplitOperator.IsNonEmptyArray(arySymbol)){for(var i=0;i<arySymbol.length;++i){this.Data.Data.push(arySymbol[i]);}}var chart=this.ChartPaint[0];if(chart)chart.Data=this.Data;this.Draw();};this.ChangeSymbol=function(symbol,option){var _this61=this;this.Symbol=symbol;this.ClearData();this.ResetReportStatus();this.ResetSortStatus();this.ResetReportSelectStatus();if(option){if(IFrameSplitOperator.IsNumber(option.TabSelected)){var chartTab=this.GetTabChart();if(chartTab)chartTab.SelectedTabIndex=option.TabSelected;}if(Array.isArray(option.FixedSymbol)){var chart=this.GetReportChart();if(chart){chart.FixedRowCount=0;this.FixedRowData.Type=1;this.FixedRowData.Symbol=[];var aryData=option.FixedSymbol;for(var i=0;i<aryData.length;++i){var item=aryData[i];this.FixedRowData.Symbol.push(item.Symbol);++chart.FixedRowCount;}this.SetSizeChange(true);}}if(option.SortInfo){var item=option.SortInfo;if(IFrameSplitOperator.IsNumber(item.Field))this.SortInfo.Field=item.Field;if(IFrameSplitOperator.IsNumber(item.Sort))this.SortInfo.Sort=item.Sort;}if(IFrameSplitOperator.IsNonEmptyArray(option.Column))//字段重新设置
|
|
13332
|
-
{this.SetColumn(option.Column,{Draw:false});}if(IFrameSplitOperator.IsBool(option.IsReloadStockList)&&option.IsReloadStockList){var requestOption={Callback:null};if(this.Symbol)requestOption.Callback=function(){_this61.RequestMemberListData();};this.MapStockData=new _map2.default();this.RequestStockListData(requestOption);return;}}this.RequestMemberListData();};//更新数据
|
|
13334
|
+
{this.SetColumn(option.Column,{Draw:false});}if(IFrameSplitOperator.IsBool(option.IsReloadStockList)&&option.IsReloadStockList){var requestOption={Callback:null};if(this.Symbol)requestOption.Callback=function(){_this61.RequestMemberListData();};this.MapStockData=new _map2.default();this.RequestStatus.IsFinishStockList=false;this.RequestStatus.IsFinishMemberList=false;this.RequestStockListData(requestOption);return;}}this.RequestMemberListData();};//更新数据
|
|
13333
13335
|
this.UpdateFullData=function(data){var arySymbol=[];if(IFrameSplitOperator.IsNonEmptyArray(data.data)){//0=证券代码 1=股票名称
|
|
13334
13336
|
for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQReportItem();stock.OriginalSymbol=symbol;this.MapStockData.set(symbol,stock);}stock.Symbol=this.GetSymbolNoSuffix(symbol);stock.Name=item[1];this.ReadStockJsonData(stock,item);arySymbol.push(symbol);}}//设置显示数据
|
|
13335
13337
|
this.Data.Data=[];this.SourceData.Data=[];if(IFrameSplitOperator.IsNonEmptyArray(arySymbol)){for(var i=0;i<arySymbol.length;++i){this.Data.Data.push(arySymbol[i]);this.SourceData.Data.push(arySymbol[i]);}}this.Draw();};//设置全部的数据
|
|
@@ -13377,26 +13379,27 @@ this.SetFullData=function(data){this.ClearMapStockData();this.ClearData();this.R
|
|
|
13377
13379
|
*/};this.RequestMemberListData=function(){//this.ChartSplashPaint.SetTitle(this.SplashTitle.MemberList);
|
|
13378
13380
|
//this.ChartSplashPaint.EnableSplash(true);
|
|
13379
13381
|
//this.Draw();
|
|
13380
|
-
var self=this;if(this.NetworkFilter){var obj={Name:'JSReportChartContainer::RequestMemberListData',//类名::
|
|
13382
|
+
this.RequestStatus.IsFinishMemberList=false;var self=this;if(this.NetworkFilter){var obj={Name:'JSReportChartContainer::RequestMemberListData',//类名::
|
|
13381
13383
|
Explain:'板块成分数据',Request:{Data:{symbol:this.Symbol}},Self:this,PreventDefault:false};if(this.SortInfo.Field>=0&&this.SortInfo.Sort>0){var reportChart=this.GetReportChart();if(reportChart){var column=reportChart.Column[this.SortInfo.Field];obj.Sort={Column:column,Field:this.SortInfo.Field,Sort:this.SortInfo.Sort};}}this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvMemberListData(data);});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
|
|
13382
13384
|
}//throw { Name:'JSReportChartContainer::RequestMemberListData', Error:'(板块成分数据)不提供内置测试数据' };
|
|
13383
13385
|
};this.RecvMemberListData=function(recvData){this.ClearData();if(IFrameSplitOperator.IsNonEmptyArray(recvData.data)){for(var i=0;i<recvData.data.length;++i){this.Data.Data.push(recvData.data[i]);this.SourceData.Data.push(recvData.data[i]);}}if(recvData.Virtual)//虚拟表设置
|
|
13384
|
-
{var item=recvData.Virtual;if(IFrameSplitOperator.IsNumber(item.Count))this.Data.Virtual.Count=item.Count;}this.Draw();this.UpdateStockData();};//删除股票
|
|
13386
|
+
{var item=recvData.Virtual;if(IFrameSplitOperator.IsNumber(item.Count))this.Data.Virtual.Count=item.Count;}this.RequestStatus.IsFinishMemberList=true;this.Draw();this.UpdateStockData();};//删除股票
|
|
13385
13387
|
this.DeleteSymbol=function(arySymbol,option){if(!IFrameSplitOperator.IsNonEmptyArray(arySymbol))return false;var setSymbol=new _set2.default(arySymbol);var bFinder=false;if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){var aryData=[];for(var i=0;i<this.SourceData.Data.length;++i){var item=this.SourceData.Data[i];if(setSymbol.has(item)){bFinder=true;continue;}aryData.push(item);}if(bFinder)this.SourceData.Data=aryData;}if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)){var aryData=[];for(var i=0;i<this.Data.Data.length;++i){var item=this.Data.Data[i];if(setSymbol.has(item)){bFinder=true;continue;}aryData.push(item);}if(bFinder)this.Data.Data=aryData;}if(!bFinder)return false;this.Draw();this.UpdateStockData();return true;};//添加股票
|
|
13386
13388
|
this.AddSymbol=function(arySymbol,option){if(!IFrameSplitOperator.IsNonEmptyArray(arySymbol))return false;var bDuplicate=true;if(option&&IFrameSplitOperator.IsBool(option.Duplicate))bDuplicate=option.Duplicate;//是否去重
|
|
13387
13389
|
var mapSymbol=new _map2.default();for(var i=0;i<arySymbol.length;++i){var item={Symbol:arySymbol[i],IsExist:false,IsExist2:false};mapSymbol.set(item.Symbol,item);}if(bDuplicate){if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){for(var i=0;i<this.SourceData.Data.length;++i){var item=this.Data.Data[i];if(mapSymbol.has(item)){mapSymbol.get(item).IsExist=true;}}}if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)){for(var i=0;i<this.Data.Data.length;++i){var item=this.Data.Data[i];if(mapSymbol.has(item)){mapSymbol.get(item).IsExist2=true;}}}}var _iteratorNormalCompletion24=true;var _didIteratorError24=false;var _iteratorError24=undefined;try{for(var _iterator24=(0,_getIterator3.default)(mapSymbol),_step24;!(_iteratorNormalCompletion24=(_step24=_iterator24.next()).done);_iteratorNormalCompletion24=true){var mapItem=_step24.value;var item=mapItem[1];if(!item.IsExist)this.SourceData.Data.push(item.Symbol);if(!item.IsExist2)this.Data.Data.push(item.Symbol);}}catch(err){_didIteratorError24=true;_iteratorError24=err;}finally{try{if(!_iteratorNormalCompletion24&&_iterator24.return){_iterator24.return();}}finally{if(_didIteratorError24){throw _iteratorError24;}}}this.Draw();this.UpdateStockData();return true;};//下载码表
|
|
13388
|
-
this.RequestStockListData=function(option){this.ChartSplashPaint.SetTitle(this.SplashTitle.StockList);this.ChartSplashPaint.EnableSplash(true);this.Draw();var self=this;if(this.NetworkFilter){var obj={Name:'JSReportChartContainer::RequestStockListData',//类名::
|
|
13390
|
+
this.RequestStockListData=function(option){this.RequestStatus.IsFinishStockList=false;this.ChartSplashPaint.SetTitle(this.SplashTitle.StockList);this.ChartSplashPaint.EnableSplash(true);this.Draw();var self=this;if(this.NetworkFilter){var obj={Name:'JSReportChartContainer::RequestStockListData',//类名::
|
|
13389
13391
|
Explain:'码表数据',Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvStockListData(data,option);});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
|
|
13390
13392
|
}//throw { Name:'JSReportChartContainer::RequestStockListData', Error:'(码表数据)不提供内置测试数据' };
|
|
13391
13393
|
};this.RecvStockListData=function(data,option){if(IFrameSplitOperator.IsNonEmptyArray(data.data)){//0=证券代码 1=股票名称
|
|
13392
|
-
for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQReportItem();stock.OriginalSymbol=symbol;this.MapStockData.set(symbol,stock);}stock.Symbol=this.GetSymbolNoSuffix(symbol);stock.Name=item[1];if(IFrameSplitOperator.IsNumber(item[88]))stock.PriceColorType=item[88];this.ReadStockJsonData(stock,item);}}if(option&&option.Callback){option.Callback();return;}this.Draw();this.UpdateStockData();};//更新股票数据
|
|
13394
|
+
for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQReportItem();stock.OriginalSymbol=symbol;this.MapStockData.set(symbol,stock);}stock.Symbol=this.GetSymbolNoSuffix(symbol);stock.Name=item[1];if(IFrameSplitOperator.IsNumber(item[88]))stock.PriceColorType=item[88];this.ReadStockJsonData(stock,item);}}this.RequestStatus.IsFinishStockList=true;if(option&&option.Callback){option.Callback();return;}this.Draw();this.UpdateStockData();};//更新股票数据
|
|
13393
13395
|
this.UpdateMapStockData=function(data){if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.data))return;//0=证券代码 1=股票名称
|
|
13394
13396
|
for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQReportItem();stock.OriginalSymbol=symbol;this.MapStockData.set(symbol,stock);}stock.Symbol=this.GetSymbolNoSuffix(symbol);stock.Name=item[1];this.ReadStockJsonData(stock,item);}};//获取个股数据
|
|
13395
13397
|
this.GetStockData=function(symbol){if(!this.MapStockData)return null;if(!this.MapStockData.has(symbol))return null;return this.MapStockData.get(symbol);};this.GetBlockData=function(symbol){if(!this.BlockData)return null;if(!this.BlockData.has(symbol))return null;return this.BlockData.get(symbol);};//obj={ ID:, Color: , Time:, Count: }
|
|
13396
13398
|
this.SetFlashBGItem=function(symbol,obj){var item={ID:obj.ID,Color:obj.Color,Count:1};if(IFrameSplitOperator.IsNumber(obj.Count))item.Count=obj.Count;if(IFrameSplitOperator.IsNumber(obj.Time))item.Time=obj.Time;else item.Time=Date.now();if(this.FlashBG.has(symbol)){var stockItem=this.FlashBG.get(symbol);stockItem.LastTime=item.Time;stockItem.Data.set(item.ID,item);}else{var stockItem={LastTime:item.Time,Data:new _map2.default([[item.ID,item]])};this.FlashBG.set(symbol,stockItem);}};this.GetFlashBGData=function(symbol,time){if(!this.FlashBG)return null;if(!this.FlashBG.has(symbol))return null;var timeDiff=3*1000;var stockItem=this.FlashBG.get(symbol);if(time-stockItem.LastTime>=timeDiff)//超时的删除
|
|
13397
13399
|
{this.FlashBG.delete(symbol);return null;}if(!stockItem.Data||stockItem.Data.size<=0){this.FlashBG.delete(symbol);return null;}var aryDelID=[];//超时需要参数的
|
|
13398
13400
|
var _iteratorNormalCompletion25=true;var _didIteratorError25=false;var _iteratorError25=undefined;try{for(var _iterator25=(0,_getIterator3.default)(stockItem.Data),_step25;!(_iteratorNormalCompletion25=(_step25=_iterator25.next()).done);_iteratorNormalCompletion25=true){var mapItem=_step25.value;var item=mapItem[1];if(time-item.Time>=timeDiff||item.Count<=0)aryDelID.push(item.ID);}}catch(err){_didIteratorError25=true;_iteratorError25=err;}finally{try{if(!_iteratorNormalCompletion25&&_iterator25.return){_iterator25.return();}}finally{if(_didIteratorError25){throw _iteratorError25;}}}if(IFrameSplitOperator.IsNonEmptyArray(aryDelID)){for(var i=0;i<aryDelID.length;++i){stockItem.Data.delete(aryDelID[i]);}if(stockItem.Data.size<=0){this.FlashBG.delete(symbol);return null;}}return stockItem;};//delay=是否延迟
|
|
13399
|
-
this.DelayUpdateStockData=function(){var _this62=this;if(this.DelayUpdateTimer!=null){clearTimeout(this.DelayUpdateTimer);this.DelayUpdateTimer=null;}var frequency=this.DelayUpdateFrequency;this.DelayUpdateTimer=setTimeout(function(){_this62.UpdateStockData();},frequency);};this.UpdateStockData=function(){var chart=this.ChartPaint[0];if(!chart)return
|
|
13401
|
+
this.DelayUpdateStockData=function(){var _this62=this;if(this.DelayUpdateTimer!=null){clearTimeout(this.DelayUpdateTimer);this.DelayUpdateTimer=null;}var frequency=this.DelayUpdateFrequency;this.DelayUpdateTimer=setTimeout(function(){_this62.UpdateStockData();},frequency);};this.UpdateStockData=function(){var chart=this.ChartPaint[0];if(!chart)return;//列表还没有加载完成
|
|
13402
|
+
if(this.RequestStatus.IsFinishMemberList==false||this.RequestStatus.IsFinishMemberList==false)return;if(this.Data.Virtual&&this.Data.Virtual.Enable){this.RequestVirtualStockData();//虚拟表格 全部取后台
|
|
13400
13403
|
return;}//if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
|
|
13401
13404
|
if(this.SortInfo&&this.SortInfo.Field>=0&&this.SortInfo.Sort>0){var column=chart.Column[this.SortInfo.Field];if(column.Sort==2){this.RequestStockSortData(column,this.SortInfo.Field,this.SortInfo.Sort);//远程排序
|
|
13402
13405
|
return;}}var arySymbol=chart.ShowSymbol;//if (!IFrameSplitOperator.IsNonEmptyArray(arySymbol)) return;
|
|
@@ -15187,7 +15190,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
15187
15190
|
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);};}/********************************************************************************
|
|
15188
15191
|
* 版本信息输出
|
|
15189
15192
|
*
|
|
15190
|
-
*/var HQCHART_VERSION="1.1.
|
|
15193
|
+
*/var HQCHART_VERSION="1.1.14914";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();//把给外界调用的方法暴露出来
|
|
15191
15194
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
15192
15195
|
// BaseIndex:BaseIndex,
|
|
15193
15196
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -22324,7 +22324,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
22324
22324
|
hqChart.ChartPaint.push(chart);
|
|
22325
22325
|
}
|
|
22326
22326
|
|
|
22327
|
-
this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,
|
|
22327
|
+
this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,i)
|
|
22328
22328
|
{
|
|
22329
22329
|
var chart=new ChartBaseLineBar();
|
|
22330
22330
|
chart.Canvas=hqChart.Canvas;
|
|
@@ -22336,6 +22336,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
22336
22336
|
|
|
22337
22337
|
chart.Data=hqChart.GetKData(); //绑定K线
|
|
22338
22338
|
chart.AryData=varItem.Draw.DrawData;
|
|
22339
|
+
chart.Style=1; //主图使用独立坐标模式
|
|
22339
22340
|
|
|
22340
22341
|
var config=varItem.Draw.Config;
|
|
22341
22342
|
if (config)
|
|
@@ -22344,11 +22345,19 @@ function ScriptIndex(name,script,args,option)
|
|
|
22344
22345
|
if (config.DownColor) chart.DownColor=config.DownColor;
|
|
22345
22346
|
if (IFrameSplitOperator.IsNumber(config.DefaultMax)) chart.DefaultMax=config.DefaultMax;
|
|
22346
22347
|
if (IFrameSplitOperator.IsNumber(config.Style)) chart.Style=config.Style;
|
|
22348
|
+
if (config.UpName) chart.UpName=config.UpName;
|
|
22349
|
+
if (config.DownName) chart.DownName=config.DownName;
|
|
22347
22350
|
}
|
|
22348
22351
|
|
|
22349
22352
|
chart.BuildCacheData();
|
|
22350
22353
|
this.SetChartIndexName(chart);
|
|
22351
22354
|
hqChart.ChartPaint.push(chart);
|
|
22355
|
+
|
|
22356
|
+
var titleIndex=windowIndex+1;
|
|
22357
|
+
var titleData=new DynamicTitleData(chart.Data,null,chart.Color);
|
|
22358
|
+
titleData.DataType="ChartBaseLineBar";
|
|
22359
|
+
titleData.Chart=chart;
|
|
22360
|
+
hqChart.TitlePaint[titleIndex].Data[i]=titleData;
|
|
22352
22361
|
}
|
|
22353
22362
|
|
|
22354
22363
|
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -41727,6 +41727,8 @@ function ChartBaseLineBar()
|
|
|
41727
41727
|
this.ClassName="ChartBaseLineBar";
|
|
41728
41728
|
this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;
|
|
41729
41729
|
this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;
|
|
41730
|
+
this.UpName;
|
|
41731
|
+
this.DownName;
|
|
41730
41732
|
this.LineWidth=1;
|
|
41731
41733
|
this.Style=0; //0=坐标使用主图坐标 1=独立坐标
|
|
41732
41734
|
this.IsDrawFirst=true;
|
|
@@ -42015,6 +42017,15 @@ function ChartBaseLineBar()
|
|
|
42015
42017
|
|
|
42016
42018
|
return range;
|
|
42017
42019
|
}
|
|
42020
|
+
|
|
42021
|
+
this.GetItem=function(kItem)
|
|
42022
|
+
{
|
|
42023
|
+
if (!this.MapCache || this.MapCache.size<=0) return null;
|
|
42024
|
+
var key=this.BuildKey(kItem);
|
|
42025
|
+
if (!this.MapCache.has(key)) return null;
|
|
42026
|
+
|
|
42027
|
+
return this.MapCache.get(key);
|
|
42028
|
+
}
|
|
42018
42029
|
}
|
|
42019
42030
|
|
|
42020
42031
|
function ChartClipColorStick()
|
|
@@ -61856,7 +61867,7 @@ function DynamicChartTitlePainting()
|
|
|
61856
61867
|
this.FormatValue=function(value,item)
|
|
61857
61868
|
{
|
|
61858
61869
|
if (item.StringFormat==STRING_FORMAT_TYPE.DEFAULT)
|
|
61859
|
-
return IFrameSplitOperator.
|
|
61870
|
+
return IFrameSplitOperator.FormatValueStringV2(value,item.FloatPrecision,2,this.LanguageID);
|
|
61860
61871
|
else if (item.StringFormat==STRING_FORMAT_TYPE.THOUSANDS)
|
|
61861
61872
|
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
|
|
61862
61873
|
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
|
|
@@ -61956,6 +61967,45 @@ function DynamicChartTitlePainting()
|
|
|
61956
61967
|
return aryText;
|
|
61957
61968
|
}
|
|
61958
61969
|
|
|
61970
|
+
this.FormatBaseLineBarTitle=function(kItem, dataInfo)
|
|
61971
|
+
{
|
|
61972
|
+
var result=null;
|
|
61973
|
+
var aryText=[];
|
|
61974
|
+
|
|
61975
|
+
if (!kItem) return result;
|
|
61976
|
+
if (!dataInfo.Chart) return result;
|
|
61977
|
+
|
|
61978
|
+
var chart=dataInfo.Chart;
|
|
61979
|
+
var item=chart.GetItem(kItem);
|
|
61980
|
+
if (!item) return result;
|
|
61981
|
+
if (!IFrameSplitOperator.IsNumber(item.Up) && !IFrameSplitOperator.IsNumber(item.Down)) return result;
|
|
61982
|
+
|
|
61983
|
+
result={ Text:null, ArrayText:aryText };
|
|
61984
|
+
if (IFrameSplitOperator.IsNumber(item.Up))
|
|
61985
|
+
{
|
|
61986
|
+
var textItem={ Name:null, Text:null };
|
|
61987
|
+
textItem.Text=this.FormatValue(item.Up, dataInfo);
|
|
61988
|
+
|
|
61989
|
+
if (chart.UpName) textItem.Name=chart.UpName;
|
|
61990
|
+
if (chart.UpColor) textItem.Color=chart.UpColor;
|
|
61991
|
+
aryText.push(textItem);
|
|
61992
|
+
}
|
|
61993
|
+
|
|
61994
|
+
if (IFrameSplitOperator.IsNumber(item.Down))
|
|
61995
|
+
{
|
|
61996
|
+
var textItem={ Name:null, Text:null };
|
|
61997
|
+
textItem.Text=this.FormatValue(item.Down,dataInfo);
|
|
61998
|
+
if (chart.DownName) textItem.Name=chart.DownName;
|
|
61999
|
+
if (chart.DownColor) textItem.Color=chart.DownColor;
|
|
62000
|
+
|
|
62001
|
+
if (aryText.length>0) textItem.LeftSpace=3;
|
|
62002
|
+
|
|
62003
|
+
aryText.push(textItem);
|
|
62004
|
+
}
|
|
62005
|
+
|
|
62006
|
+
return result;
|
|
62007
|
+
}
|
|
62008
|
+
|
|
61959
62009
|
this.FormatKLineTitle=function(item, dataInfo)
|
|
61960
62010
|
{
|
|
61961
62011
|
if (!item) return null;
|
|
@@ -62601,6 +62651,11 @@ function DynamicChartTitlePainting()
|
|
|
62601
62651
|
{
|
|
62602
62652
|
return null;
|
|
62603
62653
|
}
|
|
62654
|
+
else if (item.DataType=="ChartBaseLineBar")
|
|
62655
|
+
{
|
|
62656
|
+
var outTitle=this.FormatBaseLineBarTitle(value, item);
|
|
62657
|
+
return outTitle;
|
|
62658
|
+
}
|
|
62604
62659
|
else if (g_ScriptIndexChartFactory.Has(item.DataType)) //外部挂接
|
|
62605
62660
|
{
|
|
62606
62661
|
var find=g_ScriptIndexChartFactory.Get(item.DataType);
|
|
@@ -494,6 +494,7 @@ function JSReportChartContainer(uielement)
|
|
|
494
494
|
|
|
495
495
|
//MouseOnStatus:{ RowIndex:行, ColumnIndex:列}
|
|
496
496
|
this.LastMouseStatus={ MoveStatus:null, TooltipStatus:null, MouseOnStatus:null };
|
|
497
|
+
this.RequestStatus={ IsFinishStockList:false, IsFinishMemberList:false }; //下载状态
|
|
497
498
|
|
|
498
499
|
this.ChartDestroy=function() //销毁
|
|
499
500
|
{
|
|
@@ -1032,6 +1033,8 @@ function JSReportChartContainer(uielement)
|
|
|
1032
1033
|
var requestOption={ Callback:null };
|
|
1033
1034
|
if (this.Symbol) requestOption.Callback=()=>{ this.RequestMemberListData(); };
|
|
1034
1035
|
this.MapStockData=new Map();
|
|
1036
|
+
this.RequestStatus.IsFinishStockList=false;
|
|
1037
|
+
this.RequestStatus.IsFinishMemberList=false;
|
|
1035
1038
|
this.RequestStockListData(requestOption);
|
|
1036
1039
|
return;
|
|
1037
1040
|
}
|
|
@@ -1146,7 +1149,7 @@ function JSReportChartContainer(uielement)
|
|
|
1146
1149
|
//this.ChartSplashPaint.SetTitle(this.SplashTitle.MemberList);
|
|
1147
1150
|
//this.ChartSplashPaint.EnableSplash(true);
|
|
1148
1151
|
//this.Draw();
|
|
1149
|
-
|
|
1152
|
+
this.RequestStatus.IsFinishMemberList=false;
|
|
1150
1153
|
var self=this;
|
|
1151
1154
|
if (this.NetworkFilter)
|
|
1152
1155
|
{
|
|
@@ -1200,6 +1203,8 @@ function JSReportChartContainer(uielement)
|
|
|
1200
1203
|
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
1201
1204
|
}
|
|
1202
1205
|
|
|
1206
|
+
this.RequestStatus.IsFinishMemberList=true;
|
|
1207
|
+
|
|
1203
1208
|
this.Draw();
|
|
1204
1209
|
this.UpdateStockData();
|
|
1205
1210
|
}
|
|
@@ -1311,6 +1316,7 @@ function JSReportChartContainer(uielement)
|
|
|
1311
1316
|
//下载码表
|
|
1312
1317
|
this.RequestStockListData=function(option)
|
|
1313
1318
|
{
|
|
1319
|
+
this.RequestStatus.IsFinishStockList=false;
|
|
1314
1320
|
this.ChartSplashPaint.SetTitle(this.SplashTitle.StockList);
|
|
1315
1321
|
this.ChartSplashPaint.EnableSplash(true);
|
|
1316
1322
|
this.Draw();
|
|
@@ -1366,6 +1372,8 @@ function JSReportChartContainer(uielement)
|
|
|
1366
1372
|
}
|
|
1367
1373
|
}
|
|
1368
1374
|
|
|
1375
|
+
this.RequestStatus.IsFinishStockList=true;
|
|
1376
|
+
|
|
1369
1377
|
if (option && option.Callback)
|
|
1370
1378
|
{
|
|
1371
1379
|
option.Callback();
|
|
@@ -1509,6 +1517,9 @@ function JSReportChartContainer(uielement)
|
|
|
1509
1517
|
var chart=this.ChartPaint[0];
|
|
1510
1518
|
if (!chart) return;
|
|
1511
1519
|
|
|
1520
|
+
//列表还没有加载完成
|
|
1521
|
+
if (this.RequestStatus.IsFinishMemberList==false || this.RequestStatus.IsFinishMemberList==false) return;
|
|
1522
|
+
|
|
1512
1523
|
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
1513
1524
|
{
|
|
1514
1525
|
this.RequestVirtualStockData(); //虚拟表格 全部取后台
|
|
@@ -45823,6 +45823,8 @@ function ChartBaseLineBar()
|
|
|
45823
45823
|
this.ClassName="ChartBaseLineBar";
|
|
45824
45824
|
this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;
|
|
45825
45825
|
this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;
|
|
45826
|
+
this.UpName;
|
|
45827
|
+
this.DownName;
|
|
45826
45828
|
this.LineWidth=1;
|
|
45827
45829
|
this.Style=0; //0=坐标使用主图坐标 1=独立坐标
|
|
45828
45830
|
this.IsDrawFirst=true;
|
|
@@ -46111,6 +46113,15 @@ function ChartBaseLineBar()
|
|
|
46111
46113
|
|
|
46112
46114
|
return range;
|
|
46113
46115
|
}
|
|
46116
|
+
|
|
46117
|
+
this.GetItem=function(kItem)
|
|
46118
|
+
{
|
|
46119
|
+
if (!this.MapCache || this.MapCache.size<=0) return null;
|
|
46120
|
+
var key=this.BuildKey(kItem);
|
|
46121
|
+
if (!this.MapCache.has(key)) return null;
|
|
46122
|
+
|
|
46123
|
+
return this.MapCache.get(key);
|
|
46124
|
+
}
|
|
46114
46125
|
}
|
|
46115
46126
|
|
|
46116
46127
|
function ChartClipColorStick()
|
|
@@ -65952,7 +65963,7 @@ function DynamicChartTitlePainting()
|
|
|
65952
65963
|
this.FormatValue=function(value,item)
|
|
65953
65964
|
{
|
|
65954
65965
|
if (item.StringFormat==STRING_FORMAT_TYPE.DEFAULT)
|
|
65955
|
-
return IFrameSplitOperator.
|
|
65966
|
+
return IFrameSplitOperator.FormatValueStringV2(value,item.FloatPrecision,2,this.LanguageID);
|
|
65956
65967
|
else if (item.StringFormat==STRING_FORMAT_TYPE.THOUSANDS)
|
|
65957
65968
|
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
|
|
65958
65969
|
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
|
|
@@ -66052,6 +66063,45 @@ function DynamicChartTitlePainting()
|
|
|
66052
66063
|
return aryText;
|
|
66053
66064
|
}
|
|
66054
66065
|
|
|
66066
|
+
this.FormatBaseLineBarTitle=function(kItem, dataInfo)
|
|
66067
|
+
{
|
|
66068
|
+
var result=null;
|
|
66069
|
+
var aryText=[];
|
|
66070
|
+
|
|
66071
|
+
if (!kItem) return result;
|
|
66072
|
+
if (!dataInfo.Chart) return result;
|
|
66073
|
+
|
|
66074
|
+
var chart=dataInfo.Chart;
|
|
66075
|
+
var item=chart.GetItem(kItem);
|
|
66076
|
+
if (!item) return result;
|
|
66077
|
+
if (!IFrameSplitOperator.IsNumber(item.Up) && !IFrameSplitOperator.IsNumber(item.Down)) return result;
|
|
66078
|
+
|
|
66079
|
+
result={ Text:null, ArrayText:aryText };
|
|
66080
|
+
if (IFrameSplitOperator.IsNumber(item.Up))
|
|
66081
|
+
{
|
|
66082
|
+
var textItem={ Name:null, Text:null };
|
|
66083
|
+
textItem.Text=this.FormatValue(item.Up, dataInfo);
|
|
66084
|
+
|
|
66085
|
+
if (chart.UpName) textItem.Name=chart.UpName;
|
|
66086
|
+
if (chart.UpColor) textItem.Color=chart.UpColor;
|
|
66087
|
+
aryText.push(textItem);
|
|
66088
|
+
}
|
|
66089
|
+
|
|
66090
|
+
if (IFrameSplitOperator.IsNumber(item.Down))
|
|
66091
|
+
{
|
|
66092
|
+
var textItem={ Name:null, Text:null };
|
|
66093
|
+
textItem.Text=this.FormatValue(item.Down,dataInfo);
|
|
66094
|
+
if (chart.DownName) textItem.Name=chart.DownName;
|
|
66095
|
+
if (chart.DownColor) textItem.Color=chart.DownColor;
|
|
66096
|
+
|
|
66097
|
+
if (aryText.length>0) textItem.LeftSpace=3;
|
|
66098
|
+
|
|
66099
|
+
aryText.push(textItem);
|
|
66100
|
+
}
|
|
66101
|
+
|
|
66102
|
+
return result;
|
|
66103
|
+
}
|
|
66104
|
+
|
|
66055
66105
|
this.FormatKLineTitle=function(item, dataInfo)
|
|
66056
66106
|
{
|
|
66057
66107
|
if (!item) return null;
|
|
@@ -66697,6 +66747,11 @@ function DynamicChartTitlePainting()
|
|
|
66697
66747
|
{
|
|
66698
66748
|
return null;
|
|
66699
66749
|
}
|
|
66750
|
+
else if (item.DataType=="ChartBaseLineBar")
|
|
66751
|
+
{
|
|
66752
|
+
var outTitle=this.FormatBaseLineBarTitle(value, item);
|
|
66753
|
+
return outTitle;
|
|
66754
|
+
}
|
|
66700
66755
|
else if (g_ScriptIndexChartFactory.Has(item.DataType)) //外部挂接
|
|
66701
66756
|
{
|
|
66702
66757
|
var find=g_ScriptIndexChartFactory.Get(item.DataType);
|
|
@@ -129907,7 +129962,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
129907
129962
|
hqChart.ChartPaint.push(chart);
|
|
129908
129963
|
}
|
|
129909
129964
|
|
|
129910
|
-
this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,
|
|
129965
|
+
this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,i)
|
|
129911
129966
|
{
|
|
129912
129967
|
var chart=new ChartBaseLineBar();
|
|
129913
129968
|
chart.Canvas=hqChart.Canvas;
|
|
@@ -129919,6 +129974,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
129919
129974
|
|
|
129920
129975
|
chart.Data=hqChart.GetKData(); //绑定K线
|
|
129921
129976
|
chart.AryData=varItem.Draw.DrawData;
|
|
129977
|
+
chart.Style=1; //主图使用独立坐标模式
|
|
129922
129978
|
|
|
129923
129979
|
var config=varItem.Draw.Config;
|
|
129924
129980
|
if (config)
|
|
@@ -129927,11 +129983,19 @@ function ScriptIndex(name,script,args,option)
|
|
|
129927
129983
|
if (config.DownColor) chart.DownColor=config.DownColor;
|
|
129928
129984
|
if (IFrameSplitOperator.IsNumber(config.DefaultMax)) chart.DefaultMax=config.DefaultMax;
|
|
129929
129985
|
if (IFrameSplitOperator.IsNumber(config.Style)) chart.Style=config.Style;
|
|
129986
|
+
if (config.UpName) chart.UpName=config.UpName;
|
|
129987
|
+
if (config.DownName) chart.DownName=config.DownName;
|
|
129930
129988
|
}
|
|
129931
129989
|
|
|
129932
129990
|
chart.BuildCacheData();
|
|
129933
129991
|
this.SetChartIndexName(chart);
|
|
129934
129992
|
hqChart.ChartPaint.push(chart);
|
|
129993
|
+
|
|
129994
|
+
var titleIndex=windowIndex+1;
|
|
129995
|
+
var titleData=new DynamicTitleData(chart.Data,null,chart.Color);
|
|
129996
|
+
titleData.DataType="ChartBaseLineBar";
|
|
129997
|
+
titleData.Chart=chart;
|
|
129998
|
+
hqChart.TitlePaint[titleIndex].Data[i]=titleData;
|
|
129935
129999
|
}
|
|
129936
130000
|
|
|
129937
130001
|
|
|
@@ -138129,6 +138193,7 @@ function JSReportChartContainer(uielement)
|
|
|
138129
138193
|
|
|
138130
138194
|
//MouseOnStatus:{ RowIndex:行, ColumnIndex:列}
|
|
138131
138195
|
this.LastMouseStatus={ MoveStatus:null, TooltipStatus:null, MouseOnStatus:null };
|
|
138196
|
+
this.RequestStatus={ IsFinishStockList:false, IsFinishMemberList:false }; //下载状态
|
|
138132
138197
|
|
|
138133
138198
|
this.ChartDestroy=function() //销毁
|
|
138134
138199
|
{
|
|
@@ -138667,6 +138732,8 @@ function JSReportChartContainer(uielement)
|
|
|
138667
138732
|
var requestOption={ Callback:null };
|
|
138668
138733
|
if (this.Symbol) requestOption.Callback=()=>{ this.RequestMemberListData(); };
|
|
138669
138734
|
this.MapStockData=new Map();
|
|
138735
|
+
this.RequestStatus.IsFinishStockList=false;
|
|
138736
|
+
this.RequestStatus.IsFinishMemberList=false;
|
|
138670
138737
|
this.RequestStockListData(requestOption);
|
|
138671
138738
|
return;
|
|
138672
138739
|
}
|
|
@@ -138781,7 +138848,7 @@ function JSReportChartContainer(uielement)
|
|
|
138781
138848
|
//this.ChartSplashPaint.SetTitle(this.SplashTitle.MemberList);
|
|
138782
138849
|
//this.ChartSplashPaint.EnableSplash(true);
|
|
138783
138850
|
//this.Draw();
|
|
138784
|
-
|
|
138851
|
+
this.RequestStatus.IsFinishMemberList=false;
|
|
138785
138852
|
var self=this;
|
|
138786
138853
|
if (this.NetworkFilter)
|
|
138787
138854
|
{
|
|
@@ -138835,6 +138902,8 @@ function JSReportChartContainer(uielement)
|
|
|
138835
138902
|
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
138836
138903
|
}
|
|
138837
138904
|
|
|
138905
|
+
this.RequestStatus.IsFinishMemberList=true;
|
|
138906
|
+
|
|
138838
138907
|
this.Draw();
|
|
138839
138908
|
this.UpdateStockData();
|
|
138840
138909
|
}
|
|
@@ -138946,6 +139015,7 @@ function JSReportChartContainer(uielement)
|
|
|
138946
139015
|
//下载码表
|
|
138947
139016
|
this.RequestStockListData=function(option)
|
|
138948
139017
|
{
|
|
139018
|
+
this.RequestStatus.IsFinishStockList=false;
|
|
138949
139019
|
this.ChartSplashPaint.SetTitle(this.SplashTitle.StockList);
|
|
138950
139020
|
this.ChartSplashPaint.EnableSplash(true);
|
|
138951
139021
|
this.Draw();
|
|
@@ -139001,6 +139071,8 @@ function JSReportChartContainer(uielement)
|
|
|
139001
139071
|
}
|
|
139002
139072
|
}
|
|
139003
139073
|
|
|
139074
|
+
this.RequestStatus.IsFinishStockList=true;
|
|
139075
|
+
|
|
139004
139076
|
if (option && option.Callback)
|
|
139005
139077
|
{
|
|
139006
139078
|
option.Callback();
|
|
@@ -139144,6 +139216,9 @@ function JSReportChartContainer(uielement)
|
|
|
139144
139216
|
var chart=this.ChartPaint[0];
|
|
139145
139217
|
if (!chart) return;
|
|
139146
139218
|
|
|
139219
|
+
//列表还没有加载完成
|
|
139220
|
+
if (this.RequestStatus.IsFinishMemberList==false || this.RequestStatus.IsFinishMemberList==false) return;
|
|
139221
|
+
|
|
139147
139222
|
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
139148
139223
|
{
|
|
139149
139224
|
this.RequestVirtualStockData(); //虚拟表格 全部取后台
|
|
@@ -151029,7 +151104,7 @@ function ScrollBarBGChart()
|
|
|
151029
151104
|
|
|
151030
151105
|
|
|
151031
151106
|
|
|
151032
|
-
var HQCHART_VERSION="1.1.
|
|
151107
|
+
var HQCHART_VERSION="1.1.14914";
|
|
151033
151108
|
|
|
151034
151109
|
function PrintHQChartVersion()
|
|
151035
151110
|
{
|
|
@@ -45867,6 +45867,8 @@ function ChartBaseLineBar()
|
|
|
45867
45867
|
this.ClassName="ChartBaseLineBar";
|
|
45868
45868
|
this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;
|
|
45869
45869
|
this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;
|
|
45870
|
+
this.UpName;
|
|
45871
|
+
this.DownName;
|
|
45870
45872
|
this.LineWidth=1;
|
|
45871
45873
|
this.Style=0; //0=坐标使用主图坐标 1=独立坐标
|
|
45872
45874
|
this.IsDrawFirst=true;
|
|
@@ -46155,6 +46157,15 @@ function ChartBaseLineBar()
|
|
|
46155
46157
|
|
|
46156
46158
|
return range;
|
|
46157
46159
|
}
|
|
46160
|
+
|
|
46161
|
+
this.GetItem=function(kItem)
|
|
46162
|
+
{
|
|
46163
|
+
if (!this.MapCache || this.MapCache.size<=0) return null;
|
|
46164
|
+
var key=this.BuildKey(kItem);
|
|
46165
|
+
if (!this.MapCache.has(key)) return null;
|
|
46166
|
+
|
|
46167
|
+
return this.MapCache.get(key);
|
|
46168
|
+
}
|
|
46158
46169
|
}
|
|
46159
46170
|
|
|
46160
46171
|
function ChartClipColorStick()
|
|
@@ -65996,7 +66007,7 @@ function DynamicChartTitlePainting()
|
|
|
65996
66007
|
this.FormatValue=function(value,item)
|
|
65997
66008
|
{
|
|
65998
66009
|
if (item.StringFormat==STRING_FORMAT_TYPE.DEFAULT)
|
|
65999
|
-
return IFrameSplitOperator.
|
|
66010
|
+
return IFrameSplitOperator.FormatValueStringV2(value,item.FloatPrecision,2,this.LanguageID);
|
|
66000
66011
|
else if (item.StringFormat==STRING_FORMAT_TYPE.THOUSANDS)
|
|
66001
66012
|
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
|
|
66002
66013
|
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
|
|
@@ -66096,6 +66107,45 @@ function DynamicChartTitlePainting()
|
|
|
66096
66107
|
return aryText;
|
|
66097
66108
|
}
|
|
66098
66109
|
|
|
66110
|
+
this.FormatBaseLineBarTitle=function(kItem, dataInfo)
|
|
66111
|
+
{
|
|
66112
|
+
var result=null;
|
|
66113
|
+
var aryText=[];
|
|
66114
|
+
|
|
66115
|
+
if (!kItem) return result;
|
|
66116
|
+
if (!dataInfo.Chart) return result;
|
|
66117
|
+
|
|
66118
|
+
var chart=dataInfo.Chart;
|
|
66119
|
+
var item=chart.GetItem(kItem);
|
|
66120
|
+
if (!item) return result;
|
|
66121
|
+
if (!IFrameSplitOperator.IsNumber(item.Up) && !IFrameSplitOperator.IsNumber(item.Down)) return result;
|
|
66122
|
+
|
|
66123
|
+
result={ Text:null, ArrayText:aryText };
|
|
66124
|
+
if (IFrameSplitOperator.IsNumber(item.Up))
|
|
66125
|
+
{
|
|
66126
|
+
var textItem={ Name:null, Text:null };
|
|
66127
|
+
textItem.Text=this.FormatValue(item.Up, dataInfo);
|
|
66128
|
+
|
|
66129
|
+
if (chart.UpName) textItem.Name=chart.UpName;
|
|
66130
|
+
if (chart.UpColor) textItem.Color=chart.UpColor;
|
|
66131
|
+
aryText.push(textItem);
|
|
66132
|
+
}
|
|
66133
|
+
|
|
66134
|
+
if (IFrameSplitOperator.IsNumber(item.Down))
|
|
66135
|
+
{
|
|
66136
|
+
var textItem={ Name:null, Text:null };
|
|
66137
|
+
textItem.Text=this.FormatValue(item.Down,dataInfo);
|
|
66138
|
+
if (chart.DownName) textItem.Name=chart.DownName;
|
|
66139
|
+
if (chart.DownColor) textItem.Color=chart.DownColor;
|
|
66140
|
+
|
|
66141
|
+
if (aryText.length>0) textItem.LeftSpace=3;
|
|
66142
|
+
|
|
66143
|
+
aryText.push(textItem);
|
|
66144
|
+
}
|
|
66145
|
+
|
|
66146
|
+
return result;
|
|
66147
|
+
}
|
|
66148
|
+
|
|
66099
66149
|
this.FormatKLineTitle=function(item, dataInfo)
|
|
66100
66150
|
{
|
|
66101
66151
|
if (!item) return null;
|
|
@@ -66741,6 +66791,11 @@ function DynamicChartTitlePainting()
|
|
|
66741
66791
|
{
|
|
66742
66792
|
return null;
|
|
66743
66793
|
}
|
|
66794
|
+
else if (item.DataType=="ChartBaseLineBar")
|
|
66795
|
+
{
|
|
66796
|
+
var outTitle=this.FormatBaseLineBarTitle(value, item);
|
|
66797
|
+
return outTitle;
|
|
66798
|
+
}
|
|
66744
66799
|
else if (g_ScriptIndexChartFactory.Has(item.DataType)) //外部挂接
|
|
66745
66800
|
{
|
|
66746
66801
|
var find=g_ScriptIndexChartFactory.Get(item.DataType);
|
|
@@ -129951,7 +130006,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
129951
130006
|
hqChart.ChartPaint.push(chart);
|
|
129952
130007
|
}
|
|
129953
130008
|
|
|
129954
|
-
this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,
|
|
130009
|
+
this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,i)
|
|
129955
130010
|
{
|
|
129956
130011
|
var chart=new ChartBaseLineBar();
|
|
129957
130012
|
chart.Canvas=hqChart.Canvas;
|
|
@@ -129963,6 +130018,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
129963
130018
|
|
|
129964
130019
|
chart.Data=hqChart.GetKData(); //绑定K线
|
|
129965
130020
|
chart.AryData=varItem.Draw.DrawData;
|
|
130021
|
+
chart.Style=1; //主图使用独立坐标模式
|
|
129966
130022
|
|
|
129967
130023
|
var config=varItem.Draw.Config;
|
|
129968
130024
|
if (config)
|
|
@@ -129971,11 +130027,19 @@ function ScriptIndex(name,script,args,option)
|
|
|
129971
130027
|
if (config.DownColor) chart.DownColor=config.DownColor;
|
|
129972
130028
|
if (IFrameSplitOperator.IsNumber(config.DefaultMax)) chart.DefaultMax=config.DefaultMax;
|
|
129973
130029
|
if (IFrameSplitOperator.IsNumber(config.Style)) chart.Style=config.Style;
|
|
130030
|
+
if (config.UpName) chart.UpName=config.UpName;
|
|
130031
|
+
if (config.DownName) chart.DownName=config.DownName;
|
|
129974
130032
|
}
|
|
129975
130033
|
|
|
129976
130034
|
chart.BuildCacheData();
|
|
129977
130035
|
this.SetChartIndexName(chart);
|
|
129978
130036
|
hqChart.ChartPaint.push(chart);
|
|
130037
|
+
|
|
130038
|
+
var titleIndex=windowIndex+1;
|
|
130039
|
+
var titleData=new DynamicTitleData(chart.Data,null,chart.Color);
|
|
130040
|
+
titleData.DataType="ChartBaseLineBar";
|
|
130041
|
+
titleData.Chart=chart;
|
|
130042
|
+
hqChart.TitlePaint[titleIndex].Data[i]=titleData;
|
|
129979
130043
|
}
|
|
129980
130044
|
|
|
129981
130045
|
|
|
@@ -138173,6 +138237,7 @@ function JSReportChartContainer(uielement)
|
|
|
138173
138237
|
|
|
138174
138238
|
//MouseOnStatus:{ RowIndex:行, ColumnIndex:列}
|
|
138175
138239
|
this.LastMouseStatus={ MoveStatus:null, TooltipStatus:null, MouseOnStatus:null };
|
|
138240
|
+
this.RequestStatus={ IsFinishStockList:false, IsFinishMemberList:false }; //下载状态
|
|
138176
138241
|
|
|
138177
138242
|
this.ChartDestroy=function() //销毁
|
|
138178
138243
|
{
|
|
@@ -138711,6 +138776,8 @@ function JSReportChartContainer(uielement)
|
|
|
138711
138776
|
var requestOption={ Callback:null };
|
|
138712
138777
|
if (this.Symbol) requestOption.Callback=()=>{ this.RequestMemberListData(); };
|
|
138713
138778
|
this.MapStockData=new Map();
|
|
138779
|
+
this.RequestStatus.IsFinishStockList=false;
|
|
138780
|
+
this.RequestStatus.IsFinishMemberList=false;
|
|
138714
138781
|
this.RequestStockListData(requestOption);
|
|
138715
138782
|
return;
|
|
138716
138783
|
}
|
|
@@ -138825,7 +138892,7 @@ function JSReportChartContainer(uielement)
|
|
|
138825
138892
|
//this.ChartSplashPaint.SetTitle(this.SplashTitle.MemberList);
|
|
138826
138893
|
//this.ChartSplashPaint.EnableSplash(true);
|
|
138827
138894
|
//this.Draw();
|
|
138828
|
-
|
|
138895
|
+
this.RequestStatus.IsFinishMemberList=false;
|
|
138829
138896
|
var self=this;
|
|
138830
138897
|
if (this.NetworkFilter)
|
|
138831
138898
|
{
|
|
@@ -138879,6 +138946,8 @@ function JSReportChartContainer(uielement)
|
|
|
138879
138946
|
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
138880
138947
|
}
|
|
138881
138948
|
|
|
138949
|
+
this.RequestStatus.IsFinishMemberList=true;
|
|
138950
|
+
|
|
138882
138951
|
this.Draw();
|
|
138883
138952
|
this.UpdateStockData();
|
|
138884
138953
|
}
|
|
@@ -138990,6 +139059,7 @@ function JSReportChartContainer(uielement)
|
|
|
138990
139059
|
//下载码表
|
|
138991
139060
|
this.RequestStockListData=function(option)
|
|
138992
139061
|
{
|
|
139062
|
+
this.RequestStatus.IsFinishStockList=false;
|
|
138993
139063
|
this.ChartSplashPaint.SetTitle(this.SplashTitle.StockList);
|
|
138994
139064
|
this.ChartSplashPaint.EnableSplash(true);
|
|
138995
139065
|
this.Draw();
|
|
@@ -139045,6 +139115,8 @@ function JSReportChartContainer(uielement)
|
|
|
139045
139115
|
}
|
|
139046
139116
|
}
|
|
139047
139117
|
|
|
139118
|
+
this.RequestStatus.IsFinishStockList=true;
|
|
139119
|
+
|
|
139048
139120
|
if (option && option.Callback)
|
|
139049
139121
|
{
|
|
139050
139122
|
option.Callback();
|
|
@@ -139188,6 +139260,9 @@ function JSReportChartContainer(uielement)
|
|
|
139188
139260
|
var chart=this.ChartPaint[0];
|
|
139189
139261
|
if (!chart) return;
|
|
139190
139262
|
|
|
139263
|
+
//列表还没有加载完成
|
|
139264
|
+
if (this.RequestStatus.IsFinishMemberList==false || this.RequestStatus.IsFinishMemberList==false) return;
|
|
139265
|
+
|
|
139191
139266
|
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
139192
139267
|
{
|
|
139193
139268
|
this.RequestVirtualStockData(); //虚拟表格 全部取后台
|
|
@@ -162362,7 +162437,7 @@ function HQChartScriptWorker()
|
|
|
162362
162437
|
|
|
162363
162438
|
|
|
162364
162439
|
|
|
162365
|
-
var HQCHART_VERSION="1.1.
|
|
162440
|
+
var HQCHART_VERSION="1.1.14914";
|
|
162366
162441
|
|
|
162367
162442
|
function PrintHQChartVersion()
|
|
162368
162443
|
{
|