hqchart 1.1.15635 → 1.1.15665

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.
@@ -70,7 +70,7 @@ this.Get=function(id){if(!this.DataMap.has(id))return null;return this.DataMap.g
70
70
  ]);}JSIndexScript.AddIndex=function(aryIndex)//添加自定义指标
71
71
  {for(var i in aryIndex){g_CustomIndex.Add(aryIndex[i]);}};//修改指标属性
72
72
  JSIndexScript.ModifyAttribute=function(indexInfo,attribute){if(!attribute)return;if(attribute.Args)indexInfo.Args=attribute.Args;//外部可以设置参数
73
- if(IFrameSplitOperator.IsNumber(attribute.FloatPrecision))indexInfo.FloatPrecision=attribute.FloatPrecision;if(IFrameSplitOperator.IsNumber(attribute.StringFormat))indexInfo.StringFormat=attribute.StringFormat;if(IFrameSplitOperator.IsBool(attribute.IsSync))indexInfo.IsSync=attribute.IsSync;if(IFrameSplitOperator.IsBool(attribute.IsShortTitle))indexInfo.IsShortTitle=attribute.IsShortTitle;if(attribute.TitleFont)indexInfo.TitleFont=attribute.TitleFont;if(attribute.Lock)indexInfo.Lock=attribute.Lock;if(IFrameSplitOperator.IsNumber(attribute.YSplitType))indexInfo.YSplitType=attribute.YSplitType;if(IFrameSplitOperator.IsBool(attribute.IsShowIndexTitle))indexInfo.IsShowIndexTitle=attribute.IsShowIndexTitle;if(IFrameSplitOperator.IsNumber(attribute.KLineType))indexInfo.KLineType=attribute.KLineType;if(IFrameSplitOperator.IsBool(attribute.IsAuthorization))indexInfo.IsAuthorization=attribute.IsAuthorization;if(attribute.YAxis){var item=attribute.YAxis;if(!indexInfo.YAxis)indexInfo.YAxis={};if(IFrameSplitOperator.IsNumber(item.FloatPrecision))indexInfo.YAxis.FloatPrecision=item.FloatPrecision;if(IFrameSplitOperator.IsNumber(item.StringFormat))indexInfo.YAxis.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsBool(item.EnableRemoveZero))indexInfo.YAxis.EnableRemoveZero=item.EnableRemoveZero;if(IFrameSplitOperator.IsBool(item.ExcludeValue))indexInfo.YAxis.ExcludeValue=item.ExcludeValue;//不参数Y轴的计算
73
+ if(IFrameSplitOperator.IsNumber(attribute.FloatPrecision))indexInfo.FloatPrecision=attribute.FloatPrecision;if(IFrameSplitOperator.IsNumber(attribute.StringFormat))indexInfo.StringFormat=attribute.StringFormat;if(IFrameSplitOperator.IsBool(attribute.IsSync))indexInfo.IsSync=attribute.IsSync;if(IFrameSplitOperator.IsBool(attribute.IsShortTitle))indexInfo.IsShortTitle=attribute.IsShortTitle;if(attribute.TitleFont)indexInfo.TitleFont=attribute.TitleFont;if(attribute.Lock)indexInfo.Lock=attribute.Lock;if(IFrameSplitOperator.IsNumber(attribute.YSplitType))indexInfo.YSplitType=attribute.YSplitType;if(IFrameSplitOperator.IsBool(attribute.IsShowIndexTitle))indexInfo.IsShowIndexTitle=attribute.IsShowIndexTitle;if(IFrameSplitOperator.IsNumber(attribute.KLineType))indexInfo.KLineType=attribute.KLineType;if(IFrameSplitOperator.IsBool(attribute.IsAuthorization))indexInfo.IsAuthorization=attribute.IsAuthorization;if(IFrameSplitOperator.IsBool(attribute.IsShow))indexInfo.IsShow=attribute.IsShow;if(attribute.YAxis){var item=attribute.YAxis;if(!indexInfo.YAxis)indexInfo.YAxis={};if(IFrameSplitOperator.IsNumber(item.FloatPrecision))indexInfo.YAxis.FloatPrecision=item.FloatPrecision;if(IFrameSplitOperator.IsNumber(item.StringFormat))indexInfo.YAxis.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsBool(item.EnableRemoveZero))indexInfo.YAxis.EnableRemoveZero=item.EnableRemoveZero;if(IFrameSplitOperator.IsBool(item.ExcludeValue))indexInfo.YAxis.ExcludeValue=item.ExcludeValue;//不参数Y轴的计算
74
74
  }};JSIndexScript.prototype.Get=function(id){var data=g_CustomIndex.Get(id);if(data)return data;var func=this.DataMap.get(id);if(func){var data=func();data.ID=id;return data;}return null;};JSIndexScript.prototype.Search=function(name){var result=[];var reg=new RegExp(name,'i');this.DataMap.forEach(function(value,key){if(key.indexOf('交易系统-')!=0&&key.indexOf('五彩K线-')!=0&&key.search(reg)>=0)result.push(key);});return result;};JSIndexScript.prototype.MA=function(){var data={Name:'MA',Description:'均线',IsMainIndex:true,StringFormat:2,Args:[{Name:'M1',Value:5},{Name:'M2',Value:10},{Name:'M3',Value:20}],OutName:[{Name:'MA1',DynamicName:"MA{M1}"},{Name:'MA2',DynamicName:"MA{M2}"},{Name:'MA3',DynamicName:"MA{M3}"}],Script://脚本
75
75
  'MA1:MA(CLOSE,M1);\n\
76
76
  MA2:MA(CLOSE,M2);\n\
@@ -1262,37 +1262,8 @@ var scriptData=new JSIndexScript();if(option.ColorIndex)//五彩K线
1262
1262
  }else if(item.JsonData){chart.WindowIndex[i]=new JsonDataIndex(item.Name,item.Script,item.Args,item);//脚本执行
1263
1263
  }else if(item.Local&&item.Local.Data){chart.WindowIndex[i]=new LocalJsonDataIndex(item.Local.Name,item.Local.Args,{JsonData:item.Local.Data});}else if(item.API)//使用API挂接指标数据 API:{ Name:指标名字, Script:指标脚本可以为空, Args:参数可以为空, Url:指标执行地址 }
1264
1264
  {var apiItem=item.API;chart.WindowIndex[i]=new APIScriptIndex(apiItem.Name,apiItem.Script,apiItem.Args,item);}else{var indexItem=JSIndexMap.Get(item.Index);if(indexItem){chart.WindowIndex[i]=indexItem.Create(item.Option);if(chart.WindowIndex[i].SetArgs)chart.WindowIndex[i].SetArgs(item.Args);chart.CreateWindowIndex(i);}else{var scriptData=new JSIndexScript();var _indexInfo2=scriptData.Get(item.Index);if(!_indexInfo2)continue;JSIndexScript.ModifyAttribute(_indexInfo2,item);_indexInfo2.ID=item.Index;chart.WindowIndex[i]=new ScriptIndex(_indexInfo2.Name,_indexInfo2.Script,_indexInfo2.Args,_indexInfo2);//脚本执行
1265
- if(item.StringFormat>0)chart.WindowIndex[i].StringFormat=item.StringFormat;if(item.FloatPrecision>=0)chart.WindowIndex[i].FloatPrecision=item.FloatPrecision;}}chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],item,null);/* 窗口设置全部移动到 SetSubFrameAttribute
1266
- var frame=chart.Frame.SubFrame[i].Frame;
1267
- if (IFrameSplitOperator.IsBool(item.Modify)) frame.ModifyIndex=item.Modify;
1268
- if (IFrameSplitOperator.IsBool(item.Change)) frame.ChangeIndex=item.Change;
1269
- if (IFrameSplitOperator.IsBool(item.Close)) frame.CloseIndex=item.Close;
1270
- if (IFrameSplitOperator.IsBool(item.Overlay)) frame.OverlayIndex=item.Overlay;
1271
- if (IFrameSplitOperator.IsBool(item.Export)) frame.ExportData=item.Export;
1272
- if (IFrameSplitOperator.IsBool(item.MaxMin)) chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;
1273
- if (IFrameSplitOperator.IsBool(item.TitleWindow)) chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;
1274
- if (IFrameSplitOperator.IsBool(item.AddIndexWindow)) frame.AddIndexWindow=item.AddIndexWindow;
1275
- if (IFrameSplitOperator.IsBool(item.IndexHelp)) frame.IndexHelp=item.IndexHelp;
1276
-
1277
- if (item.IsDrawTitleBG==true) chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
1278
- if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;
1279
-
1280
- if (IFrameSplitOperator.IsNumber(item.TitleHeight)) chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;
1281
- else item.TitleHeight=chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight;
1282
- if (IFrameSplitOperator.IsBool(item.IsShowTitleArrow)) frame.IsShowTitleArrow=item.IsShowTitleArrow;
1283
- if (IFrameSplitOperator.IsNumber(item.TitleArrowType)) frame.TitleArrowType=item.TitleArrowType;
1284
- if (item.IsShowIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowIndexName=false;
1285
- if (item.IsShowOverlayIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowOverlayIndexName=false;
1286
- if (IFrameSplitOperator.IsNumber(item.IndexParamSpace)) chart.Frame.SubFrame[i].Frame.IndexParamSpace=item.IndexParamSpace;
1287
- if (IFrameSplitOperator.IsNumber(item.IndexTitleSpace)) chart.Frame.SubFrame[i].Frame.IndexTitleSpace=item.IndexTitleSpace;
1288
- if (!IFrameSplitOperator.IsUndefined(item.HorizontalReserved)) frame.HorizontalReserved=item.HorizontalReserved;
1289
-
1290
- if (item.OverlayIndexType)
1291
- {
1292
- if (IFrameSplitOperator.IsNumber(item.OverlayIndexType.Position)) chart.Frame.SubFrame[i].Frame.OverlayIndexType.Position=item.OverlayIndexType.Position;
1293
- if (IFrameSplitOperator.IsNumber(item.OverlayIndexType.LineSpace)) chart.Frame.SubFrame[i].Frame.OverlayIndexType.LineSpace=item.OverlayIndexType.LineSpace;
1294
- }
1295
- */}//叠加指标宽度
1265
+ if(item.StringFormat>0)chart.WindowIndex[i].StringFormat=item.StringFormat;if(item.FloatPrecision>=0)chart.WindowIndex[i].FloatPrecision=item.FloatPrecision;}}chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],item,null);chart.UpdateIndexTemporaryAttribute(i,item.AryTemporaryAttribute);//指标临时属性
1266
+ }//叠加指标宽度
1296
1267
  if(option.OverlayIndexFrameWidth>40)chart.Frame.FixedRightWidth.Overlay=option.OverlayIndexFrameWidth;//叠加指标
1297
1268
  if(IFrameSplitOperator.IsNonEmptyArray(option.OverlayIndex)){for(var i=0;i<option.OverlayIndex.length;++i){var item=option.OverlayIndex[i];if(item.Windows>=chart.Frame.SubFrame.length)continue;var itemString=(0,_stringify2.default)(item);var obj=JSON.parse(itemString);if(item.Index)obj.IndexName=item.Index;if(item.Windows>=0)obj.WindowIndex=item.Windows;chart.CreateOverlayWindowsIndex(obj);}}this.AdjustTitleHeight(chart);if(option.LatestPointFlash){var item=option.LatestPointFlash;if(item.Enable){var zIndex=6;if(IFrameSplitOperator.IsNumber(item.ZIndex))zIndex=item.ZIndex;this.CreateExtraCanvasElement(JSChart.LatestPointFlashKey,{ZIndex:zIndex});chart.CreateExtendChart("LatestPointFlashPaint",item);chart.StartLatestPointFlash();}}if(option.KLineCountDown){var item=option.KLineCountDown;if(item.Enable){var zIndex=4;if(IFrameSplitOperator.IsNumber(item.ZIndex))zIndex=item.ZIndex;this.CreateExtraCanvasElement(JSChart.KLineCountDownKey,{ZIndex:zIndex});chart.CreateExtendChart("KLineCountDownPaint",item);chart.StartCountDown();}}return chart;};//自定义指数历史K线图
1298
1269
  this.CreateCustomKLineChartContainer=function(option){var chart=new CustomKLineChartContainer(this.CanvasElement);//右键菜单
@@ -1450,7 +1421,8 @@ this.DeleteOverlaySymbol=function(symbol){if(this.JSChartContainer&&typeof this.
1450
1421
  this.SetFirstShowDate=function(obj){if(this.JSChartContainer&&typeof this.JSChartContainer.SetFirstShowDate=='function')this.JSChartContainer.SetFirstShowDate(obj);};//K线切换类型 0=实心K线 1=收盘价线 2=美国线 3=空心K线 4=面积图 5=订单流
1451
1422
  this.ChangeKLineDrawType=function(drawType,isDraw,option){if(this.JSChartContainer&&typeof this.JSChartContainer.ChangeKLineDrawType=='function')this.JSChartContainer.ChangeKLineDrawType(drawType,isDraw,option);};//指标窗口个数
1452
1423
  this.ChangeIndexWindowCount=function(count,option){if(this.JSChartContainer&&typeof this.JSChartContainer.ChangeIndexWindowCount=='function'){this.JSChartContainer.ChangeIndexWindowCount(count,option);}};//取消叠加
1453
- this.ClearOverlaySymbol=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ClearOverlaySymbol=='function'){this.JSChartContainer.ClearOverlaySymbol();}};this.DeleteKLineInfo=function(infoName){if(this.JSChartContainer&&typeof this.JSChartContainer.DeleteKLineInfo=='function'){this.JSChartContainer.DeleteKLineInfo(infoName);}};this.ClearKLineInfo=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ClearKLineInfo=='function'){this.JSChartContainer.ClearKLineInfo();}};this.AddKLineInfo=function(infoName,bUpdate){if(this.JSChartContainer&&typeof this.JSChartContainer.AddKLineInfo=='function'){this.JSChartContainer.AddKLineInfo(infoName,bUpdate);}};this.AddOverlayIndex=function(obj)//{WindowIndex:窗口ID, IndexName:指标ID, Identify:叠加指标ID(可选), API}
1424
+ this.ClearOverlaySymbol=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ClearOverlaySymbol=='function'){this.JSChartContainer.ClearOverlaySymbol();}};this.DeleteKLineInfo=function(infoName){if(this.JSChartContainer&&typeof this.JSChartContainer.DeleteKLineInfo=='function'){this.JSChartContainer.DeleteKLineInfo(infoName);}};this.ClearKLineInfo=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ClearKLineInfo=='function'){this.JSChartContainer.ClearKLineInfo();}};this.AddKLineInfo=function(infoName,bUpdate){if(this.JSChartContainer&&typeof this.JSChartContainer.AddKLineInfo=='function'){this.JSChartContainer.AddKLineInfo(infoName,bUpdate);}};//手动更新信息地雷
1425
+ this.UpdateKLineInfo=function(infoName,option){if(this.JSChartContainer&&typeof this.JSChartContainer.UpdateKLineInfo=='function')this.JSChartContainer.UpdateKLineInfo(infoName,option);};this.AddOverlayIndex=function(obj)//{WindowIndex:窗口ID, IndexName:指标ID, Identify:叠加指标ID(可选), API}
1454
1426
  {if(this.JSChartContainer&&typeof this.JSChartContainer.AddOverlayIndex=='function')this.JSChartContainer.AddOverlayIndex(obj);};this.MoveOverlayIndex=function(src,dest,option){if(this.JSChartContainer&&typeof this.JSChartContainer.MoveOverlayIndex=='function')this.JSChartContainer.MoveOverlayIndex(src,dest,option);};this.MoveOverlayIndexToNewWindow=function(src,option){if(this.JSChartContainer&&typeof this.JSChartContainer.MoveOverlayIndexToNewWindow=='function')this.JSChartContainer.MoveOverlayIndexToNewWindow(src,option);};this.DeleteOverlayWindowsIndex=function(identify){if(this.JSChartContainer&&typeof this.JSChartContainer.DeleteOverlayWindowsIndex=='function')this.JSChartContainer.DeleteOverlayWindowsIndex(identify);};this.StopAutoUpdate=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.StopAutoUpdate=='function')this.JSChartContainer.StopAutoUpdate();};this.ChartDestroy=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ChartDestroy=='function'){this.JSChartContainer.ChartDestroy();}};this.ChartDestory=this.ChartDestroy;//版本写错了,继续使用
1455
1427
  //设置深度图数据 depthData=[ {ID:深度图ID, Data:数据},] option={ Draw: true/false }
1456
1428
  this.SetDepthMapData=function(depthData,option){if(this.JSChartContainer&&typeof this.JSChartContainer.SetDepthMapData=='function')this.JSChartContainer.SetDepthMapData(depthData,option);};//设置强制横屏
@@ -1646,7 +1618,7 @@ ON_HIDE_ALL_POP_DIV:181,//隐藏所有弹框div
1646
1618
  ON_CLICK_STATUSBAR_ITEM:301,ON_RCLICK_STATUSBAR_ITEM:302,//5档买卖
1647
1619
  ON_CLICK_STOCKINFO_ITEM:350,ON_RCLICK_STOCKINFO_ITEM:351,ON_KEYBOARD_SHOW:350,//显示键盘精灵
1648
1620
  ON_KEYBOARD_SELECTED:351,//键盘精灵选中回车
1649
- ON_KEYBOARD_MOUSEUP:352,ON_CLICK_SCROLL_TEXT_ITEM:381,ON_RCLICK_SCROLL_TEXT_ITEM:382};var JSCHART_OPERATOR_ID={OP_SCROLL_LEFT:1,//往左移动
1621
+ ON_KEYBOARD_MOUSEUP:352,ON_CLICK_SCROLL_TEXT_ITEM:381,ON_RCLICK_SCROLL_TEXT_ITEM:382,ON_CLICK_UP_SCROLL_TEXT_ITEM:383,ON_RCLICK_UP_SCROLL_TEXT_ITEM:384};var JSCHART_OPERATOR_ID={OP_SCROLL_LEFT:1,//往左移动
1650
1622
  OP_SCROLL_RIGHT:2,//往右移动
1651
1623
  OP_ZOOM_OUT:3,//缩小
1652
1624
  OP_ZOOM_IN:4,//放大
@@ -1770,7 +1742,9 @@ ENDTR_ID:6000,//交易结束
1770
1742
  //上面状态个位数 是停牌状态 如3001 连续交易时间段停牌
1771
1743
  SUSP_ID:1//停牌
1772
1744
  //十字光标状态
1773
- };var JSCHART_CORSSCURSOR_STATUS_ID={NONE_ID:0,LINE_ID:1,LEFT_TEXT_ID:2,LEFT_INTER_TEXT_ID:4,RIGHT_TEXT_ID:8,RIGHT_INTER_TEXT_ID:16,BOTTOM_TEXT_ID:32};function PhoneDBClick(){this.Start=[];this.Clear=function(){this.Start=[];};this.AddTouchStart=function(x,y,time){if(this.Start.length>0){var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>0&&spanTime<300){this.Start.push({X:x,Y:y,Time:time});}else{this.Start=[];}}else{this.Start.push({X:x,Y:y,Time:time});}};this.IsVaildDBClick=function(){if(this.Start.length==2)return true;return false;};this.AddTouchEnd=function(time){if(this.Start.length<=0)return;var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>=0&&spanTime<150){}else{this.Start=[];}};}/*
1745
+ };var JSCHART_CORSSCURSOR_STATUS_ID={NONE_ID:0,LINE_ID:1,LEFT_TEXT_ID:2,LEFT_INTER_TEXT_ID:4,RIGHT_TEXT_ID:8,RIGHT_INTER_TEXT_ID:16,BOTTOM_TEXT_ID:32};var JSCHART_TEMPORARY_ATTRIBUTE={MAINFRAME:{BOTTOMSPACE:"MainFrame-BottomSpace",//主图底部预留空间,单位像素
1746
+ TOPSPACE:"MainFrame-TopSpace"//主图顶部预留空间,单位像素
1747
+ }};function PhoneDBClick(){this.Start=[];this.Clear=function(){this.Start=[];};this.AddTouchStart=function(x,y,time){if(this.Start.length>0){var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>0&&spanTime<300){this.Start.push({X:x,Y:y,Time:time});}else{this.Start=[];}}else{this.Start.push({X:x,Y:y,Time:time});}};this.IsVaildDBClick=function(){if(this.Start.length==2)return true;return false;};this.AddTouchEnd=function(time){if(this.Start.length<=0)return;var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>=0&&spanTime<150){}else{this.Start=[];}};}/*
1774
1748
  图形控件
1775
1749
  */function JSChartContainer(uielement,OffscreenElement,cacheElement){var _this9=this;this.ClassName='JSChartContainer';var _self=this;this.Frame;//框架画法
1776
1750
  this.ChartPaint=new Array();//图形画法
@@ -2466,8 +2440,10 @@ return result;}else{return paint.ClearPoint();}};//删除指定窗口的所有
2466
2440
  this.DeleteWindowsOverlayIndex=function(windowIndex){if(!IFrameSplitOperator.IsNumber(windowIndex))return;if(windowIndex<0||windowIndex>=this.Frame.SubFrame.length)return;var subFrame=this.Frame.SubFrame[windowIndex];if(!IFrameSplitOperator.IsNonEmptyArray(subFrame.OverlayIndex))return;var aryIndexID=[];for(var i=0;i<subFrame.OverlayIndex.length;++i){var overlayItem=subFrame.OverlayIndex[i];aryIndexID.push(overlayItem.Identify);for(var j=0;j<overlayItem.ChartPaint.length;++j)//图形销毁事件
2467
2441
  {var overlayChart=overlayItem.ChartPaint[j];if(overlayChart&&overlayChart.OnDestroy)overlayChart.OnDestroy();}overlayItem.ChartPaint=[];}subFrame.OverlayIndex=[];var titlePaint=this.TitlePaint[windowIndex+1];for(var i=0;i<aryIndexID.length;++i){var identify=aryIndexID[i];if(titlePaint.OverlayIndex.has(identify))titlePaint.OverlayIndex.delete(identify);if(titlePaint.OverlayDynamicTitle.has(identify))titlePaint.OverlayDynamicTitle.delete(identify);}};//删除叠加指标, 没有重绘
2468
2442
  this.DeleteOverlayIndex=function(identify,windowIndex){var findIndex=null;if(IFrameSplitOperator.IsNumber(windowIndex)){if(windowIndex>=0&&windowIndex<this.Frame.SubFrame.length){var item=this.Frame.SubFrame[windowIndex];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(overlayItem.Identify===identify){for(var k=0;k<overlayItem.ChartPaint.length;++k)//图形销毁事件
2469
- {var overlayChart=overlayItem.ChartPaint[k];if(overlayChart&&overlayChart.OnDestroy)overlayChart.OnDestroy();}item.OverlayIndex.splice(j,1);findIndex=windowIndex;break;}}}}else{for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(overlayItem.Identify===identify){for(var k=0;k<overlayItem.ChartPaint.length;++k)//图形销毁事件
2470
- {var overlayChart=overlayItem.ChartPaint[k];if(overlayChart&&overlayChart.OnDestroy)overlayChart.OnDestroy();}item.OverlayIndex.splice(j,1);findIndex=i;break;}}}}if(findIndex==null){console.warn('[JSChartContainer::DeleteOverlayIndex] can\'t find overlay index. [identify='+identify+']');return false;}var windowsIndex=findIndex+1;var titlePaint=this.TitlePaint[windowsIndex];if(titlePaint.OverlayIndex.has(identify))titlePaint.OverlayIndex.delete(identify);if(titlePaint.OverlayDynamicTitle.has(identify))titlePaint.OverlayDynamicTitle.delete(identify);return true;};this.FindScriptIndex=function(guid,windowsIndex){if(IFrameSplitOperator.IsNumber(windowsIndex)&&windowsIndex>=0){if(windowsIndex>=this.Frame.SubFrame.length)return null;var item=this.WindowIndex[windowsIndex];if(item&&item.Guid==guid)return{Type:0,Data:item,WindowIndex:windowsIndex};var item=this.Frame.SubFrame[windowsIndex];for(var i=0;i<item.OverlayIndex.length;++i){var overlayItem=item.OverlayIndex[i];if(overlayItem.Identify===guid)return{Type:1,Data:overlayItem,WindowIndex:windowsIndex,OverlayIndex:i};}}else{for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.WindowIndex[i];if(item&&item.Guid==guid)return{Type:0,Data:item,WindowIndex:i};var item=this.Frame.SubFrame[i];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(overlayItem.Identify===guid)return{Type:1,Data:overlayItem,WindowIndex:i,OverlayIndex:j};}}}return null;};//移动指标 src={ WindowIndex:指标窗口索引,IndexID:指标ID } dest={ WindowIndex:指标窗口索引 } , option={ Operator: 0=移动, 1=复制 }
2443
+ {var overlayChart=overlayItem.ChartPaint[k];if(overlayChart&&overlayChart.OnDestroy)overlayChart.OnDestroy();}overlayItem.RestoreTemporaryAttribute(item.Frame);//还原临时属性
2444
+ item.OverlayIndex.splice(j,1);findIndex=windowIndex;break;}}}}else{for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(overlayItem.Identify===identify){for(var k=0;k<overlayItem.ChartPaint.length;++k)//图形销毁事件
2445
+ {var overlayChart=overlayItem.ChartPaint[k];if(overlayChart&&overlayChart.OnDestroy)overlayChart.OnDestroy();}overlayItem.RestoreTemporaryAttribute(item.Frame);//还原临时属性
2446
+ item.OverlayIndex.splice(j,1);findIndex=i;break;}}}}if(findIndex==null){console.warn('[JSChartContainer::DeleteOverlayIndex] can\'t find overlay index. [identify='+identify+']');return false;}var windowsIndex=findIndex+1;var titlePaint=this.TitlePaint[windowsIndex];if(titlePaint.OverlayIndex.has(identify))titlePaint.OverlayIndex.delete(identify);if(titlePaint.OverlayDynamicTitle.has(identify))titlePaint.OverlayDynamicTitle.delete(identify);return true;};this.FindScriptIndex=function(guid,windowsIndex){if(IFrameSplitOperator.IsNumber(windowsIndex)&&windowsIndex>=0){if(windowsIndex>=this.Frame.SubFrame.length)return null;var item=this.WindowIndex[windowsIndex];if(item&&item.Guid==guid)return{Type:0,Data:item,WindowIndex:windowsIndex};var item=this.Frame.SubFrame[windowsIndex];for(var i=0;i<item.OverlayIndex.length;++i){var overlayItem=item.OverlayIndex[i];if(overlayItem.Identify===guid)return{Type:1,Data:overlayItem,WindowIndex:windowsIndex,OverlayIndex:i};}}else{for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.WindowIndex[i];if(item&&item.Guid==guid)return{Type:0,Data:item,WindowIndex:i};var item=this.Frame.SubFrame[i];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(overlayItem.Identify===guid)return{Type:1,Data:overlayItem,WindowIndex:i,OverlayIndex:j};}}}return null;};//移动指标 src={ WindowIndex:指标窗口索引,IndexID:指标ID } dest={ WindowIndex:指标窗口索引 } , option={ Operator: 0=移动, 1=复制 }
2471
2447
  this.MoveIndex=function(src,dest,option){var _this21=this;if(!src||!dest||!option)return false;if(!IFrameSplitOperator.IsNumber(src.WindowIndex)||src.WindowIndex<0||src.WindowIndex>=this.Frame.SubFrame.length)return false;if(!IFrameSplitOperator.IsNumber(dest.WindowIndex)||dest.WindowIndex<0||dest.WindowIndex>=this.Frame.SubFrame.length)return false;var find=this.FindScriptIndex(src.IndexID,src.WindowIndex);if(!find)return false;var findItem=null,findOverlayItem=null;if(find.Type==0)findItem=find.Data;else if(find.Type==1)findOverlayItem=find.Data;if(!findOverlayItem&&!findItem)return false;//固定窗口
2472
2448
  var fixedWindowCount=0;var isMinuteChart=this.ClassName=="MinuteChartContainer"||this.ClassName=="MinuteChartHScreenContainer"?true:false;if(isMinuteChart)fixedWindowCount=2;//走势图固定2个窗口
2473
2449
  if(dest.WindowIndex>=fixedWindowCount&&this.WindowIndex[dest.WindowIndex]==null)//主指标是空的,移动到主指标上
@@ -2779,7 +2755,7 @@ this.XTextExtend;//[0]=底部 { Align:0=默认(居中), 1=左对齐 }
2779
2755
  this.XLineExtend;//[0]=底部 { Mode:1, Color: } Mode=1 分割线 Mode=2短线
2780
2756
  this.FrameData={SubFrameItem:null};//窗口框架信息
2781
2757
  //画图工具刻度
2782
- this.DrawPicture={BGColor:g_JSChartResource.DrawPicture.XYCoordinate.BGColor,TextBGColor:g_JSChartResource.DrawPicture.XYCoordinate.TextBGColor,TextColor:g_JSChartResource.DrawPicture.XYCoordinate.TextColor,Font:g_JSChartResource.DrawPicture.XYCoordinate.Font};this.IChartFramePainting_ReloadResource=this.ReloadResource;this.ReloadResource=function(resource){this.IChartFramePainting_ReloadResource(resource);if(!resource){this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowButton=CloneData(g_JSChartResource.Buttons.CloseWindow);this.OverlayIndexButton=CloneData(g_JSChartResource.Buttons.OverlayIndex);this.ChangeIndexButton=CloneData(g_JSChartResource.Buttons.ChangeIndex);this.ModifyIndexParamButton=CloneData(g_JSChartResource.Buttons.ModifyIndexParam);this.MaxMinWindowButton=CloneData(g_JSChartResource.Buttons.MaxMinWindow);this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);}if(this.ToolbarButtonStyle==1){this.ClearToolbar();}else{if(this.DivFrameToolbar)this.DivFrameToolbar.ReloadResource(resource);}};this.DrawFrame=function(){if(this.XPointCount>0){var dInterval=this.ChartBorder.GetWidth()/(6*this.XPointCount);//分6份, 数据4 间距2
2758
+ this.DrawPicture={BGColor:g_JSChartResource.DrawPicture.XYCoordinate.BGColor,TextBGColor:g_JSChartResource.DrawPicture.XYCoordinate.TextBGColor,TextColor:g_JSChartResource.DrawPicture.XYCoordinate.TextColor,Font:g_JSChartResource.DrawPicture.XYCoordinate.Font};this.IChartFramePainting_ReloadResource=this.ReloadResource;this.ReloadResource=function(resource){this.IChartFramePainting_ReloadResource(resource);if(!resource){this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowButton=CloneData(g_JSChartResource.Buttons.CloseWindow);this.OverlayIndexButton=CloneData(g_JSChartResource.Buttons.OverlayIndex);this.ChangeIndexButton=CloneData(g_JSChartResource.Buttons.ChangeIndex);this.ModifyIndexParamButton=CloneData(g_JSChartResource.Buttons.ModifyIndexParam);this.MaxMinWindowButton=CloneData(g_JSChartResource.Buttons.MaxMinWindow);this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);this.ExportDataButton=CloneData(g_JSChartResource.Buttons.ExportData);}if(this.ToolbarButtonStyle==1){this.ClearToolbar();}else{if(this.DivFrameToolbar)this.DivFrameToolbar.ReloadResource(resource);}};this.DrawFrame=function(){if(this.XPointCount>0){var dInterval=this.ChartBorder.GetWidth()/(6*this.XPointCount);//分6份, 数据4 间距2
2783
2759
  this.DistanceWidth=2*dInterval;this.DataWidth=4*dInterval;}this.DrawHorizontal();this.DrawVertical();};this.DrawTitleButton=function(aryButton,moveonPoint,mouseStatus){var border=this.GetBorder();if(this.IsHScreen){var y=border.Bottom-this.ToolbarConfig.Margin.Right;var x=border.RightTitle+this.ChartBorder.TitleHeight/2;this.ToolbarCacheSize={RToolbar:{Right:y,Left:y}};//相当于额 Top, Bottom
2784
2760
  this.Canvas.save();this.Canvas.translate(x,y);this.Canvas.rotate(90*Math.PI/180);//底部开始画
2785
2761
  var yButton=0,xButton=0,bottom=0;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xButton=bottom-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var color=item.Style.Color;this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xButton,0);var rtButton={Left:x-size/2,Right:x+size/2,Bottom:y,Width:size,Height:size+item.Style.MerginLeft};rtButton.Top=rtButton.Bottom-size-item.Style.MerginLeft;this.Buttons.push({ID:item.ID,Rect:rtButton});this.ToolbarCacheSize.RToolbar.Left=rtButton.Top;bottom=xButton;y=rtButton.Top;}this.Canvas.restore();}else{var right=border.RightEx-this.ToolbarConfig.Margin.Right;var left=border.Left;var yButton=border.Top+this.ChartBorder.TitleHeight/2;this.ToolbarCacheSize={RToolbar:{Right:right,Left:right}//右往左绘制
@@ -3377,11 +3353,14 @@ this.DrawHorizontal=function(){}/*
3377
3353
  */};this.GetScaleTextWidth=function(){return{TextWidth:0};};}function SubFrameItem(){this.Frame;this.Height;this.OverlayIndex=[];//叠加指标
3378
3354
  //this.Interval=60; //子坐标间间距
3379
3355
  }function OverlayIndexItem(){this.Frame;this.ChartPaint=[];this.Identify=Guid();this.Scprit;//脚本
3356
+ this.AryTemporaryAttribute=[];//临时属性,删除指标以后需要还原 { Name:, Value:, BackupValue: }
3380
3357
  this.UpdateFrameMaxMin=function()//调整坐标最大 最小值
3381
3358
  {var value={Max:null,Min:null};if(this.Frame.IsShareY)//共享Y轴坐标
3382
3359
  {this.Frame.XYSplit=true;return;}if(this.Frame.YSpecificMaxMin)//固定坐标
3383
3360
  {value.Max=this.Frame.YSpecificMaxMin.Max;value.Min=this.Frame.YSpecificMaxMin.Min;}else{for(var i=0;i<this.ChartPaint.length;++i){var paint=this.ChartPaint[i];if(paint.IsShow==false)continue;//隐藏的图形不计算
3384
- var range=paint.GetMaxMin();if(range==null||range.Max==null||range.Min==null)continue;if(IFrameSplitOperator.IsNumber(range.Max)){if(value.Max==null||value.Max<range.Max)value.Max=range.Max;}if(IFrameSplitOperator.IsNumber(range.Min)){if(value.Min==null||value.Min>range.Min)value.Min=range.Min;}}}if(!IFrameSplitOperator.IsNumber(this.Frame.YMaxMin.Max)||this.Frame.YMaxMin.Max!=value.Max){this.Frame.YMaxMin.Max=value.Max;this.Frame.XYSplit=true;}if(!IFrameSplitOperator.IsNumber(this.Frame.YMaxMin.Min)||this.Frame.YMaxMin.Min!=value.Min){this.Frame.YMaxMin.Min=value.Min;this.Frame.XYSplit=true;}if(this.Frame.XYSplit){var max=10,min=0;if(value.Max!=null)max=value.Max;if(value.Min!=null)min=value.Min;this.Frame.HorizontalMax=max;this.Frame.HorizontalMin=min;}else{this.Frame.XYSplit=true;}};}//行情框架
3361
+ var range=paint.GetMaxMin();if(range==null||range.Max==null||range.Min==null)continue;if(IFrameSplitOperator.IsNumber(range.Max)){if(value.Max==null||value.Max<range.Max)value.Max=range.Max;}if(IFrameSplitOperator.IsNumber(range.Min)){if(value.Min==null||value.Min>range.Min)value.Min=range.Min;}}}if(!IFrameSplitOperator.IsNumber(this.Frame.YMaxMin.Max)||this.Frame.YMaxMin.Max!=value.Max){this.Frame.YMaxMin.Max=value.Max;this.Frame.XYSplit=true;}if(!IFrameSplitOperator.IsNumber(this.Frame.YMaxMin.Min)||this.Frame.YMaxMin.Min!=value.Min){this.Frame.YMaxMin.Min=value.Min;this.Frame.XYSplit=true;}if(this.Frame.XYSplit){var max=10,min=0;if(value.Max!=null)max=value.Max;if(value.Min!=null)min=value.Min;this.Frame.HorizontalMax=max;this.Frame.HorizontalMin=min;}else{this.Frame.XYSplit=true;}};this.UpdateTemporaryAttribute=function(mainFrame,aryAttribute)//更新临时属性
3362
+ {if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreTemporaryAttribute=function(mainFrame)//还原临时属性
3363
+ {if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTemporaryAttribute))return;for(var i=0;i<this.AryTemporaryAttribute.length;++i){var item=this.AryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}}this.AryTemporaryAttribute=[];};}//行情框架
3385
3364
  function HQTradeFrame(){this.SubFrame=new Array();//SubFrameItem 数组
3386
3365
  this.SizeChange=true;//大小是否改变
3387
3366
  this.ChartBorder;this.Canvas;//画布
@@ -3566,7 +3545,8 @@ NEWS:11,//新闻
3566
3545
  DIVIDEND:12,//除权
3567
3546
  POLICY:20,//策略信息
3568
3547
  //公告预留类型
3569
- ANNOUNCEMENT_EX_START:100,ANNOUNCEMENT_EX_END:200};function KLineInfoData(){this.ID;this.Date;this.Time;//时间
3548
+ ANNOUNCEMENT_EX_START:100,ANNOUNCEMENT_EX_END:200,//扩展信息
3549
+ EXTEND_INFO_START:301,EXTEND_INFO_END:399};function KLineInfoData(){this.ID;this.Date;this.Time;//时间
3570
3550
  this.Title;this.InfoType;this.ExtendData;//扩展数据
3571
3551
  }//外部数据计算方法接口
3572
3552
  function DataPlus(){this.PeriodCallback=new _map2.default();//key=周期id value={ Period, Callback(period,data,self): }
@@ -4212,8 +4192,8 @@ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++
4212
4192
  //订单流样式6
4213
4193
  this.DrawOrderFlow_Style6=function(){var isHScreen=this.ChartFrame.IsHScreen===true;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;this.AryOrderFlowBorder=[];if(isHScreen){var border=this.ChartBorder.GetHScreenBorder();xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;chartright=border.BottomEx;}var config=this.OrderFlow_Style6;var upColor=config.UpColor;var downColor=config.DownColor;var unchagneColor=config.UnchagneColor;var barWidth=ToFixedRect(config.BarWidth);var textWidth=dataWidth-barWidth;if(textWidth/7<barWidth)barWidth=textWidth/7;if(barWidth<=3)barWidth=3;this.ShowRange.Start=this.Data.DataOffset;this.ShowRange.End=this.ShowRange.Start;this.ShowRange.DataCount=0;this.ShowRange.ShowCount=xPointCount;this.DrawKRange.Start=this.Data.DataOffset;this.DrawOrderFlowHBar();//横向柱子
4214
4194
  //居中K线
4215
- for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth,++this.ShowRange.DataCount){var data=this.Data.Data[i];this.ShowRange.End=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;var x=left+(right-left)/2;var yLow=this.GetYFromData(data.Low,false);var yHigh=this.GetYFromData(data.High,false);var yOpen=this.GetYFromData(data.Open,false);var yClose=this.GetYFromData(data.Close,false);var y=yHigh;this.DrawKRange.End=i;var barTop=Math.min(yOpen,yClose);var barBottom=Math.max(yOpen,yClose);var barLeft=ToFixedRect(x-barWidth/2);var barRight=barLeft+barWidth;var kColor=unchagneColor;if(data.Open<data.Close)kColor=upColor;else if(data.Open>data.Close)kColor=downColor;this.Canvas.strokeStyle=kColor;this.Canvas.beginPath();this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(yLow));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(yHigh));this.Canvas.stroke();this.Canvas.fillStyle=kColor;var barHeight=ToFixedRect(barBottom-barTop);if(barHeight<1)barHeight=1;this.Canvas.fillRect(barLeft,ToFixedRect(barTop),barWidth,barHeight);var rtKLine={Left:barLeft,Right:barRight,Top:barTop,Bottom:barBottom,Center:x,DataWidth:dataWidth};rtKLine.Width=rtKLine.Right-rtKLine.Left;rtKLine.Height=rtKLine.Bottom-rtKLine.Top;var rtCell={Left:left-distanceWidth/2,Right:right-distanceWidth/2};rtCell.Width=rtCell.Right-rtCell.Left;this.DrawOrderFlowBar_Style6(data.OrderFlow,data,rtKLine,rtCell,isHScreen);}};this.DrawOrderFlowBar_Style6=function(orderFlow,kItem,rtKLine,rtCell,isHScreen){var cellWidth=(rtCell.Width-rtKLine.Width)/2;var cellHeight=0;if(orderFlow&&IFrameSplitOperator.IsNumber(orderFlow.PriceOffset))cellHeight=this.GetPriceYOffset(orderFlow.PriceOffset);var textFont=this.GetDynamicOrderFlowFont(cellHeight,cellWidth);this.IsShowOrderText=cellHeight>5&&cellWidth>10;if(this.OrderFlow.AlwaysShowOrderText)this.IsShowOrderText=true;var config=this.OrderFlow_Style6;this.Canvas.textBaseline='middle';this.Canvas.font=textFont;var minBarWidth=config.MinBarWidth;var aryBorder=[];if(orderFlow&&IFrameSplitOperator.IsNonEmptyArray(orderFlow.Order)){var maxValue=orderFlow.MaxValue;for(var i=0;i<orderFlow.Order.length;++i){var item=orderFlow.Order[i];var yPrice=this.GetYFromData(item.Price,false);//左边
4216
- var rect={Left:rtCell.Left,Right:rtKLine.Left-1,Bottom:yPrice+cellHeight/2,Top:yPrice-cellHeight/2};rect.Width=rect.Right-rect.Left;rect.Height=rect.Bottom-rect.Top;if(IFrameSplitOperator.IsNumber(item.Ask.Value)){var color=config.AskBarColor;if(item.Ask.BG)color=item.Ask.BG;this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rect.Left+minBarWidth),rect.Top,ToFixedRect(rect.Width-minBarWidth),rect.Height);aryBorder.push({Left:rect.Left,Right:rect.Right,Y:rect.Top});var text=null;if(IFrameSplitOperator.IsString(item.Ask.Text))text=item.Ask.Text;else text=item.Ask.Value.toString();if(text&&this.IsShowOrderText){var textColor=this.OrderFlow.Text.Color;if(item.Ask.Color)textColor=item.Ask.Color;this.Canvas.fillStyle=textColor;this.Canvas.textAlign='right';var xText=rect.Right-this.OrderFlow_Style5.LeftMargin;if(item.Ask.Font){var itemFont=this.GetDynamicOrderFlowFont(cellHeight,xKLine.DataWidth/2,item.Ask.Font);this.Canvas.font=itemFont;this.Canvas.fillText(text,xText,yPrice);this.Canvas.font=textFont;}else{this.Canvas.fillText(text,xText,yPrice);}}if(item.Ask.MinBar&&item.Ask.MinBar.Color){var color=item.Ask.MinBar.Color;var rtMinBar={Left:rect.Left,Top:rect.Top,Width:minBarWidth-1,Height:rect.Height};this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rtMinBar.Left),rtMinBar.Top,ToFixedRect(rtMinBar.Width),rtMinBar.Height);}}var rect={Left:rtKLine.Right+1,Right:rtCell.Right,Bottom:yPrice+cellHeight/2,Top:yPrice-cellHeight/2};rect.Width=rect.Right-rect.Left;rect.Height=rect.Bottom-rect.Top;if(IFrameSplitOperator.IsNumber(item.Bid.Value)){var color=config.BidBarColor;if(item.Bid.BG)color=item.Bid.BG;this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rect.Left),rect.Top,ToFixedRect(rect.Width-minBarWidth),rect.Height);aryBorder.push({Left:rect.Left,Right:rect.Right,Y:rect.Top});var text=null;if(IFrameSplitOperator.IsString(item.Bid.Text))text=item.Bid.Text;else text=item.Bid.Value.toString();if(text&&this.IsShowOrderText){var textColor=this.OrderFlow.Text.Color;if(item.Bid.Color)textColor=item.Bid.Color;this.Canvas.fillStyle=textColor;this.Canvas.textAlign='left';var xText=rect.Left+this.OrderFlow_Style5.RightMargin;if(item.Bid.Font){var itemFont=this.GetDynamicOrderFlowFont(cellHeight,xKLine.DataWidth/2,item.Bid.Font);this.Canvas.font=itemFont;this.Canvas.fillText(text,xText,yPrice);this.Canvas.font=textFont;}else{this.Canvas.fillText(text,xText,yPrice);}}if(item.Bid.MinBar&&item.Bid.MinBar.Color){var color=item.Bid.MinBar.Color;var rtMinBar={Left:rect.Right-minBarWidth+1,Top:rect.Top,Width:minBarWidth-1,Height:rect.Height};this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rtMinBar.Left),rtMinBar.Top,ToFixedRect(rtMinBar.Width),rtMinBar.Height);}}}}if(IFrameSplitOperator.IsNonEmptyArray(aryBorder)&&config.BorderColor){this.Canvas.strokeStyle=config.BorderColor;this.Canvas.beginPath();for(var i=0;i<aryBorder.length;++i){var item=aryBorder[i];this.Canvas.moveTo(ToFixedPoint(item.Left),ToFixedPoint(item.Y));this.Canvas.lineTo(ToFixedPoint(item.Right),ToFixedPoint(item.Y));}this.Canvas.stroke();}this.DrawOrderFlowBarHighLow(orderFlow,rtKLine,cellHeight);//绘制最高 最低点文字
4195
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth,++this.ShowRange.DataCount){var data=this.Data.Data[i];this.ShowRange.End=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;var x=left+(right-left)/2;var yLow=this.GetYFromData(data.Low,false);var yHigh=this.GetYFromData(data.High,false);var yOpen=this.GetYFromData(data.Open,false);var yClose=this.GetYFromData(data.Close,false);var y=yHigh;this.DrawKRange.End=i;var barTop=Math.min(yOpen,yClose);var barBottom=Math.max(yOpen,yClose);var barLeft=ToFixedRect(x-barWidth/2);var barRight=barLeft+barWidth;var kColor=unchagneColor;if(data.Open<data.Close)kColor=upColor;else if(data.Open>data.Close)kColor=downColor;this.Canvas.strokeStyle=kColor;this.Canvas.beginPath();this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(yLow));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(yHigh));this.Canvas.stroke();this.Canvas.fillStyle=kColor;var barHeight=ToFixedRect(barBottom-barTop);if(barHeight<1)barHeight=1;this.Canvas.fillRect(barLeft,ToFixedRect(barTop),barWidth,barHeight);var rtKLine={Left:barLeft,Right:barRight,Top:barTop,Bottom:barBottom,Center:x,DataWidth:dataWidth};rtKLine.Width=rtKLine.Right-rtKLine.Left;rtKLine.Height=rtKLine.Bottom-rtKLine.Top;var rtCell={Left:left-distanceWidth/2,Right:right+distanceWidth/2};rtCell.Width=rtCell.Right-rtCell.Left;this.DrawOrderFlowBar_Style6(data.OrderFlow,data,rtKLine,rtCell,isHScreen);}};this.DrawOrderFlowBar_Style6=function(orderFlow,kItem,rtKLine,rtCell,isHScreen){var cellWidth=(rtCell.Width-rtKLine.Width)/2;var cellHeight=0;if(orderFlow&&IFrameSplitOperator.IsNumber(orderFlow.PriceOffset))cellHeight=this.GetPriceYOffset(orderFlow.PriceOffset);var textFont=this.GetDynamicOrderFlowFont(cellHeight,cellWidth);this.IsShowOrderText=cellHeight>5&&cellWidth>10;if(this.OrderFlow.AlwaysShowOrderText)this.IsShowOrderText=true;var config=this.OrderFlow_Style6;this.Canvas.textBaseline='middle';this.Canvas.font=textFont;var minBarWidth=config.MinBarWidth;var aryBorder=[];if(orderFlow&&IFrameSplitOperator.IsNonEmptyArray(orderFlow.Order)){var maxValue=orderFlow.MaxValue;for(var i=0;i<orderFlow.Order.length;++i){var item=orderFlow.Order[i];var yPrice=this.GetYFromData(item.Price,false);//左边
4196
+ var rect={Left:rtCell.Left,Right:rtKLine.Left-1,Bottom:yPrice+cellHeight/2,Top:yPrice-cellHeight/2};rect.Width=rect.Right-rect.Left;rect.Height=rect.Bottom-rect.Top;if(IFrameSplitOperator.IsNumber(item.Ask.Value)){var color=config.AskBarColor;if(item.Ask.BG)color=item.Ask.BG;this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rect.Left+minBarWidth),rect.Top,ToFixedRect(rect.Width-minBarWidth),rect.Height);var borderLine={Left:rect.Left+minBarWidth,Right:rect.Right,Y:rect.Top};var maxTextWidth=rect.Width-minBarWidth;if(maxTextWidth>1)maxTextWidth-=1;var text=null;if(IFrameSplitOperator.IsString(item.Ask.Text))text=item.Ask.Text;else text=item.Ask.Value.toString();if(text&&this.IsShowOrderText){var textColor=this.OrderFlow.Text.Color;if(item.Ask.Color)textColor=item.Ask.Color;this.Canvas.fillStyle=textColor;this.Canvas.textAlign='right';var xText=rect.Right-this.OrderFlow_Style5.LeftMargin;if(item.Ask.Font){var itemFont=this.GetDynamicOrderFlowFont(cellHeight,cellWidth,item.Ask.Font);this.Canvas.font=itemFont;this.Canvas.fillText(text,xText,yPrice,maxTextWidth);this.Canvas.font=textFont;}else{this.Canvas.fillText(text,xText,yPrice,maxTextWidth);}}if(item.Ask.MinBar&&item.Ask.MinBar.Color){var color=item.Ask.MinBar.Color;var rtMinBar={Left:rect.Left,Top:rect.Top,Width:minBarWidth-1,Height:rect.Height};this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rtMinBar.Left),rtMinBar.Top,ToFixedRect(rtMinBar.Width),rtMinBar.Height);borderLine={Left:rtMinBar.Left,Right:rect.Right,Y:rect.Top};}aryBorder.push(borderLine);}var rect={Left:rtKLine.Right+1,Right:rtCell.Right,Bottom:yPrice+cellHeight/2,Top:yPrice-cellHeight/2};rect.Width=rect.Right-rect.Left;rect.Height=rect.Bottom-rect.Top;if(IFrameSplitOperator.IsNumber(item.Bid.Value)){var color=config.BidBarColor;if(item.Bid.BG)color=item.Bid.BG;this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rect.Left),rect.Top,ToFixedRect(rect.Width-minBarWidth),rect.Height);var borderLine={Left:rect.Left,Right:rect.Right-minBarWidth,Y:rect.Top};var maxTextWidth=rect.Width-minBarWidth;if(maxTextWidth>1)maxTextWidth-=1;var text=null;if(IFrameSplitOperator.IsString(item.Bid.Text))text=item.Bid.Text;else text=item.Bid.Value.toString();if(text&&this.IsShowOrderText){var textColor=this.OrderFlow.Text.Color;if(item.Bid.Color)textColor=item.Bid.Color;this.Canvas.fillStyle=textColor;this.Canvas.textAlign='left';var xText=rect.Left+this.OrderFlow_Style5.RightMargin;if(item.Bid.Font){var itemFont=this.GetDynamicOrderFlowFont(cellHeight,cellWidth,item.Bid.Font);this.Canvas.font=itemFont;this.Canvas.fillText(text,xText,yPrice,maxTextWidth);this.Canvas.font=textFont;}else{this.Canvas.fillText(text,xText,yPrice,maxTextWidth);}}if(item.Bid.MinBar&&item.Bid.MinBar.Color){var color=item.Bid.MinBar.Color;var rtMinBar={Left:rect.Right-minBarWidth+1,Top:rect.Top,Width:minBarWidth-1,Height:rect.Height};this.Canvas.fillStyle=color;this.Canvas.fillRect(ToFixedRect(rtMinBar.Left),rtMinBar.Top,ToFixedRect(rtMinBar.Width),rtMinBar.Height);borderLine={Left:rect.Left,Right:rect.Right,Y:rect.Top};}aryBorder.push(borderLine);}}}if(IFrameSplitOperator.IsNonEmptyArray(aryBorder)&&config.BorderColor){this.Canvas.strokeStyle=config.BorderColor;this.Canvas.beginPath();for(var i=0;i<aryBorder.length;++i){var item=aryBorder[i];this.Canvas.moveTo(ToFixedPoint(item.Left),ToFixedPoint(item.Y));this.Canvas.lineTo(ToFixedPoint(item.Right),ToFixedPoint(item.Y));}this.Canvas.stroke();}this.DrawOrderFlowBarHighLow(orderFlow,rtKLine,cellHeight);//绘制最高 最低点文字
4217
4197
  };//////////////////////////////////////////////////////////////
4218
4198
  // high low bar
4219
4199
  //
@@ -4316,29 +4296,74 @@ if(firstOpen==null)return;var drawType=this.DrawType;if(this.CustomDrawType!=nul
4316
4296
  }return this.PtInKBar(x,y,{OverlayKLine:true});};this.DrawSelectedStatus=function(){this.DrawLinePoint({OverlayKLine:true});};}//K线表格
4317
4297
  function ChartKLineTable(){this.newMethod=IChartPainting;//派生
4318
4298
  this.newMethod();delete this.newMethod;this.ClassName='ChartKLineTable';//类名
4319
- this.Data;this.RowName;this.RowNamePosition=1;//0=不显示 1=左边内部 2=左边外部 3=右边外部
4320
- this.BGColor;//背景色
4321
- this.BorderColor;//分割线颜色
4322
- this.AryBorderColor;//分割线颜色
4323
- this.RowCount=5;//行数
4299
+ this.Data;this.AryRowName;this.RowCount=5;//行数
4324
4300
  this.RowHeight=10;//行高
4325
- this.RowHeightType=1;//0=均分 1=固定高度
4326
- this.TextFontConfig=CloneData(g_JSChartResource.ChartKLineTable.TextFont);this.ItemMargin=CloneData(g_JSChartResource.ChartKLineTable.ItemMargin);this.CellWidth=12*GetDevicePixelRatio();this.TextFont;this.TextColor='rgb(0,0,0)';this.Style=0;//0=全部窗口模式 1=顶部指定行数 2=底部指定行数;
4301
+ this.ItemMargin=CloneData(g_JSChartResource.ChartKLineTable.ItemMargin);this.CellWidth=12*GetDevicePixelRatio();//单元格文字
4302
+ this.TextFontConfig=CloneData(g_JSChartResource.ChartKLineTable.TextFont);this.TextFont;this.TextColor=g_JSChartResource.ChartKLineTable.TextColor;this.Style=0;//0=全部窗口模式 1=顶部指定行数 2=底部指定行数;
4303
+ this.YOffset=1;//表格整体偏移
4327
4304
  this.AryTableData=[];this.MapCache=null;//key=date/date-time value={ Date:, Time:, Data:[ ] }
4328
4305
  this.GetKValue=ChartData.GetKValue;this.AryCellRect=[];//保存单元格信息
4329
4306
  this.AryNameRect=[];//右侧行的名字
4330
- this.SetOption=function(option){if(!option)return;if(option.BGColor)this.BGColor=option.BGColor;if(option.TextColor)this.TextColor=option.TextColor;if(option.BorderColor)this.BorderColor=option.BorderColor;if(IFrameSplitOperator.IsNumber(option.RowNamePosition))this.RowNamePosition=option.RowNamePosition;if(IFrameSplitOperator.IsNumber(option.RowHeightType))this.RowHeightType=option.RowHeightType;if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(option.ItemMargin){var subItem=option.ItemMargin;if(IFrameSplitOperator.IsNumber(subItem.Left))this.ItemMargin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))this.ItemMargin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))this.ItemMargin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))this.ItemMargin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))this.ItemMargin.YOffset=subItem.YOffset;}if(option.TextFont){var subItem=option.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))this.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)this.TextFontConfig.Family=subItem.Family;}if(IFrameSplitOperator.IsPlusNumber(option.CellWidth))this.CellWidth=option.CellWidth;if(IFrameSplitOperator.IsNonEmptyArray(option.AryBorderColor))this.AryBorderColor=option.AryBorderColor.slice();};this.BuildCacheData=function(){var mapData=new _map2.default();this.MapCache=mapData;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;for(var i=0;i<this.AryTableData.length;++i){var item=this.AryTableData[i];var key=this.BuildKey(item);mapData.set(key,item);}};//绘制背景色
4331
- this.DrawBG=function(rtBG){if(!this.BGColor)return;this.Canvas.fillStyle=this.BGColor;if((this.Style===1||this.Style===2)&&this.RowHeightType==1){var height=this.RowCount*this.RowHeight;height=Math.min(rtBG.Height,height);this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-2,height);}else{this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-1,rtBG.Height);}};this.DrawBorder=function(rtBG){if(!this.BorderColor)return;var lineCount=30;if(this.Style===1||this.Style===2)lineCount=this.RowCount+1;var yLine=rtBG.Top;for(var i=0;i<lineCount;++i){var borderColor=this.BorderColor;if(this.AryBorderColor&&this.AryBorderColor[i])borderColor=this.AryBorderColor[i];this.Canvas.strokeStyle=borderColor;this.Canvas.beginPath();this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));this.Canvas.stroke();yLine+=this.RowHeight;if(yLine>rtBG.Bottom)break;}};//计算行高
4332
- this.CalculateRowHeight=function(rtBG){if(this.RowHeightType==1){this.RowHeight=this.TextFontConfig.FontMaxSize+this.ItemMargin.Top+this.ItemMargin.Bottom;}else{this.RowHeight=rtBG.Height/this.RowCount;}};this.Draw=function(){this.AryCellRect=[];this.AryNameRect=[];if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;//if (!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData)) return;
4307
+ this.BorderConfig={Vertical:{IsShow:true,Color:g_JSChartResource.ChartKLineTable.Border.Vertical.Color},//竖线
4308
+ Horizontal:{IsShow:true,Color:g_JSChartResource.ChartKLineTable.Border.Horizontal.Color,AryColor:[]}//横线
4309
+ };this.BGConfig={IsShow:true,Color:g_JSChartResource.ChartKLineTable.BG.Color},//背景色
4310
+ this.LabelConfig={Position:1,//0不显示 1=内左 2=外左 3=内右 4=外右
4311
+ Font:g_JSChartResource.ChartKLineTable.Label.Font,Color:g_JSChartResource.ChartKLineTable.Label.Color,BGColor:g_JSChartResource.ChartKLineTable.Label.BGColor,BorderColor:g_JSChartResource.ChartKLineTable.Label.BorderColor,Margin:{Left:10,Right:10},XOffset:4,YOffset:4};this.AryLabel=[];this.RectTable=null;this.SetOption=function(option){if(!option)return;if(option.BG)//背景
4312
+ {var item=option.BG;if(IFrameSplitOperator.IsBool(item.IsShow))this.BGConfig.IsShow=item.IsShow;if(item.Color)this.BGConfig.Color=item.Color;}if(option.Border)//分割线
4313
+ {var item=option.Border;if(item.Vertical){var subItem=item.Vertical;if(IFrameSplitOperator.IsBool(subItem.IsShow))this.BorderConfig.Vertical.IsShow=subItem.IsShow;if(subItem.Color)this.BorderConfig.Vertical.Color=subItem.Color;}if(item.Horizontal){var subItem=item.Horizontal;if(IFrameSplitOperator.IsBool(subItem.IsShow))this.BorderConfig.Horizontal.IsShow=subItem.IsShow;if(subItem.Color)this.BorderConfig.Horizontal.Color=subItem.Color;if(IFrameSplitOperator.IsNonEmptyArray(subItem.AryColor))this.BorderConfig.Horizontal.AryColor=subItem.AryColor.slice();}}if(option.Label)//标签
4314
+ {var item=option.Label;if(IFrameSplitOperator.IsNumber(item.Position))this.LabelConfig.Position=item.Position;if(item.Font)this.LabelConfig.Font=item.Font;if(item.Color)this.LabelConfig.Color=item.Color;if(IFrameSplitOperator.IsNumber(item.XOffset))this.LabelConfig.XOffset=item.XOffset;if(IFrameSplitOperator.IsNumber(item.YOffset))this.LabelConfig.YOffset=item.YOffset;if(item.BGColor)this.LabelConfig.BGColor=item.BGColor;if(item.BorderColor)this.LabelConfig.BorderColor=item.BorderColor;if(item.Margin){var subItem=item.Margin;if(IFrameSplitOperator.IsNumber(subItem.Left))this.LabelConfig.Margin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Right))this.LabelConfig.Margin.Right=subItem.Right;}}//样式
4315
+ if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(IFrameSplitOperator.IsNumber(option.YOffset))this.YOffset=option.YOffset;//单元格
4316
+ if(option.ItemMargin){var subItem=option.ItemMargin;if(IFrameSplitOperator.IsNumber(subItem.Left))this.ItemMargin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))this.ItemMargin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))this.ItemMargin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))this.ItemMargin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))this.ItemMargin.YOffset=subItem.YOffset;}if(option.TextColor)this.TextColor=option.TextColor;if(option.TextFont){var subItem=option.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))this.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)this.TextFontConfig.Family=subItem.Family;}if(IFrameSplitOperator.IsPlusNumber(option.CellWidth))this.CellWidth=option.CellWidth;};this.ReloadResource=function(resource){this.ItemMargin=CloneData(g_JSChartResource.ChartKLineTable.ItemMargin);//单元格文字
4317
+ this.TextFontConfig=CloneData(g_JSChartResource.ChartKLineTable.TextFont);this.TextColor=g_JSChartResource.ChartKLineTable.TextColor;this.BorderConfig.Vertical.Color=g_JSChartResource.ChartKLineTable.Border.Vertical.Color;//竖线
4318
+ this.BorderConfig.Horizontal.Color=g_JSChartResource.ChartKLineTable.Border.Horizontal.Color;//横线
4319
+ this.BGConfig.Color=g_JSChartResource.ChartKLineTable.BG.Color;//背景色
4320
+ this.LabelConfig.Font=g_JSChartResource.ChartKLineTable.Label.Font;this.LabelConfig.Color=g_JSChartResource.ChartKLineTable.Label.Color;this.LabelConfig.BGColor=g_JSChartResource.ChartKLineTable.Label.BGColor;this.LabelConfig.BorderColor=g_JSChartResource.ChartKLineTable.Label.BorderColor;};this.BuildCacheData=function(){var mapData=new _map2.default();this.MapCache=mapData;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;for(var i=0;i<this.AryTableData.length;++i){var item=this.AryTableData[i];var key=this.BuildKey(item);mapData.set(key,item);}};//绘制背景色
4321
+ this.DrawBG=function(rtBG){if(!this.RectTable)return;var config=this.BGConfig;if(!config.IsShow)return;this.Canvas.fillStyle=config.Color;this.Canvas.fillRect(this.RectTable.Left,this.RectTable.Top,this.RectTable.Width,this.RectTable.Height);};//画竖线
4322
+ this.DrawVerticalBorder=function(){if(!this.RectTable)return;var config=this.BorderConfig.Vertical;if(!config.IsShow)return;var border=this.ChartFrame.GetBorder();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var bMinute=this.IsMinuteFrame();this.Canvas.beginPath();for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){if(bMinute){var x=this.ChartFrame.GetXFromIndex(j);var left=x-cellWidth/2;var right=x+cellWidth/2;}else{var left=xOffset;var right=xOffset+dataWidth+distanceWidth;if(right>chartright)break;var x=left+(right-left)/2;if(x>chartright)break;}this.Canvas.moveTo(ToFixedPoint(right),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(right),ToFixedPoint(this.RectTable.Bottom));}this.Canvas.strokeStyle=config.Color;this.Canvas.stroke();};//画横线
4323
+ this.DrawHorizontalBorder=function(){if(!this.RectTable)return;var config=this.BorderConfig.Horizontal;if(!config.IsShow)return;var lineCount=this.RowCount+1;var yLine=this.RectTable.Top;for(var i=0;i<lineCount;++i){var borderColor=config.Color;if(config.AryColor&&config.AryColor[i])borderColor=config.AryColor[i];this.Canvas.strokeStyle=borderColor;this.Canvas.beginPath();this.Canvas.moveTo(this.RectTable.Left,ToFixedPoint(yLine));this.Canvas.lineTo(this.RectTable.Right,ToFixedPoint(yLine));this.Canvas.stroke();yLine+=this.RowHeight;if(yLine>this.RectTable.Bottom)break;}};this.DrawBorder=function(){this.DrawVerticalBorder();this.DrawHorizontalBorder();};//计算表格大小
4324
+ this.CalculateTableRect=function(){this.RowHeight=this.TextFontConfig.FontMaxSize+this.ItemMargin.Top+this.ItemMargin.Bottom;var border=this.ChartFrame.GetBorder();this.RectTable=null;if(this.Style===2)//底部指定行数
4325
+ {var bottom=border.Bottom-this.YOffset;this.RectTable={Left:border.LeftEx,Right:border.LeftEx,Top:bottom,Bottom:bottom};this.CalculateTableWidth();this.CalculateBottomTableRect();}else if(this.Style==1)//顶部指定行
4326
+ {var top=border.TopTitle+this.YOffset;this.RectTable={Left:border.LeftEx,Right:border.LeftEx,Top:top,Bottom:top};this.CalculateTableWidth();this.CalculateTopTableRect();}};this.CalculateTableWidth=function(){if(!this.RectTable)return;var border=this.ChartFrame.GetBorder();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var bMinute=this.IsMinuteFrame();var rtClient=this.RectTable;if([3,4].indexOf(this.LabelConfig.Position)>=0)//右侧标签
4327
+ {rtClient.Right=border.RightEx;}else{for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){if(bMinute){var x=this.ChartFrame.GetXFromIndex(j);var left=x-cellWidth/2;var right=x+cellWidth/2;}else{var left=xOffset;var right=xOffset+dataWidth+distanceWidth;if(right>chartright)break;var x=left+(right-left)/2;if(x>chartright)break;}rtClient.Right=right;}}rtClient.Width=rtClient.Right-rtClient.Left;};this.CalculateBottomTableRect=function(){if(!this.RectTable)return;var rtClient=this.RectTable;var border=this.ChartFrame.GetBorder();for(var i=0;i<this.RowCount;++i){var top=rtClient.Top-this.RowHeight;if(top<border.TopTitle)break;rtClient.Top=top;}rtClient.Height=rtClient.Bottom-rtClient.Top;};this.CalculateTopTableRect=function(){if(!this.RectTable)return;var rtClient=this.RectTable;var border=this.ChartFrame.GetBorder();for(var i=0;i<this.RowCount;++i){var bottom=rtClient.Bottom+this.RowHeight;if(bottom>border.Bottom)break;rtClient.Bottom=bottom;}rtClient.Height=rtClient.Bottom-rtClient.Top;};this.ClipClient=function(){/*
4328
+ var border=this.ChartFrame.GetBorder();
4329
+
4330
+ if (this.Style===1)
4331
+ {
4332
+ var rtBG={ Left:border.LeftEx+1, Top:border.TopTitle, Right:border.RightEx-1, Bottom:border.TopEx };
4333
+ rtBG.Width=rtBG.Right-rtBG.Left;
4334
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
4335
+ }
4336
+ else if (this.Style===2)
4337
+ {
4338
+ var rtBG={ Left:border.LeftEx+1, Top:border.BottomEx, Right:border.RightEx-1, Bottom:border.Bottom };
4339
+ rtBG.Width=rtBG.Right-rtBG.Left;
4340
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
4341
+ }
4342
+ else
4343
+ {
4344
+ return;
4345
+ }
4346
+
4347
+ this.Canvas.beginPath();
4348
+ this.Canvas.rect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);
4349
+ //this.Canvas.stroke(); //调试用
4350
+ this.Canvas.clip();
4351
+ */};this.Draw=function(){this.AryCellRect=[];this.AryNameRect=[];if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;if([1,2].indexOf(this.Style)<0)return;//if (!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData)) return;
4333
4352
  //if (!this.MapCache || this.MapCache.size<=0) return;
4334
- var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return;if(this.RowCount<=0)return;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();var height=border.Bottom-border.TopTitle;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var top=border.TopTitle;var bottom=border.Bottom;//绘制背景
4335
- if(this.Style===1){var rtBG={Left:border.LeftEx,Top:border.TopTitle,Right:border.RightEx,Bottom:border.TopEx};rtBG.Width=rtBG.Right-rtBG.Left;rtBG.Height=rtBG.Bottom-rtBG.Top;}else if(this.Style===2){var rtBG={Left:border.LeftEx,Top:border.BottomEx,Right:border.RightEx,Bottom:border.Bottom};rtBG.Width=rtBG.Right-rtBG.Left;rtBG.Height=rtBG.Bottom-rtBG.Top;top=rtBG.Top;}else{var rtBG={Left:border.LeftEx,Top:top,Right:border.RightEx,Bottom:bottom};rtBG.Width=rtBG.Right-rtBG.Left;rtBG.Height=rtBG.Bottom-rtBG.Top;}this.CalculateRowHeight(rtBG);this.DrawBG(rtBG);var itemHeight=this.RowHeight;var itemWidth=dataWidth+distanceWidth;if(itemHeight-this.ItemMargin.Top-this.ItemMargin.Bottom>0)itemHeight=itemHeight-this.ItemMargin.Top-this.ItemMargin.Bottom;if(itemWidth-this.ItemMargin.Left-this.ItemMargin.Right>0)itemWidth=itemWidth-this.ItemMargin.Left-this.ItemMargin.Right;var font=this.GetDynamicTextFont(itemHeight,itemWidth);this.TextFont=font;this.Canvas.font=this.TextFont;var bMinute=this.IsMinuteFrame();var cellWidth=1;if(bMinute){cellWidth=(border.Right-border.Left)/this.ChartFrame.XPointCount;if(cellWidth<1)cellWidth=1;}for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var kItem=this.Data.Data[i];if(!kItem)continue;if(bMinute){var x=this.ChartFrame.GetXFromIndex(j);var left=x-cellWidth/2;var right=x+cellWidth/2;}else{var left=xOffset;var right=xOffset+dataWidth+distanceWidth;if(right>chartright)break;var x=left+(right-left)/2;if(x>chartright)break;}var bDrawName=false;if(j==0&&this.RowNamePosition===1)bDrawName=true;if(bDrawName)this.DrawRowName(top,bottom,left,right);var key=this.BuildKey(kItem);if(!this.MapCache.has(key))continue;var mapItem=this.MapCache.get(key);if(!bDrawName)this.DrawRow(mapItem,top,bottom,left,right);//绘制一列
4336
- }if(this.RowNamePosition==3)this.DrawRightRowName(rtBG);this.DrawBorder(rtBG);};this.DrawRowName=function(top,bottom,left,right){if(!IFrameSplitOperator.IsNonEmptyArray(this.RowName))return;var x=left,y=top,width=right-left;var yOffset=3;if(this.ItemMargin.YOffset)yOffset=this.ItemMargin.YOffset;for(var i=0;i<this.RowName.length;++i){var item=this.RowName[i];var rtBG={Left:x,Top:y,Right:right,Height:this.RowHeight,Width:width};rtBG.Bottom=rtBG.Top+this.RowHeight;var yText=rtBG.Bottom-yOffset;if(item.Name&&rtBG.Width>10){this.Canvas.fillStyle=item.Color?item.Color:this.TextColor;this.Canvas.textBaseline='bottom';if(item.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(item.Name,rtBG.Right-2,yText,width-4);}else if(item.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(item.Name,rtBG.Left+rtBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(item.Name,rtBG.Left+2,yText,width-4);}}y+=this.RowHeight;}};//绘制右侧行名
4337
- this.DrawRightRowName=function(rtBG){var border=this.ChartFrame.GetBorder();var maxTextWidth=0;if(this.BGColor){if(this.Style===1){var height=this.RowCount*this.RowHeight;height=Math.min(rtBG.Height,height);var width=border.ChartWidth-rtBG.Right-2;for(var i=0;i<this.RowName.length;++i){var item=this.RowName[i];if(!item||!item.Name)continue;var textWidth=this.Canvas.measureText(item.Name).width;if(textWidth>maxTextWidth)maxTextWidth=textWidth;}if(maxTextWidth>0){maxTextWidth+=4;width=Math.min(width,maxTextWidth);}var rtRightBG={Left:rtBG.Right+1,Top:rtBG.Top+1,Width:width,Height:height};rtRightBG.Right=rtRightBG.Left+rtRightBG.Width;rtRightBG.Bottom=rtRightBG.Top+rtRightBG.Height;this.Canvas.fillStyle=this.BGColor;this.Canvas.fillRect(rtRightBG.Left,rtRightBG.Top,rtRightBG.Width,rtRightBG.Height);}else{var rtRightBG={Left:border.RightEx,Top:border.Top,Right:border.ChartWidth,Bottom:border.Bottom};rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;this.Canvas.fillStyle=this.BGColor;this.Canvas.fillRect(rtRightBG.Left+1,rtRightBG.Top,rtRightBG.Width-2,rtRightBG.Height);}}var x=rtBG.Right,y=rtBG.Top;var yOffset=3;if(this.ItemMargin.YOffset)yOffset=this.ItemMargin.YOffset;for(var i=0;i<this.RowName.length;++i){var item=this.RowName[i];var rtBG={Left:x,Top:y,Right:border.ChartWidth,Height:this.RowHeight};rtBG.Bottom=rtBG.Top+this.RowHeight;rtBG.Width=rtBG.Right-rtBG.Left;var yText=rtBG.Bottom-yOffset;if(rtBG.Bottom>border.Bottom)break;if(item.Name&&rtBG.Width>10){if(item.BGColor){this.Canvas.fillStyle=item.BGColor;if(maxTextWidth>0)this.Canvas.fillRect(rtBG.Left,rtBG.Top,maxTextWidth,rtBG.Height);else this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}this.Canvas.fillStyle=item.Color?item.Color:this.TextColor;this.Canvas.textBaseline='bottom';this.Canvas.textAlign='left';this.Canvas.fillText(item.Name,rtBG.Left+2,yText);this.AryNameRect.push({Rect:rtBG,Item:item,Index:i});}y+=this.RowHeight;}};this.DrawRow=function(data,top,bottom,left,right){if(!IFrameSplitOperator.IsNonEmptyArray(data.Data))return;var x=left,y=top,width=right-left;var yOffset=3;if(this.ItemMargin.YOffset)yOffset=this.ItemMargin.YOffset;for(var i=0;i<data.Data.length;++i,y+=this.RowHeight){var item=data.Data[i];if(!item)continue;var rtBG={Left:x,Top:y,Right:right,Height:this.RowHeight,Width:width};rtBG.Bottom=rtBG.Top+this.RowHeight;if(rtBG.Bottom>bottom)break;if(IFrameSplitOperator.IsNonEmptyArray(item.AryText))//左右显示
4353
+ var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return;if(this.RowCount<=0)return;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();var height=border.Bottom-border.TopTitle;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var top=border.TopTitle;var bottom=border.Bottom;this.Canvas.save();this.ClipClient();this.CalculateTableRect();this.DrawBG();var itemHeight=this.RowHeight;var itemWidth=dataWidth+distanceWidth;var font=this.GetDynamicTextFont(itemHeight,itemWidth);this.TextFont=font;this.Canvas.font=this.TextFont;var bMinute=this.IsMinuteFrame();var cellWidth=1;if(bMinute){cellWidth=(border.Right-border.Left)/this.ChartFrame.XPointCount;if(cellWidth<1)cellWidth=1;}var top=this.RectTable.Top;var bottom=this.RectTable.Bottom;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var kItem=this.Data.Data[i];if(!kItem)continue;if(bMinute){var x=this.ChartFrame.GetXFromIndex(j);var left=x-cellWidth/2;var right=x+cellWidth/2;}else{var left=xOffset;var right=xOffset+dataWidth+distanceWidth;if(right>chartright)break;var x=left+(right-left)/2;if(x>chartright)break;}var key=this.BuildKey(kItem);if(!this.MapCache.has(key))continue;var mapItem=this.MapCache.get(key);this.DrawRow(mapItem,top,bottom,left,right);//绘制一列
4354
+ }this.Canvas.restore();this.DrawBorder();this.DrawRowName();//内部的标签名称
4355
+ };this.DrawRowName=function(){var config=this.LabelConfig;if([1,2,3,4].indexOf(config.Position)<0)return;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryLabel))return;this.Canvas.font=config.Font;//计算宽度
4356
+ var maxTextWidth=0;for(var i=0;i<this.AryLabel.length;++i){var item=this.AryLabel[i];var textWidth=this.Canvas.measureText(item.Name).width;if(maxTextWidth<textWidth)maxTextWidth=textWidth;}var labelWidth=maxTextWidth+config.Margin.Left+config.Margin.Right;var x=this.RectTable.Left;var y=this.RectTable.Top;if(config.Position==2)x=this.RectTable.Left-labelWidth;else if(config.Position==3)x=this.RectTable.Right-labelWidth;else if(config.Position==4)x=this.RectTable.Right;var aryBorder=[];//文字输出
4357
+ for(var i=0;i<this.AryLabel.length;++i){var item=this.AryLabel[i];var rtBG={Left:x,Top:y,Height:this.RowHeight,Width:labelWidth};rtBG.Right=rtBG.Left+rtBG.Width;rtBG.Bottom=rtBG.Top+this.RowHeight;var yText=rtBG.Bottom-config.YOffset;var bgColor=config.BGColor;if(item.BGColor)bgColor=item.BGColor;this.Canvas.fillStyle=bgColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);if(i==0)aryBorder.push({Y:rtBG.Top,Left:rtBG.Left,Right:rtBG.Right});aryBorder.push({Y:rtBG.Bottom,Left:rtBG.Left,Right:rtBG.Right});if(item.Name&&rtBG.Width>10){this.Canvas.fillStyle=item.Color?item.Color:config.Color;this.Canvas.textBaseline='bottom';if(item.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(item.Name,rtBG.Right-config.XOffset,yText);}else if(item.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(item.Name,rtBG.Left+rtBG.Width/2,yText);}else{this.Canvas.textAlign='left';this.Canvas.fillText(item.Name,rtBG.Left+config.XOffset,yText);}}y+=this.RowHeight;}//边框线
4358
+ this.Canvas.beginPath();this.Canvas.strokeStyle=config.BorderColor;for(var i=0;i<aryBorder.length;++i){var item=aryBorder[i];this.Canvas.moveTo(item.Left,ToFixedPoint(item.Y));this.Canvas.lineTo(item.Right,ToFixedPoint(item.Y));}if(config.Position==1)//左边
4359
+ {var x=this.RectTable.Left+1;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));x=this.RectTable.Left+labelWidth;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));}else if(config.Position==2)//左边(外)
4360
+ {var x=this.RectTable.Left;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));x=this.RectTable.Left-labelWidth;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));}else if(config.Position==3)//右边
4361
+ {var x=this.RectTable.Right-1;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));x=this.RectTable.Right-labelWidth;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));}else if(config.Position==4)//右边(外)
4362
+ {var x=this.RectTable.Right;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));x=this.RectTable.Right+labelWidth;this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Top));this.Canvas.lineTo(ToFixedPoint(x),ToFixedPoint(this.RectTable.Bottom));}this.Canvas.stroke();};this.DrawRow=function(data,top,bottom,left,right){if(!IFrameSplitOperator.IsNonEmptyArray(data.Data))return;var x=left,y=top,width=right-left;var yOffset=3;if(this.ItemMargin.YOffset)yOffset=this.ItemMargin.YOffset;for(var i=0;i<data.Data.length;++i,y+=this.RowHeight){var item=data.Data[i];if(!item)continue;var rtBG={Left:x,Top:y,Right:right,Height:this.RowHeight,Width:width};rtBG.Bottom=rtBG.Top+this.RowHeight;if(rtBG.Bottom>bottom)break;if(IFrameSplitOperator.IsNonEmptyArray(item.AryText))//左右显示
4338
4363
  {var subCellWidth=rtBG.Width/item.AryText.length;var xCell=rtBG.Left;for(var j=0;j<item.AryText.length;++j){var subItem=item.AryText[j];var rtSubBG={Left:xCell,Top:rtBG.Top,Bottom:rtBG.Bottom,Width:subCellWidth,Height:rtBG.Height};rtSubBG.Right=rtSubBG.Left+rtSubBG.Width;if(subItem&&subItem.BGColor){this.Canvas.fillStyle=subItem.BGColor;this.Canvas.fillRect(rtSubBG.Left,rtSubBG.Top,rtSubBG.Width,rtSubBG.Height);}if(subItem&&subItem.Color&&subCellWidth>10){this.Canvas.fillStyle=subItem.Color;this.Canvas.textBaseline='bottom';var yText=rtSubBG.Bottom-yOffset;if(subItem.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(subItem.Text,rtSubBG.Right-2,yText,width-4);}else if(subItem.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(subItem.Text,rtSubBG.Left+rtSubBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(subItem.Text,rtSubBG.Left+2,yText,width-4);}}//if (rtBG.Width>5)
4339
4364
  {this.AryCellRect.push({Item:{Cell:item,Colunm:data,RowIndex:i,SubCell:subItem,SubIndex:j,Tooltip:subItem.Tooltip,Type:2},Rect:rtSubBG});}xCell+=subCellWidth;}}else{if(item.BGColor){this.Canvas.fillStyle=item.BGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}if(item.Text&&rtBG.Width>10){if(item.Color)this.Canvas.fillStyle=item.Color;else this.Canvas.fillStyle=this.TextColor;this.Canvas.textBaseline='bottom';var yText=rtBG.Bottom-yOffset;if(item.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(item.Text,rtBG.Right-2,yText,width-4);}else if(item.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(item.Text,rtBG.Left+rtBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(item.Text,rtBG.Left+2,yText,width-4);}}//if (rtBG.Width>5)
4340
4365
  {this.AryCellRect.push({Item:{Cell:item,Colunm:data,RowIndex:i,Tooltip:item.Tooltip,Type:1},Rect:rtBG});}}}};this.GetDynamicTextFont=function(cellHeight,width,fontOption){var fontSize=parseInt(cellHeight)-2;if(cellHeight<5)fontSize=parseInt(cellHeight);//高度太小了就不要上下间距了
4341
- if(fontSize>this.TextFontConfig.FontMaxSize)fontSize=this.TextFontConfig.FontMaxSize;else if(fontSize<=0)fontSize=1;var font=this.FormatFontString(fontSize,this.TextFontConfig.Family,fontOption);return font;};this.FormatFontString=function(fontSize,family,option){var font;if(!option){font=fontSize+'px '+family;}else{if(option.Weight)font=option.Weight+' '+fontSize+'px '+family;}return font;};this.GetMaxMin=function(){return{Min:0,Max:this.RowCount};};this.GetTooltipData=function(x,y,tooltip){if(!this.IsShow)return false;for(var i=0;i<this.AryCellRect.length;++i){var item=this.AryCellRect[i];if(!item.Rect)continue;var rect=item.Rect;if(x>=rect.Left&&x<=rect.Right&&y>=rect.Top&&y<=rect.Bottom){var data=item.Item;JSConsole.Chart.Log('[ChartKLineTable::GetTooltipData] cell',item);tooltip.Data={Rect:item.Rect,Item:data};tooltip.ChartPaint=this;tooltip.Type=9;//ChartKLineTable
4366
+ if(fontSize>this.TextFontConfig.FontMaxSize)fontSize=this.TextFontConfig.FontMaxSize;else if(fontSize<=0)fontSize=1;var font=this.FormatFontString(fontSize,this.TextFontConfig.Family,fontOption);return font;};this.FormatFontString=function(fontSize,family,option){var font;if(!option){font=fontSize+'px '+family;}else{if(option.Weight)font=option.Weight+' '+fontSize+'px '+family;}return font;};this.GetMaxMin=function(){return null;};this.GetTooltipData=function(x,y,tooltip){if(!this.IsShow)return false;for(var i=0;i<this.AryCellRect.length;++i){var item=this.AryCellRect[i];if(!item.Rect)continue;var rect=item.Rect;if(x>=rect.Left&&x<=rect.Right&&y>=rect.Top&&y<=rect.Bottom){var data=item.Item;JSConsole.Chart.Log('[ChartKLineTable::GetTooltipData] cell',item);tooltip.Data={Rect:item.Rect,Item:data};tooltip.ChartPaint=this;tooltip.Type=9;//ChartKLineTable
4342
4367
  return true;}}return false;};}//表格
4343
4368
  function ChartSimpleTable(){this.newMethod=IChartPainting;//派生
4344
4369
  this.newMethod();delete this.newMethod;this.ClassName='ChartSimpleTable';//类名
@@ -4886,7 +4911,7 @@ this.newMethod();delete this.newMethod;this.IsDrawFirst=true;this.ClassName="Cha
4886
4911
  this.PointCount=0;this.DataWidth=0;this.DistanceWidth=0;this.ChartRight=0;//可以绘制的最右边
4887
4912
  this.LineColor='RGB(255,0,0)';this.LineDotted=[3,3];this.AreaColor='RGB(255,222,173)';this.LineWidth=1;this.CalculateData=function()//把数据通过nul值分割开, 并计算坐标
4888
4913
  {var data=[];var lineData=[];for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<this.PointCount;++i,++j){var item=this.Data.Data[i];if(!item||!IFrameSplitOperator.IsNumber(item.Value)||!IFrameSplitOperator.IsNumber(item.Value2)){if(lineData.length>0){data.push(lineData);lineData=[];//创建新的一组数据
4889
- }continue;}var x=this.ChartFrame.GetXFromIndex(j);if(x>this.ChartRight)break;var y=this.ChartFrame.GetYFromData(item.Value);var y2=this.ChartFrame.GetYFromData(item.Value2);lineData.push({X:x,Y:y,Y2:y2});}if(lineData.length>0)data.push(lineData);return data;};this.DrawArea=function(lineData){if(lineData.length<=0)return;this.Canvas.beginPath();var drawCount=0;var firstItem=lineData[0];if(this.IsHScreen)this.Canvas.moveTo(firstItem.Y,firstItem.X);else this.Canvas.moveTo(firstItem.X,firstItem.Y);for(var i=1;i<lineData.length;++i){var item=lineData[i];if(this.IsHScreen)this.Canvas.lineTo(item.Y,item.X);else this.Canvas.lineTo(item.X,item.Y);++drawCount;}for(var i=lineData.length-1;i>=0;--i){var item=lineData[i];if(this.IsHScreen)this.Canvas.lineTo(item.Y2,item.X);else this.Canvas.lineTo(item.X,item.Y2);++drawCount;}this.Canvas.closePath();this.Canvas.fillStyle=this.AreaColor;this.Canvas.fill();};this.DrawLine=function(lineData){this.Canvas.strokeStyle=this.LineColor;for(var k=0;k<2;++k){var bFirstPoint=true;var drawCount=0;for(var i=0;i<lineData.length;++i){var item=lineData[i];if(bFirstPoint){this.Canvas.beginPath();if(this.IsHScreen)this.Canvas.moveTo(k===0?item.Y:item.Y2,item.X);else this.Canvas.moveTo(item.X,k===0?item.Y:item.Y2);bFirstPoint=false;}else{if(this.IsHScreen)this.Canvas.lineTo(k===0?item.Y:item.Y2,item.X);else this.Canvas.lineTo(item.X,k===0?item.Y:item.Y2);}++drawCount;}if(drawCount>0)this.Canvas.stroke();}};this.Draw=function(){if(this.ChartFrame.IsMinSize)return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}this.IsHScreen=this.ChartFrame.IsHScreen===true;this.PointCount=this.ChartFrame.XPointCount;this.DataWidth=this.ChartFrame.DataWidth;this.DistanceWidth=this.ChartFrame.DistanceWidth;if(this.IsHScreen)this.ChartRight=this.ChartBorder.GetBottom();else this.ChartRight=this.ChartBorder.GetRight();var drawData=this.CalculateData();if(!drawData||drawData.length<=0)return;this.Canvas.save();this.Canvas.lineWidth=this.LineWidth*GetDevicePixelRatio();this.Canvas.setLineDash(this.LineDotted);//虚线
4914
+ }continue;}var x=this.ChartFrame.GetXFromIndex(j);if(x>this.ChartRight)break;var y=this.ChartFrame.GetYFromData(item.Value);var y2=this.ChartFrame.GetYFromData(item.Value2);lineData.push({X:x,Y:y,Y2:y2});}if(lineData.length>0)data.push(lineData);return data;};this.DrawArea=function(lineData){if(lineData.length<=0)return;this.Canvas.beginPath();var drawCount=0;var firstItem=lineData[0];if(this.IsHScreen)this.Canvas.moveTo(firstItem.Y,firstItem.X);else this.Canvas.moveTo(firstItem.X,firstItem.Y);for(var i=1;i<lineData.length;++i){var item=lineData[i];if(this.IsHScreen)this.Canvas.lineTo(item.Y,item.X);else this.Canvas.lineTo(item.X,item.Y);++drawCount;}for(var i=lineData.length-1;i>=0;--i){var item=lineData[i];if(this.IsHScreen)this.Canvas.lineTo(item.Y2,item.X);else this.Canvas.lineTo(item.X,item.Y2);++drawCount;}this.Canvas.closePath();this.Canvas.fillStyle=this.AreaColor;this.Canvas.fill();};this.DrawLine=function(lineData){if(!this.LineColor)return;this.Canvas.strokeStyle=this.LineColor;for(var k=0;k<2;++k){var bFirstPoint=true;var drawCount=0;for(var i=0;i<lineData.length;++i){var item=lineData[i];if(bFirstPoint){this.Canvas.beginPath();if(this.IsHScreen)this.Canvas.moveTo(k===0?item.Y:item.Y2,item.X);else this.Canvas.moveTo(item.X,k===0?item.Y:item.Y2);bFirstPoint=false;}else{if(this.IsHScreen)this.Canvas.lineTo(k===0?item.Y:item.Y2,item.X);else this.Canvas.lineTo(item.X,k===0?item.Y:item.Y2);}++drawCount;}if(drawCount>0)this.Canvas.stroke();}};this.Draw=function(){if(this.ChartFrame.IsMinSize)return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}this.IsHScreen=this.ChartFrame.IsHScreen===true;this.PointCount=this.ChartFrame.XPointCount;this.DataWidth=this.ChartFrame.DataWidth;this.DistanceWidth=this.ChartFrame.DistanceWidth;if(this.IsHScreen)this.ChartRight=this.ChartBorder.GetBottom();else this.ChartRight=this.ChartBorder.GetRight();var drawData=this.CalculateData();if(!drawData||drawData.length<=0)return;this.Canvas.save();this.Canvas.lineWidth=this.LineWidth*GetDevicePixelRatio();if(IFrameSplitOperator.IsNonEmptyArray())this.Canvas.setLineDash(this.LineDotted);//虚线
4890
4915
  for(var i=0;i<drawData.length;++i){var lineData=drawData[i];this.DrawArea(lineData);this.DrawLine(lineData);}this.Canvas.restore();};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var range={Min:null,Max:null};for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var value=this.Data.Data[i];if(value==null||value.Value==null||value.Value2==null)continue;var maxData=value.Value>value.Value2?value.Value:value.Value2;var minData=value.Value<value.Value2?value.Value:value.Value2;if(range.Max==null)range.Max=maxData;else if(range.Max<maxData)range.Max=maxData;if(range.Min==null)range.Min=minData;else if(range.Min>minData)range.Min=minData;}return range;};}//填充背景 支持横屏
4891
4916
  function ChartBackground(){this.newMethod=IChartPainting;//派生
4892
4917
  this.newMethod();delete this.newMethod;this.ClassName="ChartBackground";this.Color=null;this.ColorAngle=0;//0 竖向 1 横向
@@ -4920,7 +4945,7 @@ this.newMethod();delete this.newMethod;this.ClassName="ChartRectangle";this.Colo
4920
4945
  function ChartTextLine(){this.newMethod=IChartPainting;//派生
4921
4946
  this.newMethod();delete this.newMethod;this.ClassName="ChartTextLine";this.Text;//{ Title:内容, Color: YOffset:, }
4922
4947
  this.Line;//{ Type=线段类型 0=不画 1=直线 2=虚线, Color:, Width:, LineDash:[] }
4923
- this.Price;this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize)return;if(!this.Text||!this.Line||!IFrameSplitOperator.IsNumber(this.Price))return;this.IsHScreen=this.ChartFrame.IsHScreen===true;var left=this.ChartBorder.GetLeft();var right=this.ChartBorder.GetRight();var bottom=this.ChartBorder.GetBottomEx();var top=this.ChartBorder.GetTopEx();var y=this.ChartFrame.GetYFromData(this.Price);this.Canvas.save();this.ClipClient(this.IsHScreen);var textWidth=0;if(this.Text.Title){var x=left+2*GetDevicePixelRatio();var yText=y;this.Canvas.textAlign='left';this.Canvas.textBaseline='middle';var offsetY=8*GetDevicePixelRatio();if(y-offsetY<top){this.Canvas.textBaseline='top';yText=top;}else if(y+offsetY>bottom){this.Canvas.textBaseline='bottom';yText=bottom;}this.Canvas.fillStyle=this.Text.Color;this.Canvas.font=this.Text.Font;this.Canvas.fillText(this.Text.Title,x,yText);textWidth=this.Canvas.measureText(this.Text.Title).width+4*GetDevicePixelRatio();}if(this.Line.Type>0){if(this.Line.Type==2)//虚线
4948
+ this.Price;this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize)return;if(!this.Text||!this.Line||!IFrameSplitOperator.IsNumber(this.Price))return;this.IsHScreen=this.ChartFrame.IsHScreen===true;var left=this.ChartBorder.GetLeft();var right=this.ChartBorder.GetRight();var bottom=this.ChartBorder.GetBottomEx();var top=this.ChartBorder.GetTopEx();var y=this.ChartFrame.GetYFromData(this.Price);var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;this.Canvas.save();this.ClipClient(this.IsHScreen);var textWidth=0;if(this.Text.Title){var xOffset=2*GetDevicePixelRatio();if(IFrameSplitOperator.IsNumber(this.Text.XOffset))xOffset=this.Text.XOffset;if(this.Text.KLineXOffset=="KLine")xOffset+=distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;else if(this.Text.KLineXOffset=="KLineCenter")xOffset+=distanceWidth/2.0+dataWidth/2+g_JSChartResource.FrameLeftMargin;var x=left+xOffset;var yText=y;this.Canvas.textAlign='left';this.Canvas.textBaseline='middle';var offsetY=8*GetDevicePixelRatio();if(y-offsetY<top){this.Canvas.textBaseline='top';yText=top;}else if(y+offsetY>bottom){this.Canvas.textBaseline='bottom';yText=bottom;}this.Canvas.fillStyle=this.Text.Color;this.Canvas.font=this.Text.Font;this.Canvas.fillText(this.Text.Title,x,yText);textWidth=this.Canvas.measureText(this.Text.Title).width+4*GetDevicePixelRatio()+xOffset;}if(this.Line.Type>0){if(this.Line.Type==2)//虚线
4924
4949
  {if(IFrameSplitOperator.IsNonEmptyArray(this.Line.LineDash))this.Canvas.setLineDash(this.Line.LineDash);else this.Canvas.setLineDash([3,5]);//虚线
4925
4950
  }if(IFrameSplitOperator.IsNumber(this.Line.Width))this.Canvas.lineWidth=this.Line.Width;var x=left+textWidth;this.Canvas.strokeStyle=this.Line.Color;this.Canvas.beginPath();this.Canvas.moveTo(x,ToFixedPoint(y));this.Canvas.lineTo(right,ToFixedPoint(y));this.Canvas.stroke();}this.Canvas.restore();};this.GetMaxMin=function(){var range={Min:null,Max:null};if(IFrameSplitOperator.IsNumber(this.Price)){range.Min=this.Price;range.Max=this.Price;}return range;};}// 柱子集合 支持横屏
4926
4951
  function ChartMultiBar(){this.newMethod=IChartPainting;//派生
@@ -5802,7 +5827,7 @@ IFrameSplitOperator.IsNumberV2=function(){for(var _len=arguments.length,aryValue
5802
5827
  IFrameSplitOperator.IsPlusNumber=function(value){if(value==null)return false;if(isNaN(value))return false;return value>0;};//>=0
5803
5828
  IFrameSplitOperator.IsGTEZero=function(value){if(value==null)return false;if(isNaN(value))return false;return value>=0;};//是否是整形
5804
5829
  IFrameSplitOperator.IsInteger=function(x){return typeof x==='number'&&x%1===0;};//判断字段是否存在
5805
- IFrameSplitOperator.IsObjectExist=function(obj){if(obj===undefined)return false;if(obj==null)return false;return true;};//是否时bool
5830
+ IFrameSplitOperator.IsObjectExist=function(obj){if(obj===undefined)return false;if(obj==null)return false;return true;};IFrameSplitOperator.IsObjectDefined=function(obj){if(obj===undefined)return false;return true;};//是否时bool
5806
5831
  IFrameSplitOperator.IsBool=function(value){if(value===true||value===false)return true;return false;};IFrameSplitOperator.IsString=function(value){var type=typeof value==='undefined'?'undefined':(0,_typeof3.default)(value);if(type=='string')return true;return false;};//是否是非空的数组
5807
5832
  IFrameSplitOperator.IsNonEmptyArray=function(ary){if(!ary)return false;if(!Array.isArray(ary))return false;return ary.length>0;};IFrameSplitOperator.IsArray=function(ary){if(!ary)return false;if(!Array.isArray(ary))return false;return true;};IFrameSplitOperator.IsFloat=function(value){if(value===undefined)return false;if(value==null)return false;if(isNaN(value))return false;return value!=parseInt(value);};//是否有效
5808
5833
  IFrameSplitOperator.IsVaild=function(value){if(isNaN(value))return false;if(value==null)return false;if(value===undefined)return false;return true;};IFrameSplitOperator.IsUndefined=function(value){return value===undefined;};IFrameSplitOperator.IsObject=function(value){return value instanceof Object;};IFrameSplitOperator.RemoveZero=function(strValue){while(strValue.length>0){var index=strValue.length-1;var ch=strValue[index];if(ch=="0"){strValue=strValue.substr(0,index);}else if(ch=="."){strValue=strValue.substr(0,index);break;}else{break;}}return strValue;};//移除代码市场后缀
@@ -6667,7 +6692,8 @@ if(left+textWidth>right)break;this.Canvas.fillText(text,left,bottom,textWidth);l
6667
6692
  }};this.OnDrawEventCallback=function(drawData){if(!this.OnDrawEvent||!this.OnDrawEvent.Callback)return;var data={Draw:drawData,Name:'DynamicChartTitlePainting'};this.OnDrawEvent.Callback(this.OnDrawEvent,data,this);};this.GetFontHeight=function(font){return GetFontHeight(this.Canvas,font,"擎");};//指标名字按钮
6668
6693
  this.DrawNameButton=function(rtButton,moveonPoint,mouseStatus){var pixelRatio=GetDevicePixelRatio();var title=this.Title;var textWidth=this.Canvas.measureText(title).width;var arrowWidth=0;if(this.IsShowNameArrow&&this.NameArrowConfig){arrowWidth=this.Canvas.measureText(this.NameArrowConfig.Symbol).width;if(IFrameSplitOperator.IsNumber(this.NameArrowConfig.Space))arrowWidth+=this.NameArrowConfig.Space;}var bgHeight=this.Canvas.measureText("擎").width+4*pixelRatio;var roundRadius=this.BorderRoundRadius*pixelRatio;var bgWidth=textWidth+arrowWidth+4*pixelRatio+roundRadius*2;rtButton.Top=rtButton.YCenter-bgHeight/2-1,rtButton.Width=bgWidth;rtButton.Height=bgHeight;rtButton.Right=rtButton.Left+rtButton.Width;rtButton.Bottom=rtButton.Top+rtButton.Height;var borderColor=this.BGBorderColor;if(moveonPoint&&moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){if(this.BGBorderMoveOnColor)borderColor=this.BGBorderMoveOnColor;if(mouseStatus){var btnItem={ID:JSCHART_BUTTON_ID.INDEX_NAME_BUTTON};mouseStatus.MouseOnToolbar={ID:"IndexNameButton",Rect:rtButton,Item:btnItem,Frame:this.Frame,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};}}if(this.Canvas.roundRect&&this.NameButtonStyle==1)//判断下是否支持roundRect
6669
6694
  {this.Canvas.beginPath();this.Canvas.roundRect(ToFixedPoint(rtButton.Left),ToFixedPoint(rtButton.Top),ToFixedRect(rtButton.Width),ToFixedRect(rtButton.Height),[roundRadius]);this.Canvas.closePath();this.Canvas.fillStyle=this.BGColor;this.Canvas.fill();if(borderColor){this.Canvas.strokeStyle=borderColor;this.Canvas.stroke();}}else{this.Canvas.fillStyle=this.BGColor;this.Canvas.fillRect(rtButton.Left,rtButton.Top,rtButton.Width,rtButton.Height);if(borderColor){this.Canvas.strokeStyle=borderColor;this.Canvas.strokeRect(ToFixedPoint(rtButton.Left),ToFixedPoint(rtButton.Top),ToFixedRect(rtButton.Width),ToFixedRect(rtButton.Height),[roundRadius]);}}var xText=rtButton.Left+roundRadius+2*pixelRatio;this.Canvas.fillStyle=this.TitleColor;this.Canvas.fillText(title,xText,rtButton.YCenter);xText+=textWidth;if(this.IsShowNameArrow&&this.NameArrowConfig){if(IFrameSplitOperator.IsNumber(this.NameArrowConfig.Space))xText+=this.NameArrowConfig.Space;this.Canvas.fillStyle=this.NameArrowConfig.Color;this.Canvas.fillText(this.NameArrowConfig.Symbol,xText,rtButton.YCenter);}};//绘制按钮
6670
- this.DrawButton=function(item,rtButton,moveonPoint,mouseStatus){var size=item.Style.Size;if(IFrameSplitOperator.IsNumber(item.Style.YMoveOffset))rtButton.YCenter+=item.Style.YMoveOffset;var font=size+'px '+item.Style.Family;rtButton.Top=rtButton.YCenter-size/2;rtButton.Width=size+item.Style.MerginLeft;rtButton.Height=size;rtButton.Bottom=rtButton.Top+rtButton.Height;rtButton.Right=rtButton.Left+rtButton.Width;var color=item.Style.Color;if(moveonPoint&&moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){color=item.Style.MoveOnColor;if(mouseStatus)mouseStatus.MouseOnToolbar={ID:"TitleButton",Rect:rtButton,Item:item,Frame:this.Frame,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};}this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,rtButton.Left,rtButton.YCenter);return true;};this.DrawToolbar=function(toolbarInfo,moveonPoint,mouseStatus){toolbarInfo.Width=0;if(!this.Frame||!this.Frame.GetLeftToolbar)return;var aryButton=this.Frame.GetLeftToolbar();if(!IFrameSplitOperator.IsNonEmptyArray(aryButton))return;if(this.Frame.IsHScreen===true){}else{var border=this.Frame.GetBorder();var right=border.Right-3;var left=border.Left+3;var yCenter=toolbarInfo.YCenter;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var rtButton={Left:left,YCenter:yCenter};this.DrawButton(item,rtButton,moveonPoint,mouseStatus);this.Buttons.push({ID:item.ID,Rect:rtButton,FrameID:this.Frame.Identify,Type:0,Data:item.Data});//Type 0=主图按钮 1=附图按钮 2=主图指标名字按钮
6695
+ this.DrawButton=function(item,rtButton,moveonPoint,mouseStatus){var size=item.Style.Size;if(IFrameSplitOperator.IsNumber(item.Style.YMoveOffset))rtButton.YCenter+=item.Style.YMoveOffset;var font=size+'px '+item.Style.Family;rtButton.Top=rtButton.YCenter-size/2;rtButton.Width=size+item.Style.MerginLeft;rtButton.Height=size;rtButton.Bottom=rtButton.Top+rtButton.Height;rtButton.Right=rtButton.Left+rtButton.Width;var color=item.Style.Color;if(moveonPoint&&moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){color=item.Style.MoveOnColor;if(mouseStatus)mouseStatus.MouseOnToolbar={ID:"TitleButton",Rect:rtButton,Item:item,Frame:this.Frame,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};}this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,rtButton.Left,rtButton.YCenter);return true;};this.DrawToolbar=function(toolbarInfo,moveonPoint,mouseStatus){toolbarInfo.Width=0;if(!this.Frame||!this.Frame.GetLeftToolbar)return;//if (!this.Title && !IFrameSplitOperator.IsNonEmptyArray(this.Data)) return;
6696
+ var aryButton=this.Frame.GetLeftToolbar();if(!IFrameSplitOperator.IsNonEmptyArray(aryButton))return;if(this.Frame.IsHScreen===true){}else{var border=this.Frame.GetBorder();var right=border.Right-3;var left=border.Left+3;var yCenter=toolbarInfo.YCenter;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var rtButton={Left:left,YCenter:yCenter};this.DrawButton(item,rtButton,moveonPoint,mouseStatus);this.Buttons.push({ID:item.ID,Rect:rtButton,FrameID:this.Frame.Identify,Type:0,Data:item.Data});//Type 0=主图按钮 1=附图按钮 2=主图指标名字按钮
6671
6697
  left=rtButton.Right;toolbarInfo.Width+=rtButton.Width;}if(toolbarInfo.Width>0)toolbarInfo.Width+=3;}};this.DrawOverlayToolbar=function(overlayItem,toolbarInfo,moveonPoint,mouseStatus){toolbarInfo.Width=0;if(!overlayItem||!overlayItem.Frame||!overlayItem.Frame.GetLeftToolbar)return;var frame=overlayItem.Frame;var aryButton=frame.GetLeftToolbar({Overlay:overlayItem,OverlayID:toolbarInfo.ID});if(!IFrameSplitOperator.IsNonEmptyArray(aryButton))return;if(this.Frame.IsHScreen===true){}else{var border=frame.GetBorder();var right=border.Right-3;var left=border.Left+3;var yCenter=toolbarInfo.YCenter;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var rtButton={Left:left,YCenter:yCenter};this.DrawButton(item,rtButton,moveonPoint,mouseStatus);this.Buttons.push({ID:item.ID,Rect:rtButton,FrameID:this.Frame.Identify,Type:1,OverlayID:toolbarInfo.ID,Title:overlayItem.Title,Data:item.Data});left=rtButton.Right;toolbarInfo.Width+=rtButton.Width;}if(toolbarInfo.Width>0)toolbarInfo.Width+=3;}};this.PtInButtons=function(x,y){for(var i=0;i<this.Buttons.length;++i){var item=this.Buttons[i];if(!item.Rect)continue;var rect=item.Rect;if(x>rect.Left&&x<rect.Right&&y>rect.Top&&y<rect.Bottom){var result={ID:item.ID,Rect:rect,FrameID:item.FrameID,Type:item.Type,Data:item.Data};if(item.Type==1){result.Title=item.Title;result.OverlayID=item.OverlayID;}return result;}}return null;};}//画图工具
6672
6698
  function IChartDrawPicture(){this.Frame;this.Canvas;this.Point=new Array();//画图的点
6673
6699
  this.Value=new Array();//XValue,YValue
@@ -7580,8 +7606,11 @@ IconFont2:{Family:'iconfont',Text:'\uE634',HScreenText:'\uE686',Color:'#ed7520'}
7580
7606
  {IconFont:{Family:'iconfont',Text:'\uE697',HScreenText:'\uE697',Color:'rgb(255,0,255)',Size:5*GetDevicePixelRatio(),Position:2,IsShowNumber:false//SVG 文本
7581
7607
  }},Dividend://除权
7582
7608
  {IconFont:{Family:'iconfont',Text:'\uE6EB',HScreenText:'\uF0CA',Color:'rgb(220,20,60)',Size:10*GetDevicePixelRatio(),Position:1,IsShowNumber:false//SVG 文本
7583
- }},//扩展图标库
7584
- IconLibrary:{Family:'iconfont',Icon:[{Text:'\uE630',HScreenText:'\uE689',Color:'#f39f7c'},{Text:'\uE632',HScreenText:'\uE688',Color:'#19b1b7'},{Text:'\uE62F',HScreenText:'\uE68A',Color:'#b22626'},{Text:'\uE634',HScreenText:'\uE686',Color:'#ed7520'}]},MinSize:12*GetDevicePixelRatio(),MaxSize:18*GetDevicePixelRatio()},NumIcon:{Color:'rgb(251,80,80)',Family:'iconfont',Text:['\uE649','\uE63B','\uE640','\uE63D','\uE63F','\uE645','\uE641','\uE647','\uE648','\uE646','\uE636','\uE635','\uE637','\uE638','\uE639','\uE63A','\uE63C','\uE63E','\uE642','\uE644','\uE643']},TradeIcon://交易指标 图标
7609
+ }},ExtendInfo://扩展信息
7610
+ {//默认值
7611
+ Default:{Family:'iconfont',Text:'\uE6BD',HScreenText:'\uE6BD',Color:'rgb(148,0,211)'},//自定义值
7612
+ AryIconFont:[{Family:'iconfont',Text:'\uE6C3',HScreenText:'\uE6C3',Color:'rgb(255,165,0)'},{Family:'iconfont',Text:'\uE6C5',HScreenText:'\uE6C5',Color:'rgb(0,191,255)'},{Family:'iconfont',Text:'\uE6C6',HScreenText:'\uEE6C6',Color:'rgb( 152,251,152)'}]},//公告扩展图标库信息
7613
+ AnnouncementEx:{Default:{Family:'iconfont',Text:'\uE633',HScreenText:'\uE685',Color:'#f5a521'},AryIconFont:[{Family:'iconfont',Text:'\uE630',HScreenText:'\uE689',Color:'#f39f7c'},{Family:'iconfont',Text:'\uE632',HScreenText:'\uE688',Color:'#19b1b7'},{Family:'iconfont',Text:'\uE62F',HScreenText:'\uE68A',Color:'#b22626'},{Family:'iconfont',Text:'\uE634',HScreenText:'\uE686',Color:'#ed7520'}]},MinSize:12*GetDevicePixelRatio(),MaxSize:18*GetDevicePixelRatio()},NumIcon:{Color:'rgb(251,80,80)',Family:'iconfont',Text:['\uE649','\uE63B','\uE640','\uE63D','\uE63F','\uE645','\uE641','\uE647','\uE648','\uE646','\uE636','\uE635','\uE637','\uE638','\uE639','\uE63A','\uE63C','\uE63E','\uE642','\uE644','\uE643']},TradeIcon://交易指标 图标
7585
7614
  {Family:'iconfont',Buy:{Color:'rgb(255,15,4)',Text:'\uE683',HScreenText:'\uE682'},Sell:{Color:'rgb(64,122,22)',Text:'\uE681',HScreenText:'\uE680'}}};this.VirtualKLine={Color:'rgb(100,100,100)',LineDash:[2,2]};this.PredictionKLine={Line:{Color:"rgb(100,100,100)",LineDash:[3,5],LineWidth:2},Bar:{UpColor:"rgb(65,105,225)",DownColor:"rgb(65,105,225)",UnchangeColor:"rgb(65,105,225s)",DrawType:3}};this.PriceGapStyple={Line:{Color:"rgb(186,186,186)"},Text:{Color:"rgb(105,105,105)",Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1'}};this.DaySummaryKLine={Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1',TextColor:"rgb(105,105,105)",LeftMargin:2*GetDevicePixelRatio()//订单流配置
7586
7615
  };this.OrderFlow={UpColor:{BG:'rgb(223,191,180)',Border:"rgb(196,84,86)"},//阳线
7587
7616
  DownColor:{BG:"rgb(176,212,184)",Border:'rgb(66,94,74)'},//阴线
@@ -7616,7 +7645,7 @@ TextColor:"rgb(255,255,255)",//文字颜色
7616
7645
  Font:14*GetDevicePixelRatio()+"px 微软雅黑"//文字字体
7617
7646
  },PointType:2,// 0=圆点 1=方框 2=空心圆
7618
7647
  IsShowPoint:false//是否始终显示点
7619
- };this.ChartOX={Family:'iconfont',Up:{Color:'rgb(178,34,34)',Text:'\uE697'},Down:{Color:"rgb(0,206,209)",Text:'\uE68C'},SquareLineColor:'rgb(119,136,153)'};this.KLineTrain={Font:'bold 14px arial',LastDataIcon:{Color:'rgb(0,0,205)',Text:'⬇'},BuyIcon:{Color:'rgb(0,205,102 )',Text:'B'},SellIcon:{Color:'rgb(255,127,36 )',Text:'S'},IconFont:{Family:'iconfont',Buy:{Text:'\uE64A',HScreenText:'\uE68A',Color:'rgb(255,140,0)'},Sell:{Text:'\uE64B',HScreenText:'\uE68A',Color:'rgb(6,79,18)'},Last:{Text:'\uE681',HScreenText:'\uE68A',Color:'rgb(55,0,255)'}}};this.ChartKLineTable={TextFont:{Family:'Arial',FontMaxSize:25},ItemMargin:{Left:5,Right:5,Top:4,Bottom:2}};this.ChartSimpleTable={TextFont:{Family:'微软雅黑',Size:14},ItemMargin:{Left:5,Right:5,Top:4,Bottom:2},TextColor:"rgb(0,0,0)",BGColor:"rgba(255,255,255,0.95)",BorderColor:"rgb(217,217,217)"};this.ChartSimplePie={TextFont:{Family:'微软雅黑',Size:12},BorderColor:"rgb(169,169,169)",Offset:{X:-5,Y:5}};this.ChartSimpleDoughnut={TextFont:{Family:'微软雅黑',Size:12},BorderColor:"rgb(169,169,169)",Offset:{X:-5,Y:5}};this.ChartSimpleRadar={TextFont:{Family:'微软雅黑',Size:12},BorderColor:"rgb(169,169,169)",Offset:{X:-5,Y:5},TextColor:"rgb(105,105,105)",AryBGColor:['rgba(255,255,255,0.9)','rgba(230, 234, 242,0.9)'],AryArea:[{Color:"rgba(242,154,118,0.4)",LineColor:"rgb(242,154,118)"},{Color:"rgba(121,197,228,0.4)",LineColor:"rgb(92,165,196)"}]};this.ChartBaseLineBar={UpColor:"rgb(238,21,21)",DownColor:"rgb(25,158,0)"};this.ChartPointDot={UpColor:"rgb(255,61,61)",DownColor:"rgb(0,199,65)"};this.ChartDrawTVLongPosition={TopArea:{AreaColor:"rgba(214, 234, 230,0.8)",SelectedAreaColor:"rgba(214, 234, 230,0.55)",TextBGColor:"rgb(80, 150, 130)",TextColor:"rgb(255,255,255)"},BottomArea:{AreaColor:"rgb(243, 217, 218,0.8)",SelectedAreaColor:"rgba(243, 217, 218,0.55)",TextBGColor:"rgb(214, 75, 75)",TextColor:"rgb(255,255,255)"},Label:{Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1',Margin:{Left:2,Top:2,Bottom:2,Right:2}}//手机端tooltip
7648
+ };this.ChartOX={Family:'iconfont',Up:{Color:'rgb(178,34,34)',Text:'\uE697'},Down:{Color:"rgb(0,206,209)",Text:'\uE68C'},SquareLineColor:'rgb(119,136,153)'};this.KLineTrain={Font:'bold 14px arial',LastDataIcon:{Color:'rgb(0,0,205)',Text:'⬇'},BuyIcon:{Color:'rgb(0,205,102 )',Text:'B'},SellIcon:{Color:'rgb(255,127,36 )',Text:'S'},IconFont:{Family:'iconfont',Buy:{Text:'\uE64A',HScreenText:'\uE68A',Color:'rgb(255,140,0)'},Sell:{Text:'\uE64B',HScreenText:'\uE68A',Color:'rgb(6,79,18)'},Last:{Text:'\uE681',HScreenText:'\uE68A',Color:'rgb(55,0,255)'}}};this.ChartKLineTable={TextFont:{Family:'Arial',FontMaxSize:14*GetDevicePixelRatio()},ItemMargin:{Left:5,Right:5,Top:4,Bottom:2},Border:{Vertical:{Color:"rgb(236, 236, 236)"},Horizontal:{Color:"rgb(236, 236, 236)"}},BG:{Color:"rgb(250,250,250)"},Label:{Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1',Color:"rgb(0,0,0)",BGColor:"rgb(250,250,250)",BorderColor:"rgb(236, 236, 236)"},TextColor:"rgb(0,0,0)"};this.ChartSimpleTable={TextFont:{Family:'微软雅黑',Size:14},ItemMargin:{Left:5,Right:5,Top:4,Bottom:2},TextColor:"rgb(0,0,0)",BGColor:"rgba(255,255,255,0.95)",BorderColor:"rgb(217,217,217)"};this.ChartSimplePie={TextFont:{Family:'微软雅黑',Size:12},BorderColor:"rgb(169,169,169)",Offset:{X:-5,Y:5}};this.ChartSimpleDoughnut={TextFont:{Family:'微软雅黑',Size:12},BorderColor:"rgb(169,169,169)",Offset:{X:-5,Y:5}};this.ChartSimpleRadar={TextFont:{Family:'微软雅黑',Size:12},BorderColor:"rgb(169,169,169)",Offset:{X:-5,Y:5},TextColor:"rgb(105,105,105)",AryBGColor:['rgba(255,255,255,0.9)','rgba(230, 234, 242,0.9)'],AryArea:[{Color:"rgba(242,154,118,0.4)",LineColor:"rgb(242,154,118)"},{Color:"rgba(121,197,228,0.4)",LineColor:"rgb(92,165,196)"}]};this.ChartBaseLineBar={UpColor:"rgb(238,21,21)",DownColor:"rgb(25,158,0)"};this.ChartPointDot={UpColor:"rgb(255,61,61)",DownColor:"rgb(0,199,65)"};this.ChartDrawTVLongPosition={TopArea:{AreaColor:"rgba(214, 234, 230,0.8)",SelectedAreaColor:"rgba(214, 234, 230,0.55)",TextBGColor:"rgb(80, 150, 130)",TextColor:"rgb(255,255,255)"},BottomArea:{AreaColor:"rgb(243, 217, 218,0.8)",SelectedAreaColor:"rgba(243, 217, 218,0.55)",TextBGColor:"rgb(214, 75, 75)",TextColor:"rgb(255,255,255)"},Label:{Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1',Margin:{Left:2,Top:2,Bottom:2,Right:2}}//手机端tooltip
7620
7649
  };this.TooltipPaint={BGColor:'rgba(250,250,250,0.8)',//背景色
7621
7650
  BorderColor:'rgb(120,120,120)',//边框颜色
7622
7651
  TitleColor:'rgb(79, 79, 79)',//标题颜色
@@ -7799,7 +7828,7 @@ UnchangeTextColor:"rgb(90,90,90)",//平盘文字颜色
7799
7828
  BorderColor:"rgb(192,192,192)"};this.ScrollText={Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1',Color:"rgb(77,77,77)",MouseOnColor:"rgb(233,85,4)",Margin:{Top:2,Bottom:2},Spacing:20,//间距
7800
7829
  LeftMargin:5*GetDevicePixelRatio(),RightMargin:5*GetDevicePixelRatio(),MoveStep:4,//移动步长
7801
7830
  Label:{Color:"rgb(50,50,50)",Font:13*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1',Margin:{Left:10*GetDevicePixelRatio(),Bottom:1,Right:10*GetDevicePixelRatio()}}//自定义风格
7802
- };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.HighLowBarColor)this.HighLowBarColor=style.HighLowBarColor;if(style.HighLowText){var dest=this.HighLowText;var item=style.HighLowText;if(item.FontName)dest.FontName=item.FontName;if(item.Color)dest.Color=item.Color;if(item.MaxText)dest.MaxText=item.MaxText;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))dest.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))dest.MinSize=item.MinSize;}if(style.SplashScreen){var item=style.SplashScreen;if(item.BGColor)this.SplashScreen.BGColor=item.BGColor;if(item.Title)this.SplashScreen.Title=item.Title;if(item.TextColor)this.SplashScreen.TextColor=item.TextColor;if(item.Font)this.SplashScreen.Font=item.Font;}if(style.HLCArea){var item=style.HLCArea;if(item.HighLineColor)this.HLCArea.HighLineColor=item.HighLineColor;if(item.LowLineColor)this.HLCArea.LowLineColor=item.LowLineColor;if(item.CloseLineColor)this.HLCArea.CloseLineColor=item.CloseLineColor;if(item.UpAreaColor)this.HLCArea.UpAreaColor=item.UpAreaColor;if(item.DownAreaColor)this.HLCArea.DownAreaColor=item.DownAreaColor;if(IFrameSplitOperator.IsNumber(item.LineWidth))this.HLCArea.LineWidth=item.LineWidth;}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.Minute.NightDay){var item=style.Minute.NightDay;if(item.NightBGColor)this.Minute.NightDay.NightBGColor=item.NightBGColor;if(item.Font)this.Minute.NightDay.Font=item.Font;if(item.Day){var subItem=item.Day;if(subItem.Color)this.Minute.NightDay.Day.Color=subItem.Color;if(subItem.BGColor)this.Minute.NightDay.Day.BGColor=subItem.BGColor;if(subItem.BorderColor)this.Minute.NightDay.Day.BorderColor=subItem.BorderColor;CopyMarginConfig(this.Minute.NightDay.Day.Margin,subItem.Margin);}if(item.Night){var subItem=item.Night;if(subItem.Color)this.Minute.NightDay.Night.Color=subItem.Color;if(subItem.BGColor)this.Minute.NightDay.Night.BGColor=subItem.BGColor;if(subItem.BorderColor)this.Minute.NightDay.Night.BorderColor=subItem.BorderColor;CopyMarginConfig(this.Minute.NightDay.Night.Margin,subItem.Margin);}}if(style.Minute.BuySellBar){var item=style.Minute.BuySellBar;var dest=this.Minute.BuySellBar;if(item.BuyColor)dest.BuyColor=item.BuyColor;if(item.SellColor)dest.SellColor=item.SellColor;if(item.Font)dest.Font=item.Font;if(item.TextColor)dest.TextColor=item.TextColor;if(IFrameSplitOperator.IsNumber(item.BarWidth))dest.BarWidth=item.BarWidth;if(IFrameSplitOperator.IsNonEmptyArray(item.AryBarRange))dest.AryBarRange=item.AryBarRange;if(IFrameSplitOperator.IsNumber(item.YOffset))dest.YOffset=item.YOffset;}}if(style.PopMinuteChart){var item=style.PopMinuteChart;var dest=this.PopMinuteChart;if(item.BGColor)dest.BGColor=item.BGColor;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.TitleColor)dest.TitleColor=item.TitleColor;if(item.TitleBGColor)dest.TitleBGColor=item.TitleBGColor;if(item.Mark){if(item.Mark.LineColor)dest.Mark.LineColor=item.Mark.LineColor;if(IFrameSplitOperator.IsNumber(item.Mark.LineWidth))dest.Mark.LineWidth=item.Mark.LineWidth;}if(item.Title){if(item.Title.Font)dest.Title.Font=item.Title.Font;}if(item.CorssCursor){if(item.CorssCursor.Font)dest.CorssCursor.Font=item.CorssCursor.Font;}if(item.Frame){if(item.Frame.Font)dest.Frame.Font=item.Frame.Font;}}if(style.PopKLineChart){var item=style.PopKLineChart;var dest=this.PopKLineChart;if(item.BGColor)dest.BGColor=item.BGColor;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.TitleColor)dest.TitleColor=item.TitleColor;if(item.TitleBGColor)dest.TitleBGColor=item.TitleBGColor;}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.IndexTitleBorderColor)this.IndexTitleBorderColor=style.IndexTitleBorderColor;if(style.IndexTitleBorderMoveOnColor)this.IndexTitleBorderMoveOnColor=style.IndexTitleBorderMoveOnColor;if(IFrameSplitOperator.IsNumber(style.IndexTitleBorderStyle))this.IndexTitleBorderStyle=style.IndexTitleBorderStyle;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.SelFrameBorderColor)this.SelFrameBorderColor=style.SelFrameBorderColor;if(IFrameSplitOperator.IsNumber(style.IndexTitleMerginLeft))this.IndexTitleMerginLeft=style.IndexTitleMerginLeft;if(style.IndexTitle){var item=style.IndexTitle;if(item.UpDownArrow){var subItem=item.UpDownArrow;if(subItem.UpColor)this.IndexTitle.UpDownArrow.UpColor=subItem.UpColor;if(subItem.DownColor)this.IndexTitle.UpDownArrow.DownColor=subItem.DownColor;if(subItem.UnchangeColor)this.IndexTitle.UpDownArrow.UnchangeColor=subItem.UnchangeColor;}if(IFrameSplitOperator.IsNumber(item.ArrowType))this.IndexTitle.ArrowType=item.ArrowType;if(IFrameSplitOperator.IsBool(item.EnableIndexArrow))this.IndexTitle.EnableIndexArrow=item.EnableIndexArrow;if(IFrameSplitOperator.IsBool(item.IsSinlgeLine))this.IndexTitle.IsSinlgeLine=item.IsSinlgeLine;if(item.NameArrow){var subItem=item.NameArrow;if(subItem.Color)this.IndexTitle.NameArrow.Color=subItem.Color;if(subItem.Symbol)this.IndexTitle.NameArrow.Symbol=subItem.Symbol;if(IFrameSplitOperator.IsNumber(subItem.Space))this.IndexTitle.NameArrow.Space=subItem.Space;}}if(style.Frame){if(style.Frame.XBottomOffset)this.Frame.XBottomOffset=style.Frame.XBottomOffset;if(style.Frame.YTopOffset)this.Frame.YTopOffset=style.Frame.YTopOffset;if(IFrameSplitOperator.IsNumber(style.Frame.XPointCount))this.Frame.XPointCount=style.Frame.XPointCount;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(IFrameSplitOperator.IsBool(style.IsDOMFrameTitle))this.IsDOMFrameTitle=style.IsDOMFrameTitle;if(style.FrameLatestPrice){var item=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(item.EmptyBGColor)this.FrameLatestPrice.EmptyBGColor=item.EmptyBGColor;}if(style.OverlayFrame){var item=style.OverlayFrame;if(style.OverlayFrame.BolderPen)this.OverlayFrame.BolderPen=style.OverlayFrame.BolderPen;if(style.OverlayFrame.TitleColor)this.OverlayFrame.TitleColor=style.OverlayFrame.TitleColor;if(style.OverlayFrame.TitleFont)this.OverlayFrame.TitleFont=style.OverlayFrame.TitleFont;}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.CorssCursorLineDash)this.CorssCursorLineDash=style.CorssCursorLineDash.slice();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.CorssCursor&&style.CorssCursor.CorssPoint){var item=style.CorssCursor.CorssPoint;if(item.Center){var subItem=item.Center;var subDest=this.CorssCursor.CorssPoint.Center;if(IFrameSplitOperator.IsNumber(subItem.Radius))subDest.Radius=subItem.Radius;if(subItem.Color)subDest.Color=subItem.Color;}if(item.Border){var subItem=item.Border;var subDest=this.CorssCursor.CorssPoint.Border;if(IFrameSplitOperator.IsNumber(subItem.Width))subDest.Width=subItem.Width;if(subItem.Color)subDest.Color=subItem.Color;}}if(style.LatestPointFlash){var item=style.LatestPointFlash;var dest=this.LatestPointFlash;if(item.PointColor)dest.PointColor=item.PointColor;if(IFrameSplitOperator.IsNumber(item.PointRadius))dest.PointRadius=item.PointRadius;if(item.BGColor)dest.BGColor=item.BGColor;if(IFrameSplitOperator.IsNumber(item.BGRadius))dest.BGRadius=item.BGRadius;}if(style.KLine)this.KLine=style.KLine;if(style.VirtualKLine){var item=style.VirtualKLine;if(item.Color)this.VirtualKLine.Color=item.Color;if(item.LineDash)this.VirtualKLine.LineDash=item.LineDash;}if(style.PredictionKLine){if(style.PredictionKLine.Line){var item=style.PredictionKLine.Line;var dest=this.PredictionKLine.Line;if(item.Color)dest.Color=item.Color;if(item.LineDash)dest.LineDash=item.LineDash;if(IFrameSplitOperator.IsNumber(item.LineWidth))dest.LineWidth=item.LineWidth;}if(style.PredictionKLine.Bar){var item=style.PredictionKLine.Bar;var dest=this.PredictionKLine.Bar;if(item.UpColor)dest.UpColor=item.UpColor;if(item.DownColor)dest.DownColor=item.DownColor;if(item.UnchangeColor)dest.UnchangeColor=item.UnchangeColor;if(IFrameSplitOperator.IsNumber(item.DrawType)||item.DrawType===null)dest.DrawType=item.DrawType;}}if(style.PriceGapStyple){var item=style.PriceGapStyple;if(item.Line&&item.Line.Color)this.PriceGapStyple.Line.Color=item.Line.Color;if(item.Text){if(item.Text.Color)this.PriceGapStyple.Text.Color=item.Text.Color;if(item.Text.Font)this.PriceGapStyple.Text.Font=item.Text.Font;}}if(style.DaySummaryKLine){var item=style.DaySummaryKLine;var dest=this.DaySummaryKLine;if(item.Font)dest.Font=item.Font;if(item.TextColor)dest.TextColor=item.TextColor;if(IFrameSplitOperator.IsNumber(item.LeftMargin))dest.LeftMargin=item.LeftMargin;}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(item.PositionColor)this.PCTooltipPaint.PositionColor=item.PositionColor;}if(style.DialogTooltip){var item=style.DialogTooltip;if(item.BGColor)this.DialogTooltip.BGColor=item.BGColor;if(item.BorderColor)this.DialogTooltip.BorderColor=item.BorderColor;if(item.TitleColor)this.DialogTooltip.TitleColor=item.TitleColor;if(item.TitleBGColor)this.DialogTooltip.TitleBGColor=item.TitleBGColor;if(item.DateTimeColor)this.DialogTooltip.DateTimeColor=item.DateTimeColor;if(item.VolColor)this.DialogTooltip.VolColor=item.VolColor;if(item.AmountColor)this.DialogTooltip.AmountColor=item.AmountColor;if(item.TurnoverRateColor)this.DialogTooltip.TurnoverRateColor=item.TurnoverRateColor;if(item.PositionColor)this.DialogTooltip.PositionColor=item.PositionColor;if(item.TextColor)this.DialogTooltip.TextColor=item.TextColor;if(item.ValueColor)this.DialogTooltip.ValueColor=item.ValueColor;}if(style.FloatTooltip){var item=style.FloatTooltip;if(item.BGColor)this.FloatTooltip.BGColor=item.BGColor;if(item.BorderColor)this.FloatTooltip.BorderColor=item.BorderColor;if(item.DateTimeColor)this.FloatTooltip.DateTimeColor=item.DateTimeColor;if(item.VolColor)this.FloatTooltip.VolColor=item.VolColor;if(item.AmountColor)this.FloatTooltip.AmountColor=item.AmountColor;if(item.TurnoverRateColor)this.FloatTooltip.TurnoverRateColor=item.TurnoverRateColor;if(item.PositionColor)this.FloatTooltip.PositionColor=item.PositionColor;if(item.TextColor)this.FloatTooltip.TextColor=item.TextColor;if(item.ValueColor)this.FloatTooltip.ValueColor=item.ValueColor;}if(style.DialogSelectRect){var item=style.DialogSelectRect;if(item.BGColor)this.DialogSelectRect.BGColor=item.BGColor;if(item.BorderColor)this.DialogSelectRect.BorderColor=item.BorderColor;if(item.TitleColor)this.DialogSelectRect.TitleColor=item.TitleColor;if(item.TextColor)this.DialogSelectRect.TextColor=item.TextColor;if(item.ValueColor)this.DialogSelectRect.ValueColor=item.ValueColor;if(item.VolColor)this.DialogSelectRect.VolColor=item.VolColor;if(item.AmountColor)this.DialogSelectRect.AmountColor=item.AmountColor;if(item.TurnoverRateColor)this.DialogSelectRect.TurnoverRateColor=item.TurnoverRateColor;if(item.PositionColor)this.DialogSelectRect.PositionColor=item.PositionColor;}if(style.DialogPopKeyboard){var item=style.DialogPopKeyboard;if(item.BGColor)this.DialogPopKeyboard.BGColor=item.BGColor;if(item.BorderColor)this.DialogPopKeyboard.BorderColor=item.BorderColor;if(item.TitleColor)this.DialogPopKeyboard.TitleColor=item.TitleColor;if(item.TitleBGColor)this.DialogTooltip.TitleBGColor=item.TitleBGColor;if(item.Input){var subItem=item.Input;if(subItem.BGColor)this.DialogPopKeyboard.Input.BGColor=subItem.BGColor;if(subItem.TextColor)this.DialogPopKeyboard.Input.TextColor=subItem.TextColor;}}if(style.MinuteInfo){var item=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(IFrameSplitOperator.IsNumber(item.PointRadius))this.MinuteInfo.PointRadius=item.PointRadius;}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.ChartSimpleTable)this.SetChartSimpleTable(style.ChartSimpleTable);if(style.ChartSimplePie)this.SetChartSimplePie(style.ChartSimplePie);if(style.ChartSimpleDoughnut)this.SetChartSimpleDoughnut(style.ChartSimpleDoughnut);if(style.ChartSimpleRadar)this.SetChartSimpleRadar(style.ChartSimpleRadar);if(style.ChartBaseLineBar)this.SetChartBaseLineBar(style.ChartBaseLineBar);if(style.ChartPointDot)this.SetChartPointDot(style.ChartPointDot);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.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.Font)this.StockChip.Font=item.Font;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(item.CloseButton)T_SetButtonStyle(item.CloseButton,this.StockChip.CloseButton);if(item.PhoneCloseButton){var subItem=item.PhoneCloseButton;if(subItem.Family)this.StockChip.PhoneCloseButton.Family=subItem.Family;if(subItem.Text)this.StockChip.PhoneCloseButton.Text=subItem.Text;if(subItem.Color)this.StockChip.PhoneCloseButton.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Size))this.StockChip.PhoneCloseButton.Size=subItem.Size;if(IFrameSplitOperator.IsBool(subItem.IsShow))this.StockChip.PhoneCloseButton.IsShow=subItem.IsShow;if(subItem.Border){if(subItem.Border.BGColor)this.StockChip.PhoneCloseButton.Border.BGColor=subItem.Border.BGColor;}}}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.Bottom))this.DepthCorss.Tooltip.Border.Bottom=border.Bottom;if(IFrameSplitOperator.IsNumber(border.Left))this.DepthCorss.Tooltip.Border.Left=border.Left;if(IFrameSplitOperator.IsNumber(border.Right))this.DepthCorss.Tooltip.Border.Right=border.Right;if(IFrameSplitOperator.IsNumber(border.ItemSpace))this.DepthCorss.Tooltip.Border.ItemSpace=border.ItemSpace;}}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(item.Mark){var subItem=item.Mark;if(subItem.Family)this.RectSelect.Mark.Family=subItem.Family;if(subItem.Text)this.RectSelect.Mark.Text=subItem.Text;if(subItem.Color)this.RectSelect.Mark.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Size))this.RectSelect.Mark.Size=subItem.Size;if(subItem.Position){if(subItem.Position.Top)this.RectSelect.Mark.Position.Top=subItem.Position.Top;if(IFrameSplitOperator.IsNumber(subItem.Position.Index))this.RectSelect.Mark.Position.Index=subItem.Position.Index;}}}if(style.RectDrag){var item=style.RectDrag;var dest=this.RectDrag;if(item.LineColor)dest.LineColor=item.LineColor;if(IFrameSplitOperator.IsPlusNumber(item.LineWidth))dest.LineWidth=item.LineWidth;if(item.BGColor)dest.BGColor=item.BGColor;}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.CloseLineColor)this.DealList.CloseLineColor=item.CloseLineColor;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.Right=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(item.Selected){var subItem=item.Selected;if(subItem.BGColor)this.DealList.Selected.BGColor=subItem.BGColor;if(subItem.LineColor)this.DealList.Selected.LineColor=subItem.LineColor;if(IFrameSplitOperator.IsPlusNumber(subItem.LineWidth))this.DealList.Selected.LineWidth=subItem.LineWidth;}}if(style.Report)this.SetReportStyle(style.Report);if(style.TReport)this.SetTReportStyle(style.TReport);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.BGColor)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(style.SessionBreaksPaint){var item=style.SessionBreaksPaint;if(IFrameSplitOperator.IsNonEmptyArray(item.BGColor))this.SessionBreaksPaint.BGColor=item.BGColor.slice();if(item.SplitLine){var subItem=item.SplitLine;if(subItem.Color)this.SessionBreaksPaint.SplitLine.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Width))this.SessionBreaksPaint.SplitLine.Width=subItem.Width;this.SessionBreaksPaint.SplitLine.Dash=subItem.Dash;}}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);T_SetButtonStyle(buttons.AddIndexWindow,this.Buttons.AddIndexWindow);T_SetButtonStyle(buttons.IndexHelp,this.Buttons.IndexHelp);if(buttons.Tooltip){var item=buttons.Tooltip;var src=this.Buttons.Tooltip;if(item.Font)src.Font=item.Font;if(item.Color)src.Color=item.Color;if(item.ColorBG)src.ColorBG=item.ColorBG;if(item.ColorBorder)src.ColorBorder=item.ColorBorder;if(item.BorderRadius)src.BorderRadius=item.BorderRadius;if(item.Margin){if(IFrameSplitOperator.IsNumber(item.Margin.Left))src.Margin.Left=item.Margin.Left;if(IFrameSplitOperator.IsNumber(item.Margin.Top))src.Margin.Top=item.Margin.Top;if(IFrameSplitOperator.IsNumber(item.Margin.Bottom))src.Margin.Bottom=item.Margin.Bottom;if(IFrameSplitOperator.IsNumber(item.Margin.Right))src.Margin.Right=item.Margin.Right;}}}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;}if(style.ScrollBar){var item=style.ScrollBar;if(item.BorderColor)this.ScrollBar.BorderColor=item.BorderColor;if(item.XSplitTextFont)this.ScrollBar.XSplitTextFont=item.XSplitTextFont;if(item.XSplitTextColor)this.ScrollBar.XSplitTextColor=item.XSplitTextColor;if(item.XSplitLineColor)this.ScrollBar.XSplitLineColor=item.XSplitLineColor;if(item.Slider){var subItem=item.Slider;if(subItem.DateFont)this.ScrollBar.Slider.DateFont=subItem.DateFont;if(subItem.DateColor)this.ScrollBar.Slider.DateColor=subItem.DateColor;if(subItem.BarColor)this.ScrollBar.Slider.BarColor=subItem.BarColor;if(subItem.BarAreaColor)this.ScrollBar.Slider.BarAreaColor=subItem.BarAreaColor;if(IFrameSplitOperator.IsNumber(subItem.BarWidth))this.ScrollBar.Slider.BarWidth=subItem.BarWidth;if(IFrameSplitOperator.IsNumber(subItem.BarPadding))this.ScrollBar.Slider.BarPadding=subItem.BarPadding;if(IFrameSplitOperator.IsNumber(subItem.MinCenterWidth))this.ScrollBar.Slider.MinCenterWidth=subItem.MinCenterWidth;}if(item.BGChart){var subItem=item.BGChart;if(subItem.Color)this.ScrollBar.BGChart.Color=subItem.Color;if(subItem.AreaColor)this.ScrollBar.BGChart.AreaColor=subItem.AreaColor;if(IFrameSplitOperator.IsPlusNumber(subItem.LineWidth))this.ScrollBar.BGChart.LineWidth=subItem.LineWidth;}}if(style.FrameButtomToolbar)this.SetFrameButtomToolbar(style.FrameButtomToolbar);if(style.Keyboard)this.SetKeyboardStyle(style.Keyboard);if(style.MinuteToolbar)this.SetMinuteToolbar(style.MinuteToolbar);if(style.KLineToolbar)this.SetKLineToolbar(style.KLineToolbar);if(style.IndexLock)this.SetIndexLock(style.IndexLock);if(style.ChartScatterPlotV2)this.SetChartScatterPlotV2(style.ChartScatterPlotV2);if(style.ChartDrawTVLongPosition)this.SetChartDrawTVLongPosition(style.ChartDrawTVLongPosition);if(style.KLineCountDownPaint)this.SetKLineCountDownPaint(style.KLineCountDownPaint);if(style.SmallFloatTooltipV2)this.SetSmallFloatTooltipV2(style.SmallFloatTooltipV2);if(style.StockInfo)this.SetStockInfo(style.StockInfo);if(style.StatusBar)this.SetStatusBar(style.StatusBar);if(style.ScrollText)this.SetScrollText(style.ScrollText);};this.SetScrollText=function(style){var dest=this.ScrollText;if(style.Font)dest.Font=style.Font;if(style.Color)dest.Color=style.Color;if(style.MouseOnColor)dest.MouseOnColor=style.MouseOnColor;if(style.Margin){var item=style.Margin;if(IFrameSplitOperator.IsNumber(item.Top))dest.Margin.Top=item.Top;if(IFrameSplitOperator.IsNumber(item.Bottom))dest.Margin.Bottom=item.Bottom;}if(IFrameSplitOperator.IsNumber(style.LeftMargin))dest.LeftMargin=style.LeftMargin;if(IFrameSplitOperator.IsNumber(style.RightMargin))dest.RightMargin=style.RightMargin;if(IFrameSplitOperator.IsNumber(style.Spacing))dest.Spacing=style.Spacing;if(IFrameSplitOperator.IsNumber(style.MoveStep))dest.MoveStep=style.MoveStep;if(style.Label){var item=style.Label;var subDest=dest.Label;if(item.Color)subDest.Color=item.Color;if(item.Font)subDest.Font=item.Font;if(item.Margin)CopyMarginConfig(subDest.Margin,item.Margin);}};this.SetStatusBar=function(style){var dest=this.StatusBar;if(style.Table){var item=style.Table;if(item.Font)dest.Table.Font=item.Font;if(item.TitleColor)dest.Table.TitleColor=item.TitleColor;if(IFrameSplitOperator.IsNonEmptyArray(item.AryTextColor))dest.Table.AryTextColor=item.AryTextColor.slice();CopyMarginConfig(dest.Table.Margin,item.Margin);if(item.CellMargin){var subItem=item.CellMargin;CopyMarginConfig(dest.Table.CellMargin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.Table.CellMargin.YOffset=subItem.YOffset;}if(item.Separator){var subItem=item.Separator;var subDest=dest.Table.Separator;if(IFrameSplitOperator.IsNumber(subItem.Left))subDest.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Right))subDest.Left=subItem.Right;if(subItem.Line){if(IFrameSplitOperator.IsNumber(subItem.Line.Width))subDest.Line.Width=subItem.Line.Width;if(IFrameSplitOperator.IsNumber(subItem.Line.Top))subDest.Line.Top=subItem.Line.Top;if(IFrameSplitOperator.IsNumber(subItem.Line.Bottom))subDest.Line.Bottom=subItem.Line.Bottom;if(subItem.Line.Color)subDest.Line.Color=subItem.Line.Color;}}}if(style.DateTime){var item=style.DateTime;if(item.Font)dest.DateTime.Font=item.Font;if(item.TitleColor)dest.DateTime.TitleColor=item.TitleColor;if(item.Format)dest.DateTime.Format=item.Format;if(item.MaxText)dest.DateTime.MaxText=item.MaxText;if(item.Margin){var subItem=item.Margin;CopyMarginConfig(dest.DateTime.Margin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.DateTime.Margin.YOffset=subItem.YOffset;}}if(style.UpTextColor)dest.UpTextColor=style.UpTextColor;if(style.DownTextColor)dest.DownTextColor=style.DownTextColor;if(style.UnchangeTextColor)dest.UnchangeTextColor=style.UnchangeTextColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;};this.SetStockInfo=function(style){var dest=this.StockInfo;if(style.BuySell){var item=style.BuySell;if(item.Font)dest.BuySell.Font=item.Font;if(item.TitleColor)dest.BuySell.TitleColor=item.TitleColor;if(item.VolColor)dest.BuySell.VolColor=item.VolColor;CopyMarginConfig(dest.BuySell.Margin,item.Margin);if(item.CellMargin){var subItem=item.CellMargin;CopyMarginConfig(dest.BuySell.CellMargin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.BuySell.CellMargin.YOffset=subItem.YOffset;}if(item.BottomLine){var subItem=item.BottomLine;if(subItem.Color)dest.BuySell.BottomLine.Color=subItem.Color;if(IFrameSplitOperator.IsBool(subItem.Enable))dest.BuySell.BottomLine.Enable=subItem.Enable;}if(item.TopLine){var subItem=item.TopLine;if(subItem.Color)dest.BuySell.TopLine.Color=subItem.Color;if(IFrameSplitOperator.IsBool(subItem.Enable))dest.BuySell.TopLine.Enable=subItem.Enable;}if(item.CenterLine){var subItem=item.CenterLine;if(subItem.BuyColor)dest.BuySell.CenterLine.BuyColor=subItem.BuyColor;if(subItem.SellColor)dest.BuySell.CenterLine.SellColor=subItem.SellColor;if(subItem.NoneColor)dest.BuySell.CenterLine.NoneColor=subItem.NoneColor;if(IFrameSplitOperator.IsNumber(subItem.Width))dest.BuySell.CenterLine.Width=subItem.Width;}}if(style.Table){var item=style.Table;if(item.Font)dest.Table.Font=item.Font;if(item.TitleColor)dest.Table.TitleColor=item.TitleColor;if(item.TextColor)dest.Table.TextColor=item.TextColor;CopyMarginConfig(dest.Table.Margin,item.Margin);if(item.CellMargin){var subItem=item.CellMargin;CopyMarginConfig(dest.Table.CellMargin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.Table.CellMargin.YOffset=subItem.YOffset;}}if(style.Header){var item=style.Header;if(item.Font)dest.Header.Font=item.Font;if(item.TextColor)dest.Header.TextColor=item.TextColor;if(item.Name){var subItem=item.Name;if(subItem.Font)dest.Header.Name.Font=subItem.Font;if(subItem.Color)dest.Header.Name.Color=subItem.Color;if(subItem.Margin){var margin=subItem.Margin;CopyMarginConfig(dest.Header.Name.Margin,margin);if(IFrameSplitOperator.IsNumber(margin.YOffset))dest.Header.Name.Margin.YOffset=margin.YOffset;}}if(item.Symbol){var subItem=item.Symbol;if(subItem.Font)dest.Header.Symbol.Font=subItem.Font;if(subItem.Color)dest.Header.Symbol.Color=subItem.Color;if(subItem.Margin){var margin=subItem.Margin;CopyMarginConfig(dest.Header.Symbol.Margin,margin);if(IFrameSplitOperator.IsNumber(margin.YOffset))dest.Header.Symbol.Margin.YOffset=margin.YOffset;}}if(IFrameSplitOperator.IsNonEmptyArray(item.AryCell)){for(var i=0;i<item.AryCell.length;++i){var subItem=item.AryCell[i];if(!dest.Header.AryCell[i])dest.Header.AryCell[i]={};var subDest=dest.Header.AryCell[i];if(subItem.Font)subDest.Font=subItem.Font;if(subItem.Margin){var margin=subItem.Margin;CopyMarginConfig(subDest.Margin,margin);if(IFrameSplitOperator.IsNumber(margin.YOffset))subDest.YOffset=margin.YOffset;}}}if(item.BottomLine){var subItem=item.BottomLine;if(subItem.Color)dest.Header.BottomLine.Color=subItem.Color;if(IFrameSplitOperator.IsBool(subItem.Enable))dest.Header.BottomLine.Enable=subItem.Enable;}}if(style.MouseOn){var item=style.MouseOn;if(item.BGColor)dest.MouseOn.BGColor=item.BGColor;}if(style.UpTextColor)dest.UpTextColor=style.UpTextColor;if(style.DownTextColor)dest.DownTextColor=style.DownTextColor;if(style.UnchangeTextColor)dest.UnchangeTextColor=style.UnchangeTextColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;};this.SetSmallFloatTooltipV2=function(style){var dest=this.SmallFloatTooltipV2;if(style.BGColor)dest.BGColor=style.BGColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.TextColor)dest.TextColor=style.TextColor;if(style.ValueColor)dest.ValueColor=style.ValueColor;};this.SetKLineCountDownPaint=function(style){var dest=this.KLineCountDownPaint;if(style.Font)dest.Font=style.Font;if(style.TextMargin){var item=style.TextMargin;CopyMarginConfig(dest.TextMargin,item);if(IFrameSplitOperator.IsNumber(item.YOffset))dest.TextMargin.YOffset=item.YOffset;}if(style.LabelMargin)CopyMarginConfig(dest.LabelMargin,style.LabelMargin);if(style.Line){var item=style.Line;if(IFrameSplitOperator.IsNumber(item.Width))dest.Line.Width=item.Width;if(IFrameSplitOperator.IsBool(item.IsShow))dest.Line.Width=item.Width;if(item.Dash)dest.Line.Dash=item.Dash;}if(style.Unchange){var item=style.Unchange;var subDest=dest.Unchange;if(item.BGColor)subDest.BGColor=item.BGColor;if(item.PriceColor)subDest.PriceColor=item.PriceColor;if(item.TimeColor)subDest.TimeColor=item.TimeColor;}if(style.Up){var item=style.Up;var subDest=dest.Up;if(item.BGColor)subDest.BGColor=item.BGColor;if(item.PriceColor)subDest.PriceColor=item.PriceColor;if(item.TimeColor)subDest.TimeColor=item.TimeColor;}if(style.Down){var item=style.Down;var subDest=dest.Down;if(item.BGColor)subDest.BGColor=item.BGColor;if(item.PriceColor)subDest.PriceColor=item.PriceColor;if(item.TimeColor)subDest.TimeColor=item.TimeColor;}};this.SetChartDrawTVLongPosition=function(style){if(style.TopArea){var item=style.TopArea;var dest=this.ChartDrawTVLongPosition.TopArea;if(item.AreaColor)dest.AreaColor=item.AreaColor;if(item.SelectedAreaColor)dest.SelectedAreaColor=item.SelectedAreaColor;if(item.TextBGColor)dest.TextBGColor=item.TextBGColor;if(item.TextColor)dest.BorderColor=item.TextColor;}if(style.BottomArea){var item=style.BottomArea;var dest=this.ChartDrawTVLongPosition.BottomArea;if(item.AreaColor)dest.AreaColor=item.AreaColor;if(item.SelectedAreaColor)dest.SelectedAreaColor=item.SelectedAreaColor;if(item.TextBGColor)dest.TextBGColor=item.TextBGColor;if(item.TextColor)dest.BorderColor=item.TextColor;}if(style.Label){var item=style.Label;var dest=this.ChartDrawTVLongPosition.Label;if(item.Font)dest.Font=item.Font;CopyMarginConfig(dest.Margin,item.Margin);}};this.SetKeyboardStyle=function(style){var item=style;var dest=this.Keyboard;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.SelectedColor)dest.SelectedColor=item.SelectedColor;if(item.TextColor)dest.TextColor=item.TextColor;if(item.Item){var row=item.Item;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Item.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Item.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Item.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Item.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)dest.Item.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.Font.Size=font.Size;}if(row.BarMergin){var mergin=row.BarMergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Item.BarMergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Item.BarMergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Item.BarMergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Item.BarMergin.Bottom=mergin.Bottom;}if(row.NameFont){var font=row.NameFont;if(font.Name)dest.Item.NameFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.NameFont.Size=font.Size;}if(row.SymbolFont){var font=row.SymbolFont;if(font.Name)dest.Item.SymbolFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.SymbolFont.Size=font.Size;}}if(item.VScrollbar){var scroll=item.VScrollbar;if(IFrameSplitOperator.IsNumber(scroll.ScrollBarHeight))dest.VScrollbar.ScrollBarHeight=scroll.ScrollBarHeight;if(scroll.ButtonColor)dest.VScrollbar.ButtonColor=scroll.ButtonColor;if(scroll.BarColor)dest.VScrollbar.BarColor=scroll.BarColor;if(scroll.BorderColor)dest.VScrollbar.BorderColor=scroll.BorderColor;if(scroll.BGColor)dest.VScrollbar.BGColor=scroll.BGColor;if(scroll.BarWidth){var subItem=scroll.BarWidth;if(IFrameSplitOperator.IsNumber(subItem.Size))dest.VScrollbar.BarWidth.Size=subItem.Size;}}};this.SetReportStyle=function(style){var item=style;var dest=this.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.SelectedLine){var subItem=item.SelectedLine;var subDest=this.Report.SelectedLine;if(subItem.Color)subDest.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Width))subDest.Width=subItem.Width;}if(item.CloseLine){var closeLine=item.CloseLine;if(closeLine.CloseColor)this.Report.CloseLine.CloseColor=closeLine.CloseColor;if(closeLine.YCloseColor)this.Report.CloseLine.YCloseColor=closeLine.YCloseColor;if(closeLine.AreaColor)this.Report.CloseLine.AreaColor=closeLine.AreaColor;if(closeLine.UpColor)this.Report.CloseLine.UpColor=closeLine.UpColor;if(closeLine.UpAreaColor)this.Report.CloseLine.UpAreaColor=closeLine.UpAreaColor;if(closeLine.DownColor)this.Report.CloseLine.DownColor=closeLine.DownColor;if(closeLine.DownAreaColor)this.Report.CloseLine.DownAreaColor=closeLine.DownAreaColor;if(closeLine.UnchangeColor)this.Report.CloseLine.UnchangeColor=closeLine.UnchangeColor;if(closeLine.UnchangeAreaColor)this.Report.CloseLine.UnchangeAreaColor=closeLine.UnchangeAreaColor;}if(item.KLine){var kline=item.KLine;if(kline.UpColor)this.Report.KLine.UpColor=kline.UpColor;if(kline.DownColor)this.Report.KLine.DownColor=kline.DownColor;if(kline.UnchagneColor)this.Report.KLine.UnchagneColor=kline.UnchagneColor;if(IFrameSplitOperator.IsNumber(kline.DataWidth))this.Report.KLine.DataWidth=kline.DataWidth;if(IFrameSplitOperator.IsNumber(kline.DistanceWidth))this.Report.KLine.DistanceWidth=kline.DistanceWidth;}if(item.Header){var header=item.Header;if(header.Color)this.Report.Header.Color=header.Color;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.SortIcon){var sort=item.SortIcon;if(IFrameSplitOperator.IsNonEmptyArray(sort.Color))this.Report.SortIcon.Color=sort.Color.slice();if(IFrameSplitOperator.IsNumber(sort.Size))this.Report.SortIcon.Size=sort.Size;if(sort.Family)this.Report.SortIcon.Family=sort.Family;if(IFrameSplitOperator.IsNonEmptyArray(sort.Arrow))this.Report.SortIcon.Arrow=sort.Arrow.slice();if(sort.Margin){var margin=sort.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))this.Report.SortIcon.Margin.Left=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))this.Report.SortIcon.Margin.Right=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))this.Report.SortIcon.Margin.Top=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))this.Report.SortIcon.Margin.Bottom=margin.Bottom;}}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.LimitColor){var limit=item.LimitColor;if(limit.UpColor)this.Report.LimitColor.UpColor=limit.UpColor;if(limit.DownColor)this.Report.LimitColor.DownColor=limit.DownColor;if(limit.TextColor)this.Report.LimitColor.UpColor=limit.TextColor;}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.NameSymbolV2){var nameSymbol=item.NameSymbolV2;if(nameSymbol.Name){var subItem=nameSymbol.Name;if(IFrameSplitOperator.IsNumber(subItem.Size))this.Report.NameSymbolV2.Name.Size=subItem.Size;if(subItem.Name)this.Report.NameSymbolV2.Name.Name=subItem.Name;if(subItem.Color)this.Report.NameSymbolV2.Name.Color=subItem.Color;}if(nameSymbol.Symbol){var subItem=nameSymbol.Symbol;if(IFrameSplitOperator.IsNumber(subItem.Size))this.Report.NameSymbolV2.Symbol.Size=subItem.Size;if(subItem.Name)this.Report.NameSymbolV2.Symbol.Name=subItem.Name;if(subItem.Color)this.Report.NameSymbolV2.Symbol.Color=subItem.Color;}}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(item.VScrollbar){var subItem=item.VScrollbar;if(IFrameSplitOperator.IsNumber(subItem.ScrollBarHeight))dest.VScrollbar.ScrollBarHeight=subItem.ScrollBarHeight;if(subItem.ButtonColor)dest.VScrollbar.ButtonColor=subItem.ButtonColor;if(subItem.BarColor)dest.VScrollbar.BarColor=subItem.BarColor;if(subItem.BorderColor)dest.VScrollbar.BorderColor=subItem.BorderColor;if(subItem.BGColor)dest.VScrollbar.BGColor=subItem.BGColor;}if(item.CheckBox){var subItem=item.CheckBox;if(subItem.Family)dest.CheckBox.Family=subItem.Family;if(IFrameSplitOperator.IsNumber(subItem.Size))dest.CheckBox.Size=subItem.Size;if(subItem.Checked){var child=subItem.Checked;if(child.Color)dest.CheckBox.Checked.Color=child.Color;if(child.Symbol)dest.CheckBox.Checked.Symbol=child.Symbol;if(child.DisableColor)dest.CheckBox.Checked.DisableColor=child.DisableColor;}if(subItem.Unchecked){var child=subItem.Unchecked;if(child.Color)dest.CheckBox.Unchecked.Color=child.Color;if(child.Symbol)dest.CheckBox.Unchecked.Symbol=child.Symbol;if(child.DisableColor)dest.CheckBox.Unchecked.DisableColor=child.DisableColor;}CopyMarginConfig(dest.CheckBox.Margin,subItem.Margin);}if(item.Link){var subItem=item.Link;if(subItem.Font)dest.Link.Font=subItem.Font;if(subItem.TextColor)dest.Link.TextColor=subItem.TextColor;if(subItem.Disable&&subItem.Disable.TextColor)dest.Link.Disable.TextColor=subItem.Disable.TextColor;if(subItem.MouseOn&&subItem.MouseOn.TextColor)dest.Link.MouseOn.TextColor=subItem.MouseOn.TextColor;}if(item.ProgressBar){var subItem=item.ProgressBar;if(subItem.BGColor)dest.ProgressBar.BGColor=subItem.BGColor;if(subItem.BarColor)dest.ProgressBar.BarColor=subItem.BarColor;if(subItem.TextColor)dest.ProgressBar.TextColor=subItem.TextColor;if(subItem.Font)dest.ProgressBar.Font=subItem.Font;if(subItem.Disable){if(subItem.Disable.BGColor)dest.ProgressBar.Disable.BGColor=subItem.Disable.BGColor;if(subItem.Disable.BarColor)dest.ProgressBar.Disable.BarColor=subItem.Disable.BarColor;if(subItem.Disable.TextColor)dest.ProgressBar.Disable.TextColor=subItem.Disable.TextColor;}CopyMarginConfig(dest.ProgressBar.Margin,subItem.Margin);CopyMarginConfig(dest.ProgressBar.BarMargin,subItem.BarMargin);CopyMarginConfig(dest.ProgressBar.TextMargin,subItem.TextMargin);}if(item.Buttom){var subItem=item.Buttom;if(subItem.BGColor)dest.Buttom.BGColor=subItem.BGColor;if(subItem.TextColor)dest.Buttom.TextColor=subItem.TextColor;if(subItem.BorderColor)dest.Buttom.BorderColor=subItem.BorderColor;if(subItem.Font)dest.Buttom.Font=subItem.Font;if(subItem.Disable){if(subItem.Disable.BGColor)dest.Buttom.Disable.BGColor=subItem.Disable.BGColor;if(subItem.Disable.TextColor)dest.Buttom.Disable.TextColor=subItem.Disable.TextColor;}if(subItem.MouseOn){if(subItem.MouseOn.BGColor)dest.Buttom.MouseOn.BGColor=subItem.MouseOn.BGColor;if(subItem.MouseOn.TextColor)dest.Buttom.MouseOn.TextColor=subItem.MouseOn.TextColor;}CopyMarginConfig(dest.Buttom.Margin,subItem.Margin);CopyMarginConfig(dest.Buttom.TextMargin,subItem.TextMargin);}};this.SetTReportStyle=function(style){var item=style;var dest=this.TReport;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.UpTextColor)dest.UpTextColor=item.UpTextColor;if(item.DownTextColor)dest.DownTextColor=item.DownTextColor;if(item.UnchangeTextColor)dest.UnchangeTextColor=item.UnchangeTextColor;if(item.BorderColor)dest.SelectedColor=item.SelectedColor;if(item.UpBGColor)dest.UpBGColor=item.UpBGColor;if(item.DownBGColor)dest.DownBGColor=item.DownBGColor;if(item.Header){var header=item.Header;if(header.Color)dest.Header.Color=header.Color;if(header.SortColor)dest.Header.SortColor=header.SortColor;if(header.Mergin){var mergin=header.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Header.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Header.Mergin.Left=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Header.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Header.Mergin.Bottom=mergin.Bottom;}if(header.Font){var font=header.Font;if(font.Name)dest.Header.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Header.Font.Size=font.Size;}}if(item.CenterItem){var cell=item.CenterItem;if(cell.TextColor)dest.CenterItem.TextColor=cell.TextColor;if(cell.BaseTextColor)dest.CenterItem.BaseTextColor=cell.BaseTextColor;if(cell.BGColor)dest.CenterItem.BGColor=cell.BGColor;if(cell.MatchTextColor)dest.CenterItem.MatchTextColor=cell.MatchTextColor;}if(item.Item){var row=item.Item;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Item.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Item.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Item.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Item.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)dest.Item.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.Font.Size=font.Size;}if(row.NameFont){var font=row.NameFont;if(font.Name)dest.Item.NameFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.NameFont.Size=font.Size;}if(row.SymbolFont){var font=row.SymbolFont;if(font.Name)dest.Item.SymbolFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.SymbolFont.Size=font.Size;}}if(item.FieldColor){var filed=item.FieldColor;if(filed.Name)dest.FieldColor.Name=filed.Name;if(filed.Symbol)dest.FieldColor.Symbol=filed.Symbol;if(filed.Vol)dest.FieldColor.Vol=filed.Vol;if(filed.Amount)dest.FieldColor.Amount=filed.Amount;if(filed.Index)dest.FieldColor.Index=filed.Index;if(filed.Text)dest.FieldColor.Text=filed.Text;if(filed.Position)dest.FieldColor.Position=filed.Position;}if(item.MarkBorder){var subIem=item.MarkBorder;if(subIem.MaxPositionColor)dest.MarkBorder.MaxPositionColor=subIem.MaxPositionColor;}if(item.FixedItem){var subIem=item.FixedItem;if(subIem.Font){var font=subIem.Font;if(font.Name)dest.FixedItem.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.FixedItem.Font.Size=font.Size;}}};this.SetFrameButtomToolbar=function(style){var dest=this.FrameButtomToolbar;if(style.BGColor)dest.BGColor=style.BGColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.Button){var button=style.Button;if(button.BorderColor)dest.Button.BorderColor=button.BorderColor;if(button.Font){var item=button.Font;var destItem=this.FrameButtomToolbar.Button.Font;if(item.Family)destItem.Family=item.Family;if(IFrameSplitOperator.IsNumber(item.Size))destItem.Size=item.Size;}if(button.TitleColor){var item=button.TitleColor;var destItem=this.FrameButtomToolbar.Button.TitleColor;if(item.Selected)destItem.Selected=item.Selected;if(item.Default)destItem.Default=item.Default;if(item.MoveOn)destItem.MoveOn=item.MoveOn;}if(button.BGColor){var item=button.BGColor;var destItem=this.FrameButtomToolbar.Button.BGColor;if(item.Selected)destItem.Selected=item.Selected;if(item.Default)destItem.Default=item.Default;if(item.MoveOn)destItem.MoveOn=item.MoveOn;}if(button.Mergin){var item=button.Mergin;var destItem=this.FrameButtomToolbar.Button.Mergin;if(IFrameSplitOperator.IsNumber(item.Left))destItem.Left=item.Left;if(IFrameSplitOperator.IsNumber(item.Right))destItem.Left=item.Right;if(IFrameSplitOperator.IsNumber(item.Top))destItem.Top=item.Top;if(IFrameSplitOperator.IsNumber(item.Bottom))destItem.Bottom=item.Bottom;}if(button.SVG){var item=button.SVG;var destItem=this.FrameButtomToolbar.Button.SVG;if(IFrameSplitOperator.IsNumber(item.Size))destItem.Size=item.Size;if(IFrameSplitOperator.IsNumber(item.MerginLeft))destItem.MerginLeft=item.MerginLeft;if(item.Family)destItem.Family=item.Family;}}};this.SetMinuteToolbar=function(style){var dest=this.MinuteToolbar;if(IFrameSplitOperator.IsBool(style.ModifyIndex))dest.ModifyIndex=style.ModifyIndex;if(IFrameSplitOperator.IsBool(style.ChangeIndex))dest.ChangeIndex=style.ChangeIndex;if(IFrameSplitOperator.IsBool(style.CloseIndex))dest.CloseIndex=style.CloseIndex;if(IFrameSplitOperator.IsBool(style.OverlayIndex))dest.OverlayIndex=style.OverlayIndex;if(IFrameSplitOperator.IsBool(style.MaxMinWindow))dest.ModifyIndex=style.MaxMinWindow;if(IFrameSplitOperator.IsBool(style.TitleWindow))dest.ModifyIndex=style.TitleWindow;if(IFrameSplitOperator.IsBool(style.ExportData))dest.ModifyIndex=style.ExportData;if(IFrameSplitOperator.IsBool(style.AddIndexWindow))dest.AddIndexWindow=style.AddIndexWindow;if(IFrameSplitOperator.IsBool(style.IndexHelp))dest.IndexHelp=style.IndexHelp;if(IFrameSplitOperator.IsBool(style.IsShowOverlayToolbar))dest.IsShowOverlayToolbar=style.IsShowOverlayToolbar;if(IFrameSplitOperator.IsBool(style.IsShowOverlayFrame))dest.IsShowOverlayFrame=style.IsShowOverlayFrame;};this.SetKLineToolbar=function(style){var dest=this.KLineToolbar;if(IFrameSplitOperator.IsBool(style.ModifyIndex))dest.ModifyIndex=style.ModifyIndex;if(IFrameSplitOperator.IsBool(style.ChangeIndex))dest.ChangeIndex=style.ChangeIndex;if(IFrameSplitOperator.IsBool(style.CloseIndex))dest.CloseIndex=style.CloseIndex;if(IFrameSplitOperator.IsBool(style.OverlayIndex))dest.OverlayIndex=style.OverlayIndex;if(IFrameSplitOperator.IsBool(style.MaxMinWindow))dest.ModifyIndex=style.MaxMinWindow;if(IFrameSplitOperator.IsBool(style.TitleWindow))dest.ModifyIndex=style.TitleWindow;if(IFrameSplitOperator.IsBool(style.ExportData))dest.ModifyIndex=style.ExportData;if(IFrameSplitOperator.IsBool(style.AddIndexWindow))dest.AddIndexWindow=style.AddIndexWindow;if(IFrameSplitOperator.IsBool(style.IndexHelp))dest.IndexHelp=style.IndexHelp;};this.SetChartSimpleTable=function(style){var dest=this.ChartSimpleTable;if(style.TextColor)dest.TextColor=style.TextColor;if(style.BGColor)dest.BGColor=style.BGColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.ItemMargin){var margin=style.ItemMargin;if(IFrameSplitOperator.IsNumber(margin.Left))dest.ItemMargin.Left=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))dest.ItemMargin.Right=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))dest.ItemMargin.Top=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))dest.ItemMargin.Bottom=margin.Bottom;}};this.SetChartSimplePie=function(style){var dest=this.ChartSimplePie;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.Offset){var item=style.Offset;if(IFrameSplitOperator.IsNumber(item.X))dest.Offset.X=item.X;if(IFrameSplitOperator.IsNumber(item.Y))dest.Offset.Y=item.Y;}};this.SetChartSimpleDoughnut=function(style){var dest=this.ChartSimpleDoughnut;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.Offset){var item=style.Offset;if(IFrameSplitOperator.IsNumber(item.X))dest.Offset.X=item.X;if(IFrameSplitOperator.IsNumber(item.Y))dest.Offset.Y=item.Y;}};this.SetChartSimpleRadar=function(style){var dest=this.ChartSimpleRadar;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.TextColor)dest.TextColor=style.TextColor;if(style.Offset){var item=style.Offset;if(IFrameSplitOperator.IsNumber(item.X))dest.Offset.X=item.X;if(IFrameSplitOperator.IsNumber(item.Y))dest.Offset.Y=item.Y;}if(IFrameSplitOperator.IsNonEmptyArray(style.AryBGColor))dest.AryBGColor=style.AryBGColor.slice();if(IFrameSplitOperator.IsNonEmptyArray(style.AryArea))dest.AryArea=style.AryArea.slice();};this.SetChartBaseLineBar=function(style){var dest=this.ChartBaseLineBar;if(style.UpColor)dest.UpColor=style.UpColor;if(style.DownColor)dest.DownColor=style.DownColor;};this.SetChartPointDot=function(style){var dest=this.ChartPointDot;if(style.UpColor)dest.UpColor=style.UpColor;if(style.DownColor)dest.DownColor=style.DownColor;};this.SetIndexLock=function(style){var item=style;var dest=this.IndexLock;if(item.BGColor)dest.BGColor=item.BGColor;if(item.TextColor)dest.TextColor=item.TextColor;if(item.Font)dest.Font=item.Font;if(item.Title)dest.Title=item.Title;};this.SetChartScatterPlotV2=function(style){var item=style;var dest=this.ChartScatterPlotV2;if(item.Color)dest.Color=item.Color;if(item.TextColor)dest.TextColor=item.TextColor;if(item.Font)dest.Font=item.Font;if(IFrameSplitOperator.IsNumber(item.Radius))dest.Radius=item.Radius;};}var g_JSChartResource=new JSChartResource();/////////////////////////////////////////////////////////////////////////////////
7831
+ };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.HighLowBarColor)this.HighLowBarColor=style.HighLowBarColor;if(style.HighLowText){var dest=this.HighLowText;var item=style.HighLowText;if(item.FontName)dest.FontName=item.FontName;if(item.Color)dest.Color=item.Color;if(item.MaxText)dest.MaxText=item.MaxText;if(IFrameSplitOperator.IsPlusNumber(item.MaxSize))dest.MaxSize=item.MaxSize;if(IFrameSplitOperator.IsPlusNumber(item.MinSize))dest.MinSize=item.MinSize;}if(style.SplashScreen){var item=style.SplashScreen;if(item.BGColor)this.SplashScreen.BGColor=item.BGColor;if(item.Title)this.SplashScreen.Title=item.Title;if(item.TextColor)this.SplashScreen.TextColor=item.TextColor;if(item.Font)this.SplashScreen.Font=item.Font;}if(style.HLCArea){var item=style.HLCArea;if(item.HighLineColor)this.HLCArea.HighLineColor=item.HighLineColor;if(item.LowLineColor)this.HLCArea.LowLineColor=item.LowLineColor;if(item.CloseLineColor)this.HLCArea.CloseLineColor=item.CloseLineColor;if(item.UpAreaColor)this.HLCArea.UpAreaColor=item.UpAreaColor;if(item.DownAreaColor)this.HLCArea.DownAreaColor=item.DownAreaColor;if(IFrameSplitOperator.IsNumber(item.LineWidth))this.HLCArea.LineWidth=item.LineWidth;}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.Minute.NightDay){var item=style.Minute.NightDay;if(item.NightBGColor)this.Minute.NightDay.NightBGColor=item.NightBGColor;if(item.Font)this.Minute.NightDay.Font=item.Font;if(item.Day){var subItem=item.Day;if(subItem.Color)this.Minute.NightDay.Day.Color=subItem.Color;if(subItem.BGColor)this.Minute.NightDay.Day.BGColor=subItem.BGColor;if(subItem.BorderColor)this.Minute.NightDay.Day.BorderColor=subItem.BorderColor;CopyMarginConfig(this.Minute.NightDay.Day.Margin,subItem.Margin);}if(item.Night){var subItem=item.Night;if(subItem.Color)this.Minute.NightDay.Night.Color=subItem.Color;if(subItem.BGColor)this.Minute.NightDay.Night.BGColor=subItem.BGColor;if(subItem.BorderColor)this.Minute.NightDay.Night.BorderColor=subItem.BorderColor;CopyMarginConfig(this.Minute.NightDay.Night.Margin,subItem.Margin);}}if(style.Minute.BuySellBar){var item=style.Minute.BuySellBar;var dest=this.Minute.BuySellBar;if(item.BuyColor)dest.BuyColor=item.BuyColor;if(item.SellColor)dest.SellColor=item.SellColor;if(item.Font)dest.Font=item.Font;if(item.TextColor)dest.TextColor=item.TextColor;if(IFrameSplitOperator.IsNumber(item.BarWidth))dest.BarWidth=item.BarWidth;if(IFrameSplitOperator.IsNonEmptyArray(item.AryBarRange))dest.AryBarRange=item.AryBarRange;if(IFrameSplitOperator.IsNumber(item.YOffset))dest.YOffset=item.YOffset;}}if(style.PopMinuteChart){var item=style.PopMinuteChart;var dest=this.PopMinuteChart;if(item.BGColor)dest.BGColor=item.BGColor;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.TitleColor)dest.TitleColor=item.TitleColor;if(item.TitleBGColor)dest.TitleBGColor=item.TitleBGColor;if(item.Mark){if(item.Mark.LineColor)dest.Mark.LineColor=item.Mark.LineColor;if(IFrameSplitOperator.IsNumber(item.Mark.LineWidth))dest.Mark.LineWidth=item.Mark.LineWidth;}if(item.Title){if(item.Title.Font)dest.Title.Font=item.Title.Font;}if(item.CorssCursor){if(item.CorssCursor.Font)dest.CorssCursor.Font=item.CorssCursor.Font;}if(item.Frame){if(item.Frame.Font)dest.Frame.Font=item.Frame.Font;}}if(style.PopKLineChart){var item=style.PopKLineChart;var dest=this.PopKLineChart;if(item.BGColor)dest.BGColor=item.BGColor;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.TitleColor)dest.TitleColor=item.TitleColor;if(item.TitleBGColor)dest.TitleBGColor=item.TitleBGColor;}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.IndexTitleBorderColor)this.IndexTitleBorderColor=style.IndexTitleBorderColor;if(style.IndexTitleBorderMoveOnColor)this.IndexTitleBorderMoveOnColor=style.IndexTitleBorderMoveOnColor;if(IFrameSplitOperator.IsNumber(style.IndexTitleBorderStyle))this.IndexTitleBorderStyle=style.IndexTitleBorderStyle;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.SelFrameBorderColor)this.SelFrameBorderColor=style.SelFrameBorderColor;if(IFrameSplitOperator.IsNumber(style.IndexTitleMerginLeft))this.IndexTitleMerginLeft=style.IndexTitleMerginLeft;if(style.IndexTitle){var item=style.IndexTitle;if(item.UpDownArrow){var subItem=item.UpDownArrow;if(subItem.UpColor)this.IndexTitle.UpDownArrow.UpColor=subItem.UpColor;if(subItem.DownColor)this.IndexTitle.UpDownArrow.DownColor=subItem.DownColor;if(subItem.UnchangeColor)this.IndexTitle.UpDownArrow.UnchangeColor=subItem.UnchangeColor;}if(IFrameSplitOperator.IsNumber(item.ArrowType))this.IndexTitle.ArrowType=item.ArrowType;if(IFrameSplitOperator.IsBool(item.EnableIndexArrow))this.IndexTitle.EnableIndexArrow=item.EnableIndexArrow;if(IFrameSplitOperator.IsBool(item.IsSinlgeLine))this.IndexTitle.IsSinlgeLine=item.IsSinlgeLine;if(item.NameArrow){var subItem=item.NameArrow;if(subItem.Color)this.IndexTitle.NameArrow.Color=subItem.Color;if(subItem.Symbol)this.IndexTitle.NameArrow.Symbol=subItem.Symbol;if(IFrameSplitOperator.IsNumber(subItem.Space))this.IndexTitle.NameArrow.Space=subItem.Space;}}if(style.Frame){if(style.Frame.XBottomOffset)this.Frame.XBottomOffset=style.Frame.XBottomOffset;if(style.Frame.YTopOffset)this.Frame.YTopOffset=style.Frame.YTopOffset;if(IFrameSplitOperator.IsNumber(style.Frame.XPointCount))this.Frame.XPointCount=style.Frame.XPointCount;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(IFrameSplitOperator.IsBool(style.IsDOMFrameTitle))this.IsDOMFrameTitle=style.IsDOMFrameTitle;if(style.FrameLatestPrice){var item=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(item.EmptyBGColor)this.FrameLatestPrice.EmptyBGColor=item.EmptyBGColor;}if(style.OverlayFrame){var item=style.OverlayFrame;if(style.OverlayFrame.BolderPen)this.OverlayFrame.BolderPen=style.OverlayFrame.BolderPen;if(style.OverlayFrame.TitleColor)this.OverlayFrame.TitleColor=style.OverlayFrame.TitleColor;if(style.OverlayFrame.TitleFont)this.OverlayFrame.TitleFont=style.OverlayFrame.TitleFont;}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.CorssCursorLineDash)this.CorssCursorLineDash=style.CorssCursorLineDash.slice();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.CorssCursor&&style.CorssCursor.CorssPoint){var item=style.CorssCursor.CorssPoint;if(item.Center){var subItem=item.Center;var subDest=this.CorssCursor.CorssPoint.Center;if(IFrameSplitOperator.IsNumber(subItem.Radius))subDest.Radius=subItem.Radius;if(subItem.Color)subDest.Color=subItem.Color;}if(item.Border){var subItem=item.Border;var subDest=this.CorssCursor.CorssPoint.Border;if(IFrameSplitOperator.IsNumber(subItem.Width))subDest.Width=subItem.Width;if(subItem.Color)subDest.Color=subItem.Color;}}if(style.LatestPointFlash){var item=style.LatestPointFlash;var dest=this.LatestPointFlash;if(item.PointColor)dest.PointColor=item.PointColor;if(IFrameSplitOperator.IsNumber(item.PointRadius))dest.PointRadius=item.PointRadius;if(item.BGColor)dest.BGColor=item.BGColor;if(IFrameSplitOperator.IsNumber(item.BGRadius))dest.BGRadius=item.BGRadius;}if(style.KLine)this.KLine=style.KLine;if(style.VirtualKLine){var item=style.VirtualKLine;if(item.Color)this.VirtualKLine.Color=item.Color;if(item.LineDash)this.VirtualKLine.LineDash=item.LineDash;}if(style.PredictionKLine){if(style.PredictionKLine.Line){var item=style.PredictionKLine.Line;var dest=this.PredictionKLine.Line;if(item.Color)dest.Color=item.Color;if(item.LineDash)dest.LineDash=item.LineDash;if(IFrameSplitOperator.IsNumber(item.LineWidth))dest.LineWidth=item.LineWidth;}if(style.PredictionKLine.Bar){var item=style.PredictionKLine.Bar;var dest=this.PredictionKLine.Bar;if(item.UpColor)dest.UpColor=item.UpColor;if(item.DownColor)dest.DownColor=item.DownColor;if(item.UnchangeColor)dest.UnchangeColor=item.UnchangeColor;if(IFrameSplitOperator.IsNumber(item.DrawType)||item.DrawType===null)dest.DrawType=item.DrawType;}}if(style.PriceGapStyple){var item=style.PriceGapStyple;if(item.Line&&item.Line.Color)this.PriceGapStyple.Line.Color=item.Line.Color;if(item.Text){if(item.Text.Color)this.PriceGapStyple.Text.Color=item.Text.Color;if(item.Text.Font)this.PriceGapStyple.Text.Font=item.Text.Font;}}if(style.DaySummaryKLine){var item=style.DaySummaryKLine;var dest=this.DaySummaryKLine;if(item.Font)dest.Font=item.Font;if(item.TextColor)dest.TextColor=item.TextColor;if(IFrameSplitOperator.IsNumber(item.LeftMargin))dest.LeftMargin=item.LeftMargin;}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(item.PositionColor)this.PCTooltipPaint.PositionColor=item.PositionColor;}if(style.DialogTooltip){var item=style.DialogTooltip;if(item.BGColor)this.DialogTooltip.BGColor=item.BGColor;if(item.BorderColor)this.DialogTooltip.BorderColor=item.BorderColor;if(item.TitleColor)this.DialogTooltip.TitleColor=item.TitleColor;if(item.TitleBGColor)this.DialogTooltip.TitleBGColor=item.TitleBGColor;if(item.DateTimeColor)this.DialogTooltip.DateTimeColor=item.DateTimeColor;if(item.VolColor)this.DialogTooltip.VolColor=item.VolColor;if(item.AmountColor)this.DialogTooltip.AmountColor=item.AmountColor;if(item.TurnoverRateColor)this.DialogTooltip.TurnoverRateColor=item.TurnoverRateColor;if(item.PositionColor)this.DialogTooltip.PositionColor=item.PositionColor;if(item.TextColor)this.DialogTooltip.TextColor=item.TextColor;if(item.ValueColor)this.DialogTooltip.ValueColor=item.ValueColor;}if(style.FloatTooltip){var item=style.FloatTooltip;if(item.BGColor)this.FloatTooltip.BGColor=item.BGColor;if(item.BorderColor)this.FloatTooltip.BorderColor=item.BorderColor;if(item.DateTimeColor)this.FloatTooltip.DateTimeColor=item.DateTimeColor;if(item.VolColor)this.FloatTooltip.VolColor=item.VolColor;if(item.AmountColor)this.FloatTooltip.AmountColor=item.AmountColor;if(item.TurnoverRateColor)this.FloatTooltip.TurnoverRateColor=item.TurnoverRateColor;if(item.PositionColor)this.FloatTooltip.PositionColor=item.PositionColor;if(item.TextColor)this.FloatTooltip.TextColor=item.TextColor;if(item.ValueColor)this.FloatTooltip.ValueColor=item.ValueColor;}if(style.DialogSelectRect){var item=style.DialogSelectRect;if(item.BGColor)this.DialogSelectRect.BGColor=item.BGColor;if(item.BorderColor)this.DialogSelectRect.BorderColor=item.BorderColor;if(item.TitleColor)this.DialogSelectRect.TitleColor=item.TitleColor;if(item.TextColor)this.DialogSelectRect.TextColor=item.TextColor;if(item.ValueColor)this.DialogSelectRect.ValueColor=item.ValueColor;if(item.VolColor)this.DialogSelectRect.VolColor=item.VolColor;if(item.AmountColor)this.DialogSelectRect.AmountColor=item.AmountColor;if(item.TurnoverRateColor)this.DialogSelectRect.TurnoverRateColor=item.TurnoverRateColor;if(item.PositionColor)this.DialogSelectRect.PositionColor=item.PositionColor;}if(style.DialogPopKeyboard){var item=style.DialogPopKeyboard;if(item.BGColor)this.DialogPopKeyboard.BGColor=item.BGColor;if(item.BorderColor)this.DialogPopKeyboard.BorderColor=item.BorderColor;if(item.TitleColor)this.DialogPopKeyboard.TitleColor=item.TitleColor;if(item.TitleBGColor)this.DialogTooltip.TitleBGColor=item.TitleBGColor;if(item.Input){var subItem=item.Input;if(subItem.BGColor)this.DialogPopKeyboard.Input.BGColor=subItem.BGColor;if(subItem.TextColor)this.DialogPopKeyboard.Input.TextColor=subItem.TextColor;}}if(style.MinuteInfo){var item=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(IFrameSplitOperator.IsNumber(item.PointRadius))this.MinuteInfo.PointRadius=item.PointRadius;}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.ChartSimpleTable)this.SetChartSimpleTable(style.ChartSimpleTable);if(style.ChartSimplePie)this.SetChartSimplePie(style.ChartSimplePie);if(style.ChartSimpleDoughnut)this.SetChartSimpleDoughnut(style.ChartSimpleDoughnut);if(style.ChartSimpleRadar)this.SetChartSimpleRadar(style.ChartSimpleRadar);if(style.ChartBaseLineBar)this.SetChartBaseLineBar(style.ChartBaseLineBar);if(style.ChartPointDot)this.SetChartPointDot(style.ChartPointDot);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.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.Font)this.StockChip.Font=item.Font;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(item.CloseButton)T_SetButtonStyle(item.CloseButton,this.StockChip.CloseButton);if(item.PhoneCloseButton){var subItem=item.PhoneCloseButton;if(subItem.Family)this.StockChip.PhoneCloseButton.Family=subItem.Family;if(subItem.Text)this.StockChip.PhoneCloseButton.Text=subItem.Text;if(subItem.Color)this.StockChip.PhoneCloseButton.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Size))this.StockChip.PhoneCloseButton.Size=subItem.Size;if(IFrameSplitOperator.IsBool(subItem.IsShow))this.StockChip.PhoneCloseButton.IsShow=subItem.IsShow;if(subItem.Border){if(subItem.Border.BGColor)this.StockChip.PhoneCloseButton.Border.BGColor=subItem.Border.BGColor;}}}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.Bottom))this.DepthCorss.Tooltip.Border.Bottom=border.Bottom;if(IFrameSplitOperator.IsNumber(border.Left))this.DepthCorss.Tooltip.Border.Left=border.Left;if(IFrameSplitOperator.IsNumber(border.Right))this.DepthCorss.Tooltip.Border.Right=border.Right;if(IFrameSplitOperator.IsNumber(border.ItemSpace))this.DepthCorss.Tooltip.Border.ItemSpace=border.ItemSpace;}}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(item.Mark){var subItem=item.Mark;if(subItem.Family)this.RectSelect.Mark.Family=subItem.Family;if(subItem.Text)this.RectSelect.Mark.Text=subItem.Text;if(subItem.Color)this.RectSelect.Mark.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Size))this.RectSelect.Mark.Size=subItem.Size;if(subItem.Position){if(subItem.Position.Top)this.RectSelect.Mark.Position.Top=subItem.Position.Top;if(IFrameSplitOperator.IsNumber(subItem.Position.Index))this.RectSelect.Mark.Position.Index=subItem.Position.Index;}}}if(style.RectDrag){var item=style.RectDrag;var dest=this.RectDrag;if(item.LineColor)dest.LineColor=item.LineColor;if(IFrameSplitOperator.IsPlusNumber(item.LineWidth))dest.LineWidth=item.LineWidth;if(item.BGColor)dest.BGColor=item.BGColor;}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.CloseLineColor)this.DealList.CloseLineColor=item.CloseLineColor;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.Right=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(item.Selected){var subItem=item.Selected;if(subItem.BGColor)this.DealList.Selected.BGColor=subItem.BGColor;if(subItem.LineColor)this.DealList.Selected.LineColor=subItem.LineColor;if(IFrameSplitOperator.IsPlusNumber(subItem.LineWidth))this.DealList.Selected.LineWidth=subItem.LineWidth;}}if(style.Report)this.SetReportStyle(style.Report);if(style.TReport)this.SetTReportStyle(style.TReport);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.BGColor)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(style.SessionBreaksPaint){var item=style.SessionBreaksPaint;if(IFrameSplitOperator.IsNonEmptyArray(item.BGColor))this.SessionBreaksPaint.BGColor=item.BGColor.slice();if(item.SplitLine){var subItem=item.SplitLine;if(subItem.Color)this.SessionBreaksPaint.SplitLine.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Width))this.SessionBreaksPaint.SplitLine.Width=subItem.Width;this.SessionBreaksPaint.SplitLine.Dash=subItem.Dash;}}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);T_SetButtonStyle(buttons.AddIndexWindow,this.Buttons.AddIndexWindow);T_SetButtonStyle(buttons.IndexHelp,this.Buttons.IndexHelp);if(buttons.Tooltip){var item=buttons.Tooltip;var src=this.Buttons.Tooltip;if(item.Font)src.Font=item.Font;if(item.Color)src.Color=item.Color;if(item.ColorBG)src.ColorBG=item.ColorBG;if(item.ColorBorder)src.ColorBorder=item.ColorBorder;if(item.BorderRadius)src.BorderRadius=item.BorderRadius;if(item.Margin){if(IFrameSplitOperator.IsNumber(item.Margin.Left))src.Margin.Left=item.Margin.Left;if(IFrameSplitOperator.IsNumber(item.Margin.Top))src.Margin.Top=item.Margin.Top;if(IFrameSplitOperator.IsNumber(item.Margin.Bottom))src.Margin.Bottom=item.Margin.Bottom;if(IFrameSplitOperator.IsNumber(item.Margin.Right))src.Margin.Right=item.Margin.Right;}}}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;}if(style.ScrollBar){var item=style.ScrollBar;if(item.BorderColor)this.ScrollBar.BorderColor=item.BorderColor;if(item.XSplitTextFont)this.ScrollBar.XSplitTextFont=item.XSplitTextFont;if(item.XSplitTextColor)this.ScrollBar.XSplitTextColor=item.XSplitTextColor;if(item.XSplitLineColor)this.ScrollBar.XSplitLineColor=item.XSplitLineColor;if(item.Slider){var subItem=item.Slider;if(subItem.DateFont)this.ScrollBar.Slider.DateFont=subItem.DateFont;if(subItem.DateColor)this.ScrollBar.Slider.DateColor=subItem.DateColor;if(subItem.BarColor)this.ScrollBar.Slider.BarColor=subItem.BarColor;if(subItem.BarAreaColor)this.ScrollBar.Slider.BarAreaColor=subItem.BarAreaColor;if(IFrameSplitOperator.IsNumber(subItem.BarWidth))this.ScrollBar.Slider.BarWidth=subItem.BarWidth;if(IFrameSplitOperator.IsNumber(subItem.BarPadding))this.ScrollBar.Slider.BarPadding=subItem.BarPadding;if(IFrameSplitOperator.IsNumber(subItem.MinCenterWidth))this.ScrollBar.Slider.MinCenterWidth=subItem.MinCenterWidth;}if(item.BGChart){var subItem=item.BGChart;if(subItem.Color)this.ScrollBar.BGChart.Color=subItem.Color;if(subItem.AreaColor)this.ScrollBar.BGChart.AreaColor=subItem.AreaColor;if(IFrameSplitOperator.IsPlusNumber(subItem.LineWidth))this.ScrollBar.BGChart.LineWidth=subItem.LineWidth;}}if(style.FrameButtomToolbar)this.SetFrameButtomToolbar(style.FrameButtomToolbar);if(style.Keyboard)this.SetKeyboardStyle(style.Keyboard);if(style.MinuteToolbar)this.SetMinuteToolbar(style.MinuteToolbar);if(style.KLineToolbar)this.SetKLineToolbar(style.KLineToolbar);if(style.IndexLock)this.SetIndexLock(style.IndexLock);if(style.ChartScatterPlotV2)this.SetChartScatterPlotV2(style.ChartScatterPlotV2);if(style.ChartDrawTVLongPosition)this.SetChartDrawTVLongPosition(style.ChartDrawTVLongPosition);if(style.KLineCountDownPaint)this.SetKLineCountDownPaint(style.KLineCountDownPaint);if(style.SmallFloatTooltipV2)this.SetSmallFloatTooltipV2(style.SmallFloatTooltipV2);if(style.StockInfo)this.SetStockInfo(style.StockInfo);if(style.StatusBar)this.SetStatusBar(style.StatusBar);if(style.ScrollText)this.SetScrollText(style.ScrollText);};this.SetScrollText=function(style){var dest=this.ScrollText;if(style.Font)dest.Font=style.Font;if(style.Color)dest.Color=style.Color;if(style.MouseOnColor)dest.MouseOnColor=style.MouseOnColor;if(style.Margin){var item=style.Margin;if(IFrameSplitOperator.IsNumber(item.Top))dest.Margin.Top=item.Top;if(IFrameSplitOperator.IsNumber(item.Bottom))dest.Margin.Bottom=item.Bottom;}if(IFrameSplitOperator.IsNumber(style.LeftMargin))dest.LeftMargin=style.LeftMargin;if(IFrameSplitOperator.IsNumber(style.RightMargin))dest.RightMargin=style.RightMargin;if(IFrameSplitOperator.IsNumber(style.Spacing))dest.Spacing=style.Spacing;if(IFrameSplitOperator.IsNumber(style.MoveStep))dest.MoveStep=style.MoveStep;if(style.Label){var item=style.Label;var subDest=dest.Label;if(item.Color)subDest.Color=item.Color;if(item.Font)subDest.Font=item.Font;if(item.Margin)CopyMarginConfig(subDest.Margin,item.Margin);}};this.SetStatusBar=function(style){var dest=this.StatusBar;if(style.Table){var item=style.Table;if(item.Font)dest.Table.Font=item.Font;if(item.TitleColor)dest.Table.TitleColor=item.TitleColor;if(IFrameSplitOperator.IsNonEmptyArray(item.AryTextColor))dest.Table.AryTextColor=item.AryTextColor.slice();CopyMarginConfig(dest.Table.Margin,item.Margin);if(item.CellMargin){var subItem=item.CellMargin;CopyMarginConfig(dest.Table.CellMargin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.Table.CellMargin.YOffset=subItem.YOffset;}if(item.Separator){var subItem=item.Separator;var subDest=dest.Table.Separator;if(IFrameSplitOperator.IsNumber(subItem.Left))subDest.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Right))subDest.Left=subItem.Right;if(subItem.Line){if(IFrameSplitOperator.IsNumber(subItem.Line.Width))subDest.Line.Width=subItem.Line.Width;if(IFrameSplitOperator.IsNumber(subItem.Line.Top))subDest.Line.Top=subItem.Line.Top;if(IFrameSplitOperator.IsNumber(subItem.Line.Bottom))subDest.Line.Bottom=subItem.Line.Bottom;if(subItem.Line.Color)subDest.Line.Color=subItem.Line.Color;}}}if(style.DateTime){var item=style.DateTime;if(item.Font)dest.DateTime.Font=item.Font;if(item.TitleColor)dest.DateTime.TitleColor=item.TitleColor;if(item.Format)dest.DateTime.Format=item.Format;if(item.MaxText)dest.DateTime.MaxText=item.MaxText;if(item.Margin){var subItem=item.Margin;CopyMarginConfig(dest.DateTime.Margin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.DateTime.Margin.YOffset=subItem.YOffset;}}if(style.UpTextColor)dest.UpTextColor=style.UpTextColor;if(style.DownTextColor)dest.DownTextColor=style.DownTextColor;if(style.UnchangeTextColor)dest.UnchangeTextColor=style.UnchangeTextColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;};this.SetStockInfo=function(style){var dest=this.StockInfo;if(style.BuySell){var item=style.BuySell;if(item.Font)dest.BuySell.Font=item.Font;if(item.TitleColor)dest.BuySell.TitleColor=item.TitleColor;if(item.VolColor)dest.BuySell.VolColor=item.VolColor;CopyMarginConfig(dest.BuySell.Margin,item.Margin);if(item.CellMargin){var subItem=item.CellMargin;CopyMarginConfig(dest.BuySell.CellMargin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.BuySell.CellMargin.YOffset=subItem.YOffset;}if(item.BottomLine){var subItem=item.BottomLine;if(subItem.Color)dest.BuySell.BottomLine.Color=subItem.Color;if(IFrameSplitOperator.IsBool(subItem.Enable))dest.BuySell.BottomLine.Enable=subItem.Enable;}if(item.TopLine){var subItem=item.TopLine;if(subItem.Color)dest.BuySell.TopLine.Color=subItem.Color;if(IFrameSplitOperator.IsBool(subItem.Enable))dest.BuySell.TopLine.Enable=subItem.Enable;}if(item.CenterLine){var subItem=item.CenterLine;if(subItem.BuyColor)dest.BuySell.CenterLine.BuyColor=subItem.BuyColor;if(subItem.SellColor)dest.BuySell.CenterLine.SellColor=subItem.SellColor;if(subItem.NoneColor)dest.BuySell.CenterLine.NoneColor=subItem.NoneColor;if(IFrameSplitOperator.IsNumber(subItem.Width))dest.BuySell.CenterLine.Width=subItem.Width;}}if(style.Table){var item=style.Table;if(item.Font)dest.Table.Font=item.Font;if(item.TitleColor)dest.Table.TitleColor=item.TitleColor;if(item.TextColor)dest.Table.TextColor=item.TextColor;CopyMarginConfig(dest.Table.Margin,item.Margin);if(item.CellMargin){var subItem=item.CellMargin;CopyMarginConfig(dest.Table.CellMargin,subItem);if(IFrameSplitOperator.IsNumber(subItem.YOffset))dest.Table.CellMargin.YOffset=subItem.YOffset;}}if(style.Header){var item=style.Header;if(item.Font)dest.Header.Font=item.Font;if(item.TextColor)dest.Header.TextColor=item.TextColor;if(item.Name){var subItem=item.Name;if(subItem.Font)dest.Header.Name.Font=subItem.Font;if(subItem.Color)dest.Header.Name.Color=subItem.Color;if(subItem.Margin){var margin=subItem.Margin;CopyMarginConfig(dest.Header.Name.Margin,margin);if(IFrameSplitOperator.IsNumber(margin.YOffset))dest.Header.Name.Margin.YOffset=margin.YOffset;}}if(item.Symbol){var subItem=item.Symbol;if(subItem.Font)dest.Header.Symbol.Font=subItem.Font;if(subItem.Color)dest.Header.Symbol.Color=subItem.Color;if(subItem.Margin){var margin=subItem.Margin;CopyMarginConfig(dest.Header.Symbol.Margin,margin);if(IFrameSplitOperator.IsNumber(margin.YOffset))dest.Header.Symbol.Margin.YOffset=margin.YOffset;}}if(IFrameSplitOperator.IsNonEmptyArray(item.AryCell)){for(var i=0;i<item.AryCell.length;++i){var subItem=item.AryCell[i];if(!dest.Header.AryCell[i])dest.Header.AryCell[i]={};var subDest=dest.Header.AryCell[i];if(subItem.Font)subDest.Font=subItem.Font;if(subItem.Margin){var margin=subItem.Margin;CopyMarginConfig(subDest.Margin,margin);if(IFrameSplitOperator.IsNumber(margin.YOffset))subDest.YOffset=margin.YOffset;}}}if(item.BottomLine){var subItem=item.BottomLine;if(subItem.Color)dest.Header.BottomLine.Color=subItem.Color;if(IFrameSplitOperator.IsBool(subItem.Enable))dest.Header.BottomLine.Enable=subItem.Enable;}}if(style.MouseOn){var item=style.MouseOn;if(item.BGColor)dest.MouseOn.BGColor=item.BGColor;}if(style.UpTextColor)dest.UpTextColor=style.UpTextColor;if(style.DownTextColor)dest.DownTextColor=style.DownTextColor;if(style.UnchangeTextColor)dest.UnchangeTextColor=style.UnchangeTextColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;};this.SetSmallFloatTooltipV2=function(style){var dest=this.SmallFloatTooltipV2;if(style.BGColor)dest.BGColor=style.BGColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.TextColor)dest.TextColor=style.TextColor;if(style.ValueColor)dest.ValueColor=style.ValueColor;};this.SetKLineCountDownPaint=function(style){var dest=this.KLineCountDownPaint;if(style.Font)dest.Font=style.Font;if(style.TextMargin){var item=style.TextMargin;CopyMarginConfig(dest.TextMargin,item);if(IFrameSplitOperator.IsNumber(item.YOffset))dest.TextMargin.YOffset=item.YOffset;}if(style.LabelMargin)CopyMarginConfig(dest.LabelMargin,style.LabelMargin);if(style.Line){var item=style.Line;if(IFrameSplitOperator.IsNumber(item.Width))dest.Line.Width=item.Width;if(IFrameSplitOperator.IsBool(item.IsShow))dest.Line.Width=item.Width;if(item.Dash)dest.Line.Dash=item.Dash;}if(style.Unchange){var item=style.Unchange;var subDest=dest.Unchange;if(item.BGColor)subDest.BGColor=item.BGColor;if(item.PriceColor)subDest.PriceColor=item.PriceColor;if(item.TimeColor)subDest.TimeColor=item.TimeColor;}if(style.Up){var item=style.Up;var subDest=dest.Up;if(item.BGColor)subDest.BGColor=item.BGColor;if(item.PriceColor)subDest.PriceColor=item.PriceColor;if(item.TimeColor)subDest.TimeColor=item.TimeColor;}if(style.Down){var item=style.Down;var subDest=dest.Down;if(item.BGColor)subDest.BGColor=item.BGColor;if(item.PriceColor)subDest.PriceColor=item.PriceColor;if(item.TimeColor)subDest.TimeColor=item.TimeColor;}};this.SetChartDrawTVLongPosition=function(style){if(style.TopArea){var item=style.TopArea;var dest=this.ChartDrawTVLongPosition.TopArea;if(item.AreaColor)dest.AreaColor=item.AreaColor;if(item.SelectedAreaColor)dest.SelectedAreaColor=item.SelectedAreaColor;if(item.TextBGColor)dest.TextBGColor=item.TextBGColor;if(item.TextColor)dest.BorderColor=item.TextColor;}if(style.BottomArea){var item=style.BottomArea;var dest=this.ChartDrawTVLongPosition.BottomArea;if(item.AreaColor)dest.AreaColor=item.AreaColor;if(item.SelectedAreaColor)dest.SelectedAreaColor=item.SelectedAreaColor;if(item.TextBGColor)dest.TextBGColor=item.TextBGColor;if(item.TextColor)dest.BorderColor=item.TextColor;}if(style.Label){var item=style.Label;var dest=this.ChartDrawTVLongPosition.Label;if(item.Font)dest.Font=item.Font;CopyMarginConfig(dest.Margin,item.Margin);}};this.SetKeyboardStyle=function(style){var item=style;var dest=this.Keyboard;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.SelectedColor)dest.SelectedColor=item.SelectedColor;if(item.TextColor)dest.TextColor=item.TextColor;if(item.Item){var row=item.Item;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Item.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Item.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Item.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Item.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)dest.Item.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.Font.Size=font.Size;}if(row.BarMergin){var mergin=row.BarMergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Item.BarMergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Item.BarMergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Item.BarMergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Item.BarMergin.Bottom=mergin.Bottom;}if(row.NameFont){var font=row.NameFont;if(font.Name)dest.Item.NameFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.NameFont.Size=font.Size;}if(row.SymbolFont){var font=row.SymbolFont;if(font.Name)dest.Item.SymbolFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.SymbolFont.Size=font.Size;}}if(item.VScrollbar){var scroll=item.VScrollbar;if(IFrameSplitOperator.IsNumber(scroll.ScrollBarHeight))dest.VScrollbar.ScrollBarHeight=scroll.ScrollBarHeight;if(scroll.ButtonColor)dest.VScrollbar.ButtonColor=scroll.ButtonColor;if(scroll.BarColor)dest.VScrollbar.BarColor=scroll.BarColor;if(scroll.BorderColor)dest.VScrollbar.BorderColor=scroll.BorderColor;if(scroll.BGColor)dest.VScrollbar.BGColor=scroll.BGColor;if(scroll.BarWidth){var subItem=scroll.BarWidth;if(IFrameSplitOperator.IsNumber(subItem.Size))dest.VScrollbar.BarWidth.Size=subItem.Size;}}};this.SetReportStyle=function(style){var item=style;var dest=this.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.SelectedLine){var subItem=item.SelectedLine;var subDest=this.Report.SelectedLine;if(subItem.Color)subDest.Color=subItem.Color;if(IFrameSplitOperator.IsNumber(subItem.Width))subDest.Width=subItem.Width;}if(item.CloseLine){var closeLine=item.CloseLine;if(closeLine.CloseColor)this.Report.CloseLine.CloseColor=closeLine.CloseColor;if(closeLine.YCloseColor)this.Report.CloseLine.YCloseColor=closeLine.YCloseColor;if(closeLine.AreaColor)this.Report.CloseLine.AreaColor=closeLine.AreaColor;if(closeLine.UpColor)this.Report.CloseLine.UpColor=closeLine.UpColor;if(closeLine.UpAreaColor)this.Report.CloseLine.UpAreaColor=closeLine.UpAreaColor;if(closeLine.DownColor)this.Report.CloseLine.DownColor=closeLine.DownColor;if(closeLine.DownAreaColor)this.Report.CloseLine.DownAreaColor=closeLine.DownAreaColor;if(closeLine.UnchangeColor)this.Report.CloseLine.UnchangeColor=closeLine.UnchangeColor;if(closeLine.UnchangeAreaColor)this.Report.CloseLine.UnchangeAreaColor=closeLine.UnchangeAreaColor;}if(item.KLine){var kline=item.KLine;if(kline.UpColor)this.Report.KLine.UpColor=kline.UpColor;if(kline.DownColor)this.Report.KLine.DownColor=kline.DownColor;if(kline.UnchagneColor)this.Report.KLine.UnchagneColor=kline.UnchagneColor;if(IFrameSplitOperator.IsNumber(kline.DataWidth))this.Report.KLine.DataWidth=kline.DataWidth;if(IFrameSplitOperator.IsNumber(kline.DistanceWidth))this.Report.KLine.DistanceWidth=kline.DistanceWidth;}if(item.Header){var header=item.Header;if(header.Color)this.Report.Header.Color=header.Color;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.SortIcon){var sort=item.SortIcon;if(IFrameSplitOperator.IsNonEmptyArray(sort.Color))this.Report.SortIcon.Color=sort.Color.slice();if(IFrameSplitOperator.IsNumber(sort.Size))this.Report.SortIcon.Size=sort.Size;if(sort.Family)this.Report.SortIcon.Family=sort.Family;if(IFrameSplitOperator.IsNonEmptyArray(sort.Arrow))this.Report.SortIcon.Arrow=sort.Arrow.slice();if(sort.Margin){var margin=sort.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))this.Report.SortIcon.Margin.Left=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))this.Report.SortIcon.Margin.Right=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))this.Report.SortIcon.Margin.Top=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))this.Report.SortIcon.Margin.Bottom=margin.Bottom;}}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.LimitColor){var limit=item.LimitColor;if(limit.UpColor)this.Report.LimitColor.UpColor=limit.UpColor;if(limit.DownColor)this.Report.LimitColor.DownColor=limit.DownColor;if(limit.TextColor)this.Report.LimitColor.UpColor=limit.TextColor;}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.NameSymbolV2){var nameSymbol=item.NameSymbolV2;if(nameSymbol.Name){var subItem=nameSymbol.Name;if(IFrameSplitOperator.IsNumber(subItem.Size))this.Report.NameSymbolV2.Name.Size=subItem.Size;if(subItem.Name)this.Report.NameSymbolV2.Name.Name=subItem.Name;if(subItem.Color)this.Report.NameSymbolV2.Name.Color=subItem.Color;}if(nameSymbol.Symbol){var subItem=nameSymbol.Symbol;if(IFrameSplitOperator.IsNumber(subItem.Size))this.Report.NameSymbolV2.Symbol.Size=subItem.Size;if(subItem.Name)this.Report.NameSymbolV2.Symbol.Name=subItem.Name;if(subItem.Color)this.Report.NameSymbolV2.Symbol.Color=subItem.Color;}}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(item.VScrollbar){var subItem=item.VScrollbar;if(IFrameSplitOperator.IsNumber(subItem.ScrollBarHeight))dest.VScrollbar.ScrollBarHeight=subItem.ScrollBarHeight;if(subItem.ButtonColor)dest.VScrollbar.ButtonColor=subItem.ButtonColor;if(subItem.BarColor)dest.VScrollbar.BarColor=subItem.BarColor;if(subItem.BorderColor)dest.VScrollbar.BorderColor=subItem.BorderColor;if(subItem.BGColor)dest.VScrollbar.BGColor=subItem.BGColor;}if(item.CheckBox){var subItem=item.CheckBox;if(subItem.Family)dest.CheckBox.Family=subItem.Family;if(IFrameSplitOperator.IsNumber(subItem.Size))dest.CheckBox.Size=subItem.Size;if(subItem.Checked){var child=subItem.Checked;if(child.Color)dest.CheckBox.Checked.Color=child.Color;if(child.Symbol)dest.CheckBox.Checked.Symbol=child.Symbol;if(child.DisableColor)dest.CheckBox.Checked.DisableColor=child.DisableColor;}if(subItem.Unchecked){var child=subItem.Unchecked;if(child.Color)dest.CheckBox.Unchecked.Color=child.Color;if(child.Symbol)dest.CheckBox.Unchecked.Symbol=child.Symbol;if(child.DisableColor)dest.CheckBox.Unchecked.DisableColor=child.DisableColor;}CopyMarginConfig(dest.CheckBox.Margin,subItem.Margin);}if(item.Link){var subItem=item.Link;if(subItem.Font)dest.Link.Font=subItem.Font;if(subItem.TextColor)dest.Link.TextColor=subItem.TextColor;if(subItem.Disable&&subItem.Disable.TextColor)dest.Link.Disable.TextColor=subItem.Disable.TextColor;if(subItem.MouseOn&&subItem.MouseOn.TextColor)dest.Link.MouseOn.TextColor=subItem.MouseOn.TextColor;}if(item.ProgressBar){var subItem=item.ProgressBar;if(subItem.BGColor)dest.ProgressBar.BGColor=subItem.BGColor;if(subItem.BarColor)dest.ProgressBar.BarColor=subItem.BarColor;if(subItem.TextColor)dest.ProgressBar.TextColor=subItem.TextColor;if(subItem.Font)dest.ProgressBar.Font=subItem.Font;if(subItem.Disable){if(subItem.Disable.BGColor)dest.ProgressBar.Disable.BGColor=subItem.Disable.BGColor;if(subItem.Disable.BarColor)dest.ProgressBar.Disable.BarColor=subItem.Disable.BarColor;if(subItem.Disable.TextColor)dest.ProgressBar.Disable.TextColor=subItem.Disable.TextColor;}CopyMarginConfig(dest.ProgressBar.Margin,subItem.Margin);CopyMarginConfig(dest.ProgressBar.BarMargin,subItem.BarMargin);CopyMarginConfig(dest.ProgressBar.TextMargin,subItem.TextMargin);}if(item.Buttom){var subItem=item.Buttom;if(subItem.BGColor)dest.Buttom.BGColor=subItem.BGColor;if(subItem.TextColor)dest.Buttom.TextColor=subItem.TextColor;if(subItem.BorderColor)dest.Buttom.BorderColor=subItem.BorderColor;if(subItem.Font)dest.Buttom.Font=subItem.Font;if(subItem.Disable){if(subItem.Disable.BGColor)dest.Buttom.Disable.BGColor=subItem.Disable.BGColor;if(subItem.Disable.TextColor)dest.Buttom.Disable.TextColor=subItem.Disable.TextColor;}if(subItem.MouseOn){if(subItem.MouseOn.BGColor)dest.Buttom.MouseOn.BGColor=subItem.MouseOn.BGColor;if(subItem.MouseOn.TextColor)dest.Buttom.MouseOn.TextColor=subItem.MouseOn.TextColor;}CopyMarginConfig(dest.Buttom.Margin,subItem.Margin);CopyMarginConfig(dest.Buttom.TextMargin,subItem.TextMargin);}};this.SetTReportStyle=function(style){var item=style;var dest=this.TReport;if(item.BorderColor)dest.BorderColor=item.BorderColor;if(item.UpTextColor)dest.UpTextColor=item.UpTextColor;if(item.DownTextColor)dest.DownTextColor=item.DownTextColor;if(item.UnchangeTextColor)dest.UnchangeTextColor=item.UnchangeTextColor;if(item.BorderColor)dest.SelectedColor=item.SelectedColor;if(item.UpBGColor)dest.UpBGColor=item.UpBGColor;if(item.DownBGColor)dest.DownBGColor=item.DownBGColor;if(item.Header){var header=item.Header;if(header.Color)dest.Header.Color=header.Color;if(header.SortColor)dest.Header.SortColor=header.SortColor;if(header.Mergin){var mergin=header.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Header.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Header.Mergin.Left=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Header.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Header.Mergin.Bottom=mergin.Bottom;}if(header.Font){var font=header.Font;if(font.Name)dest.Header.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Header.Font.Size=font.Size;}}if(item.CenterItem){var cell=item.CenterItem;if(cell.TextColor)dest.CenterItem.TextColor=cell.TextColor;if(cell.BaseTextColor)dest.CenterItem.BaseTextColor=cell.BaseTextColor;if(cell.BGColor)dest.CenterItem.BGColor=cell.BGColor;if(cell.MatchTextColor)dest.CenterItem.MatchTextColor=cell.MatchTextColor;}if(item.Item){var row=item.Item;if(row.Mergin){var mergin=row.Mergin;if(IFrameSplitOperator.IsNumber(mergin.Left))dest.Item.Mergin.Left=mergin.Left;if(IFrameSplitOperator.IsNumber(mergin.Right))dest.Item.Mergin.Right=mergin.Right;if(IFrameSplitOperator.IsNumber(mergin.Top))dest.Item.Mergin.Top=mergin.Top;if(IFrameSplitOperator.IsNumber(mergin.Bottom))dest.Item.Mergin.Bottom=mergin.Bottom;}if(row.Font){var font=row.Font;if(font.Name)dest.Item.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.Font.Size=font.Size;}if(row.NameFont){var font=row.NameFont;if(font.Name)dest.Item.NameFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.NameFont.Size=font.Size;}if(row.SymbolFont){var font=row.SymbolFont;if(font.Name)dest.Item.SymbolFont.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.Item.SymbolFont.Size=font.Size;}}if(item.FieldColor){var filed=item.FieldColor;if(filed.Name)dest.FieldColor.Name=filed.Name;if(filed.Symbol)dest.FieldColor.Symbol=filed.Symbol;if(filed.Vol)dest.FieldColor.Vol=filed.Vol;if(filed.Amount)dest.FieldColor.Amount=filed.Amount;if(filed.Index)dest.FieldColor.Index=filed.Index;if(filed.Text)dest.FieldColor.Text=filed.Text;if(filed.Position)dest.FieldColor.Position=filed.Position;}if(item.MarkBorder){var subIem=item.MarkBorder;if(subIem.MaxPositionColor)dest.MarkBorder.MaxPositionColor=subIem.MaxPositionColor;}if(item.FixedItem){var subIem=item.FixedItem;if(subIem.Font){var font=subIem.Font;if(font.Name)dest.FixedItem.Font.Name=font.Name;if(IFrameSplitOperator.IsNumber(font.Size))dest.FixedItem.Font.Size=font.Size;}}};this.SetFrameButtomToolbar=function(style){var dest=this.FrameButtomToolbar;if(style.BGColor)dest.BGColor=style.BGColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.Button){var button=style.Button;if(button.BorderColor)dest.Button.BorderColor=button.BorderColor;if(button.Font){var item=button.Font;var destItem=this.FrameButtomToolbar.Button.Font;if(item.Family)destItem.Family=item.Family;if(IFrameSplitOperator.IsNumber(item.Size))destItem.Size=item.Size;}if(button.TitleColor){var item=button.TitleColor;var destItem=this.FrameButtomToolbar.Button.TitleColor;if(item.Selected)destItem.Selected=item.Selected;if(item.Default)destItem.Default=item.Default;if(item.MoveOn)destItem.MoveOn=item.MoveOn;}if(button.BGColor){var item=button.BGColor;var destItem=this.FrameButtomToolbar.Button.BGColor;if(item.Selected)destItem.Selected=item.Selected;if(item.Default)destItem.Default=item.Default;if(item.MoveOn)destItem.MoveOn=item.MoveOn;}if(button.Mergin){var item=button.Mergin;var destItem=this.FrameButtomToolbar.Button.Mergin;if(IFrameSplitOperator.IsNumber(item.Left))destItem.Left=item.Left;if(IFrameSplitOperator.IsNumber(item.Right))destItem.Left=item.Right;if(IFrameSplitOperator.IsNumber(item.Top))destItem.Top=item.Top;if(IFrameSplitOperator.IsNumber(item.Bottom))destItem.Bottom=item.Bottom;}if(button.SVG){var item=button.SVG;var destItem=this.FrameButtomToolbar.Button.SVG;if(IFrameSplitOperator.IsNumber(item.Size))destItem.Size=item.Size;if(IFrameSplitOperator.IsNumber(item.MerginLeft))destItem.MerginLeft=item.MerginLeft;if(item.Family)destItem.Family=item.Family;}}};this.SetMinuteToolbar=function(style){var dest=this.MinuteToolbar;if(IFrameSplitOperator.IsBool(style.ModifyIndex))dest.ModifyIndex=style.ModifyIndex;if(IFrameSplitOperator.IsBool(style.ChangeIndex))dest.ChangeIndex=style.ChangeIndex;if(IFrameSplitOperator.IsBool(style.CloseIndex))dest.CloseIndex=style.CloseIndex;if(IFrameSplitOperator.IsBool(style.OverlayIndex))dest.OverlayIndex=style.OverlayIndex;if(IFrameSplitOperator.IsBool(style.MaxMinWindow))dest.MaxMinWindow=style.MaxMinWindow;if(IFrameSplitOperator.IsBool(style.TitleWindow))dest.TitleWindow=style.TitleWindow;if(IFrameSplitOperator.IsBool(style.ExportData))dest.ExportData=style.ExportData;if(IFrameSplitOperator.IsBool(style.AddIndexWindow))dest.AddIndexWindow=style.AddIndexWindow;if(IFrameSplitOperator.IsBool(style.IndexHelp))dest.IndexHelp=style.IndexHelp;if(IFrameSplitOperator.IsBool(style.IsShowOverlayToolbar))dest.IsShowOverlayToolbar=style.IsShowOverlayToolbar;if(IFrameSplitOperator.IsBool(style.IsShowOverlayFrame))dest.IsShowOverlayFrame=style.IsShowOverlayFrame;};this.SetKLineToolbar=function(style){var dest=this.KLineToolbar;if(IFrameSplitOperator.IsBool(style.ModifyIndex))dest.ModifyIndex=style.ModifyIndex;if(IFrameSplitOperator.IsBool(style.ChangeIndex))dest.ChangeIndex=style.ChangeIndex;if(IFrameSplitOperator.IsBool(style.CloseIndex))dest.CloseIndex=style.CloseIndex;if(IFrameSplitOperator.IsBool(style.OverlayIndex))dest.OverlayIndex=style.OverlayIndex;if(IFrameSplitOperator.IsBool(style.MaxMinWindow))dest.MaxMinWindow=style.MaxMinWindow;if(IFrameSplitOperator.IsBool(style.TitleWindow))dest.TitleWindow=style.TitleWindow;if(IFrameSplitOperator.IsBool(style.ExportData))dest.ExportData=style.ExportData;if(IFrameSplitOperator.IsBool(style.AddIndexWindow))dest.AddIndexWindow=style.AddIndexWindow;if(IFrameSplitOperator.IsBool(style.IndexHelp))dest.IndexHelp=style.IndexHelp;};this.SetChartSimpleTable=function(style){var dest=this.ChartSimpleTable;if(style.TextColor)dest.TextColor=style.TextColor;if(style.BGColor)dest.BGColor=style.BGColor;if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.ItemMargin){var margin=style.ItemMargin;if(IFrameSplitOperator.IsNumber(margin.Left))dest.ItemMargin.Left=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))dest.ItemMargin.Right=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))dest.ItemMargin.Top=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))dest.ItemMargin.Bottom=margin.Bottom;}};this.SetChartSimplePie=function(style){var dest=this.ChartSimplePie;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.Offset){var item=style.Offset;if(IFrameSplitOperator.IsNumber(item.X))dest.Offset.X=item.X;if(IFrameSplitOperator.IsNumber(item.Y))dest.Offset.Y=item.Y;}};this.SetChartSimpleDoughnut=function(style){var dest=this.ChartSimpleDoughnut;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.Offset){var item=style.Offset;if(IFrameSplitOperator.IsNumber(item.X))dest.Offset.X=item.X;if(IFrameSplitOperator.IsNumber(item.Y))dest.Offset.Y=item.Y;}};this.SetChartSimpleRadar=function(style){var dest=this.ChartSimpleRadar;if(style.TextFont){var item=style.TextFont;if(item.Name)dest.TextFont.Name=item.Name;if(IFrameSplitOperator.IsNumber(item.Size))dest.TextFont.Size=item.Size;}if(style.BorderColor)dest.BorderColor=style.BorderColor;if(style.TextColor)dest.TextColor=style.TextColor;if(style.Offset){var item=style.Offset;if(IFrameSplitOperator.IsNumber(item.X))dest.Offset.X=item.X;if(IFrameSplitOperator.IsNumber(item.Y))dest.Offset.Y=item.Y;}if(IFrameSplitOperator.IsNonEmptyArray(style.AryBGColor))dest.AryBGColor=style.AryBGColor.slice();if(IFrameSplitOperator.IsNonEmptyArray(style.AryArea))dest.AryArea=style.AryArea.slice();};this.SetChartBaseLineBar=function(style){var dest=this.ChartBaseLineBar;if(style.UpColor)dest.UpColor=style.UpColor;if(style.DownColor)dest.DownColor=style.DownColor;};this.SetChartPointDot=function(style){var dest=this.ChartPointDot;if(style.UpColor)dest.UpColor=style.UpColor;if(style.DownColor)dest.DownColor=style.DownColor;};this.SetIndexLock=function(style){var item=style;var dest=this.IndexLock;if(item.BGColor)dest.BGColor=item.BGColor;if(item.TextColor)dest.TextColor=item.TextColor;if(item.Font)dest.Font=item.Font;if(item.Title)dest.Title=item.Title;};this.SetChartScatterPlotV2=function(style){var item=style;var dest=this.ChartScatterPlotV2;if(item.Color)dest.Color=item.Color;if(item.TextColor)dest.TextColor=item.TextColor;if(item.Font)dest.Font=item.Font;if(IFrameSplitOperator.IsNumber(item.Radius))dest.Radius=item.Radius;};}var g_JSChartResource=new JSChartResource();/////////////////////////////////////////////////////////////////////////////////
7803
7832
  //
7804
7833
  //
7805
7834
  //
@@ -7882,7 +7911,8 @@ preItem=item;}else{if(preItem){if(preItem.Direction==1){//if (preItem.High<kItem
7882
7911
  //
7883
7912
  //
7884
7913
  function KLineChartContainer(uielement,OffscreenElement,cacheElement){var _self=this;this.newMethod=JSChartContainer;//派生
7885
- this.newMethod(uielement,OffscreenElement,cacheElement);delete this.newMethod;this.ClassName='KLineChartContainer';this.WindowIndex=new Array();this.ColorIndex;//五彩K线
7914
+ this.newMethod(uielement,OffscreenElement,cacheElement);delete this.newMethod;this.ClassName='KLineChartContainer';this.WindowIndex=[];this.IndexTemporaryAttribute=[];//指标临时属性,切换指标时会清除
7915
+ this.ColorIndex;//五彩K线
7886
7916
  this.TradeIndex;//交易指标/专家系统
7887
7917
  this.Symbol;this.Name;this.Period=0;//周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线 11=120分钟 12=240分钟
7888
7918
  this.IsApiPeriod=false;//使用API计算周期
@@ -8522,8 +8552,10 @@ this.Draw();};this.SetFrameToolbar=function(windowIndex,window){if(!window||!thi
8522
8552
  if(bChanged){frame.SizeChange=true;frame.DrawToolbar();}};this.SetFrameAttribute=function(windowIndex,attr){if(!window||!this.Frame.SubFrame[windowIndex]||!this.Frame.SubFrame[windowIndex].Frame)return;if(!attr)return;var frame=this.Frame.SubFrame[windowIndex].Frame;if(!IFrameSplitOperator.IsUndefined(attr.HorizontalReserved))frame.HorizontalReserved=attr.HorizontalReserved;//Y轴上下预留
8523
8553
  if(IFrameSplitOperator.IsNumber(attr.TitleHeight))frame.ChartBorder.TitleHeight=attr.TitleHeight;//指标标题高度
8524
8554
  };this.ResetFrameAttribute=function(windowIndex){if(!window||!this.Frame.SubFrame[windowIndex]||!this.Frame.SubFrame[windowIndex].Frame)return;var frame=this.Frame.SubFrame[windowIndex].Frame;frame.HorizontalReserved=null;};//切换成 脚本指标
8525
- this.ChangeScriptIndex=function(windowIndex,indexData,option){this.DeleteIndexPaint(windowIndex,true);this.WindowIndex[windowIndex]=new ScriptIndex(indexData.Name,indexData.Script,indexData.Args,indexData);//脚本执行
8555
+ this.ChangeScriptIndex=function(windowIndex,indexData,option){this.DeleteIndexPaint(windowIndex,true);this.RestoreIndexTemporaryAttribute(windowIndex);//恢复临时属性
8556
+ this.WindowIndex[windowIndex]=new ScriptIndex(indexData.Name,indexData.Script,indexData.Args,indexData);//脚本执行
8526
8557
  this.ResetFrameAttribute(windowIndex);this.Frame.ClearYCoordinateMaxMin(windowIndex);if(option){if(option.Window){this.SetFrameToolbar(windowIndex,option.Window);this.SetFrameAttribute(windowIndex,option.Window);//窗口属性
8558
+ }if(option.AryTemporaryAttribute){this.UpdateIndexTemporaryAttribute(windowIndex,option.AryTemporaryAttribute);//指标临时属性
8527
8559
  }}this.OnChangeIndexEvent(windowIndex,{ID:indexData.ID,Name:indexData.Name,FunctionName:"ChangeScriptIndex"});this.Frame.ClearUpDonwFrameYData({Index:windowIndex});var bindData=this.ChartPaint[0].Data;this.BindIndexData(windowIndex,bindData);//执行脚本
8528
8560
  this.UpdataDataoffset();//更新数据偏移
8529
8561
  this.UpdateFrameMaxMin();//调整坐标最大 最小值
@@ -8531,7 +8563,9 @@ this.Draw();};this.OnKLinePageChange=function(eventid){if(!this.ChartPaint[0])re
8531
8563
  }//叠加指标
8532
8564
  for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(overlayItem&&overlayItem.Script&&overlayItem.Script.IsUsePageData==true)this.BindOverlayIndexData(overlayItem,i,bindData);}}};//切换api指标
8533
8565
  this.ChangeAPIIndex=function(windowIndex,indexData){this.DeleteIndexPaint(windowIndex,true);//使用API挂接指标数据 API:{ Name:指标名字, Script:指标脚本可以为空, Args:参数可以为空, Url:指标执行地址 }
8566
+ this.RestoreIndexTemporaryAttribute(windowIndex);//恢复临时属性
8534
8567
  var apiItem=indexData.API;this.WindowIndex[windowIndex]=new APIScriptIndex(apiItem.Name,apiItem.Script,apiItem.Args,indexData);this.ResetFrameAttribute(windowIndex);this.Frame.ClearYCoordinateMaxMin(windowIndex);this.OnChangeIndexEvent(windowIndex,{ID:indexData.ID,Name:indexData.Name,FunctionName:"ChangeAPIIndex"});if(indexData){if(indexData.Window){this.SetFrameToolbar(windowIndex,indexData.Window);this.SetFrameAttribute(windowIndex,indexData.Window);//窗口属性
8568
+ }if(indexData.AryTemporaryAttribute){this.UpdateIndexTemporaryAttribute(windowIndex,indexData.AryTemporaryAttribute);//指标临时属性
8535
8569
  }}this.Frame.ClearUpDonwFrameYData({Index:windowIndex});var bindData=this.ChartPaint[0].Data;this.BindIndexData(windowIndex,bindData);//执行脚本
8536
8570
  this.UpdataDataoffset();//更新数据偏移
8537
8571
  this.UpdateFrameMaxMin();//调整坐标最大 最小值
@@ -8571,7 +8605,7 @@ if(IFrameSplitOperator.IsBool(item.IsShowToolbar))frame.IsShowToolbar=item.IsSho
8571
8605
  overlayFrame.Script=apiIndex;}else if(indexInfo){JSIndexScript.ModifyAttribute(indexInfo,obj);var scriptIndex=new OverlayScriptIndex(indexInfo.Name,indexInfo.Script,indexInfo.Args,indexInfo);//脚本执行
8572
8606
  scriptIndex.OverlayIndex={IsOverlay:true,Identify:overlayFrame.Identify,WindowIndex:windowIndex,Frame:overlayFrame};//叠加指标信息
8573
8607
  overlayFrame.Script=scriptIndex;}else{var scriptIndex=indexCustom.Create();scriptIndex.OverlayIndex={IsOverlay:true,Identify:overlayFrame.Identify,WindowIndex:windowIndex,Frame:overlayFrame};//叠加指标信息
8574
- scriptIndex.Create(this,windowIndex);overlayFrame.Script=scriptIndex;}var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_OVERLAY_FRAME);if(event&&event.Callback){var sendData={OverlayFrame:overlayFrame,WindowIndex:windowIndex,SubFrame:subFrame};event.Callback(event,sendData,this);}subFrame.OverlayIndex.push(overlayFrame);return overlayFrame;};this.DeleteOverlayWindowsIndex=function(identify)//删除叠加指标
8608
+ scriptIndex.Create(this,windowIndex);overlayFrame.Script=scriptIndex;}var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_OVERLAY_FRAME);if(event&&event.Callback){var sendData={OverlayFrame:overlayFrame,WindowIndex:windowIndex,SubFrame:subFrame};event.Callback(event,sendData,this);}subFrame.OverlayIndex.push(overlayFrame);overlayFrame.UpdateTemporaryAttribute(subFrame.Frame,obj.AryTemporaryAttribute);return overlayFrame;};this.DeleteOverlayWindowsIndex=function(identify)//删除叠加指标
8575
8609
  {if(!this.DeleteOverlayIndex(identify,null))return;this.UpdateFrameMaxMin();//重新计算坐标范围
8576
8610
  this.Frame.ResetXYSplit(true);this.Draw();};this.ChangeKLineDrawType=function(drawType,isDraw,option){if(this.KLineDrawType==drawType&&!option)return;var oldKLineType=this.KLineDrawType;this.KLineDrawType=drawType;var setKLineType=new _set2.default([5,7,8,10,11,12,17,21]);if(setKLineType.has(oldKLineType)||setKLineType.has(drawType)){var chart=this.ChartPaint[0];if(chart)chart.DrawType=this.KLineDrawType;this.CancelAutoUpdate();//先停止定时器
8577
8611
  this.AutoUpdateEvent(false,'KLineChartContainer::ChangeKLineDrawType');if(ChartData.IsDayPeriod(this.Period,true)){this.ResetOverlaySymbolStatus();this.RequestHistoryData();//请求日线数据
@@ -8601,13 +8635,15 @@ var scriptData=new JSIndexScript();for(var i=currentLength;i<count;++i){var item
8601
8635
  {var _this31=this;if(!option.Windows)return;var count=option.Windows.length;if(count<=0)return;this.Frame.RestoreIndexWindows();var currentLength=this.Frame.SubFrame.length;var period=null,right=null,symbol=null;if(option.Symbol)symbol=option.Symbol;if(option.KLine){if(IFrameSplitOperator.IsNumber(option.KLine.Period)&&option.KLine.Period!=this.Period)period=option.KLine.Period;//周期
8602
8636
  if(IFrameSplitOperator.IsNumber(option.KLine.Right)&&option.KLine.Right!=this.Right)right=option.KLine.Right;//复权
8603
8637
  }var bRefreshData=period!=null||right!=null||symbol!=null;//清空所有的指标图型
8604
- for(var i=0;i<currentLength;++i){this.DeleteIndexPaint(i);var frame=this.Frame.SubFrame[i];frame.YSpecificMaxMin=null;frame.YSplitScale=null;}if(currentLength>count){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DELETE_FRAME);for(var i=currentLength-1;i>=count;--i){this.Frame.SubFrame[i].Frame.ClearToolbar();if(event&&event.Callback){var sendData={SubFrame:this.Frame.SubFrame[i],WindowIndex:i};event.Callback(event,sendData,this);}}this.Frame.SubFrame.splice(count,currentLength-count);this.WindowIndex.splice(count,currentLength-count);this.TitlePaint.splice(count+1,currentLength-count);}else{for(var i=currentLength;i<count;++i)//创建新的指标窗口
8638
+ for(var i=0;i<currentLength;++i){this.DeleteIndexPaint(i);var frame=this.Frame.SubFrame[i];this.RestoreIndexTemporaryAttribute(i);//恢复临时属性
8639
+ frame.YSpecificMaxMin=null;frame.YSplitScale=null;}if(currentLength>count){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DELETE_FRAME);for(var i=currentLength-1;i>=count;--i){this.Frame.SubFrame[i].Frame.ClearToolbar();if(event&&event.Callback){var sendData={SubFrame:this.Frame.SubFrame[i],WindowIndex:i};event.Callback(event,sendData,this);}}this.Frame.SubFrame.splice(count,currentLength-count);this.WindowIndex.splice(count,currentLength-count);this.TitlePaint.splice(count+1,currentLength-count);}else{for(var i=currentLength;i<count;++i)//创建新的指标窗口
8605
8640
  {var subFrame=this.CreateSubFrameItem(i);this.Frame.SubFrame[i]=subFrame;var titlePaint=new DynamicChartTitlePainting();titlePaint.Frame=this.Frame.SubFrame[i].Frame;titlePaint.Canvas=this.Canvas;titlePaint.LanguageID=this.LanguageID;titlePaint.GetEventCallback=function(id){return _this31.GetEventCallback(id);};titlePaint.SelectedChart=this.SelectedChart;titlePaint.HQChart=this;this.TitlePaint[i+1]=titlePaint;}}for(var i=0;i<count;++i){var windowIndex=i;var item=option.Windows[i];var frameItem=null;if(option.Frame&&option.Frame.length>i)frameItem=option.Frame[i];var titleIndex=windowIndex+1;this.TitlePaint[titleIndex].Data=[];this.TitlePaint[titleIndex].Title=null;var frame=this.Frame.SubFrame[i];this.DeleteWindowsOverlayIndex(i);//清空叠加指标
8606
8641
  if(item.Script)//自定义指标脚本
8607
8642
  {this.WindowIndex[i]=new ScriptIndex(item.Name,item.Script,item.Args,item);//脚本执行
8608
8643
  }else if(item.API)//后台指标
8609
8644
  {var apiItem=item.API;this.WindowIndex[windowIndex]=new APIScriptIndex(apiItem.Name,apiItem.Script,apiItem.Args,item);}else{var indexID=item.Index;var indexItem=JSIndexMap.Get(indexID);if(indexItem){this.WindowIndex[i]=indexItem.Create();this.CreateWindowIndex(windowIndex);}else{var systemScript=new JSIndexScript();var indexInfo=systemScript.Get(indexID);if(indexInfo){JSIndexScript.ModifyAttribute(indexInfo,item);this.WindowIndex[i]=new ScriptIndex(indexInfo.Name,indexInfo.Script,indexInfo.Args,indexInfo);//脚本执行
8610
- }}}this.SetSubFrameAttribute(frame,item,frameItem);}//最后一个显示X轴坐标
8645
+ }}}this.SetSubFrameAttribute(frame,item,frameItem);this.UpdateIndexTemporaryAttribute(windowIndex,item.AryTemporaryAttribute);//指标临时属性
8646
+ }//最后一个显示X轴坐标
8611
8647
  for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i].Frame;if(i==this.Frame.SubFrame.length-1)item.XSplitOperator.ShowText=true;else item.XSplitOperator.ShowText=false;}//叠加指标
8612
8648
  var aryOverlayIndex=[];if(IFrameSplitOperator.IsNonEmptyArray(option.OverlayIndex)){for(var i=0;i<option.OverlayIndex.length;++i){var item=option.OverlayIndex[i];if(item.Index)item.IndexName=item.Index;if(item.Windows>=0)item.WindowIndex=item.Windows;var overlay=this.CreateOverlayWindowsIndex(item);if(!overlay)continue;aryOverlayIndex.push({WindowsIndex:item.WindowIndex,Overlay:overlay});}}this.Frame.SetSizeChage(true);if(!bRefreshData){var bindData=this.ChartPaint[0].Data;for(var i=0;i<count;++i)//请求指标
8613
8649
  {this.BindIndexData(i,bindData);}for(var i=0;i<aryOverlayIndex.length;++i){var item=aryOverlayIndex[i];this.BindOverlayIndexData(item.Overlay,item.WindowsIndex,bindData);}this.UpdataDataoffset();//更新数据偏移
@@ -8663,8 +8699,10 @@ this.SetKLineInfo=function(aryInfo,bUpdate){this.ChartInfo=[];//先清空
8663
8699
  for(var i in aryInfo){var infoItem=JSKLineInfoMap.Get(aryInfo[i]);if(!infoItem)continue;var item=infoItem.Create();item.MaxRequestDataCount=this.MaxRequestDataCount;this.ChartInfo.push(item);}if(bUpdate==true)this.ReqeustKLineInfoData({FunctionName:"SetKLineInfo"});};//添加信息地雷
8664
8700
  this.AddKLineInfo=function(infoName,bUpdate){var classInfo=JSKLineInfoMap.GetClassInfo(infoName);if(!classInfo){console.warn("[KLineChartContainer::AddKLineInfo] can't find infoname=",infoName);return;}for(var i in this.ChartInfo){var item=this.ChartInfo[i];if(item.ClassName==classInfo.ClassName)//已经存在
8665
8701
  return;}var infoItem=JSKLineInfoMap.Get(infoName);if(!infoItem)return;var item=infoItem.Create();item.MaxRequestDataCount=this.MaxRequestDataCount;this.ChartInfo.push(item);if(bUpdate==true){item.RequestData(this);//信息地雷信息
8666
- }};//删除信息地理
8667
- this.DeleteKLineInfo=function(infoName){var classInfo=JSKLineInfoMap.GetClassInfo(infoName);if(!classInfo){console.warn("[KLineChartContainer::DeleteKLineInfo] can't find infoname=",infoName);return;}for(var i in this.ChartInfo){var item=this.ChartInfo[i];if(item.ClassName==classInfo.ClassName){this.ChartInfo.splice(i,1);this.UpdataChartInfo();this.Draw();break;}}};//清空所有的信息地理
8702
+ }};//更新信息地雷数据 Option :{ InsertNew:, 如果没有找到对应的地雷,是否插入新的地雷, Update:是否立即请求数据 }
8703
+ this.UpdateKLineInfo=function(infoName,option){var classInfo=JSKLineInfoMap.GetClassInfo(infoName);if(!classInfo){console.warn("[KLineChartContainer::UpdateKLineInfo] can't find infoname=",infoName);return;}var bInsertNew=false,bUpdate=false;if(option){if(IFrameSplitOperator.IsBoolean(option.InsertNew))bInsertNew=option.InsertNew;if(IFrameSplitOperator.IsBoolean(option.Update))bUpdate=option.Update;}var finder=null;for(var i=0;i<this.ChartInfo.length;++i){var item=this.ChartInfo[i];if(item.ClassName==classInfo.ClassName){finder=item;break;}}if(!finder){if(bInsertNew===true){var infoItem=JSKLineInfoMap.Get(infoName);if(!infoItem)return;var item=infoItem.Create();item.MaxRequestDataCount=this.MaxRequestDataCount;this.ChartInfo.push(item);finder=item;}else{return;}}if(bUpdate==true)finder.RequestData(this);//信息地雷信息
8704
+ };//删除信息地理
8705
+ this.DeleteKLineInfo=function(infoName){var classInfo=JSKLineInfoMap.GetClassInfo(infoName);if(!classInfo){console.warn("[KLineChartContainer::DeleteKLineInfo] can't find infoname=",infoName);return;}for(var i=0;i<this.ChartInfo.length;++i){var item=this.ChartInfo[i];if(item.ClassName==classInfo.ClassName){this.ChartInfo.splice(i,1);this.UpdataChartInfo();this.Draw();break;}}};//清空所有的信息地理
8668
8706
  this.ClearKLineInfo=function(){if(!this.ChartInfo||this.ChartInfo.length<=0)return;this.ChartInfo=[];var klinePaint=this.ChartPaint[0];klinePaint.InfoData=null;this.Draw();};//增加叠加股票
8669
8707
  this.OverlaySymbol=function(symbol,option){for(var i in this.OverlayChartPaint){var item=this.OverlayChartPaint[i];if(item.Symbol===symbol){console.warn('[KLineChartContainer::OverlaySymbol] overlay symbol='+symbol+' exist.');return false;}}var paint=new ChartOverlayKLine();paint.Canvas=this.Canvas;paint.ChartBorder=this.Frame.SubFrame[0].Frame.ChartBorder;paint.ChartFrame=this.Frame.SubFrame[0].Frame;paint.Name="Overlay-KLine";paint.DrawType=this.KLineDrawType;paint.Symbol=symbol;paint.Identify='Overlay-KLine-'+symbol;if(option&&option.Color)paint.Color=option.Color;else paint.Color=g_JSChartResource.OverlaySymbol.Color[g_JSChartResource.OverlaySymbol.Random%g_JSChartResource.OverlaySymbol.Color.length];paint.SetOption(option);++g_JSChartResource.OverlaySymbol.Random;if(this.ChartPaint[0]&&this.ChartPaint[0].Data&&this.SourceData)paint.MainData=this.ChartPaint[0].Data;//绑定主图数据
8670
8708
  this.OverlayChartPaint.push(paint);if(ChartData.IsDayPeriod(this.Period,true))this.RequestOverlayHistoryData();//请求日线数据
@@ -8889,7 +8927,7 @@ this.LockCorssCursor=function(option){if(option&&option.KItem)//指定日期时
8889
8927
  {var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var kItem={Date:option.KItem.Date,Time:option.KItem.Time,Index:-1};kData.FindDataIndexByDateTime([kItem]);if(kItem.Index<0)return false;var xItem=this.GlobalOption.LockCorssCursor.X;xItem.KLine={DataIndex:kItem.Index,Date:kItem.Date,Time:kItem.Time};xItem.Enable=true;}else{if(this.CursorIndex<0)return false;var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var dataIndex=kData.DataOffset+parseInt(this.CursorIndex.toFixed(0));var kItem=kData.Data[dataIndex];if(!kItem)return false;var xItem=this.GlobalOption.LockCorssCursor.X;xItem.KLine={DataIndex:dataIndex,Date:kItem.Date,Time:kItem.Time};xItem.Enable=true;}if(option&&option.Draw)this.Draw();return true;};this.GetCorssCursorPosition=function(){var position={LastPoint:{X:this.LastPoint.X,Y:this.LastPoint.Y},CursorIndex:this.CursorIndex};if(!this.GlobalOption||!this.GlobalOption.LockCorssCursor)return position;var xItem=this.GlobalOption.LockCorssCursor.X;if(xItem.Enable&&xItem.KLine){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return position;position.CursorIndex=xItem.KLine.DataIndex-kData.DataOffset;position.LastPoint.X=this.Frame.GetXFromIndex(position.CursorIndex,false);var border=this.Frame.ChartBorder.GetBorder();if(position.LastPoint.Y<border.Top||position.LastPoint.Y>border.Bottom)//超出图形框子, 调整为收盘价
8890
8928
  {var kItem=kData.Data[xItem.KLine.DataIndex];var y=this.Frame.SubFrame[0].Frame.GetYFromData(kItem.Close);position.LastPoint.Y=y;}}return position;};this.GetDateTimeByPoint=function(x,y){var clientPos=this.PtInClient(x,y);if(clientPos<0)return null;if(!IFrameSplitOperator.IsNumber(x))return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return null;var frame=this.Frame.SubFrame[0].Frame;if(!frame)return null;var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var index=parseInt(frame.GetXData(x));var dataIndex=index+kData.DataOffset;if(dataIndex<0||dataIndex>=kData.Data.length)return null;var kItem=kData.Data[dataIndex];if(!kItem)return null;var result={Date:kItem.Date,Time:kItem.Time,DataIndex:dataIndex,Index:index,ClientPos:clientPos};return result;};//修正十字光标位置有效的K线
8891
8929
  this.FixCursorIndexValid=function(){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var dataIndex=this.CursorIndex+kData.DataOffset;if(dataIndex>=kData.Data.length){this.CursorIndex=kData.Data.length-kData.DataOffset-1;return true;}return false;};//option={ FrameID:, Enable: }
8892
- this.EnableZoomYCoordinate=function(option){if(!option)return false;if(!IFrameSplitOperator.IsNumber(option.FrameID))return false;if(!IFrameSplitOperator.IsBool(option.Enable))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(option.FrameID<0||option.FrameID>this.Frame.SubFrame.length)return false;var item=this.Frame.SubFrame[option.FrameID];if(!item||!item.Frame||!item.Frame.YSplitOperator)return false;var frame=item.Frame;var splitOper=frame.YSplitOperator;if(option.Enable){var max=frame.HorizontalMax,min=frame.HorizontalMin;if(!IFrameSplitOperator.IsNumber(max)||!IFrameSplitOperator.IsNumber(min))return false;splitOper.FixedYMaxMin={Max:max,Min:min};splitOper.EnableZoomUpDown=true;frame.XYSplit=true;this.ChartDragSelectRect.EnableLButton=false;}else{splitOper.FixedYMaxMin=null;splitOper.EnableZoomUpDown=false;frame.XYSplit=true;}this.Draw();};}//API 返回数据 转化为array[]
8930
+ this.EnableZoomYCoordinate=function(option){if(!option)return false;if(!IFrameSplitOperator.IsNumber(option.FrameID))return false;if(!IFrameSplitOperator.IsBool(option.Enable))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(option.FrameID<0||option.FrameID>this.Frame.SubFrame.length)return false;var item=this.Frame.SubFrame[option.FrameID];if(!item||!item.Frame||!item.Frame.YSplitOperator)return false;var frame=item.Frame;var splitOper=frame.YSplitOperator;if(option.Enable){var max=frame.HorizontalMax,min=frame.HorizontalMin;if(!IFrameSplitOperator.IsNumber(max)||!IFrameSplitOperator.IsNumber(min))return false;splitOper.FixedYMaxMin={Max:max,Min:min};splitOper.EnableZoomUpDown=true;frame.XYSplit=true;this.ChartDragSelectRect.EnableLButton=false;}else{splitOper.FixedYMaxMin=null;splitOper.EnableZoomUpDown=false;frame.XYSplit=true;}this.Draw();};this.UpdateIndexTemporaryAttribute=function(windowIndex,aryAttribute){if(windowIndex<0)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;this.IndexTemporaryAttribute[windowIndex]=[];var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreIndexTemporaryAttribute=function(windowIndex){if(windowIndex<0)return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];if(!IFrameSplitOperator.IsNonEmptyArray(aryTemporaryAttribute))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;for(var i=0;i<aryTemporaryAttribute.length;++i){var item=aryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}}};}//API 返回数据 转化为array[]
8893
8931
  KLineChartContainer.JsonDataToHistoryData=function(data){var aryDayData=[];if(!data.data)return aryDayData;var upperSymbol=null;if(data.symbol)upperSymbol=data.symbol.toUpperCase();var isFutures=false;//是否是期货
8894
8932
  if(upperSymbol)isFutures=MARKET_SUFFIX_NAME.IsFutures(upperSymbol);var list=data.data;var date=0,yclose=1,open=2,high=3,low=4,close=5,vol=6,amount=7,position=8;var fclose=9,yfclose=10;//结算价, 前结算价
8895
8933
  var bfactor=11,afactor=12;//前, 后复权因子
@@ -10027,8 +10065,9 @@ PyScriptIndex.prototype.GetDefaultColor=function(id){var COLOR_ARRAY=["rgb(255,1
10027
10065
  信息地雷
10028
10066
  *//*
10029
10067
  信息地雷列表
10030
- */function JSKLineInfoMap(){}JSKLineInfoMap.Get=function(id){var infoMap=new _map2.default([["互动易",{Create:function Create(){return new InvestorInfo();}}],["公告",{Create:function Create(){return new AnnouncementInfo();}}],["业绩预告",{Create:function Create(){return new PforecastInfo();}}],["调研",{Create:function Create(){return new ResearchInfo();}}],["大宗交易",{Create:function Create(){return new BlockTrading();}}],["龙虎榜",{Create:function Create(){return new DragonTigerInfo();}}],["新闻",{Create:function Create(){return new NewsInfo();}}],['除权',{Create:function Create(){return new DividendInfo();}}]]);return infoMap.get(id);};JSKLineInfoMap.GetClassInfo=function(id){var infoMap=new _map2.default([["互动易",{ClassName:"InvestorInfo"}],["公告",{ClassName:"AnnouncementInfo"}],["业绩预告",{ClassName:"PforecastInfo"}],["调研",{ClassName:"ResearchInfo"}],["大宗交易",{ClassName:"BlockTrading"}],["龙虎榜",{ClassName:"DragonTigerInfo"}],["新闻",{ClassName:"NewsInfo"}],['除权',{ClassName:"DividendInfo"}]]);return infoMap.get(id);};JSKLineInfoMap.GetIconUrl=function(type){switch(type){case KLINE_INFO_TYPE.INVESTOR:return g_JSChartResource.KLine.Info.Investor.Icon;break;case KLINE_INFO_TYPE.PFORECAST:return g_JSChartResource.KLine.Info.Pforecast.Icon;case KLINE_INFO_TYPE.ANNOUNCEMENT:return g_JSChartResource.KLine.Info.Announcement.Icon;case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_1:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_2:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_3:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_4:return g_JSChartResource.KLine.Info.Announcement.IconQuarter;case KLINE_INFO_TYPE.RESEARCH:return g_JSChartResource.KLine.Info.Research.Icon;case KLINE_INFO_TYPE.BLOCKTRADING:return g_JSChartResource.KLine.Info.BlockTrading.Icon;case KLINE_INFO_TYPE.DRAGON_TIGER:return g_JSChartResource.KLine.Info.DragonTiger.Icon;case KLINE_INFO_TYPE.NEWS:return g_JSChartResource.KLine.Info.News.Icon;case KLINE_INFO_TYPE.DIVIDEND:return g_JSChartResource.KLine.Info.Dividend.Icon;default:return g_JSChartResource.KLine.Info.Announcement.Icon;}};JSKLineInfoMap.GetIconLibrary=function(index){var iconLib=g_JSChartResource.KLine.Info.IconLibrary;if(!iconLib||!iconLib.Icon)return g_JSChartResource.KLine.Info.Announcement.IconFont;if(index>=0&&index<iconLib.Icon.length){var item=iconLib.Icon[index];var obj={Text:item.Text,HScreenText:item.HScreenText,Color:item.Color,Family:iconLib.Family};return obj;}return g_JSChartResource.KLine.Info.Announcement.IconFont;};JSKLineInfoMap.GetIconFont=function(type){//公告扩展数据
10031
- if(type>=KLINE_INFO_TYPE.ANNOUNCEMENT_EX_START&&type<=KLINE_INFO_TYPE.ANNOUNCEMENT_EX_END){var index=type-KLINE_INFO_TYPE.ANNOUNCEMENT_EX_START;return JSKLineInfoMap.GetIconLibrary(index);}switch(type){case KLINE_INFO_TYPE.INVESTOR:return g_JSChartResource.KLine.Info.Investor.IconFont;break;case KLINE_INFO_TYPE.PFORECAST:return g_JSChartResource.KLine.Info.Pforecast.IconFont;case KLINE_INFO_TYPE.ANNOUNCEMENT:return g_JSChartResource.KLine.Info.Announcement.IconFont;case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_1:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_2:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_3:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_4:return g_JSChartResource.KLine.Info.Announcement.IconFont2;case KLINE_INFO_TYPE.RESEARCH:return g_JSChartResource.KLine.Info.Research.IconFont;case KLINE_INFO_TYPE.BLOCKTRADING:return g_JSChartResource.KLine.Info.BlockTrading.IconFont;case KLINE_INFO_TYPE.DRAGON_TIGER:return g_JSChartResource.KLine.Info.DragonTiger.IconFont;case KLINE_INFO_TYPE.NEWS:return g_JSChartResource.KLine.Info.News.IconFont;case KLINE_INFO_TYPE.DIVIDEND:return g_JSChartResource.KLine.Info.Dividend.IconFont;default:return g_JSChartResource.KLine.Info.Announcement.IconFont;}};function IKLineInfo(){this.MaxRequestDataCount=1000;this.StartDate=20160101;this.Data;this.ClassName='IKLineInfo';this.Explain="IKLineInfo";this.GetToday=function(){var date=new Date();var today=date.getFullYear()*10000+(date.getMonth()+1)*100+date.getDate();return today;};this.GetRequestData=function(hqChart){var obj={Symbol:hqChart.Symbol,MaxRequestDataCount:hqChart.MaxRequestDataCount,//日线数据个数
10068
+ */function JSKLineInfoMap(){}JSKLineInfoMap.Get=function(id){var infoMap=new _map2.default([["互动易",{Create:function Create(){return new InvestorInfo();}}],["公告",{Create:function Create(){return new AnnouncementInfo();}}],["业绩预告",{Create:function Create(){return new PforecastInfo();}}],["调研",{Create:function Create(){return new ResearchInfo();}}],["大宗交易",{Create:function Create(){return new BlockTrading();}}],["龙虎榜",{Create:function Create(){return new DragonTigerInfo();}}],["新闻",{Create:function Create(){return new NewsInfo();}}],['除权',{Create:function Create(){return new DividendInfo();}}],["扩展信息",{Create:function Create(){return new ExtendInfo();}}]]);return infoMap.get(id);};JSKLineInfoMap.GetClassInfo=function(id){var infoMap=new _map2.default([["互动易",{ClassName:"InvestorInfo"}],["公告",{ClassName:"AnnouncementInfo"}],["业绩预告",{ClassName:"PforecastInfo"}],["调研",{ClassName:"ResearchInfo"}],["大宗交易",{ClassName:"BlockTrading"}],["龙虎榜",{ClassName:"DragonTigerInfo"}],["新闻",{ClassName:"NewsInfo"}],['除权',{ClassName:"DividendInfo"}],["扩展信息",{ClassName:"ExtendInfo"}]]);return infoMap.get(id);};JSKLineInfoMap.GetIconUrl=function(type){switch(type){case KLINE_INFO_TYPE.INVESTOR:return g_JSChartResource.KLine.Info.Investor.Icon;break;case KLINE_INFO_TYPE.PFORECAST:return g_JSChartResource.KLine.Info.Pforecast.Icon;case KLINE_INFO_TYPE.ANNOUNCEMENT:return g_JSChartResource.KLine.Info.Announcement.Icon;case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_1:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_2:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_3:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_4:return g_JSChartResource.KLine.Info.Announcement.IconQuarter;case KLINE_INFO_TYPE.RESEARCH:return g_JSChartResource.KLine.Info.Research.Icon;case KLINE_INFO_TYPE.BLOCKTRADING:return g_JSChartResource.KLine.Info.BlockTrading.Icon;case KLINE_INFO_TYPE.DRAGON_TIGER:return g_JSChartResource.KLine.Info.DragonTiger.Icon;case KLINE_INFO_TYPE.NEWS:return g_JSChartResource.KLine.Info.News.Icon;case KLINE_INFO_TYPE.DIVIDEND:return g_JSChartResource.KLine.Info.Dividend.Icon;default:return g_JSChartResource.KLine.Info.Announcement.Icon;}};JSKLineInfoMap.GetIconFont=function(type){//公告扩展数据
10069
+ if(type>=KLINE_INFO_TYPE.ANNOUNCEMENT_EX_START&&type<=KLINE_INFO_TYPE.ANNOUNCEMENT_EX_END){var index=type-KLINE_INFO_TYPE.ANNOUNCEMENT_EX_START;var value=g_JSChartResource.KLine.Info.AnnouncementEx.Defalut;var aryData=g_JSChartResource.KLine.Info.AnnouncementEx.AryIconFont;if(IFrameSplitOperator.IsNonEmptyArray(aryData)&&aryData[index])value=aryData[index];return value;}if(type>=KLINE_INFO_TYPE.EXTEND_INFO_START&&type<=KLINE_INFO_TYPE.EXTEND_INFO_END){var index=type-KLINE_INFO_TYPE.EXTEND_INFO_START;var value=g_JSChartResource.KLine.Info.ExtendInfo.Default;var aryData=g_JSChartResource.KLine.Info.ExtendInfo.AryIconFont;if(IFrameSplitOperator.IsNonEmptyArray(aryData)&&aryData[index])value=aryData[index];return value;}switch(type){case KLINE_INFO_TYPE.INVESTOR:return g_JSChartResource.KLine.Info.Investor.IconFont;break;case KLINE_INFO_TYPE.PFORECAST:return g_JSChartResource.KLine.Info.Pforecast.IconFont;case KLINE_INFO_TYPE.ANNOUNCEMENT:return g_JSChartResource.KLine.Info.Announcement.IconFont;case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_1:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_2:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_3:case KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_4:return g_JSChartResource.KLine.Info.Announcement.IconFont2;case KLINE_INFO_TYPE.RESEARCH:return g_JSChartResource.KLine.Info.Research.IconFont;case KLINE_INFO_TYPE.BLOCKTRADING:return g_JSChartResource.KLine.Info.BlockTrading.IconFont;case KLINE_INFO_TYPE.DRAGON_TIGER:return g_JSChartResource.KLine.Info.DragonTiger.IconFont;case KLINE_INFO_TYPE.NEWS:return g_JSChartResource.KLine.Info.News.IconFont;case KLINE_INFO_TYPE.DIVIDEND:return g_JSChartResource.KLine.Info.Dividend.IconFont;default:return g_JSChartResource.KLine.Info.Announcement.IconFont;}};function IKLineInfo(){this.MaxRequestDataCount=1000;this.StartDate=20160101;this.Data;this.ClassName='IKLineInfo';this.Explain="IKLineInfo";this.GetToday=function(){var date=new Date();var today=date.getFullYear()*10000+(date.getMonth()+1)*100+date.getDate();return today;};this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10070
+ JSConsole.Chart.Warn('[IKLineInfo::RequestData] '+this.ClassName+' NetworkFilter error.');};this.GetRequestData=function(hqChart){var obj={Symbol:hqChart.Symbol,MaxRequestDataCount:hqChart.MaxRequestDataCount,//日线数据个数
10032
10071
  MaxRequestMinuteDayCount:hqChart.MaxRequestMinuteDayCount,//分钟数据请求的天数
10033
10072
  Period:hqChart.Period//周期
10034
10073
  };//K线数据范围
@@ -10037,8 +10076,7 @@ Explain:this.Explain,Request:this.GetRequestData(hqChart),Self:this,HQChart:hqCh
10037
10076
  }hqChart.NetworkFilter(obj,function(data){self.RecvData(data,param);});if(obj.PreventDefault==true)return true;//已被上层替换,不调用默认的网络请求
10038
10077
  return false;};this.ReadArrayText=function(infoData,recv){if(!IFrameSplitOperator.IsNonEmptyArray(recv.aryText))return;if(!infoData.ExtendData)infoData.ExtendData={};if(!Array.isArray(infoData.ExtendData.AryText))infoData.ExtendData.AryText=[];for(var i=0;i<recv.aryText.length;++i){var item=recv.aryText[i];infoData.ExtendData.AryText.push({Name:item.name,Value:item.value,Type:item.type});}};}//互动易
10039
10078
  function InvestorInfo(){this.newMethod=IKLineInfo;//派生
10040
- this.newMethod();delete this.newMethod;this.ClassName='InvestorInfo';this.Explain='互动易';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10041
- JSConsole.Chart.Warn("[InvestorInfo::RequestData] NetworkFilter error.");};this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.INVESTOR;this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//公告 支持增量更新
10079
+ this.newMethod();delete this.newMethod;this.ClassName='InvestorInfo';this.Explain='互动易';this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.INVESTOR;this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//公告 支持增量更新
10042
10080
  function AnnouncementInfo(){this.newMethod=IKLineInfo;//派生
10043
10081
  this.newMethod();delete this.newMethod;this.ClassName='AnnouncementInfo';this.Explain='公告';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};if(obj&&obj.Update===true)//更新模式 不清内存数据
10044
10082
  {}else{this.Data=[];}if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
@@ -10048,37 +10086,32 @@ this.UpdateData=function(aryData){if(!aryData||aryData.length<=0)return;var setK
10048
10086
  for(var i in this.Data){var item=this.Data[i];var strKey=item.Date+'-'+item.Time+'-'+item.InfoType+'-'+item.Title;setKeys.add(strKey);}var count=0;for(var i in aryData){var item=aryData[i];var strKey=item.Date+'-'+item.Time+'-'+item.InfoType+'-'+item.Title;if(setKeys.has(strKey))continue;this.Data.push(item);++count;}JSConsole.Chart.Log('[AnnouncementInfo::UpdateData] add new count='+count);};this.RecvError=function(http,e,param){console.warn("[AnnouncementInfo::RecvError] error, http ",e,http);//if (param.HQChart.ScriptErrorCallback) param.HQChart.ScriptErrorCallback(e);
10049
10087
  };}//业绩预告 2.0
10050
10088
  function PforecastInfo(){this.newMethod=IKLineInfo;//派生
10051
- this.newMethod();delete this.newMethod;this.ClassName='PforecastInfo';this.Explain='业绩预告';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10052
- JSConsole.Chart.Warn("[PforecastInfo::RequestData] NetworkFilter error.");};this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.Title=item.title;infoData.ReportDate=item.reportDate;infoData.InfoType=KLINE_INFO_TYPE.PFORECAST;infoData.ExtendData={AryData:[],AryText:[]};for(var j=0;j<item.aryData.length;++j){var dataItem=item.aryData[j];infoData.ExtendData.AryData.push({Name:dataItem.name,Text:dataItem.text,Content:dataItem.Content});}this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//投资者关系 (调研) 2.0
10089
+ this.newMethod();delete this.newMethod;this.ClassName='PforecastInfo';this.Explain='业绩预告';this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.Title=item.title;infoData.ReportDate=item.reportDate;infoData.InfoType=KLINE_INFO_TYPE.PFORECAST;infoData.ExtendData={AryData:[],AryText:[]};for(var j=0;j<item.aryData.length;++j){var dataItem=item.aryData[j];infoData.ExtendData.AryData.push({Name:dataItem.name,Text:dataItem.text,Content:dataItem.Content});}this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//投资者关系 (调研) 2.0
10053
10090
  function ResearchInfo(){this.newMethod=IKLineInfo;//派生
10054
- this.newMethod();delete this.newMethod;this.ClassName='ResearchInfo';this.Explain='调研';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10055
- JSConsole.Chart.Warn("[ResearchInfo::RequestData] NetworkFilter error.");return true;};this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.RESEARCH;infoData.ExtendData={Researcher:item.researcher,//调研人员
10091
+ this.newMethod();delete this.newMethod;this.ClassName='ResearchInfo';this.Explain='调研';this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.RESEARCH;infoData.ExtendData={Researcher:item.researcher,//调研人员
10056
10092
  Place:item.place,//地点
10057
10093
  Count:item.count,//机构个数
10058
10094
  Receptionist:item.receptionist,//接待人会员
10059
10095
  Date:item.startDate,//调研日期
10060
10096
  AryText:[]};this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//大宗交易 2.0
10061
10097
  function BlockTrading(){this.newMethod=IKLineInfo;//派生
10062
- this.newMethod();delete this.newMethod;this.ClassName='BlockTrading';this.Explain='大宗交易';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10063
- JSConsole.Chart.Warn("[ResearchInfo::BlockTrading] NetworkFilter error.");};this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.InfoType=KLINE_INFO_TYPE.BLOCKTRADING;infoData.ExtendData={Price:item.price,//交易价格
10098
+ this.newMethod();delete this.newMethod;this.ClassName='BlockTrading';this.Explain='大宗交易';this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.InfoType=KLINE_INFO_TYPE.BLOCKTRADING;infoData.ExtendData={Price:item.price,//交易价格
10064
10099
  Premium:item.premium,//溢价 (百分比%)
10065
10100
  Vol:item.vol,//交易金额单位(万元)
10066
10101
  ClosePrice:item.close//收盘价
10067
10102
  };this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//龙虎榜 2.0
10068
10103
  function DragonTigerInfo(){this.newMethod=IKLineInfo;//派生
10069
- this.newMethod();delete this.newMethod;this.ClassName='DragonTigerInfo';this.Explain='龙虎榜';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10070
- JSConsole.Chart.Warn("[DragonTigerInfo::RequestData] NetworkFilter error.");};this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.DRAGON_TIGER;infoData.ExtendData={BuyAmount:item.buyAmount,//机构买入总额
10104
+ this.newMethod();delete this.newMethod;this.ClassName='DragonTigerInfo';this.Explain='龙虎榜';this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.Date=item.date;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.DRAGON_TIGER;infoData.ExtendData={BuyAmount:item.buyAmount,//机构买入总额
10071
10105
  SellAmount:item.sellAmount,//机构卖出总额
10072
10106
  NetBuyAmount:item.netBuyAmount,//机构买入净额
10073
10107
  NetBuyRatio:item.netBuyRatio,//净买额占总成交比
10074
10108
  Amount:item.amount//市场总成交额
10075
10109
  };this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//新闻 2.0
10076
10110
  function NewsInfo(){this.newMethod=IKLineInfo;//派生
10077
- this.newMethod();delete this.newMethod;this.ClassName='NewsInfo';this.Explain='新闻';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10078
- JSConsole.Chart.Warn("[NewsInfo::RequestData] NetworkFilter error.");};this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.InfoType=KLINE_INFO_TYPE.NEWS;infoData.Title=item.title;infoData.ExtendData={Type:item.type,url:item.url};this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//除权 2.0
10111
+ this.newMethod();delete this.newMethod;this.ClassName='NewsInfo';this.Explain='新闻';this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.InfoType=KLINE_INFO_TYPE.NEWS;infoData.Title=item.title;infoData.ExtendData={Type:item.type,url:item.url};this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}//除权 2.0
10079
10112
  function DividendInfo(){this.newMethod=IKLineInfo;//派生
10080
- this.newMethod();delete this.newMethod;this.ClassName='DividendInfo';this.Explain='除权';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};this.Data=[];if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
10081
- JSConsole.Chart.Warn("[DividendInfo::RequestData] NetworkFilter error.");};this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.InfoType=KLINE_INFO_TYPE.DIVIDEND;infoData.Title=item.title;infoData.ExtendData={Type:item.type,url:item.url};this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}function JSMinuteInfoMap(){}JSMinuteInfoMap.InfoMap=new _map2.default([["大盘异动",{Create:function Create(){return new MarketEventInfo();}}]]);JSMinuteInfoMap.Get=function(id){return JSMinuteInfoMap.InfoMap.get(id);};function IMinuteInfo(){this.Data;this.ClassName='IMinuteInfo';}//////////////////////////////////////////////////////////////////////
10113
+ this.newMethod();delete this.newMethod;this.ClassName='DividendInfo';this.Explain='除权';this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.InfoType=KLINE_INFO_TYPE.DIVIDEND;infoData.Title=item.title;infoData.ExtendData={Type:item.type,url:item.url};this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}function ExtendInfo(){this.newMethod=IKLineInfo;//派生
10114
+ this.newMethod();delete this.newMethod;this.ClassName='ExtendInfo';this.Explain='扩展信息';this.RecvData=function(recvData,param){if(!recvData||!IFrameSplitOperator.IsNonEmptyArray(recvData.list))return;for(var i=0;i<recvData.list.length;++i){var item=recvData.list[i];var infoType=KLINE_INFO_TYPE.EXTEND_INFO_START;if(IFrameSplitOperator.IsNumber(item.infoType)){infoType=KLINE_INFO_TYPE.EXTEND_INFO_START+item.infoType;if(infoType>KLINE_INFO_TYPE.EXTEND_INFO_END)infoType=KLINE_INFO_TYPE.EXTEND_INFO_END;}var infoData=new KLineInfoData();infoData.ID=item.id;infoData.Date=item.date;infoData.InfoType=infoType;infoData.Title=item.title;infoData.ExtendData={Type:item.type,Data:item.data};this.ReadArrayText(infoData,item);this.Data.push(infoData);}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};}function JSMinuteInfoMap(){}JSMinuteInfoMap.InfoMap=new _map2.default([["大盘异动",{Create:function Create(){return new MarketEventInfo();}}]]);JSMinuteInfoMap.Get=function(id){return JSMinuteInfoMap.InfoMap.get(id);};function IMinuteInfo(){this.Data;this.ClassName='IMinuteInfo';}//////////////////////////////////////////////////////////////////////
10082
10115
  // 大盘异动
10083
10116
  // 结构 {Date:日期 Time:时间, Title:标题, Type:0 }
10084
10117
  ////////////////////////////////////////////////////////////////////
@@ -12895,7 +12928,7 @@ var SCRIPT_CHART_NAME={OVERLAY_BARS:"OVERLAY_BARS",//叠加柱子图
12895
12928
  KLINE_TABLE:"KLINE_TABLE",SCATTER_PLOT:"SCATTER_PLOT",//散点图
12896
12929
  SCATTER_PLOT_V2:"SCATTER_PLOT_V2",//散点图V2
12897
12930
  CLIP_COLOR_STICK:"CLIP_COLOR_STICK",//上下柱子 裁剪
12898
- DRAW_KLINE:"DRAWKLINE",BASELINE_BAR:"BASELINE_BAR"// 外部对接API指标数据及图形
12931
+ DRAW_KLINE:"DRAWKLINE",BASELINE_BAR:"BASELINE_BAR",DRAW_CHANNEL:"DRAWCHANNEL"// 外部对接API指标数据及图形
12899
12932
  };function ScriptIndexChartFactory(){this.DataMap=new _map2.default();//["图形名字", {} ]
12900
12933
  this.Add=function(name,option){this.DataMap.set(name,{MinuteFittingCallback:option.MinuteFittingCallback,KLineFittingCallback:option.KLineFittingCallback,CreateChartCallback:option.CreateChartCallback,FormatTitleCallback:option.FormatTitleCallback});};this.Get=function(name){if(!this.DataMap.has(name))return null;return this.DataMap.get(name);};this.Has=function(name){return this.DataMap.has(name);};}var g_ScriptIndexChartFactory=new ScriptIndexChartFactory();//脚本指标
12901
12934
  //name=指标名字 args=参数名字 参数值
@@ -12924,7 +12957,7 @@ this.IsSync=false;//是否是同步计算 (无数据请求)
12924
12957
  this.IsShow=true;//是否显示图形
12925
12958
  this.RunCount=0;//已执行次数
12926
12959
  this.MaxRunCount=-1;//最大执行次数 -1=无限
12927
- if(option){if(option.FloatPrecision>=0)this.FloatPrecision=option.FloatPrecision;if(option.StringFormat>0)this.StringFormat=option.StringFormat;if(IFrameSplitOperator.IsBool(option.IsShowIndexTitle))this.IsShowIndexTitle=option.IsShowIndexTitle;if(option.ID)this.ID=option.ID;if(option.KLineType>=0||option.KLineType===-1)this.KLineType=option.KLineType;if(option.InstructionType)this.InstructionType=option.InstructionType;if(option.YSpecificMaxMin)this.YSpecificMaxMin=option.YSpecificMaxMin;if(option.YSplitScale)this.YSplitScale=option.YSplitScale;if(option.Condition)this.Condition=option.Condition;if(option.TitleFont)this.TitleFont=option.TitleFont;if(option.IsShortTitle)this.IsShortTitle=option.IsShortTitle;if(option.OutName)this.OutName=option.OutName;if(IFrameSplitOperator.IsNumber(option.YSplitType))this.YSplitType=option.YSplitType;if(IFrameSplitOperator.IsBool(option.IsSync))this.IsSync=option.IsSync;if(IFrameSplitOperator.IsNumber(option.MaxRunCount))this.MaxRunCount=option.MaxRunCount;if(IFrameSplitOperator.IsBool(option.IsAuthorization))this.IsAuthorization=option.IsAuthorization;if(option.Debug){if(IFrameSplitOperator.IsPlusNumber(option.Debug.Count)&&option.Debug.Callback){this.Debug={Count:option.Debug.Count,Callback:option.Debug.Callback};}}}if(option&&option.Lock){if(option.Lock.IsLocked==true)this.IsLocked=true;//指标上锁
12960
+ if(option){if(option.FloatPrecision>=0)this.FloatPrecision=option.FloatPrecision;if(option.StringFormat>0)this.StringFormat=option.StringFormat;if(IFrameSplitOperator.IsBool(option.IsShowIndexTitle))this.IsShowIndexTitle=option.IsShowIndexTitle;if(option.ID)this.ID=option.ID;if(option.KLineType>=0||option.KLineType===-1)this.KLineType=option.KLineType;if(option.InstructionType)this.InstructionType=option.InstructionType;if(option.YSpecificMaxMin)this.YSpecificMaxMin=option.YSpecificMaxMin;if(option.YSplitScale)this.YSplitScale=option.YSplitScale;if(option.Condition)this.Condition=option.Condition;if(option.TitleFont)this.TitleFont=option.TitleFont;if(option.IsShortTitle)this.IsShortTitle=option.IsShortTitle;if(option.OutName)this.OutName=option.OutName;if(IFrameSplitOperator.IsNumber(option.YSplitType))this.YSplitType=option.YSplitType;if(IFrameSplitOperator.IsBool(option.IsSync))this.IsSync=option.IsSync;if(IFrameSplitOperator.IsNumber(option.MaxRunCount))this.MaxRunCount=option.MaxRunCount;if(IFrameSplitOperator.IsBool(option.IsAuthorization))this.IsAuthorization=option.IsAuthorization;if(IFrameSplitOperator.IsBool(option.IsShow))this.IsShow=option.IsShow;if(option.Debug){if(IFrameSplitOperator.IsPlusNumber(option.Debug.Count)&&option.Debug.Callback){this.Debug={Count:option.Debug.Count,Callback:option.Debug.Callback};}}}if(option&&option.Lock){if(option.Lock.IsLocked==true)this.IsLocked=true;//指标上锁
12928
12961
  if(option.Lock.Callback)this.LockCallback=option.Lock.Callback;//锁回调
12929
12962
  if(option.Lock.ID)this.LockID=option.Lock.ID;//锁ID
12930
12963
  if(option.Lock.BG)this.LockBG=option.Lock.BG;if(option.Lock.TextColor)this.LockTextColor=option.Lock.TextColor;if(option.Lock.Text)this.LockText=option.Lock.Text;if(option.Lock.Font)this.LockFont=option.Lock.Font;if(option.Lock.Count)this.LockCount=option.Lock.Count;if(option.Lock.MinWidth)this.LockMinWidth=option.Lock.MinWidth*GetDevicePixelRatio();if(IFrameSplitOperator.IsBool(option.Lock.IsFullFrame))this.IsLockFullFrame=option.Lock.IsFullFrame;}if(option&&option.YAxis){this.YAxis={};if(IFrameSplitOperator.IsNumber(option.YAxis.FloatPrecision))this.YAxis.FloatPrecision=option.YAxis.FloatPrecision;if(IFrameSplitOperator.IsNumber(option.YAxis.StringFormat))this.YAxis.StringFormat=option.YAxis.StringFormat;if(IFrameSplitOperator.IsBool(option.YAxis.EnableRemoveZero))this.YAxis.EnableRemoveZero=option.YAxis.EnableRemoveZero;if(IFrameSplitOperator.IsBool(option.YAxis.ExcludeValue))this.YAxis.ExcludeValue=option.YAxis.ExcludeValue;//不参数Y轴的计算
@@ -13030,7 +13063,7 @@ this.SetChartIndexName(chartText);hqChart.ChartPaint.push(chartText);};this.Crea
13030
13063
  chart.Family=varItem.Draw.Icon.Family;chart.TextFont=g_JSChartResource.TIPICON.TextFont;var svgSize=g_JSChartResource.TIPICON.Size;var svgColor=g_JSChartResource.TIPICON.Color;var svgYOffset=0;var svgVAlign=2;//上下对齐方式
13031
13064
  if(IFrameSplitOperator.IsNumber(varItem.YOffset))svgYOffset=varItem.YOffset;if(varItem.Color)svgColor=this.GetColor(varItem.Color);if(varItem.DrawFontSize>0)svgSize=varItem.DrawFontSize;if(varItem.DrawVAlign>=0)svgVAlign=varItem.DrawVAlign;if(varItem.Draw&&IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.DrawData)&&varItem.Draw.Icon){var drawData=varItem.Draw.DrawData;var aryData=[];var isArrayTip=Array.isArray(varItem.Draw.Text);var singleTip=null;if(!isArrayTip&&varItem.Draw.Text)singleTip={Text:varItem.Draw.Text};for(var j=0;j<drawData.length;++j){var item=drawData[j];var kItem=chart.Data.Data[j];if(!IFrameSplitOperator.IsNumber(item))continue;var svgItem={Value:item,Date:kItem.Date,Time:kItem.Time,SVG:{Symbol:varItem.Draw.Icon.Symbol,Size:svgSize,Color:svgColor,YOffset:svgYOffset,VAlign:svgVAlign}};if(isArrayTip){var text=varItem.Draw.Text[j];if(text)svgItem.Tooltip={Text:text};}else{svgItem.Tooltip=singleTip;}aryData.push(svgItem);}chart.Texts=aryData;}chart.BuildCacheData();hqChart.ChartPaint.push(chart);};this.CreateDrawLastBarText=function(hqChart,windowIndex,varItem,id){var chart=new ChartDrawLastBarText();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(hqChart.ChartPaint[0].IsMinuteFrame())chart.Data=hqChart.SourceData;else chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
13032
13065
  var lastItem=varItem.Draw.DrawData;if(lastItem){if(lastItem.Color)lastItem.Color=this.GetColor(lastItem.Color);else lastItem.Color=this.GetDefaultColor(id);if(varItem.Color)lastItem.Color=this.GetColor(varItem.Color);if(varItem.DrawVAlign>=0){if(varItem.DrawVAlign==0)lastItem.TextBaseline='top';else if(varItem.DrawVAlign==1)lastItem.TextBaseline='middle';else if(varItem.DrawVAlign==2)lastItem.TextBaseline='bottom';}if(varItem.DrawAlign>=0){if(varItem.DrawAlign==0)lastItem.TextAlign="left";else if(varItem.DrawAlign==1)lastItem.TextAlign="center";else if(varItem.DrawAlign==2)lastItem.TextAlign='right';}if(IFrameSplitOperator.IsNumber(varItem.YOffset))lastItem.YOffset=varItem.YOffset;if(IFrameSplitOperator.IsNumber(varItem.XOffset))lastItem.XOffset=varItem.XOffset;if(varItem.DrawFontSize>0)lastItem.FontSize=varItem.DrawFontSize;}chart.LastBarItem=lastItem;hqChart.ChartPaint.push(chart);};//创建通道
13033
- this.CreateChannel=function(hqChart,windowIndex,varItem,id){var chart=new ChartChannel();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.Draw.AreaColor)chart.AreaColor=varItem.Draw.AreaColor;else if(varItem.Color)chart.AreaColor=this.GetColor(varItem.Color);else chart.AreaColor=this.GetDefaultColor(id);if(varItem.Draw.Border.Color)chart.LineColor=varItem.Draw.Border.Color;else chart.LineColor=null;if(varItem.Draw.Border.Dotted)chart.LineDotted=varItem.Draw.Border.Dotted;if(varItem.Draw.Border.Width>0)chart.LineWidth=varItem.Draw.Border.Width;//let titleIndex=windowIndex+1;
13066
+ this.CreateChannel=function(hqChart,windowIndex,varItem,id){var chart=new ChartChannel();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.Draw.Config){var item=varItem.Draw.Config;if(IFrameSplitOperator.IsObjectDefined(item.AreaColor))chart.AreaColor=item.AreaColor;if(IFrameSplitOperator.IsObjectDefined(item.LineColor))chart.LineColor=item.LineColor;if(IFrameSplitOperator.IsObjectDefined(item.LineDotted))chart.LineDotted=item.LineDotted;if(IFrameSplitOperator.IsNumber(item.LineWidth))chart.LineWidth=item.LineWidth;}else{if(varItem.Draw.AreaColor)chart.AreaColor=varItem.Draw.AreaColor;else if(varItem.Color)chart.AreaColor=this.GetColor(varItem.Color);else chart.AreaColor=this.GetDefaultColor(id);if(varItem.Draw.Border){if(varItem.Draw.Border.Color)chart.LineColor=varItem.Draw.Border.Color;else chart.LineColor=null;if(varItem.Draw.Border.Dotted)chart.LineDotted=varItem.Draw.Border.Dotted;if(varItem.Draw.Border.Width>0)chart.LineWidth=varItem.Draw.Border.Width;}}//let titleIndex=windowIndex+1;
13034
13067
  chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreatePartLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartPartLine();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.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(IFrameSplitOperator.IsPlusNumber(width))chart.LineWidth=width;}if(IFrameSplitOperator.IsBool(varItem.IsDotLine))chart.IsDotLine=varItem.IsDotLine;if(IFrameSplitOperator.IsNonEmptyArray(varItem.LineDash))chart.LineDash=varItem.LineDash;chart.Data.Data=varItem.Draw.DrawData;this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateMultiLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
13035
13068
  chart.Lines=varItem.Draw.DrawData;if(varItem.Draw.Name)chart.Name=varItem.Draw.Name;if(varItem.Draw.LineDash)chart.LineDash=varItem.Draw.LineDash;if(IFrameSplitOperator.IsNumber(varItem.Draw.LineWidth))chart.LineWidth=varItem.Draw.LineWidth;if(IFrameSplitOperator.IsBool(varItem.Draw.IsFullRangeMaxMin))chart.IsFullRangeMaxMin=varItem.Draw.IsFullRangeMaxMin;if(varItem.Draw.Arrow)//箭头配置
13036
13069
  {var item=varItem.Draw.Arrow;if(item.Start==true)chart.Arrow.Start=true;if(item.End==true)chart.Arrow.End=true;if(IFrameSplitOperator.IsNumber(item.Angle))chart.ArrawAngle=item.Angle;if(IFrameSplitOperator.IsNumber(item.Length))chart.ArrawLength=item.Length;if(IFrameSplitOperator.IsNumber(item.LineWidth))chart.ArrawLineWidth=item.LineWidth;}this.ReloadChartResource(hqChart,windowIndex,chart);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var bShowTitle=true;if(varItem.IsShowTitle===false)bShowTitle=false;if(bShowTitle){var titleData=new DynamicTitleData(chart.Data,chart.Name,null);titleData.DataType="ChartMultiLine";titleData.Lines=chart.Lines;hqChart.TitlePaint[titleIndex].Data[i]=titleData;}};this.CreateMultiPoint=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiPoint();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.GetKData();//绑定K线
@@ -13039,7 +13072,7 @@ chart.Bars=varItem.Draw.DrawData;chart.BuildCacheData();this.SetChartIndexName(c
13039
13072
  chart.Texts=varItem.Draw.DrawData;chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateMultiSVGIcon=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiSVGIconV2();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.GetKData();//绑定K线
13040
13073
  chart.Family=varItem.Draw.DrawData.Family;chart.AryIcon=varItem.Draw.DrawData.Icon;chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateChartDrawSVG=function(hqChart,windowIndex,varItem,i){var chart=new ChartDrawSVG();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.GetKData();if(IFrameSplitOperator.IsBool(varItem.Draw.DrawData.EnableTooltip))chart.EnableTooltip=varItem.Draw.DrawData.EnableTooltip;if(IFrameSplitOperator.IsBool(varItem.Draw.DrawData.IsDrawFirst))chart.IsDrawFirst=varItem.Draw.DrawData.IsDrawFirst;if(IFrameSplitOperator.IsBool(varItem.Draw.EnalbeDetailNoOverlap))chart.EnalbeDetailNoOverlap=varItem.Draw.EnalbeDetailNoOverlap;if(IFrameSplitOperator.IsBool(varItem.Draw.EnableClick))chart.EnableClick=varItem.Draw.EnableClick;if(varItem.Draw.BuildKeyCallback)chart.BuildKeyCallback=varItem.Draw.BuildKeyCallback;chart.Family=varItem.Draw.DrawData.Family;chart.TextFont=varItem.Draw.DrawData.TextFont;chart.Texts=varItem.Draw.DrawData.Data;chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateMulitHtmlDom=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiHtmlDom();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
13041
13074
  chart.Texts=varItem.Draw.DrawData;chart.DrawCallback=varItem.Draw.Callback;hqChart.ChartPaint.push(chart);};this.CreateStackedBar=function(hqChart,windowIndex,varItem,i){var chart=new ChartStackedBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarColor))chart.BarColor=varItem.Draw.BarColor;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarName))chart.BarName=varItem.Draw.BarName;if(IFrameSplitOperator.IsNumber(varItem.Draw.LineWidth))chart.LineWidth=varItem.Draw.LineWidth;if(IFrameSplitOperator.IsNumber(varItem.Draw.BarType))chart.BarType=varItem.Draw.BarType;hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartStackedBar";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateKLineTable=function(hqChart,windowIndex,varItem,i){var chart=new ChartKLineTable();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
13042
- chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;var config=varItem.Draw.Config;chart.SetOption(config);chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateScatterPlot=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlot();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;chart.Color=varItem.Draw.Color;chart.Radius=varItem.Draw.Radius;hqChart.ChartPaint.push(chart);};this.CreateScatterPlotV2=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlotV2();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
13075
+ chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.AryLabel=varItem.Draw.RowName;var config=varItem.Draw.Config;chart.SetOption(config);chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);var bShowTitle=false;if(config&&IFrameSplitOperator.IsBool(config.IsShowTitle))bShowTitle=config.IsShowTitle;if(bShowTitle){var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";hqChart.TitlePaint[titleIndex].Data[i]=titleData;}};this.CreateScatterPlot=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlot();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;chart.Color=varItem.Draw.Color;chart.Radius=varItem.Draw.Radius;hqChart.ChartPaint.push(chart);};this.CreateScatterPlotV2=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlotV2();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
13043
13076
  chart.AryPoint=varItem.Draw.DrawData;var config=varItem.Draw.Config;if(config){if(config.Color)chart.Color=config.Color;if(IFrameSplitOperator.IsNumber(config.Radius))chart.Radius=config.Radius;if(config.TextColor)chart.TextColor=config.TextColor;if(config.Font)chart.Font=config.Font;}chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,i){var chart=new ChartBaseLineBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data=hqChart.GetKData();//绑定K线
13044
13077
  chart.AryData=varItem.Draw.DrawData;chart.Style=1;//主图使用独立坐标模式
13045
13078
  var config=varItem.Draw.Config;if(config){if(config.UpColor)chart.UpColor=config.UpColor;if(config.DownColor)chart.DownColor=config.DownColor;if(IFrameSplitOperator.IsNumber(config.DefaultMax))chart.DefaultMax=config.DefaultMax;if(IFrameSplitOperator.IsNumber(config.Style))chart.Style=config.Style;if(config.UpName)chart.UpName=config.UpName;if(config.DownName)chart.DownName=config.DownName;}chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,null,chart.Color);titleData.DataType="ChartBaseLineBar";titleData.Chart=chart;hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateClipColorStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartClipColorStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(varItem.Option&&chart.SetOption)chart.SetOption(varItem.Option);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;if(varItem.IsShowTitle===false){}else{var clrTitle=this.GetDefaultColor(id);if(varItem.Option&&varItem.Option.TitleColor)clrTitle=this.GetColor(varItem.Option.TitleColor);hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,clrTitle);}};this.CreateColorKLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartColorKline();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
@@ -13174,7 +13207,7 @@ this.CreateIcon=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.O
13174
13207
  this.SetChartIndexName(chart);frame.ChartPaint.push(chart);};this.CreateTipIcon=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartDrawSVG();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.Data=hqChart.GetKData();chart.Family=varItem.Draw.Icon.Family;chart.TextFont=g_JSChartResource.TIPICON.TextFont;var svgSize=g_JSChartResource.TIPICON.Size;var svgColor=g_JSChartResource.TIPICON.Color;var svgYOffset=0;var svgVAlign=2;//上下对齐方式
13175
13208
  if(IFrameSplitOperator.IsNumber(varItem.YOffset))svgYOffset=varItem.YOffset;if(varItem.Color)svgColor=this.GetColor(varItem.Color);if(varItem.DrawFontSize>0)svgSize=varItem.DrawFontSize;if(varItem.DrawVAlign>=0)svgVAlign=varItem.DrawVAlign;if(varItem.Draw&&IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.DrawData)&&varItem.Draw.Icon){var drawData=varItem.Draw.DrawData;var aryData=[];var isArrayTip=Array.isArray(varItem.Draw.Text);var singleTip=null;if(!isArrayTip&&varItem.Draw.Text)singleTip={Text:varItem.Draw.Text};for(var j=0;j<drawData.length;++j){var item=drawData[j];var kItem=chart.Data.Data[j];if(!IFrameSplitOperator.IsNumber(item))continue;var svgItem={Value:item,Date:kItem.Date,Time:kItem.Time,SVG:{Symbol:varItem.Draw.Icon.Symbol,Size:svgSize,Color:svgColor,YOffset:svgYOffset,VAlign:svgVAlign}};if(isArrayTip){var text=varItem.Draw.Text[j];if(text)svgItem.Tooltip={Text:text};}else{svgItem.Tooltip=singleTip;}aryData.push(svgItem);}chart.Texts=aryData;}chart.BuildCacheData();this.SetChartIndexName(chart);frame.ChartPaint.push(chart);};this.CreateBaseLineBar=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartBaseLineBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.HQChart=hqChart;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.Data=hqChart.GetKData();//绑定K线
13176
13209
  chart.AryData=varItem.Draw.DrawData;var config=varItem.Draw.Config;if(config){if(config.UpColor)chart.UpColor=config.UpColor;if(config.DownColor)chart.DownColor=config.DownColor;if(IFrameSplitOperator.IsNumber(config.DefaultMax))chart.DefaultMax=config.DefaultMax;if(IFrameSplitOperator.IsNumber(config.Style))chart.Style=config.Style;}chart.BuildCacheData();frame.ChartPaint.push(chart);};this.CreateKLineTable=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartKLineTable();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.HQChart=hqChart;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.Data=hqChart.GetKData();//绑定K线
13177
- chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;var config=varItem.Draw.Config;chart.SetOption(config);chart.BuildCacheData();frame.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titlePaint=hqChart.TitlePaint[titleIndex];var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=titleData;};//创建通道
13210
+ chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.AryLabel=varItem.Draw.RowName;var config=varItem.Draw.Config;chart.SetOption(config);chart.BuildCacheData();frame.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titlePaint=hqChart.TitlePaint[titleIndex];var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=titleData;};//创建通道
13178
13211
  this.CreateChannel=function(hqChart,windowIndex,varItem,id){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartChannel();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.Draw.AreaColor)chart.AreaColor=varItem.Draw.AreaColor;else if(varItem.Color)chart.AreaColor=this.GetColor(varItem.Color);else chart.AreaColor=this.GetDefaultColor(id);if(varItem.Draw.Border.Color)chart.LineColor=varItem.Draw.Border.Color;else chart.LineColor=null;if(varItem.Draw.Border.Dotted)chart.LineDotted=varItem.Draw.Border.Dotted;if(varItem.Draw.Border.Width>0)chart.LineWidth=varItem.Draw.Border.Width;//let titleIndex=windowIndex+1;
13179
13212
  chart.Data.Data=varItem.Draw.DrawData;frame.ChartPaint.push(chart);};//
13180
13213
  this.CreatePartLine=function(hqChart,windowIndex,varItem,i){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartPartLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(IFrameSplitOperator.IsPlusNumber(width))chart.LineWidth=width;}if(IFrameSplitOperator.IsBool(varItem.IsDotLine))chart.IsDotLine=varItem.IsDotLine;if(IFrameSplitOperator.IsNonEmptyArray(varItem.LineDash))chart.LineDash=varItem.LineDash;chart.Data.Data=varItem.Draw.DrawData;this.SetChartIndexName(chart);frame.ChartPaint.push(chart);};this.CreateRectangle=function(hqChart,windowIndex,varItem,i){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartRectangle();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.Color=[varItem.Draw.DrawData.Color];chart.Rect=varItem.Draw.DrawData.Rect;if(varItem.Color)chart.BorderColor=this.GetColor(varItem.Color);frame.ChartPaint.push(chart);};this.CreateMultiLine=function(hqChart,windowIndex,varItem,i){var overlayIndex=this.OverlayIndex;var frame=overlayIndex.Frame;var chart=new ChartMultiLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=frame.Frame.ChartBorder;chart.ChartFrame=frame.Frame;chart.Identify=overlayIndex.Identify;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
@@ -13198,7 +13231,7 @@ var hqDataType=HQ_DATA_TYPE.KLINE_ID;//默认K线
13198
13231
  var dateRange=null;if(hqChart.ClassName==='MinuteChartContainer'||hqChart.ClassName==='MinuteChartHScreenContainer'){if(hqChart.DayCount>1)hqDataType=HQ_DATA_TYPE.MULTIDAY_MINUTE_ID;//多日分钟
13199
13232
  else hqDataType=HQ_DATA_TYPE.MINUTE_ID;//分钟数据
13200
13233
  dateRange=hisData.GetDateRange();}else if(hqChart.ClassName==='HistoryMinuteChartContainer'){hqDataType=HQ_DATA_TYPE.HISTORY_MINUTE_ID;//历史分钟
13201
- }else{dateRange=hisData.GetDateRange();}var args=[];if(this.Arguments){for(var i in this.Arguments){var item=this.Arguments[i];args.push({name:item.Name,value:item.Value});}}var requestCount;if(hqChart.GetRequestDataCount)requestCount=hqChart.GetRequestDataCount();var self=this;var postData={indexname:this.ID,symbol:hqChart.Symbol,script:this.Script,args:args,period:hqChart.Period,right:hqChart.Right,hqdatatype:hqDataType,IsAuthorization:this.IsAuthorization};if(dateRange)postData.DateRange=dateRange;if(requestCount){postData.maxdatacount=requestCount.MaxRequestDataCount;postData.maxminutedaycount=requestCount.MaxRequestMinuteDayCount;}if(hqDataType==HQ_DATA_TYPE.MULTIDAY_MINUTE_ID||hqDataType==HQ_DATA_TYPE.MINUTE_ID)postData.daycount=hqChart.DayCount;this.HQDataType=hqDataType;++this.RunCount;if(hqChart.NetworkFilter){var obj={Name:'APIScriptIndex::ExecuteScript',//类名::
13234
+ }else{dateRange=hisData.GetDateRange();}var args=[];if(this.Arguments){for(var i in this.Arguments){var item=this.Arguments[i];args.push({name:item.Name,value:item.Value});}}var requestCount;if(hqChart.GetRequestDataCount)requestCount=hqChart.GetRequestDataCount();var self=this;var postData={indexname:this.ID,symbol:hqChart.Symbol,script:this.Script,args:args,period:hqChart.Period,right:hqChart.Right,hqdatatype:hqDataType,IsAuthorization:this.IsAuthorization,WindowID:windowIndex,IsOverlayIndex:this.IsOverlayIndex===true};if(dateRange)postData.DateRange=dateRange;if(requestCount){postData.maxdatacount=requestCount.MaxRequestDataCount;postData.maxminutedaycount=requestCount.MaxRequestMinuteDayCount;}if(hqDataType==HQ_DATA_TYPE.MULTIDAY_MINUTE_ID||hqDataType==HQ_DATA_TYPE.MINUTE_ID)postData.daycount=hqChart.DayCount;this.HQDataType=hqDataType;++this.RunCount;if(hqChart.NetworkFilter){var obj={Name:'APIScriptIndex::ExecuteScript',//类名::
13202
13235
  Explain:'指标计算',Request:{Url:self.ApiUrl,Type:'POST',Data:postData},Self:this,HQChart:hqChart,PreventDefault:false};hqChart.NetworkFilter(obj,function(data){if(self.Version==2)self.RecvAPIData2(data,hqChart,windowIndex,hisData);else self.RecvAPIData(data,hqChart,windowIndex,hisData);});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
13203
13236
  }JSNetwork.HttpRequest({url:self.ApiUrl,data:postData,type:"post",dataType:"json",async:true,success:function success(recvData){self.RecvAPIData(recvData,hqChart,windowIndex,hisData);},error:function error(request){self.RecvError(request);}});};//py 后台指标计算格式
13204
13237
  this.RecvAPIData2=function(data,hqChart,windowIndex,hisData){JSConsole.Complier.Log('[APIScriptIndex::RecvAPIData2] recv data ',this.Name,data);//if (data.code!=0) return;
@@ -13252,7 +13285,7 @@ outVarItem.Draw=drawItem;if(draw.Font)outVarItem.Font=draw.Font;result.push(outV
13252
13285
  outVarItem.Draw=drawItem;if(draw.Font)outVarItem.Font=draw.Font;result.push(outVarItem);}else if(draw.DrawType=="DRAW_SIMPLE_TABLE"){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=draw.DrawData;//{ TableData:[ [ {AryCell:[{Text:, Color: }]}, ], ], BGColor:, TextFont:{ Size:, Name: } };
13253
13286
  outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="DRAW_SIMPLE_PIE"||draw.DrawType=="DRAW_SIMPLE_DOUGHNUT"){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=draw.DrawData;//{ Data:[ {Value, Color, Text: }, ], BorderColor:, TextFont:{ Size:, Name: } };
13254
13287
  outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="DRAW_SIMPLE_RADAR"){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=draw.DrawData;//{ AryIndex:[ ], Data:[] };
13255
- outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.DRAW_KLINE){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);drawItem.Config=draw.Config;outVarItem.Draw=drawItem;result.push(outVarItem);}else{var find=g_ScriptIndexChartFactory.Get(draw.DrawType);//外部挂接
13288
+ outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.DRAW_KLINE){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);drawItem.Config=draw.Config;outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.DRAW_CHANNEL){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);drawItem.Config=draw.Config;outVarItem.Draw=drawItem;result.push(outVarItem);}else{var find=g_ScriptIndexChartFactory.Get(draw.DrawType);//外部挂接
13256
13289
  if(find&&find.KLineFittingCallback){if(find.KLineFittingCallback(item,outVarItem,{Date:date,Time:time,HQChart:hqChart},this))result.push(outVarItem);}}}}return result;};// h, high, low l. c, close
13257
13290
  this.GetKLineData=function(data,hqChart){if(!data)return;if(!Array.isArray(data))return;if(this.HQDataType==HQ_DATA_TYPE.MINUTE_ID||this.HQDataType==HQ_DATA_TYPE.MULTIDAY_MINUTE_ID)var kData=hqChart.SourceData;//走势图分钟数据
13258
13291
  else var kData=hqChart.ChartPaint[0].Data;//K线
@@ -13451,7 +13484,10 @@ IconFont2:{Family:'iconfont',Text:'\uE634',HScreenText:'\uE686',Color:'#ed7520'/
13451
13484
  {IconFont:{Family:'iconfont',Text:'\uE697',HScreenText:'\uE697',Color:'rgb(255,0,255)',Size:5*GetDevicePixelRatio(),Position:2,IsShowNumber:false//SVG 文本
13452
13485
  }},Dividend://除权
13453
13486
  {IconFont:{Family:'iconfont',Text:'\uE6EB',HScreenText:'\uF0CA',Color:'rgb(220,20,60)',Size:10*GetDevicePixelRatio(),Position:1,IsShowNumber:false//SVG 文本
13454
- }},MinSize:12*GetDevicePixelRatio(),MaxSize:18*GetDevicePixelRatio()},NumIcon:{Color:'rgb(251,80,80)',Family:'iconfont',Text:['\uE649','\uE63B','\uE640','\uE63D','\uE63F','\uE645','\uE641','\uE647','\uE648','\uE646','\uE636','\uE635','\uE637','\uE638','\uE639','\uE63A','\uE63C','\uE63E','\uE642','\uE644','\uE643']},TradeIcon://交易指标 图标
13487
+ }},ExtendInfo://扩展信息
13488
+ {//默认值
13489
+ Default:{Family:'iconfont',Text:'\uE6BD',HScreenText:'\uE6BD',Color:'rgb(148,0,211)'},//自定义值
13490
+ AryIconFont:[{Family:'iconfont',Text:'\uE6C3',HScreenText:'\uE6C3',Color:'rgb(255,215,0)'},{Family:'iconfont',Text:'\uE6C5',HScreenText:'\uE6C5',Color:'rgb(0,191,255)'},{Family:'iconfont',Text:'\uE6C6',HScreenText:'\uEE6C6',Color:'rgb( 152,251,152)'}]},AnnouncementEx:{Default:{Family:'iconfont',Text:'\uE633',HScreenText:'\uE685',Color:'#f5a521'},AryIconFont:[{Family:'iconfont',Text:'\uE630',HScreenText:'\uE689',Color:'#f39f7c'},{Family:'iconfont',Text:'\uE632',HScreenText:'\uE688',Color:'#19b1b7'},{Family:'iconfont',Text:'\uE62F',HScreenText:'\uE68A',Color:'#b22626'},{Family:'iconfont',Text:'\uE634',HScreenText:'\uE686',Color:'#ed7520'}]},MinSize:12*GetDevicePixelRatio(),MaxSize:18*GetDevicePixelRatio()},NumIcon:{Color:'rgb(251,80,80)',Family:'iconfont',Text:['\uE649','\uE63B','\uE640','\uE63D','\uE63F','\uE645','\uE641','\uE647','\uE648','\uE646','\uE636','\uE635','\uE637','\uE638','\uE639','\uE63A','\uE63C','\uE63E','\uE642','\uE644','\uE643']},TradeIcon://交易指标 图标
13455
13491
  {Family:'iconfont',Buy:{Color:'rgb(255,15,4)',Text:'\uE683',HScreenText:'\uE682'},Sell:{Color:'rgb(64,122,22)',Text:'\uE681',HScreenText:'\uE680'}}},VirtualKLine:{Color:'rgb(119,136,153)',LineDash:[2,2]},PredictionKLine:{Line:{Color:"rgb(220,220,220)",LineDash:[3*GetDevicePixelRatio(),3*GetDevicePixelRatio()]},Bar:{UpColor:"rgb(30,144,255)",DownColor:"rgb(30,144,255)",UnchangeColor:"rgb(30,144,255)",DrawType:3}},PriceGapStyple:{Line:{Color:"rgb(128,128,128)"},Text:{Color:"rgb(219,220,220)",Font:12*GetDevicePixelRatio()+'px \u5FAE\u8F6F\u96C5\u9ED1'}},DaySummaryKLine:{//Font:`${12*GetDevicePixelRatio()}px 微软雅黑`,
13456
13492
  TextColor:"rgb(255,165,0)"},//指标锁
13457
13493
  IndexLock:{BGColor:"rgb(105,105,105)",TextColor:"rgb(255,0,0)"},Index:{LineColor://指标线段颜色
@@ -15850,6 +15886,8 @@ this.ReloadResource=function(option){};}JSDialogSearchIndex.GetDefaultIndexData=
15850
15886
  [{Index:'OSC',Windows:0//IsShareY:true,ShowRightText:false
15851
15887
  },{Index:'RSI',Windows:1//ShowRightText:false
15852
15888
  }]//KLine:{ Period:5, }
15889
+ }},{Name:"Delta",ID:"E828DD1C-D41B-4888-9CB5-4CA1D84F7B70",Type:3,TemplateData:{Windows:[{API:{Name:"Delta",ID:"API-Delta_KLine_Table",Url:'local'},AryTemporaryAttribute:[{Name:JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE,Value:(14*GetDevicePixelRatio()+6)*5+18*GetDevicePixelRatio()+15}]}],OverlayIndex://叠加指标设置
15890
+ []//KLine:{ Period:5, }
15853
15891
  }}]}]};return data;};function JSDialogModifyIndexParam(){this.DivDialog=null;this.DragTitle=null;this.TitleBox=null;//{ DivTitle, DivName, DivName }
15854
15892
  this.Style=0;//样式 预留
15855
15893
  this.MaxRowCount=30;//行
@@ -16175,28 +16213,27 @@ this.Data={AryText:[]//{ AryText:[ { Text:, Color:, Font: },] }
16175
16213
  this.mapEvent=new _map2.default();//通知外部调用 key:JSCHART_EVENT_ID value:{ Callback:回调,}
16176
16214
  this.UIElement=uielement;this.IsDestroy=false;//是否已经销毁了
16177
16215
  this.ScrollTimer=null;//滚动定时器
16216
+ this.MouseDrag=null;//拖动数据
16217
+ this.EnableDrag=false;//是否允许拖动
16178
16218
  this.ChartDestroy=function()//销毁
16179
- {this.IsDestroy=true;this.StopScroll();};this.StopScroll=function(){if(this.ScrollTimer){clearInterval(this.ScrollTimer);this.ScrollTimer=null;}};this.StartScroll=function(){var _this131=this;if(this.ScrollTimer)return;this.ScrollTimer=setInterval(function(){_this131.ScrollStep();},100);};this.ClearData=function(){this.Data.AryText=[];};this.AddText=function(aryData,option){if(!IFrameSplitOperator.IsNonEmptyArray(aryData))return;var bDraw=false;for(var i=0;i<aryData.length;++i){var item=aryData[i];this.Data.AryText.push(item);}if(option){if(option.Draw===true)bDraw=true;}if(bDraw)this.Draw();};//设置事件回调
16219
+ {this.IsDestroy=true;this.StopScroll();};this.StopScroll=function(){if(this.ScrollTimer){clearInterval(this.ScrollTimer);this.ScrollTimer=null;}};this.StartScroll=function(){var _this131=this;if(this.ScrollTimer)return;this.ScrollTimer=setInterval(function(){if(_this131.MouseDrag)return;var chart=_this131.GetScrollTextChart();if(chart&&chart.MouseOnItem)return;//鼠标在上面时不滚动
16220
+ _this131.ScrollStep();},100);};this.ClearData=function(){this.Data.AryText=[];};this.AddText=function(aryData,option){if(!IFrameSplitOperator.IsNonEmptyArray(aryData))return;var bDraw=false;for(var i=0;i<aryData.length;++i){var item=aryData[i];this.Data.AryText.push(item);}if(option){if(option.Draw===true)bDraw=true;}if(bDraw)this.Draw();};//设置事件回调
16180
16221
  //{event:事件id, callback:回调函数}
16181
16222
  this.AddEventCallback=function(object){if(!object||!object.event||!object.callback)return;var data={Callback:object.callback,Source:object};this.mapEvent.set(object.event,data);};this.RemoveEventCallback=function(eventid){if(!this.mapEvent.has(eventid))return;this.mapEvent.delete(eventid);};this.GetEventCallback=function(id)//获取事件回调
16182
16223
  {if(!this.mapEvent.has(id))return null;var item=this.mapEvent.get(id);return item;};this.ClearData=function(){this.Data.AryText=[];};//创建
16183
16224
  this.Create=function(option){var _this132=this;this.UIElement.JSChartContainer=this;//创建框架
16184
16225
  this.Frame=new JSScrollTextFrame();this.Frame.ChartBorder=new ChartBorder();this.Frame.ChartBorder.UIElement=this.UIElement;this.Frame.ChartBorder.Top=30;this.Frame.ChartBorder.Left=5;this.Frame.ChartBorder.Bottom=20;this.Frame.Canvas=this.Canvas;//创建表格
16185
- var chart=new ChartScrollText();chart.Frame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.UIElement=this.UIElement;chart.GetEventCallback=function(id){return _this132.GetEventCallback(id);};chart.Data=this.Data;chart.BorderData=this.BorderData;chart.GlobalOption=this.GlobalOption;chart.FixedRowData=this.FixedRowData;chart.SortInfo=this.SortInfo;this.ChartPaint[0]=chart;if(option){if(IFrameSplitOperator.IsNumber(option.LimitCount))chart.LimitCount=option.LimitCount;if(option.Label){var item=option.Label;if(IFrameSplitOperator.IsString(item.Text))chart.Label.Text=item.Text;if(IFrameSplitOperator.IsBool(item.IsShow))chart.Label.IsShow=item.IsShow;}}this.UIElement.onmousedown=function(e){_this132.UIOnMouseDown(e);};this.UIElement.onmousemove=function(e){_this132.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this132.UIOnMouseOut(e);};this.UIElement.onmouseleave=function(e){_this132.UIOnMouseleave(e);};this.UIElement.oncontextmenu=function(e){_this132.UIOnContextMenu(e);};/*
16186
- this.UIElement.ondblclick=(e)=>{ this.UIOnDblClick(e); }
16187
- this.UIElement.onmousedown=(e)=> { this.UIOnMouseDown(e); }
16188
-
16189
-
16190
- this.UIElement.onmouseleave=(e)=>{ this.UIOnMouseleave(e); }
16191
-
16192
- */var frequency=500;this.ToolbarTimer=setInterval(function(){_this132.Draw();},frequency);};this.UIOnMouseDown=function(e){var pixelTatio=GetDevicePixelRatio();this.ClickDownPoint={X:e.clientX,Y:e.clientY};var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;if(e){if(e.button==0)//左键点击
16226
+ var chart=new ChartScrollText();chart.Frame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.UIElement=this.UIElement;chart.GetEventCallback=function(id){return _this132.GetEventCallback(id);};chart.Data=this.Data;chart.BorderData=this.BorderData;chart.GlobalOption=this.GlobalOption;chart.FixedRowData=this.FixedRowData;chart.SortInfo=this.SortInfo;this.ChartPaint[0]=chart;if(option){if(IFrameSplitOperator.IsNumber(option.LimitCount))chart.LimitCount=option.LimitCount;if(IFrameSplitOperator.IsBool(option.EnableDrag))this.EnableDrag=option.EnableDrag;if(option.Label){var item=option.Label;if(IFrameSplitOperator.IsString(item.Text))chart.Label.Text=item.Text;if(IFrameSplitOperator.IsBool(item.IsShow))chart.Label.IsShow=item.IsShow;}}this.UIElement.onmousedown=function(e){_this132.UIOnMouseDown(e);};this.UIElement.onmousemove=function(e){_this132.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this132.UIOnMouseOut(e);};this.UIElement.onmouseleave=function(e){_this132.UIOnMouseleave(e);};this.UIElement.oncontextmenu=function(e){_this132.UIOnContextMenu(e);};var frequency=500;this.ToolbarTimer=setInterval(function(){_this132.Draw();},frequency);};this.UIOnMouseDown=function(e){var _this133=this;this.MouseDrag=null;var pixelTatio=GetDevicePixelRatio();this.ClickDownPoint={X:e.clientX,Y:e.clientY};var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;if(e){if(e.button==0)//左键点击
16193
16227
  {var ptClick={X:this.ClickDownPoint.X,Y:this.ClickDownPoint.Y};this.TryClickPaintEvent(JSCHART_EVENT_ID.ON_CLICK_SCROLL_TEXT_ITEM,ptClick,e);}else if(e.button==2)//右键点击
16194
- {this.HideAllTooltip();var ptClick={X:this.ClickDownPoint.X,Y:this.ClickDownPoint.Y};this.TryClickPaintEvent(JSCHART_EVENT_ID.ON_RCLICK_SCROLL_TEXT_ITEM,ptClick,e);}}};this.UIOnContextMenu=function(e){if(e)//去掉系统右键菜单
16195
- {if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();e.returnValue=false;}};this.GetChartTooltipData=function(x,y,option){var toolTip=new TooltipData();for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.GetTooltipData(x,y,toolTip)){return toolTip;}}return null;};this.UIOnMouseMove=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.GetScrollTextChart();if(chart)chart.OnMouseMove(x,y,e);};this.UIOnMouseOut=function(e){var chart=this.GetScrollTextChart();if(chart)chart.OnMouseOut(e);this.HideAllTooltip();};this.UIOnMouseleave=function(e){var chart=this.GetScrollTextChart();if(chart)chart.OnMouseOut(e);this.HideAllTooltip();};this.TryClickPaintEvent=function(eventID,ptClick,e){var event=this.GetEventCallback(eventID);if(!event)return false;if(ptClick.X==e.clientX&&ptClick.Y==e.clientY){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-uielement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-uielement.getBoundingClientRect().top)*pixelTatio;var toolTip=new TooltipData();for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.GetTooltipData(x,y,toolTip)){if(toolTip.Data){var data={X:e.clientX,Y:e.clientY,Tooltip:toolTip,e:e};event.Callback(event,data,this);return true;}}}}return false;};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
16228
+ {this.HideAllTooltip();var ptClick={X:this.ClickDownPoint.X,Y:this.ClickDownPoint.Y};this.TryClickPaintEvent(JSCHART_EVENT_ID.ON_RCLICK_SCROLL_TEXT_ITEM,ptClick,e);}}if(this.EnableDrag){var drag={Click:{X:e.clientX,Y:e.clientY},LastMove:{X:e.clientX,Y:e.clientY}};this.MouseDrag=drag;document.onmousemove=function(e){_this133.DocOnMouseMove(e);};document.onmouseup=function(e){_this133.DocOnMouseUp(e);};}};this.DocOnMouseMove=function(e){var drag=this.MouseDrag;if(!drag)return;var pixelTatio=GetDevicePixelRatio();var moveSetpX=Math.abs(drag.LastMove.X-e.clientX);var moveSetpY=Math.abs(drag.LastMove.Y-e.clientY);if(moveSetpX<5)return;this.ScrollStep((drag.LastMove.X-e.clientX)*pixelTatio);drag.LastMove.X=e.clientX;drag.LastMove.Y=e.clientY;};this.DocOnMouseUp=function(e){var ptClick={X:this.ClickDownPoint.X,Y:this.ClickDownPoint.Y};//清空事件
16229
+ document.onmousemove=null;document.onmouseup=null;this.MouseDrag=null;this.ClickDownPoint=null;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.GetScrollTextChart();if(chart)chart.OnMouseMove(x,y,e);if(e){if(e.button==0)//左键点击
16230
+ {this.TryClickPaintEvent(JSCHART_EVENT_ID.ON_CLICK_UP_SCROLL_TEXT_ITEM,ptClick,e);}else if(e.button==2)//右键点击
16231
+ {this.HideAllTooltip();this.TryClickPaintEvent(JSCHART_EVENT_ID.ON_RCLICK_UP_SCROLL_TEXT_ITEM,ptClick,e);}}};this.UIOnContextMenu=function(e){if(e)//去掉系统右键菜单
16232
+ {if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();e.returnValue=false;}};this.GetChartTooltipData=function(x,y,option){var toolTip=new TooltipData();for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.GetTooltipData(x,y,toolTip)){return toolTip;}}return null;};this.UIOnMouseMove=function(e){if(this.MouseDrag)return;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.GetScrollTextChart();var bDraw=false;if(chart){var result=chart.OnMouseMove(x,y,e);if(result&&result.Update)bDraw=true;}if(bDraw)this.Draw();};this.UIOnMouseOut=function(e){if(this.MouseDrag)return;var chart=this.GetScrollTextChart();if(chart)chart.OnMouseOut(e);this.HideAllTooltip();};this.UIOnMouseleave=function(e){if(this.MouseDrag)return;var chart=this.GetScrollTextChart();if(chart)chart.OnMouseOut(e);this.HideAllTooltip();};this.TryClickPaintEvent=function(eventID,ptClick,e){var event=this.GetEventCallback(eventID);if(!event)return false;if(ptClick.X==e.clientX&&ptClick.Y==e.clientY){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-uielement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-uielement.getBoundingClientRect().top)*pixelTatio;var toolTip=new TooltipData();for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.GetTooltipData(x,y,toolTip)){if(toolTip.Data){var data={X:e.clientX,Y:e.clientY,Tooltip:toolTip,e:e};event.Callback(event,data,this);return true;}}}}return false;};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
16196
16233
  this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段宽度
16197
16234
  this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
16198
16235
  for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];item.Draw();}};this.OnSize=function(){if(!this.Frame)return;this.SetSizeChange(true);this.Draw();};this.SetSizeChange=function(bChanged){for(var i=0;i<this.ChartPaint.length;++i){var chart=this.ChartPaint[i];if(chart)chart.SizeChange=bChanged;}};this.ReloadResource=function(option){this.Frame.ReloadResource(option);for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.ReloadResource)item.ReloadResource(option);}if(option&&(option.Redraw||option.Draw)){this.SetSizeChange(true);this.Draw();}if(this.TooltipMinuteChart)this.TooltipMinuteChart.ReloadResource(option);//分时图
16199
- };this.GetScrollTextChart=function(){var chart=this.ChartPaint[0];if(!chart)return null;return chart;};this.HideAllTooltip=function(){};this.ScrollStep=function(){var chart=this.GetScrollTextChart();if(!chart)return;if(chart.ScrollStep())this.Draw();};}function JSScrollTextFrame(){this.ChartBorder;this.Canvas;//画布
16236
+ };this.GetScrollTextChart=function(){var chart=this.ChartPaint[0];if(!chart)return null;return chart;};this.HideAllTooltip=function(){};this.ScrollStep=function(){var defaultStep=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;var chart=this.GetScrollTextChart();if(!chart)return;if(chart.ScrollStep(defaultStep))this.Draw();};}function JSScrollTextFrame(){this.ChartBorder;this.Canvas;//画布
16200
16237
  this.BorderLine=null;//1=上 2=下 4=左 8=右
16201
16238
  this.ClassName="JSScrollTextFrame";this.BorderColor=g_JSChartResource.StatusBar.BorderColor;//边框线
16202
16239
  this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;this.LogoTextFont=g_JSChartResource.FrameLogo.Font;this.ReloadResource=function(resource){this.BorderColor=g_JSChartResource.StatusBar.BorderColor;//边框线
@@ -16232,7 +16269,7 @@ this.RightMargin=g_JSChartResource.ScrollText.RightMargin;//右边间距
16232
16269
  this.MoveStep=g_JSChartResource.ScrollText.MoveStep;//每次滚动步长
16233
16270
  this.ReloadResource=function(resource){this.TextConfig.Font=g_JSChartResource.ScrollText.Font;this.TextConfig.Color=g_JSChartResource.ScrollText.Color;this.TextConfig.MouseOnColor=g_JSChartResource.ScrollText.MouseOnColor;this.TextConfig.Spacing=g_JSChartResource.ScrollText.Spacing;this.TextConfig.Margin.Top=g_JSChartResource.ScrollText.Margin.Top;this.TextConfig.Margin.Bottom=g_JSChartResource.ScrollText.Margin.Bottom;this.LeftMargin=g_JSChartResource.ScrollText.LeftMargin;//左边间距
16234
16271
  this.RightMargin=g_JSChartResource.ScrollText.RightMargin;//右边间距
16235
- this.LabelConfig.Color=g_JSChartResource.ScrollText.Label.Color;this.LabelConfig.Font=g_JSChartResource.ScrollText.Label.Font;this.LabelConfig.Margin=CloneData(g_JSChartResource.ScrollText.Label.Margin);};this.GetDataIndex=function(finderItem){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return-1;for(var i=0;i<this.Data.AryText.length;++i){var item=this.Data.AryText[i];if(item===finderItem)return i;}return-1;};this.OnMouseMove=function(x,y,e){var tooltip={};if(this.GetTooltipData(x,y,tooltip)){this.MouseOnItem=tooltip.Data;}else{this.MouseOnItem=null;}};this.OnMouseOut=function(e){this.MouseOnItem=null;};this.GetClientRect=function(){var labelWidth=this.GetLabelWidth();var border=this.ChartBorder.GetBorder();var rtClient={Left:border.Left+labelWidth,Right:border.Right,Top:border.Top,Bottom:border.Bottom};rtClient.Left+=this.LeftMargin;rtClient.Right-=this.RightMargin;rtClient.Width=rtClient.Right-rtClient.Left;rtClient.Height=rtClient.Bottom-rtClient.Top;return rtClient;};this.DrawLabel=function(){if(!this.Label||!this.Label.IsShow||!this.Label.Text)return;var config=this.LabelConfig;this.Canvas.textBaseline="bottom";this.Canvas.textAlign="left";this.Canvas.font=config.Font;this.Canvas.fillStyle=config.Color;var border=this.ChartBorder.GetBorder();var text=this.Label.Text;var textWidth=this.Canvas.measureText(text).width;var cellWidth=textWidth+config.Margin.Left+config.Margin.Right;var x=border.Left+config.Margin.Left;var yText=border.Bottom-config.Margin.Bottom;this.Canvas.fillText(text,x,yText);this.Label.Width=cellWidth;this.Canvas.strokeStyle=g_JSChartResource.StatusBar.BorderColor;//边框线
16272
+ this.LabelConfig.Color=g_JSChartResource.ScrollText.Label.Color;this.LabelConfig.Font=g_JSChartResource.ScrollText.Label.Font;this.LabelConfig.Margin=CloneData(g_JSChartResource.ScrollText.Label.Margin);};this.GetDataIndex=function(finderItem){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return-1;for(var i=0;i<this.Data.AryText.length;++i){var item=this.Data.AryText[i];if(item===finderItem)return i;}return-1;};this.OnMouseMove=function(x,y,e){var result={Update:false};var oldMouseOnItem=this.MouseOnItem;var tooltip={};if(this.GetTooltipData(x,y,tooltip)){this.MouseOnItem=tooltip.Data;}else{this.MouseOnItem=null;}if(oldMouseOnItem!=this.MouseOnItem)result.Update=true;return result;};this.OnMouseOut=function(e){var result={Update:false};if(this.MouseOnItem){this.MouseOnItem=null;result.Update=true;}return result;};this.GetClientRect=function(){var labelWidth=this.GetLabelWidth();var border=this.ChartBorder.GetBorder();var rtClient={Left:border.Left+labelWidth,Right:border.Right,Top:border.Top,Bottom:border.Bottom};rtClient.Left+=this.LeftMargin;rtClient.Right-=this.RightMargin;rtClient.Width=rtClient.Right-rtClient.Left;rtClient.Height=rtClient.Bottom-rtClient.Top;return rtClient;};this.DrawLabel=function(){if(!this.Label||!this.Label.IsShow||!this.Label.Text)return;var config=this.LabelConfig;this.Canvas.textBaseline="bottom";this.Canvas.textAlign="left";this.Canvas.font=config.Font;this.Canvas.fillStyle=config.Color;var border=this.ChartBorder.GetBorder();var text=this.Label.Text;var textWidth=this.Canvas.measureText(text).width;var cellWidth=textWidth+config.Margin.Left+config.Margin.Right;var x=border.Left+config.Margin.Left;var yText=border.Bottom-config.Margin.Bottom;this.Canvas.fillText(text,x,yText);this.Label.Width=cellWidth;this.Canvas.strokeStyle=g_JSChartResource.StatusBar.BorderColor;//边框线
16236
16273
  this.Canvas.beginPath();var y=ToFixedPoint(border.Left+cellWidth);this.Canvas.moveTo(y,border.Top);this.Canvas.lineTo(y,border.Bottom);this.Canvas.stroke();};this.GetLabelWidth=function(){if(!this.Label||!this.Label.IsShow||!this.Label.Text)return 0;if(IFrameSplitOperator.IsNumber(this.Label.Width))return this.Label.Width;var config=this.LabelConfig;var text=this.Label.Text;var textWidth=this.Canvas.measureText(text).width;var cellWidth=textWidth+config.Margin.Left+config.Margin.Right;this.Label.Width=cellWidth;return cellWidth;};this.Draw=function(){this.AryRect=[];this.DrawLabel();if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return;var rtClient=this.GetClientRect();this.Canvas.save();this.Canvas.beginPath();this.Canvas.rect(rtClient.Left,rtClient.Top,rtClient.Width,rtClient.Height);this.Canvas.clip();this.Canvas.textBaseline="bottom";this.Canvas.textAlign="left";var config=this.TextConfig;var y=rtClient.Bottom;var x=rtClient.Right;var startIndex=-1,endIndex=-1;if(this.FirstItem)startIndex=this.GetDataIndex(this.FirstItem);if(startIndex<0){var index=this.Data.AryText.length-1;this.FirstItem=this.Data.AryText[index];this.FirstItem.Move={XOffset:0};startIndex=index;}if(this.FirstItem.Move&&IFrameSplitOperator.IsNumber(this.FirstItem.Move.XOffset))x-=this.FirstItem.Move.XOffset;for(var i=startIndex;i>=0;--i){var item=this.Data.AryText[i];if(!IFrameSplitOperator.IsNonEmptyArray(item.Content))continue;var itemWidth=0;var rtText={Left:x,Right:x,Top:rtClient.Top,Bottom:rtClient.Bottom};for(j=0;j<item.Content.length;++j){var subItem=item.Content[j];var color=this.TextConfig.Color;var font=this.TextConfig.Font;if(subItem.Color)color=subItem.Color;if(subItem.Font)font=subItem.Font;//鼠标在上面的颜色
16237
16274
  if(this.MouseOnItem){if(this.MouseOnItem.Data==item)color=this.TextConfig.MouseOnColor;}this.Canvas.font=font;this.Canvas.fillStyle=color;var textWidth=this.Canvas.measureText(subItem.Text).width;var yText=rtClient.Bottom-config.Margin.Bottom;this.Canvas.fillText(subItem.Text,x,yText);x+=textWidth;itemWidth+=textWidth;}endIndex=i;rtText.Right=x;this.AryRect.push({Rect:rtText,Data:item});x+=config.Spacing;if(item==this.FirstItem){item.Move.ContentWidth=itemWidth;item.Move.Width=itemWidth+config.Spacing;}if(x>=rtClient.Right)break;}/*
16238
16275
  for(var i=0;i<this.Data.AryText.length;++i)
@@ -16273,10 +16310,10 @@ if(this.MouseOnItem){if(this.MouseOnItem.Data==item)color=this.TextConfig.MouseO
16273
16310
 
16274
16311
  x+=config.Spacing;
16275
16312
  }
16276
- */this.Canvas.restore();this.ResizeDataCount(endIndex);};this.ResizeDataCount=function(startIndex){if(!IFrameSplitOperator.IsNumber(startIndex))return;if(startIndex<=0)return;if(this.LimitCount<=0)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return;if(this.Data.AryText.length<=this.LimitCount)return;var delCount=this.Data.AryText.length-this.LimitCount;for(var i=0;i<delCount&&i<startIndex;++i){this.Data.AryText.shift();}};this.GetTooltipData=function(x,y,tooltip){var rtClient=this.GetClientRect();if(x>=rtClient.Left&&x<=rtClient.Right){for(var i=0;i<this.AryRect.length;++i){var item=this.AryRect[i];if(Path2DHelper.PtInRect(x,y,item.Rect)){tooltip.Data=item;tooltip.ChartPaint=this;tooltip.Type=1;return true;}}}return false;};this.ScrollStep=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return false;if(!this.FirstItem)return false;if(this.MouseOnItem)return true;var rtClient=this.GetClientRect();var left=rtClient.Left;var right=rtClient.Right;var width=this.FirstItem.Move.Width;var xOffset=this.FirstItem.Move.XOffset+this.MoveStep;if(right-xOffset+width<left){var startIndex=this.GetDataIndex(this.FirstItem);nextIndex=startIndex-1;if(nextIndex<0){var index=this.Data.AryText.length-1;this.FirstItem=this.Data.AryText[index];this.FirstItem.Move={XOffset:0};}else{this.FirstItem=this.Data.AryText[nextIndex];this.FirstItem.Move={XOffset:xOffset-width};}}else{this.FirstItem.Move.XOffset=xOffset;}return true;};}/********************************************************************************
16313
+ */this.Canvas.restore();this.ResizeDataCount(endIndex);};this.ResizeDataCount=function(startIndex){if(!IFrameSplitOperator.IsNumber(startIndex))return;if(startIndex<=0)return;if(this.LimitCount<=0)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return;if(this.Data.AryText.length<=this.LimitCount)return;var delCount=this.Data.AryText.length-this.LimitCount;for(var i=0;i<delCount&&i<startIndex;++i){this.Data.AryText.shift();}};this.GetTooltipData=function(x,y,tooltip){var rtClient=this.GetClientRect();if(x>=rtClient.Left&&x<=rtClient.Right){for(var i=0;i<this.AryRect.length;++i){var item=this.AryRect[i];if(Path2DHelper.PtInRect(x,y,item.Rect)){tooltip.Data=item;tooltip.ChartPaint=this;tooltip.Type=1;return true;}}}return false;};this.ScrollStep=function(defaultStep){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return false;if(!this.FirstItem)return false;var moveStep=this.MoveStep;if(IFrameSplitOperator.IsNumber(defaultStep))moveStep=defaultStep;var rtClient=this.GetClientRect();var left=rtClient.Left;var right=rtClient.Right;var width=this.FirstItem.Move.Width;var xOffset=this.FirstItem.Move.XOffset+moveStep;if(right-xOffset+width<left){var startIndex=this.GetDataIndex(this.FirstItem);nextIndex=startIndex-1;if(nextIndex<0){var index=this.Data.AryText.length-1;this.FirstItem=this.Data.AryText[index];this.FirstItem.Move={XOffset:0};}else{this.FirstItem=this.Data.AryText[nextIndex];this.FirstItem.Move={XOffset:xOffset-width};}}else{this.FirstItem.Move.XOffset=xOffset;}return true;};}/********************************************************************************
16277
16314
  * 版本信息输出
16278
16315
  *
16279
- */var HQCHART_VERSION="1.1.15634";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
16316
+ */var HQCHART_VERSION="1.1.15664";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
16280
16317
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
16281
16318
  // BaseIndex:BaseIndex,
16282
16319
  // ChartLine:ChartLine,