hqchart 1.1.11607 → 1.1.11611
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
|
@@ -1782,7 +1782,7 @@ if(isErase==false){for(var i=0;i<this.ExtendChartPaint.length;++i){var item=this
|
|
|
1782
1782
|
{this.ChartCorssCursor.Draw();}else if(!(this.IsOnTouch===false&&this.CorssCursorTouchEnd===true)&&!this.CurrentChartDrawPicture){this.ChartCorssCursor.Draw();}else if(this.IsOnTouch===true&&this.CurrentChartDrawPicture&&this.EnableShowCorssCursor&&this.EnableShowCorssCursor.DrawPicture==true){this.ChartCorssCursor.Draw();}}var ptPosition=null;//鼠标位置 null 无效 -1 在外面 >=0 对应的指标窗口中ID
|
|
1783
1783
|
if(option&&option.ParentFunction=='OnMouseMove'&&option.Point){ptPosition=this.Frame.PtInFrame(option.Point.X,option.Point.Y);}var drawStatus=this.GetDrawStatus();drawStatus.DrawName="DrawDynamicInfo";for(var i=0;i<this.TitlePaint.length;++i){var item=this.TitlePaint[i];if(!item.IsDynamic)continue;item.CursorIndex=this.CursorIndex;item.LastPoint=this.LastPoint;if(item.OnDrawEvent){item.OnDrawEvent.FunctionName='DrawDynamicInfo';item.OnDrawEvent.PointPosition=ptPosition;}item.DrawStatus=drawStatus;if(item.ClassName=="DynamicMinuteTitlePainting"){if(option&&IFrameSplitOperator.IsNumber(option.ClientPos)&&option.Point)item.PointInfo={ClientPos:option.ClientPos,Point:{X:option.Point.X,Y:option.Point.Y}};else item.PointInfo=null;}item.Draw();}for(var i=0;i<this.ExtendChartPaint.length;++i)//动态扩展图形 在动态标题以后画
|
|
1784
1784
|
{var item=this.ExtendChartPaint[i];if(item.IsCallbackDraw)continue;if(item.ClassName=='KLineTooltipPaint'&&option){if(option.Tooltip==false)continue;if(option.Point)item.LatestPoint=option.Point;}else if(item.ClassName=="MinuteTooltipPaint"&&option){if(option.Point)item.LatestPoint=option.Point;}if(item.IsDynamic&&item.DrawAfterTitle===true)item.Draw();}if(this.EnableAnimation){for(var i=0;i<this.ExtendChartPaint.length;++i)//动画
|
|
1785
|
-
{var item=this.ExtendChartPaint[i];if(item.IsAnimation===true)item.Draw();}}for(var i=0;i<this.ChartDrawPicture.length;++i){var item=this.ChartDrawPicture[i];if(item.IsDrawFirst)continue;if(item.IsDrawMain&&item.IsDrawMain())continue;item.Draw();}if(this.CurrentChartDrawPicture&&this.CurrentChartDrawPicture.Status!=10){this.CurrentChartDrawPicture.Draw();}if(this.LastMouseStatus.MouseOnToolbar)//工具栏按钮提示信息
|
|
1785
|
+
{var item=this.ExtendChartPaint[i];if(item.IsAnimation===true)item.Draw();}}for(var i=0;i<this.ChartDrawPicture.length;++i){var item=this.ChartDrawPicture[i];if(item.IsDrawFirst)continue;if(item.IsDrawMain&&item.IsDrawMain())continue;item.Draw(moveonPoint,this.LastMouseStatus);}if(this.CurrentChartDrawPicture&&this.CurrentChartDrawPicture.Status!=10){this.CurrentChartDrawPicture.Draw();}if(this.LastMouseStatus.MouseOnToolbar)//工具栏按钮提示信息
|
|
1786
1786
|
{var frame=this.LastMouseStatus.MouseOnToolbar.Frame;if(frame&&frame.DrawToolbarTooltip)frame.DrawToolbarTooltip(this.LastMouseStatus.MouseOnToolbar);}this.OffscreenToShowCanvas();++this.TouchDrawCount;};this.DrawAnimation=function()//绘制动画 如弹幕
|
|
1787
1787
|
{if(!this.EnableAnimation)return;if(this.Frame.ScreenImageData&&!this.IsOnTouch){for(var i=0;i<this.ExtendChartPaint.length;++i){var item=this.ExtendChartPaint[i];if(item.IsAnimation===true)item.IsMoveStep=true;//移动弹幕
|
|
1788
1788
|
}this.DrawDynamicInfo();}var self=this;window.requestAnimationFrame(function(){self.DrawAnimation();});};this.StartAnimation=function(option){var bCreated=false;//是否已经创建了弹幕画法
|
|
@@ -2090,7 +2090,7 @@ this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowBut
|
|
|
2090
2090
|
this.DrawPicture={BGColor:g_JSChartResource.DrawPicture.XYCoordinate.BGColor,TextBGColor:g_JSChartResource.DrawPicture.XYCoordinate.TextBGColor,TextColor:g_JSChartResource.DrawPicture.XYCoordinate.TextColor,Font:g_JSChartResource.DrawPicture.XYCoordinate.Font};this.IChartFramePainting_ReloadResource=this.ReloadResource;this.ReloadResource=function(resource){this.IChartFramePainting_ReloadResource(resource);if(!resource){this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowButton=CloneData(g_JSChartResource.Buttons.CloseWindow);this.OverlayIndexButton=CloneData(g_JSChartResource.Buttons.OverlayIndex);this.ChangeIndexButton=CloneData(g_JSChartResource.Buttons.ChangeIndex);this.ModifyIndexParamButton=CloneData(g_JSChartResource.Buttons.ModifyIndexParam);this.MaxMinWindowButton=CloneData(g_JSChartResource.Buttons.MaxMinWindow);this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);}};this.DrawFrame=function(){if(this.XPointCount>0){var dInterval=this.ChartBorder.GetWidth()/(6*this.XPointCount);//分6份, 数据4 间距2
|
|
2091
2091
|
this.DistanceWidth=2*dInterval;this.DataWidth=4*dInterval;}this.DrawHorizontal();this.DrawVertical();};this.DrawTitleButton=function(aryButton,moveonPoint,mouseStatus){var border=this.GetBorder();if(this.IsHScreen){var y=border.Bottom-3;var x=border.RightTitle+this.ChartBorder.TitleHeight/2;this.Canvas.save();this.Canvas.translate(x,y);this.Canvas.rotate(90*Math.PI/180);//底部开始画
|
|
2092
2092
|
var yButton=0,xButton=0,bottom=0;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xButton=bottom-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var color=item.Style.Color;this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xButton,0);var rtButton={Left:x-size/2,Right:x+size/2,Bottom:y,Width:size,Height:size+item.Style.MerginLeft};rtButton.Top=rtButton.Bottom-size-item.Style.MerginLeft;this.Buttons.push({ID:item.ID,Rect:rtButton});bottom=xButton;y=rtButton.Top;}this.Canvas.restore();}else{var right=border.Right-3;var left=border.Left;var yButton=border.Top+this.ChartBorder.TitleHeight/2;//右往左绘制
|
|
2093
|
-
for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xBotton=right-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var rtButton={Left:xBotton,Top:yButton-size/2,Right:xBotton+size+item.Style.MerginLeft,Bottom:yButton+size/2,Width:size+item.Style.MerginLeft,Height:size};var color=item.Style.Color;if(moveonPoint&&moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){color=item.Style.MoveOnColor;if(mouseStatus)mouseStatus.MouseOnToolbar={Rect:rtButton,Item:item,Frame:this,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};}this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xBotton,yButton);this.Buttons.push({ID:item.ID,Rect:rtButton});right=xBotton;}}};this.DrawToolbarTooltip=function(mouseOnToolbar){if(!mouseOnToolbar)return;var border=this.GetBorder();var text=null;if(mouseOnToolbar.Item.TooltipText){text=mouseOnToolbar.Item.TooltipText;}else{var key='Toolbar-'+mouseOnToolbar.Item.ID;text=g_JSChartLocalization.GetText(key,0);}if(!text)return;var pixelRatio=GetDevicePixelRatio();var xCenter=mouseOnToolbar.Rect.Left+mouseOnToolbar.Rect.Width/2;this.Canvas.font=this.ButtonTooltip.Font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";var textWidth=this.Canvas.measureText(text).width+8;var textHeight=this.GetFontHeight();var bgHeight=textHeight+
|
|
2093
|
+
for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xBotton=right-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var rtButton={Left:xBotton,Top:yButton-size/2,Right:xBotton+size+item.Style.MerginLeft,Bottom:yButton+size/2,Width:size+item.Style.MerginLeft,Height:size};var color=item.Style.Color;if(moveonPoint&&moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){color=item.Style.MoveOnColor;if(mouseStatus)mouseStatus.MouseOnToolbar={Rect:rtButton,Item:item,Frame:this,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};}this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xBotton,yButton);this.Buttons.push({ID:item.ID,Rect:rtButton});right=xBotton;}}};this.DrawToolbarTooltip=function(mouseOnToolbar){if(!mouseOnToolbar)return;var border=this.GetBorder();var text=null;if(mouseOnToolbar.Item.TooltipText){text=mouseOnToolbar.Item.TooltipText;}else{var key='Toolbar-'+mouseOnToolbar.Item.ID;text=g_JSChartLocalization.GetText(key,0);}if(!text)return;var pixelRatio=GetDevicePixelRatio();var xCenter=mouseOnToolbar.Rect.Left+mouseOnToolbar.Rect.Width/2;this.Canvas.font=this.ButtonTooltip.Font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";var textWidth=this.Canvas.measureText(text).width+8;var textHeight=this.GetFontHeight();var bgHeight=textHeight+10;if(JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID==mouseOnToolbar.Item.ID){var x=mouseOnToolbar.Rect.Right+5;var y=mouseOnToolbar.Rect.Top;}else if(JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE==mouseOnToolbar.Item.ID||JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING==mouseOnToolbar.Item.ID){var x=mouseOnToolbar.Point.X;var y=mouseOnToolbar.Point.Y+20;if(x+textWidth>=border.ChartWidth)x=border.ChartWidth-textWidth-2;}else{var x=xCenter-textWidth/2;var y=border.Top-bgHeight;if(y<0)y=border.TopEx+1;if(x+textWidth>border.ChartWidth)x=border.ChartWidth-textWidth-2;}this.Canvas.fillStyle=this.ButtonTooltip.ColorBG;this.Canvas.fillRect(x,y,textWidth,bgHeight);//画一个背景色, 不然是一个黑的背景
|
|
2094
2094
|
this.Canvas.fillStyle=this.ButtonTooltip.Color;this.Canvas.fillText(text,x+4,y+bgHeight/2);};//isLimit 是否限制在当前坐标下
|
|
2095
2095
|
this.GetYFromData=function(value,isLimit){if(this.Logarithmic&&this.GetYLogarithmicFromData){return this.GetYLogarithmicFromData(value,isLimit);}if(isLimit===false){if(this.CoordinateType==1){var height=this.ChartBorder.GetHeightEx()*(value-this.HorizontalMin)/(this.HorizontalMax-this.HorizontalMin);return this.ChartBorder.GetTopEx()+height;}else{var height=this.ChartBorder.GetHeightEx()*(value-this.HorizontalMin)/(this.HorizontalMax-this.HorizontalMin);return this.ChartBorder.GetBottomEx()-height;}}else{if(this.CoordinateType==1){if(value<=this.HorizontalMin)return this.ChartBorder.GetTopEx();if(value>=this.HorizontalMax)return this.ChartBorder.GetBottomEx();var height=this.ChartBorder.GetHeightEx()*(value-this.HorizontalMin)/(this.HorizontalMax-this.HorizontalMin);return this.ChartBorder.GetTopEx()+height;}else{if(value<=this.HorizontalMin)return this.ChartBorder.GetBottomEx();if(value>=this.HorizontalMax)return this.ChartBorder.GetTopEx();var height=this.ChartBorder.GetHeightEx()*(value-this.HorizontalMin)/(this.HorizontalMax-this.HorizontalMin);return this.ChartBorder.GetBottomEx()-height;}}};//画Y轴
|
|
2096
2096
|
this.DrawHorizontal=function(){this.RightTextMaxWidth=0;if(!IFrameSplitOperator.IsNonEmptyArray(this.HorizontalInfo))return;if(this.ChartBorder.IsShowTitleOnly)return;var border=this.ChartBorder.GetBorder();var left=border.Left;var right=border.Right;var bottom=border.Bottom;var top=this.ChartBorder.GetTopTitle();var borderRight=this.ChartBorder.Right;var borderLeft=this.ChartBorder.Left;var isDrawLeft=borderLeft>10&&this.IsShowYText[0]===true&&this.YTextPosition[0]!=2;var isDrawRight=borderRight>10&&this.IsShowYText[1]===true&&this.YTextPosition[1]!=2;var yPrev=null;//上一个坐标y的值
|
|
@@ -4166,8 +4166,8 @@ if(callAuctionData.Ver==3.0&&IFrameSplitOperator.IsNumber(item.AvPrice)){if(rang
|
|
|
4166
4166
|
this.GetMultiDayBeforeOpenData=function(){if(!this.MultiDayBeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))return null;if(!this.DayOffset)return this.MultiDayBeforeOpenData;if(!IFrameSplitOperator.IsNumber(this.DayOffset.Offset)||!IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))return null;if(this.GlobalOption&&this.GlobalOption.IsValueFullRange===true)return this.MultiDayBeforeOpenData;var showCount=this.DayOffset.ShowDayCount;var offset=this.DayOffset.Offset;var aryData=this.MultiDayBeforeOpenData.slice(offset,offset+showCount);return aryData;};this.GetMultiDayAfterCloseData=function(){if(!this.MultiDayAfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return null;if(!this.DayOffset)return this.MultiDayAfterCloseData;if(!IFrameSplitOperator.IsNumber(this.DayOffset.Offset)||!IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))return null;if(this.GlobalOption&&this.GlobalOption.IsValueFullRange===true)return this.MultiDayAfterCloseData;var showCount=this.DayOffset.ShowDayCount;var offset=this.DayOffset.Offset;var aryData=this.MultiDayAfterCloseData.slice(offset,offset+showCount);return aryData;};this.GetMaxMin=function()//计算图中所有的数据的最大最小值
|
|
4167
4167
|
{var max=this.YClose;var min=this.YClose;var data=this.Data;var isBerforeData=false;if(this.SourceData){data=this.SourceData;isBerforeData=true;}if(this.DayCount>1)//多日
|
|
4168
4168
|
{var offset=this.DayOffset.DataOffset;var showDataCount=this.DayOffset.ShowDataCount;if(this.GlobalOption&&this.GlobalOption.IsValueFullRange===true){offset=0;showDataCount=data.Data.length;}for(var i=offset,j=0;i<data.Data.length&&j<showDataCount;++i,++j){var value=null;if(isBerforeData){var item=data.Data[i];if(item.Before)value=item.Before.Close;else value=item.Close;}else{value=data.Data[i];}if(value==null)continue;if(max<value)max=value;if(min>value)min=value;}if(this.AverageData){for(var i=offset,j=0;i<this.AverageData.Data.length&&j<showDataCount;++i,++j){if(this.AverageData.Data[i]==null)continue;if(max<this.AverageData.Data[i])max=this.AverageData.Data[i];if(min>this.AverageData.Data[i])min=this.AverageData.Data[i];}}}else{for(var i=0;i<data.Data.length;++i){var value=null;if(isBerforeData){var item=data.Data[i];if(item.Before)value=item.Before.Close;else value=item.Close;}else{value=data.Data[i];}if(value==null)continue;if(max<value)max=value;if(min>value)min=value;}if(this.AverageData){for(var i=0;i<this.AverageData.Data.length;++i){if(this.AverageData.Data[i]==null)continue;if(max<this.AverageData.Data[i])max=this.AverageData.Data[i];if(min>this.AverageData.Data[i])min=this.AverageData.Data[i];}}}for(var i in this.OverlayChartPaint){var item=this.OverlayChartPaint[i];//if (item.Status!=OVERLAY_STATUS_ID.STATUS_FINISHED_ID) continue;
|
|
4169
|
-
var range=item.GetMaxMin();if(range.Max&&range.Max>max)max=range.Max;if(range.Min&&range.Min<min)min=range.Min;}if(this.SplitType==1&&this.LimitPrice){if(max<this.LimitPrice.Max)max=this.LimitPrice.Max;if(min>this.LimitPrice.Min)min=this.LimitPrice.Min;}if(IFrameSplitOperator.IsNumber(this.High)&&IFrameSplitOperator.IsNumber(this.Low)){if(max<this.High)max=this.High;if(min>this.Low)min=this.Low;}var range={Max:null,Min:null};if(this.IsAfterData&&this.AfterCloseData){this.GetCallAuctionMaxMin(this.AfterCloseData,range);}if(this.IsBeforeData&&this.BeforeOpenData){this.GetCallAuctionMaxMin(this.BeforeOpenData,range);}var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();if(multiDayBeforeOpenData&&this.ChartBorder.MultiDayMinute.Count>1&&this.ChartBorder.MultiDayMinute.Left>0){for(var i=0;i<multiDayBeforeOpenData.length;++i){var dayItem=multiDayBeforeOpenData[i];this.GetCallAuctionMaxMin(dayItem,range);}}var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();if(multiDayAfterCloseData&&this.ChartBorder.MultiDayMinute.Count>1&&this.ChartBorder.MultiDayMinute.Right>0){for(var i=0;i<multiDayAfterCloseData.length;++i){var dayItem=multiDayAfterCloseData[i];this.GetCallAuctionMaxMin(dayItem,range);}}
|
|
4170
|
-
var overlayRange=this.GetOverlayMaxMin();if(overlayRange){if(IFrameSplitOperator.IsNumber(overlayRange.Max)&&overlayRange.Max>
|
|
4169
|
+
var range=item.GetMaxMin();if(range.Max&&range.Max>max)max=range.Max;if(range.Min&&range.Min<min)min=range.Min;}if(this.SplitType==1&&this.LimitPrice){if(max<this.LimitPrice.Max)max=this.LimitPrice.Max;if(min>this.LimitPrice.Min)min=this.LimitPrice.Min;}if(IFrameSplitOperator.IsNumber(this.High)&&IFrameSplitOperator.IsNumber(this.Low)){if(max<this.High)max=this.High;if(min>this.Low)min=this.Low;}var range={Max:null,Min:null};if(this.IsAfterData&&this.AfterCloseData){this.GetCallAuctionMaxMin(this.AfterCloseData,range);}if(this.IsBeforeData&&this.BeforeOpenData){this.GetCallAuctionMaxMin(this.BeforeOpenData,range);}var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();if(multiDayBeforeOpenData&&this.ChartBorder.MultiDayMinute.Count>1&&this.ChartBorder.MultiDayMinute.Left>0){for(var i=0;i<multiDayBeforeOpenData.length;++i){var dayItem=multiDayBeforeOpenData[i];this.GetCallAuctionMaxMin(dayItem,range);}}var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();if(multiDayAfterCloseData&&this.ChartBorder.MultiDayMinute.Count>1&&this.ChartBorder.MultiDayMinute.Right>0){for(var i=0;i<multiDayAfterCloseData.length;++i){var dayItem=multiDayAfterCloseData[i];this.GetCallAuctionMaxMin(dayItem,range);}}if(IFrameSplitOperator.IsNumber(range.Max)&&max<range.Max)max=range.Max;if(IFrameSplitOperator.IsNumber(range.Min)&&min>range.Min)min=range.Min;//叠加指标
|
|
4170
|
+
var overlayRange=this.GetOverlayMaxMin();if(overlayRange){if(IFrameSplitOperator.IsNumber(overlayRange.Max)&&overlayRange.Max>max)max=overlayRange.Max;if(IFrameSplitOperator.IsNumber(overlayRange.Min)&&overlayRange.Min<min)min=overlayRange.Min;}return{Max:max,Min:min};};//获取共享Y轴叠加指标最大,最小值
|
|
4171
4171
|
this.GetOverlayMaxMin=function(){if(!this.HQChart)return null;if(!this.HQChart.Frame||!this.HQChart.Frame.SubFrame)return null;var subFrame=this.HQChart.Frame.SubFrame[0];if(!subFrame)return null;if(!IFrameSplitOperator.IsNonEmptyArray(subFrame.OverlayIndex))return null;var range={Max:null,Min:null};for(var i=0;i<subFrame.OverlayIndex.length;++i){var item=subFrame.OverlayIndex[i];if(!item||!item.Frame)continue;var overlayFrame=item.Frame;if(overlayFrame.IsShareY!=true)continue;if(overlayFrame.IsCalculateYMaxMin===false)continue;//叠加坐标Y轴不调整
|
|
4172
4172
|
for(var j=0;j<item.ChartPaint.length;++j){var paint=item.ChartPaint[j];var value=paint.GetMaxMin();if(value==null||value.Max==null||value.Min==null)continue;if(range.Max==null||range.Max<value.Max)range.Max=value.Max;if(range.Min==null||range.Min>value.Min)range.Min=value.Min;}}return range;};this.USASplit=function(range){var max=range.Max;var min=range.Min;if(max==min){max=max+max*0.1;min=min-min*0.1;}else{var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
|
|
4173
4173
|
var height=this.Frame.ChartBorder.GetHeight();//画布的高度
|
|
@@ -4665,11 +4665,12 @@ this.Super_ExportStorageData=this.ExportStorageData;this.Label;//{Text:文本, P
|
|
|
4665
4665
|
this.LineWidth=1;this.Precision=2;//小数位数
|
|
4666
4666
|
this.ValueTextColor='rgb(250,250,250)';this.IsShowCorssCursor=true;//画的时候是否显示十字光标
|
|
4667
4667
|
this.Button={CloseIcon:{Text:'\uE62B',Color:'rgb(255,255,255)',Family:"iconfont",Size:16},SettingIcon:{Text:'\uE623',Color:'rgb(255,255,255)',Family:"iconfont",Size:16}};this.AryButton=[];this.ExtendData;//扩展数据
|
|
4668
|
-
this.SetOption=function(option){if(this.Super_SetOption)this.Super_SetOption(option);if(option){if(option.Label){var item=option.Label;if(IFrameSplitOperator.IsNumber(item.Position)&&item.Text){this.Label={Text:item.Text,Position:item.Position};}}if(IFrameSplitOperator.IsNumber(option.Precision))this.Precision=option.Precision;if(option.Font)this.Font=option.Font;if(option.Button){var item=option.Button;if(item.CloseIcon)this.Button.CloseIcon=CloneData(item.CloseIcon);if(item.SettingIcon)this.Button.SettingIcon=CloneData(item.SettingIcon);}if(option.ExtendData)this.ExtendData=option.ExtendData;}};this.ExportStorageData=function(){var storageData;if(this.Super_ExportStorageData){storageData=this.Super_ExportStorageData();if(this.Label)storageData.Label=this.Label;}return storageData;};this.PointCount=1;this.ClassName='ChartDrawHLine';this.IsPointIn=this.IsPointIn_XYValue_Line;this.Font=14*GetDevicePixelRatio()+"px 微软雅黑";this.GetXYCoordinate=function(){if(this.IsFrameMinSize())return null;var drawPoint=this.CalculateDrawPoint();return this.PointRange(drawPoint);};this.Draw=function(){this.LinePoint=[];this.AryButton=[];if(this.IsFrameMinSize())return;var drawPoint=this.CalculateDrawPoint();if(!drawPoint||drawPoint.length!=1)return;if(!this.Frame)return;if(this.Value.length!=1)return;if(!this.IsYValueInFrame(this.Value[0].YValue))return null;var isHScreen=this.Frame.IsHScreen;var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();if(isHScreen){left=this.Frame.ChartBorder.GetTop();right=this.Frame.ChartBorder.GetBottom();}this.ClipFrame();//画线段
|
|
4668
|
+
this.SetOption=function(option){if(this.Super_SetOption)this.Super_SetOption(option);if(option){if(option.Label){var item=option.Label;if(IFrameSplitOperator.IsNumber(item.Position)&&item.Text){this.Label={Text:item.Text,Position:item.Position};}}if(IFrameSplitOperator.IsNumber(option.Precision))this.Precision=option.Precision;if(option.Font)this.Font=option.Font;if(option.Button){var item=option.Button;if(item.CloseIcon)this.Button.CloseIcon=CloneData(item.CloseIcon);if(item.SettingIcon)this.Button.SettingIcon=CloneData(item.SettingIcon);}if(option.ExtendData)this.ExtendData=option.ExtendData;}};this.ExportStorageData=function(){var storageData;if(this.Super_ExportStorageData){storageData=this.Super_ExportStorageData();if(this.Label)storageData.Label=this.Label;}return storageData;};this.PointCount=1;this.ClassName='ChartDrawHLine';this.IsPointIn=this.IsPointIn_XYValue_Line;this.Font=14*GetDevicePixelRatio()+"px 微软雅黑";this.GetXYCoordinate=function(){if(this.IsFrameMinSize())return null;var drawPoint=this.CalculateDrawPoint();return this.PointRange(drawPoint);};this.Draw=function(moveonPoint,mouseStatus){this.LinePoint=[];this.AryButton=[];if(this.IsFrameMinSize())return;var drawPoint=this.CalculateDrawPoint();if(!drawPoint||drawPoint.length!=1)return;if(!this.Frame)return;if(this.Value.length!=1)return;if(!this.IsYValueInFrame(this.Value[0].YValue))return null;var isHScreen=this.Frame.IsHScreen;var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();if(isHScreen){left=this.Frame.ChartBorder.GetTop();right=this.Frame.ChartBorder.GetBottom();}this.ClipFrame();//画线段
|
|
4669
4669
|
this.Canvas.strokeStyle=this.LineColor;this.SetLineWidth();this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(drawPoint[0].X,left);this.Canvas.lineTo(drawPoint[0].X,right);}else{this.Canvas.moveTo(left,ToFixedPoint(drawPoint[0].Y));this.Canvas.lineTo(right,ToFixedPoint(drawPoint[0].Y));}this.Canvas.stroke();this.RestoreLineWidth();var line={Start:new Point(),End:new Point()};if(isHScreen){line.Start.X=drawPoint[0].X;line.Start.Y=left;line.End.X=drawPoint[0].X;line.End.Y=right;}else{line.Start.X=left;line.Start.Y=drawPoint[0].Y;line.End.X=right;line.End.Y=drawPoint[0].Y;}this.LinePoint.push(line);//画点
|
|
4670
4670
|
this.DrawPoint(drawPoint);//描述信息
|
|
4671
4671
|
this.DrawLab(drawPoint[0].Y);this.Canvas.restore();//显示价格
|
|
4672
|
-
this.DrawValueText(drawPoint[0].Y)
|
|
4672
|
+
this.DrawValueText(drawPoint[0].Y);//鼠标是否在按钮上
|
|
4673
|
+
if(moveonPoint&&mouseStatus){for(var i=0;i<this.AryButton.length;++i){var item=this.AryButton[i];var rtButton=item.Rect;if(moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){mouseStatus.MouseOnToolbar={Rect:rtButton,Item:item,Frame:this.Frame,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};break;}}}};this.DrawLab=function(y){if(!this.Label||!this.Label.Text)return;var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();this.Canvas.textAlign="left";this.Canvas.textBaseline="bottom";this.Canvas.font=this.Font;this.Canvas.fillStyle=this.LineColor;var textWidth=this.Canvas.measureText(this.Label.Text).width;if(this.Label.Position==0){var textLeft=left;}else if(this.Label.Position==1){var textLeft=right-textWidth-2;}else{var textLeft=(right-left)/2-textWidth/2;}this.Canvas.fillText(this.Label.Text,textLeft,y);};this.DrawValueText=function(y){var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();var yValue=this.Frame.GetYData(y);var strValue=yValue.toFixed(this.Precision);this.Canvas.fillStyle=this.LineColor;this.Canvas.font=this.Font;var textWidth=this.Canvas.measureText(strValue).width;var lineHeight=this.GetFontHeight();var btnWidth=lineHeight+2;var rtBG={Left:right,Top:y-lineHeight/2,Width:textWidth+4+btnWidth*2,Height:lineHeight};rtBG.Right=rtBG.Left+rtBG.Width;rtBG.Bottom=rtBG.Top+rtBG.Height;this.Canvas.fillRect(ToFixedPoint(rtBG.Left),ToFixedPoint(rtBG.Top),ToFixedRect(rtBG.Width),ToFixedRect(rtBG.Height));this.Canvas.fillStyle=this.ValueTextColor;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(strValue,rtBG.Left+2,y);this.DrawButton(rtBG.Top,rtBG.Left+4+textWidth,lineHeight,lineHeight);};this.DrawButton=function(drawTop,drawLeft,drawWidth,drawHeight,data){this.Canvas.fillStyle=this.LineColor;var left=drawLeft;var pixelRatio=GetDevicePixelRatio();var spaceWidth=3;if(this.Button.SettingIcon){var rtButton={Left:left,Top:drawTop,Width:drawWidth,Height:drawHeight};rtButton.Right=rtButton.Left+rtButton.Width;rtButton.Bottom=rtButton.Top+rtButton.Height;var yCenter=rtButton.Top+spaceWidth+(rtButton.Height-spaceWidth*2)/2;var xCenter=rtButton.Left+spaceWidth+(rtButton.Width-spaceWidth*2)/2;var icon=this.Button.SettingIcon;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(this.Button.SettingIcon.Text,xCenter,yCenter);this.AryButton.push({Rect:rtButton,ID:JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING});left+=drawWidth;}if(this.Button.CloseIcon){var rtButton={Left:left,Top:drawTop,Width:drawWidth,Height:drawHeight};rtButton.Right=rtButton.Left+rtButton.Width;rtButton.Bottom=rtButton.Top+rtButton.Height;var yCenter=rtButton.Top+spaceWidth+(rtButton.Height-spaceWidth*2)/2;var xCenter=rtButton.Left+spaceWidth+(rtButton.Width-spaceWidth*2)/2;var icon=this.Button.CloseIcon;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(this.Button.CloseIcon.Text,xCenter,yCenter);this.AryButton.push({Rect:rtButton,ID:JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE});left+=drawWidth;}};this.PtInButtons=function(x,y){for(var i=0;i<this.AryButton.length;++i){var item=this.AryButton[i];if(!item.Rect)continue;var rect=item.Rect;this.Canvas.beginPath();this.Canvas.rect(rect.Left,rect.Top,rect.Width,rect.Height);if(this.Canvas.isPointInPath(x,y)){return{ID:item.ID,Rect:rect};}}return null;};}//趋势线
|
|
4673
4674
|
function ChartDrawPictureTrendLine(){this.newMethod=IChartDrawPicture;//派生
|
|
4674
4675
|
this.newMethod();delete this.newMethod;this.ClassName='ChartDrawPictureTrendLine';this.IsPointIn=this.IsPointIn_XYValue_Line;this.GetXYCoordinate=this.GetXYCoordinate_default;this.Draw=function(){this.LinePoint=[];if(this.IsFrameMinSize())return;var drawPoint=this.CalculateDrawPoint({IsCheckX:true,IsCheckY:true});if(!drawPoint||drawPoint.length!=2)return;var ptStart=drawPoint[0];var ptEnd=drawPoint[1];var extendLine=this.CalculateExtendLinePoint(ptStart,ptEnd);this.ClipFrame();this.Canvas.strokeStyle=this.LineColor;this.SetLineWidth();this.Canvas.beginPath();this.Canvas.moveTo(extendLine.Start.X,extendLine.Start.Y);this.Canvas.lineTo(extendLine.End.X,extendLine.End.Y);this.Canvas.stroke();this.RestoreLineWidth();var line={Start:ptStart,End:ptEnd};this.LinePoint.push(line);this.DrawPoint(drawPoint);//画点
|
|
4675
4676
|
this.Canvas.restore();};}//画图工具-矩形
|
|
@@ -5208,7 +5209,7 @@ LANGUAGE_TRADITIONAL_CHINESE_ID:2//繁体中文 TC
|
|
|
5208
5209
|
['不复权',{CN:'不复权',EN:'No Right',TC:'不復權'}],['前复权',{CN:'前复权',EN:'Pro Right',TC:'前復權'}],['后复权',{CN:'后复权',EN:'Post Right',TC:'后復權'}],//week
|
|
5209
5210
|
['日',{CN:'日',EN:'Sun.',TC:'日'}],['一',{CN:'一',EN:'Mon.',TC:'壹'}],['二',{CN:'二',EN:'Tues.',TC:'貳'}],['三',{CN:'三',EN:'Wed.',TC:'叁'}],['四',{CN:'四',EN:'Thur.',TC:'肆'}],['五',{CN:'五',EN:'Fri.',TC:'伍'}],['六',{CN:'六',EN:'Sat.',TC:'陸'}],['1月',{CN:'1月',EN:'Jan',TC:'1月'}],['2月',{CN:'2月',EN:'Feb',TC:'2月'}],['3月',{CN:'3月',EN:'Mar',TC:'3月'}],['4月',{CN:'4月',EN:'Apr',TC:'4月'}],['5月',{CN:'5月',EN:'May',TC:'5月'}],['6月',{CN:'6月',EN:'Jun',TC:'6月'}],['7月',{CN:'7月',EN:'Jul',TC:'7月'}],['8月',{CN:'8月',EN:'Aug',TC:'8月'}],['9月',{CN:'9月',EN:'Sept',TC:'9月'}],['10月',{CN:'10月',EN:'Oct',TC:'10月'}],['11月',{CN:'11月',EN:'Nov',TC:'11月'}],['12月',{CN:'12月',EN:'Dec',TC:'12月'}],['自定义分钟',{CN:'分',EN:'Min',TC:'分'}],['自定义日线',{CN:'日',EN:'D',TC:'日'}],['自定义秒',{CN:'秒',EN:'S',TC:'秒'}],["MVol-Vol",{CN:"成交量",EN:"Volume",TC:'成交量'}],["MVol-Position",{CN:"持仓量",EN:"Position",TC:'持倉量'}],//深度图
|
|
5210
5211
|
["Depth-Price",{CN:"委托价",EN:"Price",TC:'委托價'}],["Depth-Sum",{CN:"累计",EN:"Sum",TC:'累計'}],//工具栏提示信息
|
|
5211
|
-
["Toolbar-"+JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM,{CN:"调整指标参数",EN:"Change indicator parameters",TC:"调整指标参数"}],["Toolbar-"+JSCHART_BUTTON_ID.CHANGE_INDEX,{CN:"选择指标",EN:"Change indicator",TC:"切换指标"}],["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_INDEX_WINDOW,{CN:"关闭窗口",EN:"Delete window",TC:"关闭指标窗口"}],["Toolbar-"+JSCHART_BUTTON_ID.OVERLAY_INDEX,{CN:"叠加指标",EN:"Overlay indicator",TC:"叠加指标"}],["Toolbar-"+JSCHART_BUTTON_ID.MODIFY_OVERLAY_INDEX_PARAM,{CN:"调整叠加指标参数",EN:"Change overlay indicator parameters",TC:"调整叠加指标参数"}],["Toolbar-"+JSCHART_BUTTON_ID.MAX_MIN_WINDOW,{CN:"最大化",EN:"Maximize",TC:"最大化"}],["Toolbar-"+JSCHART_BUTTON_ID.TITLE_WINDOW,{CN:"折叠窗口",EN:"Collapse window",TC:"折叠窗口"}],["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID,{CN:"关闭集合竞价",EN:"Close call auction",TC:"关闭集合竞价"}],["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_OVERLAY_INDEX,{CN:"关闭叠加指标",EN:"Delte overlay indicator",TC:"关闭叠加指标"}],["Toolbar-"+JSCHART_BUTTON_ID.CHIP_RECENT,{CN:"近期成本分布",EN:"Recent chip",TC:"近期成本分布"}],["Toolbar-"+JSCHART_BUTTON_ID.CHIP_LONG,{CN:"远期成本分布",EN:"Long chip",TC:"远期成本分布"}],["Toolbar-"+JSCHART_BUTTON_ID.CHIP_DEFULT,{CN:"默认筹码分布",EN:"Default chip",TC:"默认筹码分布"}]]);this.GetText=function(key,language){var item=this.TextResource.get(key);if(!item)return'';switch(language){case JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID:return item.CN;case JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID:return item.EN;case JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID:return item.TC;default:return item.CN;}};this.SetTextResource=function(key,value){this.TextResource.set(key,value);};this.GetLanguageID=function(languageName){var languageID=null;switch(languageName){case'EN':languageID=JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID;break;case'CN':languageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;break;case"TC":languageID=JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID;break;default:break;}return languageID;};};var g_JSChartLocalization=new JSChartLocalization();/*
|
|
5212
|
+
["Toolbar-"+JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM,{CN:"调整指标参数",EN:"Change indicator parameters",TC:"调整指标参数"}],["Toolbar-"+JSCHART_BUTTON_ID.CHANGE_INDEX,{CN:"选择指标",EN:"Change indicator",TC:"切换指标"}],["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_INDEX_WINDOW,{CN:"关闭窗口",EN:"Delete window",TC:"关闭指标窗口"}],["Toolbar-"+JSCHART_BUTTON_ID.OVERLAY_INDEX,{CN:"叠加指标",EN:"Overlay indicator",TC:"叠加指标"}],["Toolbar-"+JSCHART_BUTTON_ID.MODIFY_OVERLAY_INDEX_PARAM,{CN:"调整叠加指标参数",EN:"Change overlay indicator parameters",TC:"调整叠加指标参数"}],["Toolbar-"+JSCHART_BUTTON_ID.MAX_MIN_WINDOW,{CN:"最大化",EN:"Maximize",TC:"最大化"}],["Toolbar-"+JSCHART_BUTTON_ID.TITLE_WINDOW,{CN:"折叠窗口",EN:"Collapse window",TC:"折叠窗口"}],["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID,{CN:"关闭集合竞价",EN:"Close call auction",TC:"关闭集合竞价"}],["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_OVERLAY_INDEX,{CN:"关闭叠加指标",EN:"Delte overlay indicator",TC:"关闭叠加指标"}],["Toolbar-"+JSCHART_BUTTON_ID.CHIP_RECENT,{CN:"近期成本分布",EN:"Recent chip",TC:"近期成本分布"}],["Toolbar-"+JSCHART_BUTTON_ID.CHIP_LONG,{CN:"远期成本分布",EN:"Long chip",TC:"远期成本分布"}],["Toolbar-"+JSCHART_BUTTON_ID.CHIP_DEFULT,{CN:"默认筹码分布",EN:"Default chip",TC:"默认筹码分布"}],["Toolbar-"+JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE,{CN:"删除",EN:"Delete",TC:"删除"}],["Toolbar-"+JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING,{CN:"设置",EN:"Setting",TC:"设置"}]]);this.GetText=function(key,language){var item=this.TextResource.get(key);if(!item)return'';switch(language){case JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID:return item.CN;case JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID:return item.EN;case JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID:return item.TC;default:return item.CN;}};this.SetTextResource=function(key,value){this.TextResource.set(key,value);};this.GetLanguageID=function(languageName){var languageID=null;switch(languageName){case'EN':languageID=JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID;break;case'CN':languageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;break;case"TC":languageID=JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID;break;default:break;}return languageID;};};var g_JSChartLocalization=new JSChartLocalization();/*
|
|
5212
5213
|
指标列表 指标信息都在这里,不够后面再加字段
|
|
5213
5214
|
*/function JSIndexMap(){}JSIndexMap.Get=function(id){var indexMap=new _map2.default([//公司自己的指标
|
|
5214
5215
|
["市场多空",{IsMainIndex:false,Create:function Create(){return new MarketLongShortIndex();}}],["市场择时",{IsMainIndex:false,Create:function Create(){return new MarketTimingIndex();}}],["市场关注度",{IsMainIndex:false,Create:function Create(){return new MarketAttentionIndex();}}],["指数热度",{IsMainIndex:false,Create:function Create(){return new MarketHeatIndex();}}],["财务粉饰",{IsMainIndex:false,Create:function Create(){return new BenfordIndex();}}],["自定义指数热度",{IsMainIndex:false,Create:function Create(){return new CustonIndexHeatIndex();},Name:'自定义指数热度'}],//废弃
|
package/package.json
CHANGED
|
@@ -8854,7 +8854,7 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
8854
8854
|
if (item.IsDrawFirst) continue;
|
|
8855
8855
|
if (item.IsDrawMain && item.IsDrawMain()) continue;
|
|
8856
8856
|
|
|
8857
|
-
item.Draw();
|
|
8857
|
+
item.Draw(moveonPoint, this.LastMouseStatus);
|
|
8858
8858
|
}
|
|
8859
8859
|
|
|
8860
8860
|
if (this.CurrentChartDrawPicture && this.CurrentChartDrawPicture.Status!=10)
|
|
@@ -12440,12 +12440,19 @@ function AverageWidthFrame()
|
|
|
12440
12440
|
|
|
12441
12441
|
var textWidth=this.Canvas.measureText(text).width+8;
|
|
12442
12442
|
var textHeight=this.GetFontHeight();
|
|
12443
|
-
var bgHeight=textHeight+
|
|
12443
|
+
var bgHeight=textHeight+10;
|
|
12444
12444
|
if (JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID==mouseOnToolbar.Item.ID)
|
|
12445
12445
|
{
|
|
12446
12446
|
var x=mouseOnToolbar.Rect.Right+5;
|
|
12447
12447
|
var y=mouseOnToolbar.Rect.Top;
|
|
12448
12448
|
}
|
|
12449
|
+
else if (JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE==mouseOnToolbar.Item.ID || JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING==mouseOnToolbar.Item.ID)
|
|
12450
|
+
{
|
|
12451
|
+
var x=mouseOnToolbar.Point.X;
|
|
12452
|
+
var y=mouseOnToolbar.Point.Y+20;
|
|
12453
|
+
|
|
12454
|
+
if ((x+textWidth)>=border.ChartWidth) x=border.ChartWidth-textWidth-2;
|
|
12455
|
+
}
|
|
12449
12456
|
else
|
|
12450
12457
|
{
|
|
12451
12458
|
var x=xCenter-textWidth/2;
|
|
@@ -42828,18 +42835,19 @@ function FrameSplitMinutePriceY()
|
|
|
42828
42835
|
this.GetCallAuctionMaxMin(dayItem,range);
|
|
42829
42836
|
}
|
|
42830
42837
|
}
|
|
42831
|
-
|
|
42832
|
-
//叠加指标
|
|
42833
|
-
var overlayRange=this.GetOverlayMaxMin();
|
|
42834
|
-
if (overlayRange)
|
|
42835
|
-
{
|
|
42836
|
-
if (IFrameSplitOperator.IsNumber(overlayRange.Max) && overlayRange.Max>range.Max) range.Max=overlayRange.Max;
|
|
42837
|
-
if (IFrameSplitOperator.IsNumber(overlayRange.Min) && overlayRange.Min<range.Min) range.Min=overlayRange.Min;
|
|
42838
|
-
}
|
|
42839
|
-
|
|
42838
|
+
|
|
42840
42839
|
if (IFrameSplitOperator.IsNumber(range.Max) && max<range.Max) max=range.Max;
|
|
42841
42840
|
if (IFrameSplitOperator.IsNumber(range.Min) && min>range.Min) min=range.Min;
|
|
42842
42841
|
|
|
42842
|
+
//叠加指标
|
|
42843
|
+
var overlayRange=this.GetOverlayMaxMin();
|
|
42844
|
+
if (overlayRange)
|
|
42845
|
+
{
|
|
42846
|
+
if (IFrameSplitOperator.IsNumber(overlayRange.Max) && overlayRange.Max>max) max=overlayRange.Max;
|
|
42847
|
+
if (IFrameSplitOperator.IsNumber(overlayRange.Min) && overlayRange.Min<min) min=overlayRange.Min;
|
|
42848
|
+
}
|
|
42849
|
+
|
|
42850
|
+
|
|
42843
42851
|
return { Max:max, Min:min };
|
|
42844
42852
|
}
|
|
42845
42853
|
|
|
@@ -49488,7 +49496,7 @@ function ChartDrawHLine()
|
|
|
49488
49496
|
return this.PointRange(drawPoint);
|
|
49489
49497
|
}
|
|
49490
49498
|
|
|
49491
|
-
this.Draw=function()
|
|
49499
|
+
this.Draw=function(moveonPoint, mouseStatus)
|
|
49492
49500
|
{
|
|
49493
49501
|
this.LinePoint=[];
|
|
49494
49502
|
this.AryButton=[];
|
|
@@ -49552,7 +49560,22 @@ function ChartDrawHLine()
|
|
|
49552
49560
|
this.Canvas.restore();
|
|
49553
49561
|
|
|
49554
49562
|
//显示价格
|
|
49555
|
-
this.DrawValueText(drawPoint[0].Y);
|
|
49563
|
+
this.DrawValueText(drawPoint[0].Y);
|
|
49564
|
+
|
|
49565
|
+
//鼠标是否在按钮上
|
|
49566
|
+
if (moveonPoint && mouseStatus)
|
|
49567
|
+
{
|
|
49568
|
+
for(var i=0;i<this.AryButton.length;++i)
|
|
49569
|
+
{
|
|
49570
|
+
var item=this.AryButton[i];
|
|
49571
|
+
var rtButton=item.Rect;
|
|
49572
|
+
if (moveonPoint.X>=rtButton.Left && moveonPoint.X<rtButton.Right && moveonPoint.Y>=rtButton.Top && moveonPoint.Y<=rtButton.Bottom)
|
|
49573
|
+
{
|
|
49574
|
+
mouseStatus.MouseOnToolbar={ Rect:rtButton, Item:item, Frame:this.Frame, Point:{X:moveonPoint.X, Y:moveonPoint.Y} };
|
|
49575
|
+
break;
|
|
49576
|
+
}
|
|
49577
|
+
}
|
|
49578
|
+
}
|
|
49556
49579
|
}
|
|
49557
49580
|
|
|
49558
49581
|
this.DrawLab=function(y)
|
|
@@ -49620,9 +49643,11 @@ function ChartDrawHLine()
|
|
|
49620
49643
|
|
|
49621
49644
|
if (this.Button.SettingIcon)
|
|
49622
49645
|
{
|
|
49623
|
-
var
|
|
49624
|
-
|
|
49625
|
-
|
|
49646
|
+
var rtButton={Left:left, Top:drawTop, Width:drawWidth, Height:drawHeight };
|
|
49647
|
+
rtButton.Right=rtButton.Left+rtButton.Width;
|
|
49648
|
+
rtButton.Bottom=rtButton.Top+rtButton.Height;
|
|
49649
|
+
var yCenter=(rtButton.Top+spaceWidth)+(rtButton.Height-spaceWidth*2)/2;
|
|
49650
|
+
var xCenter=(rtButton.Left+spaceWidth)+(rtButton.Width-spaceWidth*2)/2;
|
|
49626
49651
|
|
|
49627
49652
|
var icon=this.Button.SettingIcon;
|
|
49628
49653
|
this.Canvas.font=`${icon.Size*pixelRatio}px ${icon.Family}`;
|
|
@@ -49631,16 +49656,18 @@ function ChartDrawHLine()
|
|
|
49631
49656
|
this.Canvas.fillStyle=icon.Color;
|
|
49632
49657
|
this.Canvas.fillText(this.Button.SettingIcon.Text,xCenter,yCenter);
|
|
49633
49658
|
|
|
49634
|
-
this.AryButton.push({Rect:
|
|
49659
|
+
this.AryButton.push({Rect:rtButton, ID:JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING});
|
|
49635
49660
|
|
|
49636
49661
|
left+=drawWidth;
|
|
49637
49662
|
}
|
|
49638
49663
|
|
|
49639
49664
|
if (this.Button.CloseIcon)
|
|
49640
49665
|
{
|
|
49641
|
-
var
|
|
49642
|
-
|
|
49643
|
-
|
|
49666
|
+
var rtButton={Left:left, Top:drawTop, Width:drawWidth, Height:drawHeight };
|
|
49667
|
+
rtButton.Right=rtButton.Left+rtButton.Width;
|
|
49668
|
+
rtButton.Bottom=rtButton.Top+rtButton.Height;
|
|
49669
|
+
var yCenter=(rtButton.Top+spaceWidth)+(rtButton.Height-spaceWidth*2)/2;
|
|
49670
|
+
var xCenter=(rtButton.Left+spaceWidth)+(rtButton.Width-spaceWidth*2)/2;
|
|
49644
49671
|
|
|
49645
49672
|
var icon=this.Button.CloseIcon;
|
|
49646
49673
|
this.Canvas.font=`${icon.Size*pixelRatio}px ${icon.Family}`;
|
|
@@ -49649,7 +49676,7 @@ function ChartDrawHLine()
|
|
|
49649
49676
|
this.Canvas.fillStyle=icon.Color;
|
|
49650
49677
|
this.Canvas.fillText(this.Button.CloseIcon.Text,xCenter,yCenter);
|
|
49651
49678
|
|
|
49652
|
-
this.AryButton.push({Rect:
|
|
49679
|
+
this.AryButton.push({Rect:rtButton,ID:JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE });
|
|
49653
49680
|
|
|
49654
49681
|
left+=drawWidth;
|
|
49655
49682
|
}
|
|
@@ -56220,10 +56247,10 @@ function JSChartLocalization()
|
|
|
56220
56247
|
["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_OVERLAY_INDEX, {CN:"关闭叠加指标", EN:"Delte overlay indicator", TC:"关闭叠加指标"}],
|
|
56221
56248
|
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_RECENT, {CN:"近期成本分布", EN:"Recent chip", TC:"近期成本分布"}],
|
|
56222
56249
|
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_LONG, {CN:"远期成本分布", EN:"Long chip", TC:"远期成本分布"}],
|
|
56223
|
-
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_DEFULT, {CN:"默认筹码分布", EN:"Default chip", TC:"默认筹码分布"}]
|
|
56250
|
+
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_DEFULT, {CN:"默认筹码分布", EN:"Default chip", TC:"默认筹码分布"}],
|
|
56251
|
+
["Toolbar-"+JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE, {CN:"删除", EN:"Delete", TC:"删除"}],
|
|
56252
|
+
["Toolbar-"+JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING, {CN:"设置", EN:"Setting", TC:"设置"}]
|
|
56224
56253
|
|
|
56225
|
-
|
|
56226
|
-
|
|
56227
56254
|
]);
|
|
56228
56255
|
|
|
56229
56256
|
this.GetText=function(key,language)
|
|
@@ -8898,7 +8898,7 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
8898
8898
|
if (item.IsDrawFirst) continue;
|
|
8899
8899
|
if (item.IsDrawMain && item.IsDrawMain()) continue;
|
|
8900
8900
|
|
|
8901
|
-
item.Draw();
|
|
8901
|
+
item.Draw(moveonPoint, this.LastMouseStatus);
|
|
8902
8902
|
}
|
|
8903
8903
|
|
|
8904
8904
|
if (this.CurrentChartDrawPicture && this.CurrentChartDrawPicture.Status!=10)
|
|
@@ -12484,12 +12484,19 @@ function AverageWidthFrame()
|
|
|
12484
12484
|
|
|
12485
12485
|
var textWidth=this.Canvas.measureText(text).width+8;
|
|
12486
12486
|
var textHeight=this.GetFontHeight();
|
|
12487
|
-
var bgHeight=textHeight+
|
|
12487
|
+
var bgHeight=textHeight+10;
|
|
12488
12488
|
if (JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID==mouseOnToolbar.Item.ID)
|
|
12489
12489
|
{
|
|
12490
12490
|
var x=mouseOnToolbar.Rect.Right+5;
|
|
12491
12491
|
var y=mouseOnToolbar.Rect.Top;
|
|
12492
12492
|
}
|
|
12493
|
+
else if (JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE==mouseOnToolbar.Item.ID || JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING==mouseOnToolbar.Item.ID)
|
|
12494
|
+
{
|
|
12495
|
+
var x=mouseOnToolbar.Point.X;
|
|
12496
|
+
var y=mouseOnToolbar.Point.Y+20;
|
|
12497
|
+
|
|
12498
|
+
if ((x+textWidth)>=border.ChartWidth) x=border.ChartWidth-textWidth-2;
|
|
12499
|
+
}
|
|
12493
12500
|
else
|
|
12494
12501
|
{
|
|
12495
12502
|
var x=xCenter-textWidth/2;
|
|
@@ -42872,18 +42879,19 @@ function FrameSplitMinutePriceY()
|
|
|
42872
42879
|
this.GetCallAuctionMaxMin(dayItem,range);
|
|
42873
42880
|
}
|
|
42874
42881
|
}
|
|
42875
|
-
|
|
42876
|
-
//叠加指标
|
|
42877
|
-
var overlayRange=this.GetOverlayMaxMin();
|
|
42878
|
-
if (overlayRange)
|
|
42879
|
-
{
|
|
42880
|
-
if (IFrameSplitOperator.IsNumber(overlayRange.Max) && overlayRange.Max>range.Max) range.Max=overlayRange.Max;
|
|
42881
|
-
if (IFrameSplitOperator.IsNumber(overlayRange.Min) && overlayRange.Min<range.Min) range.Min=overlayRange.Min;
|
|
42882
|
-
}
|
|
42883
|
-
|
|
42882
|
+
|
|
42884
42883
|
if (IFrameSplitOperator.IsNumber(range.Max) && max<range.Max) max=range.Max;
|
|
42885
42884
|
if (IFrameSplitOperator.IsNumber(range.Min) && min>range.Min) min=range.Min;
|
|
42886
42885
|
|
|
42886
|
+
//叠加指标
|
|
42887
|
+
var overlayRange=this.GetOverlayMaxMin();
|
|
42888
|
+
if (overlayRange)
|
|
42889
|
+
{
|
|
42890
|
+
if (IFrameSplitOperator.IsNumber(overlayRange.Max) && overlayRange.Max>max) max=overlayRange.Max;
|
|
42891
|
+
if (IFrameSplitOperator.IsNumber(overlayRange.Min) && overlayRange.Min<min) min=overlayRange.Min;
|
|
42892
|
+
}
|
|
42893
|
+
|
|
42894
|
+
|
|
42887
42895
|
return { Max:max, Min:min };
|
|
42888
42896
|
}
|
|
42889
42897
|
|
|
@@ -49532,7 +49540,7 @@ function ChartDrawHLine()
|
|
|
49532
49540
|
return this.PointRange(drawPoint);
|
|
49533
49541
|
}
|
|
49534
49542
|
|
|
49535
|
-
this.Draw=function()
|
|
49543
|
+
this.Draw=function(moveonPoint, mouseStatus)
|
|
49536
49544
|
{
|
|
49537
49545
|
this.LinePoint=[];
|
|
49538
49546
|
this.AryButton=[];
|
|
@@ -49596,7 +49604,22 @@ function ChartDrawHLine()
|
|
|
49596
49604
|
this.Canvas.restore();
|
|
49597
49605
|
|
|
49598
49606
|
//显示价格
|
|
49599
|
-
this.DrawValueText(drawPoint[0].Y);
|
|
49607
|
+
this.DrawValueText(drawPoint[0].Y);
|
|
49608
|
+
|
|
49609
|
+
//鼠标是否在按钮上
|
|
49610
|
+
if (moveonPoint && mouseStatus)
|
|
49611
|
+
{
|
|
49612
|
+
for(var i=0;i<this.AryButton.length;++i)
|
|
49613
|
+
{
|
|
49614
|
+
var item=this.AryButton[i];
|
|
49615
|
+
var rtButton=item.Rect;
|
|
49616
|
+
if (moveonPoint.X>=rtButton.Left && moveonPoint.X<rtButton.Right && moveonPoint.Y>=rtButton.Top && moveonPoint.Y<=rtButton.Bottom)
|
|
49617
|
+
{
|
|
49618
|
+
mouseStatus.MouseOnToolbar={ Rect:rtButton, Item:item, Frame:this.Frame, Point:{X:moveonPoint.X, Y:moveonPoint.Y} };
|
|
49619
|
+
break;
|
|
49620
|
+
}
|
|
49621
|
+
}
|
|
49622
|
+
}
|
|
49600
49623
|
}
|
|
49601
49624
|
|
|
49602
49625
|
this.DrawLab=function(y)
|
|
@@ -49664,9 +49687,11 @@ function ChartDrawHLine()
|
|
|
49664
49687
|
|
|
49665
49688
|
if (this.Button.SettingIcon)
|
|
49666
49689
|
{
|
|
49667
|
-
var
|
|
49668
|
-
|
|
49669
|
-
|
|
49690
|
+
var rtButton={Left:left, Top:drawTop, Width:drawWidth, Height:drawHeight };
|
|
49691
|
+
rtButton.Right=rtButton.Left+rtButton.Width;
|
|
49692
|
+
rtButton.Bottom=rtButton.Top+rtButton.Height;
|
|
49693
|
+
var yCenter=(rtButton.Top+spaceWidth)+(rtButton.Height-spaceWidth*2)/2;
|
|
49694
|
+
var xCenter=(rtButton.Left+spaceWidth)+(rtButton.Width-spaceWidth*2)/2;
|
|
49670
49695
|
|
|
49671
49696
|
var icon=this.Button.SettingIcon;
|
|
49672
49697
|
this.Canvas.font=`${icon.Size*pixelRatio}px ${icon.Family}`;
|
|
@@ -49675,16 +49700,18 @@ function ChartDrawHLine()
|
|
|
49675
49700
|
this.Canvas.fillStyle=icon.Color;
|
|
49676
49701
|
this.Canvas.fillText(this.Button.SettingIcon.Text,xCenter,yCenter);
|
|
49677
49702
|
|
|
49678
|
-
this.AryButton.push({Rect:
|
|
49703
|
+
this.AryButton.push({Rect:rtButton, ID:JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING});
|
|
49679
49704
|
|
|
49680
49705
|
left+=drawWidth;
|
|
49681
49706
|
}
|
|
49682
49707
|
|
|
49683
49708
|
if (this.Button.CloseIcon)
|
|
49684
49709
|
{
|
|
49685
|
-
var
|
|
49686
|
-
|
|
49687
|
-
|
|
49710
|
+
var rtButton={Left:left, Top:drawTop, Width:drawWidth, Height:drawHeight };
|
|
49711
|
+
rtButton.Right=rtButton.Left+rtButton.Width;
|
|
49712
|
+
rtButton.Bottom=rtButton.Top+rtButton.Height;
|
|
49713
|
+
var yCenter=(rtButton.Top+spaceWidth)+(rtButton.Height-spaceWidth*2)/2;
|
|
49714
|
+
var xCenter=(rtButton.Left+spaceWidth)+(rtButton.Width-spaceWidth*2)/2;
|
|
49688
49715
|
|
|
49689
49716
|
var icon=this.Button.CloseIcon;
|
|
49690
49717
|
this.Canvas.font=`${icon.Size*pixelRatio}px ${icon.Family}`;
|
|
@@ -49693,7 +49720,7 @@ function ChartDrawHLine()
|
|
|
49693
49720
|
this.Canvas.fillStyle=icon.Color;
|
|
49694
49721
|
this.Canvas.fillText(this.Button.CloseIcon.Text,xCenter,yCenter);
|
|
49695
49722
|
|
|
49696
|
-
this.AryButton.push({Rect:
|
|
49723
|
+
this.AryButton.push({Rect:rtButton,ID:JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE });
|
|
49697
49724
|
|
|
49698
49725
|
left+=drawWidth;
|
|
49699
49726
|
}
|
|
@@ -56264,10 +56291,10 @@ function JSChartLocalization()
|
|
|
56264
56291
|
["Toolbar-"+JSCHART_BUTTON_ID.CLOSE_OVERLAY_INDEX, {CN:"关闭叠加指标", EN:"Delte overlay indicator", TC:"关闭叠加指标"}],
|
|
56265
56292
|
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_RECENT, {CN:"近期成本分布", EN:"Recent chip", TC:"近期成本分布"}],
|
|
56266
56293
|
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_LONG, {CN:"远期成本分布", EN:"Long chip", TC:"远期成本分布"}],
|
|
56267
|
-
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_DEFULT, {CN:"默认筹码分布", EN:"Default chip", TC:"默认筹码分布"}]
|
|
56294
|
+
["Toolbar-"+JSCHART_BUTTON_ID.CHIP_DEFULT, {CN:"默认筹码分布", EN:"Default chip", TC:"默认筹码分布"}],
|
|
56295
|
+
["Toolbar-"+JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE, {CN:"删除", EN:"Delete", TC:"删除"}],
|
|
56296
|
+
["Toolbar-"+JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING, {CN:"设置", EN:"Setting", TC:"设置"}]
|
|
56268
56297
|
|
|
56269
|
-
|
|
56270
|
-
|
|
56271
56298
|
]);
|
|
56272
56299
|
|
|
56273
56300
|
this.GetText=function(key,language)
|