hqchart 1.1.15368 → 1.1.15375
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
|
@@ -1182,7 +1182,9 @@ for(var i=0;i<chart.Frame.SubFrame.length;++i){chart.Frame.SubFrame[i].Frame.Cha
|
|
|
1182
1182
|
//属性设置
|
|
1183
1183
|
//
|
|
1184
1184
|
this.SetPressKeyboardConfig=function(chart,option){if(!chart||!option)return;if(IFrameSplitOperator.IsBool(option.PauseUpdate))chart.PressKeyboardConfig.PauseUpdate=option.PauseUpdate;};//缺口设置 KLine:{ PriceGap:{ Enable, Count } }
|
|
1185
|
-
this.SetPriceGapConfig=function(chart,option){if(!option||!option.PriceGap)return;var klineChart=chart.ChartPaint[0];if(!klineChart)return;var item=option.PriceGap;if(IFrameSplitOperator.IsBool(item.Enable))klineChart.PriceGap.Enable=item.Enable;if(IFrameSplitOperator.IsNumber(item.Count))klineChart.PriceGap.Count=item.Count;}
|
|
1185
|
+
this.SetPriceGapConfig=function(chart,option){if(!option||!option.PriceGap)return;var klineChart=chart.ChartPaint[0];if(!klineChart)return;var item=option.PriceGap;if(IFrameSplitOperator.IsBool(item.Enable))klineChart.PriceGap.Enable=item.Enable;if(IFrameSplitOperator.IsNumber(item.Count))klineChart.PriceGap.Count=item.Count;};//设置十字光标
|
|
1186
|
+
this.SetCorssCursorConfig=function(chart,option){if(!option||!option.CorssCursorInfo)return;var item=option.CorssCursorInfo;if(IFrameSplitOperator.IsNumber(item.Left))chart.ChartCorssCursor.ShowTextMode.Left=item.Left;if(IFrameSplitOperator.IsNumber(item.Right))chart.ChartCorssCursor.ShowTextMode.Right=item.Right;if(IFrameSplitOperator.IsNumber(item.Bottom))chart.ChartCorssCursor.ShowTextMode.Bottom=item.Bottom;if(IFrameSplitOperator.IsBool(item.IsShowCorss))chart.ChartCorssCursor.IsShowCorss=item.IsShowCorss;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;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.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(item.YDecimals)//Y轴文字小数位数
|
|
1187
|
+
{var subItem=item.YDecimals;if(IFrameSplitOperator.IsNumber(subItem.Value))chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Value=subItem.Value;if(IFrameSplitOperator.IsNumber(subItem.Type))chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Type=subItem.Type;}};//历史K线图
|
|
1186
1188
|
this.CreateKLineChartContainer=function(option){var _this=this;var chart=null;if(option.Type==="历史K线图横屏")chart=new KLineChartHScreenContainer(this.CanvasElement);else chart=new KLineChartContainer(this.CanvasElement,this.OffscreenCanvasElement,this.CacheCanvasElement);chart.GetExtraCanvas=function(name){return _this.GetExtraCanvas(name);};var extraElement=this.GetExtraCanvas(JSChart.CorssCursorCanvasKey);if(extraElement)chart.SetCorssCursorElement(extraElement);if(option.EventCallback)this.SetEventCallback(chart,option.EventCallback);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;var pixelRatio=GetDevicePixelRatio();//右键菜单
|
|
1187
1189
|
if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(option.ScriptError)chart.ScriptErrorCallback=option.ScriptError;if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(option.DisableMouse==true)chart.DisableMouse=option.DisableMouse;if(option.TouchMoveMinAngle)chart.TouchMoveMinAngle=option.TouchMoveMinAngle;if(option.EnableZoomUpDown)chart.EnableZoomUpDown=option.EnableZoomUpDown;if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsNumber(option.CtrlMoveStep))chart.CtrlMoveStep=option.CtrlMoveStep;if(IFrameSplitOperator.IsNumber(option.ShiftMoveStep))chart.ShiftMoveStep=option.ShiftMoveStep;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;if(IFrameSplitOperator.IsBool(option.EnableVerifyRecvData))chart.EnableVerifyRecvData=option.EnableVerifyRecvData;if(option.GlobalOption){var item=option.GlobalOption;if(IFrameSplitOperator.IsBool(item.IsValueFullRange))chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;if(IFrameSplitOperator.IsBool(item.EnableXShortDate))chart.GlobalOption.EnableXShortDate=item.EnableXShortDate;if(item.SelectedBorder){var subItem=item.SelectedBorder;if(IFrameSplitOperator.IsNumber(subItem.Mode))chart.GlobalOption.SelectedBorder.Mode=subItem.Mode;}}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.EnableXDrag){var item=option.EnableXDrag;if(IFrameSplitOperator.IsBool(item.Bottom))chart.EnableXDrag.Bottom=item.Bottom;if(item.LButton&&IFrameSplitOperator.IsNumber(item.LButton.Type))chart.EnableXDrag.LButton.Type=item.LButton.Type;if(item.RButton&&IFrameSplitOperator.IsNumber(item.RButton.Type))chart.EnableXDrag.RButton.Type=item.RButton.Type;}if(option.KLineTooltip){var item=option.KLineTooltip;if(IFrameSplitOperator.IsBool(item.Enable))chart.KLineTooltipConfig.Enable=item.Enable;if(IFrameSplitOperator.IsBool(item.EnableKeyDown))chart.KLineTooltipConfig.EnableKeyDown=item.EnableKeyDown;}if(option.KLine)//k线图的属性设置
|
|
1188
1190
|
{var item=option.KLine;if(option.KLine.DragMode>=0)chart.DragMode=option.KLine.DragMode;if(option.KLine.Right>=0)chart.Right=option.KLine.Right;if(option.KLine.Period>=0)chart.Period=option.KLine.Period;if(option.KLine.MaxReqeustDataCount>0)chart.MaxRequestDataCount=option.KLine.MaxReqeustDataCount;//兼容老版本
|
|
@@ -1197,10 +1199,11 @@ if(IFrameSplitOperator.IsNonEmptyArray(option.KLineCalcOption)){for(var i=0;i<op
|
|
|
1197
1199
|
}if(option.DragKLine){var item=option.DragKLine;if(IFrameSplitOperator.IsBool(item.EnableShfit))chart.KLineDragConfig.EnableShfit=item.EnableShfit;}}//创建子窗口
|
|
1198
1200
|
chart.Create(option.Windows.length,option);this.SetChartBorder(chart,option);this.AdjustChartBorder(chart);if(option.KLine){if(option.KLine.PageSize>0)//一屏显示的数据个数
|
|
1199
1201
|
{var pageSize=chart.GetMaxMinPageSize();if(pageSize.Max>10&&pageSize.Max<option.KLine.PageSize)chart.PageSize=pageSize.Max;else if(pageSize.Min>10&&pageSize.Min>option.KLine.PageSize)chart.PageSize=pageSize.Min;else chart.PageSize=option.KLine.PageSize;}}//取消显示十字光标刻度信息
|
|
1200
|
-
if(option.IsCorssOnlyDrawKLine===true)chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;if(option.CorssCursorTouchEnd===true)chart.CorssCursorTouchEnd=option.CorssCursorTouchEnd;if(option.IsClickShowCorssCursor==true)chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;
|
|
1202
|
+
if(option.IsCorssOnlyDrawKLine===true)chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;if(option.CorssCursorTouchEnd===true)chart.CorssCursorTouchEnd=option.CorssCursorTouchEnd;if(option.IsClickShowCorssCursor==true)chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;this.SetCorssCursorConfig(chart,option);if(option.CorssCursorInfo)//十字光标K线上的属性设置
|
|
1203
|
+
{var item=option.CorssCursorInfo;if(IFrameSplitOperator.IsBool(item.IsShowClose))chart.ChartCorssCursor.IsShowClose=item.IsShowClose;//Y轴显示收盘价
|
|
1201
1204
|
if(IFrameSplitOperator.IsBool(item.IsOnlyDrawKLine))chart.ChartCorssCursor.IsOnlyDrawKLine=item.IsOnlyDrawKLine;//Y轴显示收盘价
|
|
1202
1205
|
if(option.CorssCursorInfo.PressTime)chart.PressTime=option.CorssCursorInfo.PressTime;//长按显示十字光标的时间
|
|
1203
|
-
if(
|
|
1206
|
+
if(option.CorssCursorInfo.DateFormatType>0)chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;if(IFrameSplitOperator.IsBool(item.IsDrawXRangeBG))chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(IFrameSplitOperator.IsNumber(item.TextHeight))chart.ChartCorssCursor.TextHeight=item.TextHeight;if(item.RangeIncrease){var subItem=item.RangeIncrease;if(IFrameSplitOperator.IsBool(subItem.IsShow))chart.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=subItem.IsShow;if(IFrameSplitOperator.IsNumber(subItem.Formula))chart.ChartCorssCursor.StringFormatX.RangeIncrease.Formula=subItem.Formula;}}//保存十字光标文字高度
|
|
1204
1207
|
option.CorssCursor={};option.CorssCursor.TitleHeight=chart.ChartCorssCursor.TextHeight;if(IFrameSplitOperator.IsNumber(option.SplashTitlePosition)){if(chart.ChartSplashPaint)chart.ChartSplashPaint.Position=option.SplashTitlePosition;}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);/* 窗口设置全部移动到 SetSubFrameAttribute
|
|
1205
1208
|
var subFrame=chart.Frame.SubFrame[i].Frame;
|
|
1206
1209
|
if (IFrameSplitOperator.IsNumber(item.SplitCount)) chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;
|
|
@@ -1312,8 +1315,9 @@ if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.Is
|
|
|
1312
1315
|
}if(option.DragSelectRect){var item=option.DragSelectRect;var zindex=10;if(IFrameSplitOperator.IsNumber(item.ZIndex))zindex=item.ZIndex;if(item.Enable)this.CreateExtraCanvasElement(JSChart.RectDragCanvasKey,{ZIndex:zindex});//创建独立的区间选择画布
|
|
1313
1316
|
}}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
1317
|
if(option.PageInfo)chart.SetPageInfo(option.PageInfo);chart.Create(windowsCount,option);//创建子窗口
|
|
1315
|
-
|
|
1316
|
-
|
|
1318
|
+
this.SetCorssCursorConfig(chart,option);if(option.CorssCursorInfo)//分时图十字光标属性设置
|
|
1319
|
+
{var item=option.CorssCursorInfo;if(option.CorssCursorInfo.RightTextFormat>0)chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;if(option.CorssCursorInfo.IsOnlyDrawMinute==true)chart.ChartCorssCursor.IsOnlyDrawMinute=option.CorssCursorInfo.IsOnlyDrawMinute;//Y轴显示收盘价
|
|
1320
|
+
if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.TextStyle){if(item.TextStyle.Right)//右侧输出样式
|
|
1317
1321
|
{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);/*
|
|
1318
1322
|
var subFrame=chart.Frame.SubFrame[i].Frame;
|
|
1319
1323
|
|
|
@@ -6298,18 +6302,20 @@ this.Point;this.ClientPos=-1;this.HQChart;this.TextStyleConfig={Right:{Type:-1}}
|
|
|
6298
6302
|
this.TextStyleTemplate=[null,null];this.ExtendChartPaint;this.RExtendText=[];this.BeforeOpenData;this.AfterCloseData;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.ShareAfterVol=0;//1=主图共享 2=盘前共享
|
|
6299
6303
|
this.PriceFormatType=0;//主窗口格式 0=默认 1=科学计数
|
|
6300
6304
|
this.DataFormatType=0;//副图指标格式 0=默认 1=科学计数
|
|
6305
|
+
this.DecimalsConfig={Value:2,Type:0};//小数设置, Value:小数位数 , Type: 0=默认 1=跟指标标题一致
|
|
6301
6306
|
this.GetEventCallback;//盘前集合竞价
|
|
6302
6307
|
this.GetBeforeOpen=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;if(!this.BeforeOpenData)return false;var range={Max:this.BeforeOpenData.VolMax,Min:this.BeforeOpenData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetLeftExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
|
|
6303
6308
|
if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};//收盘集合竞价
|
|
6304
6309
|
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;//价格小数位数
|
|
6305
6310
|
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;//价格小数位数
|
|
6306
6311
|
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;//价格小数位数
|
|
6307
|
-
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=
|
|
6312
|
+
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=this.DecimalsConfig.Value;//价格小数位数
|
|
6308
6313
|
if(this.FrameID==0)//第1个窗口显示原始价格
|
|
6309
6314
|
{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;//价格
|
|
6310
6315
|
complexText.Text[1].Text=text;//百分比
|
|
6311
6316
|
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);//走势图右边坐标显示百分比
|
|
6312
|
-
}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;}
|
|
6317
|
+
}this.GetExtendPaintData(defaultfloatPrecision);}else if(this.FrameID==1){defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);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{defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);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;};//获取指标标题小数位数
|
|
6318
|
+
this.GetIndexTitleFloatPrecision=function(frameID){var dec=this.DecimalsConfig.Value;if(this.DecimalsConfig.Type===0)return dec;if(frameID<0)return dec;if(!this.HQChart)return dec;if(!IFrameSplitOperator.IsNonEmptyArray(this.HQChart.WindowIndex))return dec;var item=this.HQChart.WindowIndex[frameID];if(!item)return dec;if(IFrameSplitOperator.IsNumber(item.FloatPrecision))dec=item.FloatPrecision;return dec;};//深度图刻度
|
|
6313
6319
|
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;//派生
|
|
6314
6320
|
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
|
|
6315
6321
|
this.LanguageID=0;this.KItem=null;//缓存当前的K线
|
|
@@ -15777,7 +15783,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
15777
15783
|
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);};}/********************************************************************************
|
|
15778
15784
|
* 版本信息输出
|
|
15779
15785
|
*
|
|
15780
|
-
*/var HQCHART_VERSION="1.1.
|
|
15786
|
+
*/var HQCHART_VERSION="1.1.15374";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();//把给外界调用的方法暴露出来
|
|
15781
15787
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
15782
15788
|
// BaseIndex:BaseIndex,
|
|
15783
15789
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
package/src/jscommon/umychart.js
CHANGED
|
@@ -283,6 +283,49 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
283
283
|
if (IFrameSplitOperator.IsNumber(item.Count)) klineChart.PriceGap.Count=item.Count;
|
|
284
284
|
}
|
|
285
285
|
|
|
286
|
+
//设置十字光标
|
|
287
|
+
this.SetCorssCursorConfig=function(chart, option)
|
|
288
|
+
{
|
|
289
|
+
if (!option || !option.CorssCursorInfo) return;
|
|
290
|
+
|
|
291
|
+
var item=option.CorssCursorInfo;
|
|
292
|
+
if (IFrameSplitOperator.IsNumber(item.Left)) chart.ChartCorssCursor.ShowTextMode.Left=item.Left;
|
|
293
|
+
if (IFrameSplitOperator.IsNumber(item.Right)) chart.ChartCorssCursor.ShowTextMode.Right=item.Right;
|
|
294
|
+
if (IFrameSplitOperator.IsNumber(item.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=item.Bottom;
|
|
295
|
+
|
|
296
|
+
if (IFrameSplitOperator.IsBool(item.IsShowCorss)) chart.ChartCorssCursor.IsShowCorss=item.IsShowCorss;
|
|
297
|
+
|
|
298
|
+
if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
|
|
299
|
+
if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
|
|
300
|
+
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
301
|
+
|
|
302
|
+
if (item.RightButton)
|
|
303
|
+
{
|
|
304
|
+
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
if (item.BottomButton)
|
|
308
|
+
{
|
|
309
|
+
var subItem=item.BottomButton;
|
|
310
|
+
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
314
|
+
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
315
|
+
|
|
316
|
+
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
317
|
+
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
318
|
+
|
|
319
|
+
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
320
|
+
|
|
321
|
+
if (item.YDecimals) //Y轴文字小数位数
|
|
322
|
+
{
|
|
323
|
+
var subItem=item.YDecimals;
|
|
324
|
+
if (IFrameSplitOperator.IsNumber(subItem.Value)) chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Value=subItem.Value;
|
|
325
|
+
if (IFrameSplitOperator.IsNumber(subItem.Type)) chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Type=subItem.Type;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
|
|
286
329
|
//历史K线图
|
|
287
330
|
this.CreateKLineChartContainer=function(option)
|
|
288
331
|
{
|
|
@@ -536,48 +579,23 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
536
579
|
if (option.IsCorssOnlyDrawKLine===true) chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;
|
|
537
580
|
if (option.CorssCursorTouchEnd===true) chart.CorssCursorTouchEnd = option.CorssCursorTouchEnd;
|
|
538
581
|
if (option.IsClickShowCorssCursor==true) chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;
|
|
539
|
-
|
|
582
|
+
this.SetCorssCursorConfig(chart, option);
|
|
583
|
+
if (option.CorssCursorInfo) //十字光标K线上的属性设置
|
|
540
584
|
{
|
|
541
585
|
var item=option.CorssCursorInfo;
|
|
542
|
-
if (!isNaN(option.CorssCursorInfo.Left)) chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;
|
|
543
|
-
if (!isNaN(option.CorssCursorInfo.Right)) chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;
|
|
544
|
-
if (!isNaN(option.CorssCursorInfo.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;
|
|
545
|
-
if (option.CorssCursorInfo.IsShowCorss===false) chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;
|
|
546
586
|
if (IFrameSplitOperator.IsBool(item.IsShowClose)) chart.ChartCorssCursor.IsShowClose = item.IsShowClose; //Y轴显示收盘价
|
|
547
587
|
if (IFrameSplitOperator.IsBool(item.IsOnlyDrawKLine)) chart.ChartCorssCursor.IsOnlyDrawKLine = item.IsOnlyDrawKLine; //Y轴显示收盘价
|
|
548
588
|
if (option.CorssCursorInfo.PressTime) chart.PressTime=option.CorssCursorInfo.PressTime; //长按显示十字光标的时间
|
|
549
|
-
if (IFrameSplitOperator.IsNumber(option.CorssCursorInfo.HPenType)) chart.ChartCorssCursor.HPenType=option.CorssCursorInfo.HPenType;
|
|
550
|
-
if (option.CorssCursorInfo.VPenType>0) chart.ChartCorssCursor.VPenType=option.CorssCursorInfo.VPenType;
|
|
551
|
-
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
552
589
|
if (option.CorssCursorInfo.DateFormatType>0) chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;
|
|
553
590
|
if (IFrameSplitOperator.IsBool(item.IsDrawXRangeBG)) chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;
|
|
554
591
|
if (IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime)) chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;
|
|
555
592
|
if (IFrameSplitOperator.IsNumber(item.TextHeight)) chart.ChartCorssCursor.TextHeight=item.TextHeight;
|
|
556
|
-
|
|
557
|
-
if (item.RightButton)
|
|
558
|
-
{
|
|
559
|
-
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
560
|
-
}
|
|
561
|
-
|
|
562
|
-
if (item.BottomButton)
|
|
563
|
-
{
|
|
564
|
-
var subItem=item.BottomButton;
|
|
565
|
-
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
566
|
-
}
|
|
567
|
-
|
|
568
|
-
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
569
|
-
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
570
|
-
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
571
|
-
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
572
|
-
|
|
573
|
-
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
574
593
|
|
|
575
594
|
if (item.RangeIncrease)
|
|
576
595
|
{
|
|
577
596
|
var subItem=item.RangeIncrease;
|
|
578
597
|
if (IFrameSplitOperator.IsBool(subItem.IsShow)) chart.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=subItem.IsShow;
|
|
579
598
|
if (IFrameSplitOperator.IsNumber(subItem.Formula)) chart.ChartCorssCursor.StringFormatX.RangeIncrease.Formula=subItem.Formula;
|
|
580
|
-
|
|
581
599
|
}
|
|
582
600
|
}
|
|
583
601
|
|
|
@@ -1105,39 +1123,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
1105
1123
|
if (option.PageInfo) chart.SetPageInfo(option.PageInfo);
|
|
1106
1124
|
|
|
1107
1125
|
chart.Create(windowsCount,option); //创建子窗口
|
|
1108
|
-
|
|
1109
|
-
if (option.CorssCursorInfo)
|
|
1126
|
+
this.SetCorssCursorConfig(chart, option);
|
|
1127
|
+
if (option.CorssCursorInfo) //分时图十字光标属性设置
|
|
1110
1128
|
{
|
|
1111
1129
|
var item=option.CorssCursorInfo;
|
|
1112
|
-
|
|
1113
|
-
if (!isNaN(option.CorssCursorInfo.Right)) chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;
|
|
1114
|
-
if (!isNaN(option.CorssCursorInfo.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;
|
|
1115
|
-
if (option.CorssCursorInfo.IsShowCorss===false) chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;
|
|
1130
|
+
|
|
1116
1131
|
if (option.CorssCursorInfo.RightTextFormat>0) chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;
|
|
1117
1132
|
if (option.CorssCursorInfo.IsOnlyDrawMinute == true) chart.ChartCorssCursor.IsOnlyDrawMinute = option.CorssCursorInfo.IsOnlyDrawMinute; //Y轴显示收盘价
|
|
1118
1133
|
if (IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime)) chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;
|
|
1119
1134
|
|
|
1120
|
-
if (item.RightButton)
|
|
1121
|
-
{
|
|
1122
|
-
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
1123
|
-
}
|
|
1124
|
-
|
|
1125
|
-
if (item.BottomButton)
|
|
1126
|
-
{
|
|
1127
|
-
var subItem=item.BottomButton;
|
|
1128
|
-
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
1129
|
-
}
|
|
1130
|
-
|
|
1131
|
-
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
1132
|
-
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
1133
|
-
|
|
1134
|
-
if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
|
|
1135
|
-
if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
|
|
1136
|
-
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
1137
|
-
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
1138
|
-
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
1139
|
-
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
1140
|
-
|
|
1141
1135
|
if (item.TextStyle)
|
|
1142
1136
|
{
|
|
1143
1137
|
if (item.TextStyle.Right) //右侧输出样式
|
|
@@ -60797,6 +60791,7 @@ function HQPriceStringFormat()
|
|
|
60797
60791
|
|
|
60798
60792
|
this.PriceFormatType=0; //主窗口格式 0=默认 1=科学计数
|
|
60799
60793
|
this.DataFormatType=0; //副图指标格式 0=默认 1=科学计数
|
|
60794
|
+
this.DecimalsConfig={ Value:2, Type:0 }; //小数设置, Value:小数位数 , Type: 0=默认 1=跟指标标题一致
|
|
60800
60795
|
|
|
60801
60796
|
this.GetEventCallback
|
|
60802
60797
|
|
|
@@ -60895,7 +60890,7 @@ function HQPriceStringFormat()
|
|
|
60895
60890
|
if (!this.Value) return false;
|
|
60896
60891
|
|
|
60897
60892
|
this.PercentageText=null;
|
|
60898
|
-
var defaultfloatPrecision=
|
|
60893
|
+
var defaultfloatPrecision=this.DecimalsConfig.Value; //价格小数位数
|
|
60899
60894
|
if (this.FrameID==0) //第1个窗口显示原始价格
|
|
60900
60895
|
{
|
|
60901
60896
|
var defaultfloatPrecision=GetfloatPrecision(this.Symbol);
|
|
@@ -60944,6 +60939,7 @@ function HQPriceStringFormat()
|
|
|
60944
60939
|
}
|
|
60945
60940
|
else if (this.FrameID==1)
|
|
60946
60941
|
{
|
|
60942
|
+
defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);
|
|
60947
60943
|
if (this.DataFormatType==1)
|
|
60948
60944
|
{
|
|
60949
60945
|
this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
@@ -60976,6 +60972,7 @@ function HQPriceStringFormat()
|
|
|
60976
60972
|
}
|
|
60977
60973
|
else
|
|
60978
60974
|
{
|
|
60975
|
+
defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);
|
|
60979
60976
|
if (this.DataFormatType==1) this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
60980
60977
|
else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);
|
|
60981
60978
|
if (IFrameSplitOperator.IsNumber(this.RValue)) this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);
|
|
@@ -61021,6 +61018,23 @@ function HQPriceStringFormat()
|
|
|
61021
61018
|
return true;
|
|
61022
61019
|
}
|
|
61023
61020
|
|
|
61021
|
+
//获取指标标题小数位数
|
|
61022
|
+
this.GetIndexTitleFloatPrecision=function(frameID)
|
|
61023
|
+
{
|
|
61024
|
+
var dec=this.DecimalsConfig.Value;
|
|
61025
|
+
if (this.DecimalsConfig.Type===0) return dec;
|
|
61026
|
+
|
|
61027
|
+
if (frameID<0) return dec;
|
|
61028
|
+
if (!this.HQChart) return dec;
|
|
61029
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.HQChart.WindowIndex)) return dec;
|
|
61030
|
+
var item=this.HQChart.WindowIndex[frameID];
|
|
61031
|
+
if (!item) return dec;
|
|
61032
|
+
|
|
61033
|
+
if (IFrameSplitOperator.IsNumber(item.FloatPrecision)) dec=item.FloatPrecision;
|
|
61034
|
+
|
|
61035
|
+
return dec;
|
|
61036
|
+
}
|
|
61037
|
+
|
|
61024
61038
|
//深度图刻度
|
|
61025
61039
|
this.GetExtendPaintData=function(floatPrecision)
|
|
61026
61040
|
{
|
|
@@ -4379,6 +4379,49 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4379
4379
|
if (IFrameSplitOperator.IsNumber(item.Count)) klineChart.PriceGap.Count=item.Count;
|
|
4380
4380
|
}
|
|
4381
4381
|
|
|
4382
|
+
//设置十字光标
|
|
4383
|
+
this.SetCorssCursorConfig=function(chart, option)
|
|
4384
|
+
{
|
|
4385
|
+
if (!option || !option.CorssCursorInfo) return;
|
|
4386
|
+
|
|
4387
|
+
var item=option.CorssCursorInfo;
|
|
4388
|
+
if (IFrameSplitOperator.IsNumber(item.Left)) chart.ChartCorssCursor.ShowTextMode.Left=item.Left;
|
|
4389
|
+
if (IFrameSplitOperator.IsNumber(item.Right)) chart.ChartCorssCursor.ShowTextMode.Right=item.Right;
|
|
4390
|
+
if (IFrameSplitOperator.IsNumber(item.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=item.Bottom;
|
|
4391
|
+
|
|
4392
|
+
if (IFrameSplitOperator.IsBool(item.IsShowCorss)) chart.ChartCorssCursor.IsShowCorss=item.IsShowCorss;
|
|
4393
|
+
|
|
4394
|
+
if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
|
|
4395
|
+
if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
|
|
4396
|
+
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
4397
|
+
|
|
4398
|
+
if (item.RightButton)
|
|
4399
|
+
{
|
|
4400
|
+
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
4401
|
+
}
|
|
4402
|
+
|
|
4403
|
+
if (item.BottomButton)
|
|
4404
|
+
{
|
|
4405
|
+
var subItem=item.BottomButton;
|
|
4406
|
+
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
4407
|
+
}
|
|
4408
|
+
|
|
4409
|
+
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
4410
|
+
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
4411
|
+
|
|
4412
|
+
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
4413
|
+
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
4414
|
+
|
|
4415
|
+
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
4416
|
+
|
|
4417
|
+
if (item.YDecimals) //Y轴文字小数位数
|
|
4418
|
+
{
|
|
4419
|
+
var subItem=item.YDecimals;
|
|
4420
|
+
if (IFrameSplitOperator.IsNumber(subItem.Value)) chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Value=subItem.Value;
|
|
4421
|
+
if (IFrameSplitOperator.IsNumber(subItem.Type)) chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Type=subItem.Type;
|
|
4422
|
+
}
|
|
4423
|
+
}
|
|
4424
|
+
|
|
4382
4425
|
//历史K线图
|
|
4383
4426
|
this.CreateKLineChartContainer=function(option)
|
|
4384
4427
|
{
|
|
@@ -4632,48 +4675,23 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4632
4675
|
if (option.IsCorssOnlyDrawKLine===true) chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;
|
|
4633
4676
|
if (option.CorssCursorTouchEnd===true) chart.CorssCursorTouchEnd = option.CorssCursorTouchEnd;
|
|
4634
4677
|
if (option.IsClickShowCorssCursor==true) chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;
|
|
4635
|
-
|
|
4678
|
+
this.SetCorssCursorConfig(chart, option);
|
|
4679
|
+
if (option.CorssCursorInfo) //十字光标K线上的属性设置
|
|
4636
4680
|
{
|
|
4637
4681
|
var item=option.CorssCursorInfo;
|
|
4638
|
-
if (!isNaN(option.CorssCursorInfo.Left)) chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;
|
|
4639
|
-
if (!isNaN(option.CorssCursorInfo.Right)) chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;
|
|
4640
|
-
if (!isNaN(option.CorssCursorInfo.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;
|
|
4641
|
-
if (option.CorssCursorInfo.IsShowCorss===false) chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;
|
|
4642
4682
|
if (IFrameSplitOperator.IsBool(item.IsShowClose)) chart.ChartCorssCursor.IsShowClose = item.IsShowClose; //Y轴显示收盘价
|
|
4643
4683
|
if (IFrameSplitOperator.IsBool(item.IsOnlyDrawKLine)) chart.ChartCorssCursor.IsOnlyDrawKLine = item.IsOnlyDrawKLine; //Y轴显示收盘价
|
|
4644
4684
|
if (option.CorssCursorInfo.PressTime) chart.PressTime=option.CorssCursorInfo.PressTime; //长按显示十字光标的时间
|
|
4645
|
-
if (IFrameSplitOperator.IsNumber(option.CorssCursorInfo.HPenType)) chart.ChartCorssCursor.HPenType=option.CorssCursorInfo.HPenType;
|
|
4646
|
-
if (option.CorssCursorInfo.VPenType>0) chart.ChartCorssCursor.VPenType=option.CorssCursorInfo.VPenType;
|
|
4647
|
-
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
4648
4685
|
if (option.CorssCursorInfo.DateFormatType>0) chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;
|
|
4649
4686
|
if (IFrameSplitOperator.IsBool(item.IsDrawXRangeBG)) chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;
|
|
4650
4687
|
if (IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime)) chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;
|
|
4651
4688
|
if (IFrameSplitOperator.IsNumber(item.TextHeight)) chart.ChartCorssCursor.TextHeight=item.TextHeight;
|
|
4652
|
-
|
|
4653
|
-
if (item.RightButton)
|
|
4654
|
-
{
|
|
4655
|
-
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
4656
|
-
}
|
|
4657
|
-
|
|
4658
|
-
if (item.BottomButton)
|
|
4659
|
-
{
|
|
4660
|
-
var subItem=item.BottomButton;
|
|
4661
|
-
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
4662
|
-
}
|
|
4663
|
-
|
|
4664
|
-
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
4665
|
-
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
4666
|
-
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
4667
|
-
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
4668
|
-
|
|
4669
|
-
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
4670
4689
|
|
|
4671
4690
|
if (item.RangeIncrease)
|
|
4672
4691
|
{
|
|
4673
4692
|
var subItem=item.RangeIncrease;
|
|
4674
4693
|
if (IFrameSplitOperator.IsBool(subItem.IsShow)) chart.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=subItem.IsShow;
|
|
4675
4694
|
if (IFrameSplitOperator.IsNumber(subItem.Formula)) chart.ChartCorssCursor.StringFormatX.RangeIncrease.Formula=subItem.Formula;
|
|
4676
|
-
|
|
4677
4695
|
}
|
|
4678
4696
|
}
|
|
4679
4697
|
|
|
@@ -5201,39 +5219,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
5201
5219
|
if (option.PageInfo) chart.SetPageInfo(option.PageInfo);
|
|
5202
5220
|
|
|
5203
5221
|
chart.Create(windowsCount,option); //创建子窗口
|
|
5204
|
-
|
|
5205
|
-
if (option.CorssCursorInfo)
|
|
5222
|
+
this.SetCorssCursorConfig(chart, option);
|
|
5223
|
+
if (option.CorssCursorInfo) //分时图十字光标属性设置
|
|
5206
5224
|
{
|
|
5207
5225
|
var item=option.CorssCursorInfo;
|
|
5208
|
-
|
|
5209
|
-
if (!isNaN(option.CorssCursorInfo.Right)) chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;
|
|
5210
|
-
if (!isNaN(option.CorssCursorInfo.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;
|
|
5211
|
-
if (option.CorssCursorInfo.IsShowCorss===false) chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;
|
|
5226
|
+
|
|
5212
5227
|
if (option.CorssCursorInfo.RightTextFormat>0) chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;
|
|
5213
5228
|
if (option.CorssCursorInfo.IsOnlyDrawMinute == true) chart.ChartCorssCursor.IsOnlyDrawMinute = option.CorssCursorInfo.IsOnlyDrawMinute; //Y轴显示收盘价
|
|
5214
5229
|
if (IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime)) chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;
|
|
5215
5230
|
|
|
5216
|
-
if (item.RightButton)
|
|
5217
|
-
{
|
|
5218
|
-
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
5219
|
-
}
|
|
5220
|
-
|
|
5221
|
-
if (item.BottomButton)
|
|
5222
|
-
{
|
|
5223
|
-
var subItem=item.BottomButton;
|
|
5224
|
-
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
5225
|
-
}
|
|
5226
|
-
|
|
5227
|
-
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
5228
|
-
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
5229
|
-
|
|
5230
|
-
if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
|
|
5231
|
-
if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
|
|
5232
|
-
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
5233
|
-
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
5234
|
-
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
5235
|
-
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
5236
|
-
|
|
5237
5231
|
if (item.TextStyle)
|
|
5238
5232
|
{
|
|
5239
5233
|
if (item.TextStyle.Right) //右侧输出样式
|
|
@@ -64893,6 +64887,7 @@ function HQPriceStringFormat()
|
|
|
64893
64887
|
|
|
64894
64888
|
this.PriceFormatType=0; //主窗口格式 0=默认 1=科学计数
|
|
64895
64889
|
this.DataFormatType=0; //副图指标格式 0=默认 1=科学计数
|
|
64890
|
+
this.DecimalsConfig={ Value:2, Type:0 }; //小数设置, Value:小数位数 , Type: 0=默认 1=跟指标标题一致
|
|
64896
64891
|
|
|
64897
64892
|
this.GetEventCallback
|
|
64898
64893
|
|
|
@@ -64991,7 +64986,7 @@ function HQPriceStringFormat()
|
|
|
64991
64986
|
if (!this.Value) return false;
|
|
64992
64987
|
|
|
64993
64988
|
this.PercentageText=null;
|
|
64994
|
-
var defaultfloatPrecision=
|
|
64989
|
+
var defaultfloatPrecision=this.DecimalsConfig.Value; //价格小数位数
|
|
64995
64990
|
if (this.FrameID==0) //第1个窗口显示原始价格
|
|
64996
64991
|
{
|
|
64997
64992
|
var defaultfloatPrecision=GetfloatPrecision(this.Symbol);
|
|
@@ -65040,6 +65035,7 @@ function HQPriceStringFormat()
|
|
|
65040
65035
|
}
|
|
65041
65036
|
else if (this.FrameID==1)
|
|
65042
65037
|
{
|
|
65038
|
+
defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);
|
|
65043
65039
|
if (this.DataFormatType==1)
|
|
65044
65040
|
{
|
|
65045
65041
|
this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
@@ -65072,6 +65068,7 @@ function HQPriceStringFormat()
|
|
|
65072
65068
|
}
|
|
65073
65069
|
else
|
|
65074
65070
|
{
|
|
65071
|
+
defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);
|
|
65075
65072
|
if (this.DataFormatType==1) this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
65076
65073
|
else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);
|
|
65077
65074
|
if (IFrameSplitOperator.IsNumber(this.RValue)) this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);
|
|
@@ -65117,6 +65114,23 @@ function HQPriceStringFormat()
|
|
|
65117
65114
|
return true;
|
|
65118
65115
|
}
|
|
65119
65116
|
|
|
65117
|
+
//获取指标标题小数位数
|
|
65118
|
+
this.GetIndexTitleFloatPrecision=function(frameID)
|
|
65119
|
+
{
|
|
65120
|
+
var dec=this.DecimalsConfig.Value;
|
|
65121
|
+
if (this.DecimalsConfig.Type===0) return dec;
|
|
65122
|
+
|
|
65123
|
+
if (frameID<0) return dec;
|
|
65124
|
+
if (!this.HQChart) return dec;
|
|
65125
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.HQChart.WindowIndex)) return dec;
|
|
65126
|
+
var item=this.HQChart.WindowIndex[frameID];
|
|
65127
|
+
if (!item) return dec;
|
|
65128
|
+
|
|
65129
|
+
if (IFrameSplitOperator.IsNumber(item.FloatPrecision)) dec=item.FloatPrecision;
|
|
65130
|
+
|
|
65131
|
+
return dec;
|
|
65132
|
+
}
|
|
65133
|
+
|
|
65120
65134
|
//深度图刻度
|
|
65121
65135
|
this.GetExtendPaintData=function(floatPrecision)
|
|
65122
65136
|
{
|
|
@@ -155501,7 +155515,7 @@ function ScrollBarBGChart()
|
|
|
155501
155515
|
|
|
155502
155516
|
|
|
155503
155517
|
|
|
155504
|
-
var HQCHART_VERSION="1.1.
|
|
155518
|
+
var HQCHART_VERSION="1.1.15374";
|
|
155505
155519
|
|
|
155506
155520
|
function PrintHQChartVersion()
|
|
155507
155521
|
{
|
|
@@ -4423,6 +4423,49 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4423
4423
|
if (IFrameSplitOperator.IsNumber(item.Count)) klineChart.PriceGap.Count=item.Count;
|
|
4424
4424
|
}
|
|
4425
4425
|
|
|
4426
|
+
//设置十字光标
|
|
4427
|
+
this.SetCorssCursorConfig=function(chart, option)
|
|
4428
|
+
{
|
|
4429
|
+
if (!option || !option.CorssCursorInfo) return;
|
|
4430
|
+
|
|
4431
|
+
var item=option.CorssCursorInfo;
|
|
4432
|
+
if (IFrameSplitOperator.IsNumber(item.Left)) chart.ChartCorssCursor.ShowTextMode.Left=item.Left;
|
|
4433
|
+
if (IFrameSplitOperator.IsNumber(item.Right)) chart.ChartCorssCursor.ShowTextMode.Right=item.Right;
|
|
4434
|
+
if (IFrameSplitOperator.IsNumber(item.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=item.Bottom;
|
|
4435
|
+
|
|
4436
|
+
if (IFrameSplitOperator.IsBool(item.IsShowCorss)) chart.ChartCorssCursor.IsShowCorss=item.IsShowCorss;
|
|
4437
|
+
|
|
4438
|
+
if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
|
|
4439
|
+
if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
|
|
4440
|
+
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
4441
|
+
|
|
4442
|
+
if (item.RightButton)
|
|
4443
|
+
{
|
|
4444
|
+
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
4445
|
+
}
|
|
4446
|
+
|
|
4447
|
+
if (item.BottomButton)
|
|
4448
|
+
{
|
|
4449
|
+
var subItem=item.BottomButton;
|
|
4450
|
+
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
4451
|
+
}
|
|
4452
|
+
|
|
4453
|
+
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
4454
|
+
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
4455
|
+
|
|
4456
|
+
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
4457
|
+
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
4458
|
+
|
|
4459
|
+
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
4460
|
+
|
|
4461
|
+
if (item.YDecimals) //Y轴文字小数位数
|
|
4462
|
+
{
|
|
4463
|
+
var subItem=item.YDecimals;
|
|
4464
|
+
if (IFrameSplitOperator.IsNumber(subItem.Value)) chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Value=subItem.Value;
|
|
4465
|
+
if (IFrameSplitOperator.IsNumber(subItem.Type)) chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Type=subItem.Type;
|
|
4466
|
+
}
|
|
4467
|
+
}
|
|
4468
|
+
|
|
4426
4469
|
//历史K线图
|
|
4427
4470
|
this.CreateKLineChartContainer=function(option)
|
|
4428
4471
|
{
|
|
@@ -4676,48 +4719,23 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4676
4719
|
if (option.IsCorssOnlyDrawKLine===true) chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;
|
|
4677
4720
|
if (option.CorssCursorTouchEnd===true) chart.CorssCursorTouchEnd = option.CorssCursorTouchEnd;
|
|
4678
4721
|
if (option.IsClickShowCorssCursor==true) chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;
|
|
4679
|
-
|
|
4722
|
+
this.SetCorssCursorConfig(chart, option);
|
|
4723
|
+
if (option.CorssCursorInfo) //十字光标K线上的属性设置
|
|
4680
4724
|
{
|
|
4681
4725
|
var item=option.CorssCursorInfo;
|
|
4682
|
-
if (!isNaN(option.CorssCursorInfo.Left)) chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;
|
|
4683
|
-
if (!isNaN(option.CorssCursorInfo.Right)) chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;
|
|
4684
|
-
if (!isNaN(option.CorssCursorInfo.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;
|
|
4685
|
-
if (option.CorssCursorInfo.IsShowCorss===false) chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;
|
|
4686
4726
|
if (IFrameSplitOperator.IsBool(item.IsShowClose)) chart.ChartCorssCursor.IsShowClose = item.IsShowClose; //Y轴显示收盘价
|
|
4687
4727
|
if (IFrameSplitOperator.IsBool(item.IsOnlyDrawKLine)) chart.ChartCorssCursor.IsOnlyDrawKLine = item.IsOnlyDrawKLine; //Y轴显示收盘价
|
|
4688
4728
|
if (option.CorssCursorInfo.PressTime) chart.PressTime=option.CorssCursorInfo.PressTime; //长按显示十字光标的时间
|
|
4689
|
-
if (IFrameSplitOperator.IsNumber(option.CorssCursorInfo.HPenType)) chart.ChartCorssCursor.HPenType=option.CorssCursorInfo.HPenType;
|
|
4690
|
-
if (option.CorssCursorInfo.VPenType>0) chart.ChartCorssCursor.VPenType=option.CorssCursorInfo.VPenType;
|
|
4691
|
-
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
4692
4729
|
if (option.CorssCursorInfo.DateFormatType>0) chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;
|
|
4693
4730
|
if (IFrameSplitOperator.IsBool(item.IsDrawXRangeBG)) chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;
|
|
4694
4731
|
if (IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime)) chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;
|
|
4695
4732
|
if (IFrameSplitOperator.IsNumber(item.TextHeight)) chart.ChartCorssCursor.TextHeight=item.TextHeight;
|
|
4696
|
-
|
|
4697
|
-
if (item.RightButton)
|
|
4698
|
-
{
|
|
4699
|
-
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
4700
|
-
}
|
|
4701
|
-
|
|
4702
|
-
if (item.BottomButton)
|
|
4703
|
-
{
|
|
4704
|
-
var subItem=item.BottomButton;
|
|
4705
|
-
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
4706
|
-
}
|
|
4707
|
-
|
|
4708
|
-
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
4709
|
-
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
4710
|
-
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
4711
|
-
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
4712
|
-
|
|
4713
|
-
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
4714
4733
|
|
|
4715
4734
|
if (item.RangeIncrease)
|
|
4716
4735
|
{
|
|
4717
4736
|
var subItem=item.RangeIncrease;
|
|
4718
4737
|
if (IFrameSplitOperator.IsBool(subItem.IsShow)) chart.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=subItem.IsShow;
|
|
4719
4738
|
if (IFrameSplitOperator.IsNumber(subItem.Formula)) chart.ChartCorssCursor.StringFormatX.RangeIncrease.Formula=subItem.Formula;
|
|
4720
|
-
|
|
4721
4739
|
}
|
|
4722
4740
|
}
|
|
4723
4741
|
|
|
@@ -5245,39 +5263,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
5245
5263
|
if (option.PageInfo) chart.SetPageInfo(option.PageInfo);
|
|
5246
5264
|
|
|
5247
5265
|
chart.Create(windowsCount,option); //创建子窗口
|
|
5248
|
-
|
|
5249
|
-
if (option.CorssCursorInfo)
|
|
5266
|
+
this.SetCorssCursorConfig(chart, option);
|
|
5267
|
+
if (option.CorssCursorInfo) //分时图十字光标属性设置
|
|
5250
5268
|
{
|
|
5251
5269
|
var item=option.CorssCursorInfo;
|
|
5252
|
-
|
|
5253
|
-
if (!isNaN(option.CorssCursorInfo.Right)) chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;
|
|
5254
|
-
if (!isNaN(option.CorssCursorInfo.Bottom)) chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;
|
|
5255
|
-
if (option.CorssCursorInfo.IsShowCorss===false) chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;
|
|
5270
|
+
|
|
5256
5271
|
if (option.CorssCursorInfo.RightTextFormat>0) chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;
|
|
5257
5272
|
if (option.CorssCursorInfo.IsOnlyDrawMinute == true) chart.ChartCorssCursor.IsOnlyDrawMinute = option.CorssCursorInfo.IsOnlyDrawMinute; //Y轴显示收盘价
|
|
5258
5273
|
if (IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime)) chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;
|
|
5259
5274
|
|
|
5260
|
-
if (item.RightButton)
|
|
5261
|
-
{
|
|
5262
|
-
if (IFrameSplitOperator.IsBool(item.RightButton.Enable)) chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;
|
|
5263
|
-
}
|
|
5264
|
-
|
|
5265
|
-
if (item.BottomButton)
|
|
5266
|
-
{
|
|
5267
|
-
var subItem=item.BottomButton;
|
|
5268
|
-
if (IFrameSplitOperator.IsBool(subItem.Enable)) chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;
|
|
5269
|
-
}
|
|
5270
|
-
|
|
5271
|
-
if (IFrameSplitOperator.IsNumber(item.PriceFormatType)) chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;
|
|
5272
|
-
if (IFrameSplitOperator.IsNumber(item.DataFormatType)) chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;
|
|
5273
|
-
|
|
5274
|
-
if (IFrameSplitOperator.IsNumber(item.HPenType)) chart.ChartCorssCursor.HPenType=item.HPenType;
|
|
5275
|
-
if (IFrameSplitOperator.IsNumber(item.VPenType)) chart.ChartCorssCursor.VPenType=item.VPenType;
|
|
5276
|
-
if (IFrameSplitOperator.IsBool(item.EnableKeyboard)) chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;
|
|
5277
|
-
if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
|
|
5278
|
-
if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
|
|
5279
|
-
if (IFrameSplitOperator.IsNumber(item.VLineType)) chart.ChartCorssCursor.VLineType=item.VLineType;
|
|
5280
|
-
|
|
5281
5275
|
if (item.TextStyle)
|
|
5282
5276
|
{
|
|
5283
5277
|
if (item.TextStyle.Right) //右侧输出样式
|
|
@@ -64937,6 +64931,7 @@ function HQPriceStringFormat()
|
|
|
64937
64931
|
|
|
64938
64932
|
this.PriceFormatType=0; //主窗口格式 0=默认 1=科学计数
|
|
64939
64933
|
this.DataFormatType=0; //副图指标格式 0=默认 1=科学计数
|
|
64934
|
+
this.DecimalsConfig={ Value:2, Type:0 }; //小数设置, Value:小数位数 , Type: 0=默认 1=跟指标标题一致
|
|
64940
64935
|
|
|
64941
64936
|
this.GetEventCallback
|
|
64942
64937
|
|
|
@@ -65035,7 +65030,7 @@ function HQPriceStringFormat()
|
|
|
65035
65030
|
if (!this.Value) return false;
|
|
65036
65031
|
|
|
65037
65032
|
this.PercentageText=null;
|
|
65038
|
-
var defaultfloatPrecision=
|
|
65033
|
+
var defaultfloatPrecision=this.DecimalsConfig.Value; //价格小数位数
|
|
65039
65034
|
if (this.FrameID==0) //第1个窗口显示原始价格
|
|
65040
65035
|
{
|
|
65041
65036
|
var defaultfloatPrecision=GetfloatPrecision(this.Symbol);
|
|
@@ -65084,6 +65079,7 @@ function HQPriceStringFormat()
|
|
|
65084
65079
|
}
|
|
65085
65080
|
else if (this.FrameID==1)
|
|
65086
65081
|
{
|
|
65082
|
+
defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);
|
|
65087
65083
|
if (this.DataFormatType==1)
|
|
65088
65084
|
{
|
|
65089
65085
|
this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
@@ -65116,6 +65112,7 @@ function HQPriceStringFormat()
|
|
|
65116
65112
|
}
|
|
65117
65113
|
else
|
|
65118
65114
|
{
|
|
65115
|
+
defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);
|
|
65119
65116
|
if (this.DataFormatType==1) this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
65120
65117
|
else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);
|
|
65121
65118
|
if (IFrameSplitOperator.IsNumber(this.RValue)) this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);
|
|
@@ -65161,6 +65158,23 @@ function HQPriceStringFormat()
|
|
|
65161
65158
|
return true;
|
|
65162
65159
|
}
|
|
65163
65160
|
|
|
65161
|
+
//获取指标标题小数位数
|
|
65162
|
+
this.GetIndexTitleFloatPrecision=function(frameID)
|
|
65163
|
+
{
|
|
65164
|
+
var dec=this.DecimalsConfig.Value;
|
|
65165
|
+
if (this.DecimalsConfig.Type===0) return dec;
|
|
65166
|
+
|
|
65167
|
+
if (frameID<0) return dec;
|
|
65168
|
+
if (!this.HQChart) return dec;
|
|
65169
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.HQChart.WindowIndex)) return dec;
|
|
65170
|
+
var item=this.HQChart.WindowIndex[frameID];
|
|
65171
|
+
if (!item) return dec;
|
|
65172
|
+
|
|
65173
|
+
if (IFrameSplitOperator.IsNumber(item.FloatPrecision)) dec=item.FloatPrecision;
|
|
65174
|
+
|
|
65175
|
+
return dec;
|
|
65176
|
+
}
|
|
65177
|
+
|
|
65164
65178
|
//深度图刻度
|
|
65165
65179
|
this.GetExtendPaintData=function(floatPrecision)
|
|
65166
65180
|
{
|
|
@@ -167560,7 +167574,7 @@ function HQChartScriptWorker()
|
|
|
167560
167574
|
|
|
167561
167575
|
|
|
167562
167576
|
|
|
167563
|
-
var HQCHART_VERSION="1.1.
|
|
167577
|
+
var HQCHART_VERSION="1.1.15374";
|
|
167564
167578
|
|
|
167565
167579
|
function PrintHQChartVersion()
|
|
167566
167580
|
{
|