hqchart 1.1.15310 → 1.1.15312
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/umychart.vue.js
CHANGED
|
@@ -1313,7 +1313,8 @@ if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.Is
|
|
|
1313
1313
|
}}if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;if(IFrameSplitOperator.IsBool(item.Wheel))chart.EnableYDrag.Wheel=item.Wheel;if(IFrameSplitOperator.IsNumber(item.WheelYMove))chart.EnableYDrag.WheelYMove=item.WheelYMove;}if(option.FastSlide){var item=option.FastSlide;if(IFrameSplitOperator.IsNumber(item.MinDistance))chart.FastSlideConfig.MinDistance=item.MinDistance;if(IFrameSplitOperator.IsNumber(item.MinSpeed))chart.FastSlideConfig.MinSpeed=item.MinSpeed;if(IFrameSplitOperator.IsNumber(item.MaxTime))chart.FastSlideConfig.MaxTime=item.MaxTime;if(IFrameSplitOperator.IsBool(item.Enable))chart.FastSlideConfig.Enable=item.Enable;}//分页
|
|
1314
1314
|
if(option.PageInfo)chart.SetPageInfo(option.PageInfo);chart.Create(windowsCount,option);//创建子窗口
|
|
1315
1315
|
if(option.CorssCursorInfo){var item=option.CorssCursorInfo;if(!isNaN(option.CorssCursorInfo.Left))chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;if(!isNaN(option.CorssCursorInfo.Right))chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;if(!isNaN(option.CorssCursorInfo.Bottom))chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;if(option.CorssCursorInfo.IsShowCorss===false)chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;if(option.CorssCursorInfo.RightTextFormat>0)chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;if(option.CorssCursorInfo.IsOnlyDrawMinute==true)chart.ChartCorssCursor.IsOnlyDrawMinute=option.CorssCursorInfo.IsOnlyDrawMinute;//Y轴显示收盘价
|
|
1316
|
-
if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(item.BottomButton){var subItem=item.BottomButton;if(IFrameSplitOperator.IsBool(subItem.Enable))chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsBool(item.EnableKeyboard))chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;if(IFrameSplitOperator.IsBool(item.EnableDBClick))chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;if(IFrameSplitOperator.IsBool(item.IsShowCorssPoint))chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
1316
|
+
if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(item.BottomButton){var subItem=item.BottomButton;if(IFrameSplitOperator.IsBool(subItem.Enable))chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsBool(item.EnableKeyboard))chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;if(IFrameSplitOperator.IsBool(item.EnableDBClick))chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;if(IFrameSplitOperator.IsBool(item.IsShowCorssPoint))chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;if(item.TextStyle){if(item.TextStyle.Right)//右侧输出样式
|
|
1317
|
+
{var subItem=item.TextStyle.Right;if(IFrameSplitOperator.IsNumber(subItem.Type))chart.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=subItem.Type;}}}if(option.MinuteInfo)chart.CreateMinuteInfo(option.MinuteInfo);if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(IFrameSplitOperator.IsNumber(option.DayCount))chart.DayCount=option.DayCount;this.SetChartBorder(chart,option);if(option.SplashTitle)chart.ChartSplashPaint.SplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableBorderDrag)){chart.EnableBorderDrag=option.EnableBorderDrag;}if(IFrameSplitOperator.IsBool(option.EnableBuySellBar)){var barChart=chart.GetChartMinuteBuySellBar();if(barChart)barChart.IsShow=option.EnableBuySellBar;}this.AdjustChartBorder(chart);if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],null,item);/*
|
|
1317
1318
|
var subFrame=chart.Frame.SubFrame[i].Frame;
|
|
1318
1319
|
|
|
1319
1320
|
if (IFrameSplitOperator.IsNumber(item.SplitCount)) chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;
|
|
@@ -1815,6 +1816,7 @@ CMD_CORSS_SHOW_INCREASE_ID:60,//十字光标 底部显示"至今涨幅"
|
|
|
1815
1816
|
CMD_CORSS_X_TEXTALIGN_ID:61,//十字光标 底部文字对齐方式
|
|
1816
1817
|
CMD_CHANGE_YRIGHT_TEXT_FORMAT:62,//分时图主图 右侧刻度格式
|
|
1817
1818
|
CMD_ENABLE_ZOOM_Y_ID:63,//放大缩小Y坐标 { FrameID:, Enable: , Range:{ Max:, Min: }}
|
|
1819
|
+
CMD_CORSS_YRIGHT_TEXT_STYLE:64,//十字光标右侧输出样式
|
|
1818
1820
|
CMD_REPORT_CHANGE_BLOCK_ID:100,//报价列表 切换板块ID
|
|
1819
1821
|
CMD_REPORT_COLUMN_SORT_ID:101,//报价列表 表头排序 Arg[列序号, 排序方向]
|
|
1820
1822
|
CMD_REPORT_COLUMN_DEL_ID:102,//报价列表 删除列
|
|
@@ -2576,7 +2578,7 @@ this.Draw();break;case JSCHART_MENU_ID.CMD_ENABLE_OVERLAY_SHARE_Y_ID:if(!srcPara
|
|
|
2576
2578
|
this.UpdateFrameMaxMin();//调整坐标最大 最小值
|
|
2577
2579
|
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
|
|
2578
2580
|
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://双击弹分时图
|
|
2579
|
-
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_SHOW_INCREASE_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor){this.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=srcParam;}break;case JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID:if(param==null)return false;if(this.ChartCorssCursor)this.ChartCorssCursor.BottomConfig.Align=param;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_CORSS_DBCLICK_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.EnableDBClick=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;if(IFrameSplitOperator.IsNonEmptyArray(aryArgs)&&IFrameSplitOperator.IsNumber(aryArgs[1]))this.EnableXDrag.LButton.Type=aryArgs[1];if(IFrameSplitOperator.IsNonEmptyArray(aryArgs)&&IFrameSplitOperator.IsNumber(aryArgs[2]))this.EnableXDrag.RButton.Type=aryArgs[2];break;case JSCHART_MENU_ID.CMD_FULLSCREEN_SUMMARY_ID:this.FullScreenSummary();break;case JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID:if(IFrameSplitOperator.IsBool(srcParam)){this.ChartPaint[0].DaySummary.Enable=srcParam;this.Draw();}break;case JSCHART_MENU_ID.CMD_SHOW_BUYSELL_BAR_ID:if(IFrameSplitOperator.IsBool(srcParam)){var chart=this.GetChartMinuteBuySellBar();chart.IsShow=srcParam;this.RequestData({ClearYCoordinateMaxMin:true});this.Draw();}break;case JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT:if(param==null)return false;if(!this.Frame.SubFrame[0]||!this.Frame.SubFrame[0].Frame)return false;var frame=this.Frame.SubFrame[0].Frame;if(!frame.YSplitOperator||!frame.YSplitOperator.RightTextConfig)return false;frame.YSplitOperator.RightTextConfig.Format=param;if(param===2)frame.MultiTextFormat=1;this.ResetFrameXYSplit();this.Draw();break;case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:if(!srcParam)return false;if(this.EnableZoomYCoordinate)this.EnableZoomYCoordinate(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;};//点击右键菜单
|
|
2581
|
+
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_SHOW_INCREASE_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor){this.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=srcParam;}break;case JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID:if(param==null)return false;if(this.ChartCorssCursor)this.ChartCorssCursor.BottomConfig.Align=param;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_CORSS_DBCLICK_ID:if(IFrameSplitOperator.IsBool(srcParam)&&this.ChartCorssCursor)this.ChartCorssCursor.EnableDBClick=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;if(IFrameSplitOperator.IsNonEmptyArray(aryArgs)&&IFrameSplitOperator.IsNumber(aryArgs[1]))this.EnableXDrag.LButton.Type=aryArgs[1];if(IFrameSplitOperator.IsNonEmptyArray(aryArgs)&&IFrameSplitOperator.IsNumber(aryArgs[2]))this.EnableXDrag.RButton.Type=aryArgs[2];break;case JSCHART_MENU_ID.CMD_FULLSCREEN_SUMMARY_ID:this.FullScreenSummary();break;case JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID:if(IFrameSplitOperator.IsBool(srcParam)){this.ChartPaint[0].DaySummary.Enable=srcParam;this.Draw();}break;case JSCHART_MENU_ID.CMD_SHOW_BUYSELL_BAR_ID:if(IFrameSplitOperator.IsBool(srcParam)){var chart=this.GetChartMinuteBuySellBar();chart.IsShow=srcParam;this.RequestData({ClearYCoordinateMaxMin:true});this.Draw();}break;case JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT:if(param==null)return false;if(!this.Frame.SubFrame[0]||!this.Frame.SubFrame[0].Frame)return false;var frame=this.Frame.SubFrame[0].Frame;if(!frame.YSplitOperator||!frame.YSplitOperator.RightTextConfig)return false;frame.YSplitOperator.RightTextConfig.Format=param;if(param===2)frame.MultiTextFormat=1;this.ResetFrameXYSplit();this.Draw();break;case JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE:if(param==null)return false;if(!this.ChartCorssCursor||!this.ChartCorssCursor.StringFormatY)return false;this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=param;break;case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:if(!srcParam)return false;if(this.EnableZoomYCoordinate)this.EnableZoomYCoordinate(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;};//点击右键菜单
|
|
2580
2582
|
this.OnClickRightMenu=function(data){JSConsole.Chart.Log('[JSChartContainer::OnClickRightMenu] ',data);if(!data||!data.Data)return;var cmdID=data.Data.ID;//命令ID
|
|
2581
2583
|
var aryArgs=data.Data.Args;//参数
|
|
2582
2584
|
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MENU_COMMAND);//回调通知外部
|
|
@@ -6168,7 +6170,7 @@ if(barWidth>2*pixel)this.Canvas.lineWidth=barWidth;}this.Canvas.beginPath();if(t
|
|
|
6168
6170
|
this.StringFormatX.Value=this.CursorIndex;this.StringFormatX.Point={X:x,Y:y};this.StringFormatX.ClientPos=clientPos;this.StringFormatY.Value=yValue;this.StringFormatY.RValue=yValueExtend.RightYValue;//右侧子坐标
|
|
6169
6171
|
this.StringFormatY.FrameID=yValueExtend.FrameID;this.StringFormatY.Point={X:x,Y:y};this.StringFormatY.ClientPos=clientPos;this.Canvas.font=this.Font;var textHeight=this.GetFontHeight();if(textHeight>this.TextHeight)this.TextHeight=textHeight;//Y轴
|
|
6170
6172
|
if((this.ShowTextMode.Left==1&&this.Frame.ChartBorder.Left>=30||this.ShowTextMode.Left==2||this.ShowTextMode.Right==1&&this.Frame.ChartBorder.Right>=30||this.ShowTextMode.Right==2)&&this.StringFormatY.Operator()){//计算右侧文本输出顶部位置
|
|
6171
|
-
var _Temp_CalculateRightTextBGTop=function _Temp_CalculateRightTextBGTop(rtBG,complexText,defaultTextHeight){if(complexText.ShowType==1){var yValue=defaultTextHeight/2;if(IFrameSplitOperator.IsNonEmptyArray(textSize.Text)&&textSize.Text[0]){var itemSize=textSize.Text[0];if(IFrameSplitOperator.IsNumber(itemSize.Height))yValue=itemSize.Height/2;}rtBG.Top=rtBG.YCenter-yValue;rtBG.Bottom=rtBG.Top+rtBG.Height;}else{rtBG.Top=rtBG.YCenter-rtBG.Height/2;rtBG.Bottom=rtBG.Top+rtBG.Height;}};var text=this.StringFormatY.Text;this.Canvas.font=this.Font;var textWidth=this.Canvas.measureText(text).width;//前后各空2个像素
|
|
6173
|
+
var _Temp_CalculateRightTextBGTop=function _Temp_CalculateRightTextBGTop(rtBG,complexText,defaultTextHeight){if(complexText.ShowType==1){var yValue=defaultTextHeight/2;if(IFrameSplitOperator.IsNonEmptyArray(textSize.Text)&&textSize.Text[0]){var itemSize=textSize.Text[0];if(IFrameSplitOperator.IsNumber(itemSize.Height))yValue=itemSize.Height/2;}if(complexText.BaseLine=="center"){rtBG.Top=rtBG.YCenter-rtBG.Height/2;rtBG.Bottom=rtBG.Top+rtBG.Height;}else{rtBG.Top=rtBG.YCenter-yValue;rtBG.Bottom=rtBG.Top+rtBG.Height;}}else{rtBG.Top=rtBG.YCenter-rtBG.Height/2;rtBG.Bottom=rtBG.Top+rtBG.Height;}};var text=this.StringFormatY.Text;this.Canvas.font=this.Font;var textWidth=this.Canvas.measureText(text).width;//前后各空2个像素
|
|
6172
6174
|
var textSize={Width:textWidth+4,Height:this.TextHeight,Text:[]};var buttonData={Y:y,YValue:yValue,FrameID:yValueExtend.FrameID};var margin=this.LeftConfig.Margin;var textOffset=this.LeftConfig.TextOffset;var rtBG=null;if(this.Frame.ChartBorder.Left>=30&&this.ShowTextMode.Left==1)//左边
|
|
6173
6175
|
{var rtBG={Right:left,Width:textWidth+margin.Left+margin.Right,YCenter:y,Height:textHeight+margin.Top+margin.Bottom};rtBG.Left=rtBG.Right-rtBG.Width;rtBG.Top=rtBG.YCenter-rtBG.Height/2;rtBG.Bottom=rtBG.Top+rtBG.Height;if(rtBG.Left<0){rtBG.Left=0;rtBG.Right=rtBG.Left+rtBG.Width;}this.Status|=JSCHART_CORSSCURSOR_STATUS_ID.LEFT_TEXT_ID;}else if(this.ShowTextMode.Left==2)//在框架内显示
|
|
6174
6176
|
{var rtBG={Left:left,Width:textWidth+margin.Left+margin.Right,YCenter:y,Height:textHeight+margin.Top+margin.Bottom};rtBG.Right=rtBG.Left+rtBG.Width;rtBG.Top=rtBG.YCenter-rtBG.Height/2;rtBG.Bottom=rtBG.Top+rtBG.Height;this.Status|=JSCHART_CORSSCURSOR_STATUS_ID.LEFT_INTER_TEXT_ID;}if(rtBG){this.DrawTextBGRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);this.Canvas.textAlign="left";this.Canvas.textBaseline="bottom";this.Canvas.fillStyle=this.TextColor;this.Canvas.fillText(text,rtBG.Left+textOffset.X,rtBG.Bottom+textOffset.Y);}var complexText={ShowType:0,//0=单行(默认) 1=多行
|
|
@@ -6191,14 +6193,12 @@ var margin=this.RightOverlayConfig.Margin;var textOffset=this.RightOverlayConfig
|
|
|
6191
6193
|
if (textWidth<frame.Interval) break;
|
|
6192
6194
|
}
|
|
6193
6195
|
*/this.Canvas.textAlign="left";this.Canvas.textBaseline="bottom";this.Canvas.fillStyle=this.TextColor;this.Canvas.fillText(text,rtBG.Left+textOffset.X,rtBG.Bottom+textOffset.Y);}}};this.DrawComplexRightText=function(rtBG,complexText,size){this.Canvas.textAlign="left";this.Canvas.textBaseline="bottom";var showType=0;if(complexText.ShowType==1)showType=complexText.ShowType;if(showType==1)//多行
|
|
6194
|
-
{var
|
|
6195
|
-
for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];var itemSize=size.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;if(item.Color)this.Canvas.fillStyle=item.Color;else this.Canvas.fillStyle=complexText.Color;var y=yTop+itemSize.Height;var x=xLeft;if(item.TextOffset){var textOffset=item.TextOffset;if(IFrameSplitOperator.IsNumber(textOffset.X))x+=textOffset.X;if(IFrameSplitOperator.IsNumber(textOffset.Y))y+=textOffset.Y;}this.Canvas.fillText(item.Text,x,y,itemSize.
|
|
6196
|
+
{var yTop=rtBG.Top;//顶
|
|
6197
|
+
for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];var itemSize=size.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;if(item.Color)this.Canvas.fillStyle=item.Color;else this.Canvas.fillStyle=complexText.Color;var y=yTop+itemSize.Height;var xLeft=rtBG.Left,xRight=rtBG.Right;if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))xLeft+=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))xRight-=margin.Right;}var x=xLeft;if(item.TextAlign=="right")x=xRight-itemSize.TextWidth;else if(item.TextAlign=="center")x=rtBG.Left+rtBG.Width/2-itemSize.TextWidth/2;if(item.TextOffset){var textOffset=item.TextOffset;if(IFrameSplitOperator.IsNumber(textOffset.X))x+=textOffset.X;if(IFrameSplitOperator.IsNumber(textOffset.Y))y+=textOffset.Y;}this.Canvas.fillText(item.Text,x,y,itemSize.TextWidth);yTop+=itemSize.Height;}}else//水平 单行
|
|
6196
6198
|
{var xText=rtBG.Left;var yBottom=rtBG.Bottom;for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];var itemSize=size.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;if(item.Color)this.Canvas.fillStyle=item.Color;else this.Canvas.fillStyle=complexText.Color;var x=xText;var y=yBottom;if(item.TextOffset){var textOffset=item.TextOffset;if(IFrameSplitOperator.IsNumber(textOffset.X))x+=textOffset.X;if(IFrameSplitOperator.IsNumber(textOffset.Y))y+=textOffset.Y;}this.Canvas.fillText(item.Text,x,y,itemSize.Width);xText+=itemSize.Width;}}};this.CalculateComplexTextSize=function(complexText,size){if(!complexText||!IFrameSplitOperator.IsNonEmptyArray(complexText.Text))return;var showType=0;if(complexText.ShowType==1)showType=complexText.ShowType;if(showType==1)//多行
|
|
6197
|
-
{var textWidth=0,textHeight=0;for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;var
|
|
6198
|
-
var itemHeight=this.GetFontHeight();if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))itemWidth+=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))itemWidth+=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))itemHeight+=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))itemHeight+=margin.Bottom;}size.Text[i]={Width:itemWidth,Height:itemHeight};//保存所有文字的大小信息
|
|
6199
|
+
{var textWidth=0,textHeight=0;for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;var outWidth=this.Canvas.measureText(item.Text).width;var itemWidth=outWidth;var itemHeight=this.GetFontHeight();if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))itemWidth+=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))itemWidth+=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))itemHeight+=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))itemHeight+=margin.Bottom;}size.Text[i]={Width:itemWidth,Height:itemHeight,TextWidth:outWidth};//保存所有文字的大小信息
|
|
6199
6200
|
if(textWidth<itemWidth)textWidth=itemWidth;textHeight+=itemHeight;}size.Width=textWidth;size.Height=textHeight;}else//水平 单行
|
|
6200
|
-
{var textWidth=0,textHeight=this.GetFontHeight();for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;var
|
|
6201
|
-
var itemHeight=this.Canvas.measureText("擎").width;if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))itemWidth+=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))itemWidth+=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))itemHeight+=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))itemHeight+=margin.Bottom;}size.Text[i]={Width:itemWidth,Height:itemHeight};//保存所有文字的大小信息
|
|
6201
|
+
{var textWidth=0,textHeight=this.GetFontHeight();for(var i=0;i<complexText.Text.length;++i){var item=complexText.Text[i];if(item.Font)this.Canvas.font=item.Font;else this.Canvas.font=complexText.Font;var outWidth=this.Canvas.measureText(item.Text).width;var itemWidth=outWidth;var itemHeight=this.Canvas.measureText("擎").width;if(item.Margin){var margin=item.Margin;if(IFrameSplitOperator.IsNumber(margin.Left))itemWidth+=margin.Left;if(IFrameSplitOperator.IsNumber(margin.Right))itemWidth+=margin.Right;if(IFrameSplitOperator.IsNumber(margin.Top))itemHeight+=margin.Top;if(IFrameSplitOperator.IsNumber(margin.Bottom))itemHeight+=margin.Bottom;}size.Text[i]={Width:itemWidth,Height:itemHeight,TextWidth:outWidth};//保存所有文字的大小信息
|
|
6202
6202
|
textWidth+=itemWidth;if(textHeight<itemHeight)textHeight=itemHeight;}size.Width=textWidth;size.Height=textHeight;}};this.DrawRightButtonV2=function(rtTextBG,complexText,textSize,data){this.Canvas.fillStyle=this.RightButton.BGColor;var drawHeight=rtTextBG.Height;var drawWidth=rtTextBG.Height;if(complexText.ShowType==1)//多行 取第1行高度
|
|
6203
6203
|
{var itemSize=textSize.Text[0];drawHeight=itemSize.Height;drawWidth=itemSize.Height;}var rtButton={Left:rtTextBG.Left-drawHeight,Top:rtTextBG.Top,Width:drawWidth,Height:drawHeight};rtButton.Right=rtButton.Left+rtButton.Width;rtButton.Bottom=rtButton.Top+rtButton.Height;this.RightButton.Rect=rtButton;this.RightButton.Data=data;this.Canvas.fillRect(ToFixedPoint(rtButton.Left+1),ToFixedPoint(rtButton.Top),ToFixedRect(rtButton.Width),ToFixedRect(rtButton.Height));var pixelRatio=GetDevicePixelRatio();var spaceWidth=3;var yCenter=rtButton.Top+spaceWidth+(rtButton.Height-spaceWidth*2)/2;var xCenter=rtButton.Left+spaceWidth+(rtButton.Width-spaceWidth*2)/2;if(this.RightButton.Icon){var icon=this.RightButton.Icon;this.Canvas.font=icon.Size*pixelRatio+'px '+icon.Family;this.Canvas.textAlign="center";this.Canvas.textBaseline="middle";this.Canvas.fillStyle=icon.Color;this.Canvas.fillText('\uE6A3',xCenter,yCenter);}else{//画加号
|
|
6204
6204
|
this.Canvas.strokeStyle=this.RightButton.PenColor;var x=rtButtom.Left+spaceWidth;var y=rtButtom.Top+spaceWidth;this.Canvas.save();this.Canvas.linewidth=1*pixelRatio;this.Canvas.beginPath();this.Canvas.moveTo(ToFixedPoint(x),ToFixedPoint(yCenter));this.Canvas.lineTo(ToFixedPoint(x+rtButton.Width-spaceWidth*2),ToFixedPoint(yCenter));this.Canvas.moveTo(ToFixedPoint(xCenter),ToFixedPoint(y));this.Canvas.lineTo(ToFixedPoint(xCenter),ToFixedPoint(y+rtButton.Height-spaceWidth*2));this.Canvas.stroke();this.Canvas.restore();}};this.DrawRightButton=function(drawTop,drawRight,drawWidth,drawHeight,data){this.Canvas.fillStyle=this.RightButton.BGColor;var rtButton={Left:drawRight-drawWidth,Top:drawTop,Width:drawWidth,Height:drawHeight};rtButton.Right=rtButton.Left+rtButton.Width;rtButton.Bottom=rtButton.Top+rtButton.Height;this.RightButton.Rect=rtButton;this.RightButton.Data=data;this.Canvas.fillRect(ToFixedPoint(rtButton.Left+1),ToFixedPoint(rtButton.Top),ToFixedRect(rtButton.Width),ToFixedRect(rtButton.Height));var pixelRatio=GetDevicePixelRatio();var spaceWidth=3;var yCenter=rtButton.Top+spaceWidth+(rtButton.Height-spaceWidth*2)/2;var xCenter=rtButton.Left+spaceWidth+(rtButton.Width-spaceWidth*2)/2;if(this.RightButton.Icon){var icon=this.RightButton.Icon;this.Canvas.font=icon.Size*pixelRatio+'px '+icon.Family;this.Canvas.textAlign="center";this.Canvas.textBaseline="middle";this.Canvas.fillStyle=icon.Color;this.Canvas.fillText('\uE6A3',xCenter,yCenter);}else{//画加号
|
|
@@ -6269,7 +6269,9 @@ this.newMethod();delete this.newMethod;this.Symbol;this.FrameID;this.Frame;this.
|
|
|
6269
6269
|
this.PercentageText;//百分比
|
|
6270
6270
|
this.RValue;//右边值
|
|
6271
6271
|
this.RText;this.RComplexText;//{ Space:2 间距, Text:[ {Color:, Text: }] } 支持单行多颜色
|
|
6272
|
-
this.Point;this.ClientPos=-1;this.HQChart;this.
|
|
6272
|
+
this.Point;this.ClientPos=-1;this.HQChart;this.TextStyleConfig={Right:{Type:-1}};//输出文本样式 Type: -1=默认 1=价格 2=价格|涨幅 2行(分时图)
|
|
6273
|
+
//自定义样式模板
|
|
6274
|
+
this.TextStyleTemplate=[null,null];this.ExtendChartPaint;this.RExtendText=[];this.BeforeOpenData;this.AfterCloseData;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.ShareAfterVol=0;//1=主图共享 2=盘前共享
|
|
6273
6275
|
this.PriceFormatType=0;//主窗口格式 0=默认 1=科学计数
|
|
6274
6276
|
this.DataFormatType=0;//副图指标格式 0=默认 1=科学计数
|
|
6275
6277
|
this.GetEventCallback;//盘前集合竞价
|
|
@@ -6278,10 +6280,12 @@ if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator
|
|
|
6278
6280
|
this.GetAfterClose=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;if(!this.AfterCloseData)return false;var range={Max:this.AfterCloseData.VolMax,Min:this.AfterCloseData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetRightExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
|
|
6279
6281
|
if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetMultiDayBeforeOpen=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();if(!multiDayBeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(multiDayBeforeOpenData))return;var dayIndex=this.ClientPos-200;if(dayIndex<0||dayIndex>=multiDayBeforeOpenData.length)return false;var dayData=multiDayBeforeOpenData[dayIndex];var range={Max:dayData.VolMax,Min:dayData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetLeftExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
|
|
6280
6282
|
if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetMultiDayAfterClose=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();if(!multiDayAfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(multiDayAfterCloseData))return;var dayIndex=this.ClientPos-300;if(dayIndex<0||dayIndex>=multiDayAfterCloseData.length)return false;var dayData=multiDayAfterCloseData[dayIndex];var range={Max:dayData.VolMax,Min:dayData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetRightExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
|
|
6281
|
-
if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.Operator=function(){this.RText=null;this.RComplexText=null;this.RExtendText=[];if(IFrameSplitOperator.IsString(this.RValue))this.RText=this.RValue;if(!this.Value)return false;this.PercentageText=null;var defaultfloatPrecision=2;//价格小数位数
|
|
6283
|
+
if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetTextStyleTemplate=function(type,defaultTemplate){var template=this.TextStyleTemplate[type];if(!template)return defaultTemplate;return CloneData(template);};this.Operator=function(){this.RText=null;this.RComplexText=null;this.RExtendText=[];if(IFrameSplitOperator.IsString(this.RValue))this.RText=this.RValue;if(!this.Value)return false;this.PercentageText=null;var defaultfloatPrecision=2;//价格小数位数
|
|
6282
6284
|
if(this.FrameID==0)//第1个窗口显示原始价格
|
|
6283
|
-
{var defaultfloatPrecision=GetfloatPrecision(this.Symbol);if(this.PriceFormatType==1)this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);else this.Text=this.Value.toFixed(defaultfloatPrecision);if(this.
|
|
6284
|
-
|
|
6285
|
+
{var defaultfloatPrecision=GetfloatPrecision(this.Symbol);if(this.PriceFormatType==1)this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);else this.Text=this.Value.toFixed(defaultfloatPrecision);if(this.TextStyleConfig.Right.Type==2){if(IFrameSplitOperator.IsNumber(this.YClose)){var value=(this.Value-this.YClose)*100/this.YClose;var text=value.toFixed(2)+'%';if(value>=0)text=' '+value.toFixed(2)+'%';var defaultTemplate={ShowType:1,Space:2,BaseLine:"center",Text:[{Text:null,TextAlign:"center",Margin:{Left:2,Right:2}},{Text:null,TextAlign:"center",Margin:{Left:2,Right:2}}]};var complexText=this.GetTextStyleTemplate(this.TextStyleConfig.Right.Type,defaultTemplate);complexText.Text[0].Text=this.Text;//价格
|
|
6286
|
+
complexText.Text[1].Text=text;//百分比
|
|
6287
|
+
this.RComplexText=complexText;}}else if(this.TextStyleConfig.Right.Type==1){}else{if(IFrameSplitOperator.IsNumber(this.YClose))this.PercentageText=((this.Value-this.YClose)*100/this.YClose).toFixed(2);//走势图右边坐标显示百分比
|
|
6288
|
+
}this.GetExtendPaintData(defaultfloatPrecision);}else if(this.FrameID==1){if(this.DataFormatType==1){this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);}else{this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);}if(this.ClientPos==2){this.GetBeforeOpen();}else if(this.ClientPos==3){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetAfterClose();}else if(this.ClientPos>=200&&this.ClientPos<=299){this.GetMultiDayBeforeOpen();}else if(this.ClientPos>=300&&this.ClientPos<=399){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetMultiDayAfterClose();}}else{if(this.DataFormatType==1)this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);var bCallAuction=false;if(this.HQChart&&this.HQChart.IsCallAuctionFrame)bCallAuction=this.HQChart.IsCallAuctionFrame(this.FrameID);if(bCallAuction){if(this.ClientPos==2){this.GetBeforeOpen();}else if(this.ClientPos==3){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetAfterClose();}else if(this.ClientPos>=200&&this.ClientPos<=299){this.GetMultiDayBeforeOpen();}else if(this.ClientPos>=300&&this.ClientPos<=399){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetMultiDayAfterClose();}}}if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_CORSSCURSOR_Y_TEXT);if(event){var data={Value:this.Value,FrameID:this.FrameID,PreventDefault:false};event.Callback(event,data,this);if(data.PreventDefault==true)return false;}}return true;};//深度图刻度
|
|
6285
6289
|
this.GetExtendPaintData=function(floatPrecision){var value=parseInt(this.Value*ZOOM_VALUE[floatPrecision]);for(var i in this.ExtendChartPaint){var item=this.ExtendChartPaint[i];if(item.ClassName=='DepthMapPaint'&&item.FrameID==this.FrameID){var aryData=item.GetYValueByXValue(value,floatPrecision);for(var j in aryData){this.RExtendText.push(aryData[j]);}}}};}function HQDateStringFormat(){this.newMethod=IChangeStringFormat;//派生
|
|
6286
6290
|
this.newMethod();delete this.newMethod;this.DateFormatType=0;//0=YYYY-MM-DD 1=YYYY/MM/DD 2=YYYY/MM/DD/W 3=DD/MM/YYYY
|
|
6287
6291
|
this.LanguageID=0;this.KItem=null;//缓存当前的K线
|
|
@@ -9205,7 +9209,7 @@ this.GetRightMenuData=function(frameID,option){var windowCount=this.Frame.SubFra
|
|
|
9205
9209
|
var aryOverlaySymbol=[];//叠加的股票列表
|
|
9206
9210
|
for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(item&&item.Symbol)aryOverlaySymbol.push(item.Symbol);}var bShowCorss=false;//十字光标十字线
|
|
9207
9211
|
var bCorssDrawCloseLine=false;//十字光标只能画在走势图价格线上
|
|
9208
|
-
var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;var bCorssBCClick=false;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawCloseLine=this.ChartCorssCursor.IsOnlyDrawMinute;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;bCorssBCClick=this.ChartCorssCursor.EnableDBClick;}var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var bShowBuySellBar=this.IsShowMinuteBuySellBar();var minItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+parseInt(option.CursorIndex.toFixed(0));if(dataIndex>=0&&dataIndex<kData.Data.length)minItem=kData.Data[dataIndex];}}var rightTextFormat=0;if(this.Frame.SubFrame[0]&&this.Frame.SubFrame[0].Frame&&this.Frame.SubFrame[0].Frame.YSplitOperator){var ySpliter=this.Frame.SubFrame[0].Frame.YSplitOperator;if(ySpliter.RightTextConfig)rightTextFormat=ySpliter.RightTextConfig.Format;}var aryMenu=[{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:"当日分时图",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[1]},Checked:this.DayCount==1},{Name:"最近2日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[2]},Checked:this.DayCount==2},{Name:"最近3日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[3]},Checked:this.DayCount==3},{Name:"最近4日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[4]},Checked:this.DayCount==4},{Name:"最近5日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[5]},Checked:this.DayCount==5},{Name:"基准线选择",SubMenu:[{Name:"最新昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[0]},Checked:this.BaselineType===0},{Name:"多日前昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[1]},Checked:this.BaselineType===1}]}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:3==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:4==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:5==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:6==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:7==windowCount}]},{Name:"指标切换",SubMenu:[{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMI"]}},{Name:"DMA",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMA"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"CCI"]}},{Name:"TRIX",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"TRIX"]}}]},{Name:"区间选择",SubMenu:[{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:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"画在价格线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID,Args:[!bCorssDrawCloseLine]},Checked:bCorssDrawCloseLine},{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:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick}]},{Name:"其他设置",SubMenu:[{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"盘口分析",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_BUYSELL_BAR_ID,Args:[!bShowBuySellBar]},Checked:bShowBuySellBar},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"主图右侧坐标",SubMenu:[{Name:"百分比",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT,Args:[0]},Checked:rightTextFormat===0},{Name:"价格",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT,Args:[1]},Checked:rightTextFormat===1},{Name:"价格/百分比",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT,Args:[2]},Checked:rightTextFormat===2}]},{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}]}]}];if(MARKET_SUFFIX_NAME.IsEnableCallAuction(this.Symbol)){var item={Name:"集合竞价",SubMenu:[]};var bShow=this.IsShowAfterData&&this.IsShowBeforeData;var subItem={Name:"盘后盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!bShow,Right:!bShow}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!this.IsShowBeforeData}]},Checked:this.IsShowBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Right:!this.IsShowAfterData}]},Checked:this.IsShowAfterData};item.SubMenu.push(subItem);var bShow=this.IsShowMultiDayBeforeData&&this.IsShowMultiDayAfterData;var subItem={Name:"盘后盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!bShow,Right:!bShow}}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!this.IsShowMultiDayBeforeData}}]},Checked:this.IsShowMultiDayBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Right:!this.IsShowMultiDayAfterData}}]},Checked:this.IsShowMultiDayAfterData};item.SubMenu.push(subItem);aryMenu.splice(4,0,item);}for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="叠加品种")//删除菜单
|
|
9212
|
+
var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;var bCorssBCClick=false;var corssRightTextStyle=-1;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawCloseLine=this.ChartCorssCursor.IsOnlyDrawMinute;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;bCorssBCClick=this.ChartCorssCursor.EnableDBClick;if(this.ChartCorssCursor.StringFormatY)corssRightTextStyle=this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type;}var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var bShowBuySellBar=this.IsShowMinuteBuySellBar();var minItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+parseInt(option.CursorIndex.toFixed(0));if(dataIndex>=0&&dataIndex<kData.Data.length)minItem=kData.Data[dataIndex];}}var rightTextFormat=0;if(this.Frame.SubFrame[0]&&this.Frame.SubFrame[0].Frame&&this.Frame.SubFrame[0].Frame.YSplitOperator){var ySpliter=this.Frame.SubFrame[0].Frame.YSplitOperator;if(ySpliter.RightTextConfig)rightTextFormat=ySpliter.RightTextConfig.Format;}var aryMenu=[{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:"当日分时图",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[1]},Checked:this.DayCount==1},{Name:"最近2日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[2]},Checked:this.DayCount==2},{Name:"最近3日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[3]},Checked:this.DayCount==3},{Name:"最近4日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[4]},Checked:this.DayCount==4},{Name:"最近5日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DAY_COUNT_ID,Args:[5]},Checked:this.DayCount==5},{Name:"基准线选择",SubMenu:[{Name:"最新昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[0]},Checked:this.BaselineType===0},{Name:"多日前昨收价",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BASELINE_ID,Args:[1]},Checked:this.BaselineType===1}]}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:3==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:4==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:5==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:6==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:7==windowCount}]},{Name:"指标切换",SubMenu:[{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMI"]}},{Name:"DMA",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"DMA"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"CCI"]}},{Name:"TRIX",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"TRIX"]}}]},{Name:"区间选择",SubMenu:[{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:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"画在价格线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_CLOSE_LINE_ID,Args:[!bCorssDrawCloseLine]},Checked:bCorssDrawCloseLine},{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:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick},{Name:"主图右侧文字格式",SubMenu:[{Name:"默认(百分比)",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE,Args:[-1]},Checked:corssRightTextStyle===-1},{Name:"价格",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE,Args:[1]},Checked:corssRightTextStyle===1},{Name:"价格|百分比(两行)",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE,Args:[2]},Checked:corssRightTextStyle===2}]}]},{Name:"其他设置",SubMenu:[{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"盘口分析",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_BUYSELL_BAR_ID,Args:[!bShowBuySellBar]},Checked:bShowBuySellBar},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"主图右侧坐标",SubMenu:[{Name:"百分比",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT,Args:[0]},Checked:rightTextFormat===0},{Name:"价格",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT,Args:[1]},Checked:rightTextFormat===1},{Name:"价格/百分比",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_YRIGHT_TEXT_FORMAT,Args:[2]},Checked:rightTextFormat===2}]},{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}]}]}];if(MARKET_SUFFIX_NAME.IsEnableCallAuction(this.Symbol)){var item={Name:"集合竞价",SubMenu:[]};var bShow=this.IsShowAfterData&&this.IsShowBeforeData;var subItem={Name:"盘后盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!bShow,Right:!bShow}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Left:!this.IsShowBeforeData}]},Checked:this.IsShowBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(单日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{Right:!this.IsShowAfterData}]},Checked:this.IsShowAfterData};item.SubMenu.push(subItem);var bShow=this.IsShowMultiDayBeforeData&&this.IsShowMultiDayAfterData;var subItem={Name:"盘后盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!bShow,Right:!bShow}}]},Checked:bShow};item.SubMenu.push(subItem);var subItem={Name:"盘前(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Left:!this.IsShowMultiDayBeforeData}}]},Checked:this.IsShowMultiDayBeforeData};item.SubMenu.push(subItem);var subItem={Name:"盘后(多日)",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CALLCATION_ID,Args:[{MultiDay:{Right:!this.IsShowMultiDayAfterData}}]},Checked:this.IsShowMultiDayAfterData};item.SubMenu.push(subItem);aryMenu.splice(4,0,item);}for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="叠加品种")//删除菜单
|
|
9209
9213
|
{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=="十字光标"){if(minItem){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:minItem.Date,Time:minItem.Time},Draw:true}]},Checked:bLocked});}}}return aryMenu;};this.OnWheel=function(e){JSConsole.Chart.Log('[MinuteChartContainer::OnWheel]',e);if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var isInClient=false;var rtClient={Left:this.Frame.ChartBorder.GetLeft(),Right:this.Frame.ChartBorder.GetRight(),Top:this.Frame.ChartBorder.GetTop(),Bottom:this.Frame.ChartBorder.GetBottom(),Width:this.Frame.ChartBorder.GetWidth(),Height:this.Frame.ChartBorder.GetHeight()};if(x>=rtClient.Left&&x<=rtClient.Right&&y>=rtClient.Top&&y<=rtClient.Bottom)isInClient=true;var bPreventDefault=false;if(this.OnWheel_ChangeDayCount(e,x,y))//ctrl+上下滚轴
|
|
9210
9214
|
{bPreventDefault=true;}else{if(this.OnWheel_ZoomUpDownFrameY(e,x,y))bPreventDefault=true;}if(bPreventDefault){if(e.preventDefault)e.preventDefault();else e.returnValue=false;}};//通过滚轴缩放Y轴
|
|
9211
9215
|
this.OnWheel_ZoomUpDownFrameY=function(e,x,y){if(!this.EnableYDrag.Wheel)return false;var frameID=this.Frame.PtInFrame(x,y);if(frameID<0)return false;var frame=this.Frame.SubFrame[frameID].Frame;var splitOper=frame.YSplitOperator;if(!splitOper||!splitOper.FixedYMaxMin)return false;//Y轴缩放状态下才有效
|
|
@@ -15718,7 +15722,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
15718
15722
|
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);};}/********************************************************************************
|
|
15719
15723
|
* 版本信息输出
|
|
15720
15724
|
*
|
|
15721
|
-
*/var HQCHART_VERSION="1.1.
|
|
15725
|
+
*/var HQCHART_VERSION="1.1.15311";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();//把给外界调用的方法暴露出来
|
|
15722
15726
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
15723
15727
|
// BaseIndex:BaseIndex,
|
|
15724
15728
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
package/src/jscommon/umychart.js
CHANGED
|
@@ -1136,6 +1136,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
1136
1136
|
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
1137
1137
|
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
1138
1138
|
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
1139
|
+
|
|
1140
|
+
if (item.TextStyle)
|
|
1141
|
+
{
|
|
1142
|
+
if (item.TextStyle.Right) //右侧输出样式
|
|
1143
|
+
{
|
|
1144
|
+
var subItem=item.TextStyle.Right;
|
|
1145
|
+
if (IFrameSplitOperator.IsNumber(subItem.Type)) chart.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=subItem.Type;
|
|
1146
|
+
}
|
|
1147
|
+
}
|
|
1139
1148
|
}
|
|
1140
1149
|
|
|
1141
1150
|
if (option.MinuteInfo) chart.CreateMinuteInfo(option.MinuteInfo);
|
|
@@ -3139,6 +3148,7 @@ var JSCHART_MENU_ID=
|
|
|
3139
3148
|
|
|
3140
3149
|
CMD_CHANGE_YRIGHT_TEXT_FORMAT:62, //分时图主图 右侧刻度格式
|
|
3141
3150
|
CMD_ENABLE_ZOOM_Y_ID:63, //放大缩小Y坐标 { FrameID:, Enable: , Range:{ Max:, Min: }}
|
|
3151
|
+
CMD_CORSS_YRIGHT_TEXT_STYLE:64, //十字光标右侧输出样式
|
|
3142
3152
|
|
|
3143
3153
|
|
|
3144
3154
|
CMD_REPORT_CHANGE_BLOCK_ID:100, //报价列表 切换板块ID
|
|
@@ -11941,6 +11951,11 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
11941
11951
|
this.ResetFrameXYSplit();
|
|
11942
11952
|
this.Draw();
|
|
11943
11953
|
break;
|
|
11954
|
+
case JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE:
|
|
11955
|
+
if (param==null) return false;
|
|
11956
|
+
if (!this.ChartCorssCursor || !this.ChartCorssCursor.StringFormatY) return false;
|
|
11957
|
+
this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=param;
|
|
11958
|
+
break;
|
|
11944
11959
|
case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:
|
|
11945
11960
|
if (!srcParam) return false;
|
|
11946
11961
|
if (this.EnableZoomYCoordinate) this.EnableZoomYCoordinate(srcParam);
|
|
@@ -59134,8 +59149,16 @@ function ChartCorssCursor()
|
|
|
59134
59149
|
if (IFrameSplitOperator.IsNumber(itemSize.Height)) yValue=itemSize.Height/2;
|
|
59135
59150
|
}
|
|
59136
59151
|
|
|
59137
|
-
|
|
59138
|
-
|
|
59152
|
+
if (complexText.BaseLine=="center")
|
|
59153
|
+
{
|
|
59154
|
+
rtBG.Top=rtBG.YCenter-rtBG.Height/2;
|
|
59155
|
+
rtBG.Bottom=rtBG.Top+rtBG.Height;
|
|
59156
|
+
}
|
|
59157
|
+
else
|
|
59158
|
+
{
|
|
59159
|
+
rtBG.Top=rtBG.YCenter-yValue;
|
|
59160
|
+
rtBG.Bottom=rtBG.Top+rtBG.Height;
|
|
59161
|
+
}
|
|
59139
59162
|
}
|
|
59140
59163
|
else
|
|
59141
59164
|
{
|
|
@@ -59348,7 +59371,6 @@ function ChartCorssCursor()
|
|
|
59348
59371
|
if (complexText.ShowType==1) showType=complexText.ShowType;
|
|
59349
59372
|
if (showType==1) //多行
|
|
59350
59373
|
{
|
|
59351
|
-
var xLeft=rtBG.Left;
|
|
59352
59374
|
var yTop=rtBG.Top; //顶
|
|
59353
59375
|
for(var i=0; i<complexText.Text.length; ++i)
|
|
59354
59376
|
{
|
|
@@ -59362,7 +59384,17 @@ function ChartCorssCursor()
|
|
|
59362
59384
|
else this.Canvas.fillStyle=complexText.Color;
|
|
59363
59385
|
|
|
59364
59386
|
var y=yTop+itemSize.Height;
|
|
59387
|
+
var xLeft=rtBG.Left, xRight=rtBG.Right;
|
|
59388
|
+
if (item.Margin)
|
|
59389
|
+
{
|
|
59390
|
+
var margin=item.Margin;
|
|
59391
|
+
if (IFrameSplitOperator.IsNumber(margin.Left)) xLeft+=margin.Left;
|
|
59392
|
+
if (IFrameSplitOperator.IsNumber(margin.Right)) xRight-=margin.Right;
|
|
59393
|
+
}
|
|
59394
|
+
|
|
59365
59395
|
var x=xLeft;
|
|
59396
|
+
if (item.TextAlign=="right") x=xRight-itemSize.TextWidth;
|
|
59397
|
+
else if (item.TextAlign=="center") x=rtBG.Left+rtBG.Width/2-itemSize.TextWidth/2;
|
|
59366
59398
|
|
|
59367
59399
|
if (item.TextOffset)
|
|
59368
59400
|
{
|
|
@@ -59371,7 +59403,7 @@ function ChartCorssCursor()
|
|
|
59371
59403
|
if (IFrameSplitOperator.IsNumber(textOffset.Y)) y+=textOffset.Y;
|
|
59372
59404
|
}
|
|
59373
59405
|
|
|
59374
|
-
this.Canvas.fillText(item.Text,x,y,itemSize.
|
|
59406
|
+
this.Canvas.fillText(item.Text,x,y,itemSize.TextWidth);
|
|
59375
59407
|
|
|
59376
59408
|
yTop+=itemSize.Height;
|
|
59377
59409
|
}
|
|
@@ -59422,7 +59454,8 @@ function ChartCorssCursor()
|
|
|
59422
59454
|
var item=complexText.Text[i];
|
|
59423
59455
|
if (item.Font) this.Canvas.font=item.Font;
|
|
59424
59456
|
else this.Canvas.font=complexText.Font;
|
|
59425
|
-
var
|
|
59457
|
+
var outWidth=this.Canvas.measureText(item.Text).width;
|
|
59458
|
+
var itemWidth=outWidth
|
|
59426
59459
|
var itemHeight=this.GetFontHeight();
|
|
59427
59460
|
if (item.Margin)
|
|
59428
59461
|
{
|
|
@@ -59433,7 +59466,7 @@ function ChartCorssCursor()
|
|
|
59433
59466
|
if (IFrameSplitOperator.IsNumber(margin.Bottom)) itemHeight+=margin.Bottom;
|
|
59434
59467
|
}
|
|
59435
59468
|
|
|
59436
|
-
size.Text[i]={ Width:itemWidth, Height:itemHeight }; //保存所有文字的大小信息
|
|
59469
|
+
size.Text[i]={ Width:itemWidth, Height:itemHeight, TextWidth:outWidth }; //保存所有文字的大小信息
|
|
59437
59470
|
|
|
59438
59471
|
if (textWidth<itemWidth) textWidth=itemWidth;
|
|
59439
59472
|
textHeight+=itemHeight;
|
|
@@ -59450,8 +59483,8 @@ function ChartCorssCursor()
|
|
|
59450
59483
|
var item=complexText.Text[i];
|
|
59451
59484
|
if (item.Font) this.Canvas.font=item.Font;
|
|
59452
59485
|
else this.Canvas.font=complexText.Font;
|
|
59453
|
-
|
|
59454
|
-
var itemWidth=
|
|
59486
|
+
var outWidth=this.Canvas.measureText(item.Text).width;
|
|
59487
|
+
var itemWidth=outWidth;
|
|
59455
59488
|
var itemHeight=this.Canvas.measureText("擎").width;
|
|
59456
59489
|
if (item.Margin)
|
|
59457
59490
|
{
|
|
@@ -59462,7 +59495,7 @@ function ChartCorssCursor()
|
|
|
59462
59495
|
if (IFrameSplitOperator.IsNumber(margin.Bottom)) itemHeight+=margin.Bottom;
|
|
59463
59496
|
}
|
|
59464
59497
|
|
|
59465
|
-
size.Text[i]={ Width:itemWidth, Height:itemHeight }; //保存所有文字的大小信息
|
|
59498
|
+
size.Text[i]={ Width:itemWidth, Height:itemHeight, TextWidth:outWidth }; //保存所有文字的大小信息
|
|
59466
59499
|
|
|
59467
59500
|
textWidth+=itemWidth;
|
|
59468
59501
|
if (textHeight<itemHeight) textHeight=itemHeight;
|
|
@@ -60473,6 +60506,24 @@ function HQPriceStringFormat()
|
|
|
60473
60506
|
this.Point;
|
|
60474
60507
|
this.ClientPos=-1;
|
|
60475
60508
|
this.HQChart;
|
|
60509
|
+
this.TextStyleConfig={ Right:{ Type:-1 } }; //输出文本样式 Type: -1=默认 1=价格 2=价格|涨幅 2行(分时图)
|
|
60510
|
+
//自定义样式模板
|
|
60511
|
+
this.TextStyleTemplate=
|
|
60512
|
+
[
|
|
60513
|
+
null,
|
|
60514
|
+
null,
|
|
60515
|
+
/*
|
|
60516
|
+
{
|
|
60517
|
+
ShowType:1, Space:2,
|
|
60518
|
+
BaseLine:"center",
|
|
60519
|
+
Text:
|
|
60520
|
+
[
|
|
60521
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:5, Right:5 } },
|
|
60522
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:5, Right:5 } }
|
|
60523
|
+
]
|
|
60524
|
+
}
|
|
60525
|
+
*/
|
|
60526
|
+
]
|
|
60476
60527
|
|
|
60477
60528
|
this.ExtendChartPaint;
|
|
60478
60529
|
this.RExtendText=[];
|
|
@@ -60566,6 +60617,13 @@ function HQPriceStringFormat()
|
|
|
60566
60617
|
}
|
|
60567
60618
|
}
|
|
60568
60619
|
|
|
60620
|
+
this.GetTextStyleTemplate=function(type, defaultTemplate)
|
|
60621
|
+
{
|
|
60622
|
+
var template=this.TextStyleTemplate[type];
|
|
60623
|
+
if (!template) return defaultTemplate;
|
|
60624
|
+
return CloneData(template);
|
|
60625
|
+
}
|
|
60626
|
+
|
|
60569
60627
|
this.Operator=function()
|
|
60570
60628
|
{
|
|
60571
60629
|
this.RText=null;
|
|
@@ -60584,7 +60642,41 @@ function HQPriceStringFormat()
|
|
|
60584
60642
|
else
|
|
60585
60643
|
this.Text=this.Value.toFixed(defaultfloatPrecision);
|
|
60586
60644
|
|
|
60587
|
-
if (this.
|
|
60645
|
+
if (this.TextStyleConfig.Right.Type==2)
|
|
60646
|
+
{
|
|
60647
|
+
if (IFrameSplitOperator.IsNumber(this.YClose))
|
|
60648
|
+
{
|
|
60649
|
+
var value=(this.Value-this.YClose)*100/this.YClose;
|
|
60650
|
+
var text=`${value.toFixed(2)}%`;
|
|
60651
|
+
if (value>=0) text=` ${value.toFixed(2)}%`;
|
|
60652
|
+
|
|
60653
|
+
var defaultTemplate=
|
|
60654
|
+
{
|
|
60655
|
+
ShowType:1, Space:2,
|
|
60656
|
+
BaseLine:"center",
|
|
60657
|
+
Text:
|
|
60658
|
+
[
|
|
60659
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:2, Right:2 } },
|
|
60660
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:2, Right:2 }}
|
|
60661
|
+
]
|
|
60662
|
+
}
|
|
60663
|
+
|
|
60664
|
+
var complexText=this.GetTextStyleTemplate(this.TextStyleConfig.Right.Type,defaultTemplate);
|
|
60665
|
+
|
|
60666
|
+
complexText.Text[0].Text=this.Text; //价格
|
|
60667
|
+
complexText.Text[1].Text=text; //百分比
|
|
60668
|
+
|
|
60669
|
+
this.RComplexText=complexText;
|
|
60670
|
+
}
|
|
60671
|
+
}
|
|
60672
|
+
else if (this.TextStyleConfig.Right.Type==1)
|
|
60673
|
+
{
|
|
60674
|
+
|
|
60675
|
+
}
|
|
60676
|
+
else
|
|
60677
|
+
{
|
|
60678
|
+
if (IFrameSplitOperator.IsNumber(this.YClose)) this.PercentageText=((this.Value-this.YClose)*100/this.YClose).toFixed(2); //走势图右边坐标显示百分比
|
|
60679
|
+
}
|
|
60588
60680
|
|
|
60589
60681
|
this.GetExtendPaintData(defaultfloatPrecision);
|
|
60590
60682
|
}
|
|
@@ -92753,6 +92845,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
92753
92845
|
var bCorssDrawVaildTime=false;
|
|
92754
92846
|
var bCorssDrawPoint=false;
|
|
92755
92847
|
var bCorssBCClick=false;
|
|
92848
|
+
var corssRightTextStyle=-1;
|
|
92756
92849
|
if (this.ChartCorssCursor)
|
|
92757
92850
|
{
|
|
92758
92851
|
bShowCorss=this.ChartCorssCursor.IsShowCorss;
|
|
@@ -92760,6 +92853,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
92760
92853
|
bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
|
|
92761
92854
|
bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
|
|
92762
92855
|
bCorssBCClick=this.ChartCorssCursor.EnableDBClick;
|
|
92856
|
+
if (this.ChartCorssCursor.StringFormatY) corssRightTextStyle=this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type;
|
|
92763
92857
|
}
|
|
92764
92858
|
|
|
92765
92859
|
var bRButtonSelectRect=false,bLButtonSelectRect=false;
|
|
@@ -92867,6 +92961,15 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
92867
92961
|
{ Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
|
|
92868
92962
|
{ Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
|
|
92869
92963
|
{ Name:"双击显示/隐藏", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID, Args:[!bCorssBCClick]}, Checked:bCorssBCClick },
|
|
92964
|
+
{
|
|
92965
|
+
Name:"主图右侧文字格式",
|
|
92966
|
+
SubMenu:
|
|
92967
|
+
[
|
|
92968
|
+
{ Name:"默认(百分比)", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[-1]}, Checked:corssRightTextStyle===-1 },
|
|
92969
|
+
{ Name:"价格", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[1]}, Checked:corssRightTextStyle===1 },
|
|
92970
|
+
{ Name:"价格|百分比(两行)", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[2]}, Checked:corssRightTextStyle===2 },
|
|
92971
|
+
]
|
|
92972
|
+
},
|
|
92870
92973
|
]
|
|
92871
92974
|
},
|
|
92872
92975
|
|
|
@@ -5232,6 +5232,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
5232
5232
|
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
5233
5233
|
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
5234
5234
|
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
5235
|
+
|
|
5236
|
+
if (item.TextStyle)
|
|
5237
|
+
{
|
|
5238
|
+
if (item.TextStyle.Right) //右侧输出样式
|
|
5239
|
+
{
|
|
5240
|
+
var subItem=item.TextStyle.Right;
|
|
5241
|
+
if (IFrameSplitOperator.IsNumber(subItem.Type)) chart.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=subItem.Type;
|
|
5242
|
+
}
|
|
5243
|
+
}
|
|
5235
5244
|
}
|
|
5236
5245
|
|
|
5237
5246
|
if (option.MinuteInfo) chart.CreateMinuteInfo(option.MinuteInfo);
|
|
@@ -7235,6 +7244,7 @@ var JSCHART_MENU_ID=
|
|
|
7235
7244
|
|
|
7236
7245
|
CMD_CHANGE_YRIGHT_TEXT_FORMAT:62, //分时图主图 右侧刻度格式
|
|
7237
7246
|
CMD_ENABLE_ZOOM_Y_ID:63, //放大缩小Y坐标 { FrameID:, Enable: , Range:{ Max:, Min: }}
|
|
7247
|
+
CMD_CORSS_YRIGHT_TEXT_STYLE:64, //十字光标右侧输出样式
|
|
7238
7248
|
|
|
7239
7249
|
|
|
7240
7250
|
CMD_REPORT_CHANGE_BLOCK_ID:100, //报价列表 切换板块ID
|
|
@@ -16037,6 +16047,11 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
16037
16047
|
this.ResetFrameXYSplit();
|
|
16038
16048
|
this.Draw();
|
|
16039
16049
|
break;
|
|
16050
|
+
case JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE:
|
|
16051
|
+
if (param==null) return false;
|
|
16052
|
+
if (!this.ChartCorssCursor || !this.ChartCorssCursor.StringFormatY) return false;
|
|
16053
|
+
this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=param;
|
|
16054
|
+
break;
|
|
16040
16055
|
case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:
|
|
16041
16056
|
if (!srcParam) return false;
|
|
16042
16057
|
if (this.EnableZoomYCoordinate) this.EnableZoomYCoordinate(srcParam);
|
|
@@ -63230,8 +63245,16 @@ function ChartCorssCursor()
|
|
|
63230
63245
|
if (IFrameSplitOperator.IsNumber(itemSize.Height)) yValue=itemSize.Height/2;
|
|
63231
63246
|
}
|
|
63232
63247
|
|
|
63233
|
-
|
|
63234
|
-
|
|
63248
|
+
if (complexText.BaseLine=="center")
|
|
63249
|
+
{
|
|
63250
|
+
rtBG.Top=rtBG.YCenter-rtBG.Height/2;
|
|
63251
|
+
rtBG.Bottom=rtBG.Top+rtBG.Height;
|
|
63252
|
+
}
|
|
63253
|
+
else
|
|
63254
|
+
{
|
|
63255
|
+
rtBG.Top=rtBG.YCenter-yValue;
|
|
63256
|
+
rtBG.Bottom=rtBG.Top+rtBG.Height;
|
|
63257
|
+
}
|
|
63235
63258
|
}
|
|
63236
63259
|
else
|
|
63237
63260
|
{
|
|
@@ -63444,7 +63467,6 @@ function ChartCorssCursor()
|
|
|
63444
63467
|
if (complexText.ShowType==1) showType=complexText.ShowType;
|
|
63445
63468
|
if (showType==1) //多行
|
|
63446
63469
|
{
|
|
63447
|
-
var xLeft=rtBG.Left;
|
|
63448
63470
|
var yTop=rtBG.Top; //顶
|
|
63449
63471
|
for(var i=0; i<complexText.Text.length; ++i)
|
|
63450
63472
|
{
|
|
@@ -63458,7 +63480,17 @@ function ChartCorssCursor()
|
|
|
63458
63480
|
else this.Canvas.fillStyle=complexText.Color;
|
|
63459
63481
|
|
|
63460
63482
|
var y=yTop+itemSize.Height;
|
|
63483
|
+
var xLeft=rtBG.Left, xRight=rtBG.Right;
|
|
63484
|
+
if (item.Margin)
|
|
63485
|
+
{
|
|
63486
|
+
var margin=item.Margin;
|
|
63487
|
+
if (IFrameSplitOperator.IsNumber(margin.Left)) xLeft+=margin.Left;
|
|
63488
|
+
if (IFrameSplitOperator.IsNumber(margin.Right)) xRight-=margin.Right;
|
|
63489
|
+
}
|
|
63490
|
+
|
|
63461
63491
|
var x=xLeft;
|
|
63492
|
+
if (item.TextAlign=="right") x=xRight-itemSize.TextWidth;
|
|
63493
|
+
else if (item.TextAlign=="center") x=rtBG.Left+rtBG.Width/2-itemSize.TextWidth/2;
|
|
63462
63494
|
|
|
63463
63495
|
if (item.TextOffset)
|
|
63464
63496
|
{
|
|
@@ -63467,7 +63499,7 @@ function ChartCorssCursor()
|
|
|
63467
63499
|
if (IFrameSplitOperator.IsNumber(textOffset.Y)) y+=textOffset.Y;
|
|
63468
63500
|
}
|
|
63469
63501
|
|
|
63470
|
-
this.Canvas.fillText(item.Text,x,y,itemSize.
|
|
63502
|
+
this.Canvas.fillText(item.Text,x,y,itemSize.TextWidth);
|
|
63471
63503
|
|
|
63472
63504
|
yTop+=itemSize.Height;
|
|
63473
63505
|
}
|
|
@@ -63518,7 +63550,8 @@ function ChartCorssCursor()
|
|
|
63518
63550
|
var item=complexText.Text[i];
|
|
63519
63551
|
if (item.Font) this.Canvas.font=item.Font;
|
|
63520
63552
|
else this.Canvas.font=complexText.Font;
|
|
63521
|
-
var
|
|
63553
|
+
var outWidth=this.Canvas.measureText(item.Text).width;
|
|
63554
|
+
var itemWidth=outWidth
|
|
63522
63555
|
var itemHeight=this.GetFontHeight();
|
|
63523
63556
|
if (item.Margin)
|
|
63524
63557
|
{
|
|
@@ -63529,7 +63562,7 @@ function ChartCorssCursor()
|
|
|
63529
63562
|
if (IFrameSplitOperator.IsNumber(margin.Bottom)) itemHeight+=margin.Bottom;
|
|
63530
63563
|
}
|
|
63531
63564
|
|
|
63532
|
-
size.Text[i]={ Width:itemWidth, Height:itemHeight }; //保存所有文字的大小信息
|
|
63565
|
+
size.Text[i]={ Width:itemWidth, Height:itemHeight, TextWidth:outWidth }; //保存所有文字的大小信息
|
|
63533
63566
|
|
|
63534
63567
|
if (textWidth<itemWidth) textWidth=itemWidth;
|
|
63535
63568
|
textHeight+=itemHeight;
|
|
@@ -63546,8 +63579,8 @@ function ChartCorssCursor()
|
|
|
63546
63579
|
var item=complexText.Text[i];
|
|
63547
63580
|
if (item.Font) this.Canvas.font=item.Font;
|
|
63548
63581
|
else this.Canvas.font=complexText.Font;
|
|
63549
|
-
|
|
63550
|
-
var itemWidth=
|
|
63582
|
+
var outWidth=this.Canvas.measureText(item.Text).width;
|
|
63583
|
+
var itemWidth=outWidth;
|
|
63551
63584
|
var itemHeight=this.Canvas.measureText("擎").width;
|
|
63552
63585
|
if (item.Margin)
|
|
63553
63586
|
{
|
|
@@ -63558,7 +63591,7 @@ function ChartCorssCursor()
|
|
|
63558
63591
|
if (IFrameSplitOperator.IsNumber(margin.Bottom)) itemHeight+=margin.Bottom;
|
|
63559
63592
|
}
|
|
63560
63593
|
|
|
63561
|
-
size.Text[i]={ Width:itemWidth, Height:itemHeight }; //保存所有文字的大小信息
|
|
63594
|
+
size.Text[i]={ Width:itemWidth, Height:itemHeight, TextWidth:outWidth }; //保存所有文字的大小信息
|
|
63562
63595
|
|
|
63563
63596
|
textWidth+=itemWidth;
|
|
63564
63597
|
if (textHeight<itemHeight) textHeight=itemHeight;
|
|
@@ -64569,6 +64602,24 @@ function HQPriceStringFormat()
|
|
|
64569
64602
|
this.Point;
|
|
64570
64603
|
this.ClientPos=-1;
|
|
64571
64604
|
this.HQChart;
|
|
64605
|
+
this.TextStyleConfig={ Right:{ Type:-1 } }; //输出文本样式 Type: -1=默认 1=价格 2=价格|涨幅 2行(分时图)
|
|
64606
|
+
//自定义样式模板
|
|
64607
|
+
this.TextStyleTemplate=
|
|
64608
|
+
[
|
|
64609
|
+
null,
|
|
64610
|
+
null,
|
|
64611
|
+
/*
|
|
64612
|
+
{
|
|
64613
|
+
ShowType:1, Space:2,
|
|
64614
|
+
BaseLine:"center",
|
|
64615
|
+
Text:
|
|
64616
|
+
[
|
|
64617
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:5, Right:5 } },
|
|
64618
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:5, Right:5 } }
|
|
64619
|
+
]
|
|
64620
|
+
}
|
|
64621
|
+
*/
|
|
64622
|
+
]
|
|
64572
64623
|
|
|
64573
64624
|
this.ExtendChartPaint;
|
|
64574
64625
|
this.RExtendText=[];
|
|
@@ -64662,6 +64713,13 @@ function HQPriceStringFormat()
|
|
|
64662
64713
|
}
|
|
64663
64714
|
}
|
|
64664
64715
|
|
|
64716
|
+
this.GetTextStyleTemplate=function(type, defaultTemplate)
|
|
64717
|
+
{
|
|
64718
|
+
var template=this.TextStyleTemplate[type];
|
|
64719
|
+
if (!template) return defaultTemplate;
|
|
64720
|
+
return CloneData(template);
|
|
64721
|
+
}
|
|
64722
|
+
|
|
64665
64723
|
this.Operator=function()
|
|
64666
64724
|
{
|
|
64667
64725
|
this.RText=null;
|
|
@@ -64680,7 +64738,41 @@ function HQPriceStringFormat()
|
|
|
64680
64738
|
else
|
|
64681
64739
|
this.Text=this.Value.toFixed(defaultfloatPrecision);
|
|
64682
64740
|
|
|
64683
|
-
if (this.
|
|
64741
|
+
if (this.TextStyleConfig.Right.Type==2)
|
|
64742
|
+
{
|
|
64743
|
+
if (IFrameSplitOperator.IsNumber(this.YClose))
|
|
64744
|
+
{
|
|
64745
|
+
var value=(this.Value-this.YClose)*100/this.YClose;
|
|
64746
|
+
var text=`${value.toFixed(2)}%`;
|
|
64747
|
+
if (value>=0) text=` ${value.toFixed(2)}%`;
|
|
64748
|
+
|
|
64749
|
+
var defaultTemplate=
|
|
64750
|
+
{
|
|
64751
|
+
ShowType:1, Space:2,
|
|
64752
|
+
BaseLine:"center",
|
|
64753
|
+
Text:
|
|
64754
|
+
[
|
|
64755
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:2, Right:2 } },
|
|
64756
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:2, Right:2 }}
|
|
64757
|
+
]
|
|
64758
|
+
}
|
|
64759
|
+
|
|
64760
|
+
var complexText=this.GetTextStyleTemplate(this.TextStyleConfig.Right.Type,defaultTemplate);
|
|
64761
|
+
|
|
64762
|
+
complexText.Text[0].Text=this.Text; //价格
|
|
64763
|
+
complexText.Text[1].Text=text; //百分比
|
|
64764
|
+
|
|
64765
|
+
this.RComplexText=complexText;
|
|
64766
|
+
}
|
|
64767
|
+
}
|
|
64768
|
+
else if (this.TextStyleConfig.Right.Type==1)
|
|
64769
|
+
{
|
|
64770
|
+
|
|
64771
|
+
}
|
|
64772
|
+
else
|
|
64773
|
+
{
|
|
64774
|
+
if (IFrameSplitOperator.IsNumber(this.YClose)) this.PercentageText=((this.Value-this.YClose)*100/this.YClose).toFixed(2); //走势图右边坐标显示百分比
|
|
64775
|
+
}
|
|
64684
64776
|
|
|
64685
64777
|
this.GetExtendPaintData(defaultfloatPrecision);
|
|
64686
64778
|
}
|
|
@@ -96849,6 +96941,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96849
96941
|
var bCorssDrawVaildTime=false;
|
|
96850
96942
|
var bCorssDrawPoint=false;
|
|
96851
96943
|
var bCorssBCClick=false;
|
|
96944
|
+
var corssRightTextStyle=-1;
|
|
96852
96945
|
if (this.ChartCorssCursor)
|
|
96853
96946
|
{
|
|
96854
96947
|
bShowCorss=this.ChartCorssCursor.IsShowCorss;
|
|
@@ -96856,6 +96949,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96856
96949
|
bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
|
|
96857
96950
|
bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
|
|
96858
96951
|
bCorssBCClick=this.ChartCorssCursor.EnableDBClick;
|
|
96952
|
+
if (this.ChartCorssCursor.StringFormatY) corssRightTextStyle=this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type;
|
|
96859
96953
|
}
|
|
96860
96954
|
|
|
96861
96955
|
var bRButtonSelectRect=false,bLButtonSelectRect=false;
|
|
@@ -96963,6 +97057,15 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96963
97057
|
{ Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
|
|
96964
97058
|
{ Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
|
|
96965
97059
|
{ Name:"双击显示/隐藏", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID, Args:[!bCorssBCClick]}, Checked:bCorssBCClick },
|
|
97060
|
+
{
|
|
97061
|
+
Name:"主图右侧文字格式",
|
|
97062
|
+
SubMenu:
|
|
97063
|
+
[
|
|
97064
|
+
{ Name:"默认(百分比)", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[-1]}, Checked:corssRightTextStyle===-1 },
|
|
97065
|
+
{ Name:"价格", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[1]}, Checked:corssRightTextStyle===1 },
|
|
97066
|
+
{ Name:"价格|百分比(两行)", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[2]}, Checked:corssRightTextStyle===2 },
|
|
97067
|
+
]
|
|
97068
|
+
},
|
|
96966
97069
|
]
|
|
96967
97070
|
},
|
|
96968
97071
|
|
|
@@ -155035,7 +155138,7 @@ function ScrollBarBGChart()
|
|
|
155035
155138
|
|
|
155036
155139
|
|
|
155037
155140
|
|
|
155038
|
-
var HQCHART_VERSION="1.1.
|
|
155141
|
+
var HQCHART_VERSION="1.1.15311";
|
|
155039
155142
|
|
|
155040
155143
|
function PrintHQChartVersion()
|
|
155041
155144
|
{
|
|
@@ -5276,6 +5276,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
5276
5276
|
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
5277
5277
|
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
5278
5278
|
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
5279
|
+
|
|
5280
|
+
if (item.TextStyle)
|
|
5281
|
+
{
|
|
5282
|
+
if (item.TextStyle.Right) //右侧输出样式
|
|
5283
|
+
{
|
|
5284
|
+
var subItem=item.TextStyle.Right;
|
|
5285
|
+
if (IFrameSplitOperator.IsNumber(subItem.Type)) chart.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=subItem.Type;
|
|
5286
|
+
}
|
|
5287
|
+
}
|
|
5279
5288
|
}
|
|
5280
5289
|
|
|
5281
5290
|
if (option.MinuteInfo) chart.CreateMinuteInfo(option.MinuteInfo);
|
|
@@ -7279,6 +7288,7 @@ var JSCHART_MENU_ID=
|
|
|
7279
7288
|
|
|
7280
7289
|
CMD_CHANGE_YRIGHT_TEXT_FORMAT:62, //分时图主图 右侧刻度格式
|
|
7281
7290
|
CMD_ENABLE_ZOOM_Y_ID:63, //放大缩小Y坐标 { FrameID:, Enable: , Range:{ Max:, Min: }}
|
|
7291
|
+
CMD_CORSS_YRIGHT_TEXT_STYLE:64, //十字光标右侧输出样式
|
|
7282
7292
|
|
|
7283
7293
|
|
|
7284
7294
|
CMD_REPORT_CHANGE_BLOCK_ID:100, //报价列表 切换板块ID
|
|
@@ -16081,6 +16091,11 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
16081
16091
|
this.ResetFrameXYSplit();
|
|
16082
16092
|
this.Draw();
|
|
16083
16093
|
break;
|
|
16094
|
+
case JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE:
|
|
16095
|
+
if (param==null) return false;
|
|
16096
|
+
if (!this.ChartCorssCursor || !this.ChartCorssCursor.StringFormatY) return false;
|
|
16097
|
+
this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=param;
|
|
16098
|
+
break;
|
|
16084
16099
|
case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:
|
|
16085
16100
|
if (!srcParam) return false;
|
|
16086
16101
|
if (this.EnableZoomYCoordinate) this.EnableZoomYCoordinate(srcParam);
|
|
@@ -63274,8 +63289,16 @@ function ChartCorssCursor()
|
|
|
63274
63289
|
if (IFrameSplitOperator.IsNumber(itemSize.Height)) yValue=itemSize.Height/2;
|
|
63275
63290
|
}
|
|
63276
63291
|
|
|
63277
|
-
|
|
63278
|
-
|
|
63292
|
+
if (complexText.BaseLine=="center")
|
|
63293
|
+
{
|
|
63294
|
+
rtBG.Top=rtBG.YCenter-rtBG.Height/2;
|
|
63295
|
+
rtBG.Bottom=rtBG.Top+rtBG.Height;
|
|
63296
|
+
}
|
|
63297
|
+
else
|
|
63298
|
+
{
|
|
63299
|
+
rtBG.Top=rtBG.YCenter-yValue;
|
|
63300
|
+
rtBG.Bottom=rtBG.Top+rtBG.Height;
|
|
63301
|
+
}
|
|
63279
63302
|
}
|
|
63280
63303
|
else
|
|
63281
63304
|
{
|
|
@@ -63488,7 +63511,6 @@ function ChartCorssCursor()
|
|
|
63488
63511
|
if (complexText.ShowType==1) showType=complexText.ShowType;
|
|
63489
63512
|
if (showType==1) //多行
|
|
63490
63513
|
{
|
|
63491
|
-
var xLeft=rtBG.Left;
|
|
63492
63514
|
var yTop=rtBG.Top; //顶
|
|
63493
63515
|
for(var i=0; i<complexText.Text.length; ++i)
|
|
63494
63516
|
{
|
|
@@ -63502,7 +63524,17 @@ function ChartCorssCursor()
|
|
|
63502
63524
|
else this.Canvas.fillStyle=complexText.Color;
|
|
63503
63525
|
|
|
63504
63526
|
var y=yTop+itemSize.Height;
|
|
63527
|
+
var xLeft=rtBG.Left, xRight=rtBG.Right;
|
|
63528
|
+
if (item.Margin)
|
|
63529
|
+
{
|
|
63530
|
+
var margin=item.Margin;
|
|
63531
|
+
if (IFrameSplitOperator.IsNumber(margin.Left)) xLeft+=margin.Left;
|
|
63532
|
+
if (IFrameSplitOperator.IsNumber(margin.Right)) xRight-=margin.Right;
|
|
63533
|
+
}
|
|
63534
|
+
|
|
63505
63535
|
var x=xLeft;
|
|
63536
|
+
if (item.TextAlign=="right") x=xRight-itemSize.TextWidth;
|
|
63537
|
+
else if (item.TextAlign=="center") x=rtBG.Left+rtBG.Width/2-itemSize.TextWidth/2;
|
|
63506
63538
|
|
|
63507
63539
|
if (item.TextOffset)
|
|
63508
63540
|
{
|
|
@@ -63511,7 +63543,7 @@ function ChartCorssCursor()
|
|
|
63511
63543
|
if (IFrameSplitOperator.IsNumber(textOffset.Y)) y+=textOffset.Y;
|
|
63512
63544
|
}
|
|
63513
63545
|
|
|
63514
|
-
this.Canvas.fillText(item.Text,x,y,itemSize.
|
|
63546
|
+
this.Canvas.fillText(item.Text,x,y,itemSize.TextWidth);
|
|
63515
63547
|
|
|
63516
63548
|
yTop+=itemSize.Height;
|
|
63517
63549
|
}
|
|
@@ -63562,7 +63594,8 @@ function ChartCorssCursor()
|
|
|
63562
63594
|
var item=complexText.Text[i];
|
|
63563
63595
|
if (item.Font) this.Canvas.font=item.Font;
|
|
63564
63596
|
else this.Canvas.font=complexText.Font;
|
|
63565
|
-
var
|
|
63597
|
+
var outWidth=this.Canvas.measureText(item.Text).width;
|
|
63598
|
+
var itemWidth=outWidth
|
|
63566
63599
|
var itemHeight=this.GetFontHeight();
|
|
63567
63600
|
if (item.Margin)
|
|
63568
63601
|
{
|
|
@@ -63573,7 +63606,7 @@ function ChartCorssCursor()
|
|
|
63573
63606
|
if (IFrameSplitOperator.IsNumber(margin.Bottom)) itemHeight+=margin.Bottom;
|
|
63574
63607
|
}
|
|
63575
63608
|
|
|
63576
|
-
size.Text[i]={ Width:itemWidth, Height:itemHeight }; //保存所有文字的大小信息
|
|
63609
|
+
size.Text[i]={ Width:itemWidth, Height:itemHeight, TextWidth:outWidth }; //保存所有文字的大小信息
|
|
63577
63610
|
|
|
63578
63611
|
if (textWidth<itemWidth) textWidth=itemWidth;
|
|
63579
63612
|
textHeight+=itemHeight;
|
|
@@ -63590,8 +63623,8 @@ function ChartCorssCursor()
|
|
|
63590
63623
|
var item=complexText.Text[i];
|
|
63591
63624
|
if (item.Font) this.Canvas.font=item.Font;
|
|
63592
63625
|
else this.Canvas.font=complexText.Font;
|
|
63593
|
-
|
|
63594
|
-
var itemWidth=
|
|
63626
|
+
var outWidth=this.Canvas.measureText(item.Text).width;
|
|
63627
|
+
var itemWidth=outWidth;
|
|
63595
63628
|
var itemHeight=this.Canvas.measureText("擎").width;
|
|
63596
63629
|
if (item.Margin)
|
|
63597
63630
|
{
|
|
@@ -63602,7 +63635,7 @@ function ChartCorssCursor()
|
|
|
63602
63635
|
if (IFrameSplitOperator.IsNumber(margin.Bottom)) itemHeight+=margin.Bottom;
|
|
63603
63636
|
}
|
|
63604
63637
|
|
|
63605
|
-
size.Text[i]={ Width:itemWidth, Height:itemHeight }; //保存所有文字的大小信息
|
|
63638
|
+
size.Text[i]={ Width:itemWidth, Height:itemHeight, TextWidth:outWidth }; //保存所有文字的大小信息
|
|
63606
63639
|
|
|
63607
63640
|
textWidth+=itemWidth;
|
|
63608
63641
|
if (textHeight<itemHeight) textHeight=itemHeight;
|
|
@@ -64613,6 +64646,24 @@ function HQPriceStringFormat()
|
|
|
64613
64646
|
this.Point;
|
|
64614
64647
|
this.ClientPos=-1;
|
|
64615
64648
|
this.HQChart;
|
|
64649
|
+
this.TextStyleConfig={ Right:{ Type:-1 } }; //输出文本样式 Type: -1=默认 1=价格 2=价格|涨幅 2行(分时图)
|
|
64650
|
+
//自定义样式模板
|
|
64651
|
+
this.TextStyleTemplate=
|
|
64652
|
+
[
|
|
64653
|
+
null,
|
|
64654
|
+
null,
|
|
64655
|
+
/*
|
|
64656
|
+
{
|
|
64657
|
+
ShowType:1, Space:2,
|
|
64658
|
+
BaseLine:"center",
|
|
64659
|
+
Text:
|
|
64660
|
+
[
|
|
64661
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:5, Right:5 } },
|
|
64662
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:5, Right:5 } }
|
|
64663
|
+
]
|
|
64664
|
+
}
|
|
64665
|
+
*/
|
|
64666
|
+
]
|
|
64616
64667
|
|
|
64617
64668
|
this.ExtendChartPaint;
|
|
64618
64669
|
this.RExtendText=[];
|
|
@@ -64706,6 +64757,13 @@ function HQPriceStringFormat()
|
|
|
64706
64757
|
}
|
|
64707
64758
|
}
|
|
64708
64759
|
|
|
64760
|
+
this.GetTextStyleTemplate=function(type, defaultTemplate)
|
|
64761
|
+
{
|
|
64762
|
+
var template=this.TextStyleTemplate[type];
|
|
64763
|
+
if (!template) return defaultTemplate;
|
|
64764
|
+
return CloneData(template);
|
|
64765
|
+
}
|
|
64766
|
+
|
|
64709
64767
|
this.Operator=function()
|
|
64710
64768
|
{
|
|
64711
64769
|
this.RText=null;
|
|
@@ -64724,7 +64782,41 @@ function HQPriceStringFormat()
|
|
|
64724
64782
|
else
|
|
64725
64783
|
this.Text=this.Value.toFixed(defaultfloatPrecision);
|
|
64726
64784
|
|
|
64727
|
-
if (this.
|
|
64785
|
+
if (this.TextStyleConfig.Right.Type==2)
|
|
64786
|
+
{
|
|
64787
|
+
if (IFrameSplitOperator.IsNumber(this.YClose))
|
|
64788
|
+
{
|
|
64789
|
+
var value=(this.Value-this.YClose)*100/this.YClose;
|
|
64790
|
+
var text=`${value.toFixed(2)}%`;
|
|
64791
|
+
if (value>=0) text=` ${value.toFixed(2)}%`;
|
|
64792
|
+
|
|
64793
|
+
var defaultTemplate=
|
|
64794
|
+
{
|
|
64795
|
+
ShowType:1, Space:2,
|
|
64796
|
+
BaseLine:"center",
|
|
64797
|
+
Text:
|
|
64798
|
+
[
|
|
64799
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:2, Right:2 } },
|
|
64800
|
+
{ Text:null, TextAlign:"center", Margin:{ Left:2, Right:2 }}
|
|
64801
|
+
]
|
|
64802
|
+
}
|
|
64803
|
+
|
|
64804
|
+
var complexText=this.GetTextStyleTemplate(this.TextStyleConfig.Right.Type,defaultTemplate);
|
|
64805
|
+
|
|
64806
|
+
complexText.Text[0].Text=this.Text; //价格
|
|
64807
|
+
complexText.Text[1].Text=text; //百分比
|
|
64808
|
+
|
|
64809
|
+
this.RComplexText=complexText;
|
|
64810
|
+
}
|
|
64811
|
+
}
|
|
64812
|
+
else if (this.TextStyleConfig.Right.Type==1)
|
|
64813
|
+
{
|
|
64814
|
+
|
|
64815
|
+
}
|
|
64816
|
+
else
|
|
64817
|
+
{
|
|
64818
|
+
if (IFrameSplitOperator.IsNumber(this.YClose)) this.PercentageText=((this.Value-this.YClose)*100/this.YClose).toFixed(2); //走势图右边坐标显示百分比
|
|
64819
|
+
}
|
|
64728
64820
|
|
|
64729
64821
|
this.GetExtendPaintData(defaultfloatPrecision);
|
|
64730
64822
|
}
|
|
@@ -96893,6 +96985,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96893
96985
|
var bCorssDrawVaildTime=false;
|
|
96894
96986
|
var bCorssDrawPoint=false;
|
|
96895
96987
|
var bCorssBCClick=false;
|
|
96988
|
+
var corssRightTextStyle=-1;
|
|
96896
96989
|
if (this.ChartCorssCursor)
|
|
96897
96990
|
{
|
|
96898
96991
|
bShowCorss=this.ChartCorssCursor.IsShowCorss;
|
|
@@ -96900,6 +96993,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96900
96993
|
bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
|
|
96901
96994
|
bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
|
|
96902
96995
|
bCorssBCClick=this.ChartCorssCursor.EnableDBClick;
|
|
96996
|
+
if (this.ChartCorssCursor.StringFormatY) corssRightTextStyle=this.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type;
|
|
96903
96997
|
}
|
|
96904
96998
|
|
|
96905
96999
|
var bRButtonSelectRect=false,bLButtonSelectRect=false;
|
|
@@ -97007,6 +97101,15 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
97007
97101
|
{ Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
|
|
97008
97102
|
{ Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
|
|
97009
97103
|
{ Name:"双击显示/隐藏", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID, Args:[!bCorssBCClick]}, Checked:bCorssBCClick },
|
|
97104
|
+
{
|
|
97105
|
+
Name:"主图右侧文字格式",
|
|
97106
|
+
SubMenu:
|
|
97107
|
+
[
|
|
97108
|
+
{ Name:"默认(百分比)", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[-1]}, Checked:corssRightTextStyle===-1 },
|
|
97109
|
+
{ Name:"价格", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[1]}, Checked:corssRightTextStyle===1 },
|
|
97110
|
+
{ Name:"价格|百分比(两行)", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_YRIGHT_TEXT_STYLE, Args:[2]}, Checked:corssRightTextStyle===2 },
|
|
97111
|
+
]
|
|
97112
|
+
},
|
|
97010
97113
|
]
|
|
97011
97114
|
},
|
|
97012
97115
|
|
|
@@ -167094,7 +167197,7 @@ function HQChartScriptWorker()
|
|
|
167094
167197
|
|
|
167095
167198
|
|
|
167096
167199
|
|
|
167097
|
-
var HQCHART_VERSION="1.1.
|
|
167200
|
+
var HQCHART_VERSION="1.1.15311";
|
|
167098
167201
|
|
|
167099
167202
|
function PrintHQChartVersion()
|
|
167100
167203
|
{
|