hqchart 1.1.11708 → 1.1.11716
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
CHANGED
|
@@ -1460,8 +1460,8 @@ this.AddEventCallback=function(obj){if(this.JSChartContainer&&typeof this.JSChar
|
|
|
1460
1460
|
this.SetLanguage=function(language){if(this.JSChartContainer&&typeof this.JSChartContainer.SetLanguage=='function'){JSConsole.Chart.Log('[JSChart:SetLanguage] ',language);this.JSChartContainer.SetLanguage(language);}};//切换指标模板
|
|
1461
1461
|
this.ChangeIndexTemplate=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ChangeIndexTemplate=='function'){JSConsole.Chart.Log('[JSChart:ChangeIndexTemplate] ',option);this.JSChartContainer.ChangeIndexTemplate(option);}};//画图工具
|
|
1462
1462
|
this.SetChartDrawOption=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.SetChartDrawOption=='function'){JSConsole.Chart.Log('[JSChart:SetChartDrawOption] ',option);this.JSChartContainer.SetChartDrawOption(option);}};this.CreateChartDrawPicture=function(name,option){if(this.JSChartContainer&&typeof this.JSChartContainer.CreateChartDrawPicture=='function'){JSConsole.Chart.Log('[JSChart:CreateChartDrawPicture] ',name);this.JSChartContainer.CreateChartDrawPicture(name,option);}};this.AddChartDrawPicture=function(obj){if(this.JSChartContainer&&typeof this.JSChartContainer.AddChartDrawPicture=='function'){JSConsole.Chart.Log('[JSChart:AddChartDrawPicture] ',obj);return this.JSChartContainer.AddChartDrawPicture(obj);}};//删除画图工具
|
|
1463
|
-
this.ClearChartDrawPicture=function(drawPicture){if(this.JSChartContainer&&typeof this.JSChartContainer.ClearChartDrawPicture=='function'){//JSConsole.Chart.Log('[JSChart:ClearChartDrawPicture] ', drawPicture);
|
|
1464
|
-
this.JSChartContainer.ClearChartDrawPicture(drawPicture);}};//重新加载配置
|
|
1463
|
+
this.ClearChartDrawPicture=function(drawPicture,option){if(this.JSChartContainer&&typeof this.JSChartContainer.ClearChartDrawPicture=='function'){//JSConsole.Chart.Log('[JSChart:ClearChartDrawPicture] ', drawPicture);
|
|
1464
|
+
this.JSChartContainer.ClearChartDrawPicture(drawPicture,option);}};//重新加载配置
|
|
1465
1465
|
this.ReloadResource=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ReloadResource=='function'){JSConsole.Chart.Log('[JSChart:ReloadResource] ');this.JSChartContainer.ReloadResource(option);}};this.EnableSplashScreen=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.EnableSplashScreen=='function'){JSConsole.Chart.Log('[JSChart:EnableSplashScreen] ');this.JSChartContainer.EnableSplashScreen(option);}};this.Draw=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.Draw=='function'){JSConsole.Chart.Log('[JSChart:Draw] ');this.JSChartContainer.Draw();}};this.SetFocus=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.SetFocus=='function'){JSConsole.Chart.Log('[JSChart:SetFocus] ');this.JSChartContainer.SetFocus();}};this.ExportData=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ExportData=='function'){JSConsole.Chart.Log('[JSChart:ExportData] ');return this.JSChartContainer.ExportData(option);}};}JSChart.LastVersion=null;//最新的版本号
|
|
1466
1466
|
JSChart.EnableCanvasWillReadFrequently=false;//https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently
|
|
1467
1467
|
//初始化
|
|
@@ -1914,8 +1914,8 @@ this.OnSelectChartPicture=function(chart){JSConsole.Chart.Log('[JSChartContainer
|
|
|
1914
1914
|
drawPicture.PointToValue();if(this.ChartDrawStorage)this.ChartDrawStorage.SaveDrawData(drawPicture);this.CurrentChartDrawPicture=null;if(this.SelectChartDrawPicture&&this.SelectChartDrawPicture.DragInfo)//图形移动了回调调用移动完成函数
|
|
1915
1915
|
{var dargInfo=this.SelectChartDrawPicture.DragInfo;if(dargInfo.Click&&dargInfo.Move){if(dargInfo.Click.X!=dargInfo.Move.X||dargInfo.Click.Y!=dargInfo.Move.Y){//通知上层画好了
|
|
1916
1916
|
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FINISH_MOVE_DRAWPICTURE);//完成画图工具事件
|
|
1917
|
-
if(event&&event.Callback){var sendData={DrawPicture:drawPicture};event.Callback(event,sendData,this);}if(drawPicture.OnMoveFinish)drawPicture.OnMoveFinish();}}}return true;};//清空所有的画线工具
|
|
1918
|
-
this.ClearChartDrawPicture=function(drawPicture){if(!drawPicture){this.ChartDrawPicture=[];if(this.ChartDrawStorage)this.ChartDrawStorage.Clear();this.Draw();}else{for(var i in this.ChartDrawPicture){if(this.ChartDrawPicture[i]==drawPicture){if(this.ChartDrawStorage)this.ChartDrawStorage.DeleteDrawData(drawPicture);this.ChartDrawPicture.splice(i,1);this.Draw();}}}};//获取画图工具当前选中图形的Guid
|
|
1917
|
+
if(event&&event.Callback){var sendData={DrawPicture:drawPicture};event.Callback(event,sendData,this);}if(drawPicture.OnMoveFinish)drawPicture.OnMoveFinish();}}}return true;};//清空所有的画线工具 option={ Draw:false/true }
|
|
1918
|
+
this.ClearChartDrawPicture=function(drawPicture,option){var bDraw=true;if(!drawPicture){this.ChartDrawPicture=[];if(this.ChartDrawStorage)this.ChartDrawStorage.Clear();if(option&&option.Draw==false)bDraw=false;if(bDraw)this.Draw();}else{for(var i in this.ChartDrawPicture){if(this.ChartDrawPicture[i]==drawPicture){if(this.ChartDrawStorage)this.ChartDrawStorage.DeleteDrawData(drawPicture);this.ChartDrawPicture.splice(i,1);if(option&&option.Draw==false)bDraw=false;if(bDraw)this.Draw();}}}};//获取画图工具当前选中图形的Guid
|
|
1919
1919
|
this.GetActiveDrawPicture=function(){var result={Move:{Guid:null},Select:{Guid:null},MoveOn:{Guid:null}};if(this.CurrentChartDrawPicture)result.Move={Guid:this.CurrentChartDrawPicture.Guid};if(this.SelectChartDrawPicture)result.Select={Guid:this.SelectChartDrawPicture.Guid,Chart:this.SelectChartDrawPicture};if(this.MoveOnChartDrawPicture)result.MoveOn={Guid:this.MoveOnChartDrawPicture.Guid};return result;};this.SetChartDrawOption=function(option){if(IFrameSplitOperator.IsBool(option.IsLockScreen))this.ChartDrawOption.IsLockScreen=option.IsLockScreen;if(IFrameSplitOperator.IsNumber(option.Zoom)&&option.Zoom>=0)this.ChartDrawOption.Zoom=option.Zoom;};//是否显示十字光标的十字线
|
|
1920
1920
|
this.EnableShowCorssCursorLine=function(bShow){if(!this.ChartCorssCursor)return;this.ChartCorssCursor.IsShowCorss=bShow;};//获取扩展画法
|
|
1921
1921
|
this.GetExtendChartByClassName=function(name){for(var i=0;i<this.ExtendChartPaint.length;++i){var item=this.ExtendChartPaint[i];if(item.ClassName==name)return{Index:i,Chart:item};}return null;};this.GetExtendChartRightWidth=function()//扩展画法右边宽度
|
|
@@ -2895,7 +2895,7 @@ this.FixKData=function(aryKData,period){if(ChartData.IsDayPeriod(period,true)){r
|
|
|
2895
2895
|
result[i]=item;++i;}return result;};this.FixKData_Minute=function(aryKData){var result=[];var nOverlayDataCount=aryKData.length;for(var i=0,j=0;i<this.Data.length;){var kItem=this.Data[i];var kDateTime=ChartData.DateTimeToNumber(kItem);if(j<nOverlayDataCount){var fItem=aryKData[j];var fDateTime=ChartData.DateTimeToNumber(fItem);if(fDateTime>kDateTime){++i;continue;}}if(j+1<nOverlayDataCount){var fItem=aryKData[j];var fItem2=aryKData[j+1];var fDateTime=ChartData.DateTimeToNumber(fItem);var fDateTime2=ChartData.DateTimeToNumber(fItem2);if(fDateTime<kDateTime&&fDateTime2<=kDateTime){++j;continue;}}var item=new HistoryData();item.Date=kItem.Date;item.Time=kItem.Time;var index=j<nOverlayDataCount?j:nOverlayDataCount-1;var fItem=aryKData[index];item.Close=fItem.Close;item.High=fItem.High;item.Low=fItem.Low;item.Open=fItem.Open;item.YClose=fItem.YClose;item.Amount=fItem.Amount;item.Vol=fItem.Vol;item.ExDate=fItem.Date;//对应叠加数据的日期 调试用
|
|
2896
2896
|
item.ExTime=fItem.Time;//对应叠加数据的日期 调试用
|
|
2897
2897
|
result[i]=item;++i;}return result;};//导出单数组数据
|
|
2898
|
-
this.ExportArrayData=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var aryData=[];for(var i=0;i<this.Data.length;++i){aryData[i]=this.Data[i];}return aryData;};//导出K线数据
|
|
2898
|
+
this.ExportArrayData=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var aryData=[];for(var i=0;i<this.Data.length;++i){aryData[i]=this.Data[i];}return aryData;};this.ExportBoolData=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var aryValue=[];for(var i=0;i<this.Data.length;++i){var item=this.Data[i];aryValue[i]=false;if(!IFrameSplitOperator.IsPlusNumber(item))continue;aryValue[i]=true;}return aryValue;};//导出K线数据
|
|
2899
2899
|
this.ExportKLineData=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var aryDate=[],aryOpen=[],aryHigh=[],aryLow=[],aryVol=[],aryAmount=[],aryClose=[],aryTime=[];for(var i=0;i<this.Data.length;++i){var item=this.Data[i];aryDate[i]=item.Date;aryOpen[i]=item.Open;aryHigh[i]=item.High;aryLow[i]=item.Low;aryClose[i]=item.Close;aryVol[i]=item.Vol;aryAmount[i]=item.Amount;aryTime[i]=item.Time;}if(option){if(option.IsOverlay)//叠加股票不返回时间,日期
|
|
2900
2900
|
{var result=[{Name:"Open",Data:aryOpen},{Name:"High",Data:aryHigh},{Name:"Low",Data:aryLow},{Name:"Close",Data:aryClose},{Name:"Vol",Data:aryVol},{Name:"Amount",Data:aryAmount}];return result;}}var result=[{Name:"Date",Data:aryDate}];if(ChartData.IsMinutePeriod(this.Period,true)||ChartData.IsSecondPeriod(this.Period))result.push({Name:"Time",Data:aryTime});result.push({Name:"Open",Data:aryOpen},{Name:"High",Data:aryHigh},{Name:"Low",Data:aryLow},{Name:"Close",Data:aryClose},{Name:"Vol",Data:aryVol},{Name:"Amount",Data:aryAmount});return result;};//导出分时图数据
|
|
2901
2901
|
this.ExportMinuteData=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var aryDate=[],aryOpen=[],aryHigh=[],aryLow=[],aryVol=[],aryAmount=[],aryClose=[],aryTime=[];var aryPosition=[],aryAvPrice=[];for(var i=0;i<this.Data.length;++i){var item=this.Data[i];aryDate[i]=item.Date;aryOpen[i]=item.Open;aryHigh[i]=item.High;aryLow[i]=item.Low;aryClose[i]=item.Close;aryVol[i]=item.Vol;aryAmount[i]=item.Amount;aryTime[i]=item.Time;aryAvPrice[i]=item.AvPrice;aryPosition[i]=item.Position;}var result=[{Name:"Open",Data:aryOpen},{Name:"High",Data:aryHigh},{Name:"Low",Data:aryLow},{Name:"Close",Data:aryClose},{Name:"Vol",Data:aryVol},{Name:"Amount",Data:aryAmount},{Name:"AvPrice",Data:aryAvPrice},{Name:"Position",Data:aryPosition}];if(option){if(option.IsOverlay)//叠加股票不返回时间,日期
|
|
@@ -2949,7 +2949,7 @@ else if(option.MinuteOverlayPrice)valueType=3;//走势图叠加价格线
|
|
|
2949
2949
|
{this.Canvas.moveTo(ptStart.X-lineWidth,ptStart.Y);this.Canvas.lineTo(ptStart.X+lineWidth,ptStart.Y);this.Canvas.lineTo(ptEnd.X+lineWidth,ptEnd.Y);this.Canvas.lineTo(ptEnd.X-lineWidth,ptEnd.Y);}else{this.Canvas.moveTo(ptStart.X,ptStart.Y+lineWidth);this.Canvas.lineTo(ptStart.X,ptStart.Y-lineWidth);this.Canvas.lineTo(ptEnd.X,ptEnd.Y-lineWidth);this.Canvas.lineTo(ptEnd.X,ptEnd.Y+lineWidth);}this.Canvas.closePath();if(this.Canvas.isPointInPath(x,y))return{Identify:this.Identify,Chart:this};return null;};//option={ BarWidth:柱子宽度(空为K线宽度) }
|
|
2950
2950
|
this.PtInBar=function(x,y,option){if(!this.IsShow||this.ChartFrame.IsMinSize)return null;var bHScreen=this.ChartFrame.IsHScreen===true;if(bHScreen)return null;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var border=this.ChartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var xPointCount=this.ChartFrame.XPointCount;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Left;if(x<xOffset||x>chartright)return null;if(y>border.BottomEx||y<border.TopEx)return null;var isMinute=this.IsMinuteFrame();var yBottom=this.ChartFrame.GetYFromData(0);var barWidth=null;var isMinuteVolBar=false;var isStackedBar=false;if(option){if(option.BarWidth>0)barWidth=option.BarWidth;if(option.MinuteVolBar==true){isMinuteVolBar=true;barWidth=4;}else if(option.StackedBar==true){isStackedBar=true;}}for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var value=this.Data.Data[i];if(value==null)continue;if(isMinute){var xLine=this.ChartFrame.GetXFromIndex(j);var left=xLine-barWidth/2;var right=left+barWidth;}else{var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;}if(isMinuteVolBar){if(!IFrameSplitOperator.IsNumber(value.Vol))continue;var yBar=this.ChartFrame.GetYFromData(value.Vol);var barTop=yBar,barBottom=yBottom;}else if(isStackedBar){var maxValue=0,minValue=0;if(!IFrameSplitOperator.IsNonEmptyArray(value))continue;for(var k=0;k<value.length;++k){var barValue=value[k];if(!IFrameSplitOperator.IsNumber(barValue))continue;if(barValue==0)continue;if(barValue>0)maxValue+=barValue;else if(barValue<0)minValue+=barValue;}var barTop=this.ChartFrame.GetYFromData(maxValue);var barBottom=this.ChartFrame.GetYFromData(minValue);}else{var yBar=this.ChartFrame.GetYFromData(value);var barTop=yBar,barBottom=yBottom;}if(barTop>barBottom){barTop=yBottom;barBottom=yBar;}var barLeft=left,barRight=right;if(barWidth>0){barLeft=left+(right-left)/2-barWidth/2;barRight=barLeft+barWidth;}if(x>=barLeft&&x<=barRight&&y>=barTop&&y<=barBottom)return{Identify:this.Identify,Chart:this};if(right>x)break;}return null;};this.PtInKBar=function(x,y,option){if(!this.IsShow||this.ChartFrame.IsMinSize)return null;var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return null;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var border=this.ChartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var xPointCount=this.ChartFrame.XPointCount;if(isHScreen){var border=this.ChartBorder.GetHScreenBorder();xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;chartright=border.BottomEx;}if(x<xOffset||x>chartright)return null;if(y>border.BottomEx||y<border.TopEx)return null;var firstOverlayOpen=null;var kBarType=0;var firstOpen=null;if(option&&option.OverlayKLine){kBarType=1;//叠加K线
|
|
2951
2951
|
firstOpen=this.GetFirstOpen();}for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var data=this.Data.Data[i];if(data.Open==null||data.High==null||data.Low==null||data.Close==null)continue;if(firstOverlayOpen==null)firstOverlayOpen=data.Open;var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;if(x>=left&&x<=right){if(kBarType==1){var yLow=this.GetYFromData(data.Low/firstOverlayOpen*firstOpen,false);var yHigh=this.GetYFromData(data.High/firstOverlayOpen*firstOpen,false);}else{var yLow=this.GetYFromData(data.Low,false);var yHigh=this.GetYFromData(data.High,false);}if(y<=yLow&&y>=yHigh)return{Identify:this.Identify,Chart:this};}if(right>x)break;}};this.IsShowIndexTitleOnly=function(){if(this.ChartFrame&&this.ChartFrame.ChartBorder&&this.ChartFrame.ChartBorder.IsShowTitleOnly)return true;return false;};//导出单数组数据
|
|
2952
|
-
this.ExportArrayData=function(option){var data=this.Data.ExportArrayData(option);return[{Name:this.Name,Data:data}];};}//缩放因子
|
|
2952
|
+
this.ExportArrayData=function(option){var data=this.Data.ExportArrayData(option);return[{Name:this.Name,Data:data}];};this.ExportBoolData=function(option){var data=this.Data.ExportBoolData(option);return[{Name:this.Name,Data:data}];};}//缩放因子
|
|
2953
2953
|
/*
|
|
2954
2954
|
var ZOOM_SEED=
|
|
2955
2955
|
[
|
|
@@ -3411,7 +3411,7 @@ Zoom:{Type:g_JSChartResource.DRAWICON.Icon.Zoom.Type,Value:g_JSChartResource.DRA
|
|
|
3411
3411
|
YOffset:g_JSChartResource.DRAWICON.Icon.YOffset//Direction==2的向下偏移
|
|
3412
3412
|
};this.TextSize={Max:g_JSChartResource.DRAWICON.Text.MaxSize,Min:g_JSChartResource.DRAWICON.Text.MinSize,//字体的最大最小值
|
|
3413
3413
|
Zoom:{Type:g_JSChartResource.DRAWICON.Text.Zoom.Type,Value:g_JSChartResource.DRAWICON.Text.Zoom.Value},//放大倍数
|
|
3414
|
-
FontName:g_JSChartResource.DRAWICON.Text.FontName,YOffset:g_JSChartResource.DRAWICON.Text.YOffset};this.Font={DRAWTEXT_FIX:g_JSChartResource.DRAWTEXT_FIX.Font,DRAWNUMBER_FIX:g_JSChartResource.DRAWNUMBER_FIX.Font};this.ReloadResource=function(resource){if(this.Name=="DRAWTEXT"){this.TextSize={Max:g_JSChartResource.DRAWTEXT.MaxSize,Min:g_JSChartResource.DRAWTEXT.MinSize,//字体的最大最小值
|
|
3414
|
+
FontName:g_JSChartResource.DRAWICON.Text.FontName,YOffset:g_JSChartResource.DRAWICON.Text.YOffset};this.Font={DRAWTEXT_FIX:g_JSChartResource.DRAWTEXT_FIX.Font,DRAWNUMBER_FIX:g_JSChartResource.DRAWNUMBER_FIX.Font};this.ExportData=this.ExportBoolData;this.ReloadResource=function(resource){if(this.Name=="DRAWTEXT"){this.TextSize={Max:g_JSChartResource.DRAWTEXT.MaxSize,Min:g_JSChartResource.DRAWTEXT.MinSize,//字体的最大最小值
|
|
3415
3415
|
Zoom:{Type:g_JSChartResource.DRAWTEXT.Zoom.Type,Value:g_JSChartResource.DRAWTEXT.Zoom.Value},//放大倍数
|
|
3416
3416
|
FontName:g_JSChartResource.DRAWTEXT.FontName,YOffset:g_JSChartResource.DRAWTEXT.YOffset};}else if(this.Name=="DRAWNUMBER"){this.TextSize={Max:g_JSChartResource.DRAWNUMBER.MaxSize,Min:g_JSChartResource.DRAWNUMBER.MinSize,//字体的最大最小值
|
|
3417
3417
|
Zoom:{Type:g_JSChartResource.DRAWNUMBER.Zoom.Type,Value:g_JSChartResource.DRAWNUMBER.Zoom.Value},//放大倍数
|
|
@@ -3429,7 +3429,7 @@ this.FixedFontSize=-1;//固定字体大小
|
|
|
3429
3429
|
this.YOffset=0;//连线
|
|
3430
3430
|
this.FixedPosition=-1;//固定位置输出 1顶部, 2底部
|
|
3431
3431
|
this.VerticalLine;//垂直线
|
|
3432
|
-
this.TextSize={Max:g_JSChartResource.DRAWICON.Text.MaxSize,Min:g_JSChartResource.DRAWICON.Text.MinSize,//字体的最大最小值
|
|
3432
|
+
this.ExportData=this.ExportBoolData;this.TextSize={Max:g_JSChartResource.DRAWICON.Text.MaxSize,Min:g_JSChartResource.DRAWICON.Text.MinSize,//字体的最大最小值
|
|
3433
3433
|
Zoom:{Type:g_JSChartResource.DRAWICON.Text.Zoom.Type,Value:g_JSChartResource.DRAWICON.Text.Zoom.Value},//放大倍数
|
|
3434
3434
|
FontName:g_JSChartResource.DRAWICON.Text.FontName,YOffset:g_JSChartResource.DRAWICON.Text.YOffset};this.ReloadResource=function(resource){this.TextSize={Max:g_JSChartResource.DRAWTEXT.MaxSize,Min:g_JSChartResource.DRAWTEXT.MinSize,//字体的最大最小值
|
|
3435
3435
|
Zoom:{Type:g_JSChartResource.DRAWTEXT.Zoom.Type,Value:g_JSChartResource.DRAWTEXT.Zoom.Value},//放大倍数
|
|
@@ -3987,14 +3987,15 @@ this.IsShow=true;/*
|
|
|
3987
3987
|
var firstPoint=aryPoint[0];var lastPoint=aryPoint[aryPoint.length-1];if(isHScreen){this.Canvas.lineTo(lastPoint.Y,rtClient.Left);this.Canvas.lineTo(firstPoint.Y,rtClient.Left);}else{this.Canvas.lineTo(rtClient.Left,lastPoint.Y);this.Canvas.lineTo(rtClient.Left,firstPoint.Y);}this.Canvas.closePath();if(Array.isArray(areaColor)){if(isHScreen){var gradient=this.Canvas.createLinearGradient(this.ChartBorder.GetRightEx(),this.ChartBorder.GetTop(),this.ChartBorder.GetLeft(),this.ChartBorder.GetTop());gradient.addColorStop(0,areaColor[0]);gradient.addColorStop(1,areaColor[1]);this.Canvas.fillStyle=gradient;}else{var _gradient2=this.Canvas.createLinearGradient(rtClient.Right,rtClient.Top,rtClient.Left,rtClient.Top);var offset=1/areaColor.length;for(var i=0;i<areaColor.length;++i){_gradient2.addColorStop(i*offset,areaColor[i]);}this.Canvas.fillStyle=_gradient2;}}else{this.Canvas.fillStyle=areaColor;}this.Canvas.fill();};this.GetYValueByXValue=function(x,floatPrecision){var aryXValue=[];var value=0;var zoom=ZOOM_VALUE[floatPrecision];for(var i=0;i<this.Data.length;++i){var item=this.Data[i];if(item.Type!=0||!item.Data||item.Data.length<0||item.IsShowCorssCursor==false)continue;var bFind=false;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];value=parseInt(dataItem.X*zoom);if(value==x){bFind=true;var findItem={X:dataItem.X,Y:dataItem.Y,TextColor:item.TextColor?item.TextColor:this.TextColor,TextBGColor:item.TextBGColor?item.TextBGColor:this.TextBGColor};if(dataItem.YText)findItem.YText=dataItem.YText;aryXValue.push(findItem);break;}}if(!bFind){var first=item.Data[0];var last=item.Data[item.Data.length-1];if(x>first.X*zoom&&x<last.X*zoom){aryXValue.push({X:null,Y:null,TextColor:item.TextColor?item.TextColor:this.TextColor,TextBGColor:item.TextBGColor?item.TextBGColor:this.TextBGColor});}}}return aryXValue;};}// Y轴右侧背景颜色
|
|
3988
3988
|
function KLineYAxisBGPaint(){this.newMethod=IExtendChartPainting;//派生
|
|
3989
3989
|
this.newMethod();delete this.newMethod;this.ClassName='KLineYAxisBGPaint';this.SplitData=[];//[ { Value: , Color:, TextColor: }, ]
|
|
3990
|
-
this.Font=g_JSChartResource.KLineYAxisBGPaint.Font;this.TextColor=g_JSChartResource.KLineYAxisBGPaint.TextColor;this.
|
|
3990
|
+
this.Font=g_JSChartResource.KLineYAxisBGPaint.Font;this.TextColor=g_JSChartResource.KLineYAxisBGPaint.TextColor;this.FrameID=0;this.ID=Guid();//唯一的ID
|
|
3991
3991
|
this.IsDynamic=false;this.IsCallbackDraw=true;//在回调函数里绘制, 不在Draw()中绘制
|
|
3992
|
-
this.IsShow=true;this.BGWidth=50
|
|
3992
|
+
this.IsShow=true;this.BGWidth=50;this.LineColor=g_JSChartResource.KLineYAxisBGPaint.LineColor;this.DiffValutTextColor=g_JSChartResource.KLineYAxisBGPaint.DiffValutTextColor;this.DiffValueBGColor=g_JSChartResource.KLineYAxisBGPaint.DiffValueBGColor;//点差背景
|
|
3993
|
+
//临时内部变量
|
|
3993
3994
|
this.KLineFrame;this.KLineData;this.Range={Max:null,Min:null};this.SetOption=function(option)//设置
|
|
3994
3995
|
{if(option){if(IFrameSplitOperator.IsNonEmptyArray(option.SplitData))this.SplitData=option.SplitData;}};this.Draw=function(){if(!this.IsShow)return;if(!this.ChartFrame||!this.ChartFrame.SubFrame||this.ChartFrame.SubFrame.length<=this.FrameID)return;var kline=this.HQChart.ChartPaint[0];if(!kline)return;var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return;this.KLineFrame=this.ChartFrame.SubFrame[this.FrameID].Frame;var chartBorder=this.KLineFrame.ChartBorder;var dataWidth=this.KLineFrame.DataWidth;var distanceWidth=this.KLineFrame.DistanceWidth;var xPointCount=this.KLineFrame.XPointCount;var border=chartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;this.KLineData=kline.Data;//计算最大最小值
|
|
3995
3996
|
var max=null,min=null;for(var i=this.KLineData.DataOffset,j=0;i<this.KLineData.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var data=this.KLineData.Data[i];if(data.Open==null||data.High==null||data.Low==null||data.Close==null)continue;var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;if(max==null||max<data.High)max=data.High;if(min==null||min>data.Low)min=data.Low;}if(!IFrameSplitOperator.IsNumber(max)||!IFrameSplitOperator.IsNumber(min))return;this.Range.Max=max;this.Range.Min=min;this.DrawBackground();};this.DrawBackground=function(){var start=this.Range.Min;var border=this.KLineFrame.ChartBorder.GetBorder();var bottom=this.KLineFrame.GetYFromData(start,false);var left=border.Right;var right=left+this.BGWidth;this.Canvas.font=this.Font;this.Canvas.textBaseline='top';this.Canvas.textAlign='left';for(var i=0;i<this.SplitData.length;++i){var item=this.SplitData[i];if(item.Value+start>this.KLineFrame.HorizontalMax)break;var top=this.KLineFrame.GetYFromData(start+item.Value,false);this.Canvas.fillStyle=item.Color;this.Canvas.fillRect(ToFixedRect(left),ToFixedRect(top),ToFixedRect(right-left),ToFixedRect(bottom-top));if(item.Text&&item.TextColor){this.Canvas.fillStyle=item.TextColor;this.Canvas.fillText(item.Text,right+1,top);}bottom=top;//AuotRightWidth
|
|
3996
3997
|
}//点位差
|
|
3997
|
-
var value=this.Range.Max-this.Range.Min;var floatPrecision=GetfloatPrecision(this.HQChart.Symbol);var text=value.toFixed(floatPrecision);var x=this.KLineFrame.GetYFromData(this.Range.Max,false);this.Canvas.strokeStyle=this.LineColor;this.Canvas.beginPath();this.Canvas.moveTo(ToFixedPoint(left),ToFixedPoint(x));this.Canvas.lineTo(ToFixedPoint(right),ToFixedPoint(x));this.Canvas.stroke();this.Canvas.textBaseline='bottom';this.Canvas.fillStyle=this.TextColor;this.Canvas.fillText(text,
|
|
3998
|
+
var value=this.Range.Max-this.Range.Min;var floatPrecision=GetfloatPrecision(this.HQChart.Symbol);var text=value.toFixed(floatPrecision);var x=this.KLineFrame.GetYFromData(this.Range.Max,false);this.Canvas.strokeStyle=this.LineColor;this.Canvas.beginPath();this.Canvas.moveTo(ToFixedPoint(left),ToFixedPoint(x));this.Canvas.lineTo(ToFixedPoint(right),ToFixedPoint(x));this.Canvas.stroke();var textWidth=this.Canvas.measureText(text).width+4;var textHeight=this.Canvas.measureText("擎").width+2;var rtBG={Left:right+1,Top:x-textHeight,Width:textWidth,Height:textHeight};if(this.DiffValueBGColor){this.Canvas.fillStyle=this.DiffValueBGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}this.Canvas.textBaseline='bottom';this.Canvas.fillStyle=this.TextColor;this.Canvas.fillText(text,rtBG.Left+1,x);};}//背景图 支持横屏
|
|
3998
3999
|
function BackgroundPaint(){this.newMethod=IExtendChartPainting;//派生
|
|
3999
4000
|
this.newMethod();delete this.newMethod;this.ClassName='BackgroundPaint';this.IsDynamic=false;this.IsCallbackDraw=true;//在回调函数里绘制, 不在Draw()中绘制
|
|
4000
4001
|
this.FrameID=0;this.Data;//背景数据 { Start:, End:, Color:[] }
|
|
@@ -4720,7 +4721,7 @@ this.GetLabelCallback;//绘制标题回调函数
|
|
|
4720
4721
|
this.PointCount=1;this.ClassName='ChartDrawHLine';this.Font=14*GetDevicePixelRatio()+"px 微软雅黑";this.TextFont=12*GetDevicePixelRatio()+"px 微软雅黑";this.RightSpaceWidth=50;this.ButtonPosition=0;//按钮位置, 0=价格后面, 1=价格上面
|
|
4721
4722
|
this.ButtonBGColor='rgb(190,190,190)';this.ButtonSpace=3;this.Button={CloseIcon:{Text:'\uE62B',Color:'rgb(255,255,255)',Family:"iconfont",Size:16},SettingIcon:{Text:'\uE623',Color:'rgb(255,255,255)',Family:"iconfont",Size:16}};this.AryButton=[];this.ExtendData;//扩展数据
|
|
4722
4723
|
//内部变量
|
|
4723
|
-
this.ColseButtonSize=0;this.SettingButtonSize=0;this.ButtonBGWidth=0;this.SetOption=function(option){if(this.Super_SetOption)this.Super_SetOption(option);if(option){if(option.GetLabelCallback){this.GetLabelCallback=option.GetLabelCallback;}if(IFrameSplitOperator.IsNumber(option.Precision))this.Precision=option.Precision;if(IFrameSplitOperator.IsNumber(option.Precision))this.Precision=option.Precision;if(option.Font)this.Font=option.Font;if(option.ValueTextColor)this.ValueTextColor=option.ValueTextColor;if(IFrameSplitOperator.IsNumber(option.ButtonPosition))this.ButtonPosition=option.ButtonPosition;if(option.Button){var item=option.Button;if(item.CloseIcon)this.Button.CloseIcon=CloneData(item.CloseIcon);if(item.SettingIcon)this.Button.SettingIcon=CloneData(item.SettingIcon);}if(option.ExtendData)this.ExtendData=option.ExtendData;}};this.ExportStorageData=function(){var storageData;if(this.Super_ExportStorageData){storageData=this.Super_ExportStorageData();if(this.Label)storageData.Label=this.Label;}return storageData;};this.IsPointIn=this.IsPointIn_XYValue_Line;this.GetXYCoordinate=function(){if(this.IsFrameMinSize())return null;var drawPoint=this.CalculateDrawPoint();return this.PointRange(drawPoint);};this.IsDrawMain=function()//选中绘制在动态绘图上, 没有选中绘制在背景上
|
|
4724
|
+
this.ColseButtonSize=0;this.SettingButtonSize=0;this.ButtonBGWidth=0;this.SetOption=function(option){if(this.Super_SetOption)this.Super_SetOption(option);if(option){if(option.GetLabelCallback){this.GetLabelCallback=option.GetLabelCallback;}if(IFrameSplitOperator.IsNumber(option.Precision))this.Precision=option.Precision;if(IFrameSplitOperator.IsNumber(option.Precision))this.Precision=option.Precision;if(option.Font)this.Font=option.Font;if(option.ValueTextColor)this.ValueTextColor=option.ValueTextColor;if(IFrameSplitOperator.IsNumber(option.ButtonPosition))this.ButtonPosition=option.ButtonPosition;if(IFrameSplitOperator.IsNumber(option.RightSpaceWidth))this.RightSpaceWidth=option.RightSpaceWidth;if(option.Button){var item=option.Button;if(item.CloseIcon)this.Button.CloseIcon=CloneData(item.CloseIcon);if(item.SettingIcon)this.Button.SettingIcon=CloneData(item.SettingIcon);}if(option.ExtendData)this.ExtendData=option.ExtendData;}};this.ExportStorageData=function(){var storageData;if(this.Super_ExportStorageData){storageData=this.Super_ExportStorageData();if(this.Label)storageData.Label=this.Label;}return storageData;};this.IsPointIn=this.IsPointIn_XYValue_Line;this.GetXYCoordinate=function(){if(this.IsFrameMinSize())return null;var drawPoint=this.CalculateDrawPoint();return this.PointRange(drawPoint);};this.IsDrawMain=function()//选中绘制在动态绘图上, 没有选中绘制在背景上
|
|
4724
4725
|
{if(!this.GetActiveDrawPicture)return true;var active=this.GetActiveDrawPicture();if(active.Select.Guid==this.Guid)return false;return true;};this.MainDraw=function(){this.Draw();};this.Draw=function(moveonPoint,mouseStatus){this.LinePoint=[];this.AryButton=[];this.ColseButtonSize=0;this.SettingButtonSize=0;this.ButtonBGWidth=0;if(this.IsFrameMinSize())return;var drawPoint=this.CalculateDrawPoint();if(!drawPoint||drawPoint.length!=1)return;if(!this.Frame)return;if(this.Value.length!=1)return;if(!this.IsYValueInFrame(this.Value[0].YValue))return null;var isHScreen=this.Frame.IsHScreen;var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();if(isHScreen){left=this.Frame.ChartBorder.GetTop();right=this.Frame.ChartBorder.GetBottom();}this.ClipFrame();//画线段
|
|
4725
4726
|
this.Canvas.strokeStyle=this.LineColor;this.SetLineWidth();this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(drawPoint[0].X,left);this.Canvas.lineTo(drawPoint[0].X,right);}else{this.Canvas.moveTo(left,ToFixedPoint(drawPoint[0].Y));this.Canvas.lineTo(right,ToFixedPoint(drawPoint[0].Y));}this.Canvas.stroke();this.RestoreLineWidth();var line={Start:new Point(),End:new Point()};if(isHScreen){line.Start.X=drawPoint[0].X;line.Start.Y=left;line.End.X=drawPoint[0].X;line.End.Y=right;}else{line.Start.X=left;line.Start.Y=drawPoint[0].Y;line.End.X=right;line.End.Y=drawPoint[0].Y;}this.LinePoint.push(line);var labInfo;if(this.GetLabelCallback)labInfo=this.GetLabelCallback(this);//描述信息
|
|
4726
4727
|
if(labInfo)this.DrawLab(labInfo,drawPoint[0].Y);//画中心点
|
|
@@ -5214,7 +5215,7 @@ Value:1},FontName:'微软雅黑'//字体
|
|
|
5214
5215
|
};this.DRAWTEXT_FIX={Font:14*GetDevicePixelRatio()+'px 微软雅黑'};this.DRAWNUMBER_FIX={Font:14*GetDevicePixelRatio()+'px 微软雅黑'//虚线配置
|
|
5215
5216
|
};this.DOTLINE={LineDash:[3,5]//虚线配置
|
|
5216
5217
|
};this.DRAWSL={PixelWidth:15//1个像素点宽度
|
|
5217
|
-
};this.CIRCLEDOT={Radius:1.3*GetDevicePixelRatio()};this.POINTDOT={Radius:2*GetDevicePixelRatio()};this.DepthMapPaint={LineColor:"rgba(255,185,15)",AreaColor:["rgba(255,185,15,0.8)","rgba(255,185,15,0.4)"],TextColor:"rgba(255,255,255)",TextBGColor:'rgb(43,54,69)'};this.KLineYAxisBGPaint={Font:12*GetDevicePixelRatio()+'px 微软雅黑',TextColor:"rgb(117,125,129)",LineColor:"rgb(117,125,129)"//筹码分布图
|
|
5218
|
+
};this.CIRCLEDOT={Radius:1.3*GetDevicePixelRatio()};this.POINTDOT={Radius:2*GetDevicePixelRatio()};this.DepthMapPaint={LineColor:"rgba(255,185,15)",AreaColor:["rgba(255,185,15,0.8)","rgba(255,185,15,0.4)"],TextColor:"rgba(255,255,255)",TextBGColor:'rgb(43,54,69)'};this.KLineYAxisBGPaint={Font:12*GetDevicePixelRatio()+'px 微软雅黑',TextColor:"rgb(117,125,129)",LineColor:"rgb(117,125,129)",DiffValutTextColor:"rgb(117,125,129)",DiffValueBGColor:"rgb(251,140,1)"//筹码分布图
|
|
5218
5219
|
};this.StockChip={InfoColor:'rgb(0,0,0)',//文字颜色
|
|
5219
5220
|
DayInfoColor:'rgb(255,255,255)',//周期颜色内文字颜色
|
|
5220
5221
|
DefaultButton:{Color:"rgb(128,128,128)",MoveOnColor:'rgb(30,144,255)',SelectedColor:"rgb(255,0,0)",Family:"iconfont",Text:'\uE621',Size:13*GetDevicePixelRatio(),MerginLeft:4},LongButton:{Color:"rgb(128,128,128)",MoveOnColor:'rgb(30,144,255)',SelectedColor:"rgb(255,128,0)",Family:"iconfont",Text:'\uE617',Size:13*GetDevicePixelRatio(),MerginLeft:4},RecentButton:{Color:"rgb(128,128,128)",MoveOnColor:'rgb(30,144,255)',SelectedColor:"rgb(0,0,204)",Family:"iconfont",Text:'\uE617',Size:13*GetDevicePixelRatio(),MerginLeft:4}//深度图
|
|
@@ -5262,7 +5263,7 @@ SelectedColor:"rgb(180,240,240)",//选中行
|
|
|
5262
5263
|
TextColor:"rgb(0,0,0)",Item:{Mergin:{Top:2,Bottom:0,Left:1,Right:1},//单元格四周间距
|
|
5263
5264
|
Font:{Size:15,Name:"微软雅黑"},BarMergin:{Top:2,Left:0,Right:0,Bottom:2},//单元格字体
|
|
5264
5265
|
NameFont:{Size:14,Name:"微软雅黑"},SymbolFont:{Size:12,Name:"微软雅黑"}}},//自定义风格
|
|
5265
|
-
this.SetStyle=function(style){var T_SetButtonStyle=function T_SetButtonStyle(item,dest){if(!item)return;if(item.Color)dest.Color=item.Color;if(item.MoveOnColor)dest.MoveOnColor=item.MoveOnColor;if(item.SelectedColor)dest.SelectedColor=item.SelectedColor;if(item.Family)dest.Family=item.Family;if(item.Text)dest.Text=item.Text;if(IFrameSplitOperator.IsNumber(item.Size))dest.Size=item.Size;if(IFrameSplitOperator.IsNumber(item.MerginLeft))dest.MerginLeft=item.MerginLeft;};if(style.TooltipBGColor)this.TooltipBGColor=style.TooltipBGColor;if(style.TooltipAlpha)this.TooltipAlpha=style.TooltipAlpha;if(style.SelectRectBGColor)this.SelectRectBGColor=style.SelectRectBGColor;if(style.UpBarColor)this.UpBarColor=style.UpBarColor;if(style.DownBarColor)this.DownBarColor=style.DownBarColor;if(style.UnchagneBarColor)this.UnchagneBarColor=style.UnchagneBarColor;if(style.EmptyBarBGColor)this.EmptyBarBGColor=style.EmptyBarBGColor;if(style.Minute){if(style.Minute.VolBarColor)this.Minute.VolBarColor=style.Minute.VolBarColor;if(style.Minute.VolTitleColor)this.Minute.VolTitleColor=style.Minute.VolTitleColor;if(style.Minute.PriceColor)this.Minute.PriceColor=style.Minute.PriceColor;if(IFrameSplitOperator.IsNumber(style.Minute.PriceLineWidth))this.Minute.PriceLineWidth=style.Minute.PriceLineWidth;if(style.Minute.AvPriceColor)this.Minute.AvPriceColor=style.Minute.AvPriceColor;if(style.Minute.AreaPriceColor)this.Minute.AreaPriceColor=style.Minute.AreaPriceColor;if(style.Minute.PositionColor)this.Minute.PositionColor=style.Minute.PositionColor;if(style.Minute.FrameSplitTextColor)this.Minute.FrameSplitTextColor=style.Minute.FrameSplitTextColor;if(style.Minute.Before){var item=style.Minute.Before;if(item.BGColor)this.Minute.Before.BGColor=item.BGColor;if(item.LineColor)this.Minute.Before.LineColor=item.LineColor;if(item.VolColor)this.Minute.Before.VolColor=item.VolColor;if(item.AvPriceColor)this.Minute.Before.AvPriceColor=item.AvPriceColor;if(item.CloseIcon)T_SetButtonStyle(item.CloseIcon,this.Minute.Before.CloseIcon);if(item.Point){if(item.Point.Color)this.Minute.Before.Point.Color=item.Point.Color;if(item.Point.Radius)this.Minute.Before.Point.Radius=item.Point.Radius;}}if(style.Minute.After){var item=style.Minute.After;if(item.BGColor)this.Minute.After.BGColor=item.BGColor;if(item.LineColor)this.Minute.After.LineColor=item.LineColor;if(item.VolColor)this.Minute.After.VolColor=item.VolColor;if(item.AvPriceColor)this.Minute.After.AvPriceColor=item.AvPriceColor;if(item.Point){if(item.Point.Color)this.Minute.After.Point.Color=item.Point.Color;if(item.Point.Radius)this.Minute.After.Point.Radius=item.Point.Radius;}}}if(style.DefaultTextColor)this.DefaultTextColor=style.DefaultTextColor;if(style.DefaultTextFont)this.DefaultTextFont=style.DefaultTextFont;if(style.TitleFont)this.TitleFont=style.TitleFont;if(style.IndexTitleBGColor)this.IndexTitleBGColor=style.IndexTitleBGColor;if(style.IndexTitleColor)this.IndexTitleColor=style.IndexTitleColor;if(style.IndexTitleSelectedColor)this.IndexTitleSelectedColor=style.IndexTitleSelectedColor;if(style.OverlayIndexTitleBGColor)this.OverlayIndexTitleBGColor=style.OverlayIndexTitleBGColor;if(style.UpTextColor)this.UpTextColor=style.UpTextColor;if(style.DownTextColor)this.DownTextColor=style.DownTextColor;if(style.UnchagneTextColor)this.UnchagneTextColor=style.UnchagneTextColor;if(style.CloseLineColor)this.CloseLineColor=style.CloseLineColor;if(style.CloseLineAreaColor)this.CloseLineAreaColor=style.CloseLineAreaColor;if(style.CloseLineWidth)this.CloseLineWidth=style.CloseLineWidth;if(style.FrameBorderPen)this.FrameBorderPen=style.FrameBorderPen;if(style.MultiDayBorderPen)this.MultiDayBorderPen=style.MultiDayBorderPen;if(style.FrameSplitPen)this.FrameSplitPen=style.FrameSplitPen;if(style.FrameDotSplitPen)this.FrameDotSplitPen=style.FrameDotSplitPen;if(style.FrameSplitTextColor)this.FrameSplitTextColor=style.FrameSplitTextColor;if(style.FrameSplitTextFont)this.FrameSplitTextFont=style.FrameSplitTextFont;if(style.FrameTitleBGColor)this.FrameTitleBGColor=style.FrameTitleBGColor;if(style.Frame){if(style.Frame.XBottomOffset)this.Frame.XBottomOffset=style.Frame.XBottomOffset;if(style.Frame.YTopOffset)this.Frame.YTopOffset=style.Frame.YTopOffset;if(style.Frame.PercentageText){var item=style.Frame.PercentageText;if(item.PriceColor)this.Frame.PercentageText.PriceColor=item.PriceColor;if(item.PercentageColor)this.Frame.PercentageText.PercentageColor=item.PercentageColor;if(item.SplitColor)this.Frame.PercentageText.SplitColor=item.SplitColor;if(item.Font)this.Frame.PercentageText.Font=item.Font;}}if(IFrameSplitOperator.IsNumber(style.ToolbarButtonStyle))this.ToolbarButtonStyle=style.ToolbarButtonStyle;if(style.FrameLatestPrice){if(style.FrameLatestPrice.TextColor)this.FrameLatestPrice.TextColor=style.FrameLatestPrice.TextColor;if(style.FrameLatestPrice.UpBarColor)this.FrameLatestPrice.UpBarColor=style.FrameLatestPrice.UpBarColor;if(style.FrameLatestPrice.DownBarColor)this.FrameLatestPrice.DownBarColor=style.FrameLatestPrice.DownBarColor;if(style.FrameLatestPrice.UnchagneBarColor)this.FrameLatestPrice.UnchagneBarColor=style.FrameLatestPrice.UnchagneBarColor;if(style.FrameLatestPrice.BGAlpha)this.FrameLatestPrice.BGAlpha=style.FrameLatestPrice.BGAlpha;if(style.FrameLatestPrice.OverlayTextColor)this.FrameLatestPrice.OverlayTextColor=style.FrameLatestPrice.OverlayTextColor;}if(style.CorssCursorBGColor)this.CorssCursorBGColor=style.CorssCursorBGColor;if(style.CorssCursorTextColor)this.CorssCursorTextColor=style.CorssCursorTextColor;if(style.CorssCursorTextFont)this.CorssCursorTextFont=style.CorssCursorTextFont;if(style.CorssCursorVPenColor)this.CorssCursorVPenColor=style.CorssCursorVPenColor;if(style.CorssCursorHPenColor)this.CorssCursorHPenColor=style.CorssCursorHPenColor;if(style.CorssCursorBorderColor)this.CorssCursorBorderColor=style.CorssCursorBorderColor;if(style.CorssCursorXRangeBGColor)this.CorssCursorXRangeBGColor=style.CorssCursorXRangeBGColor;if(style.CorssCursor&&style.CorssCursor.RightButton){var item=style.CorssCursor.RightButton;if(item.BGColor)this.CorssCursor.RightButton.BGColor=item.BGColor;if(item.PenColor)this.CorssCursor.RightButton.PenColor=item.PenColor;if(item.Icon)this.CorssCursor.RightButton.Icon=item.Icon;}if(style.KLine)this.KLine=style.KLine;if(style.Index){if(style.Index.LineColor)this.Index.LineColor=style.Index.LineColor;if(style.Index.NotSupport)this.Index.NotSupport=style.Index.NotSupport;}if(style.ColorArray)this.ColorArray=style.ColorArray;if(style.DrawPicture){var item=style.DrawPicture;if(item.LineColor)this.DrawPicture.LineColor=item.LineColor;if(item.PointColor)this.DrawPicture.PointColor=item.PointColor;if(item.XYCoordinate)this.DrawPicture.XYCoordinate=item.XYCoordinate;if(IFrameSplitOperator.IsNumber(item.PointType))this.DrawPicture.PointType=item.PointType;if(IFrameSplitOperator.IsBool(item.IsShowPoint))this.DrawPicture.IsShowPoint=item.IsShowPoint;}if(style.TooltipPaint){if(style.TooltipPaint.BGColor)this.TooltipPaint.BGColor=style.TooltipPaint.BGColor;if(style.TooltipPaint.BorderColor)this.TooltipPaint.BorderColor=style.TooltipPaint.BorderColor;if(style.TooltipPaint.TitleColor)this.TooltipPaint.TitleColor=style.TooltipPaint.TitleColor;if(style.TooltipPaint.TitleFont)this.TooltipPaint.TitleFont=style.TooltipPaint.TitleFont;if(style.TooltipPaint.DateTimeColor)this.TooltipPaint.DateTimeColor=style.TooltipPaint.DateTimeColor;if(style.TooltipPaint.VolColor)this.TooltipPaint.VolColor=style.TooltipPaint.VolColor;if(style.TooltipPaint.AmountColor)this.TooltipPaint.AmountColor=style.TooltipPaint.AmountColor;}if(style.PCTooltipPaint){var item=style.PCTooltipPaint;if(item.BGColor)this.PCTooltipPaint.BGColor=item.BGColor;if(item.BorderColor)this.PCTooltipPaint.BorderColor=item.BorderColor;if(item.TitleColor)this.PCTooltipPaint.TitleColor=item.TitleColor;if(item.TitleFont)this.PCTooltipPaint.TitleFont=item.TitleFont;if(item.DateTimeColor)this.PCTooltipPaint.DateTimeColor=item.DateTimeColor;if(item.VolColor)this.PCTooltipPaint.VolColor=item.VolColor;if(item.AmountColor)this.PCTooltipPaint.AmountColor=item.AmountColor;}if(style.MinuteInfo){if(style.MinuteInfo.TextColor)this.MinuteInfo.TextColor=style.MinuteInfo.TextColor;if(style.MinuteInfo.Font)this.MinuteInfo.Font=style.MinuteInfo.Font;if(style.MinuteInfo.PointColor)this.MinuteInfo.PointColor=style.MinuteInfo.PointColor;if(style.MinuteInfo.LineColor)this.MinuteInfo.LineColor=style.MinuteInfo.LineColor;if(style.MinuteInfo.TextBGColor)this.MinuteInfo.TextBGColor=style.MinuteInfo.TextBGColor;}if(style.Title){if(style.Title.TradeIndexColor)this.Title.TradeIndexColor=style.Title.TradeIndexColor;if(style.Title.ColorIndexColor)this.Title.ColorIndexColor=style.Title.ColorIndexColor;if(style.Title.VolColor)this.Title.VolColor=style.Title.VolColor;if(style.Title.AmountColor)this.Title.AmountColor=style.Title.AmountColor;if(style.Title.DateTimeColor)this.Title.DateTimeColor=style.Title.DateTimeColor;if(style.Title.NameColor)this.Title.NameColor=style.Title.NameColor;if(style.Title.SettingColor)this.Title.SettingColor=style.Title.SettingColor;if(style.Title.TurnoverRateColor)this.Title.TurnoverRateColor=style.Title.TurnoverRateColor;if(style.Title.PositionColor)this.Title.PositionColor=style.Title.PositionColor;}if(style.DRAWICON){if(style.DRAWICON.Icon){var item=style.DRAWICON.Icon;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWICON.Icon.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWICON.Icon.MinSize=item.MinSize;if(item.Zoom)this.DRAWICON.Icon.Zoom=item.Zoom;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWICON.Icon.YOffset=item.YOffset;}if(style.DRAWICON.Text){var item=style.DRAWICON.Text;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWICON.Text.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWICON.Text.MinSize=item.MinSize;if(item.Zoom)this.DRAWICON.Text.Zoom=item.Zoom;if(item.FontName)this.DRAWICON.Text.FontName=item.FontName;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWICON.Text.YOffset=item.YOffset;}}if(style.DRAWTEXT){var item=style.DRAWTEXT;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWICON.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWICON.MinSize=item.MinSize;if(item.Zoom)this.DRAWTEXT.Zoom=item.Zoom;if(item.FontName)this.DRAWTEXT.FontName=item.FontName;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWTEXT.YOffset=item.YOffset;}if(style.DRAWTEXT_FIX){var item=style.DRAWTEXT_FIX;if(item.Font)this.DRAWTEXT_FIX.Font=item.Font;}if(style.DRAWNUMBER_FIX){var item=style.DRAWNUMBER_FIX;if(item.Font)this.DRAWNUMBER_FIX.Font=item.Font;}if(style.DRAWNUMBER){var item=style.DRAWNUMBER;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWNUMBER.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWNUMBER.MinSize=item.MinSize;if(item.Zoom)this.DRAWNUMBER.Zoom=item.Zoom;if(item.FontName)this.DRAWNUMBER.FontName=item.FontName;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWNUMBER.YOffset=item.YOffset;}if(style.DRAWABOVE){var item=style.DRAWABOVE;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWABOVE.YOffset=item.YOffset;}if(style.DOTLINE)this.DOTLINE=style.DOTLINE;if(style.DRAWSL)this.DOTLINE=style.DRAWSL;if(style.DragSubFrameBorder)this.DragSubFrameBorder=style.DragSubFrameBorder;if(style.DepthMapPaint){var item=style.DepthMapPaint;if(item.LineColor)this.DepthMapPaint.LineColor=item.LineColor;if(item.AreaColor)this.DepthMapPaint.AreaColor=item.AreaColor;if(item.TextColor)this.DepthMapPaint.TextColor=item.TextColor;if(item.TextBGColor)this.DepthMapPaint.TextBGColor=item.TextBGColor;}if(style.KLineYAxisBGPaint){var item=style.KLineYAxisBGPaint;if(item.TextColor)this.KLineYAxisBGPaint.TextColor=item.TextColor;if(item.Font)this.KLineYAxisBGPaint.Font=item.Font;if(item.LineColor)this.KLineYAxisBGPaint.LineColor=item.LineColor;}if(style.StockChip){var item=style.StockChip;if(item.InfoColor)this.StockChip.InfoColor=item.InfoColor;if(item.DayInfoColor)this.StockChip.DayInfoColor=item.DayInfoColor;if(item.DefaultButton)T_SetButtonStyle(item.DefaultButton,this.StockChip.DefaultButton);if(item.LongButton)T_SetButtonStyle(item.LongButton,this.StockChip.LongButton);if(item.RecentButton)T_SetButtonStyle(item.RecentButton,this.StockChip.RecentButton);}if(style.DepthChart){var item=style.DepthChart;if(item.BidColor){if(item.BidColor.Line)this.DepthChart.BidColor.Line=item.BidColor.Line;if(item.BidColor.Area)this.DepthChart.BidColor.Area=item.BidColor.Area;}if(item.AskColor){if(item.AskColor.Line)this.DepthChart.AskColor.Line=item.AskColor.Line;if(item.AskColor.Area)this.DepthChart.AskColor.Area=item.AskColor.Area;}if(item.LineWidth)this.DepthChart.LineWidth=item.LineWidth;}if(style.DepthCorss){var item=style.DepthCorss;if(item.BidColor){if(item.BidColor.Line)this.DepthCorss.BidColor.Line=item.BidColor.Line;}if(item.AskColor){if(item.AskColor.Line)this.DepthCorss.AskColor.Line=item.AskColor.Line;}if(item.LineWidth)this.DepthCorss.LineWidth=item.LineWidth;if(item.LineDash)this.DepthCorss.LineDash=item.LineDash;if(item.Tooltip){var tooltip=item.Tooltip;if(tooltip.BGColor)this.DepthCorss.Tooltip.BGColor=tooltip.BGColor;if(tooltip.TextColor)this.DepthCorss.Tooltip.TextColor=tooltip.TextColor;if(tooltip.Font)this.DepthCorss.Tooltip.Font=tooltip.Font;if(tooltip.LineHeight)this.DepthCorss.Tooltip.LineHeight=tooltip.LineHeight;var border=tooltip.Border;if(IFrameSplitOperator.IsNumber(border.Top))this.DepthCorss.Tooltip.Border.Top=border.Top;if(IFrameSplitOperator.IsNumber(border.Left))this.DepthCorss.Tooltip.Border.Left=border.Left;if(IFrameSplitOperator.IsNumber(border.Bottom))this.DepthCorss.Tooltip.Border.Bottom=border.Bottom;if(IFrameSplitOperator.IsNumber(border.Center))this.DepthCorss.Tooltip.Border.Center=border.Center;}}if(style.CIRCLEDOT){var item=style.CIRCLEDOT;if(IFrameSplitOperator.IsNumber(item.Radius))this.CIRCLEDOT.Radius=item.Radius;}if(style.POINTDOT){var item=style.POINTDOT;if(IFrameSplitOperator.IsNumber(item.Radius))this.POINTDOT.Radius=item.Radius;}if(style.RectSelect){var item=style.RectSelect;if(item.LineColor)this.RectSelect.LineColor=item.LineColor;if(item.LineWidth>0)this.RectSelect.LineWidth=item.LineWidth;if(item.LineDotted)this.RectSelect.LineDotted=item.LineDotted;if(item.AreaColor)this.RectSelect.AreaColor=item.AreaColor;if(item.SubAreaColor)this.RectSelect.SubAreaColor=item.SubAreaColor;if(item.RangeTextColor)this.RectSelect.RangeTextColor=item.RangeTextColor;if(item.RangeTextFont)this.RectSelect.RangeTextFont=item.RangeTextFont;if(item.RangeTextBGColor)this.RectSelect.RangeTextBGColor=item.RangeTextBGColor;if(item.RangeTextSubColor)this.RectSelect.RangeTextSubColor=item.RangeTextSubColor;if(item.RangeTextSubFont)this.RectSelect.RangeTextSubFont=item.RangeTextSubFont;if(item.RangeTextSubBGColor)this.RectSelect.RangeTextSubBGColor=item.RangeTextSubBGColor;}if(style.OrderFlow){item=style.OrderFlow;if(item.UpColor)this.OrderFlow.UpColor=item.UpColor;if(item.DownColor)this.OrderFlow.DownColor=item.DownColor;if(item.UnchagneColor)this.OrderFlow.UnchagneColor=item.UnchagneColor;if(item.Text)this.OrderFlow.Text=item.Text;if(item.Line)this.OrderFlow.Line=item.Line;}if(style.OrderFlow_Style2){item=style.OrderFlow_Style2;if(item.UpColor)this.OrderFlow_Style2.UpColor=item.UpColor;if(item.DownColor)this.OrderFlow_Style2.DownColor=item.DownColor;if(item.UnchagneColor)this.OrderFlow_Style2.UnchagneColor=item.UnchagneColor;if(IFrameSplitOperator.IsNumber(item.BarWidth))this.OrderFlow_Style2.BarWidth=item.BarWidth;}if(style.ChartOX){var item=style.ChartOX;if(item.Family)this.ChartOX.Family=item.Family;if(item.Up)this.ChartOX.Up=item.Up;if(item.Down)this.ChartOX.Down=item.Down;if(item.SquareLineColor)this.ChartOX.SquareLineColor=item.SquareLineColor;}if(style.DealList){var item=style.DealList;if(item.BorderColor)this.DealList.BorderColor=item.BorderColor;if(item.UpTextColor)this.DealList.UpTextColor=item.UpTextColor;if(item.DownTextColor)this.DealList.DownTextColor=item.DownTextColor;if(item.UnchagneTextColor)this.DealList.UnchagneTextColor=item.UnchagneTextColor;if(item.Header){var header=item.Header;if(header.Color)this.DealList.Header.Color=header.Color;if(header.Mergin){var mergin=header.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.DealList.Header.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))this.DealList.Header.Mergin.Left=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))this.DealList.Header.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.DealList.Header.Mergin.Bottom=mergin.Bottom;}if(header.Font){var font=header.Font;if(font.Name)this.DealList.Header.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.DealList.Header.Font.Size=font.Size;}}if(item.Row){var row=item.Row;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Top))this.DealList.Row.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.DealList.Row.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)this.DealList.Row.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.DealList.Row.Font.Size=font.Size;}if(row.BarMergin){var mergin=row.BarMergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.DealList.Row.BarMergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.DealList.Row.BarMergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.DealList.Row.BarMergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.DealList.Row.BarMergin.Bottom=mergin.Bottom;}}if(item.FieldColor){var filed=item.FieldColor;if(filed.Vol)this.DealList.FieldColor.Vol=filed.Vol;if(filed.Time)this.DealList.FieldColor.Time=filed.Time;if(filed.Deal)this.DealList.FieldColor.Deal=filed.Deal;if(filed.Index)this.DealList.FieldColor.Index=filed.Index;if(filed.BarTitle)this.DealList.FieldColor.BarTitle=filed.BarTitle;if(filed.Text)this.DealList.FieldColor.Text=filed.Text;if(IFrameSplitOperator.IsNonEmptyArray(filed.Bar)){for(var i=0;i<filed.Bar.length;++i){this.DealList.FieldColor.Bar[i]=filed.Bar[i];}}}}if(style.Report){var item=style.Report;if(item.BorderColor)this.Report.BorderColor=item.BorderColor;if(item.UpTextColor)this.Report.UpTextColor=item.UpTextColor;if(item.DownTextColor)this.Report.DownTextColor=item.DownTextColor;if(item.UnchagneTextColor)this.Report.UnchagneTextColor=item.UnchagneTextColor;if(item.BorderColor)this.Report.SelectedColor=item.SelectedColor;if(item.Header){var header=item.Header;if(header.Color)this.Report.Header.Color=header.Color;if(header.SortColor)this.Report.Header.SortColor=header.SortColor;if(header.Mergin){var mergin=header.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.Header.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.Header.Mergin.Left=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.Header.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.Header.Mergin.Bottom=mergin.Bottom;}if(header.Font){var font=header.Font;if(font.Name)this.Report.Header.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Header.Font.Size=font.Size;}}if(item.Item){var row=item.Item;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.Item.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.Item.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.Item.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.Item.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)this.Report.Item.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Item.Font.Size=font.Size;}if(row.BarMergin){var mergin=row.BarMergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.Item.BarMergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.Item.BarMergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.Item.BarMergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.Item.BarMergin.Bottom=mergin.Bottom;}if(row.NameFont){var font=row.NameFont;if(font.Name)this.Report.Item.NameFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Item.NameFont.Size=font.Size;}if(row.SymbolFont){var font=row.SymbolFont;if(font.Name)this.Report.Item.SymbolFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Item.SymbolFont.Size=font.Size;}}if(item.FixedItem){var row=item.FixedItem;if(row.Font){var font=row.Font;if(font.Name)this.Report.FixedItem.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.FixedItem.Font.Size=font.Size;}}if(item.LimitBorder){var limit=item.LimitBorder;if(limit.Color)this.Report.LimitBorder.Color=limit.Color;if(limit.Mergin){var mergin=limit.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.LimitBorder.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.LimitBorder.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.LimitBorder.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.LimitBorder.Mergin.Bottom=mergin.Bottom;}}if(item.FieldColor){var filed=item.FieldColor;if(filed.Name)this.Report.FieldColor.Name=filed.Name;if(filed.Symbol)this.Report.FieldColor.Symbol=filed.Symbol;if(filed.Vol)this.Report.FieldColor.Vol=filed.Vol;if(filed.Amount)this.Report.FieldColor.Amount=filed.Amount;if(filed.Index)this.Report.FieldColor.Index=filed.Index;if(filed.BarTitle)this.Report.FieldColor.BarTitle=filed.BarTitle;if(filed.Text)this.Report.FieldColor.Text=filed.Text;if(IFrameSplitOperator.IsNonEmptyArray(filed.Bar)){for(var i=0;i<filed.Bar.length;++i){this.Report.FieldColor.Bar[i]=filed.Bar[i];}}}if(item.Tab){var tab=item.Tab;if(tab.Font){var font=tab.Font;if(font.Name)this.Report.Tab.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Tab.Font.Size=font.Size;}if(IFrameSplitOperator.IsNumber(tab.ScrollBarWidth))this.Report.Tab.ScrollBarWidth=tab.ScrollBarWidth;if(tab.ButtonColor)this.Report.Tab.ButtonColor=tab.ButtonColor;if(tab.BarColor)this.Report.Tab.BarColor=tab.BarColor;if(tab.BorderColor)this.Report.Tab.BorderColor=tab.BorderColor;if(tab.TabTitleColor)this.Report.Tab.TabTitleColor=tab.TabTitleColor;if(tab.TabSelectedTitleColor)this.Report.Tab.TabSelectedTitleColor=tab.TabSelectedTitleColor;if(tab.TabSelectedBGColor)this.Report.Tab.TabSelectedBGColor=tab.TabSelectedBGColor;if(tab.TabMoveOnTitleColor)this.Report.Tab.TabMoveOnTitleColor=tab.TabMoveOnTitleColor;if(tab.TabBGColor)this.Report.Tab.TabBGColor=tab.TabBGColor;}if(item.PageInfo){var pageinfo=item.PageInfo;if(pageinfo.Font){var font=pageinfo.Font;if(font.Name)this.Report.PageInfo.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.PageInfo.Font.Size=font.Size;}if(pageinfo.TextColor)this.Report.PageInfo.TextColor=pageinfo.TextColor;if(pageinfo.BGColor)this.Report.PageInfo.BGColor=pageinfo.BGColor;if(pageinfo.Mergin){var mergin=pageinfo.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.PageInfo.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.PageInfo.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.PageInfo.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.PageInfo.Mergin.Bottom=mergin.Bottom;}}if(item.DragRow){var dragRow=item.DragRow;if(dragRow.Color)this.Report.DragRow.Color=dragRow.Color;if(dragRow.TextColor)this.Report.DragRow.TextColor=dragRow.TextColor;if(dragRow.MoveRowColor)this.Report.DragRow.MoveRowColor=dragRow.MoveRowColor;if(dragRow.SrcRowColor)this.Report.DragRow.SrcRowColor=dragRow.SrcRowColor;}}if(style.SelectedChart){var item=style.SelectedChart;if(IFrameSplitOperator.IsNumber(item.LineWidth))this.SelectedChart.LineWidth=item.LineWidth;if(IFrameSplitOperator.IsNumber(item.Radius))this.SelectedChart.Radius=item.Radius;if(IFrameSplitOperator.IsNumber(item.MinSpace))this.SelectedChart.MinSpace=item.MinSpace;if(item.LineColor)this.SelectedChart.LineColor=item.LineColor;if(item.LineColor)this.SelectedChart.BGColor=item.BGColor;}if(style.DragMovePaint){var item=style.DragMovePaint;if(item.TextColor)this.DragMovePaint.TextColor=item.TextColor;if(item.Font)this.DragMovePaint.Font=item.Font;}if(IFrameSplitOperator.IsNumber(style.ToolbarButtonStyle))this.ToolbarButtonStyle=style.ToolbarButtonStyle;if(style.Buttons){var buttons=style.Buttons;T_SetButtonStyle(buttons.CloseOverlayIndex,this.Buttons.CloseOverlayIndex);T_SetButtonStyle(buttons.CloseWindow,this.Buttons.CloseWindow);T_SetButtonStyle(buttons.ChangeIndex,this.Buttons.ChangeIndex);T_SetButtonStyle(buttons.OverlayIndex,this.Buttons.OverlayIndex);T_SetButtonStyle(buttons.ModifyIndexParam,this.Buttons.ModifyIndexParam);T_SetButtonStyle(buttons.MaxMinWindow,this.Buttons.MaxMinWindow);T_SetButtonStyle(buttons.TitleWindow,this.Buttons.TitleWindow);T_SetButtonStyle(buttons.ExportData,this.Buttons.ExportData);}if(style.ChartDrawVolProfile){var item=style.ChartDrawVolProfile;if(item.UpVolColor)this.ChartDrawVolProfile.UpVolColor=item.UpVolColor;if(item.DownVolColor)this.ChartDrawVolProfile.DownVolColor=item.DownVolColor;if(item.AreaUpColor)this.ChartDrawVolProfile.AreaUpColor=item.AreaUpColor;if(item.AreaDonwColor)this.ChartDrawVolProfile.AreaDonwColor=item.AreaDonwColor;if(item.BGColor)this.ChartDrawVolProfile.BGColor=item.BGColor;if(item.BorderColor)this.ChartDrawVolProfile.BorderColor=item.BorderColor;if(item.VolLineColor)this.ChartDrawVolProfile.VolLineColor=item.VolLineColor;if(item.Text){if(item.Text.Color)this.ChartDrawVolProfile.Text.Color=item.Text.Color;if(item.Text.Family)this.ChartDrawVolProfile.Text.Family=item.Text.Family;if(IFrameSplitOperator.IsNumber(item.Text.FontMaxSize))this.ChartDrawVolProfile.Text.FontMaxSize=item.Text.FontMaxSize;if(IFrameSplitOperator.IsNumber(item.Text.FontMinSize))this.ChartDrawVolProfile.Text.FontMinSize=item.Text.FontMinSize;}}if(style.DisableLogo===true){if(this.FrameLogo)this.FrameLogo.Text=null;}};}var g_JSChartResource=new JSChartResource();/////////////////////////////////////////////////////////////////////////////////
|
|
5266
|
+
this.SetStyle=function(style){var T_SetButtonStyle=function T_SetButtonStyle(item,dest){if(!item)return;if(item.Color)dest.Color=item.Color;if(item.MoveOnColor)dest.MoveOnColor=item.MoveOnColor;if(item.SelectedColor)dest.SelectedColor=item.SelectedColor;if(item.Family)dest.Family=item.Family;if(item.Text)dest.Text=item.Text;if(IFrameSplitOperator.IsNumber(item.Size))dest.Size=item.Size;if(IFrameSplitOperator.IsNumber(item.MerginLeft))dest.MerginLeft=item.MerginLeft;};if(style.TooltipBGColor)this.TooltipBGColor=style.TooltipBGColor;if(style.TooltipAlpha)this.TooltipAlpha=style.TooltipAlpha;if(style.SelectRectBGColor)this.SelectRectBGColor=style.SelectRectBGColor;if(style.UpBarColor)this.UpBarColor=style.UpBarColor;if(style.DownBarColor)this.DownBarColor=style.DownBarColor;if(style.UnchagneBarColor)this.UnchagneBarColor=style.UnchagneBarColor;if(style.EmptyBarBGColor)this.EmptyBarBGColor=style.EmptyBarBGColor;if(style.Minute){if(style.Minute.VolBarColor)this.Minute.VolBarColor=style.Minute.VolBarColor;if(style.Minute.VolTitleColor)this.Minute.VolTitleColor=style.Minute.VolTitleColor;if(style.Minute.PriceColor)this.Minute.PriceColor=style.Minute.PriceColor;if(IFrameSplitOperator.IsNumber(style.Minute.PriceLineWidth))this.Minute.PriceLineWidth=style.Minute.PriceLineWidth;if(style.Minute.AvPriceColor)this.Minute.AvPriceColor=style.Minute.AvPriceColor;if(style.Minute.AreaPriceColor)this.Minute.AreaPriceColor=style.Minute.AreaPriceColor;if(style.Minute.PositionColor)this.Minute.PositionColor=style.Minute.PositionColor;if(style.Minute.FrameSplitTextColor)this.Minute.FrameSplitTextColor=style.Minute.FrameSplitTextColor;if(style.Minute.Before){var item=style.Minute.Before;if(item.BGColor)this.Minute.Before.BGColor=item.BGColor;if(item.LineColor)this.Minute.Before.LineColor=item.LineColor;if(item.VolColor)this.Minute.Before.VolColor=item.VolColor;if(item.AvPriceColor)this.Minute.Before.AvPriceColor=item.AvPriceColor;if(item.CloseIcon)T_SetButtonStyle(item.CloseIcon,this.Minute.Before.CloseIcon);if(item.Point){if(item.Point.Color)this.Minute.Before.Point.Color=item.Point.Color;if(item.Point.Radius)this.Minute.Before.Point.Radius=item.Point.Radius;}}if(style.Minute.After){var item=style.Minute.After;if(item.BGColor)this.Minute.After.BGColor=item.BGColor;if(item.LineColor)this.Minute.After.LineColor=item.LineColor;if(item.VolColor)this.Minute.After.VolColor=item.VolColor;if(item.AvPriceColor)this.Minute.After.AvPriceColor=item.AvPriceColor;if(item.Point){if(item.Point.Color)this.Minute.After.Point.Color=item.Point.Color;if(item.Point.Radius)this.Minute.After.Point.Radius=item.Point.Radius;}}}if(style.DefaultTextColor)this.DefaultTextColor=style.DefaultTextColor;if(style.DefaultTextFont)this.DefaultTextFont=style.DefaultTextFont;if(style.TitleFont)this.TitleFont=style.TitleFont;if(style.IndexTitleBGColor)this.IndexTitleBGColor=style.IndexTitleBGColor;if(style.IndexTitleColor)this.IndexTitleColor=style.IndexTitleColor;if(style.IndexTitleSelectedColor)this.IndexTitleSelectedColor=style.IndexTitleSelectedColor;if(style.OverlayIndexTitleBGColor)this.OverlayIndexTitleBGColor=style.OverlayIndexTitleBGColor;if(style.UpTextColor)this.UpTextColor=style.UpTextColor;if(style.DownTextColor)this.DownTextColor=style.DownTextColor;if(style.UnchagneTextColor)this.UnchagneTextColor=style.UnchagneTextColor;if(style.CloseLineColor)this.CloseLineColor=style.CloseLineColor;if(style.CloseLineAreaColor)this.CloseLineAreaColor=style.CloseLineAreaColor;if(style.CloseLineWidth)this.CloseLineWidth=style.CloseLineWidth;if(style.FrameBorderPen)this.FrameBorderPen=style.FrameBorderPen;if(style.MultiDayBorderPen)this.MultiDayBorderPen=style.MultiDayBorderPen;if(style.FrameSplitPen)this.FrameSplitPen=style.FrameSplitPen;if(style.FrameDotSplitPen)this.FrameDotSplitPen=style.FrameDotSplitPen;if(style.FrameSplitTextColor)this.FrameSplitTextColor=style.FrameSplitTextColor;if(style.FrameSplitTextFont)this.FrameSplitTextFont=style.FrameSplitTextFont;if(style.FrameTitleBGColor)this.FrameTitleBGColor=style.FrameTitleBGColor;if(style.Frame){if(style.Frame.XBottomOffset)this.Frame.XBottomOffset=style.Frame.XBottomOffset;if(style.Frame.YTopOffset)this.Frame.YTopOffset=style.Frame.YTopOffset;if(style.Frame.PercentageText){var item=style.Frame.PercentageText;if(item.PriceColor)this.Frame.PercentageText.PriceColor=item.PriceColor;if(item.PercentageColor)this.Frame.PercentageText.PercentageColor=item.PercentageColor;if(item.SplitColor)this.Frame.PercentageText.SplitColor=item.SplitColor;if(item.Font)this.Frame.PercentageText.Font=item.Font;}}if(IFrameSplitOperator.IsNumber(style.ToolbarButtonStyle))this.ToolbarButtonStyle=style.ToolbarButtonStyle;if(style.FrameLatestPrice){if(style.FrameLatestPrice.TextColor)this.FrameLatestPrice.TextColor=style.FrameLatestPrice.TextColor;if(style.FrameLatestPrice.UpBarColor)this.FrameLatestPrice.UpBarColor=style.FrameLatestPrice.UpBarColor;if(style.FrameLatestPrice.DownBarColor)this.FrameLatestPrice.DownBarColor=style.FrameLatestPrice.DownBarColor;if(style.FrameLatestPrice.UnchagneBarColor)this.FrameLatestPrice.UnchagneBarColor=style.FrameLatestPrice.UnchagneBarColor;if(style.FrameLatestPrice.BGAlpha)this.FrameLatestPrice.BGAlpha=style.FrameLatestPrice.BGAlpha;if(style.FrameLatestPrice.OverlayTextColor)this.FrameLatestPrice.OverlayTextColor=style.FrameLatestPrice.OverlayTextColor;}if(style.CorssCursorBGColor)this.CorssCursorBGColor=style.CorssCursorBGColor;if(style.CorssCursorTextColor)this.CorssCursorTextColor=style.CorssCursorTextColor;if(style.CorssCursorTextFont)this.CorssCursorTextFont=style.CorssCursorTextFont;if(style.CorssCursorVPenColor)this.CorssCursorVPenColor=style.CorssCursorVPenColor;if(style.CorssCursorHPenColor)this.CorssCursorHPenColor=style.CorssCursorHPenColor;if(style.CorssCursorBorderColor)this.CorssCursorBorderColor=style.CorssCursorBorderColor;if(style.CorssCursorXRangeBGColor)this.CorssCursorXRangeBGColor=style.CorssCursorXRangeBGColor;if(style.CorssCursor&&style.CorssCursor.RightButton){var item=style.CorssCursor.RightButton;if(item.BGColor)this.CorssCursor.RightButton.BGColor=item.BGColor;if(item.PenColor)this.CorssCursor.RightButton.PenColor=item.PenColor;if(item.Icon)this.CorssCursor.RightButton.Icon=item.Icon;}if(style.KLine)this.KLine=style.KLine;if(style.Index){if(style.Index.LineColor)this.Index.LineColor=style.Index.LineColor;if(style.Index.NotSupport)this.Index.NotSupport=style.Index.NotSupport;}if(style.ColorArray)this.ColorArray=style.ColorArray;if(style.DrawPicture){var item=style.DrawPicture;if(item.LineColor)this.DrawPicture.LineColor=item.LineColor;if(item.PointColor)this.DrawPicture.PointColor=item.PointColor;if(item.XYCoordinate)this.DrawPicture.XYCoordinate=item.XYCoordinate;if(IFrameSplitOperator.IsNumber(item.PointType))this.DrawPicture.PointType=item.PointType;if(IFrameSplitOperator.IsBool(item.IsShowPoint))this.DrawPicture.IsShowPoint=item.IsShowPoint;}if(style.TooltipPaint){if(style.TooltipPaint.BGColor)this.TooltipPaint.BGColor=style.TooltipPaint.BGColor;if(style.TooltipPaint.BorderColor)this.TooltipPaint.BorderColor=style.TooltipPaint.BorderColor;if(style.TooltipPaint.TitleColor)this.TooltipPaint.TitleColor=style.TooltipPaint.TitleColor;if(style.TooltipPaint.TitleFont)this.TooltipPaint.TitleFont=style.TooltipPaint.TitleFont;if(style.TooltipPaint.DateTimeColor)this.TooltipPaint.DateTimeColor=style.TooltipPaint.DateTimeColor;if(style.TooltipPaint.VolColor)this.TooltipPaint.VolColor=style.TooltipPaint.VolColor;if(style.TooltipPaint.AmountColor)this.TooltipPaint.AmountColor=style.TooltipPaint.AmountColor;}if(style.PCTooltipPaint){var item=style.PCTooltipPaint;if(item.BGColor)this.PCTooltipPaint.BGColor=item.BGColor;if(item.BorderColor)this.PCTooltipPaint.BorderColor=item.BorderColor;if(item.TitleColor)this.PCTooltipPaint.TitleColor=item.TitleColor;if(item.TitleFont)this.PCTooltipPaint.TitleFont=item.TitleFont;if(item.DateTimeColor)this.PCTooltipPaint.DateTimeColor=item.DateTimeColor;if(item.VolColor)this.PCTooltipPaint.VolColor=item.VolColor;if(item.AmountColor)this.PCTooltipPaint.AmountColor=item.AmountColor;}if(style.MinuteInfo){if(style.MinuteInfo.TextColor)this.MinuteInfo.TextColor=style.MinuteInfo.TextColor;if(style.MinuteInfo.Font)this.MinuteInfo.Font=style.MinuteInfo.Font;if(style.MinuteInfo.PointColor)this.MinuteInfo.PointColor=style.MinuteInfo.PointColor;if(style.MinuteInfo.LineColor)this.MinuteInfo.LineColor=style.MinuteInfo.LineColor;if(style.MinuteInfo.TextBGColor)this.MinuteInfo.TextBGColor=style.MinuteInfo.TextBGColor;}if(style.Title){if(style.Title.TradeIndexColor)this.Title.TradeIndexColor=style.Title.TradeIndexColor;if(style.Title.ColorIndexColor)this.Title.ColorIndexColor=style.Title.ColorIndexColor;if(style.Title.VolColor)this.Title.VolColor=style.Title.VolColor;if(style.Title.AmountColor)this.Title.AmountColor=style.Title.AmountColor;if(style.Title.DateTimeColor)this.Title.DateTimeColor=style.Title.DateTimeColor;if(style.Title.NameColor)this.Title.NameColor=style.Title.NameColor;if(style.Title.SettingColor)this.Title.SettingColor=style.Title.SettingColor;if(style.Title.TurnoverRateColor)this.Title.TurnoverRateColor=style.Title.TurnoverRateColor;if(style.Title.PositionColor)this.Title.PositionColor=style.Title.PositionColor;}if(style.DRAWICON){if(style.DRAWICON.Icon){var item=style.DRAWICON.Icon;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWICON.Icon.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWICON.Icon.MinSize=item.MinSize;if(item.Zoom)this.DRAWICON.Icon.Zoom=item.Zoom;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWICON.Icon.YOffset=item.YOffset;}if(style.DRAWICON.Text){var item=style.DRAWICON.Text;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWICON.Text.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWICON.Text.MinSize=item.MinSize;if(item.Zoom)this.DRAWICON.Text.Zoom=item.Zoom;if(item.FontName)this.DRAWICON.Text.FontName=item.FontName;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWICON.Text.YOffset=item.YOffset;}}if(style.DRAWTEXT){var item=style.DRAWTEXT;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWICON.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWICON.MinSize=item.MinSize;if(item.Zoom)this.DRAWTEXT.Zoom=item.Zoom;if(item.FontName)this.DRAWTEXT.FontName=item.FontName;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWTEXT.YOffset=item.YOffset;}if(style.DRAWTEXT_FIX){var item=style.DRAWTEXT_FIX;if(item.Font)this.DRAWTEXT_FIX.Font=item.Font;}if(style.DRAWNUMBER_FIX){var item=style.DRAWNUMBER_FIX;if(item.Font)this.DRAWNUMBER_FIX.Font=item.Font;}if(style.DRAWNUMBER){var item=style.DRAWNUMBER;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))this.DRAWNUMBER.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))this.DRAWNUMBER.MinSize=item.MinSize;if(item.Zoom)this.DRAWNUMBER.Zoom=item.Zoom;if(item.FontName)this.DRAWNUMBER.FontName=item.FontName;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWNUMBER.YOffset=item.YOffset;}if(style.DRAWABOVE){var item=style.DRAWABOVE;if(IFrameSplitOperator.IsNumber(item.YOffset))this.DRAWABOVE.YOffset=item.YOffset;}if(style.DOTLINE)this.DOTLINE=style.DOTLINE;if(style.DRAWSL)this.DOTLINE=style.DRAWSL;if(style.DragSubFrameBorder)this.DragSubFrameBorder=style.DragSubFrameBorder;if(style.DepthMapPaint){var item=style.DepthMapPaint;if(item.LineColor)this.DepthMapPaint.LineColor=item.LineColor;if(item.AreaColor)this.DepthMapPaint.AreaColor=item.AreaColor;if(item.TextColor)this.DepthMapPaint.TextColor=item.TextColor;if(item.TextBGColor)this.DepthMapPaint.TextBGColor=item.TextBGColor;}if(style.KLineYAxisBGPaint){var item=style.KLineYAxisBGPaint;if(item.TextColor)this.KLineYAxisBGPaint.TextColor=item.TextColor;if(item.Font)this.KLineYAxisBGPaint.Font=item.Font;if(item.LineColor)this.KLineYAxisBGPaint.LineColor=item.LineColor;if(item.DiffValutTextColor)this.KLineYAxisBGPaint.DiffValutTextColor=item.DiffValutTextColor;if(item.DiffValueBGColor)this.KLineYAxisBGPaint.DiffValueBGColor=item.DiffValueBGColor;}if(style.StockChip){var item=style.StockChip;if(item.InfoColor)this.StockChip.InfoColor=item.InfoColor;if(item.DayInfoColor)this.StockChip.DayInfoColor=item.DayInfoColor;if(item.DefaultButton)T_SetButtonStyle(item.DefaultButton,this.StockChip.DefaultButton);if(item.LongButton)T_SetButtonStyle(item.LongButton,this.StockChip.LongButton);if(item.RecentButton)T_SetButtonStyle(item.RecentButton,this.StockChip.RecentButton);}if(style.DepthChart){var item=style.DepthChart;if(item.BidColor){if(item.BidColor.Line)this.DepthChart.BidColor.Line=item.BidColor.Line;if(item.BidColor.Area)this.DepthChart.BidColor.Area=item.BidColor.Area;}if(item.AskColor){if(item.AskColor.Line)this.DepthChart.AskColor.Line=item.AskColor.Line;if(item.AskColor.Area)this.DepthChart.AskColor.Area=item.AskColor.Area;}if(item.LineWidth)this.DepthChart.LineWidth=item.LineWidth;}if(style.DepthCorss){var item=style.DepthCorss;if(item.BidColor){if(item.BidColor.Line)this.DepthCorss.BidColor.Line=item.BidColor.Line;}if(item.AskColor){if(item.AskColor.Line)this.DepthCorss.AskColor.Line=item.AskColor.Line;}if(item.LineWidth)this.DepthCorss.LineWidth=item.LineWidth;if(item.LineDash)this.DepthCorss.LineDash=item.LineDash;if(item.Tooltip){var tooltip=item.Tooltip;if(tooltip.BGColor)this.DepthCorss.Tooltip.BGColor=tooltip.BGColor;if(tooltip.TextColor)this.DepthCorss.Tooltip.TextColor=tooltip.TextColor;if(tooltip.Font)this.DepthCorss.Tooltip.Font=tooltip.Font;if(tooltip.LineHeight)this.DepthCorss.Tooltip.LineHeight=tooltip.LineHeight;var border=tooltip.Border;if(IFrameSplitOperator.IsNumber(border.Top))this.DepthCorss.Tooltip.Border.Top=border.Top;if(IFrameSplitOperator.IsNumber(border.Left))this.DepthCorss.Tooltip.Border.Left=border.Left;if(IFrameSplitOperator.IsNumber(border.Bottom))this.DepthCorss.Tooltip.Border.Bottom=border.Bottom;if(IFrameSplitOperator.IsNumber(border.Center))this.DepthCorss.Tooltip.Border.Center=border.Center;}}if(style.CIRCLEDOT){var item=style.CIRCLEDOT;if(IFrameSplitOperator.IsNumber(item.Radius))this.CIRCLEDOT.Radius=item.Radius;}if(style.POINTDOT){var item=style.POINTDOT;if(IFrameSplitOperator.IsNumber(item.Radius))this.POINTDOT.Radius=item.Radius;}if(style.RectSelect){var item=style.RectSelect;if(item.LineColor)this.RectSelect.LineColor=item.LineColor;if(item.LineWidth>0)this.RectSelect.LineWidth=item.LineWidth;if(item.LineDotted)this.RectSelect.LineDotted=item.LineDotted;if(item.AreaColor)this.RectSelect.AreaColor=item.AreaColor;if(item.SubAreaColor)this.RectSelect.SubAreaColor=item.SubAreaColor;if(item.RangeTextColor)this.RectSelect.RangeTextColor=item.RangeTextColor;if(item.RangeTextFont)this.RectSelect.RangeTextFont=item.RangeTextFont;if(item.RangeTextBGColor)this.RectSelect.RangeTextBGColor=item.RangeTextBGColor;if(item.RangeTextSubColor)this.RectSelect.RangeTextSubColor=item.RangeTextSubColor;if(item.RangeTextSubFont)this.RectSelect.RangeTextSubFont=item.RangeTextSubFont;if(item.RangeTextSubBGColor)this.RectSelect.RangeTextSubBGColor=item.RangeTextSubBGColor;}if(style.OrderFlow){item=style.OrderFlow;if(item.UpColor)this.OrderFlow.UpColor=item.UpColor;if(item.DownColor)this.OrderFlow.DownColor=item.DownColor;if(item.UnchagneColor)this.OrderFlow.UnchagneColor=item.UnchagneColor;if(item.Text)this.OrderFlow.Text=item.Text;if(item.Line)this.OrderFlow.Line=item.Line;}if(style.OrderFlow_Style2){item=style.OrderFlow_Style2;if(item.UpColor)this.OrderFlow_Style2.UpColor=item.UpColor;if(item.DownColor)this.OrderFlow_Style2.DownColor=item.DownColor;if(item.UnchagneColor)this.OrderFlow_Style2.UnchagneColor=item.UnchagneColor;if(IFrameSplitOperator.IsNumber(item.BarWidth))this.OrderFlow_Style2.BarWidth=item.BarWidth;}if(style.ChartOX){var item=style.ChartOX;if(item.Family)this.ChartOX.Family=item.Family;if(item.Up)this.ChartOX.Up=item.Up;if(item.Down)this.ChartOX.Down=item.Down;if(item.SquareLineColor)this.ChartOX.SquareLineColor=item.SquareLineColor;}if(style.DealList){var item=style.DealList;if(item.BorderColor)this.DealList.BorderColor=item.BorderColor;if(item.UpTextColor)this.DealList.UpTextColor=item.UpTextColor;if(item.DownTextColor)this.DealList.DownTextColor=item.DownTextColor;if(item.UnchagneTextColor)this.DealList.UnchagneTextColor=item.UnchagneTextColor;if(item.Header){var header=item.Header;if(header.Color)this.DealList.Header.Color=header.Color;if(header.Mergin){var mergin=header.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.DealList.Header.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))this.DealList.Header.Mergin.Left=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))this.DealList.Header.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.DealList.Header.Mergin.Bottom=mergin.Bottom;}if(header.Font){var font=header.Font;if(font.Name)this.DealList.Header.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.DealList.Header.Font.Size=font.Size;}}if(item.Row){var row=item.Row;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Top))this.DealList.Row.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.DealList.Row.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)this.DealList.Row.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.DealList.Row.Font.Size=font.Size;}if(row.BarMergin){var mergin=row.BarMergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.DealList.Row.BarMergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.DealList.Row.BarMergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.DealList.Row.BarMergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.DealList.Row.BarMergin.Bottom=mergin.Bottom;}}if(item.FieldColor){var filed=item.FieldColor;if(filed.Vol)this.DealList.FieldColor.Vol=filed.Vol;if(filed.Time)this.DealList.FieldColor.Time=filed.Time;if(filed.Deal)this.DealList.FieldColor.Deal=filed.Deal;if(filed.Index)this.DealList.FieldColor.Index=filed.Index;if(filed.BarTitle)this.DealList.FieldColor.BarTitle=filed.BarTitle;if(filed.Text)this.DealList.FieldColor.Text=filed.Text;if(IFrameSplitOperator.IsNonEmptyArray(filed.Bar)){for(var i=0;i<filed.Bar.length;++i){this.DealList.FieldColor.Bar[i]=filed.Bar[i];}}}}if(style.Report){var item=style.Report;if(item.BorderColor)this.Report.BorderColor=item.BorderColor;if(item.UpTextColor)this.Report.UpTextColor=item.UpTextColor;if(item.DownTextColor)this.Report.DownTextColor=item.DownTextColor;if(item.UnchagneTextColor)this.Report.UnchagneTextColor=item.UnchagneTextColor;if(item.BorderColor)this.Report.SelectedColor=item.SelectedColor;if(item.Header){var header=item.Header;if(header.Color)this.Report.Header.Color=header.Color;if(header.SortColor)this.Report.Header.SortColor=header.SortColor;if(header.Mergin){var mergin=header.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.Header.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.Header.Mergin.Left=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.Header.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.Header.Mergin.Bottom=mergin.Bottom;}if(header.Font){var font=header.Font;if(font.Name)this.Report.Header.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Header.Font.Size=font.Size;}}if(item.Item){var row=item.Item;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.Item.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.Item.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.Item.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.Item.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)this.Report.Item.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Item.Font.Size=font.Size;}if(row.BarMergin){var mergin=row.BarMergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.Item.BarMergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.Item.BarMergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.Item.BarMergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.Item.BarMergin.Bottom=mergin.Bottom;}if(row.NameFont){var font=row.NameFont;if(font.Name)this.Report.Item.NameFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Item.NameFont.Size=font.Size;}if(row.SymbolFont){var font=row.SymbolFont;if(font.Name)this.Report.Item.SymbolFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Item.SymbolFont.Size=font.Size;}}if(item.FixedItem){var row=item.FixedItem;if(row.Font){var font=row.Font;if(font.Name)this.Report.FixedItem.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.FixedItem.Font.Size=font.Size;}}if(item.LimitBorder){var limit=item.LimitBorder;if(limit.Color)this.Report.LimitBorder.Color=limit.Color;if(limit.Mergin){var mergin=limit.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.LimitBorder.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.LimitBorder.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.LimitBorder.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.LimitBorder.Mergin.Bottom=mergin.Bottom;}}if(item.FieldColor){var filed=item.FieldColor;if(filed.Name)this.Report.FieldColor.Name=filed.Name;if(filed.Symbol)this.Report.FieldColor.Symbol=filed.Symbol;if(filed.Vol)this.Report.FieldColor.Vol=filed.Vol;if(filed.Amount)this.Report.FieldColor.Amount=filed.Amount;if(filed.Index)this.Report.FieldColor.Index=filed.Index;if(filed.BarTitle)this.Report.FieldColor.BarTitle=filed.BarTitle;if(filed.Text)this.Report.FieldColor.Text=filed.Text;if(IFrameSplitOperator.IsNonEmptyArray(filed.Bar)){for(var i=0;i<filed.Bar.length;++i){this.Report.FieldColor.Bar[i]=filed.Bar[i];}}}if(item.Tab){var tab=item.Tab;if(tab.Font){var font=tab.Font;if(font.Name)this.Report.Tab.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.Tab.Font.Size=font.Size;}if(IFrameSplitOperator.IsNumber(tab.ScrollBarWidth))this.Report.Tab.ScrollBarWidth=tab.ScrollBarWidth;if(tab.ButtonColor)this.Report.Tab.ButtonColor=tab.ButtonColor;if(tab.BarColor)this.Report.Tab.BarColor=tab.BarColor;if(tab.BorderColor)this.Report.Tab.BorderColor=tab.BorderColor;if(tab.TabTitleColor)this.Report.Tab.TabTitleColor=tab.TabTitleColor;if(tab.TabSelectedTitleColor)this.Report.Tab.TabSelectedTitleColor=tab.TabSelectedTitleColor;if(tab.TabSelectedBGColor)this.Report.Tab.TabSelectedBGColor=tab.TabSelectedBGColor;if(tab.TabMoveOnTitleColor)this.Report.Tab.TabMoveOnTitleColor=tab.TabMoveOnTitleColor;if(tab.TabBGColor)this.Report.Tab.TabBGColor=tab.TabBGColor;}if(item.PageInfo){var pageinfo=item.PageInfo;if(pageinfo.Font){var font=pageinfo.Font;if(font.Name)this.Report.PageInfo.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))this.Report.PageInfo.Font.Size=font.Size;}if(pageinfo.TextColor)this.Report.PageInfo.TextColor=pageinfo.TextColor;if(pageinfo.BGColor)this.Report.PageInfo.BGColor=pageinfo.BGColor;if(pageinfo.Mergin){var mergin=pageinfo.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))this.Report.PageInfo.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))this.Report.PageInfo.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))this.Report.PageInfo.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))this.Report.PageInfo.Mergin.Bottom=mergin.Bottom;}}if(item.DragRow){var dragRow=item.DragRow;if(dragRow.Color)this.Report.DragRow.Color=dragRow.Color;if(dragRow.TextColor)this.Report.DragRow.TextColor=dragRow.TextColor;if(dragRow.MoveRowColor)this.Report.DragRow.MoveRowColor=dragRow.MoveRowColor;if(dragRow.SrcRowColor)this.Report.DragRow.SrcRowColor=dragRow.SrcRowColor;}}if(style.SelectedChart){var item=style.SelectedChart;if(IFrameSplitOperator.IsNumber(item.LineWidth))this.SelectedChart.LineWidth=item.LineWidth;if(IFrameSplitOperator.IsNumber(item.Radius))this.SelectedChart.Radius=item.Radius;if(IFrameSplitOperator.IsNumber(item.MinSpace))this.SelectedChart.MinSpace=item.MinSpace;if(item.LineColor)this.SelectedChart.LineColor=item.LineColor;if(item.LineColor)this.SelectedChart.BGColor=item.BGColor;}if(style.DragMovePaint){var item=style.DragMovePaint;if(item.TextColor)this.DragMovePaint.TextColor=item.TextColor;if(item.Font)this.DragMovePaint.Font=item.Font;}if(IFrameSplitOperator.IsNumber(style.ToolbarButtonStyle))this.ToolbarButtonStyle=style.ToolbarButtonStyle;if(style.Buttons){var buttons=style.Buttons;T_SetButtonStyle(buttons.CloseOverlayIndex,this.Buttons.CloseOverlayIndex);T_SetButtonStyle(buttons.CloseWindow,this.Buttons.CloseWindow);T_SetButtonStyle(buttons.ChangeIndex,this.Buttons.ChangeIndex);T_SetButtonStyle(buttons.OverlayIndex,this.Buttons.OverlayIndex);T_SetButtonStyle(buttons.ModifyIndexParam,this.Buttons.ModifyIndexParam);T_SetButtonStyle(buttons.MaxMinWindow,this.Buttons.MaxMinWindow);T_SetButtonStyle(buttons.TitleWindow,this.Buttons.TitleWindow);T_SetButtonStyle(buttons.ExportData,this.Buttons.ExportData);}if(style.ChartDrawVolProfile){var item=style.ChartDrawVolProfile;if(item.UpVolColor)this.ChartDrawVolProfile.UpVolColor=item.UpVolColor;if(item.DownVolColor)this.ChartDrawVolProfile.DownVolColor=item.DownVolColor;if(item.AreaUpColor)this.ChartDrawVolProfile.AreaUpColor=item.AreaUpColor;if(item.AreaDonwColor)this.ChartDrawVolProfile.AreaDonwColor=item.AreaDonwColor;if(item.BGColor)this.ChartDrawVolProfile.BGColor=item.BGColor;if(item.BorderColor)this.ChartDrawVolProfile.BorderColor=item.BorderColor;if(item.VolLineColor)this.ChartDrawVolProfile.VolLineColor=item.VolLineColor;if(item.Text){if(item.Text.Color)this.ChartDrawVolProfile.Text.Color=item.Text.Color;if(item.Text.Family)this.ChartDrawVolProfile.Text.Family=item.Text.Family;if(IFrameSplitOperator.IsNumber(item.Text.FontMaxSize))this.ChartDrawVolProfile.Text.FontMaxSize=item.Text.FontMaxSize;if(IFrameSplitOperator.IsNumber(item.Text.FontMinSize))this.ChartDrawVolProfile.Text.FontMinSize=item.Text.FontMinSize;}}if(style.DisableLogo===true){if(this.FrameLogo)this.FrameLogo.Text=null;}};}var g_JSChartResource=new JSChartResource();/////////////////////////////////////////////////////////////////////////////////
|
|
5266
5267
|
//
|
|
5267
5268
|
//
|
|
5268
5269
|
//
|
|
@@ -9616,6 +9617,7 @@ GetMarginJobID:function GetMarginJobID(value){var dataMap=new _map2.default([[1,
|
|
|
9616
9617
|
GetSectionFinanceID:function GetSectionFinanceID(value){var dataMap=new _map2.default([['流动资产',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_01],['货币资金',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_02],['存货',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_03],['流动负债',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_04],['非流动负债',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_05],['三项费用',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_06],['投资收益',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_07],['归母净利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_08],['扣非净利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_09],['扣非每股收益',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_10],['加权平均净资产收益',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_11],['在建工程',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_12],['累计折旧',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_13],['少数股东利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_14],['汇兑损益',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_15],['坏账计提',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_16],['固定资产',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_17],['当期折旧',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_18],['营业总收入',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_19],['主营业务利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_20],['营业利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_21],['净利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_22],['应收账款',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_23],['财务费用',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_24],['经营性现金流',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_25],['资产总计',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_26],['负债总计',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_27],['所有者权益总计',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_28],['毛利率',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_29],['每股资本公积金',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_30],['每股未分配利润',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_31],['每股收益',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_32],['每股净资产',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_33],['每股经营性现金流',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_34],['扣非净利润涨幅',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_35],['扣非净利润涨速',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_36],['净利润涨幅',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_37],['资产负债率',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_38],['利润同比',JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SECTION_F_39]]);if(dataMap.has(value))return dataMap.get(value);return null;},//获取报告期 2018, 1
|
|
9617
9618
|
GetSectionReportPeriod:function GetSectionReportPeriod(year,quarter){if(year>=2000&&quarter>=1&&quarter<=4)return{Year:year,Quarter:quarter};return null;}};function JSExecute(ast,option){var _this37=this;this.AST=ast;//语法树
|
|
9618
9619
|
this.ErrorHandler=new ErrorHandler();this.VarTable=new _map2.default();//变量表
|
|
9620
|
+
this.VarDrawTable=new _map2.default();//绘图变量表
|
|
9619
9621
|
this.OutVarTable=[];//输出变量
|
|
9620
9622
|
this.Arguments=[];this.ErrorCallback;//执行错误回调
|
|
9621
9623
|
this.GetEventCallback;this.IsUsePageData=false;this.IndexCtrl;this.Debug=0;//0=非debug模式 1=debug 模式
|
|
@@ -9659,7 +9661,8 @@ this.ConstVarTable=new _map2.default([//个股数据
|
|
|
9659
9661
|
['DRAWNULL',null],["NULL",null],["MACHINEDATE",null],["MACHINETIME",null],["MACHINEWEEK",null]]);this.SymbolData=new JSSymbolData(this.AST,option,this);this.Algorithm=new JSAlgorithm(this.ErrorHandler,this.SymbolData);this.Draw=new JSDraw(this.ErrorHandler,this.SymbolData);this.JobList=[];//执行的任务队列
|
|
9660
9662
|
this.UpdateUICallback=null;//回调
|
|
9661
9663
|
this.CallbackParam=null;this.IsSectionMode=false;if(option){if(option.Callback)this.UpdateUICallback=option.Callback;if(option.CallbackParam){this.CallbackParam=option.CallbackParam;if(this.CallbackParam.HQChart)this.GetEventCallback=function(id){return _this37.CallbackParam.HQChart.GetEventCallback(id);};}if(option.Arguments)this.Arguments=option.Arguments;if(option.IsSectionMode)this.IsSectionMode=option.IsSectionMode;if(option.Self)this.IndexCtrl=option.Self;//调试模式信息
|
|
9662
|
-
if(IFrameSplitOperator.IsNumber(option.Debug))this.Debug=option.Debug;if(option.DebugFilter)this.DebugFilter=option.DebugFilter;}this.Execute=function(){this.OutVarTable=[];this.VarTable=new _map2.default();
|
|
9664
|
+
if(IFrameSplitOperator.IsNumber(option.Debug))this.Debug=option.Debug;if(option.DebugFilter)this.DebugFilter=option.DebugFilter;}this.Execute=function(){this.OutVarTable=[];this.VarTable=new _map2.default();this.VarDrawTable=new _map2.default();//绘图变量表
|
|
9665
|
+
JSConsole.Complier.Log('[JSExecute::Execute] Load Arguments',this.Arguments);for(var _i143 in this.Arguments)//预定义的变量
|
|
9663
9666
|
{var _item22=this.Arguments[_i143];this.VarTable.set(_item22.Name,_item22.Value);}this.RunNextJob();};this.RunNextJob=function(){if(this.JobList.length<=0)return;JSConsole.Complier.Log('[JSExecute::Execute] JobList',this.JobList);var jobItem=this.JobList.shift();switch(jobItem.ID){case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_DATA:return this.SymbolData.GetSymbolData();case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_PERIOD_DATA:return this.SymbolData.GetSymbolPeriodData(jobItem);case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_DATA:return this.SymbolData.GetIndexData();case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_LATEST_INDEX_DATA:return this.SymbolData.GetLatestIndexData();case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_INCREASE_DATA:return this.SymbolData.GetIndexIncreaseData(jobItem);case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_LATEST_DATA:return this.SymbolData.GetLatestData(jobItem);case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_VOLR_DATA://量比
|
|
9664
9667
|
return this.SymbolData.GetVolRateData(jobItem);case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_OTHER_SYMBOL_DATA://指定股票数据
|
|
9665
9668
|
return this.SymbolData.GetOtherSymbolData(jobItem);case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_RELEASE_DATE_DATA:return this.SymbolData.GetCompanyReleaseDate(jobItem.ID);case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_MARGIN_BALANCE:case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_MARGIN_RATE:case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_MARGIN_BUY_BALANCE://买入信息-融资余额
|
|
@@ -9692,29 +9695,31 @@ this.ReadVariable=function(name,node){if(this.ConstVarTable.has(name)){var data=
|
|
|
9692
9695
|
if(this.VarTable.has(name))return this.VarTable.get(name);if(name.indexOf('#')>0){var aryPeriod=name.split('#');return this.SymbolData.GetSymbolPeriodCacheData(aryPeriod[0],aryPeriod[1]);}if(name.indexOf("COLOR")==0){var colorValue=JSComplier.ColorVarToRGB(name);if(colorValue)return colorValue;}this.ThrowUnexpectedNode(node,'变量'+name+'不存在',name);return null;};this.ReadMemberVariable=function(node){var obj=node.Object;var member=node.Property;var maiObj=void 0;if(obj.Type==Syntax.BinaryExpression||obj.Type==Syntax.LogicalExpression)maiObj=this.VisitBinaryExpression(obj);else if(obj.Type==Syntax.CallExpression)maiObj=this.VisitCallExpression(obj);else maiObj=this.GetNodeValue(obj);if(!maiObj)return null;var value=maiObj[member.Name];if(value)return value;return null;};//单数据转成数组 个数和历史数据一致
|
|
9693
9696
|
this.SingleDataToArrayData=function(value){var count=this.SymbolData.Data.Data.length;var result=[];for(var _i144=0;_i144<count;++_i144){result[_i144]=value;}return result;};this.RunAST=function(){if(!this.AST)this.ThrowError();if(!this.AST.Body)this.ThrowError();for(var _i145=0;_i145<this.AST.Body.length;++_i145){var _item23=this.AST.Body[_i145];this.RunASTNode(_item23,_i145);if(this.Interrupt&&this.Interrupt.Exit){JSConsole.Complier.Log('[JSExecute::RunAST] Interrupt',this.Interrupt);//中断退出
|
|
9694
9697
|
break;}}JSConsole.Complier.Log('[JSExecute::RunAST]',this.VarTable);return this.OutVarTable;};this.RunASTNode=function(item,lineID){this.VisitNode(item);var i=lineID;//输出变量
|
|
9695
|
-
if(item.Type==Syntax.ExpressionStatement&&item.Expression){if(item.Expression.Type==Syntax.AssignmentExpression){if(item.Expression.Operator==':'&&item.Expression.Left){var assignmentItem=item.Expression;var _varName=assignmentItem.Left.Name;var _outVar=this.VarTable.get(_varName);
|
|
9698
|
+
if(item.Type==Syntax.ExpressionStatement&&item.Expression){if(item.Expression.Type==Syntax.AssignmentExpression){if(item.Expression.Operator==':'&&item.Expression.Left){var assignmentItem=item.Expression;var _varName=assignmentItem.Left.Name;var _outVar=this.VarTable.get(_varName);if(this.VarDrawTable.has(_varName))//绘图函数赋值
|
|
9699
|
+
{var draw=this.VarDrawTable.get(_varName);this.OutVarTable.push({Name:draw.Name,Draw:draw,Type:1});}else{var type=0;if(_outVar&&(typeof _outVar==='undefined'?'undefined':(0,_typeof3.default)(_outVar))=='object'&&_outVar.__Type__=='Object'){type=1000;}else if(!this.IsSectionMode&&!Array.isArray(_outVar)){if(typeof _outVar=='string'){var floatValue=parseFloat(_outVar);if(IFrameSplitOperator.IsNumber(floatValue)){_outVar=this.SingleDataToArrayData(floatValue);}else{_outVar=this.SingleDataToArrayData(_outVar);type=1001;}}else _outVar=this.SingleDataToArrayData(_outVar);}this.OutVarTable.push({Name:_varName,Data:_outVar,Type:type});}}}else if(item.Expression.Type==Syntax.CallExpression){var callItem=item.Expression;if(this.Draw.IsDrawFunction(callItem.Callee.Name)){var _draw=callItem.Draw;_draw.Name=callItem.Callee.Name;this.OutVarTable.push({Name:_draw.Name,Draw:_draw,Type:1});}else if(callItem.Callee.Name==="IFC"&&callItem.Draw){var _draw2=callItem.Draw;_draw2.Name=_draw2.DrawType;this.OutVarTable.push({Name:_draw2.Name,Draw:_draw2,Type:1});}else{var _outVar2=callItem.Out;varName='__temp_c_'+callItem.Callee.Name+'_'+i+'__';var type=0;if(!Array.isArray(_outVar2))_outVar2=this.SingleDataToArrayData(_outVar2);this.OutVarTable.push({Name:varName,Data:_outVar2,Type:type,NoneName:true});}}else if(item.Expression.Type==Syntax.Identifier){var _varName2=item.Expression.Name;var _outVar3=this.ReadVariable(_varName2,item.Expression);var type=0;if(_outVar3&&(typeof _outVar3==='undefined'?'undefined':(0,_typeof3.default)(_outVar3))=='object'&&_outVar3.__Type__=='Object'){type=1000;}else if(!this.IsSectionMode&&!Array.isArray(_outVar3)){if(typeof _outVar3=='string')_outVar3=this.SingleDataToArrayData(parseFloat(_outVar3));else _outVar3=this.SingleDataToArrayData(_outVar3);}_varName2="__temp_i_"+i+"__";this.OutVarTable.push({Name:_varName2,Data:_outVar3,Type:type,NoneName:true});}else if(item.Expression.Type==Syntax.Literal)//常量
|
|
9696
9700
|
{var _outVar4=item.Expression.Value;if(IFrameSplitOperator.IsString(_outVar4)&&_outVar4.indexOf("$")>0)_outVar4=this.SymbolData.GetOtherSymolCacheData({Literal:_outVar4});varName="__temp_li_"+i+"__";var type=0;this.OutVarTable.push({Name:varName,Data:_outVar4,Type:type,NoneName:true});}else if(item.Expression.Type==Syntax.BinaryExpression){var varName="__temp_b_"+i+"__";var _outVar5=item.Expression.Out;var type=0;if(!Array.isArray(_outVar5))_outVar5=this.SingleDataToArrayData(_outVar5);this.OutVarTable.push({Name:varName,Data:_outVar5,Type:type,NoneName:true});}else if(item.Expression.Type==Syntax.LogicalExpression)//逻辑语句 如 T1 AND T2
|
|
9697
|
-
{var varName="__temp_l_"+i+"__";var _outVar6=item.Expression.Out;var type=0;if(!Array.isArray(_outVar6))_outVar6=this.SingleDataToArrayData(_outVar6);this.OutVarTable.push({Name:varName,Data:_outVar6,Type:type,NoneName:true});}else if(item.Expression.Type==Syntax.SequenceExpression){var _varName3=void 0;var
|
|
9701
|
+
{var varName="__temp_l_"+i+"__";var _outVar6=item.Expression.Out;var type=0;if(!Array.isArray(_outVar6))_outVar6=this.SingleDataToArrayData(_outVar6);this.OutVarTable.push({Name:varName,Data:_outVar6,Type:type,NoneName:true});}else if(item.Expression.Type==Syntax.SequenceExpression){var _varName3=void 0;var _draw3=void 0;var color=void 0,upColor=void 0,downColor=void 0;var lineWidth=void 0;var colorStick=false;var pointDot=false;var upDownDot=false;var circleDot=false;var lineStick=false;var stick=false;var volStick=false;var stepLine=false;var isShow=true;var isExData=false;var isDotLine=false;var isOverlayLine=false;//叠加线
|
|
9698
9702
|
var isNoneName=false;var isShowTitle=true;//显示在位置之上,对于DRAWTEXT和DRAWNUMBER等函数有用,放在语句的最后面(不能与LINETHICK等函数共用),比如:
|
|
9699
9703
|
//DRAWNUMBER(CLOSE>OPEN,HIGH,CLOSE),DRAWABOVE;
|
|
9700
9704
|
var isDrawAbove=false;var isDrawCenter=false;var isDrawBelow=false;//VALIGN0,VALIGN1,VALIGN2 设置文字垂直对齐方式(上中下)
|
|
9701
9705
|
//ALIGN0,ALIGN1,ALIGN2 设置文字水平对齐方式(左中右)
|
|
9702
9706
|
var drawAlign=-1,drawVAlign=-1;var fontSize=-1;var bgConfig=null;//背景设置
|
|
9703
|
-
var vLineConfig=null;for(var _j13=0;_j13<item.Expression.Expression.length;++_j13){var itemExpression=item.Expression.Expression[_j13];if(itemExpression.Type==Syntax.AssignmentExpression&&itemExpression.Operator==':'&&itemExpression.Left){if(_j13==0){_varName3=itemExpression.Left.Name;var varValue=this.VarTable.get(_varName3);if(
|
|
9707
|
+
var vLineConfig=null;for(var _j13=0;_j13<item.Expression.Expression.length;++_j13){var itemExpression=item.Expression.Expression[_j13];if(itemExpression.Type==Syntax.AssignmentExpression&&itemExpression.Operator==':'&&itemExpression.Left){if(_j13==0){_varName3=itemExpression.Left.Name;var varValue=this.VarTable.get(_varName3);if(this.VarDrawTable.has(_varName3))//绘图函数赋值
|
|
9708
|
+
{_draw3=this.VarDrawTable.get(_varName3);}else if(!Array.isArray(varValue)){varValue=this.SingleDataToArrayData(varValue);this.VarTable.set(_varName3,varValue);//把常量放到变量表里
|
|
9704
9709
|
}}else{}}else if(itemExpression.Type==Syntax.Identifier){var value=itemExpression.Name;if(value==='COLORSTICK')colorStick=true;else if(value==='POINTDOT')pointDot=true;else if(value==='CIRCLEDOT')circleDot=true;else if(value==='DOTLINE')isDotLine=true;else if(value=="UPDOWNDOT")upDownDot=true;else if(value==='LINESTICK')lineStick=true;else if(value==='STICK')stick=true;else if(value==='VOLSTICK')volStick=true;else if(value==="DRAWABOVE")isDrawAbove=true;else if(value==="DRAWCENTER")isDrawCenter=true;else if(value=="DRAWBELOW")isDrawBelow=true;else if(value=="STEPLINE")stepLine=true;else if(value.indexOf('COLOR')==0)color=value;else if(value.indexOf('LINETHICK')==0)lineWidth=value;else if(value=="ALIGN0")drawAlign=0;else if(value=="ALIGN1")drawAlign=1;else if(value=="ALIGN2")drawAlign=2;else if(value=="VALIGN0")drawVAlign=0;else if(value=="VALIGN1")drawVAlign=1;else if(value=="VALIGN2")drawVAlign=2;else if(value.indexOf('NODRAW')==0)isShow=false;else if(value.indexOf('EXDATA')==0)isExData=true;//扩展数据, 不显示再图形里面
|
|
9705
9710
|
else if(value.indexOf('LINEOVERLAY')==0)isOverlayLine=true;else if(value.indexOf("NOTEXT")==0||value.indexOf("NOTITLE")==0)isShowTitle=false;//标题不显示
|
|
9706
9711
|
else if(value.indexOf("FONTSIZE")==0){var strFontSize=value.replace("FONTSIZE","");fontSize=parseInt(strFontSize);}else{if(_j13==0){_varName3=itemExpression.Name;var _varValue=this.ReadVariable(_varName3,itemExpression);if(!Array.isArray(_varValue))_varValue=this.SingleDataToArrayData(_varValue);_varName3="__temp_si_"+i+"__";isNoneName=true;this.VarTable.set(_varName3,_varValue);//放到变量表里
|
|
9707
9712
|
}}}else if(itemExpression.Type==Syntax.Literal)//常量
|
|
9708
9713
|
{if(_j13==0){var aryValue=this.SingleDataToArrayData(itemExpression.Value);_varName3=itemExpression.Value.toString();this.VarTable.set(_varName3,aryValue);//把常量放到变量表里
|
|
9709
|
-
}}else if(itemExpression.Type==Syntax.CallExpression){if(_j13==0){if(this.Draw.IsDrawFunction(itemExpression.Callee.Name)){
|
|
9714
|
+
}}else if(itemExpression.Type==Syntax.CallExpression){if(_j13==0){if(this.Draw.IsDrawFunction(itemExpression.Callee.Name)){_draw3=itemExpression.Draw;_draw3.Name=itemExpression.Callee.Name;}else{var _varValue2=itemExpression.Out;_varName3='__temp_sc_'+itemExpression.Callee.Name+'_'+i+'__';isNoneName=true;this.VarTable.set(_varName3,_varValue2);}}else{if(itemExpression.Callee.Name=="RGB"||itemExpression.Callee.Name=="RGBA"){color=itemExpression.Out;}else if(itemExpression.Callee.Name=="UPCOLOR"){upColor=itemExpression.Out;}else if(itemExpression.Callee.Name=="DOWNCOLOR"){downColor=itemExpression.Out;}else if(itemExpression.Callee.Name=="SOUND"){var event=this.GetSoundEvent();if(event){}_varName3=null;}else if(itemExpression.Callee.Name=="ICON"){var drawCond=this.VarTable.get(_varName3);if(drawCond){_draw3=this.GetOutIconData(drawCond,itemExpression.Draw);if(_draw3)_draw3.Name=itemExpression.Callee.Name;}_varName3=null;}else if(itemExpression.Callee.Name=="BACKGROUND"){bgConfig=itemExpression.Draw;_varName3=null;}else if(itemExpression.Callee.Name=="CKLINE"){vLineConfig=itemExpression.Draw;_varName3=null;}}}else if(itemExpression.Type==Syntax.BinaryExpression){if(_j13==0){_varName3="__temp_sb_"+i+"__";var _aryValue=itemExpression.Out;isNoneName=true;this.VarTable.set(_varName3,_aryValue);}}}if(pointDot&&_varName3)//圆点
|
|
9710
9715
|
{var _outVar7=this.VarTable.get(_varName3);if(!Array.isArray(_outVar7))_outVar7=this.SingleDataToArrayData(_outVar7);var _value4={Name:_varName3,Data:_outVar7,Radius:g_JSChartResource.POINTDOT.Radius,Type:3};if(color)_value4.Color=color;if(lineWidth)_value4.LineWidth=lineWidth;this.OutVarTable.push(_value4);}else if(circleDot&&_varName3)//圆点
|
|
9711
9716
|
{var _outVar8=this.VarTable.get(_varName3);if(!Array.isArray(_outVar8))_outVar8=this.SingleDataToArrayData(_outVar8);var _value5={Name:_varName3,Data:_outVar8,Radius:g_JSChartResource.CIRCLEDOT.Radius,Type:3};if(color)_value5.Color=color;if(lineWidth)_value5.LineWidth=lineWidth;this.OutVarTable.push(_value5);}else if(upDownDot&&_varName3)//彩色点
|
|
9712
9717
|
{var _outVar9=this.VarTable.get(_varName3);if(!Array.isArray(_outVar9))_outVar9=this.SingleDataToArrayData(_outVar9);var _value6={Name:_varName3,Data:_outVar9,Radius:g_JSChartResource.CIRCLEDOT.Radius,Type:3,UpDownDot:true};if(color)_value6.Color=color;if(lineWidth)_value6.LineWidth=lineWidth;this.OutVarTable.push(_value6);}else if(lineStick&&_varName3)//LINESTICK 同时画出柱状线和指标线
|
|
9713
9718
|
{var _outVar10=this.VarTable.get(_varName3);var _value7={Name:_varName3,Data:_outVar10,Type:4};if(color)_value7.Color=color;if(lineWidth)_value7.LineWidth=lineWidth;this.OutVarTable.push(_value7);}else if(stick&&_varName3)//STICK 画柱状线
|
|
9714
9719
|
{var _outVar11=this.VarTable.get(_varName3);var _value8={Name:_varName3,Data:_outVar11,Type:5};if(color)_value8.Color=color;if(lineWidth)_value8.LineWidth=lineWidth;this.OutVarTable.push(_value8);}else if(volStick&&_varName3)//VOLSTICK 画彩色柱状线
|
|
9715
9720
|
{var _outVar12=this.VarTable.get(_varName3);var _value9={Name:_varName3,Data:_outVar12,Type:6};if(color)_value9.Color=color;if(upColor)_value9.UpColor=upColor;if(downColor)_value9.DownColor=downColor;this.OutVarTable.push(_value9);}else if(colorStick&&_varName3)//CYW: SUM(VAR4,10)/10000, COLORSTICK; 画上下柱子
|
|
9716
|
-
{var _outVar13=this.VarTable.get(_varName3);var _value10={Name:_varName3,Data:_outVar13,Color:color,Type:2};if(lineWidth)_value10.LineWidth=lineWidth;if(color)_value10.Color=color;this.OutVarTable.push(_value10);}else if(_varName3&&color){var _outVar14=this.VarTable.get(_varName3);if(!Array.isArray(_outVar14))_outVar14=this.SingleDataToArrayData(_outVar14);var _value11={Name:_varName3,Data:_outVar14,Color:color,Type:0};if(lineWidth)_value11.LineWidth=lineWidth;if(isShow==false)_value11.IsShow=false;if(isExData==true)_value11.IsExData=true;if(isDotLine==true)_value11.IsDotLine=true;if(isOverlayLine==true)_value11.IsOverlayLine=true;if(isNoneName==true)_value11.NoneName=true;if(isShowTitle==false)_value11.IsShowTitle=false;if(stepLine==true)_value11.Type=7;this.OutVarTable.push(_value11);}else if(
|
|
9717
|
-
{var outVar={Name:
|
|
9721
|
+
{var _outVar13=this.VarTable.get(_varName3);var _value10={Name:_varName3,Data:_outVar13,Color:color,Type:2};if(lineWidth)_value10.LineWidth=lineWidth;if(color)_value10.Color=color;this.OutVarTable.push(_value10);}else if(_varName3&&color){var _outVar14=this.VarTable.get(_varName3);if(!Array.isArray(_outVar14))_outVar14=this.SingleDataToArrayData(_outVar14);var _value11={Name:_varName3,Data:_outVar14,Color:color,Type:0};if(lineWidth)_value11.LineWidth=lineWidth;if(isShow==false)_value11.IsShow=false;if(isExData==true)_value11.IsExData=true;if(isDotLine==true)_value11.IsDotLine=true;if(isOverlayLine==true)_value11.IsOverlayLine=true;if(isNoneName==true)_value11.NoneName=true;if(isShowTitle==false)_value11.IsShowTitle=false;if(stepLine==true)_value11.Type=7;this.OutVarTable.push(_value11);}else if(_draw3)//画图函数
|
|
9722
|
+
{var outVar={Name:_draw3.Name,Draw:_draw3,Type:1};if(color)outVar.Color=color;if(isDotLine==true)outVar.IsDotLine=true;if(lineWidth)outVar.LineWidth=lineWidth;if(isDrawAbove)outVar.IsDrawAbove=true;if(isDrawCenter)outVar.IsDrawCenter=true;if(isDrawBelow)outVar.IsDrawBelow=true;if(drawAlign>=0)outVar.DrawAlign=drawAlign;if(drawVAlign>=0)outVar.DrawVAlign=drawVAlign;if(fontSize>0)outVar.DrawFontSize=fontSize;if(bgConfig)outVar.Background=bgConfig;if(vLineConfig)outVar.VerticalLine=vLineConfig;this.OutVarTable.push(outVar);}else if(_varName3){var _outVar15=this.VarTable.get(_varName3);var _value12={Name:_varName3,Data:_outVar15,Type:0};if(color)_value12.Color=color;if(lineWidth)_value12.LineWidth=lineWidth;if(isShow==false)_value12.IsShow=false;if(isExData==true)_value12.IsExData=true;if(isDotLine==true)_value12.IsDotLine=true;if(isOverlayLine==true)_value12.IsOverlayLine=true;if(isShowTitle==false)_value12.IsShowTitle=false;if(stepLine==true)_value12.Type=7;this.OutVarTable.push(_value12);}}}};this.GetOutIconData=function(cond,iconDraw){if(Array.isArray(cond)){for(var i=0;i<cond.length&&i<iconDraw.DrawData.length;++i){var item=cond[i];if(item<=0)iconDraw.DrawData[i]=null;}return iconDraw;}if(cond)return iconDraw;return null;};this.GetSoundEvent=function(){if(!this.GetEventCallback)return null;return this.GetEventCallback(JSCHART_EVENT_ID.ON_PLAY_SOUND);};this.Run=function(){try{var data=this.RunAST();//执行脚本
|
|
9718
9723
|
JSConsole.Complier.Log('[JSComplier.Run] execute finish',data);if(this.IndexCtrl)this.IndexCtrl.Status=0;if(this.UpdateUICallback){JSConsole.Complier.Log('[JSComplier.Run] invoke UpdateUICallback.');if(this.CallbackParam&&this.CallbackParam.Job&&this.CallbackParam.Job.ID==JS_EXECUTE_JOB_ID.JOB_EXECUTE_INDEX){this.UpdateUICallback(data,this.CallbackParam,this.SymbolData);}else{if(this.CallbackParam&&this.CallbackParam.Self&&this.CallbackParam.Self.ClassName==='ScriptIndexConsole')this.CallbackParam.JSExecute=this;if(this.IsUsePageData==true)this.CallbackParam.Self.IsUsePageData=true;this.UpdateUICallback(data,this.CallbackParam);}}}catch(error){JSConsole.Complier.Log(error);if(error.Job){JSConsole.Complier.Log('[JSComplier.Run] download job and reexectue',error.Job);this.JobList.push(error.Job);this.JobList.push({ID:JS_EXECUTE_JOB_ID.JOB_RUN_SCRIPT});this.Execute();}else if(this.ErrorCallback){if(this.IndexCtrl)this.IndexCtrl.Status=0;this.ErrorCallback(error,this.CallbackParam);}}};this.DebugRun_End=function(){var data=this.OutVarTable;JSConsole.Complier.Log('[JSComplier.DebugRun_End] execute finish',data);if(this.IndexCtrl)this.IndexCtrl.Status=0;if(this.UpdateUICallback){JSConsole.Complier.Log('[JSComplier.DebugRun_End] invoke UpdateUICallback.');if(this.CallbackParam&&this.CallbackParam.Job&&this.CallbackParam.Job.ID==JS_EXECUTE_JOB_ID.JOB_EXECUTE_INDEX){this.UpdateUICallback(data,this.CallbackParam,this.SymbolData);}else{if(this.CallbackParam&&this.CallbackParam.Self&&this.CallbackParam.Self.ClassName==='ScriptIndexConsole')this.CallbackParam.JSExecute=this;if(this.IsUsePageData==true)this.CallbackParam.Self.IsUsePageData=true;this.UpdateUICallback(data,this.CallbackParam);}}};this.DebugRun_Next=function(debugCtrl){var _this38=this;if(debugCtrl.ExeLine<debugCtrl.LineCount){var item=this.AST.Body[debugCtrl.ExeLine];this.RunASTNode(item);++debugCtrl.ExeLine;this.DebugFilter(debugCtrl,function(){_this38.DebugRun_Next(debugCtrl);});}else{this.DebugRun_End();debugCtrl.Status=2;this.DebugFilter(debugCtrl,null);}};//debug模式
|
|
9719
9724
|
this.DebugRun=function(){var _this39=this;try{if(!this.AST)this.ThrowError();if(!this.AST.Body)this.ThrowError();var debugCtrl={LineCount:this.AST.Body.length,ExeLine:0,Self:this,Status:1};this.DebugFilter(debugCtrl,function(){_this39.DebugRun_Next(debugCtrl);});}catch(error){if(this.ErrorCallback){if(this.IndexCtrl)this.IndexCtrl.Status=0;this.ErrorCallback(error,this.CallbackParam);}}};this.VisitNode=function(node){switch(node.Type){case Syntax.SequenceExpression:this.VisitSequenceExpression(node);break;case Syntax.ExpressionStatement:this.VisitNode(node.Expression);break;case Syntax.AssignmentExpression:this.VisitAssignmentExpression(node);break;case Syntax.BinaryExpression:case Syntax.LogicalExpression:this.VisitBinaryExpression(node);break;case Syntax.CallExpression:this.VisitCallExpression(node);break;}};this.VisitSequenceExpression=function(node){for(var _i146 in node.Expression){var _item24=node.Expression[_i146];this.VisitNode(_item24);}};//函数调用
|
|
9720
9725
|
this.VisitCallExpression=function(node){var funcName=node.Callee.Name;var args=[];for(var i=0;i<node.Arguments.length;++i){var item=node.Arguments[i];var value;if(funcName==="IFC"&&i>=1)break;//IFC先处理第1个条件参数
|
|
@@ -9722,8 +9727,8 @@ if(item.Type==Syntax.BinaryExpression||item.Type==Syntax.LogicalExpression)value
|
|
|
9722
9727
|
var bResult=this.Algorithm.IFC(args[0]);var item=bResult?node.Arguments[1]:node.Arguments[2];var value;if(item.Type==Syntax.BinaryExpression||item.Type==Syntax.LogicalExpression)value=this.VisitBinaryExpression(item);else if(item.Type==Syntax.CallExpression)value=this.VisitCallExpression(item);else value=this.GetNodeValue(item);node.Out=value;if(item.Draw)node.Draw=item.Draw;return node.Out;}//JSConsole.Complier.Log('[JSExecute::VisitCallExpression]' , funcName, '(', args.toString() ,')');
|
|
9723
9728
|
if(g_JSComplierResource.IsCustomFunction(funcName)){var data=this.Algorithm.CallCustomFunction(funcName,args,this.SymbolData,node);node.Out=[];node.Draw=null;if(data){if(data.Out)node.Out=data.Out;if(data.Draw)node.Draw=data.Draw;}return node.Out;}switch(funcName){case'DYNAINFO'://行情最新数据
|
|
9724
9729
|
node.Out=this.SymbolData.GetLatestCacheData(args[0]);break;case'STICKLINE':node.Draw=this.Draw.STICKLINE(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case'DRAWTEXT':node.Draw=this.Draw.DRAWTEXT(args[0],args[1],args[2]);node.Out=[];break;case'DRAWTEXT_FIX':node.Draw=this.Draw.DRAWTEXT_FIX(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case'SUPERDRAWTEXT':node.Draw=this.Draw.SUPERDRAWTEXT(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case'DRAWICON':node.Draw=this.Draw.DRAWICON(args[0],args[1],args[2]);node.Out=[];break;case"ICON":node.Draw=this.Draw.ICON(args[0],args[1]);node.Out=[];break;case"BACKGROUND":node.Draw=this.Draw.BACKGROUND(args[0],args[1],args[2],args[3],args[4],args[5]);node.Out=[];break;case"CKLINE":node.Draw=this.Draw.CKLINE(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case'DRAWLINE':node.Draw=this.Draw.DRAWLINE(args[0],args[1],args[2],args[3],args[4]);node.Out=node.Draw.DrawData;break;case'DRAWBAND':node.Draw=this.Draw.DRAWBAND(args[0],args[1],args[2],args[3]);node.Out=[];break;case"FILLRGN":if(args.length>=4)node.Draw=this.Draw.FILLRGN2(args);else node.Draw=this.Draw.FILLRGN(args[0],args[1],args[2]);node.Out=[];break;case"FLOATRGN":node.Draw=this.Draw.FLOATRGN(args);node.Out=[];break;case"FILLTOPRGN":node.Draw=this.Draw.FILLBGRGN(1,args);node.Out=[];break;case"FILLBOTTOMRGN":node.Draw=this.Draw.FILLBGRGN(0,args);node.Out=[];break;case"FILLVERTICALRGN":node.Draw=this.Draw.FILLVERTICALRGN(args);node.Out=[];break;case'DRAWKLINE':case"DRAWKLINE1":node.Draw=this.Draw.DRAWKLINE(args[0],args[1],args[2],args[3]);node.Out=[];break;case'DRAWKLINE_IF':node.Draw=this.Draw.DRAWKLINE_IF(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case"DRAWCOLORKLINE":node.Draw=this.Draw.DRAWCOLORKLINE(args[0],args[1],args[2]);node.Out=[];break;case'PLOYLINE':case'POLYLINE':node.Draw=this.Draw.POLYLINE(args[0],args[1]);node.Out=node.Draw.DrawData;break;case'DRAWNUMBER':node.Draw=this.Draw.DRAWNUMBER(args[0],args[1],args[2],args[3]);node.Out=node.Draw.DrawData.Value;break;case"DRAWNUMBER_FIX":node.Draw=this.Draw.DRAWNUMBER_FIX(args[0],args[1],args[2],args[3],args[4]);node.Out=node.Draw.DrawData.Value;break;case"DRAWCHANNEL":node.Draw=this.Draw.DRAWCHANNEL(args[0],args[1],args[2],args[3],args[4],args[5],args[6]);node.Out=[];break;case'RGB':node.Out=this.Draw.RGB(args[0],args[1],args[2]);break;case"RGBA":node.Out=this.Draw.RGBA(args[0],args[1],args[2],args[3]);break;case"UPCOLOR":node.Out=this.Draw.UPCOLOR(args[0]);break;case"DOWNCOLOR":node.Out=this.Draw.DOWNCOLOR(args[0]);break;case'PARTLINE':node.Draw=this.Draw.PARTLINE(args);node.Out=[];break;case'DRAWGBK':node.Draw=this.Draw.DRAWGBK(args[0],args[1],args[2],args[3]);node.Out=[];break;case'DRAWGBK2':node.Draw=this.Draw.DRAWGBK2(args[0],args[1],args[2],args[3]);node.Out=[];break;case'DRAWTEXT_LINE':node.Draw=this.Draw.DRAWTEXT_LINE(args[0],args[1],args[2],args[3],args[4],args[5],args[6]);node.Out=[];break;case'DRAWRECTREL':node.Draw=this.Draw.DRAWRECTREL(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case"DRAWTEXTREL":node.Draw=this.Draw.DRAWTEXTREL(args[0],args[1],args[2]);node.Out=[];break;case"DRAWTEXTABS":node.Draw=this.Draw.DRAWTEXTABS(args[0],args[1],args[2]);node.Out=[];break;case"DRAWOVERLAYLINE":node.Draw=this.Draw.DRAWOVERLAYLINE(args[0],args[1],args[2]);node.Out=node.Draw.DrawData.Data;break;case"DRAWSL":node.Draw=this.Draw.DRAWSL(args[0],args[1],args[2],args[3],args[4]);node.Out=[];break;case"VERTLINE":node.Draw=this.Draw.VERTLINE(args[0],args[1]);node.Out=node.Draw.DrawData.Data;break;case"HORLINE":node.Draw=this.Draw.HORLINE(args[0],args[1],args[2],args[3]);node.Out=node.Draw.DrawData.Data;break;case'CODELIKE':node.Out=this.SymbolData.CODELIKE(args[0]);break;case'NAMELIKE':case"NAMEINCLUDE":node.Out=this.SymbolData.NAMELIKE(args[1]);break;case'REFDATE':node.Out=this.SymbolData.REFDATE(args[0],args[1]);break;case'FINANCE':node.Out=this.SymbolData.GetStockCacheData({FunctionName:funcName,Args:args,ArgCount:1,Node:node});break;case"FINVALUE":node.Out=this.SymbolData.GetStockCacheData({FunctionName:funcName,Args:args,ArgCount:1,Node:node});break;case"FINONE":node.Out=this.SymbolData.GetStockCacheData({FunctionName:funcName,Args:args,ArgCount:3,Node:node});break;case"GPJYVALUE":node.Out=this.SymbolData.GetStockCacheData({FunctionName:funcName,Args:args,ArgCount:3,Node:node});break;case"SCJYVALUE":node.Out=this.SymbolData.GetStockCacheData({FunctionName:funcName,Args:args,ArgCount:3,Node:node});break;case"MARGIN":node.Out=this.SymbolData.GetMarginCacheData(args[0],node);break;case"HK2SHSZ":node.Out=this.SymbolData.GetHKToSHSZCacheData(args[0],node);break;case"NEWS":node.Out=this.SymbolData.GetNewsAnalysisCacheData(args[0],node);break;case'UPCOUNT':case'DOWNCOUNT':node.Out=this.SymbolData.GetIndexIncreaseCacheData(funcName,args[0],node);break;case'SF':node.Out=this.SymbolData.GetSectionFinanceCacheData(args[0],args[1],args[2],node);break;case'LOADAPIDATA':node.Out=this.SymbolData.GetCustomApiData(args);break;case"STKINDI":node.Out=this.SymbolData.GetScriptIndexOutData(args,node);break;case"SOUND":node.Draw=this.Draw.SOUND(args[0]);node.Out=[];break;case"PLAYSOUND":node.Draw=this.Draw.PLAYSOUND(args[0],args[1]);node.Out=[];break;case'CLOSE':case'C':case'VOL':case'V':case'OPEN':case'O':case'HIGH':case'H':case'LOW':case'L':case'AMOUNT':case'AMO':node.Out=this.SymbolData.GetOtherSymolCacheData({FunctionName:funcName,Args:args});break;case"INBLOCK":node.Out=this.SymbolData.IsInBlock(args[0],node);break;case'COVER_C':case'COVER_O':case'COVER_H':case'COVER_L':case'COVER_A':case'COVER_V':if(args.length==2)return this.SymbolData.GetSymbolPeriodCacheData2(JSComplierHelper.GetConvertValueName(funcName),args[0],args[1]);return this.SymbolData.GetSymbolPeriodCacheData(JSComplierHelper.GetConvertValueName(funcName),args[0]);case"SYSPARAM":return this.SymbolData.SysParam(args[0],this);case"TESTSKIP":var bExit=this.Algorithm.TESTSKIP(args[0],node);node.Out=null;if(bExit){this.Interrupt.Exit=true;if(node&&node.Marker){var marker=node.Marker;this.Interrupt.Line=marker.Line;this.Interrupt.Index=marker.Index;this.Interrupt.Column=marker.Column;}}break;default:node.Out=this.Algorithm.CallFunction(funcName,args,node,this.SymbolData);break;}return node.Out;};//赋值
|
|
9725
|
-
this.VisitAssignmentExpression=function(node){var left=node.Left;if(left.Type!=Syntax.Identifier)this.ThrowUnexpectedNode(node);var varName=left.Name;var right=node.Right;var value=null;if(right.Type==Syntax.BinaryExpression||right.Type==Syntax.LogicalExpression)value=this.VisitBinaryExpression(right);else if(right.Type==Syntax.CallExpression)value=this.VisitCallExpression(right);else if(right.Type==Syntax.Literal){value=right.Value;if(IFrameSplitOperator.IsString(value)&&right.Value.indexOf("$")>0)value=this.SymbolData.GetOtherSymolCacheData({Literal:value});}else if(right.Type==Syntax.Identifier)//右值是变量
|
|
9726
|
-
value=this.ReadVariable(right.Name,right);else if(right.Type==Syntax.MemberExpression)value=this.ReadMemberVariable(right);else if(right.Type==Syntax.UnaryExpression){if(right.Operator=='-'){var tempValue=this.GetNodeValue(right.Argument);value=this.Algorithm.Subtract(0,tempValue);}else{value=right.Argument.Value;}}if(JS_EXECUTE_DEBUG_LOG)JSConsole.Complier.Log('[JSExecute::VisitAssignmentExpression]',varName,' = ',value);this.VarTable.set(varName,value);};//逻辑运算
|
|
9730
|
+
this.VisitAssignmentExpression=function(node){var left=node.Left;if(left.Type!=Syntax.Identifier)this.ThrowUnexpectedNode(node);var varName=left.Name;var right=node.Right;var value=null,drawValue=null;if(right.Type==Syntax.BinaryExpression||right.Type==Syntax.LogicalExpression)value=this.VisitBinaryExpression(right);else if(right.Type==Syntax.CallExpression){value=this.VisitCallExpression(right);if(right.Draw)drawValue=right.Draw;}else if(right.Type==Syntax.Literal){value=right.Value;if(IFrameSplitOperator.IsString(value)&&right.Value.indexOf("$")>0)value=this.SymbolData.GetOtherSymolCacheData({Literal:value});}else if(right.Type==Syntax.Identifier)//右值是变量
|
|
9731
|
+
value=this.ReadVariable(right.Name,right);else if(right.Type==Syntax.MemberExpression)value=this.ReadMemberVariable(right);else if(right.Type==Syntax.UnaryExpression){if(right.Operator=='-'){var tempValue=this.GetNodeValue(right.Argument);value=this.Algorithm.Subtract(0,tempValue);}else{value=right.Argument.Value;}}if(JS_EXECUTE_DEBUG_LOG)JSConsole.Complier.Log('[JSExecute::VisitAssignmentExpression]',varName,' = ',value);if(drawValue)this.VarDrawTable.set(varName,drawValue);this.VarTable.set(varName,value);};//逻辑运算
|
|
9727
9732
|
this.VisitBinaryExpression=function(node){var stack=[];stack.push(node);var temp=null;while(stack.length!=0){temp=stack[stack.length-1];if(temp.Left&&node!=temp.Left&&node!=temp.Right){stack.push(temp.Left);}else if(temp.Right&&node!=temp.Right){stack.push(temp.Right);}else{var value=stack.pop();if(value.Type==Syntax.BinaryExpression)//只遍历操作符就可以
|
|
9728
9733
|
{var leftValue=this.GetNodeValue(value.Left);var rightValue=this.GetNodeValue(value.Right);if(JS_EXECUTE_DEBUG_LOG)JSConsole.Complier.Log('[JSExecute::VisitBinaryExpression] BinaryExpression',value,leftValue,rightValue);value.Out=null;//保存中间值
|
|
9729
9734
|
switch(value.Operator){case'-':value.Out=this.Algorithm.Subtract(leftValue,rightValue);break;case'*':value.Out=this.Algorithm.Multiply(leftValue,rightValue);break;case'/':value.Out=this.Algorithm.Divide(leftValue,rightValue);break;case'+':value.Out=this.Algorithm.Add(leftValue,rightValue);break;case'>':value.Out=this.Algorithm.GT(leftValue,rightValue);break;case'>=':value.Out=this.Algorithm.GTE(leftValue,rightValue);break;case'<':value.Out=this.Algorithm.LT(leftValue,rightValue);break;case'<=':value.Out=this.Algorithm.LTE(leftValue,rightValue);break;case'==':case'='://= 比较
|
|
@@ -9892,7 +9897,7 @@ if(varItem.Draw.FixedPosition==="TOP")chartText.FixedPosition=1;else if(varItem.
|
|
|
9892
9897
|
hqChart.ChartPaint.push(chartText);};//COLORSTICK
|
|
9893
9898
|
this.CreateMACD=function(hqChart,windowIndex,varItem,id){var chartMACD=new ChartMACD();chartMACD.Canvas=hqChart.Canvas;chartMACD.Identify=this.Guid;chartMACD.Name=varItem.Name;chartMACD.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chartMACD.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chartMACD.LineWidth=width;}var titleIndex=windowIndex+1;chartMACD.Data.Data=varItem.Data;var clrTitle=this.GetDefaultColor(id);if(varItem.Color)clrTitle=this.GetColor(varItem.Color);hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chartMACD.Data,varItem.Name,clrTitle);this.SetChartIndexName(chartMACD);hqChart.ChartPaint.push(chartMACD);};this.CreatePointDot=function(hqChart,windowIndex,varItem,id,hisData){var pointDot=new ChartPointDot();pointDot.Canvas=hqChart.Canvas;pointDot.Name=varItem.Name;pointDot.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;pointDot.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)pointDot.Color=this.GetColor(varItem.Color);else pointDot.Color=this.GetDefaultColor(id);if(varItem.Radius)pointDot.Radius=varItem.Radius;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)pointDot.Radius=width;}if(IFrameSplitOperator.IsBool(varItem.UpDownDot)){pointDot.EnableUpDownColor=varItem.UpDownDot;pointDot.HistoryData=hisData;}var titleIndex=windowIndex+1;pointDot.Data.Data=varItem.Data;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(pointDot.Data,varItem.Name,pointDot.Color);hqChart.ChartPaint.push(pointDot);};this.CreateStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartStick();chart.Canvas=hqChart.Canvas;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(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateLineStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartLineStick();chart.Canvas=hqChart.Canvas;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(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);hqChart.ChartPaint.push(chart);};this.CreateStraightLine=function(hqChart,windowIndex,varItem,id){var line=new ChartLine();line.DrawType=1;line.Canvas=hqChart.Canvas;line.Name=varItem.Name;line.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;line.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)line.Color=this.GetColor(varItem.Color);else line.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)line.LineWidth=width;}var titleIndex=windowIndex+1;line.Data.Data=varItem.Draw.DrawData;if(varItem.Name=="DRAWLINE")hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(line.Data,null,line.Color);//hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(line.Data,varItem.Name,line.Color);
|
|
9894
9899
|
hqChart.ChartPaint.push(line);};this.CreateVolStick=function(hqChart,windowIndex,varItem,id,hisData){var chart=new ChartVolStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.KLineDrawType=hqChart.KLineDrawType;//设置K线显示类型
|
|
9895
|
-
chart.Identify=this.Guid;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.UpColor)chart.UpColor=varItem.UpColor;if(varItem.DownColor)chart.DownColor=varItem.DownColor;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;chart.HistoryData=hisData;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);hqChart.ChartPaint.push(chart);};this.CreateBand=function(hqChart,windowIndex,varItem,id){var chart=new ChartBand();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.FirstColor=varItem.Draw.Color[0];chart.SecondColor=varItem.Draw.Color[1];chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFillRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartLineArea();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.Data=varItem.Draw.DrawData;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);hqChart.ChartPaint.push(chart);};this.CreateFillRGN2=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillRGN();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.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFillBGRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillBGRGN();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.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFLOATRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFLOATRGN();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.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};//创建K线图
|
|
9900
|
+
chart.Identify=this.Guid;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.UpColor)chart.UpColor=varItem.UpColor;if(varItem.DownColor)chart.DownColor=varItem.DownColor;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;chart.HistoryData=hisData;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateBand=function(hqChart,windowIndex,varItem,id){var chart=new ChartBand();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.FirstColor=varItem.Draw.Color[0];chart.SecondColor=varItem.Draw.Color[1];chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFillRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartLineArea();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.Data=varItem.Draw.DrawData;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);hqChart.ChartPaint.push(chart);};this.CreateFillRGN2=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillRGN();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.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFillBGRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillBGRGN();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.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFLOATRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFLOATRGN();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.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};//创建K线图
|
|
9896
9901
|
this.CreateKLine=function(hqChart,windowIndex,varItem,id){var chart=new ChartKLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.Identify=this.Guid;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;chart.IsShowMaxMinPrice=false;chart.IsShowKTooltip=false;if(varItem.Color)//如果设置了颜色,使用外面设置的颜色
|
|
9897
9902
|
chart.UnchagneColor=chart.DownColor=chart.UpColor=this.GetColor(varItem.Color);hqChart.ChartPaint.push(chart);};this.CreateDrawColorKLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartColorKline();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.DrawName="DRAWCOLORKLINE";chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsBool(varItem.Draw.IsEmptyBar))chart.IsEmptyBar=varItem.Draw.IsEmptyBar;if(varItem.Draw.Color)chart.Color=varItem.Draw.Color;hqChart.ChartPaint.push(chart);};this.CreatePolyLine=function(hqChart,windowIndex,varItem,id){var line=new ChartLine();line.Canvas=hqChart.Canvas;line.Name=varItem.Name;line.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;line.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)line.Color=this.GetColor(varItem.Color);else line.Color=this.GetDefaultColor(id);if(varItem.IsDotLine)line.IsDotLine=true;//虚线
|
|
9898
9903
|
if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)line.LineWidth=width;}var titleIndex=windowIndex+1;line.Data.Data=varItem.Draw.DrawData;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(line.Data,' ',line.Color);//给一个空的标题
|
|
@@ -10008,7 +10013,7 @@ if(varItem.Draw.DrawData)chart.Data.Data=varItem.Draw.DrawData;chart.Text=varIte
|
|
|
10008
10013
|
frame.ChartPaint.push(chart);};//COLORSTICK
|
|
10009
10014
|
this.CreateMACD=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartMACD();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;var titlePaint=hqChart.TitlePaint[titleIndex];var clrTitle=this.GetDefaultColor(id);if(varItem.Color)clrTitle=this.GetColor(varItem.Color);titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,clrTitle);frame.ChartPaint.push(chart);};this.CreatePointDot=function(hqChart,windowIndex,varItem,id,hisData){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartPointDot();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.Radius)chart.Radius=varItem.Radius;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.Radius=width;}if(IFrameSplitOperator.IsBool(varItem.UpDownDot)){chart.EnableUpDownColor=varItem.UpDownDot;chart.HistoryData=hisData;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);frame.ChartPaint.push(chart);};this.CreateStick=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);frame.ChartPaint.push(chart);};this.CreateLineStick=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartLineStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);frame.ChartPaint.push(chart);};this.CreateStraightLine=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartLine();chart.DrawType=1;chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Draw.DrawData;//hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(line.Data,varItem.Name,line.Color);
|
|
10010
10015
|
frame.ChartPaint.push(chart);};this.CreateVolStick=function(hqChart,windowIndex,varItem,id,hisData){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartVolStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.KLineDrawType=hqChart.KLineDrawType;//设置K线显示类型
|
|
10011
|
-
if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.UpColor)chart.UpColor=varItem.UpColor;if(varItem.DownColor)chart.DownColor=varItem.DownColor;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;chart.HistoryData=hisData;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);frame.ChartPaint.push(chart);};this.CreateBand=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartBand();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.FirstColor=varItem.Draw.Color[0];chart.SecondColor=varItem.Draw.Color[1];chart.Data.Data=varItem.Draw.DrawData;frame.ChartPaint.push(chart);};//创建K线图
|
|
10016
|
+
if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.UpColor)chart.UpColor=varItem.UpColor;if(varItem.DownColor)chart.DownColor=varItem.DownColor;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;chart.HistoryData=hisData;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);this.SetChartIndexName(chart);frame.ChartPaint.push(chart);};this.CreateBand=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartBand();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.FirstColor=varItem.Draw.Color[0];chart.SecondColor=varItem.Draw.Color[1];chart.Data.Data=varItem.Draw.DrawData;frame.ChartPaint.push(chart);};//创建K线图
|
|
10012
10017
|
this.CreateKLine=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartKLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.Data.Data=varItem.Draw.DrawData;chart.IsShowMaxMinPrice=false;chart.IsShowKTooltip=false;if(varItem.Color)//如果设置了颜色,使用外面设置的颜色
|
|
10013
10018
|
chart.UnchagneColor=chart.DownColor=chart.UpColor=this.GetColor(varItem.Color);frame.ChartPaint.push(chart);};this.CreatePolyLine=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Draw.DrawData;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(line.Data,' ',line.Color);//给一个空的标题
|
|
10014
10019
|
frame.ChartPaint.push(chart);};this.CreateNumberText=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartSingleText();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.ReloadResource();chart.TextAlign="center";if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.IsDrawAbove)chart.Direction=1;else chart.Direction=2;if(varItem.Draw.Position)chart.Position=varItem.Draw.Position;//赋值坐标
|
package/package.json
CHANGED
|
@@ -6001,12 +6001,12 @@ function JSChart(divElement, bOffscreen)
|
|
|
6001
6001
|
}
|
|
6002
6002
|
|
|
6003
6003
|
//删除画图工具
|
|
6004
|
-
this.ClearChartDrawPicture=function(drawPicture)
|
|
6004
|
+
this.ClearChartDrawPicture=function(drawPicture, option)
|
|
6005
6005
|
{
|
|
6006
6006
|
if(this.JSChartContainer && typeof(this.JSChartContainer.ClearChartDrawPicture)=='function')
|
|
6007
6007
|
{
|
|
6008
6008
|
//JSConsole.Chart.Log('[JSChart:ClearChartDrawPicture] ', drawPicture);
|
|
6009
|
-
this.JSChartContainer.ClearChartDrawPicture(drawPicture);
|
|
6009
|
+
this.JSChartContainer.ClearChartDrawPicture(drawPicture, option);
|
|
6010
6010
|
}
|
|
6011
6011
|
}
|
|
6012
6012
|
|
|
@@ -10899,14 +10899,17 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
10899
10899
|
return true;
|
|
10900
10900
|
}
|
|
10901
10901
|
|
|
10902
|
-
//清空所有的画线工具
|
|
10903
|
-
this.ClearChartDrawPicture=function(drawPicture)
|
|
10902
|
+
//清空所有的画线工具 option={ Draw:false/true }
|
|
10903
|
+
this.ClearChartDrawPicture=function(drawPicture, option)
|
|
10904
10904
|
{
|
|
10905
|
+
var bDraw=true;
|
|
10905
10906
|
if (!drawPicture)
|
|
10906
10907
|
{
|
|
10907
10908
|
this.ChartDrawPicture=[];
|
|
10908
10909
|
if (this.ChartDrawStorage) this.ChartDrawStorage.Clear();
|
|
10909
|
-
|
|
10910
|
+
|
|
10911
|
+
if (option && option.Draw==false) bDraw=false;
|
|
10912
|
+
if (bDraw) this.Draw();
|
|
10910
10913
|
}
|
|
10911
10914
|
else
|
|
10912
10915
|
{
|
|
@@ -10916,7 +10919,9 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
10916
10919
|
{
|
|
10917
10920
|
if (this.ChartDrawStorage) this.ChartDrawStorage.DeleteDrawData(drawPicture);
|
|
10918
10921
|
this.ChartDrawPicture.splice(i,1);
|
|
10919
|
-
|
|
10922
|
+
|
|
10923
|
+
if (option && option.Draw==false) bDraw=false;
|
|
10924
|
+
if (bDraw) this.Draw();
|
|
10920
10925
|
}
|
|
10921
10926
|
}
|
|
10922
10927
|
}
|
|
@@ -22279,6 +22284,24 @@ function ChartData()
|
|
|
22279
22284
|
return aryData;
|
|
22280
22285
|
}
|
|
22281
22286
|
|
|
22287
|
+
this.ExportBoolData=function(option)
|
|
22288
|
+
{
|
|
22289
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Data)) return null;
|
|
22290
|
+
|
|
22291
|
+
var aryValue=[];
|
|
22292
|
+
for(var i=0;i<this.Data.length; ++i)
|
|
22293
|
+
{
|
|
22294
|
+
var item=this.Data[i];
|
|
22295
|
+
aryValue[i]=false;
|
|
22296
|
+
|
|
22297
|
+
if (!IFrameSplitOperator.IsPlusNumber(item)) continue;
|
|
22298
|
+
|
|
22299
|
+
aryValue[i]=true;
|
|
22300
|
+
}
|
|
22301
|
+
|
|
22302
|
+
return aryValue;
|
|
22303
|
+
}
|
|
22304
|
+
|
|
22282
22305
|
//导出K线数据
|
|
22283
22306
|
this.ExportKLineData=function(option)
|
|
22284
22307
|
{
|
|
@@ -23233,6 +23256,12 @@ function IChartPainting()
|
|
|
23233
23256
|
var data=this.Data.ExportArrayData(option);
|
|
23234
23257
|
return [ { Name:this.Name, Data:data }];
|
|
23235
23258
|
}
|
|
23259
|
+
|
|
23260
|
+
this.ExportBoolData=function(option)
|
|
23261
|
+
{
|
|
23262
|
+
var data=this.Data.ExportBoolData(option);
|
|
23263
|
+
return [ { Name:this.Name, Data:data }];
|
|
23264
|
+
}
|
|
23236
23265
|
}
|
|
23237
23266
|
|
|
23238
23267
|
|
|
@@ -30469,6 +30498,8 @@ function ChartSingleText()
|
|
|
30469
30498
|
DRAWTEXT_FIX:g_JSChartResource.DRAWTEXT_FIX.Font,
|
|
30470
30499
|
DRAWNUMBER_FIX: g_JSChartResource.DRAWNUMBER_FIX.Font
|
|
30471
30500
|
}
|
|
30501
|
+
|
|
30502
|
+
this.ExportData=this.ExportBoolData;
|
|
30472
30503
|
|
|
30473
30504
|
|
|
30474
30505
|
this.ReloadResource=function(resource)
|
|
@@ -30914,7 +30945,6 @@ function ChartSingleText()
|
|
|
30914
30945
|
this.Canvas.fillText(text,x,y);
|
|
30915
30946
|
}
|
|
30916
30947
|
}
|
|
30917
|
-
|
|
30918
30948
|
}
|
|
30919
30949
|
|
|
30920
30950
|
|
|
@@ -30936,6 +30966,8 @@ function ChartDrawText()
|
|
|
30936
30966
|
this.FixedPosition=-1; //固定位置输出 1顶部, 2底部
|
|
30937
30967
|
this.VerticalLine; //垂直线
|
|
30938
30968
|
|
|
30969
|
+
this.ExportData=this.ExportBoolData;
|
|
30970
|
+
|
|
30939
30971
|
this.TextSize=
|
|
30940
30972
|
{
|
|
30941
30973
|
Max: g_JSChartResource.DRAWICON.Text.MaxSize, Min:g_JSChartResource.DRAWICON.Text.MinSize, //字体的最大最小值
|
|
@@ -40393,8 +40425,7 @@ function KLineYAxisBGPaint()
|
|
|
40393
40425
|
this.SplitData=[]; //[ { Value: , Color:, TextColor: }, ]
|
|
40394
40426
|
this.Font=g_JSChartResource.KLineYAxisBGPaint.Font;
|
|
40395
40427
|
this.TextColor=g_JSChartResource.KLineYAxisBGPaint.TextColor;
|
|
40396
|
-
|
|
40397
|
-
|
|
40428
|
+
|
|
40398
40429
|
this.FrameID=0;
|
|
40399
40430
|
this.ID=Guid(); //唯一的ID
|
|
40400
40431
|
|
|
@@ -40403,6 +40434,10 @@ function KLineYAxisBGPaint()
|
|
|
40403
40434
|
this.IsShow=true;
|
|
40404
40435
|
this.BGWidth=50;
|
|
40405
40436
|
|
|
40437
|
+
this.LineColor=g_JSChartResource.KLineYAxisBGPaint.LineColor;
|
|
40438
|
+
this.DiffValutTextColor=g_JSChartResource.KLineYAxisBGPaint.DiffValutTextColor;
|
|
40439
|
+
this.DiffValueBGColor=g_JSChartResource.KLineYAxisBGPaint.DiffValueBGColor; //点差背景
|
|
40440
|
+
|
|
40406
40441
|
//临时内部变量
|
|
40407
40442
|
this.KLineFrame;
|
|
40408
40443
|
this.KLineData;
|
|
@@ -40507,9 +40542,18 @@ function KLineYAxisBGPaint()
|
|
|
40507
40542
|
this.Canvas.lineTo(ToFixedPoint(right), ToFixedPoint(x));
|
|
40508
40543
|
this.Canvas.stroke();
|
|
40509
40544
|
|
|
40545
|
+
var textWidth=this.Canvas.measureText(text).width+4;
|
|
40546
|
+
var textHeight=this.Canvas.measureText("擎").width+2;
|
|
40547
|
+
var rtBG={ Left: right+1, Top:x-textHeight, Width:textWidth, Height:textHeight };
|
|
40548
|
+
if (this.DiffValueBGColor)
|
|
40549
|
+
{
|
|
40550
|
+
this.Canvas.fillStyle=this.DiffValueBGColor;
|
|
40551
|
+
this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
|
|
40552
|
+
}
|
|
40553
|
+
|
|
40510
40554
|
this.Canvas.textBaseline = 'bottom';
|
|
40511
40555
|
this.Canvas.fillStyle=this.TextColor;
|
|
40512
|
-
this.Canvas.fillText(text,
|
|
40556
|
+
this.Canvas.fillText(text,rtBG.Left+1,x);
|
|
40513
40557
|
}
|
|
40514
40558
|
}
|
|
40515
40559
|
|
|
@@ -50150,6 +50194,8 @@ function ChartDrawHLine()
|
|
|
50150
50194
|
if (option.Font) this.Font=option.Font;
|
|
50151
50195
|
if (option.ValueTextColor) this.ValueTextColor=option.ValueTextColor;
|
|
50152
50196
|
if (IFrameSplitOperator.IsNumber(option.ButtonPosition)) this.ButtonPosition=option.ButtonPosition;
|
|
50197
|
+
if (IFrameSplitOperator.IsNumber(option.RightSpaceWidth)) this.RightSpaceWidth=option.RightSpaceWidth;
|
|
50198
|
+
|
|
50153
50199
|
if (option.Button)
|
|
50154
50200
|
{
|
|
50155
50201
|
var item=option.Button;
|
|
@@ -56074,7 +56120,9 @@ function JSChartResource()
|
|
|
56074
56120
|
{
|
|
56075
56121
|
Font:12*GetDevicePixelRatio() +'px 微软雅黑',
|
|
56076
56122
|
TextColor:"rgb(117,125,129)",
|
|
56077
|
-
LineColor:"rgb(117,125,129)"
|
|
56123
|
+
LineColor:"rgb(117,125,129)",
|
|
56124
|
+
DiffValutTextColor:"rgb(117,125,129)",
|
|
56125
|
+
DiffValueBGColor:"rgb(251,140,1)"
|
|
56078
56126
|
}
|
|
56079
56127
|
|
|
56080
56128
|
//筹码分布图
|
|
@@ -56585,6 +56633,9 @@ function JSChartResource()
|
|
|
56585
56633
|
if (item.TextColor) this.KLineYAxisBGPaint.TextColor=item.TextColor;
|
|
56586
56634
|
if (item.Font) this.KLineYAxisBGPaint.Font=item.Font;
|
|
56587
56635
|
if (item.LineColor) this.KLineYAxisBGPaint.LineColor=item.LineColor;
|
|
56636
|
+
|
|
56637
|
+
if (item.DiffValutTextColor) this.KLineYAxisBGPaint.DiffValutTextColor=item.DiffValutTextColor;
|
|
56638
|
+
if (item.DiffValueBGColor) this.KLineYAxisBGPaint.DiffValueBGColor=item.DiffValueBGColor;
|
|
56588
56639
|
}
|
|
56589
56640
|
|
|
56590
56641
|
if (style.StockChip)
|
|
@@ -98320,6 +98371,7 @@ function JSExecute(ast,option)
|
|
|
98320
98371
|
|
|
98321
98372
|
this.ErrorHandler=new ErrorHandler();
|
|
98322
98373
|
this.VarTable=new Map(); //变量表
|
|
98374
|
+
this.VarDrawTable=new Map(); //绘图变量表
|
|
98323
98375
|
this.OutVarTable=[]; //输出变量
|
|
98324
98376
|
this.Arguments=[];
|
|
98325
98377
|
this.ErrorCallback; //执行错误回调
|
|
@@ -98425,6 +98477,7 @@ function JSExecute(ast,option)
|
|
|
98425
98477
|
{
|
|
98426
98478
|
this.OutVarTable=[];
|
|
98427
98479
|
this.VarTable=new Map();
|
|
98480
|
+
this.VarDrawTable=new Map(); //绘图变量表
|
|
98428
98481
|
JSConsole.Complier.Log('[JSExecute::Execute] Load Arguments', this.Arguments);
|
|
98429
98482
|
for(let i in this.Arguments) //预定义的变量
|
|
98430
98483
|
{
|
|
@@ -98775,31 +98828,39 @@ function JSExecute(ast,option)
|
|
|
98775
98828
|
let assignmentItem=item.Expression;
|
|
98776
98829
|
let varName=assignmentItem.Left.Name;
|
|
98777
98830
|
let outVar=this.VarTable.get(varName);
|
|
98778
|
-
|
|
98779
|
-
if (outVar && typeof(outVar)=='object' && outVar.__Type__=='Object')
|
|
98831
|
+
if (this.VarDrawTable.has(varName)) //绘图函数赋值
|
|
98780
98832
|
{
|
|
98781
|
-
|
|
98833
|
+
let draw=this.VarDrawTable.get(varName);
|
|
98834
|
+
this.OutVarTable.push({Name:draw.Name, Draw:draw, Type:1});
|
|
98782
98835
|
}
|
|
98783
|
-
else
|
|
98836
|
+
else
|
|
98784
98837
|
{
|
|
98785
|
-
|
|
98838
|
+
var type=0;
|
|
98839
|
+
if (outVar && typeof(outVar)=='object' && outVar.__Type__=='Object')
|
|
98786
98840
|
{
|
|
98787
|
-
|
|
98788
|
-
|
|
98789
|
-
|
|
98790
|
-
|
|
98791
|
-
|
|
98792
|
-
else
|
|
98841
|
+
type=1000;
|
|
98842
|
+
}
|
|
98843
|
+
else if (!this.IsSectionMode && !Array.isArray(outVar))
|
|
98844
|
+
{
|
|
98845
|
+
if (typeof(outVar)=='string')
|
|
98793
98846
|
{
|
|
98794
|
-
|
|
98795
|
-
|
|
98847
|
+
var floatValue=parseFloat(outVar);
|
|
98848
|
+
if (IFrameSplitOperator.IsNumber(floatValue))
|
|
98849
|
+
{
|
|
98850
|
+
outVar=this.SingleDataToArrayData(floatValue);
|
|
98851
|
+
}
|
|
98852
|
+
else
|
|
98853
|
+
{
|
|
98854
|
+
outVar=this.SingleDataToArrayData(outVar);
|
|
98855
|
+
type=1001;
|
|
98856
|
+
}
|
|
98857
|
+
|
|
98796
98858
|
}
|
|
98797
|
-
|
|
98859
|
+
else outVar=this.SingleDataToArrayData(outVar);
|
|
98798
98860
|
}
|
|
98799
|
-
else outVar=this.SingleDataToArrayData(outVar);
|
|
98800
|
-
}
|
|
98801
98861
|
|
|
98802
|
-
|
|
98862
|
+
this.OutVarTable.push({Name:varName, Data:outVar,Type:type});
|
|
98863
|
+
}
|
|
98803
98864
|
}
|
|
98804
98865
|
}
|
|
98805
98866
|
else if (item.Expression.Type==Syntax.CallExpression)
|
|
@@ -98909,7 +98970,11 @@ function JSExecute(ast,option)
|
|
|
98909
98970
|
{
|
|
98910
98971
|
varName=itemExpression.Left.Name;
|
|
98911
98972
|
let varValue=this.VarTable.get(varName);
|
|
98912
|
-
if (
|
|
98973
|
+
if (this.VarDrawTable.has(varName)) //绘图函数赋值
|
|
98974
|
+
{
|
|
98975
|
+
draw=this.VarDrawTable.get(varName);
|
|
98976
|
+
}
|
|
98977
|
+
else if (!Array.isArray(varValue))
|
|
98913
98978
|
{
|
|
98914
98979
|
varValue=this.SingleDataToArrayData(varValue);
|
|
98915
98980
|
this.VarTable.set(varName,varValue); //把常量放到变量表里
|
|
@@ -99658,11 +99723,14 @@ function JSExecute(ast,option)
|
|
|
99658
99723
|
let varName=left.Name;
|
|
99659
99724
|
|
|
99660
99725
|
let right=node.Right;
|
|
99661
|
-
let value=null;
|
|
99726
|
+
let value=null, drawValue=null;
|
|
99662
99727
|
if (right.Type==Syntax.BinaryExpression || right.Type==Syntax.LogicalExpression)
|
|
99663
99728
|
value=this.VisitBinaryExpression(right);
|
|
99664
99729
|
else if (right.Type==Syntax.CallExpression)
|
|
99730
|
+
{
|
|
99665
99731
|
value=this.VisitCallExpression(right);
|
|
99732
|
+
if (right.Draw) drawValue=right.Draw;
|
|
99733
|
+
}
|
|
99666
99734
|
else if (right.Type==Syntax.Literal)
|
|
99667
99735
|
{
|
|
99668
99736
|
value=right.Value;
|
|
@@ -99687,6 +99755,8 @@ function JSExecute(ast,option)
|
|
|
99687
99755
|
}
|
|
99688
99756
|
|
|
99689
99757
|
if (JS_EXECUTE_DEBUG_LOG) JSConsole.Complier.Log('[JSExecute::VisitAssignmentExpression]' , varName, ' = ',value);
|
|
99758
|
+
|
|
99759
|
+
if (drawValue) this.VarDrawTable.set(varName, drawValue);
|
|
99690
99760
|
this.VarTable.set(varName,value);
|
|
99691
99761
|
}
|
|
99692
99762
|
|
|
@@ -101787,6 +101857,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
101787
101857
|
chart.HistoryData=hisData;
|
|
101788
101858
|
hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
|
|
101789
101859
|
|
|
101860
|
+
this.SetChartIndexName(chart);
|
|
101790
101861
|
hqChart.ChartPaint.push(chart);
|
|
101791
101862
|
}
|
|
101792
101863
|
|
|
@@ -103323,6 +103394,7 @@ function OverlayScriptIndex(name,script,args,option)
|
|
|
103323
103394
|
var titlePaint=hqChart.TitlePaint[titleIndex];
|
|
103324
103395
|
titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
|
|
103325
103396
|
|
|
103397
|
+
this.SetChartIndexName(chart);
|
|
103326
103398
|
frame.ChartPaint.push(chart);
|
|
103327
103399
|
}
|
|
103328
103400
|
|
|
@@ -6045,12 +6045,12 @@ function JSChart(divElement, bOffscreen)
|
|
|
6045
6045
|
}
|
|
6046
6046
|
|
|
6047
6047
|
//删除画图工具
|
|
6048
|
-
this.ClearChartDrawPicture=function(drawPicture)
|
|
6048
|
+
this.ClearChartDrawPicture=function(drawPicture, option)
|
|
6049
6049
|
{
|
|
6050
6050
|
if(this.JSChartContainer && typeof(this.JSChartContainer.ClearChartDrawPicture)=='function')
|
|
6051
6051
|
{
|
|
6052
6052
|
//JSConsole.Chart.Log('[JSChart:ClearChartDrawPicture] ', drawPicture);
|
|
6053
|
-
this.JSChartContainer.ClearChartDrawPicture(drawPicture);
|
|
6053
|
+
this.JSChartContainer.ClearChartDrawPicture(drawPicture, option);
|
|
6054
6054
|
}
|
|
6055
6055
|
}
|
|
6056
6056
|
|
|
@@ -10943,14 +10943,17 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
10943
10943
|
return true;
|
|
10944
10944
|
}
|
|
10945
10945
|
|
|
10946
|
-
//清空所有的画线工具
|
|
10947
|
-
this.ClearChartDrawPicture=function(drawPicture)
|
|
10946
|
+
//清空所有的画线工具 option={ Draw:false/true }
|
|
10947
|
+
this.ClearChartDrawPicture=function(drawPicture, option)
|
|
10948
10948
|
{
|
|
10949
|
+
var bDraw=true;
|
|
10949
10950
|
if (!drawPicture)
|
|
10950
10951
|
{
|
|
10951
10952
|
this.ChartDrawPicture=[];
|
|
10952
10953
|
if (this.ChartDrawStorage) this.ChartDrawStorage.Clear();
|
|
10953
|
-
|
|
10954
|
+
|
|
10955
|
+
if (option && option.Draw==false) bDraw=false;
|
|
10956
|
+
if (bDraw) this.Draw();
|
|
10954
10957
|
}
|
|
10955
10958
|
else
|
|
10956
10959
|
{
|
|
@@ -10960,7 +10963,9 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
10960
10963
|
{
|
|
10961
10964
|
if (this.ChartDrawStorage) this.ChartDrawStorage.DeleteDrawData(drawPicture);
|
|
10962
10965
|
this.ChartDrawPicture.splice(i,1);
|
|
10963
|
-
|
|
10966
|
+
|
|
10967
|
+
if (option && option.Draw==false) bDraw=false;
|
|
10968
|
+
if (bDraw) this.Draw();
|
|
10964
10969
|
}
|
|
10965
10970
|
}
|
|
10966
10971
|
}
|
|
@@ -22323,6 +22328,24 @@ function ChartData()
|
|
|
22323
22328
|
return aryData;
|
|
22324
22329
|
}
|
|
22325
22330
|
|
|
22331
|
+
this.ExportBoolData=function(option)
|
|
22332
|
+
{
|
|
22333
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Data)) return null;
|
|
22334
|
+
|
|
22335
|
+
var aryValue=[];
|
|
22336
|
+
for(var i=0;i<this.Data.length; ++i)
|
|
22337
|
+
{
|
|
22338
|
+
var item=this.Data[i];
|
|
22339
|
+
aryValue[i]=false;
|
|
22340
|
+
|
|
22341
|
+
if (!IFrameSplitOperator.IsPlusNumber(item)) continue;
|
|
22342
|
+
|
|
22343
|
+
aryValue[i]=true;
|
|
22344
|
+
}
|
|
22345
|
+
|
|
22346
|
+
return aryValue;
|
|
22347
|
+
}
|
|
22348
|
+
|
|
22326
22349
|
//导出K线数据
|
|
22327
22350
|
this.ExportKLineData=function(option)
|
|
22328
22351
|
{
|
|
@@ -23277,6 +23300,12 @@ function IChartPainting()
|
|
|
23277
23300
|
var data=this.Data.ExportArrayData(option);
|
|
23278
23301
|
return [ { Name:this.Name, Data:data }];
|
|
23279
23302
|
}
|
|
23303
|
+
|
|
23304
|
+
this.ExportBoolData=function(option)
|
|
23305
|
+
{
|
|
23306
|
+
var data=this.Data.ExportBoolData(option);
|
|
23307
|
+
return [ { Name:this.Name, Data:data }];
|
|
23308
|
+
}
|
|
23280
23309
|
}
|
|
23281
23310
|
|
|
23282
23311
|
|
|
@@ -30513,6 +30542,8 @@ function ChartSingleText()
|
|
|
30513
30542
|
DRAWTEXT_FIX:g_JSChartResource.DRAWTEXT_FIX.Font,
|
|
30514
30543
|
DRAWNUMBER_FIX: g_JSChartResource.DRAWNUMBER_FIX.Font
|
|
30515
30544
|
}
|
|
30545
|
+
|
|
30546
|
+
this.ExportData=this.ExportBoolData;
|
|
30516
30547
|
|
|
30517
30548
|
|
|
30518
30549
|
this.ReloadResource=function(resource)
|
|
@@ -30958,7 +30989,6 @@ function ChartSingleText()
|
|
|
30958
30989
|
this.Canvas.fillText(text,x,y);
|
|
30959
30990
|
}
|
|
30960
30991
|
}
|
|
30961
|
-
|
|
30962
30992
|
}
|
|
30963
30993
|
|
|
30964
30994
|
|
|
@@ -30980,6 +31010,8 @@ function ChartDrawText()
|
|
|
30980
31010
|
this.FixedPosition=-1; //固定位置输出 1顶部, 2底部
|
|
30981
31011
|
this.VerticalLine; //垂直线
|
|
30982
31012
|
|
|
31013
|
+
this.ExportData=this.ExportBoolData;
|
|
31014
|
+
|
|
30983
31015
|
this.TextSize=
|
|
30984
31016
|
{
|
|
30985
31017
|
Max: g_JSChartResource.DRAWICON.Text.MaxSize, Min:g_JSChartResource.DRAWICON.Text.MinSize, //字体的最大最小值
|
|
@@ -40437,8 +40469,7 @@ function KLineYAxisBGPaint()
|
|
|
40437
40469
|
this.SplitData=[]; //[ { Value: , Color:, TextColor: }, ]
|
|
40438
40470
|
this.Font=g_JSChartResource.KLineYAxisBGPaint.Font;
|
|
40439
40471
|
this.TextColor=g_JSChartResource.KLineYAxisBGPaint.TextColor;
|
|
40440
|
-
|
|
40441
|
-
|
|
40472
|
+
|
|
40442
40473
|
this.FrameID=0;
|
|
40443
40474
|
this.ID=Guid(); //唯一的ID
|
|
40444
40475
|
|
|
@@ -40447,6 +40478,10 @@ function KLineYAxisBGPaint()
|
|
|
40447
40478
|
this.IsShow=true;
|
|
40448
40479
|
this.BGWidth=50;
|
|
40449
40480
|
|
|
40481
|
+
this.LineColor=g_JSChartResource.KLineYAxisBGPaint.LineColor;
|
|
40482
|
+
this.DiffValutTextColor=g_JSChartResource.KLineYAxisBGPaint.DiffValutTextColor;
|
|
40483
|
+
this.DiffValueBGColor=g_JSChartResource.KLineYAxisBGPaint.DiffValueBGColor; //点差背景
|
|
40484
|
+
|
|
40450
40485
|
//临时内部变量
|
|
40451
40486
|
this.KLineFrame;
|
|
40452
40487
|
this.KLineData;
|
|
@@ -40551,9 +40586,18 @@ function KLineYAxisBGPaint()
|
|
|
40551
40586
|
this.Canvas.lineTo(ToFixedPoint(right), ToFixedPoint(x));
|
|
40552
40587
|
this.Canvas.stroke();
|
|
40553
40588
|
|
|
40589
|
+
var textWidth=this.Canvas.measureText(text).width+4;
|
|
40590
|
+
var textHeight=this.Canvas.measureText("擎").width+2;
|
|
40591
|
+
var rtBG={ Left: right+1, Top:x-textHeight, Width:textWidth, Height:textHeight };
|
|
40592
|
+
if (this.DiffValueBGColor)
|
|
40593
|
+
{
|
|
40594
|
+
this.Canvas.fillStyle=this.DiffValueBGColor;
|
|
40595
|
+
this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
|
|
40596
|
+
}
|
|
40597
|
+
|
|
40554
40598
|
this.Canvas.textBaseline = 'bottom';
|
|
40555
40599
|
this.Canvas.fillStyle=this.TextColor;
|
|
40556
|
-
this.Canvas.fillText(text,
|
|
40600
|
+
this.Canvas.fillText(text,rtBG.Left+1,x);
|
|
40557
40601
|
}
|
|
40558
40602
|
}
|
|
40559
40603
|
|
|
@@ -50194,6 +50238,8 @@ function ChartDrawHLine()
|
|
|
50194
50238
|
if (option.Font) this.Font=option.Font;
|
|
50195
50239
|
if (option.ValueTextColor) this.ValueTextColor=option.ValueTextColor;
|
|
50196
50240
|
if (IFrameSplitOperator.IsNumber(option.ButtonPosition)) this.ButtonPosition=option.ButtonPosition;
|
|
50241
|
+
if (IFrameSplitOperator.IsNumber(option.RightSpaceWidth)) this.RightSpaceWidth=option.RightSpaceWidth;
|
|
50242
|
+
|
|
50197
50243
|
if (option.Button)
|
|
50198
50244
|
{
|
|
50199
50245
|
var item=option.Button;
|
|
@@ -56118,7 +56164,9 @@ function JSChartResource()
|
|
|
56118
56164
|
{
|
|
56119
56165
|
Font:12*GetDevicePixelRatio() +'px 微软雅黑',
|
|
56120
56166
|
TextColor:"rgb(117,125,129)",
|
|
56121
|
-
LineColor:"rgb(117,125,129)"
|
|
56167
|
+
LineColor:"rgb(117,125,129)",
|
|
56168
|
+
DiffValutTextColor:"rgb(117,125,129)",
|
|
56169
|
+
DiffValueBGColor:"rgb(251,140,1)"
|
|
56122
56170
|
}
|
|
56123
56171
|
|
|
56124
56172
|
//筹码分布图
|
|
@@ -56629,6 +56677,9 @@ function JSChartResource()
|
|
|
56629
56677
|
if (item.TextColor) this.KLineYAxisBGPaint.TextColor=item.TextColor;
|
|
56630
56678
|
if (item.Font) this.KLineYAxisBGPaint.Font=item.Font;
|
|
56631
56679
|
if (item.LineColor) this.KLineYAxisBGPaint.LineColor=item.LineColor;
|
|
56680
|
+
|
|
56681
|
+
if (item.DiffValutTextColor) this.KLineYAxisBGPaint.DiffValutTextColor=item.DiffValutTextColor;
|
|
56682
|
+
if (item.DiffValueBGColor) this.KLineYAxisBGPaint.DiffValueBGColor=item.DiffValueBGColor;
|
|
56632
56683
|
}
|
|
56633
56684
|
|
|
56634
56685
|
if (style.StockChip)
|
|
@@ -98364,6 +98415,7 @@ function JSExecute(ast,option)
|
|
|
98364
98415
|
|
|
98365
98416
|
this.ErrorHandler=new ErrorHandler();
|
|
98366
98417
|
this.VarTable=new Map(); //变量表
|
|
98418
|
+
this.VarDrawTable=new Map(); //绘图变量表
|
|
98367
98419
|
this.OutVarTable=[]; //输出变量
|
|
98368
98420
|
this.Arguments=[];
|
|
98369
98421
|
this.ErrorCallback; //执行错误回调
|
|
@@ -98469,6 +98521,7 @@ function JSExecute(ast,option)
|
|
|
98469
98521
|
{
|
|
98470
98522
|
this.OutVarTable=[];
|
|
98471
98523
|
this.VarTable=new Map();
|
|
98524
|
+
this.VarDrawTable=new Map(); //绘图变量表
|
|
98472
98525
|
JSConsole.Complier.Log('[JSExecute::Execute] Load Arguments', this.Arguments);
|
|
98473
98526
|
for(let i in this.Arguments) //预定义的变量
|
|
98474
98527
|
{
|
|
@@ -98819,31 +98872,39 @@ function JSExecute(ast,option)
|
|
|
98819
98872
|
let assignmentItem=item.Expression;
|
|
98820
98873
|
let varName=assignmentItem.Left.Name;
|
|
98821
98874
|
let outVar=this.VarTable.get(varName);
|
|
98822
|
-
|
|
98823
|
-
if (outVar && typeof(outVar)=='object' && outVar.__Type__=='Object')
|
|
98875
|
+
if (this.VarDrawTable.has(varName)) //绘图函数赋值
|
|
98824
98876
|
{
|
|
98825
|
-
|
|
98877
|
+
let draw=this.VarDrawTable.get(varName);
|
|
98878
|
+
this.OutVarTable.push({Name:draw.Name, Draw:draw, Type:1});
|
|
98826
98879
|
}
|
|
98827
|
-
else
|
|
98880
|
+
else
|
|
98828
98881
|
{
|
|
98829
|
-
|
|
98882
|
+
var type=0;
|
|
98883
|
+
if (outVar && typeof(outVar)=='object' && outVar.__Type__=='Object')
|
|
98830
98884
|
{
|
|
98831
|
-
|
|
98832
|
-
|
|
98833
|
-
|
|
98834
|
-
|
|
98835
|
-
|
|
98836
|
-
else
|
|
98885
|
+
type=1000;
|
|
98886
|
+
}
|
|
98887
|
+
else if (!this.IsSectionMode && !Array.isArray(outVar))
|
|
98888
|
+
{
|
|
98889
|
+
if (typeof(outVar)=='string')
|
|
98837
98890
|
{
|
|
98838
|
-
|
|
98839
|
-
|
|
98891
|
+
var floatValue=parseFloat(outVar);
|
|
98892
|
+
if (IFrameSplitOperator.IsNumber(floatValue))
|
|
98893
|
+
{
|
|
98894
|
+
outVar=this.SingleDataToArrayData(floatValue);
|
|
98895
|
+
}
|
|
98896
|
+
else
|
|
98897
|
+
{
|
|
98898
|
+
outVar=this.SingleDataToArrayData(outVar);
|
|
98899
|
+
type=1001;
|
|
98900
|
+
}
|
|
98901
|
+
|
|
98840
98902
|
}
|
|
98841
|
-
|
|
98903
|
+
else outVar=this.SingleDataToArrayData(outVar);
|
|
98842
98904
|
}
|
|
98843
|
-
else outVar=this.SingleDataToArrayData(outVar);
|
|
98844
|
-
}
|
|
98845
98905
|
|
|
98846
|
-
|
|
98906
|
+
this.OutVarTable.push({Name:varName, Data:outVar,Type:type});
|
|
98907
|
+
}
|
|
98847
98908
|
}
|
|
98848
98909
|
}
|
|
98849
98910
|
else if (item.Expression.Type==Syntax.CallExpression)
|
|
@@ -98953,7 +99014,11 @@ function JSExecute(ast,option)
|
|
|
98953
99014
|
{
|
|
98954
99015
|
varName=itemExpression.Left.Name;
|
|
98955
99016
|
let varValue=this.VarTable.get(varName);
|
|
98956
|
-
if (
|
|
99017
|
+
if (this.VarDrawTable.has(varName)) //绘图函数赋值
|
|
99018
|
+
{
|
|
99019
|
+
draw=this.VarDrawTable.get(varName);
|
|
99020
|
+
}
|
|
99021
|
+
else if (!Array.isArray(varValue))
|
|
98957
99022
|
{
|
|
98958
99023
|
varValue=this.SingleDataToArrayData(varValue);
|
|
98959
99024
|
this.VarTable.set(varName,varValue); //把常量放到变量表里
|
|
@@ -99702,11 +99767,14 @@ function JSExecute(ast,option)
|
|
|
99702
99767
|
let varName=left.Name;
|
|
99703
99768
|
|
|
99704
99769
|
let right=node.Right;
|
|
99705
|
-
let value=null;
|
|
99770
|
+
let value=null, drawValue=null;
|
|
99706
99771
|
if (right.Type==Syntax.BinaryExpression || right.Type==Syntax.LogicalExpression)
|
|
99707
99772
|
value=this.VisitBinaryExpression(right);
|
|
99708
99773
|
else if (right.Type==Syntax.CallExpression)
|
|
99774
|
+
{
|
|
99709
99775
|
value=this.VisitCallExpression(right);
|
|
99776
|
+
if (right.Draw) drawValue=right.Draw;
|
|
99777
|
+
}
|
|
99710
99778
|
else if (right.Type==Syntax.Literal)
|
|
99711
99779
|
{
|
|
99712
99780
|
value=right.Value;
|
|
@@ -99731,6 +99799,8 @@ function JSExecute(ast,option)
|
|
|
99731
99799
|
}
|
|
99732
99800
|
|
|
99733
99801
|
if (JS_EXECUTE_DEBUG_LOG) JSConsole.Complier.Log('[JSExecute::VisitAssignmentExpression]' , varName, ' = ',value);
|
|
99802
|
+
|
|
99803
|
+
if (drawValue) this.VarDrawTable.set(varName, drawValue);
|
|
99734
99804
|
this.VarTable.set(varName,value);
|
|
99735
99805
|
}
|
|
99736
99806
|
|
|
@@ -101831,6 +101901,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
101831
101901
|
chart.HistoryData=hisData;
|
|
101832
101902
|
hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
|
|
101833
101903
|
|
|
101904
|
+
this.SetChartIndexName(chart);
|
|
101834
101905
|
hqChart.ChartPaint.push(chart);
|
|
101835
101906
|
}
|
|
101836
101907
|
|
|
@@ -103367,6 +103438,7 @@ function OverlayScriptIndex(name,script,args,option)
|
|
|
103367
103438
|
var titlePaint=hqChart.TitlePaint[titleIndex];
|
|
103368
103439
|
titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
|
|
103369
103440
|
|
|
103441
|
+
this.SetChartIndexName(chart);
|
|
103370
103442
|
frame.ChartPaint.push(chart);
|
|
103371
103443
|
}
|
|
103372
103444
|
|