hqchart 1.1.14516 → 1.1.14523

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.
@@ -1512,7 +1512,8 @@ ON_FORMAT_KLINE_FLOAT_TOOLTIP:161,//格式化k线浮动框显示文字
1512
1512
  ON_FORMAT_KLINE_INFO_FLOAT_TOOLTIP:162,//格式化信息地雷显示文字
1513
1513
  SEARCH_DIALOG_ON_CLICK_INDEX:163,//切换指标-指标对话框
1514
1514
  ON_CALCULATE_CHIP_DATA:164,//计算筹码数据 (筹码图用)
1515
- ON_CLICK_DEAL_ROW:165,ON_RCLICK_DEAL_ROW:166,ON_DBCLICK_DEAL_ROW:167};var JSCHART_OPERATOR_ID={OP_SCROLL_LEFT:1,//往左移动
1515
+ ON_CLICK_DEAL_ROW:165,ON_RCLICK_DEAL_ROW:166,ON_DBCLICK_DEAL_ROW:167,ON_FORMAT_OVERLAY_INDEX_OUT_TEXT:168//格式化叠指标标题
1516
+ };var JSCHART_OPERATOR_ID={OP_SCROLL_LEFT:1,//往左移动
1516
1517
  OP_SCROLL_RIGHT:2,//往右移动
1517
1518
  OP_ZOOM_OUT:3,//缩小
1518
1519
  OP_ZOOM_IN:4,//放大
@@ -1601,6 +1602,7 @@ CMD_CORSS_ON_KLINE_ID:51,//十字光标只能画在K线上
1601
1602
  CMD_CORSS_POINT_ID:52,//十字光标圆点
1602
1603
  CMD_RBUTTON_SELECT_RECT_ID:53,//右键区间选择
1603
1604
  CMD_LBUTTON_SELECT_RECT_ID:54,//左键区间选择
1605
+ CMD_ENABLE_XDRAG_BOTTOM_ID:55,//X轴拖动缩放
1604
1606
  CMD_REPORT_CHANGE_BLOCK_ID:100,//报价列表 切换板块ID
1605
1607
  CMD_REPORT_COLUMN_SORT_ID:101,//报价列表 表头排序 Arg[列序号, 排序方向]
1606
1608
  CMD_REPORT_COLUMN_DEL_ID:102,//报价列表 删除列
@@ -2076,7 +2078,7 @@ this.GetExtendChartByClassNameV2=function(name){var aryChart=[];for(var i=0;i<th
2076
2078
  {var width=0;for(var i=0;i<this.ExtendChartPaint.length;++i){var item=this.ExtendChartPaint[i];if(!item)continue;if(item.ClassName=="StockChip"){if(IFrameSplitOperator.IsNumber(item.Width))width+=item.Width;}}return width;};//删除扩展画法
2077
2079
  this.DeleteExtendChart=function(data){if(data.Index>=this.ExtendChartPaint.length)return;if(this.ExtendChartPaint[data.Index]!=data.Chart)return;if(typeof data.Chart.Clear=='function')data.Chart.Clear();this.ExtendChartPaint.splice(data.Index,1);};//删除扩展画法
2078
2080
  this.DeleteExtendChartByID=function(id){for(var i=0;i<this.ExtendChartPaint.length;++i){var item=this.ExtendChartPaint[i];if(item.ID==id){this.ExtendChartPaint.splice(i,1);return true;}}return false;};//全屏提示信息 { Title:提示信息, Draw:false/true 是否立即重绘, }
2079
- this.EnableSplashScreen=function(enable,option){if(!this.ChartSplashPaint)return;this.ChartSplashPaint.EnableSplash(enable);if(option&&option.Draw===false)return;if(enable)this.DrawSplashScreen(option);else this.Draw();};//设置指标窗口属性 windowItem=SetOption.Windows[i], frameItem=SetOption.Frames[i];
2081
+ this.EnableSplashScreen=function(enable,option){if(!this.ChartSplashPaint)return;this.ChartSplashPaint.EnableSplash(enable);if(option&&option.Draw===false)return;if(enable)this.DrawSplashScreen(option);else this.Draw();};this.SetSplashScreen=function(option){if(!option)return;if(IFrameSplitOperator.IsBool(option.Enable))this.ChartSplashPaint.EnableSplash(option.Enable);if(option.Title)this.ChartSplashPaint.SetTitle(option.Title);if(option.Draw)this.Draw();};this.IsEnableSplashScreen=function(){if(!this.ChartSplashPaint)return false;return this.ChartSplashPaint.IsEnableSplash;};//设置指标窗口属性 windowItem=SetOption.Windows[i], frameItem=SetOption.Frames[i];
2080
2082
  this.SetSubFrameAttribute=function(subFrame,windowItem,frameItem){if(!subFrame||!subFrame.Frame)return;var frame=subFrame.Frame;if(windowItem){if(IFrameSplitOperator.IsBool(windowItem.Modify))frame.ModifyIndex=windowItem.Modify;if(IFrameSplitOperator.IsBool(windowItem.Change))frame.ChangeIndex=windowItem.Change;if(IFrameSplitOperator.IsBool(windowItem.Close))frame.CloseIndex=windowItem.Close;if(IFrameSplitOperator.IsBool(windowItem.Overlay))frame.OverlayIndex=windowItem.Overlay;if(IFrameSplitOperator.IsBool(windowItem.AddIndexWindow))frame.AddIndexWindow=windowItem.AddIndexWindow;if(IFrameSplitOperator.IsBool(windowItem.IsDrawTitleBG))frame.IsDrawTitleBG=windowItem.IsDrawTitleBG;if(IFrameSplitOperator.IsNumber(windowItem.TitleHeight))frame.ChartBorder.TitleHeight=windowItem.TitleHeight;else windowItem.TitleHeight=frame.ChartBorder.TitleHeight;if(IFrameSplitOperator.IsBool(windowItem.IsShowTitleArrow))frame.IsShowTitleArrow=windowItem.IsShowTitleArrow;if(IFrameSplitOperator.IsNumber(windowItem.TitleArrowType))frame.TitleArrowType=windowItem.TitleArrowType;if(IFrameSplitOperator.IsBool(windowItem.IsShowIndexName))frame.IsShowIndexName=windowItem.IsShowIndexName;if(IFrameSplitOperator.IsNumber(windowItem.IndexParamSpace))frame.IndexParamSpace=windowItem.IndexParamSpace;if(IFrameSplitOperator.IsNumber(windowItem.IndexTitleSpace))frame.IndexTitleSpace=windowItem.IndexTitleSpace;if(!IFrameSplitOperator.IsUndefined(windowItem.HorizontalReserved))frame.HorizontalReserved=windowItem.HorizontalReserved;//Y轴上下预留
2081
2083
  if(IFrameSplitOperator.IsBool(windowItem.IsShowNameArrow))frame.IsShowNameArrow=windowItem.IsShowNameArrow;}if(frameItem){if(frameItem.SplitCount)frame.YSplitOperator.SplitCount=frameItem.SplitCount;if(IFrameSplitOperator.IsNumber(frameItem.SplitType)){frame.YSplitOperator.SplitType=frameItem.SplitType;frame.YSplitOperator.DefaultSplitType=frameItem.SplitType;}if(IFrameSplitOperator.IsBool(frameItem.IsShowXLine))frame.IsShowXLine=frameItem.IsShowXLine;if(IFrameSplitOperator.IsBool(frameItem.IsShowYLine))frame.IsShowYLine=frameItem.IsShowYLine;if(IFrameSplitOperator.IsBool(frameItem.IsShowLeftText)){frame.IsShowYText[0]=frameItem.IsShowLeftText;frame.YSplitOperator.IsShowLeftText=frameItem.IsShowLeftText;//显示左边刻度
2082
2084
  }if(IFrameSplitOperator.IsBool(frameItem.IsShowRightText)){frame.IsShowYText[1]=frameItem.IsShowRightText;frame.YSplitOperator.IsShowRightText=frameItem.IsShowRightText;//显示右边刻度
@@ -2172,7 +2174,7 @@ this.Draw();break;case JSCHART_MENU_ID.CMD_ENABLE_OVERLAY_SHARE_Y_ID:if(!srcPara
2172
2174
  this.UpdateFrameMaxMin();//调整坐标最大 最小值
2173
2175
  this.Draw();break;case JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID:if(!IFrameSplitOperator.IsString(srcParam))return;this.DefaultCursor=srcParam;this.UIElement.style.cursor=this.DefaultCursor;break;case JSCHART_MENU_ID.CMD_ADD_OVERLAY_INDEX_ID://叠加指标 0=windowIndex, 1=indexinfo
2174
2176
  if(param==null||!aryArgs[1])return false;var obj=aryArgs[1];obj.WindowIndex=param;this.AddOverlayIndex(obj);break;case JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID:if(srcParam)this.SetLanguage(srcParam);break;case JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID:if(param!=null){if(this.ChartDragSelectRect)this.ChartDragSelectRect.ShowMode=param;}break;case JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID:if(IFrameSplitOperator.IsBool(srcParam)){if(this.ChartCorssCursor)this.ChartCorssCursor.IsShowCorss=srcParam;}break;case JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID://双击弹分时图
2175
- if(IFrameSplitOperator.IsBool(srcParam)){if(srcParam){this.DestroyPopMinuteChart();this.InitalPopMinuteChart({PopMinuteChart:{Enable:true}});}else{this.DestroyPopMinuteChart();}}break;case JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID:if(param==null)return false;var klineChart=this.ChartPaint[0];if(!klineChart)return false;klineChart.InfoPosition=param;this.Draw();break;case JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE:if(!aryArgs[0])return false;var option=aryArgs[0];if(!IFrameSplitOperator.IsBool(option.Enable))return false;if(option.Enable===false){this.DestroyTooltipDialog();}else{this.DestroyTooltipDialog();this.InitalTooltipDialog(option);}break;case JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE:if(!aryArgs[0])return false;var option=aryArgs[0];if(IFrameSplitOperator.IsBool(option.Enable))this.KLineTooltipConfig.Enable=option.Enable;if(IFrameSplitOperator.IsBool(option.EnableKeyDown))this.KLineTooltipConfig.EnableKeyDown=option.EnableKeyDown;break;case JSCHART_MENU_ID.CMD_MODIFY_INDEX_PARAM:if(param==null)return false;var sendData={e:null,WindowIndex:param,Type:1};this.ShowModifyIndexParamDialog(sendData);break;case JSCHART_MENU_ID.CMD_MODIFY_OVERLAY_INDEX_PARAM:if(param==null)return false;if(!aryArgs[1])return false;var sendData={e:null,WindowIndex:param,Type:2,Identify:aryArgs[1]};this.ShowModifyIndexParamDialog(sendData);break;case JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR:if(srcParam)this.LockCorssCursor(srcParam);break;case JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR:if(this.IsLockCorssCursor())this.UnlockCorssCursor({Draw:true});break;case JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.IsOnlyDrawMinute=srcParam;break;case JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.IsFixXLastTime=srcParam;break;case JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor){this.ChartCorssCursor.IsOnlyDrawKLine=srcParam;this.ChartCorssCursor.IsShowClose=srcParam;}break;case JSCHART_MENU_ID.CMD_CORSS_POINT_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.CorssPointConfig.Enable=srcParam;break;case JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartDragSelectRect)this.ChartDragSelectRect.EnableRButton=srcParam;break;case JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartDragSelectRect)this.ChartDragSelectRect.EnableLButton=srcParam;break;}};this.GetShowIndexMenuData=function(windowIndex,showType){var script=this.WindowIndex[windowIndex];if(!script)return null;var data={Name:script.IsShow?"隐藏指标":"显示指标",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_INDEX_ID,Args:[windowIndex,0]}};return data;};this.GetModifyIndexMenuData=function(windowIndex){var data={Name:"参数修改",Data:{ID:JSCHART_MENU_ID.CMD_MODIFY_INDEX_PARAM,Args:[windowIndex]}};return data;};this.GetShowOverlayIndexMenuData=function(indexGuid,showType){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay||!overlay.OverlayItem||!overlay.OverlayItem.Script)return null;var script=overlay.OverlayItem.Script;var data={Name:script.IsShow?"隐藏指标":"显示指标",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_OVERLAY_INDEX_ID,Args:[indexGuid,0]}};return data;};this.GetModifyOverlayIndexMenuData=function(indexGuid){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay)return null;var data={Name:"参数修改",Data:{ID:JSCHART_MENU_ID.CMD_MODIFY_OVERLAY_INDEX_PARAM,Args:[overlay.WindowIndex,indexGuid]}};return data;};this.GetShowOverlayIndexYAxisMenuData=function(indexGuid,showType){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay||!overlay.OverlayItem||!overlay.OverlayItem.Script)return null;var frame=overlay.OverlayItem.Frame;var data={Name:frame.IsShow?"隐藏Y轴":"显示Y轴",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_OVERLAY_Y_AXIS_ID,Args:[indexGuid,0]}};return data;};this.GetOverlayIndexShareYMenuData=function(indexGuid,showType){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay||!overlay.OverlayItem||!overlay.OverlayItem.Script)return null;var frame=overlay.OverlayItem.Frame;var data={Name:"公用窗口Y轴",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_OVERLAY_SHARE_Y_ID,Args:[indexGuid,0]},Checked:frame.IsShareY};return data;};//点击右键菜单
2177
+ if(IFrameSplitOperator.IsBool(srcParam)){if(srcParam){this.DestroyPopMinuteChart();this.InitalPopMinuteChart({PopMinuteChart:{Enable:true}});}else{this.DestroyPopMinuteChart();}}break;case JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID:if(param==null)return false;var klineChart=this.ChartPaint[0];if(!klineChart)return false;klineChart.InfoPosition=param;this.Draw();break;case JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE:if(!aryArgs[0])return false;var option=aryArgs[0];if(!IFrameSplitOperator.IsBool(option.Enable))return false;if(option.Enable===false){this.DestroyTooltipDialog();}else{this.DestroyTooltipDialog();this.InitalTooltipDialog(option);}break;case JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE:if(!aryArgs[0])return false;var option=aryArgs[0];if(IFrameSplitOperator.IsBool(option.Enable))this.KLineTooltipConfig.Enable=option.Enable;if(IFrameSplitOperator.IsBool(option.EnableKeyDown))this.KLineTooltipConfig.EnableKeyDown=option.EnableKeyDown;break;case JSCHART_MENU_ID.CMD_MODIFY_INDEX_PARAM:if(param==null)return false;var sendData={e:null,WindowIndex:param,Type:1};this.ShowModifyIndexParamDialog(sendData);break;case JSCHART_MENU_ID.CMD_MODIFY_OVERLAY_INDEX_PARAM:if(param==null)return false;if(!aryArgs[1])return false;var sendData={e:null,WindowIndex:param,Type:2,Identify:aryArgs[1]};this.ShowModifyIndexParamDialog(sendData);break;case JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR:if(srcParam)this.LockCorssCursor(srcParam);break;case JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR:if(this.IsLockCorssCursor())this.UnlockCorssCursor({Draw:true});break;case JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.IsOnlyDrawMinute=srcParam;break;case JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.IsFixXLastTime=srcParam;break;case JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor){this.ChartCorssCursor.IsOnlyDrawKLine=srcParam;this.ChartCorssCursor.IsShowClose=srcParam;}break;case JSCHART_MENU_ID.CMD_CORSS_POINT_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.CorssPointConfig.Enable=srcParam;break;case JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartDragSelectRect)this.ChartDragSelectRect.EnableRButton=srcParam;break;case JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartDragSelectRect)this.ChartDragSelectRect.EnableLButton=srcParam;break;case JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID:if(IFrameSplitOperator.IsBool(srcParam))this.EnableXDrag.Bottom=srcParam;break;}};this.GetShowIndexMenuData=function(windowIndex,showType){var script=this.WindowIndex[windowIndex];if(!script)return null;var data={Name:script.IsShow?"隐藏指标":"显示指标",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_INDEX_ID,Args:[windowIndex,0]}};return data;};this.GetModifyIndexMenuData=function(windowIndex){var data={Name:"参数修改",Data:{ID:JSCHART_MENU_ID.CMD_MODIFY_INDEX_PARAM,Args:[windowIndex]}};return data;};this.GetShowOverlayIndexMenuData=function(indexGuid,showType){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay||!overlay.OverlayItem||!overlay.OverlayItem.Script)return null;var script=overlay.OverlayItem.Script;var data={Name:script.IsShow?"隐藏指标":"显示指标",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_OVERLAY_INDEX_ID,Args:[indexGuid,0]}};return data;};this.GetModifyOverlayIndexMenuData=function(indexGuid){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay)return null;var data={Name:"参数修改",Data:{ID:JSCHART_MENU_ID.CMD_MODIFY_OVERLAY_INDEX_PARAM,Args:[overlay.WindowIndex,indexGuid]}};return data;};this.GetShowOverlayIndexYAxisMenuData=function(indexGuid,showType){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay||!overlay.OverlayItem||!overlay.OverlayItem.Script)return null;var frame=overlay.OverlayItem.Frame;var data={Name:frame.IsShow?"隐藏Y轴":"显示Y轴",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_OVERLAY_Y_AXIS_ID,Args:[indexGuid,0]}};return data;};this.GetOverlayIndexShareYMenuData=function(indexGuid,showType){var overlay=this.GetOverlayIndexByIdentify(indexGuid);if(!overlay||!overlay.OverlayItem||!overlay.OverlayItem.Script)return null;var frame=overlay.OverlayItem.Frame;var data={Name:"公用窗口Y轴",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_OVERLAY_SHARE_Y_ID,Args:[indexGuid,0]},Checked:frame.IsShareY};return data;};//点击右键菜单
2176
2178
  this.OnClickRightMenu=function(data){JSConsole.Chart.Log('[JSChartContainer::OnClickRightMenu] ',data);if(!data||!data.Data)return;var cmdID=data.Data.ID;//命令ID
2177
2179
  var aryArgs=data.Data.Args;//参数
2178
2180
  var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MENU_COMMAND);//回调通知外部
@@ -6089,10 +6091,12 @@ if(!auctionData||!auctionData.Data)return;if(!this.GetEventCallback)return;var e
6089
6091
  for(var i=0;i<aryText.length;++i){var item=aryText[i];if(!item.Text)continue;var textWidth=this.Canvas.measureText(item.Text).width+2;if(left+textWidth>right)break;if(item.BGColor)//背景
6090
6092
  {var textHeight=this.Canvas.measureText("擎").width+2;var rtBG={Left:left,Top:bottom-textHeight/2,Width:textWidth,Height:textHeight};this.Canvas.fillStyle=item.BGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top-1,rtBG.Width,rtBG.Height);left+=1;}this.Canvas.fillStyle=item.Color;this.Canvas.fillText(item.Text,left,bottom,textWidth);left+=textWidth;if(IFrameSplitOperator.IsPlusNumber(item.Space))left+=item.Space*pixelRatio;}rtText.Left=left;};this.GetCallAuctionTitleItem=function(item,titleIndex,auctionData){if(item.IsShow===false)return null;if(item.IsVisible===false)return null;if(!item||!item.Data||!item.Data.Data)return null;if(g_ScriptIndexChartFactory.Has(item.DataType))//外部挂接
6091
6093
  {var find=g_ScriptIndexChartFactory.Get(item.DataType);if(find&&find.FormatTitleCallback)return find.FormatTitleCallback(value,item,dataIndex);}};//获取上一个有效数据
6092
- this.GetPreVaildItem=function(data,start){for(var i=start;i>=0;--i){var item=data[i];if(item)return{Item:item,Index:i};}return null;};this.DrawSelectedLine=function(left,bottom,textWidth){this.Canvas.save();var fontHeight=this.GetFontHeight();this.Canvas.strokeStyle=this.SelectedColor;var lineWidth=4;var lineBottom=ToFixedPoint2(lineWidth,bottom+fontHeight/2);this.Canvas.lineWidth=lineWidth;this.Canvas.beginPath();this.Canvas.moveTo(left,lineBottom);this.Canvas.lineTo(left+textWidth,lineBottom);this.Canvas.stroke();this.Canvas.restore();};this.DrawOverlayIndexSingleLine=function(moveonPoint,mouseStatus)//叠加指标1个指标一行
6094
+ this.GetPreVaildItem=function(data,start){for(var i=start;i>=0;--i){var item=data[i];if(item)return{Item:item,Index:i};}return null;};this.DrawSelectedLine=function(left,bottom,textWidth){this.Canvas.save();var fontHeight=this.GetFontHeight();this.Canvas.strokeStyle=this.SelectedColor;var lineWidth=4;var lineBottom=ToFixedPoint2(lineWidth,bottom+fontHeight/2);this.Canvas.lineWidth=lineWidth;this.Canvas.beginPath();this.Canvas.moveTo(left,lineBottom);this.Canvas.lineTo(left+textWidth,lineBottom);this.Canvas.stroke();this.Canvas.restore();};this.FormatOverlayTitle=function(item,overlayItem,titleIndex){if(!item||!item.Data||!item.Data.Data||!item.Name)return null;if(item.IsVisible===false)return null;if(item.Data.Data.length<=0)return null;var value=null;var valueText=null;var aryText=null;if(item.DataType=="StraightLine")//直线只有1个数据
6095
+ {value=item.Data.Data[0];valueText=this.FormatValue(value,item);}else{var index=Math.abs(this.CursorIndex-0.5);index=parseInt(index.toFixed(0));if(this.IsKLineFrame)index=this.CursorIndex;var dataIndex=item.Data.DataOffset+index;if(dataIndex>=item.Data.Data.length)dataIndex=item.Data.Data.length-1;if(dataIndex<0)return null;value=item.Data.Data[dataIndex];if(value==null)return null;if(this.GetEventCallback)//外部处理
6096
+ {var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_OVERLAY_INDEX_OUT_TEXT);if(event){var sendData={Item:item,Index:titleIndex,Data:overlayItem,FrameID:this.Frame.Identify,DataIndex:dataIndex,Value:value,PreventDefault:false,Out:null};event.Callback(event,sendData,this);if(sendData.Out)return sendData.Out;if(sendData.PreventDefault)return sendData.Out;}}if(item.DataType=="MultiReport"){valueText=this.FormatMultiReport(value,item);if(!valueText)return null;}else if(item.DataType=="ChartStackedBar"){aryText=this.FormatStackedBarTitle(value,item);if(!aryText)return null;}else if(item.DataType=="ChartMultiLine")//多线段数据
6097
+ {aryText=this.ForamtMultiLineTitle(dataIndex,item);if(!aryText)return null;}else if(item.DataType=="ChartMultiPoint"){aryText=this.ForamtMultiPointTitle(dataIndex,item);if(!aryText)return null;}else if(item.DataType=="ChartMultiBar"){aryText=this.ForamtMultiBarTitle(dataIndex,item);if(!aryText)return null;}else if(item.DataType=="DRAWKLINE"){aryText=this.FormatKLineTitle(value,item);if(!aryText)return null;}else if(item.DataType=="ChartIndexTitle"){var outTitle=this.FormatIndexTitle(value,item);if(!outTitle)return null;valueText=outTitle.Text;aryText=outTitle.ArrayText;}else if(item.DataType=="MULTI_POINT_LINE"){valueText=this.FormatMultiDataLine(value,item);if(!valueText)return null;}else{valueText=this.FormatValue(value,item);}}return{Text:valueText,ArrayText:aryText};};this.DrawOverlayIndexSingleLine=function(moveonPoint,mouseStatus)//叠加指标1个指标一行
6093
6098
  {var pixelRatio=GetDevicePixelRatio();var border=this.Frame.GetBorder();if(this.Frame.IsHScreen===true){var left=1;var top=2*pixelRatio;var right=this.Frame.ChartBorder.GetHeight();var bottom=this.Frame.ChartBorder.GetWidthEx();}else{var top=border.TopTitle+2*pixelRatio;if(!this.IsShowMainIndexTitle)top=this.Frame.ChartBorder.GetTop()+2*pixelRatio;var left=this.Frame.ChartBorder.GetLeft()+this.MerginLeft;var right=border.Right;var bottom=border.Bottom;}var lineSpace=this.OverlayIndexType.LineSpace*pixelRatio;var x=left,y=top;var fontHeight=GetFontHeight(this.Canvas,this.Font,"擎");y=top+fontHeight/2;var _iteratorNormalCompletion11=true;var _didIteratorError11=false;var _iteratorError11=undefined;try{for(var _iterator11=(0,_getIterator3.default)(this.OverlayIndex),_step11;!(_iteratorNormalCompletion11=(_step11=_iterator11.next()).done);_iteratorNormalCompletion11=true){item=_step11.value;var overlayItem=item[1];var overlayID=item[0];var toolbarInfo={Width:0,YCenter:y,ID:overlayID};this.DrawOverlayToolbar(overlayItem,toolbarInfo,moveonPoint,mouseStatus);if(!overlayItem.IsShowIndexTitle)continue;if(!overlayItem.Frame.IsShowIndexTitle)continue;x=left+toolbarInfo.Width;this.Canvas.font=this.Font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";if(overlayItem.Title&&this.IsShowOverlayIndexName){var textWidth=this.Canvas.measureText(overlayItem.Title).width+2;if(x+textWidth<right){if(this.OverlayIndexType.BGColor){this.Canvas.fillStyle=this.OverlayIndexType.BGColor;var rtBG={Left:x,Top:y-fontHeight/2,Width:textWidth,Height:fontHeight+lineSpace};//保存下标题的坐标
6094
- this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}if(this.IsSelectedChart(overlayID))this.DrawSelectedLine(x,y,textWidth,overlayItem.Title);this.Canvas.fillStyle=this.TitleColor;this.Canvas.fillText(overlayItem.Title,x,y,textWidth);}x+=textWidth;}for(var i=0;i<overlayItem.Data.length;++i){var item=overlayItem.Data[i];if(!item||!item.Data||!item.Data.Data||!item.Name)continue;if(item.IsVisible===false)continue;if(item.Data.Data.length<=0)continue;var value=null;var valueText=null;var aryText=null;if(item.DataType=="StraightLine")//直线只有1个数据
6095
- {value=item.Data.Data[0];valueText=this.FormatValue(value,item);}else{var index=Math.abs(this.CursorIndex-0.5);index=parseInt(index.toFixed(0));if(this.IsKLineFrame)index=this.CursorIndex;var dataIndex=item.Data.DataOffset+index;if(dataIndex>=item.Data.Data.length)dataIndex=item.Data.Data.length-1;if(dataIndex<0)continue;value=item.Data.Data[dataIndex];if(value==null)continue;if(item.DataType=="MultiReport"){valueText=this.FormatMultiReport(value,item);if(!valueText)continue;}else if(item.DataType=="ChartStackedBar"){aryText=this.FormatStackedBarTitle(value,item);if(!aryText)continue;}else if(item.DataType=="ChartMultiPoint"){aryText=this.ForamtMultiPointTitle(dataIndex,item);if(!aryText)continue;}else if(item.DataType=="ChartMultiBar"){aryText=this.ForamtMultiBarTitle(dataIndex,item);if(!aryText)continue;}else if(item.DataType=="DRAWKLINE"){aryText=this.FormatKLineTitle(value,item);if(!aryText)continue;}else if(item.DataType=="ChartIndexTitle"){var outTitle=this.FormatIndexTitle(value,item);if(!outTitle)continue;valueText=outTitle.Text;aryText=outTitle.ArrayText;}else{valueText=this.FormatValue(value,item);}}if(aryText){var text;for(var k=0;k<aryText.length;++k){var titleItem=aryText[k];if(titleItem.Name)text=titleItem.Name+":"+titleItem.Text;else text=titleItem.Text;var textWidth=this.Canvas.measureText(text).width+2;//后空2个像素
6099
+ this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}if(this.IsSelectedChart(overlayID))this.DrawSelectedLine(x,y,textWidth,overlayItem.Title);this.Canvas.fillStyle=this.TitleColor;this.Canvas.fillText(overlayItem.Title,x,y,textWidth);}x+=textWidth;}for(var i=0;i<overlayItem.Data.length;++i){var item=overlayItem.Data[i];var outText=this.FormatOverlayTitle(item,overlayItem,i);if(!outText)continue;var valueText=outText.Text;var aryText=outText.ArrayText;if(aryText){var text;for(var k=0;k<aryText.length;++k){var titleItem=aryText[k];if(titleItem.Name)text=titleItem.Name+":"+titleItem.Text;else text=titleItem.Text;var textWidth=this.Canvas.measureText(text).width+2;//后空2个像素
6096
6100
  if(x+textWidth>right)break;if(IFrameSplitOperator.IsNumber(titleItem.LeftSpace))x+=titleItem.LeftSpace*pixelRatio;if(this.OverlayIndexType.BGColor){this.Canvas.fillStyle=this.OverlayIndexType.BGColor;var rtBG={Left:x,Top:y-fontHeight/2,Width:textWidth,Height:fontHeight+lineSpace};//保存下标题的坐标
6097
6101
  this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}this.Canvas.fillStyle=titleItem.Color;this.Canvas.fillText(text,x,y,textWidth);x+=textWidth;}}else{var text=valueText;if(item.Name){var dyTitle=this.GetDynamicOutName(item.Name,overlayID);if(dyTitle)text=dyTitle+":"+valueText;else text=item.Name+":"+valueText;}var textWidth=this.Canvas.measureText(text).width+2;//后空2个像素
6098
6102
  if(x+textWidth>right)break;if(this.OverlayIndexType.BGColor){this.Canvas.fillStyle=this.OverlayIndexType.BGColor;var rtBG={Left:x,Top:y-fontHeight/2,Width:textWidth,Height:fontHeight+lineSpace};//保存下标题的坐标
@@ -7733,7 +7737,7 @@ if(this.Frame&&this.Frame.SubFrame){for(var i=0;i<this.Frame.SubFrame.length;++i
7733
7737
  for(var i=1;i<this.TitlePaint.length;++i){var item=this.TitlePaint[i];item.OverlayIndex=new _map2.default();}};//周期切换
7734
7738
  this.ChangePeriod=function(period,option){var oldData={Period:this.Period,Right:this.Right,KLineDrawType:this.KLineDrawType,Symbol:this.Symbol};var isChangeKLineDrawType=false;var isReload=false;//是否重新请求数据
7735
7739
  var right=null;//复权
7736
- if(option){if(option.KLine){if(IFrameSplitOperator.IsNumber(option.KLine.DrawType))isChangeKLineDrawType=true;if(IFrameSplitOperator.IsNumber(option.KLine.Right))right=option.KLine.Right;}if(option.Reload==true)isReload=true;};if(this.Period==period&&isReload==false){if(isChangeKLineDrawType)this.ChangeKLineDrawType(option.KLine.DrawType);return;}if(isChangeKLineDrawType)this.ChangeKLineDrawType(option.KLine.DrawType,false);//切换K线类型, 不重绘
7740
+ if(option){if(option.KLine){var item=option.KLine;if(IFrameSplitOperator.IsNumber(item.DrawType))isChangeKLineDrawType=true;if(IFrameSplitOperator.IsNumber(item.Right))right=item.Right;if(IFrameSplitOperator.IsNumber(item.DataWidth))this.KLineSize={DataWidth:item.DataWidth};}if(option.Reload==true)isReload=true;};if(this.Period==period&&isReload==false){if(isChangeKLineDrawType)this.ChangeKLineDrawType(option.KLine.DrawType);return;}if(isChangeKLineDrawType)this.ChangeKLineDrawType(option.KLine.DrawType,false);//切换K线类型, 不重绘
7737
7741
  var isDataTypeChange=true;if(this.SourceData){var isDataTypeChange=false;if(period>CUSTOM_DAY_PERIOD_START&&period<=CUSTOM_DAY_PERIOD_END){if(this.SourceData.DataType!=0)isDataTypeChange=true;}else if(period>CUSTOM_MINUTE_PERIOD_START&&period<=CUSTOM_MINUTE_PERIOD_END||period>CUSTOM_SECOND_PERIOD_START&&period<=CUSTOM_SECOND_PERIOD_END||period>CUSTOM_MILLISECOND_PERIOD_START&&period<=CUSTOM_MILLISECOND_PERIOD_END){if(this.SourceData.DataType!=1)isDataTypeChange=true;else if(ChartData.IsSecondPeriod(period))isDataTypeChange=true;else if(ChartData.IsMilliSecondPeriod(period))isDataTypeChange=true;}else{switch(period){case 0://日线
7738
7742
  case 1://周
7739
7743
  case 2://月
@@ -7925,7 +7929,7 @@ this.UpdateFrameMaxMin();//调整坐标最大 最小值
7925
7929
  this.Frame.SetSizeChage(true);this.Draw();//叠加指标
7926
7930
  for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(var j in item.OverlayIndex){var overlayItem=item.OverlayIndex[j];this.BindOverlayIndexData(overlayItem,i,bindData);}}};//切换股票代码
7927
7931
  this.ChangeSymbol=function(symbol,option){this.CancelAutoUpdate();//先停止定时器
7928
- this.AutoUpdateEvent(false,'KLineChartContainer::ChangeSymbol');this.ClearRectSelect(true);this.ClearCustomKLine();this.ClearKLineBreakPoint();this.ClearKLineCaluate();this.HideTooltip();this.ResetScrollBar();this.ClearIndexRunCount();this.UnlockCorssCursor();this.Frame.ClearYCoordinateMaxMin();this.Symbol=symbol;if(!symbol){this.DrawEmpty();return;}if(option){if(option.KLine){var item=option.KLine;if(IFrameSplitOperator.IsNumber(item.Right))this.Right=item.Right;if(IFrameSplitOperator.IsNumber(item.Period))this.Period=item.Period;}}if(MARKET_SUFFIX_NAME.IsSHSZIndex(symbol))this.Right=0;//指数没有复权
7932
+ this.AutoUpdateEvent(false,'KLineChartContainer::ChangeSymbol');this.ClearRectSelect(true);this.ClearCustomKLine();this.ClearKLineBreakPoint();this.ClearKLineCaluate();this.HideTooltip();this.ResetScrollBar();this.ClearIndexRunCount();this.UnlockCorssCursor();this.Frame.ClearYCoordinateMaxMin();this.Symbol=symbol;if(!symbol){this.DrawEmpty();return;}if(option){if(option.KLine){var item=option.KLine;if(IFrameSplitOperator.IsNumber(item.Right))this.Right=item.Right;if(IFrameSplitOperator.IsNumber(item.Period))this.Period=item.Period;if(IFrameSplitOperator.IsNumber(item.DataWidth))this.KLineSize={DataWidth:item.DataWidth};}}if(MARKET_SUFFIX_NAME.IsSHSZIndex(symbol))this.Right=0;//指数没有复权
7929
7933
  this.ClearIndexPaint();//清空指标
7930
7934
  if(option){if(IFrameSplitOperator.IsNonEmptyArray(option.Windows)){var windows=option.Windows;for(var i=0;i<windows.length;++i){if(i>=this.WindowIndex.length)break;//暂时不支持 动态增加/减少
7931
7935
  var item=windows[i];if(!item)continue;if(item.Script){this.WindowIndex[i]=new ScriptIndex(item.Name,item.Script,item.Args,item);//脚本执行
@@ -8011,7 +8015,7 @@ for(var i=0;i<this.ChartInfo.length;++i){var item=this.ChartInfo[i];if(item&&ite
8011
8015
  for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(item&&item.Symbol)aryOverlaySymbol.push(item.Symbol);}var bBGSpit=false,bShowStockChip=false;if(this.GetExtendChartByClassName("SessionBreaksPaint"))bBGSpit=true;if(this.GetStockChipChart())bShowStockChip=true;//筹码
8012
8016
  var stockChipConfig={Name:'StockChip',ShowType:1,Width:230};//var stockChipConfig={Name:'StockChipPhone', Width:150 }; //手机版筹码
8013
8017
  var bShowCorss=false;//十字光标十字线
8014
- var bCorssDrawKLine=false;var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawKLine=this.ChartCorssCursor.IsOnlyDrawKLine&&this.ChartCorssCursor.IsShowClose;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;}var bPopMinuteChart=false;if(this.PopMinuteChart)bPopMinuteChart=true;var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var kItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+option.CursorIndex;if(dataIndex>=0&&dataIndex<kData.Data.length)kItem=kData.Data[dataIndex];}}var aryMenu=[{Name:"分析周期",SubMenu:[{Name:"日线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[0]},Checked:this.Period==0},{Name:"周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[1]},Checked:this.Period==1},{Name:"双周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[21]},Checked:this.Period==21},{Name:"月线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[2]},Checked:this.Period==2},{Name:"季线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[9]},Checked:this.Period==9},{Name:"半年",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[22]},Checked:this.Period==22},{Name:"年线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[3]},Checked:this.Period==3},{Name:"1分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[4]},Checked:this.Period==4},{Name:"5分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[5]},Checked:this.Period==5},{Name:"15分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[6]},Checked:this.Period==6},{Name:"30分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[7]},Checked:this.Period==7},{Name:"60分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[8]},Checked:this.Period==8},{Name:"2小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[11]},Checked:this.Period==11},{Name:"4小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[12]},Checked:this.Period==12},{Name:"分笔",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[10]},Checked:this.Period==10},{Name:"自定义周期:3分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20003]},Checked:this.Period==20003},{Name:"自定义周期:35分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20035]},Checked:this.Period==20035},{Name:"自定义周期:8日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[40008]},Checked:this.Period==40008}]},{Name:"指标切换",SubMenu:[{Name:"均线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"均线"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BOLL"]}},{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"MACD(粗)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD2"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"VOL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"VOL"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}}]},{Name:"五彩K线",SubMenu:[{Name:"十字星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-十字星"]}},{Name:"早晨之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-早晨之星"]}},{Name:"垂死十字",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-垂死十字"]}},{Name:"三只乌鸦",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-三只乌鸦"]}},{Name:"光脚阴线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-光脚阴线"]}},{Name:"黄昏之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-黄昏之星"]}}]},{Name:"专家系统",SubMenu:[{Name:"BIAS",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BIAS"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-CCI"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-DMI"]}},{Name:"KD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KD"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BOLL"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KDJ"]}}]},{Name:"信息地雷",SubMenu:[{Name:"公告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["公告",!aryKLineInfo.includes("AnnouncementInfo")]},Checked:aryKLineInfo.includes("AnnouncementInfo")},{Name:"业绩预告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["业绩预告",!aryKLineInfo.includes("PforecastInfo")]},Checked:aryKLineInfo.includes("PforecastInfo")},{Name:"调研",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["调研",!aryKLineInfo.includes("ResearchInfo")]},Checked:aryKLineInfo.includes("ResearchInfo")},{Name:"大宗交易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["大宗交易",!aryKLineInfo.includes("BlockTrading")]},Checked:aryKLineInfo.includes("BlockTrading")},{Name:"龙虎榜",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["龙虎榜",!aryKLineInfo.includes("TradeDetail")]},Checked:aryKLineInfo.includes("TradeDetail")},{Name:"互动易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["互动易",!aryKLineInfo.includes("InvestorInfo")]},Checked:aryKLineInfo.includes("InvestorInfo")},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"显示位置",SubMenu:[{Name:"底部",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[1]},Checked:infoPosition===1},{Name:"K线上",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[0]},Checked:infoPosition===0}]}]},{Name:"缺口提示",SubMenu:[{Name:"显示1个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,1]},Checked:priceGap.Enable==true&&priceGap.Count==1},{Name:"显示2个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,2]},Checked:priceGap.Enable==true&&priceGap.Count==2},{Name:"显示3个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,3]},Checked:priceGap.Enable==true&&priceGap.Count==3},{Name:"隐藏缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[false]},Checked:priceGap.Enable==false}]},{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"主图线型",SubMenu:[{Name:"K线(空心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[3]},Checked:klineType==3},{Name:"K线(实心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[0]},Checked:klineType==0},{Name:"美国线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:false}]},Checked:klineType==2&&!bThinAKBar},{Name:"美国线(细)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:true}]},Checked:klineType==2&&bThinAKBar},{Name:"收盘线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[1]},Checked:klineType==1},{Name:"收盘面积",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[4]},Checked:klineType==4},{Name:"K线(空心阳线阴线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[6]},Checked:klineType==6},{Name:"Heikin Ashi",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[11]},Checked:klineType==11},{Name:"Line Break",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[12]},Checked:klineType==12},{Name:"High-low",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[13]},Checked:klineType==13},{Name:"HLC Area",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[15]},Checked:klineType==15}]},{Name:"坐标类型",SubMenu:[{Name:"反转坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{IsReverse:coordinateType==0}]},Checked:coordinateType==1},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"普通坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:0}]},Checked:yCoordinateType==0},{Name:"百分比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:1}]},Checked:yCoordinateType==1},{Name:"对数坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:2}]},Checked:yCoordinateType==2},{Name:"等比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:3}]},Checked:yCoordinateType==3},{Name:"等分坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:4}]},Checked:yCoordinateType==4},{Name:"黄金分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:5}]},Checked:yCoordinateType==5}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:2==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:3==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:4==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:5==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:6==windowCount}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"显示在K线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID,Args:[!bCorssDrawKLine]},Checked:bCorssDrawKLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint}]},{Name:"其他设置",SubMenu:[{Name:"禁止拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[0]},Checked:0==this.DragMode},{Name:"启动拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1]},Checked:1==this.DragMode},{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"背景分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BG_SPLIT_ID,Args:[!bBGSpit]},Checked:bBGSpit},{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"移动筹码图",Data:{ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID,Args:[stockChipConfig.Name,stockChipConfig]},Checked:bShowStockChip},{Name:"双击弹分时图",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID,Args:[!bPopMinuteChart]},Checked:bPopMinuteChart},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"鼠标形状",SubMenu:[{Name:"默认",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["default"]},Checked:this.DefaultCursor=="default"},{Name:"十字线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["crosshair"]},Checked:this.DefaultCursor=="crosshair"}]},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]},{Name:"K线提示框",SubMenu:[{Name:"启用",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{Enable:!this.KLineTooltipConfig.Enable}]},Checked:this.KLineTooltipConfig.Enable},{Name:"键盘左右显示",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{EnableKeyDown:!this.KLineTooltipConfig.EnableKeyDown}]},Checked:this.KLineTooltipConfig.EnableKeyDown}]}]}];//复权
8018
+ var bCorssDrawKLine=false;var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawKLine=this.ChartCorssCursor.IsOnlyDrawKLine&&this.ChartCorssCursor.IsShowClose;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;}var bPopMinuteChart=false;if(this.PopMinuteChart)bPopMinuteChart=true;var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var kItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+option.CursorIndex;if(dataIndex>=0&&dataIndex<kData.Data.length)kItem=kData.Data[dataIndex];}}var aryMenu=[{Name:"分析周期",SubMenu:[{Name:"日线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[0]},Checked:this.Period==0},{Name:"周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[1]},Checked:this.Period==1},{Name:"双周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[21]},Checked:this.Period==21},{Name:"月线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[2]},Checked:this.Period==2},{Name:"季线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[9]},Checked:this.Period==9},{Name:"半年",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[22]},Checked:this.Period==22},{Name:"年线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[3]},Checked:this.Period==3},{Name:"1分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[4]},Checked:this.Period==4},{Name:"5分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[5]},Checked:this.Period==5},{Name:"15分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[6]},Checked:this.Period==6},{Name:"30分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[7]},Checked:this.Period==7},{Name:"60分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[8]},Checked:this.Period==8},{Name:"2小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[11]},Checked:this.Period==11},{Name:"4小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[12]},Checked:this.Period==12},{Name:"分笔",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[10]},Checked:this.Period==10},{Name:"自定义周期:3分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20003]},Checked:this.Period==20003},{Name:"自定义周期:35分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20035]},Checked:this.Period==20035},{Name:"自定义周期:8日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[40008]},Checked:this.Period==40008}]},{Name:"指标切换",SubMenu:[{Name:"均线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"均线"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BOLL"]}},{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"MACD(粗)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD2"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"VOL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"VOL"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}}]},{Name:"五彩K线",SubMenu:[{Name:"十字星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-十字星"]}},{Name:"早晨之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-早晨之星"]}},{Name:"垂死十字",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-垂死十字"]}},{Name:"三只乌鸦",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-三只乌鸦"]}},{Name:"光脚阴线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-光脚阴线"]}},{Name:"黄昏之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-黄昏之星"]}}]},{Name:"专家系统",SubMenu:[{Name:"BIAS",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BIAS"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-CCI"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-DMI"]}},{Name:"KD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KD"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BOLL"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KDJ"]}}]},{Name:"信息地雷",SubMenu:[{Name:"公告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["公告",!aryKLineInfo.includes("AnnouncementInfo")]},Checked:aryKLineInfo.includes("AnnouncementInfo")},{Name:"业绩预告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["业绩预告",!aryKLineInfo.includes("PforecastInfo")]},Checked:aryKLineInfo.includes("PforecastInfo")},{Name:"调研",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["调研",!aryKLineInfo.includes("ResearchInfo")]},Checked:aryKLineInfo.includes("ResearchInfo")},{Name:"大宗交易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["大宗交易",!aryKLineInfo.includes("BlockTrading")]},Checked:aryKLineInfo.includes("BlockTrading")},{Name:"龙虎榜",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["龙虎榜",!aryKLineInfo.includes("TradeDetail")]},Checked:aryKLineInfo.includes("TradeDetail")},{Name:"互动易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["互动易",!aryKLineInfo.includes("InvestorInfo")]},Checked:aryKLineInfo.includes("InvestorInfo")},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"显示位置",SubMenu:[{Name:"底部",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[1]},Checked:infoPosition===1},{Name:"K线上",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[0]},Checked:infoPosition===0}]}]},{Name:"缺口提示",SubMenu:[{Name:"显示1个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,1]},Checked:priceGap.Enable==true&&priceGap.Count==1},{Name:"显示2个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,2]},Checked:priceGap.Enable==true&&priceGap.Count==2},{Name:"显示3个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,3]},Checked:priceGap.Enable==true&&priceGap.Count==3},{Name:"隐藏缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[false]},Checked:priceGap.Enable==false}]},{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"主图线型",SubMenu:[{Name:"K线(空心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[3]},Checked:klineType==3},{Name:"K线(实心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[0]},Checked:klineType==0},{Name:"美国线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:false}]},Checked:klineType==2&&!bThinAKBar},{Name:"美国线(细)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:true}]},Checked:klineType==2&&bThinAKBar},{Name:"收盘线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[1]},Checked:klineType==1},{Name:"收盘面积",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[4]},Checked:klineType==4},{Name:"K线(空心阳线阴线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[6]},Checked:klineType==6},{Name:"Heikin Ashi",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[11]},Checked:klineType==11},{Name:"Line Break",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[12]},Checked:klineType==12},{Name:"High-low",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[13]},Checked:klineType==13},{Name:"HLC Area",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[15]},Checked:klineType==15}]},{Name:"坐标类型",SubMenu:[{Name:"反转坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{IsReverse:coordinateType==0}]},Checked:coordinateType==1},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"普通坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:0}]},Checked:yCoordinateType==0},{Name:"百分比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:1}]},Checked:yCoordinateType==1},{Name:"对数坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:2}]},Checked:yCoordinateType==2},{Name:"等比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:3}]},Checked:yCoordinateType==3},{Name:"等分坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:4}]},Checked:yCoordinateType==4},{Name:"黄金分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:5}]},Checked:yCoordinateType==5}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:2==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:3==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:4==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:5==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:6==windowCount}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"显示在K线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID,Args:[!bCorssDrawKLine]},Checked:bCorssDrawKLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint}]},{Name:"其他设置",SubMenu:[{Name:"禁止拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[0]},Checked:0==this.DragMode},{Name:"启动拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1]},Checked:1==this.DragMode},{Name:"X轴拖动缩放",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[!this.EnableXDrag.Bottom]},Checked:this.EnableXDrag.Bottom},{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"背景分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BG_SPLIT_ID,Args:[!bBGSpit]},Checked:bBGSpit},{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"移动筹码图",Data:{ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID,Args:[stockChipConfig.Name,stockChipConfig]},Checked:bShowStockChip},{Name:"双击弹分时图",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID,Args:[!bPopMinuteChart]},Checked:bPopMinuteChart},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"鼠标形状",SubMenu:[{Name:"默认",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["default"]},Checked:this.DefaultCursor=="default"},{Name:"十字线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["crosshair"]},Checked:this.DefaultCursor=="crosshair"}]},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]},{Name:"K线提示框",SubMenu:[{Name:"启用",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{Enable:!this.KLineTooltipConfig.Enable}]},Checked:this.KLineTooltipConfig.Enable},{Name:"键盘左右显示",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{EnableKeyDown:!this.KLineTooltipConfig.EnableKeyDown}]},Checked:this.KLineTooltipConfig.EnableKeyDown}]}]}];//复权
8015
8019
  if(!MARKET_SUFFIX_NAME.IsSHSZIndex(this.Symbol)&&!MARKET_SUFFIX_NAME.IsBIT(this.Symbol)){var rightMenu={Name:"复权处理",SubMenu:[{Name:"不复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[0]},Checked:0==this.Right},{Name:"前复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[1]},Checked:1==this.Right},{Name:"后复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[2]},Checked:2==this.Right}]};aryMenu.splice(1,0,rightMenu);}//删除菜单
8016
8020
  for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="五彩K线"){if(this.ColorIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除五彩K线",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_COLOR_INDEX_ID}});}}else if(item.Name=="专家系统"){if(this.TradeIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除专家系统",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_TRADE_INDEX_ID}});}}else if(item.Name=="叠加品种"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"取消叠加",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_OVERLAY_SYMBOL_ID}});break;}}}else if(item.Name=="信息地雷"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除所有",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_KLINE_INFO_ID}});break;}}}else if(item.Name=="十字光标"){if(kItem){var bLocked=this.IsLockCorssCursor();if(bLocked)item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR},Checked:bLocked});else item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR,Args:[{KItem:{Date:kItem.Date,Time:kItem.Time},Draw:true}]},Checked:bLocked});}}}return aryMenu;};this.PopupSelectRectMenuV2=function(data,e){var _this27=this;var aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,data.SelectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[data.SelectData]}}];var menuData={Menu:aryMenu,Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this27.OnClickRightMenu(data);};var x=data.X,y=data.Y;this.PopupMenuByRClick(menuData,x,y);};//重新加载画图工具(切换股票|周期)
8017
8021
  this.ReloadChartDrawPicture=function(){this.ChartDrawPicture=[];if(this.SelectChartDrawPicture)this.SelectChartDrawPicture.IsSelected=false;this.SelectChartDrawPicture=null;this.CurrentChartDrawPicture=null;if(this.ChartDrawStorage){this.ChartDrawStorageCache=this.ChartDrawStorage.GetDrawData({Symbol:this.Symbol,Period:this.Period});var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_LOAD_DRAWPICTURE);if(event&&event.Callback){var sendData={Symbol:this.Symbol,Period:this.Period,DrawStorage:this.ChartDrawStorage,ChartDrawStorageCache:this.ChartDrawStorageCache};event.Callback(event,sendData,this);}}};this.CreateChartDrawPictureByStorage=function()//把缓存(this.ChartDrawStorageCache) 画图工具创建出来
@@ -12829,7 +12833,7 @@ this.UIElement.ontouchstart=function(e){_this55.OnTouchStart(e);};this.UIElement
12829
12833
  this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段宽度
12830
12834
  this.LastMouseStatus.MouseOnStatus=null;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash){this.Frame.Draw({IsEnableSplash:this.ChartSplashPaint.IsEnableSplash});this.ChartSplashPaint.Draw();return;}this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
12831
12835
  for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.IsDrawFirst)item.Draw(this.LastMouseStatus);}for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.IsDrawFirst)item.Draw(this.LastMouseStatus);}if(this.GlobalOption.FlashBGCount>0){this.DelayDraw(500);}};this.DelayDraw=function(frequency){var _this56=this;if(typeof this.FlashBGTimer=='number'){clearTimeout(this.FlashBGTimer);this.FlashBGTimer=null;}this.FlashBGTimer=setTimeout(function(){_this56.Draw();},frequency);};this.ResetReportStatus=function(){this.Data.XOffset=0;this.Data.YOffset=0;};this.ResetReportSelectStatus=function(){var chart=this.GetReportChart();if(chart){chart.SelectedRow=-1;chart.SelectedFixedRow=-1;chart.MultiSelectedRow=[];}};this.ClearData=function(){this.SourceData.Data=[];this.Data.Data=[];this.Data.Virtual.Count=0;this.BlockData=new _map2.default();};this.ClearMapStockData=function(){this.MapStockData=new _map2.default();};this.ResetSortStatus=function(){this.SortInfo.Field=-1;this.SortInfo.Sort=0;};this.SetSelectedRow=function(option){var reportChart=this.GetReportChart();if(!reportChart)return false;if(!reportChart.SetSelectedRow(option))return false;this.Draw();};//设置股票列表
12832
- this.SetSymbolList=function(arySymbol,option){this.ClearData();this.ResetReportStatus();this.ResetSortStatus();if(IFrameSplitOperator.IsNonEmptyArray(arySymbol)){for(var i=0;i<arySymbol.length;++i){this.Data.Data.push(arySymbol[i]);}}var chart=this.ChartPaint[0];if(chart)chart.Data=this.Data;this.Draw();};this.ChangeSymbol=function(symbol,option){var _this57=this;this.Symbol=symbol;this.ClearData();this.ResetReportStatus();this.ResetSortStatus();this.ResetReportSelectStatus();if(option){if(IFrameSplitOperator.IsNumber(option.TabSelected)){var chartTab=this.GetTabChart();if(chartTab)chartTab.SelectedTabIndex=option.TabSelected;}if(Array.isArray(option.FixedSymbol)){var chart=this.GetReportChart();if(chart){chart.FixedRowCount=0;this.FixedRowData.Type=1;this.FixedRowData.Symbol=[];var aryData=option.FixedSymbol;for(var i=0;i<aryData.length;++i){var item=aryData[i];this.FixedRowData.Symbol.push(item.Symbol);++chart.FixedRowCount;}this.SetSizeChange(true);}}if(option.SortInfo){var item=option.SortInfo;if(IFrameSplitOperator.IsNumber(item.Field))this.SortInfo.Field=item.Field;if(IFrameSplitOperator.IsNumber(item.Sort))this.SortInfo.Sort=item.Sort;}if(IFrameSplitOperator.IsBool(option.IsReloadStockList)){var requestOption={Callback:null};if(this.Symbol)requestOption.Callback=function(){_this57.RequestMemberListData();};this.MapStockData=new _map2.default();this.RequestStockListData(requestOption);return;}}this.RequestMemberListData();};//更新数据
12836
+ this.SetSymbolList=function(arySymbol,option){this.ClearData();this.ResetReportStatus();this.ResetSortStatus();if(IFrameSplitOperator.IsNonEmptyArray(arySymbol)){for(var i=0;i<arySymbol.length;++i){this.Data.Data.push(arySymbol[i]);}}var chart=this.ChartPaint[0];if(chart)chart.Data=this.Data;this.Draw();};this.ChangeSymbol=function(symbol,option){var _this57=this;this.Symbol=symbol;this.ClearData();this.ResetReportStatus();this.ResetSortStatus();this.ResetReportSelectStatus();if(option){if(IFrameSplitOperator.IsNumber(option.TabSelected)){var chartTab=this.GetTabChart();if(chartTab)chartTab.SelectedTabIndex=option.TabSelected;}if(Array.isArray(option.FixedSymbol)){var chart=this.GetReportChart();if(chart){chart.FixedRowCount=0;this.FixedRowData.Type=1;this.FixedRowData.Symbol=[];var aryData=option.FixedSymbol;for(var i=0;i<aryData.length;++i){var item=aryData[i];this.FixedRowData.Symbol.push(item.Symbol);++chart.FixedRowCount;}this.SetSizeChange(true);}}if(option.SortInfo){var item=option.SortInfo;if(IFrameSplitOperator.IsNumber(item.Field))this.SortInfo.Field=item.Field;if(IFrameSplitOperator.IsNumber(item.Sort))this.SortInfo.Sort=item.Sort;}if(IFrameSplitOperator.IsBool(option.IsReloadStockList)&&option.IsReloadStockList){var requestOption={Callback:null};if(this.Symbol)requestOption.Callback=function(){_this57.RequestMemberListData();};this.MapStockData=new _map2.default();this.RequestStockListData(requestOption);return;}}this.RequestMemberListData();};//更新数据
12833
12837
  this.UpdateFullData=function(data){var arySymbol=[];if(IFrameSplitOperator.IsNonEmptyArray(data.data)){//0=证券代码 1=股票名称
12834
12838
  for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQReportItem();stock.OriginalSymbol=symbol;this.MapStockData.set(symbol,stock);}stock.Symbol=this.GetSymbolNoSuffix(symbol);stock.Name=item[1];this.ReadStockJsonData(stock,item);arySymbol.push(symbol);}}//设置显示数据
12835
12839
  this.Data.Data=[];this.SourceData.Data=[];if(IFrameSplitOperator.IsNonEmptyArray(arySymbol)){for(var i=0;i<arySymbol.length;++i){this.Data.Data.push(arySymbol[i]);this.SourceData.Data.push(arySymbol[i]);}}this.Draw();};//设置全部的数据
@@ -14580,7 +14584,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
14580
14584
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
14581
14585
  * 版本信息输出
14582
14586
  *
14583
- */var HQCHART_VERSION="1.1.14515";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();//把给外界调用的方法暴露出来
14587
+ */var HQCHART_VERSION="1.1.14522";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();//把给外界调用的方法暴露出来
14584
14588
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
14585
14589
  // BaseIndex:BaseIndex,
14586
14590
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14516",
3
+ "version": "1.1.14523",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -2707,6 +2707,8 @@ var JSCHART_EVENT_ID=
2707
2707
  ON_CLICK_DEAL_ROW:165,
2708
2708
  ON_RCLICK_DEAL_ROW:166,
2709
2709
  ON_DBCLICK_DEAL_ROW:167,
2710
+
2711
+ ON_FORMAT_OVERLAY_INDEX_OUT_TEXT:168, //格式化叠指标标题
2710
2712
  }
2711
2713
 
2712
2714
  var JSCHART_OPERATOR_ID=
@@ -2896,6 +2898,7 @@ var JSCHART_MENU_ID=
2896
2898
 
2897
2899
  CMD_RBUTTON_SELECT_RECT_ID:53, //右键区间选择
2898
2900
  CMD_LBUTTON_SELECT_RECT_ID:54, //左键区间选择
2901
+ CMD_ENABLE_XDRAG_BOTTOM_ID:55, //X轴拖动缩放
2899
2902
 
2900
2903
 
2901
2904
 
@@ -9090,6 +9093,23 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9090
9093
  else this.Draw();
9091
9094
  }
9092
9095
 
9096
+ this.SetSplashScreen=function(option)
9097
+ {
9098
+ if (!option) return;
9099
+
9100
+ if (IFrameSplitOperator.IsBool(option.Enable)) this.ChartSplashPaint.EnableSplash(option.Enable);
9101
+ if (option.Title) this.ChartSplashPaint.SetTitle(option.Title);
9102
+
9103
+ if (option.Draw) this.Draw();
9104
+ }
9105
+
9106
+ this.IsEnableSplashScreen=function()
9107
+ {
9108
+ if (!this.ChartSplashPaint) return false;
9109
+
9110
+ return this.ChartSplashPaint.IsEnableSplash;
9111
+ }
9112
+
9093
9113
  //设置指标窗口属性 windowItem=SetOption.Windows[i], frameItem=SetOption.Frames[i];
9094
9114
  this.SetSubFrameAttribute=function(subFrame, windowItem, frameItem)
9095
9115
  {
@@ -10414,6 +10434,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10414
10434
  case JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID:
10415
10435
  if (IFrameSplitOperator.IsBool(srcParam) && this.ChartDragSelectRect) this.ChartDragSelectRect.EnableLButton=srcParam;
10416
10436
  break;
10437
+ case JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID:
10438
+ if (IFrameSplitOperator.IsBool(srcParam)) this.EnableXDrag.Bottom=srcParam;
10439
+ break;
10417
10440
  }
10418
10441
  }
10419
10442
 
@@ -59243,6 +59266,101 @@ function DynamicChartTitlePainting()
59243
59266
  this.Canvas.restore();
59244
59267
  }
59245
59268
 
59269
+ this.FormatOverlayTitle=function(item, overlayItem, titleIndex)
59270
+ {
59271
+ if (!item || !item.Data || !item.Data.Data || !item.Name) return null;
59272
+ if (item.IsVisible===false) return null;
59273
+ if (item.Data.Data.length<=0) return null;
59274
+
59275
+ var value=null;
59276
+ var valueText=null;
59277
+ var aryText=null;
59278
+ if (item.DataType=="StraightLine") //直线只有1个数据
59279
+ {
59280
+ value=item.Data.Data[0];
59281
+ valueText=this.FormatValue(value,item);
59282
+ }
59283
+ else
59284
+ {
59285
+ var index=Math.abs(this.CursorIndex-0.5);
59286
+ index=parseInt(index.toFixed(0));
59287
+ if (this.IsKLineFrame) index=this.CursorIndex;
59288
+ var dataIndex=item.Data.DataOffset+index;
59289
+ if (dataIndex>=item.Data.Data.length) dataIndex=item.Data.Data.length-1;
59290
+ if (dataIndex<0) return null;
59291
+
59292
+ value=item.Data.Data[dataIndex];
59293
+ if (value==null) return null;
59294
+
59295
+ if (this.GetEventCallback) //外部处理
59296
+ {
59297
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_OVERLAY_INDEX_OUT_TEXT);
59298
+ if (event)
59299
+ {
59300
+ var sendData=
59301
+ {
59302
+ Item:item, Index:titleIndex, Data:overlayItem, FrameID:this.Frame.Identify,
59303
+ DataIndex:dataIndex, Value:value, PreventDefault:false, Out:null
59304
+ };
59305
+ event.Callback(event,sendData,this);
59306
+ if (sendData.Out) return sendData.Out;
59307
+ if (sendData.PreventDefault) return sendData.Out;
59308
+ }
59309
+ }
59310
+
59311
+ if (item.DataType=="MultiReport")
59312
+ {
59313
+ valueText=this.FormatMultiReport(value,item);
59314
+ if (!valueText) return null;
59315
+ }
59316
+ else if (item.DataType=="ChartStackedBar")
59317
+ {
59318
+ aryText=this.FormatStackedBarTitle(value, item);
59319
+ if (!aryText) return null;
59320
+ }
59321
+ else if (item.DataType=="ChartMultiLine") //多线段数据
59322
+ {
59323
+ aryText=this.ForamtMultiLineTitle(dataIndex, item);
59324
+ if (!aryText) return null;
59325
+ }
59326
+ else if (item.DataType=="ChartMultiPoint")
59327
+ {
59328
+ aryText=this.ForamtMultiPointTitle(dataIndex, item);
59329
+ if (!aryText) return null;
59330
+ }
59331
+ else if (item.DataType=="ChartMultiBar")
59332
+ {
59333
+ aryText=this.ForamtMultiBarTitle(dataIndex, item);
59334
+ if (!aryText) return null;
59335
+ }
59336
+ else if (item.DataType=="DRAWKLINE")
59337
+ {
59338
+ aryText=this.FormatKLineTitle(value, item);
59339
+ if (!aryText) return null;
59340
+ }
59341
+ else if (item.DataType=="ChartIndexTitle")
59342
+ {
59343
+ var outTitle=this.FormatIndexTitle(value, item);
59344
+ if (!outTitle) return null;
59345
+
59346
+ valueText=outTitle.Text;
59347
+ aryText=outTitle.ArrayText;
59348
+ }
59349
+ else if (item.DataType=="MULTI_POINT_LINE")
59350
+ {
59351
+ valueText=this.FormatMultiDataLine(value, item);
59352
+ if (!valueText) return null;
59353
+ }
59354
+ else
59355
+ {
59356
+ valueText=this.FormatValue(value,item);
59357
+ }
59358
+ }
59359
+
59360
+
59361
+ return { Text:valueText, ArrayText:aryText };
59362
+ }
59363
+
59246
59364
  this.DrawOverlayIndexSingleLine=function(moveonPoint, mouseStatus) //叠加指标1个指标一行
59247
59365
  {
59248
59366
  var pixelRatio=GetDevicePixelRatio();
@@ -59305,68 +59423,11 @@ function DynamicChartTitlePainting()
59305
59423
  for(var i=0; i<overlayItem.Data.length; ++i)
59306
59424
  {
59307
59425
  var item=overlayItem.Data[i];
59308
- if (!item || !item.Data || !item.Data.Data || !item.Name) continue;
59309
- if (item.IsVisible===false) continue;
59310
- if (item.Data.Data.length<=0) continue;
59311
-
59312
- var value=null;
59313
- var valueText=null;
59314
- var aryText=null;
59315
- if (item.DataType=="StraightLine") //直线只有1个数据
59316
- {
59317
- value=item.Data.Data[0];
59318
- valueText=this.FormatValue(value,item);
59319
- }
59320
- else
59321
- {
59322
- var index=Math.abs(this.CursorIndex-0.5);
59323
- index=parseInt(index.toFixed(0));
59324
- if (this.IsKLineFrame) index=this.CursorIndex;
59325
- var dataIndex=item.Data.DataOffset+index;
59326
- if (dataIndex>=item.Data.Data.length) dataIndex=item.Data.Data.length-1;
59327
- if (dataIndex<0) continue;
59426
+ var outText=this.FormatOverlayTitle(item,overlayItem,i);
59427
+ if (!outText) continue;
59328
59428
 
59329
- value=item.Data.Data[dataIndex];
59330
- if (value==null) continue;
59331
-
59332
- if (item.DataType=="MultiReport")
59333
- {
59334
- valueText=this.FormatMultiReport(value,item);
59335
- if (!valueText) continue;
59336
- }
59337
- else if (item.DataType=="ChartStackedBar")
59338
- {
59339
- aryText=this.FormatStackedBarTitle(value, item);
59340
- if (!aryText) continue;
59341
- }
59342
- else if (item.DataType=="ChartMultiPoint")
59343
- {
59344
- aryText=this.ForamtMultiPointTitle(dataIndex, item);
59345
- if (!aryText) continue;
59346
- }
59347
- else if (item.DataType=="ChartMultiBar")
59348
- {
59349
- aryText=this.ForamtMultiBarTitle(dataIndex, item);
59350
- if (!aryText) continue;
59351
- }
59352
- else if (item.DataType=="DRAWKLINE")
59353
- {
59354
- aryText=this.FormatKLineTitle(value, item);
59355
- if (!aryText) continue;
59356
- }
59357
- else if (item.DataType=="ChartIndexTitle")
59358
- {
59359
- var outTitle=this.FormatIndexTitle(value, item);
59360
- if (!outTitle) continue;
59361
-
59362
- valueText=outTitle.Text;
59363
- aryText=outTitle.ArrayText;
59364
- }
59365
- else
59366
- {
59367
- valueText=this.FormatValue(value,item);
59368
- }
59369
- }
59429
+ var valueText=outText.Text;
59430
+ var aryText=outText.ArrayText;
59370
59431
 
59371
59432
  if (aryText)
59372
59433
  {
@@ -79139,8 +79200,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79139
79200
  {
79140
79201
  if (option.KLine)
79141
79202
  {
79142
- if (IFrameSplitOperator.IsNumber(option.KLine.DrawType)) isChangeKLineDrawType=true;
79143
- if (IFrameSplitOperator.IsNumber(option.KLine.Right)) right=option.KLine.Right;
79203
+ var item=option.KLine;
79204
+ if (IFrameSplitOperator.IsNumber(item.DrawType)) isChangeKLineDrawType=true;
79205
+ if (IFrameSplitOperator.IsNumber(item.Right)) right=item.Right;
79206
+ if (IFrameSplitOperator.IsNumber(item.DataWidth)) this.KLineSize={ DataWidth:item.DataWidth };
79144
79207
  }
79145
79208
 
79146
79209
  if (option.Reload==true) isReload=true;
@@ -80696,6 +80759,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
80696
80759
  var item=option.KLine;
80697
80760
  if (IFrameSplitOperator.IsNumber(item.Right)) this.Right=item.Right;
80698
80761
  if (IFrameSplitOperator.IsNumber(item.Period)) this.Period=item.Period;
80762
+ if (IFrameSplitOperator.IsNumber(item.DataWidth)) this.KLineSize={ DataWidth:item.DataWidth };
80699
80763
  }
80700
80764
  }
80701
80765
 
@@ -81763,6 +81827,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
81763
81827
 
81764
81828
  { Name:"禁止拖拽", Data:{ ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID, Args:[0]}, Checked:0==this.DragMode },
81765
81829
  { Name:"启动拖拽", Data:{ ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID, Args:[1]}, Checked:1==this.DragMode },
81830
+ { Name:"X轴拖动缩放", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID, Args:[!this.EnableXDrag.Bottom]}, Checked:this.EnableXDrag.Bottom },
81766
81831
  { Name:"左键区间选择", Data:{ ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID, Args:[!bLButtonSelectRect]}, Checked:bLButtonSelectRect },
81767
81832
  { Name:"右键区间选择", Data:{ ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID, Args:[!bRButtonSelectRect]}, Checked:bRButtonSelectRect },
81768
81833
  { Name:JSPopMenu.SEPARATOR_LINE_NAME },
@@ -81773,7 +81838,6 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
81773
81838
 
81774
81839
  { Name:"移动筹码图", Data:{ ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID, Args:[stockChipConfig.Name, stockChipConfig]}, Checked:bShowStockChip},
81775
81840
 
81776
-
81777
81841
 
81778
81842
  { Name:"双击弹分时图", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID, Args:[!bPopMinuteChart]}, Checked:bPopMinuteChart},
81779
81843
 
@@ -960,7 +960,7 @@ function JSReportChartContainer(uielement)
960
960
  if (IFrameSplitOperator.IsNumber(item.Sort)) this.SortInfo.Sort=item.Sort;
961
961
  }
962
962
 
963
- if (IFrameSplitOperator.IsBool(option.IsReloadStockList))
963
+ if (IFrameSplitOperator.IsBool(option.IsReloadStockList) && option.IsReloadStockList)
964
964
  {
965
965
  var requestOption={ Callback:null };
966
966
  if (this.Symbol) requestOption.Callback=()=>{ this.RequestMemberListData(); };
@@ -6632,6 +6632,8 @@ var JSCHART_EVENT_ID=
6632
6632
  ON_CLICK_DEAL_ROW:165,
6633
6633
  ON_RCLICK_DEAL_ROW:166,
6634
6634
  ON_DBCLICK_DEAL_ROW:167,
6635
+
6636
+ ON_FORMAT_OVERLAY_INDEX_OUT_TEXT:168, //格式化叠指标标题
6635
6637
  }
6636
6638
 
6637
6639
  var JSCHART_OPERATOR_ID=
@@ -6821,6 +6823,7 @@ var JSCHART_MENU_ID=
6821
6823
 
6822
6824
  CMD_RBUTTON_SELECT_RECT_ID:53, //右键区间选择
6823
6825
  CMD_LBUTTON_SELECT_RECT_ID:54, //左键区间选择
6826
+ CMD_ENABLE_XDRAG_BOTTOM_ID:55, //X轴拖动缩放
6824
6827
 
6825
6828
 
6826
6829
 
@@ -13015,6 +13018,23 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
13015
13018
  else this.Draw();
13016
13019
  }
13017
13020
 
13021
+ this.SetSplashScreen=function(option)
13022
+ {
13023
+ if (!option) return;
13024
+
13025
+ if (IFrameSplitOperator.IsBool(option.Enable)) this.ChartSplashPaint.EnableSplash(option.Enable);
13026
+ if (option.Title) this.ChartSplashPaint.SetTitle(option.Title);
13027
+
13028
+ if (option.Draw) this.Draw();
13029
+ }
13030
+
13031
+ this.IsEnableSplashScreen=function()
13032
+ {
13033
+ if (!this.ChartSplashPaint) return false;
13034
+
13035
+ return this.ChartSplashPaint.IsEnableSplash;
13036
+ }
13037
+
13018
13038
  //设置指标窗口属性 windowItem=SetOption.Windows[i], frameItem=SetOption.Frames[i];
13019
13039
  this.SetSubFrameAttribute=function(subFrame, windowItem, frameItem)
13020
13040
  {
@@ -14339,6 +14359,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
14339
14359
  case JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID:
14340
14360
  if (IFrameSplitOperator.IsBool(srcParam) && this.ChartDragSelectRect) this.ChartDragSelectRect.EnableLButton=srcParam;
14341
14361
  break;
14362
+ case JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID:
14363
+ if (IFrameSplitOperator.IsBool(srcParam)) this.EnableXDrag.Bottom=srcParam;
14364
+ break;
14342
14365
  }
14343
14366
  }
14344
14367
 
@@ -63168,6 +63191,101 @@ function DynamicChartTitlePainting()
63168
63191
  this.Canvas.restore();
63169
63192
  }
63170
63193
 
63194
+ this.FormatOverlayTitle=function(item, overlayItem, titleIndex)
63195
+ {
63196
+ if (!item || !item.Data || !item.Data.Data || !item.Name) return null;
63197
+ if (item.IsVisible===false) return null;
63198
+ if (item.Data.Data.length<=0) return null;
63199
+
63200
+ var value=null;
63201
+ var valueText=null;
63202
+ var aryText=null;
63203
+ if (item.DataType=="StraightLine") //直线只有1个数据
63204
+ {
63205
+ value=item.Data.Data[0];
63206
+ valueText=this.FormatValue(value,item);
63207
+ }
63208
+ else
63209
+ {
63210
+ var index=Math.abs(this.CursorIndex-0.5);
63211
+ index=parseInt(index.toFixed(0));
63212
+ if (this.IsKLineFrame) index=this.CursorIndex;
63213
+ var dataIndex=item.Data.DataOffset+index;
63214
+ if (dataIndex>=item.Data.Data.length) dataIndex=item.Data.Data.length-1;
63215
+ if (dataIndex<0) return null;
63216
+
63217
+ value=item.Data.Data[dataIndex];
63218
+ if (value==null) return null;
63219
+
63220
+ if (this.GetEventCallback) //外部处理
63221
+ {
63222
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_OVERLAY_INDEX_OUT_TEXT);
63223
+ if (event)
63224
+ {
63225
+ var sendData=
63226
+ {
63227
+ Item:item, Index:titleIndex, Data:overlayItem, FrameID:this.Frame.Identify,
63228
+ DataIndex:dataIndex, Value:value, PreventDefault:false, Out:null
63229
+ };
63230
+ event.Callback(event,sendData,this);
63231
+ if (sendData.Out) return sendData.Out;
63232
+ if (sendData.PreventDefault) return sendData.Out;
63233
+ }
63234
+ }
63235
+
63236
+ if (item.DataType=="MultiReport")
63237
+ {
63238
+ valueText=this.FormatMultiReport(value,item);
63239
+ if (!valueText) return null;
63240
+ }
63241
+ else if (item.DataType=="ChartStackedBar")
63242
+ {
63243
+ aryText=this.FormatStackedBarTitle(value, item);
63244
+ if (!aryText) return null;
63245
+ }
63246
+ else if (item.DataType=="ChartMultiLine") //多线段数据
63247
+ {
63248
+ aryText=this.ForamtMultiLineTitle(dataIndex, item);
63249
+ if (!aryText) return null;
63250
+ }
63251
+ else if (item.DataType=="ChartMultiPoint")
63252
+ {
63253
+ aryText=this.ForamtMultiPointTitle(dataIndex, item);
63254
+ if (!aryText) return null;
63255
+ }
63256
+ else if (item.DataType=="ChartMultiBar")
63257
+ {
63258
+ aryText=this.ForamtMultiBarTitle(dataIndex, item);
63259
+ if (!aryText) return null;
63260
+ }
63261
+ else if (item.DataType=="DRAWKLINE")
63262
+ {
63263
+ aryText=this.FormatKLineTitle(value, item);
63264
+ if (!aryText) return null;
63265
+ }
63266
+ else if (item.DataType=="ChartIndexTitle")
63267
+ {
63268
+ var outTitle=this.FormatIndexTitle(value, item);
63269
+ if (!outTitle) return null;
63270
+
63271
+ valueText=outTitle.Text;
63272
+ aryText=outTitle.ArrayText;
63273
+ }
63274
+ else if (item.DataType=="MULTI_POINT_LINE")
63275
+ {
63276
+ valueText=this.FormatMultiDataLine(value, item);
63277
+ if (!valueText) return null;
63278
+ }
63279
+ else
63280
+ {
63281
+ valueText=this.FormatValue(value,item);
63282
+ }
63283
+ }
63284
+
63285
+
63286
+ return { Text:valueText, ArrayText:aryText };
63287
+ }
63288
+
63171
63289
  this.DrawOverlayIndexSingleLine=function(moveonPoint, mouseStatus) //叠加指标1个指标一行
63172
63290
  {
63173
63291
  var pixelRatio=GetDevicePixelRatio();
@@ -63230,68 +63348,11 @@ function DynamicChartTitlePainting()
63230
63348
  for(var i=0; i<overlayItem.Data.length; ++i)
63231
63349
  {
63232
63350
  var item=overlayItem.Data[i];
63233
- if (!item || !item.Data || !item.Data.Data || !item.Name) continue;
63234
- if (item.IsVisible===false) continue;
63235
- if (item.Data.Data.length<=0) continue;
63236
-
63237
- var value=null;
63238
- var valueText=null;
63239
- var aryText=null;
63240
- if (item.DataType=="StraightLine") //直线只有1个数据
63241
- {
63242
- value=item.Data.Data[0];
63243
- valueText=this.FormatValue(value,item);
63244
- }
63245
- else
63246
- {
63247
- var index=Math.abs(this.CursorIndex-0.5);
63248
- index=parseInt(index.toFixed(0));
63249
- if (this.IsKLineFrame) index=this.CursorIndex;
63250
- var dataIndex=item.Data.DataOffset+index;
63251
- if (dataIndex>=item.Data.Data.length) dataIndex=item.Data.Data.length-1;
63252
- if (dataIndex<0) continue;
63351
+ var outText=this.FormatOverlayTitle(item,overlayItem,i);
63352
+ if (!outText) continue;
63253
63353
 
63254
- value=item.Data.Data[dataIndex];
63255
- if (value==null) continue;
63256
-
63257
- if (item.DataType=="MultiReport")
63258
- {
63259
- valueText=this.FormatMultiReport(value,item);
63260
- if (!valueText) continue;
63261
- }
63262
- else if (item.DataType=="ChartStackedBar")
63263
- {
63264
- aryText=this.FormatStackedBarTitle(value, item);
63265
- if (!aryText) continue;
63266
- }
63267
- else if (item.DataType=="ChartMultiPoint")
63268
- {
63269
- aryText=this.ForamtMultiPointTitle(dataIndex, item);
63270
- if (!aryText) continue;
63271
- }
63272
- else if (item.DataType=="ChartMultiBar")
63273
- {
63274
- aryText=this.ForamtMultiBarTitle(dataIndex, item);
63275
- if (!aryText) continue;
63276
- }
63277
- else if (item.DataType=="DRAWKLINE")
63278
- {
63279
- aryText=this.FormatKLineTitle(value, item);
63280
- if (!aryText) continue;
63281
- }
63282
- else if (item.DataType=="ChartIndexTitle")
63283
- {
63284
- var outTitle=this.FormatIndexTitle(value, item);
63285
- if (!outTitle) continue;
63286
-
63287
- valueText=outTitle.Text;
63288
- aryText=outTitle.ArrayText;
63289
- }
63290
- else
63291
- {
63292
- valueText=this.FormatValue(value,item);
63293
- }
63294
- }
63354
+ var valueText=outText.Text;
63355
+ var aryText=outText.ArrayText;
63295
63356
 
63296
63357
  if (aryText)
63297
63358
  {
@@ -83064,8 +83125,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
83064
83125
  {
83065
83126
  if (option.KLine)
83066
83127
  {
83067
- if (IFrameSplitOperator.IsNumber(option.KLine.DrawType)) isChangeKLineDrawType=true;
83068
- if (IFrameSplitOperator.IsNumber(option.KLine.Right)) right=option.KLine.Right;
83128
+ var item=option.KLine;
83129
+ if (IFrameSplitOperator.IsNumber(item.DrawType)) isChangeKLineDrawType=true;
83130
+ if (IFrameSplitOperator.IsNumber(item.Right)) right=item.Right;
83131
+ if (IFrameSplitOperator.IsNumber(item.DataWidth)) this.KLineSize={ DataWidth:item.DataWidth };
83069
83132
  }
83070
83133
 
83071
83134
  if (option.Reload==true) isReload=true;
@@ -84621,6 +84684,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84621
84684
  var item=option.KLine;
84622
84685
  if (IFrameSplitOperator.IsNumber(item.Right)) this.Right=item.Right;
84623
84686
  if (IFrameSplitOperator.IsNumber(item.Period)) this.Period=item.Period;
84687
+ if (IFrameSplitOperator.IsNumber(item.DataWidth)) this.KLineSize={ DataWidth:item.DataWidth };
84624
84688
  }
84625
84689
  }
84626
84690
 
@@ -85688,6 +85752,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
85688
85752
 
85689
85753
  { Name:"禁止拖拽", Data:{ ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID, Args:[0]}, Checked:0==this.DragMode },
85690
85754
  { Name:"启动拖拽", Data:{ ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID, Args:[1]}, Checked:1==this.DragMode },
85755
+ { Name:"X轴拖动缩放", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID, Args:[!this.EnableXDrag.Bottom]}, Checked:this.EnableXDrag.Bottom },
85691
85756
  { Name:"左键区间选择", Data:{ ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID, Args:[!bLButtonSelectRect]}, Checked:bLButtonSelectRect },
85692
85757
  { Name:"右键区间选择", Data:{ ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID, Args:[!bRButtonSelectRect]}, Checked:bRButtonSelectRect },
85693
85758
  { Name:JSPopMenu.SEPARATOR_LINE_NAME },
@@ -85698,7 +85763,6 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
85698
85763
 
85699
85764
  { Name:"移动筹码图", Data:{ ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID, Args:[stockChipConfig.Name, stockChipConfig]}, Checked:bShowStockChip},
85700
85765
 
85701
-
85702
85766
 
85703
85767
  { Name:"双击弹分时图", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID, Args:[!bPopMinuteChart]}, Checked:bPopMinuteChart},
85704
85768
 
@@ -132759,7 +132823,7 @@ function JSReportChartContainer(uielement)
132759
132823
  if (IFrameSplitOperator.IsNumber(item.Sort)) this.SortInfo.Sort=item.Sort;
132760
132824
  }
132761
132825
 
132762
- if (IFrameSplitOperator.IsBool(option.IsReloadStockList))
132826
+ if (IFrameSplitOperator.IsBool(option.IsReloadStockList) && option.IsReloadStockList)
132763
132827
  {
132764
132828
  var requestOption={ Callback:null };
132765
132829
  if (this.Symbol) requestOption.Callback=()=>{ this.RequestMemberListData(); };
@@ -144582,7 +144646,7 @@ function ScrollBarBGChart()
144582
144646
 
144583
144647
 
144584
144648
 
144585
- var HQCHART_VERSION="1.1.14515";
144649
+ var HQCHART_VERSION="1.1.14522";
144586
144650
 
144587
144651
  function PrintHQChartVersion()
144588
144652
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14515";
8
+ var HQCHART_VERSION="1.1.14522";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -6676,6 +6676,8 @@ var JSCHART_EVENT_ID=
6676
6676
  ON_CLICK_DEAL_ROW:165,
6677
6677
  ON_RCLICK_DEAL_ROW:166,
6678
6678
  ON_DBCLICK_DEAL_ROW:167,
6679
+
6680
+ ON_FORMAT_OVERLAY_INDEX_OUT_TEXT:168, //格式化叠指标标题
6679
6681
  }
6680
6682
 
6681
6683
  var JSCHART_OPERATOR_ID=
@@ -6865,6 +6867,7 @@ var JSCHART_MENU_ID=
6865
6867
 
6866
6868
  CMD_RBUTTON_SELECT_RECT_ID:53, //右键区间选择
6867
6869
  CMD_LBUTTON_SELECT_RECT_ID:54, //左键区间选择
6870
+ CMD_ENABLE_XDRAG_BOTTOM_ID:55, //X轴拖动缩放
6868
6871
 
6869
6872
 
6870
6873
 
@@ -13059,6 +13062,23 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
13059
13062
  else this.Draw();
13060
13063
  }
13061
13064
 
13065
+ this.SetSplashScreen=function(option)
13066
+ {
13067
+ if (!option) return;
13068
+
13069
+ if (IFrameSplitOperator.IsBool(option.Enable)) this.ChartSplashPaint.EnableSplash(option.Enable);
13070
+ if (option.Title) this.ChartSplashPaint.SetTitle(option.Title);
13071
+
13072
+ if (option.Draw) this.Draw();
13073
+ }
13074
+
13075
+ this.IsEnableSplashScreen=function()
13076
+ {
13077
+ if (!this.ChartSplashPaint) return false;
13078
+
13079
+ return this.ChartSplashPaint.IsEnableSplash;
13080
+ }
13081
+
13062
13082
  //设置指标窗口属性 windowItem=SetOption.Windows[i], frameItem=SetOption.Frames[i];
13063
13083
  this.SetSubFrameAttribute=function(subFrame, windowItem, frameItem)
13064
13084
  {
@@ -14383,6 +14403,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
14383
14403
  case JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID:
14384
14404
  if (IFrameSplitOperator.IsBool(srcParam) && this.ChartDragSelectRect) this.ChartDragSelectRect.EnableLButton=srcParam;
14385
14405
  break;
14406
+ case JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID:
14407
+ if (IFrameSplitOperator.IsBool(srcParam)) this.EnableXDrag.Bottom=srcParam;
14408
+ break;
14386
14409
  }
14387
14410
  }
14388
14411
 
@@ -63212,6 +63235,101 @@ function DynamicChartTitlePainting()
63212
63235
  this.Canvas.restore();
63213
63236
  }
63214
63237
 
63238
+ this.FormatOverlayTitle=function(item, overlayItem, titleIndex)
63239
+ {
63240
+ if (!item || !item.Data || !item.Data.Data || !item.Name) return null;
63241
+ if (item.IsVisible===false) return null;
63242
+ if (item.Data.Data.length<=0) return null;
63243
+
63244
+ var value=null;
63245
+ var valueText=null;
63246
+ var aryText=null;
63247
+ if (item.DataType=="StraightLine") //直线只有1个数据
63248
+ {
63249
+ value=item.Data.Data[0];
63250
+ valueText=this.FormatValue(value,item);
63251
+ }
63252
+ else
63253
+ {
63254
+ var index=Math.abs(this.CursorIndex-0.5);
63255
+ index=parseInt(index.toFixed(0));
63256
+ if (this.IsKLineFrame) index=this.CursorIndex;
63257
+ var dataIndex=item.Data.DataOffset+index;
63258
+ if (dataIndex>=item.Data.Data.length) dataIndex=item.Data.Data.length-1;
63259
+ if (dataIndex<0) return null;
63260
+
63261
+ value=item.Data.Data[dataIndex];
63262
+ if (value==null) return null;
63263
+
63264
+ if (this.GetEventCallback) //外部处理
63265
+ {
63266
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_OVERLAY_INDEX_OUT_TEXT);
63267
+ if (event)
63268
+ {
63269
+ var sendData=
63270
+ {
63271
+ Item:item, Index:titleIndex, Data:overlayItem, FrameID:this.Frame.Identify,
63272
+ DataIndex:dataIndex, Value:value, PreventDefault:false, Out:null
63273
+ };
63274
+ event.Callback(event,sendData,this);
63275
+ if (sendData.Out) return sendData.Out;
63276
+ if (sendData.PreventDefault) return sendData.Out;
63277
+ }
63278
+ }
63279
+
63280
+ if (item.DataType=="MultiReport")
63281
+ {
63282
+ valueText=this.FormatMultiReport(value,item);
63283
+ if (!valueText) return null;
63284
+ }
63285
+ else if (item.DataType=="ChartStackedBar")
63286
+ {
63287
+ aryText=this.FormatStackedBarTitle(value, item);
63288
+ if (!aryText) return null;
63289
+ }
63290
+ else if (item.DataType=="ChartMultiLine") //多线段数据
63291
+ {
63292
+ aryText=this.ForamtMultiLineTitle(dataIndex, item);
63293
+ if (!aryText) return null;
63294
+ }
63295
+ else if (item.DataType=="ChartMultiPoint")
63296
+ {
63297
+ aryText=this.ForamtMultiPointTitle(dataIndex, item);
63298
+ if (!aryText) return null;
63299
+ }
63300
+ else if (item.DataType=="ChartMultiBar")
63301
+ {
63302
+ aryText=this.ForamtMultiBarTitle(dataIndex, item);
63303
+ if (!aryText) return null;
63304
+ }
63305
+ else if (item.DataType=="DRAWKLINE")
63306
+ {
63307
+ aryText=this.FormatKLineTitle(value, item);
63308
+ if (!aryText) return null;
63309
+ }
63310
+ else if (item.DataType=="ChartIndexTitle")
63311
+ {
63312
+ var outTitle=this.FormatIndexTitle(value, item);
63313
+ if (!outTitle) return null;
63314
+
63315
+ valueText=outTitle.Text;
63316
+ aryText=outTitle.ArrayText;
63317
+ }
63318
+ else if (item.DataType=="MULTI_POINT_LINE")
63319
+ {
63320
+ valueText=this.FormatMultiDataLine(value, item);
63321
+ if (!valueText) return null;
63322
+ }
63323
+ else
63324
+ {
63325
+ valueText=this.FormatValue(value,item);
63326
+ }
63327
+ }
63328
+
63329
+
63330
+ return { Text:valueText, ArrayText:aryText };
63331
+ }
63332
+
63215
63333
  this.DrawOverlayIndexSingleLine=function(moveonPoint, mouseStatus) //叠加指标1个指标一行
63216
63334
  {
63217
63335
  var pixelRatio=GetDevicePixelRatio();
@@ -63274,68 +63392,11 @@ function DynamicChartTitlePainting()
63274
63392
  for(var i=0; i<overlayItem.Data.length; ++i)
63275
63393
  {
63276
63394
  var item=overlayItem.Data[i];
63277
- if (!item || !item.Data || !item.Data.Data || !item.Name) continue;
63278
- if (item.IsVisible===false) continue;
63279
- if (item.Data.Data.length<=0) continue;
63280
-
63281
- var value=null;
63282
- var valueText=null;
63283
- var aryText=null;
63284
- if (item.DataType=="StraightLine") //直线只有1个数据
63285
- {
63286
- value=item.Data.Data[0];
63287
- valueText=this.FormatValue(value,item);
63288
- }
63289
- else
63290
- {
63291
- var index=Math.abs(this.CursorIndex-0.5);
63292
- index=parseInt(index.toFixed(0));
63293
- if (this.IsKLineFrame) index=this.CursorIndex;
63294
- var dataIndex=item.Data.DataOffset+index;
63295
- if (dataIndex>=item.Data.Data.length) dataIndex=item.Data.Data.length-1;
63296
- if (dataIndex<0) continue;
63395
+ var outText=this.FormatOverlayTitle(item,overlayItem,i);
63396
+ if (!outText) continue;
63297
63397
 
63298
- value=item.Data.Data[dataIndex];
63299
- if (value==null) continue;
63300
-
63301
- if (item.DataType=="MultiReport")
63302
- {
63303
- valueText=this.FormatMultiReport(value,item);
63304
- if (!valueText) continue;
63305
- }
63306
- else if (item.DataType=="ChartStackedBar")
63307
- {
63308
- aryText=this.FormatStackedBarTitle(value, item);
63309
- if (!aryText) continue;
63310
- }
63311
- else if (item.DataType=="ChartMultiPoint")
63312
- {
63313
- aryText=this.ForamtMultiPointTitle(dataIndex, item);
63314
- if (!aryText) continue;
63315
- }
63316
- else if (item.DataType=="ChartMultiBar")
63317
- {
63318
- aryText=this.ForamtMultiBarTitle(dataIndex, item);
63319
- if (!aryText) continue;
63320
- }
63321
- else if (item.DataType=="DRAWKLINE")
63322
- {
63323
- aryText=this.FormatKLineTitle(value, item);
63324
- if (!aryText) continue;
63325
- }
63326
- else if (item.DataType=="ChartIndexTitle")
63327
- {
63328
- var outTitle=this.FormatIndexTitle(value, item);
63329
- if (!outTitle) continue;
63330
-
63331
- valueText=outTitle.Text;
63332
- aryText=outTitle.ArrayText;
63333
- }
63334
- else
63335
- {
63336
- valueText=this.FormatValue(value,item);
63337
- }
63338
- }
63398
+ var valueText=outText.Text;
63399
+ var aryText=outText.ArrayText;
63339
63400
 
63340
63401
  if (aryText)
63341
63402
  {
@@ -83108,8 +83169,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
83108
83169
  {
83109
83170
  if (option.KLine)
83110
83171
  {
83111
- if (IFrameSplitOperator.IsNumber(option.KLine.DrawType)) isChangeKLineDrawType=true;
83112
- if (IFrameSplitOperator.IsNumber(option.KLine.Right)) right=option.KLine.Right;
83172
+ var item=option.KLine;
83173
+ if (IFrameSplitOperator.IsNumber(item.DrawType)) isChangeKLineDrawType=true;
83174
+ if (IFrameSplitOperator.IsNumber(item.Right)) right=item.Right;
83175
+ if (IFrameSplitOperator.IsNumber(item.DataWidth)) this.KLineSize={ DataWidth:item.DataWidth };
83113
83176
  }
83114
83177
 
83115
83178
  if (option.Reload==true) isReload=true;
@@ -84665,6 +84728,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84665
84728
  var item=option.KLine;
84666
84729
  if (IFrameSplitOperator.IsNumber(item.Right)) this.Right=item.Right;
84667
84730
  if (IFrameSplitOperator.IsNumber(item.Period)) this.Period=item.Period;
84731
+ if (IFrameSplitOperator.IsNumber(item.DataWidth)) this.KLineSize={ DataWidth:item.DataWidth };
84668
84732
  }
84669
84733
  }
84670
84734
 
@@ -85732,6 +85796,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
85732
85796
 
85733
85797
  { Name:"禁止拖拽", Data:{ ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID, Args:[0]}, Checked:0==this.DragMode },
85734
85798
  { Name:"启动拖拽", Data:{ ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID, Args:[1]}, Checked:1==this.DragMode },
85799
+ { Name:"X轴拖动缩放", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID, Args:[!this.EnableXDrag.Bottom]}, Checked:this.EnableXDrag.Bottom },
85735
85800
  { Name:"左键区间选择", Data:{ ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID, Args:[!bLButtonSelectRect]}, Checked:bLButtonSelectRect },
85736
85801
  { Name:"右键区间选择", Data:{ ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID, Args:[!bRButtonSelectRect]}, Checked:bRButtonSelectRect },
85737
85802
  { Name:JSPopMenu.SEPARATOR_LINE_NAME },
@@ -85742,7 +85807,6 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
85742
85807
 
85743
85808
  { Name:"移动筹码图", Data:{ ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID, Args:[stockChipConfig.Name, stockChipConfig]}, Checked:bShowStockChip},
85744
85809
 
85745
-
85746
85810
 
85747
85811
  { Name:"双击弹分时图", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID, Args:[!bPopMinuteChart]}, Checked:bPopMinuteChart},
85748
85812
 
@@ -132803,7 +132867,7 @@ function JSReportChartContainer(uielement)
132803
132867
  if (IFrameSplitOperator.IsNumber(item.Sort)) this.SortInfo.Sort=item.Sort;
132804
132868
  }
132805
132869
 
132806
- if (IFrameSplitOperator.IsBool(option.IsReloadStockList))
132870
+ if (IFrameSplitOperator.IsBool(option.IsReloadStockList) && option.IsReloadStockList)
132807
132871
  {
132808
132872
  var requestOption={ Callback:null };
132809
132873
  if (this.Symbol) requestOption.Callback=()=>{ this.RequestMemberListData(); };
@@ -154411,7 +154475,7 @@ function HQChartScriptWorker()
154411
154475
 
154412
154476
 
154413
154477
 
154414
- var HQCHART_VERSION="1.1.14515";
154478
+ var HQCHART_VERSION="1.1.14522";
154415
154479
 
154416
154480
  function PrintHQChartVersion()
154417
154481
  {