hqchart 1.1.14731 → 1.1.14742
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 +175 -29
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +89 -1
- package/src/jscommon/umychart.js +395 -9
- package/src/jscommon/umychart.testdata.js +89 -1
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +396 -10
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +89 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +398 -11
package/lib/umychart.vue.js
CHANGED
|
@@ -1239,7 +1239,7 @@ if(option.CorssCursorInfo){var item=option.CorssCursorInfo;if(!isNaN(option.Cors
|
|
|
1239
1239
|
if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(item.BottomButton){var subItem=item.BottomButton;if(IFrameSplitOperator.IsBool(subItem.Enable))chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsBool(item.EnableKeyboard))chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;if(IFrameSplitOperator.IsBool(item.EnableDBClick))chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;if(IFrameSplitOperator.IsBool(item.IsShowCorssPoint))chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;}if(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;var subFrame=chart.Frame.SubFrame[i].Frame;if(IFrameSplitOperator.IsNumber(item.SplitCount))chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;if(item.StringFormat)chart.Frame.SubFrame[i].Frame.YSplitOperator.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsNumber(item.SplitType)){chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;}if(IFrameSplitOperator.IsNumber(item.FilterType))subFrame.YSplitOperator.FilterType=item.FilterType;if(item.IsShowLeftText==false){chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowLeftText=item.IsShowLeftText;//显示左边刻度
|
|
1240
1240
|
}if(item.IsShowRightText==false){chart.Frame.SubFrame[i].Frame.IsShowYText[1]=item.IsShowRightText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowRightText=item.IsShowRightText;//显示右边刻度
|
|
1241
1241
|
}if(item.Height>=0)chart.Frame.SubFrame[i].Height=item.Height;if(item.Custom)chart.Frame.SubFrame[i].Frame.YSplitOperator.Custom=item.Custom;if(IFrameSplitOperator.IsNumber(item.TitleHeight))chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;if(IFrameSplitOperator.IsNumber(item.BorderLine))chart.Frame.SubFrame[i].Frame.BorderLine=item.BorderLine;if(IFrameSplitOperator.IsBool(item.EnableRemoveZero))chart.Frame.SubFrame[i].Frame.YSplitOperator.EnableRemoveZero=item.EnableRemoveZero;if(IFrameSplitOperator.IsNumber(item.FloatPrecision))chart.Frame.SubFrame[i].Frame.YSplitOperator.FloatPrecision=item.FloatPrecision;if(IFrameSplitOperator.IsBool(item.IsShowXLine))chart.Frame.SubFrame[i].Frame.IsShowXLine=item.IsShowXLine;if(IFrameSplitOperator.IsBool(item.IsShowYLine))chart.Frame.SubFrame[i].Frame.IsShowYLine=item.IsShowYLine;if(IFrameSplitOperator.IsNumber(item.YTextBaseline))chart.Frame.SubFrame[i].Frame.YTextBaseline=item.YTextBaseline;if(IFrameSplitOperator.IsBool(item.IsShowIndexTitle))chart.Frame.SubFrame[i].Frame.IsShowIndexTitle=item.IsShowIndexTitle;if(item.TopSpace>=0)chart.Frame.SubFrame[i].Frame.ChartBorder.TopSpace=item.TopSpace*pixelRatio;if(item.BottomSpace>=0)chart.Frame.SubFrame[i].Frame.ChartBorder.BottomSpace=item.BottomSpace*pixelRatio;//是否显示关闭集合竞价按钮
|
|
1242
|
-
if(IFrameSplitOperator.
|
|
1242
|
+
if(IFrameSplitOperator.IsBool(item.CloseBeforeButton))chart.Frame.SubFrame[i].Frame.IsShowCloseButton=item.CloseBeforeButton;if(item.ClientBGColor)subFrame.ClientBGColor=item.ClientBGColor;if(!IFrameSplitOperator.IsUndefined(item.HorizontalReserved))subFrame.HorizontalReserved=item.HorizontalReserved;if(i==0){if(IFrameSplitOperator.IsNumber(item.RightTextFormat)){subFrame.YSplitOperator.RightTextFormat=item.RightTextFormat;if(item.RightTextFormat==2)subFrame.MultiTextFormat=1;}}}chart.UpdateXShowText();}if(option.ExtendChart){for(var i=0;i<option.ExtendChart.length;++i){var item=option.ExtendChart[i];chart.CreateExtendChart(item.Name,item);}}//叠加股票
|
|
1243
1243
|
if(option.Overlay){for(var i=0;i<option.Overlay.length;++i){var item=option.Overlay[i];chart.OverlaySymbol(item.Symbol,item);}}if(option.MinuteLine){if(option.MinuteLine.IsDrawAreaPrice==false)chart.ChartPaint[0].IsDrawArea=false;if(option.MinuteLine.IsShowLead==false)chart.IsShowLead=false;if(option.MinuteLine.IsShowAveragePrice==false){chart.ChartPaint[1].IsShow=false;chart.TitlePaint[0].IsShowAveragePrice=false;//标题栏均线也不显示
|
|
1244
1244
|
for(var i=0;i<chart.ExtendChartPaint.length;++i){var item=chart.ExtendChartPaint[i];if(item.ClassName=="MinuteTooltipPaint")item.IsShowAveragePrice=false;}}if(option.MinuteLine.SplitType>0)chart.Frame.SubFrame[0].Frame.YSplitOperator.SplitType=option.MinuteLine.SplitType;}if(option.MinuteVol){var item=option.MinuteVol;if(IFrameSplitOperator.IsNumber(item.BarColorType))chart.ChartPaint[2].BarColorType=item.BarColorType;}if(option.MinuteTitle){var item=option.MinuteTitle;var chartTitle=chart.TitlePaint[0];if(IFrameSplitOperator.IsBool(item.IsShowName))chart.TitlePaint[0].IsShowName=item.IsShowName;if(IFrameSplitOperator.IsBool(item.IsShowDate))chart.TitlePaint[0].IsShowDate=item.IsShowDate;if(IFrameSplitOperator.IsBool(item.IsShowTime))chart.TitlePaint[0].IsShowTime=item.IsShowTime;if(IFrameSplitOperator.IsBool(item.IsTitleShowLatestData))chart.IsTitleShowLatestData=item.IsTitleShowLatestData;if(IFrameSplitOperator.IsBool(item.IsAlwaysShowLastData))chart.TitlePaint[0].IsAlwaysShowLastData=item.IsAlwaysShowLastData;if(IFrameSplitOperator.IsNumber(item.ShowLastDataFormat))chart.TitlePaint[0].ShowLastDataFormat=item.ShowLastDataFormat;if(item.TimeFormat)chart.TitlePaint[0].TimeFormat=item.TimeFormat;if(item.ShowPostion||item.ShowPosition)//显示位置高级配置
|
|
1245
1245
|
{var subItem=item.ShowPostion;if(item.ShowPosition)subItem=item.ShowPosition;if(!chartTitle.ShowPositionConfig)chartTitle.ShowPositionConfig={Margin:{}};if(IFrameSplitOperator.IsNumber(subItem.Type))chartTitle.ShowPositionConfig.Type=subItem.Type;if(subItem.Margin){if(IFrameSplitOperator.IsNumber(subItem.Margin.Left))chartTitle.ShowPositionConfig.Margin.Left=subItem.Margin.Left;if(IFrameSplitOperator.IsNumber(subItem.Margin.Right))chartTitle.ShowPositionConfig.Margin.Right=subItem.Margin.Right;if(IFrameSplitOperator.IsNumber(subItem.Margin.Bottom))chartTitle.ShowPositionConfig.Margin.Bottom=subItem.Margin.Bottom;}}}if(IFrameSplitOperator.IsBool(option.CorssCursorTouchEnd))chart.CorssCursorTouchEnd=option.CorssCursorTouchEnd;if(IFrameSplitOperator.IsBool(option.IsClickShowCorssCursor))chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;if(option.IsShowBeforeData===true)chart.IsShowBeforeData=option.IsShowBeforeData;//分钟数据指标从第3个指标窗口设置
|
|
@@ -1646,6 +1646,14 @@ CMD_REPORT_COLUMN_DEL_ID:102,//报价列表 删除列
|
|
|
1646
1646
|
CMD_REPORT_COLUMN_MOVE_ID:103,//报价列表 列移动
|
|
1647
1647
|
CMD_REPORT_COLUMN_FILTER_ID:104,//报价列表 筛选
|
|
1648
1648
|
CMD_REPORT_CHANGE_COLUMN_ID:105//报价列表 切换列 Arg[Column, ]
|
|
1649
|
+
};var JSCHART_TRADE_STATUS_ID={START_ID:1000,//8:45~9:15
|
|
1650
|
+
BEFORE_OPEN_ID:2000,//9:15~9:25 是开盘集合竞价阶段
|
|
1651
|
+
TRADE_ID:3000,//9:25~14:57 是连续竞价阶段
|
|
1652
|
+
AFTER_CLOSE_ID:4000,//14:57~15:00 是收盘集合竞价阶段
|
|
1653
|
+
CLOSE_ID:5000,//15:00 后,首先发 CLOSE 标志
|
|
1654
|
+
ENDTR_ID:6000,//交易结束
|
|
1655
|
+
//上面状态个位数 是停牌状态 如3001 连续交易时间段停牌
|
|
1656
|
+
SUSP_ID:1//停牌
|
|
1649
1657
|
};function PhoneDBClick(){this.Start=[];this.Clear=function(){this.Start=[];};this.AddTouchStart=function(x,y,time){if(this.Start.length>0){var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>0&&spanTime<300){this.Start.push({X:x,Y:y,Time:time});}else{this.Start=[];}}else{this.Start.push({X:x,Y:y,Time:time});}};this.IsVaildDBClick=function(){if(this.Start.length==2)return true;return false;};this.AddTouchEnd=function(time){if(this.Start.length<=0)return;var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>=0&&spanTime<150){}else{this.Start=[];}};}/*
|
|
1650
1658
|
图形控件
|
|
1651
1659
|
*/function JSChartContainer(uielement,OffscreenElement,cacheElement){var _this6=this;this.ClassName='JSChartContainer';var _self=this;this.Frame;//框架画法
|
|
@@ -1726,7 +1734,8 @@ RightHorizontal:{//Show:true,
|
|
|
1726
1734
|
//Width:5
|
|
1727
1735
|
},//锁十字光标
|
|
1728
1736
|
LockCorssCursor:{X:{Enable:false}},//图形中的单元选中状态
|
|
1729
|
-
MapIndexChartCache:new _map2.default()
|
|
1737
|
+
MapIndexChartCache:new _map2.default(),//key 指标GUID
|
|
1738
|
+
TradeStatus:null//当前交易状态 { Date, Time:数据最后更新的时间, Status: }
|
|
1730
1739
|
};this.VerticalDrag;//通过X轴左右拖动数据(手势才有)
|
|
1731
1740
|
this.EnableVerticalDrag=false;//十字光标长留(手势才有)
|
|
1732
1741
|
this.ClickModel={IsShowCorssCursor:false,PreventHide:false,IsClickButton:false};//PreventHide 阻止隐藏十字光标
|
|
@@ -2278,7 +2287,7 @@ if(dest.WindowIndex>=fixedWindowCount&&this.WindowIndex[dest.WindowIndex]==null)
|
|
|
2278
2287
|
this.UpdataDataoffset();//更新数据偏移
|
|
2279
2288
|
this.UpdateFrameMaxMin();//调整坐标最大 最小值
|
|
2280
2289
|
this.Draw();}else{var subFrame=this.Frame.SubFrame[dest.WindowIndex];var overlayFrame=new OverlayIndexItem();var frame=this.CreateOverlayFrame();frame.Canvas=this.Canvas;frame.MainFrame=subFrame.Frame;frame.ChartBorder=subFrame.Frame.ChartBorder;frame.GlobalOption=this.GlobalOption;if(findOverlayItem)frame.IsShow=findOverlayItem.Frame.IsShow;//if (obj.IsShareY===true) frame.IsShareY=true;
|
|
2281
|
-
frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=frame.ChartBorder;frame.YSplitOperator.SplitCount=subFrame.Frame.YSplitOperator.SplitCount;frame.YSplitOperator.GetEventCallback=function(id){return _this16.GetEventCallback(id);};overlayFrame.Frame=frame;var scriptIndex;if(findItem){scriptIndex=this.CreateOverlayScript(findItem);scriptIndex.OverlayIndex={IsOverlay:true,Identify:overlayFrame.Identify,WindowIndex:dest.WindowIndex,Frame:overlayFrame};//叠加指标信息
|
|
2290
|
+
frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=frame.ChartBorder;frame.YSplitOperator.SplitCount=subFrame.Frame.YSplitOperator.SplitCount;frame.YSplitOperator.GetEventCallback=function(id){return _this16.GetEventCallback(id);};frame.YSplitOperator.HQChart=this;overlayFrame.Frame=frame;var scriptIndex;if(findItem){scriptIndex=this.CreateOverlayScript(findItem);scriptIndex.OverlayIndex={IsOverlay:true,Identify:overlayFrame.Identify,WindowIndex:dest.WindowIndex,Frame:overlayFrame};//叠加指标信息
|
|
2282
2291
|
}else if(findOverlayItem){scriptIndex=this.CreateOverlayScript(findOverlayItem.Script);scriptIndex.OverlayIndex={IsOverlay:true,Identify:overlayFrame.Identify,WindowIndex:dest.WindowIndex,Frame:overlayFrame};//叠加指标信息
|
|
2283
2292
|
}overlayFrame.Script=scriptIndex;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_OVERLAY_FRAME);if(event&&event.Callback){var sendData={OverlayFrame:overlayFrame,WindowIndex:dest.WindowIndex,SubFrame:subFrame};event.Callback(event,sendData,this);}subFrame.OverlayIndex.push(overlayFrame);var updateWindowIndex=dest.WindowIndex;if(option.Operator==0)//移动模式, 删除原来的
|
|
2284
2293
|
{if(findOverlayItem)this.DeleteOverlayIndex(findOverlayItem.Identify,src.WindowIndex);else if(findItem){this.DeleteMainIndex(findItem.Guid,src.WindowIndex);var find=this.FindScriptIndex(overlayFrame.Identify);if(find)updateWindowIndex=find.WindowIndex;}}var bindData=this.GetMainData();this.BindOverlayIndexData(overlayFrame,updateWindowIndex,bindData);this.UpdataDataoffset();//更新数据偏移
|
|
@@ -2334,7 +2343,7 @@ this.OnClickRightMenu=function(data){JSConsole.Chart.Log('[JSChartContainer::OnC
|
|
|
2334
2343
|
var aryArgs=data.Data.Args;//参数
|
|
2335
2344
|
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MENU_COMMAND);//回调通知外部
|
|
2336
2345
|
if(event&&event.Callback){var data={PreventDefault:false,CommandID:cmdID,Args:aryArgs,SrcData:data};event.Callback(event,data,this);if(data.PreventDefault)return;}this.ExecuteMenuCommand(cmdID,aryArgs);};this.PopupRightMenuV2=function(data,e){var _this18=this;if(!this.JSPopMenu)return;var x=data.X,y=data.Y;var frameID=data.FrameID;var menuData={Menu:this.GetRightMenuData(frameID,data),Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this18.OnClickRightMenu(data);};var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_RIGHT_MENU);if(event&&event.Callback){var sendData={MenuData:menuData,FrameID:frameID,Data:data};event.Callback(event,sendData,this);}this.PopupMenuByRClick(menuData,x,y);};this.OnCMDSelectedSummary=function(e,selectData){if(selectData)this.UpdateSelectRect(selectData.Start,selectData.End);this.HideSelectRect();if(this.DialogSelectRect&&e)this.DrawSelectRectDialog(e);};//指标窗口扩展图形
|
|
2337
|
-
this.CreateChartPaintExtend=function(chart,windowIndex){if(windowIndex<0)return false;var subFrame=this.Frame.SubFrame[windowIndex];if(!subFrame||!subFrame.Frame)return false;var frame=subFrame.Frame;chart.Canvas=this.Canvas;chart.ChartBorder=frame.ChartBorder;chart.ChartFrame=frame;this.ChartPaintEx.push(chart);return true;};//删除指标窗口扩展图形 option={ ChartID:图形ID, WindowIndex:窗口 }
|
|
2346
|
+
this.CreateChartPaintExtend=function(chart,windowIndex){if(windowIndex<0)return false;var subFrame=this.Frame.SubFrame[windowIndex];if(!subFrame||!subFrame.Frame)return false;var frame=subFrame.Frame;chart.Canvas=this.Canvas;chart.ChartBorder=frame.ChartBorder;chart.ChartFrame=frame;chart.HQChart=this;this.ChartPaintEx.push(chart);return true;};this.CreateChartPaintExtendV2=function(className,option,windowIndex){if(windowIndex<0)return false;var subFrame=this.Frame.SubFrame[windowIndex];if(!subFrame||!subFrame.Frame)return false;var chart=g_ChartPaintFactory.Create(className,option);if(!chart)return false;var frame=subFrame.Frame;chart.Canvas=this.Canvas;chart.ChartBorder=frame.ChartBorder;chart.ChartFrame=frame;chart.HQChart=this;this.ChartPaintEx.push(chart);return true;};//删除指标窗口扩展图形 option={ ChartID:图形ID, WindowIndex:窗口 }
|
|
2338
2347
|
this.DeleteChartPaintExtend=function(option,bCallDestroy){if(!option)return;if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx))return;if(IFrameSplitOperator.IsNumber(option.WindowIndex)){var windowIndex=option.WindowIndex;if(!this.Frame.SubFrame[windowIndex])return;var subFrame=this.Frame.SubFrame[windowIndex].Frame;if(!subFrame)return;var paint=[];//踢出当前窗口的指标画法
|
|
2339
2348
|
var deleteCount=0;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];var bFind=item.ChartFrame.Guid==subFrame.Guid||item.ChartFrame==subFrame;if(!bFind){paint.push(item);}else{++deleteCount;if(bCallDestroy===true){if(item&&item.OnDestroy)item.OnDestroy();//图形销毁
|
|
2340
2349
|
}}}if(deleteCount>0)this.ChartPaintEx=paint;}};this.ClearCurrnetDrawPicture=function(){this.CurrentChartDrawPicture=null;};this.CreateDragSelectRect=function(option){var chart=g_ExtendChartPaintFactory.Create("RectDragPaint",option);if(!chart)return null;chart.ChartBorder=this.Frame.ChartBorder;chart.ChartFrame=this.Frame;chart.HQChart=this;chart.SetOption(option);this.ChartDragSelectRect=chart;};this.ClearDragSelectRect=function(){if(!this.ChartDragSelectRect)return;this.ChartDragSelectRect.ClearPoint();};this.ShowDragSelectRect=function(ptStart,ptEnd){if(!this.ChartDragSelectRect)return;this.ChartDragSelectRect.SetFirstPoint(ptStart.X,ptStart.Y);this.ChartDragSelectRect.SetSecondPoint(ptEnd.X,ptEnd.Y);this.ChartDragSelectRect.Draw();};//切换窗口指标 option={ Window:{}, OverlayIndex:[], Frame:{ }}
|
|
@@ -2383,7 +2392,10 @@ event.Callback(event,sendData,this);aryMenu=sendData.AryMenu;command=sendData.Co
|
|
|
2383
2392
|
this.FullScreenSummary=function(){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var paint=this.GetRectSelectPaint();if(!paint)return false;var xPointcount=0;if(this.Frame.XPointCount)xPointcount=this.Frame.XPointCount;else xPointcount=this.Frame.SubFrame[0].Frame.XPointCount;if(!IFrameSplitOperator.IsPlusNumber(xPointcount))return false;var startIndex=kData.DataOffset;var endIndex=startIndex+xPointcount;this.UpdateSelectRect(startIndex,endIndex);var selectData=paint.GetSelectRectData();var border=this.Frame.SubFrame[0].Frame.GetBorder();var data={X:border.ChartWidth/2,Y:border.ChartHeight/2,SelectData:selectData,//区间选择的数据
|
|
2384
2393
|
RectSelectPaint:paint//区间选择背景
|
|
2385
2394
|
};var e={data:data};if(this.DialogSelectRect)this.DrawSelectRectDialog(e);return true;};//快速滑动
|
|
2386
|
-
this.FastSlideEvent=function(){if(!this.TouchDrag)return false;if(!this.FastSlideConfig)return false;var config=this.FastSlideConfig;if(!config.Enable)return false;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TOUCH_FAST_SLIDE);if(!event||!event.Callback)return false;var drag=this.TouchDrag;var time=Date.now();var spanTime=time-drag.StartTime;if(spanTime>config.MaxTime)return false;if(!drag.Click||!drag.LastMove)return false;var xStart=drag.Click.X;var xEnd=drag.LastMove.X;if(!IFrameSplitOperator.IsNumber(xStart)||!IFrameSplitOperator.IsNumber(xEnd))return false;var distance=xEnd-xStart;var speed=Math.abs(distance)/spanTime;JSConsole.Chart.Log('[JSChartContainer:FastSlideEvent] speed='+speed+', distance='+distance+', spanTime='+spanTime);if(Math.abs(distance)<config.MinDistance)return false;if(speed<config.MinSpeed)return false;var sendData={Speed:speed,Distance:distance,IsLeft:distance<0?true:false};event.Callback(event,sendData,this);return true;}
|
|
2395
|
+
this.FastSlideEvent=function(){if(!this.TouchDrag)return false;if(!this.FastSlideConfig)return false;var config=this.FastSlideConfig;if(!config.Enable)return false;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TOUCH_FAST_SLIDE);if(!event||!event.Callback)return false;var drag=this.TouchDrag;var time=Date.now();var spanTime=time-drag.StartTime;if(spanTime>config.MaxTime)return false;if(!drag.Click||!drag.LastMove)return false;var xStart=drag.Click.X;var xEnd=drag.LastMove.X;if(!IFrameSplitOperator.IsNumber(xStart)||!IFrameSplitOperator.IsNumber(xEnd))return false;var distance=xEnd-xStart;var speed=Math.abs(distance)/spanTime;JSConsole.Chart.Log('[JSChartContainer:FastSlideEvent] speed='+speed+', distance='+distance+', spanTime='+spanTime);if(Math.abs(distance)<config.MinDistance)return false;if(speed<config.MinSpeed)return false;var sendData={Speed:speed,Distance:distance,IsLeft:distance<0?true:false};event.Callback(event,sendData,this);return true;};//是否是额外的集合竞价部分
|
|
2396
|
+
this.IsCallAuctionFrame=function(frameID){return false;};//更新交易状态
|
|
2397
|
+
this.UpdateTradeStatusData=function(data,option){if(option){//是否清空
|
|
2398
|
+
if(option.IsClear===true)this.GlobalOption.TradeStatus=null;}if(!data)return false;if(IFrameSplitOperator.IsNumber(data.Date)&&IFrameSplitOperator.IsNumber(data.Time)&&IFrameSplitOperator.IsNumber(data.Status)){this.GlobalOption.TradeStatus={Date:data.Date,Time:data.Time,Status:data.Status};return true;}return false;};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
|
|
2387
2399
|
{if(this.JSChartContainer&&this.JSChartContainer.OnKeyDown)this.JSChartContainer.OnKeyDown(e);}function OnWheel(e)//上下滚动事件
|
|
2388
2400
|
{if(this.JSChartContainer&&this.JSChartContainer.OnWheel)this.JSChartContainer.OnWheel(e);}function ToFixed(number,precision){var b=1;if(isNaN(number))return number;if(number<0)b=-1;var multiplier=Math.pow(10,precision);var value=Math.round(Math.abs(number)*multiplier)/multiplier*b;if(/^(\d+(?:\.\d+)?)(e)([\-]?\d+)$/.test(value))var s=value.toFixed2(precision);else var s=value.toString();var rs=s.indexOf('.');if(rs<0&&precision>0){rs=s.length;s+='.';}while(s.length<=rs+precision){s+='0';}return s;}function IsRectOverlap(rt,rt2){if(Math.max(rt.Left,rt2.Left)<Math.min(rt.Right,rt2.Right)&&Math.max(rt.Top,rt2.Top)<Math.min(rt.Bottom,rt2.Bottom))return true;return false;}//获取文字高度和宽度
|
|
2389
2401
|
function GetTextSize(canvas,text,option){var data=canvas.measureText(text);var height=Math.abs(Math.abs(data.fontBoundingBoxAscent)+Math.abs(data.fontBoundingBoxDescent));var textBaseline=canvas.textBaseline;if(textBaseline=="top")height=data.fontBoundingBoxDescent;else if(textBaseline=="bottom")height=data.fontBoundingBoxAscent;var result={Width:data.width,Height:height};return result;}Number.prototype.toFixed2=Number.prototype.toFixed;//备份下老的
|
|
@@ -2453,7 +2465,11 @@ canvas.beginPath();canvas.rect(client.RightEx,border.TopEx,client.Right-client.R
|
|
|
2453
2465
|
{return this.UIElement.width-this.Right-this.TitleHeight-this.TopSpace;};this.GetWidthEx=function()//横屏去掉标题宽度 上下间距
|
|
2454
2466
|
{return this.UIElement.width-this.Left-this.Right-this.TitleHeight-this.TopSpace-this.BottomSpace;};this.GetLeftEx=function()//横屏
|
|
2455
2467
|
{return this.Left+this.BottomSpace;};this.GetRightTitle=function()//横屏
|
|
2456
|
-
{return this.UIElement.width-this.Right-this.TitleHeight;};this.GetTitleHeight=function(){return this.TitleHeight;}
|
|
2468
|
+
{return this.UIElement.width-this.Right-this.TitleHeight;};this.GetTitleHeight=function(){return this.TitleHeight;};//是否显示单日集合竞价 盘前
|
|
2469
|
+
this.IsShowBeforeOpen=function(){if(this.LeftExtendWidth<10)return false;return true;};//是否显示单日集合竞价 盘后
|
|
2470
|
+
this.IsShowAfterClose=function(){if(this.RightExtendWidth<10)return false;return true;};//是否显示多日集合竞价 盘前
|
|
2471
|
+
this.IsShowMultiDayBeforeOpen=function(){if(!this.MultiDayMinute)return false;if(this.MultiDayMinute.Count<=1||this.MultiDayMinute.Left<=0)return false;return true;};//是否显示多日集合竞价 盘后
|
|
2472
|
+
this.IsShowMultiDayAfterClose=function(){if(!this.MultiDayMinute)return false;if(this.MultiDayMinute.Count<=1||this.MultiDayMinute.Right<=0)return false;return true;};}//框架外部挂接
|
|
2457
2473
|
function ChartFrameFactory(){//[key:name, { Create:function(option) { return new class(); }} ]
|
|
2458
2474
|
this.DataMap=new _map2.default([["KLineFrame",{Create:function Create(option){return new KLineFrame();}}],//K线图
|
|
2459
2475
|
["KLineHScreenFrame",{Create:function Create(option){return new KLineHScreenFrame();}}]]);this.Create=function(name,option){if(!this.DataMap.has(name)){JSConsole.Chart.Warn('[ChartFrameFactory::Create] can\'t find class='+name+'.');return null;}var item=this.DataMap.get(name);return item.Create(option);};this.Add=function(name,option){var oldData=null;if(this.DataMap.has(name))oldData=this.DataMap.get(name);this.DataMap.set(name,{Create:option.Create});return oldData;};}var g_ChartFrameFactory=new ChartFrameFactory();function IChartFramePainting(){this.HorizontalInfo=new Array();//Y轴
|
|
@@ -3572,7 +3588,7 @@ ChartData.GetPeriodName=function(period){var mapName=new _map2.default([[0,'日
|
|
|
3572
3588
|
function ChartPaintFactory(){//[key:name, { Create:function(option) { return new class(); }} ]
|
|
3573
3589
|
this.DataMap=new _map2.default([["ChartKLine",{Create:function Create(option){return new ChartKLine();}}],//K线图
|
|
3574
3590
|
["ChartMinuteVolumBar",{Create:function Create(option){return new ChartMinuteVolumBar();}}],//分时成交量柱子
|
|
3575
|
-
["ChartMinutePriceLine",{Create:function Create(option){return new ChartMinutePriceLine();}}],["ChartMinuteBuySellBar",{Create:function Create(option){return new ChartMinuteBuySellBar();}}]]);this.Create=function(name,option){if(!this.DataMap.has(name)){JSConsole.Chart.Warn('[ChartPaintFactory::Create] can\'t find class='+name+'.');return null;}var item=this.DataMap.get(name);return item.Create(option);};this.Add=function(name,option){this.DataMap.set(name,{Create:option.Create});};}var g_ChartPaintFactory=new ChartPaintFactory();//图新画法接口类
|
|
3591
|
+
["ChartMinutePriceLine",{Create:function Create(option){return new ChartMinutePriceLine();}}],["ChartMinuteBuySellBar",{Create:function Create(option){return new ChartMinuteBuySellBar();}}],["ChartMinuteBarCallAuction",{Create:function Create(option){return new ChartMinuteBarCallAuction();}}]]);this.Create=function(name,option){if(!this.DataMap.has(name)){JSConsole.Chart.Warn('[ChartPaintFactory::Create] can\'t find class='+name+'.');return null;}var item=this.DataMap.get(name);return item.Create(option);};this.Add=function(name,option){this.DataMap.set(name,{Create:option.Create});};}var g_ChartPaintFactory=new ChartPaintFactory();//图新画法接口类
|
|
3576
3592
|
function IChartPainting(){this.Canvas;//画布
|
|
3577
3593
|
this.ChartBorder;//边框信息
|
|
3578
3594
|
this.ChartFrame;//框架画法
|
|
@@ -4184,7 +4200,9 @@ if(!bShowColorBar)this.Canvas.strokeStyle=this.GetMinuteBarColor(price,yPrice);t
|
|
|
4184
4200
|
this.GetMinuteBarColor=function(price,yPrice){if(this.BarColorType==1)//通达信模式
|
|
4185
4201
|
{if(price>yPrice)return this.UpColor;else if(price<yPrice)return this.DownColor;else return this.UnchangeColor;}else//东方财富模式
|
|
4186
4202
|
{return price>=yPrice?this.UpColor:this.DownColor;}};this.DrawBeforeOpen=function(){if(this.ChartBorder.LeftExtendWidth<10)return;if(!this.BeforeOpenData)return;this.DrawCallAuction(-1,this.BeforeOpenData,true);};this.DrawAfterClose=function(){if(this.ChartBorder.RightExtendWidth<10)return;if(!this.AfterCloseData)return;this.DrawCallAuction(-1,this.AfterCloseData,false);};this.DrawMultiDayBeforeOpen=function(){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Left<=0)return;if(!this.MultiDayBeforeOpenData)return;var offset=0,showDayCount=this.MultiDayBeforeOpenData.length;if(this.DayOffset){if(IFrameSplitOperator.IsNumber(this.DayOffset.Offset))offset=this.DayOffset.Offset;if(IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))showDayCount=this.DayOffset.ShowDayCount;}for(var i=offset,j=0;i<this.MultiDayBeforeOpenData.length&&j<showDayCount;++i,++j){var dayItem=this.MultiDayBeforeOpenData[i];this.DrawCallAuction(j,dayItem,true);}};this.DrawMultiDayAfterClose=function(){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Right<=0)return;if(!this.MultiDayAfterCloseData)return;var offset=0,showDayCount=this.MultiDayAfterCloseData.length;if(this.DayOffset){if(IFrameSplitOperator.IsNumber(this.DayOffset.Offset))offset=this.DayOffset.Offset;if(IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))showDayCount=this.DayOffset.ShowDayCount;}for(var i=offset,j=0;i<this.MultiDayAfterCloseData.length&&j<showDayCount;++i,++j){var dayItem=this.MultiDayAfterCloseData[i];this.DrawCallAuction(j,dayItem,false);}};this.DrawCallAuction=function(indexDay,callAutionData,isBeforeOpen){if(!callAutionData)return;callAutionData.Index=indexDay;var border=this.GetBorder();var isHScreen=this.ChartFrame.IsHScreen===true;var yPrice=this.YClose;//上一分钟的价格
|
|
4187
|
-
var yBottom=this.ChartFrame.GetYFromData(0);var unit=this.GetVolUnit();if(callAutionData.Ver==1.0){for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item||!IFrameSplitOperator.IsNumber(item.Vol[0]))continue;if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0]/unit);}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0]/unit);}this.Canvas.strokeStyle=item.Price>=yPrice?this.UpColor:this.DownColor;this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();if(item.Price)yPrice=item.Price;}}else if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){var range={Max:callAutionData.VolMax,Min:callAutionData.VolMin};for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item)continue;if(IFrameSplitOperator.IsPlusNumber(item.Vol[0])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0]/unit,false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[0]/unit);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0]/unit,false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();}if(IFrameSplitOperator.IsPlusNumber(item.Vol[1])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[1]/unit,false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[1]/unit);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[1]/unit,false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){y-=yBottom;y=border.RightEx-y;this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(border.RightEx,ToFixedPoint(x));}else{y-=yBottom;y=border.TopEx-y;this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),border.TopEx);}this.Canvas.stroke();}}}};this.GetBarColor=function(id){switch(id){case 0:return this.UnchangeColor;case 1:return this.UpColor;case 2:return this.DownColor;}if(this.BeforeVolColor&&Array.isArray(this.BeforeVolColor)){var index=id-3;if(index>=0&&index<this.BeforeVolColor.length)return this.BeforeVolColor[index];}return this.UnchangeColor;};this.GetMaxMin=function(){var unit=this.GetVolUnit();var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange===true){xPointCount=this.Data.Data.length;start=0;}var range={};range.Min=0;range.Max=null;for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var item=this.Data.Data[i];if(!item||!item.Vol)continue;var value=item.Vol/unit;if(range.Max==null||range.Max<value)range.Max=value;}if(this.ShareAfterVol==1){this.GetAfterCloseMaxMin(range);this.GetMultiDayAfterCloseMaxMin(range);}return range;};this.GetAfterCloseMaxMin=function(range){if(this.ChartBorder.RightExtendWidth<10)return;if(!this.AfterCloseData)return;var callAutionData=this.AfterCloseData;if(range.Max==null||range.Max<callAutionData.VolMax)range.Max=callAutionData.VolMax;};this.GetMultiDayAfterCloseMaxMin=function(range){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Right<=0)return;if(!this.MultiDayAfterCloseData)return;for(var i=0;i<this.MultiDayAfterCloseData.length;++i){var callAutionData=this.MultiDayAfterCloseData[i];if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){if(range.Max==null||range.Max<callAutionData.VolMax)range.Max=callAutionData.VolMax;}}};}
|
|
4203
|
+
var yBottom=this.ChartFrame.GetYFromData(0);var yBottom=border.BottomEx;if(isHScreen)yBottom=border.LeftEx;var unit=this.GetVolUnit();if(callAutionData.Ver==1.0){for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item||!IFrameSplitOperator.IsNumber(item.Vol[0]))continue;if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0]/unit);}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0]/unit);}this.Canvas.strokeStyle=item.Price>=yPrice?this.UpColor:this.DownColor;this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();if(item.Price)yPrice=item.Price;}}else if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){var range={Max:callAutionData.VolMax,Min:callAutionData.VolMin};for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item)continue;if(IFrameSplitOperator.IsPlusNumber(item.Vol[0])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0]/unit,false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[0]/unit);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0]/unit,false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();}if(IFrameSplitOperator.IsPlusNumber(item.Vol[1])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[1]/unit,false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[1]/unit);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[1]/unit,false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){y-=yBottom;y=border.RightEx-y;this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(border.RightEx,ToFixedPoint(x));}else{y-=yBottom;y=border.TopEx-y;this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),border.TopEx);}this.Canvas.stroke();}}}};this.GetBarColor=function(id){switch(id){case 0:return this.UnchangeColor;case 1:return this.UpColor;case 2:return this.DownColor;}if(this.BeforeVolColor&&Array.isArray(this.BeforeVolColor)){var index=id-3;if(index>=0&&index<this.BeforeVolColor.length)return this.BeforeVolColor[index];}return this.UnchangeColor;};this.GetMaxMin=function(){var unit=this.GetVolUnit();var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange===true){xPointCount=this.Data.Data.length;start=0;}var range={};range.Min=0;range.Max=null;for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var item=this.Data.Data[i];if(!item||!item.Vol)continue;var value=item.Vol/unit;if(range.Max==null||range.Max<value)range.Max=value;}if(this.ShareAfterVol==1){this.GetAfterCloseMaxMin(range);this.GetMultiDayAfterCloseMaxMin(range);}return range;};this.GetAfterCloseMaxMin=function(range){if(this.ChartBorder.RightExtendWidth<10)return;if(!this.AfterCloseData)return;var callAutionData=this.AfterCloseData;if(range.Max==null||range.Max<callAutionData.VolMax)range.Max=callAutionData.VolMax;};this.GetMultiDayAfterCloseMaxMin=function(range){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Right<=0)return;if(!this.MultiDayAfterCloseData)return;for(var i=0;i<this.MultiDayAfterCloseData.length;++i){var callAutionData=this.MultiDayAfterCloseData[i];if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){if(range.Max==null||range.Max<callAutionData.VolMax)range.Max=callAutionData.VolMax;}}};}//只画集合竞价柱子
|
|
4204
|
+
function ChartMinuteBarCallAuction(){this.newMethod=ChartMinuteVolumBar;//派生
|
|
4205
|
+
this.newMethod();delete this.newMethod;this.ClassName="ChartMinuteBarCallAuction";this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;this.DrawBeforeOpen();this.DrawMultiDayBeforeOpen();this.DrawAfterClose();this.DrawMultiDayAfterClose();};}function ChartErrorMessage(){this.newMethod=IChartPainting;//派生
|
|
4188
4206
|
this.newMethod();delete this.newMethod;this.ClassName='ChartErrorMessage';//类名
|
|
4189
4207
|
this.Draw=function(){if(!this.IsShow)return;if(this.NotSupportMessage)this.DrawNotSupportmessage();};}//线段 支持横屏
|
|
4190
4208
|
function ChartLine(){this.newMethod=IChartPainting;//派生
|
|
@@ -5567,13 +5585,139 @@ coordinate.Message[1]=IFrameSplitOperator.FormatValueString(value,floatPrecision
|
|
|
5567
5585
|
//this.Frame.HorizontalInfo[i].TextColor="rgb(100,0,200)";
|
|
5568
5586
|
//this.Frame.HorizontalInfo[i].LineColor="rgb(220,220,220)";
|
|
5569
5587
|
}}this.FilterIgnoreYValue();this.CustomCoordinate();if(this.SplitType!=1)this.Frame.HorizontalInfo=this.Filter(this.Frame.HorizontalInfo,splitData.Max>0&&splitData.Min<0,this.FilterType);this.RightFrameSplitY();this.MainOverlayFrameSplitY();//主图Y轴绑定叠加Y轴坐标
|
|
5570
|
-
this.
|
|
5588
|
+
this.CallAcutionSplitYV2(splitData,this.Frame.HorizontalInfo.slice());if(this.EnableRemoveZero)this.RemoveZero(this.Frame.HorizontalInfo);this.DynamicMessageText();this.Frame.HorizontalMax=splitData.Max;this.Frame.HorizontalMin=splitData.Min;if(this.EnableZoomUpDown==true&&!this.FixedYMaxMin)this.FixedYMaxMin={Max:splitData.Max,Min:splitData.Min};this.ReservedHeight(splitData);//预留高度
|
|
5571
5589
|
if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE);if(event&&event.Callback){var data={ID:this.Frame.Identify,Frame:this.Frame};if(this.OverlayIdentify)data.OverlayIdentify=this.OverlayIdentify;event.Callback(event,data,this);}}};this.FormatValueString=function(value){var text;if(this.StringFormat==1)//手机端格式 如果有万,亿单位了 去掉小数
|
|
5572
5590
|
{var floatPrecision=this.FloatPrecision;if(IFrameSplitOperator.IsNumber(value)&&Math.abs(value)>1000)floatPrecision=0;text=IFrameSplitOperator.FormatValueString(value,floatPrecision,this.LanguageID);}else if(this.StringFormat==2)//原始数据输出
|
|
5573
5591
|
{text=''+value.toFixed(this.FloatPrecision);}else{var absValue=Math.abs(value);if(absValue<0.0000000001){text=0;}else if(absValue<this.FLOATPRECISION_RANGE[this.FLOATPRECISION_RANGE.length-1]){text=value.toExponential(2).toString();}else{var floatPrecision=this.GetFloatPrecision(absValue,this.FloatPrecision);//数据比小数位数还小, 调整小数位数
|
|
5574
|
-
text=IFrameSplitOperator.FormatValueString(value,floatPrecision,this.LanguageID);}}return text;};this.FilterIgnoreYValue=function(){if(!this.IgnoreYValue||this.IgnoreYValue.length<=0)return;var setValue=new _set2.default(this.IgnoreYValue);this.Frame.HorizontalInfo=this.Frame.HorizontalInfo.filter(function(item){return!setValue.has(item.Value);});};this.DynamicMessageText=function(){if(this.SplitType==2){for(var i=0;i<this.Frame.HorizontalInfo.length;++i){var item=this.Frame.HorizontalInfo[i];if(item.Message[0])item.Message[0]+='%';if(item.Message[1])item.Message[1]+='%';}}};this.
|
|
5592
|
+
text=IFrameSplitOperator.FormatValueString(value,floatPrecision,this.LanguageID);}}return text;};this.FilterIgnoreYValue=function(){if(!this.IgnoreYValue||this.IgnoreYValue.length<=0)return;var setValue=new _set2.default(this.IgnoreYValue);this.Frame.HorizontalInfo=this.Frame.HorizontalInfo.filter(function(item){return!setValue.has(item.Value);});};this.DynamicMessageText=function(){if(this.SplitType==2){for(var i=0;i<this.Frame.HorizontalInfo.length;++i){var item=this.Frame.HorizontalInfo[i];if(item.Message[0])item.Message[0]+='%';if(item.Message[1])item.Message[1]+='%';}}};this.CallAcutionSplitYV2=function(splitData,aryHorizontalInfo){if(!this.IsCallAuctionFrame())return;if(!IFrameSplitOperator.IsNonEmptyArray(aryHorizontalInfo))return;var aryCallAcution=this.GetCallAcutionSplitYV2(splitData,aryHorizontalInfo);if(!aryCallAcution)return;for(var i=0;i<this.Frame.HorizontalInfo.length;++i)//把显示的数据迁移到 Message[2] Message[3]
|
|
5575
5593
|
{var item=this.Frame.HorizontalInfo[i];if(aryCallAcution.IsBeforeData){item.Message[2]=item.Message[0];item.Message[0]=null;}if(aryCallAcution.IsAfterData&&(this.ShareAfterVol==0||this.ShareAfterVol==2)){item.Message[3]=item.Message[1];item.Message[1]=null;}}//集合竞价的坐标插入最后
|
|
5576
|
-
for(var i=0;i<aryCallAcution.HorizontalInfo.length;++i){var item=aryCallAcution.HorizontalInfo[i];this.Frame.HorizontalInfo.push(item);}};this.
|
|
5594
|
+
for(var i=0;i<aryCallAcution.HorizontalInfo.length;++i){var item=aryCallAcution.HorizontalInfo[i];this.Frame.HorizontalInfo.push(item);}};this.GetCallAcutionSplitYV2=function(splitData,arySource){if(!this.IsCallAuctionFrame())return null;var bBeforeData=this.IsBeforeData==true&&this.BeforeOpenData&&(this.BeforeOpenData.Ver==2.0||this.BeforeOpenData.Ver==3.0);var bAfterData=this.IsAfterData==true&&this.AfterCloseData&&(this.AfterCloseData.Ver==2.0||this.AfterCloseData.Ver==3.0);var bottom=this.Frame.ChartBorder.GetBottomEx();var height=this.Frame.ChartBorder.GetHeightEx();var bHScreen=this.Frame.IsHScreen;if(this.Frame.IsHScreen){var border=this.Frame.GetBorder();var width=border.RightEx-border.LeftEx;}if(bBeforeData||bAfterData){var aryHorizontalInfo=[];for(var i=0;i<arySource.length;++i){var hItem=arySource[i];if(!hItem||!IFrameSplitOperator.IsNumber(hItem.Value))continue;var y=this.Frame.GetYFromData(hItem.Value);var item=new CoordinateInfo();item.Value=hItem.Value;item.LineType=8;if(bBeforeData){if(bHScreen){var value=(y-border.LeftEx)/width*(this.BeforeOpenData.VolMax-this.BeforeOpenData.VolMin)+this.BeforeOpenData.VolMin;}else{var value=(bottom-y)/height*(this.BeforeOpenData.VolMax-this.BeforeOpenData.VolMin)+this.BeforeOpenData.VolMin;}item.Message[0]=this.FormatValueString(value);}if(bAfterData&&(this.ShareAfterVol==0||this.ShareAfterVol==2)){if(bHScreen){var value=(y-border.LeftEx)/width*(this.AfterCloseData.VolMax-this.AfterCloseData.VolMin)+this.AfterCloseData.VolMin;}else{var value=(bottom-y)/height*(this.AfterCloseData.VolMax-this.AfterCloseData.VolMin)+this.AfterCloseData.VolMin;}item.Message[1]=this.FormatValueString(value);}aryHorizontalInfo.push(item);}return{HorizontalInfo:aryHorizontalInfo,IsBeforeData:bBeforeData,IsAfterData:bAfterData};}var bMultiDayBeforeData=false,bMultiDayAfterData=false;var beforeDayData=null,afterDayData=null;if(this.MultiDayBeforeOpenData&&IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData)){bMultiDayBeforeData=true;var firstDayData=this.MultiDayBeforeOpenData[0];if(firstDayData.Ver==2.0||firstDayData.Ver==3.0)beforeDayData=firstDayData;}if(this.MultiDayAfterCloseData&&IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData)){bMultiDayAfterData=true;var firstDayData=this.MultiDayAfterCloseData[0];if(firstDayData.Ver==2.0||firstDayData.Ver==3.0)afterDayData=firstDayData;}if(bMultiDayBeforeData||bMultiDayAfterData){var aryHorizontalInfo=[];for(var i=0;i<arySource.length;++i){var hItem=arySource[i];if(!hItem||!IFrameSplitOperator.IsNumber(hItem.Value))continue;var y=this.Frame.GetYFromData(hItem.Value);var item=new CoordinateInfo();item.Value=hItem.Value;item.LineType=9;var isVaild=false;if(beforeDayData){if(bHScreen){var value=(y-border.LeftEx)/width*(beforeDayData.VolMax-beforeDayData.VolMin)+beforeDayData.VolMin;}else{var value=(bottom-y)/height*(beforeDayData.VolMax-beforeDayData.VolMin)+beforeDayData.VolMin;}item.Message[0]=this.FormatValueString(value);isVaild=true;}if(afterDayData&&(this.ShareAfterVol==0||this.ShareAfterVol==2)){if(bHScreen){var value=(y-border.LeftEx)/width*(afterDayData.VolMax-afterDayData.VolMin)+afterDayData.VolMin;}else{var value=(bottom-y)/height*(afterDayData.VolMax-afterDayData.VolMin)+afterDayData.VolMin;}item.Message[1]=this.FormatValueString(value);isVaild=true;}if(isVaild)aryHorizontalInfo.push(item);}if(IFrameSplitOperator.IsNonEmptyArray(aryHorizontalInfo))return{HorizontalInfo:aryHorizontalInfo,IsBeforeData:bMultiDayBeforeData,IsAfterData:bMultiDayAfterData};}return null;};/* 废弃 使用 CallAcutionSplitYV2
|
|
5595
|
+
this.CallAcutionSplitY=function(count,splitData)
|
|
5596
|
+
{
|
|
5597
|
+
if (!this.IsCallAuctionFrame()) return;
|
|
5598
|
+
|
|
5599
|
+
var aryCallAcution=this.GetCallAcutionSplitY(count,splitData);
|
|
5600
|
+
if (!aryCallAcution) return;
|
|
5601
|
+
|
|
5602
|
+
for(var i=0; i<this.Frame.HorizontalInfo.length; ++i) //把显示的数据迁移到 Message[2] Message[3]
|
|
5603
|
+
{
|
|
5604
|
+
var item=this.Frame.HorizontalInfo[i];
|
|
5605
|
+
if (aryCallAcution.IsBeforeData)
|
|
5606
|
+
{
|
|
5607
|
+
item.Message[2]=item.Message[0];
|
|
5608
|
+
item.Message[0]=null;
|
|
5609
|
+
}
|
|
5610
|
+
|
|
5611
|
+
if (aryCallAcution.IsAfterData && (this.ShareAfterVol==0 || this.ShareAfterVol==2) )
|
|
5612
|
+
{
|
|
5613
|
+
item.Message[3]=item.Message[1];
|
|
5614
|
+
item.Message[1]=null;
|
|
5615
|
+
}
|
|
5616
|
+
}
|
|
5617
|
+
|
|
5618
|
+
//集合竞价的坐标插入最后
|
|
5619
|
+
for(var i=0; i<aryCallAcution.HorizontalInfo.length; ++i)
|
|
5620
|
+
{
|
|
5621
|
+
var item=aryCallAcution.HorizontalInfo[i];
|
|
5622
|
+
this.Frame.HorizontalInfo.push(item);
|
|
5623
|
+
}
|
|
5624
|
+
}
|
|
5625
|
+
*/this.IsCallAuctionFrame=function(){if(this.Frame.Identify==1)return true;if(!this.HQChart||!this.HQChart.IsCallAuctionFrame)return false;return this.HQChart.IsCallAuctionFrame(this.Frame.Identify);};/* 废弃 使用 GetCallAcutionSplitYV2
|
|
5626
|
+
this.GetCallAcutionSplitY=function(count,splitData)
|
|
5627
|
+
{
|
|
5628
|
+
if (!this.IsCallAuctionFrame()) return null;
|
|
5629
|
+
|
|
5630
|
+
var isBeforeData=(this.IsBeforeData==true && this.BeforeOpenData && (this.BeforeOpenData.Ver==2.0 || this.BeforeOpenData.Ver==3.0));
|
|
5631
|
+
var isAfterData=(this.IsAfterData==true && this.AfterCloseData && (this.AfterCloseData.Ver==2.0 || this.AfterCloseData.Ver==3.0));
|
|
5632
|
+
|
|
5633
|
+
if (isBeforeData || isAfterData)
|
|
5634
|
+
{
|
|
5635
|
+
var intervalY=(splitData.Max-splitData.Min)/(count-1);
|
|
5636
|
+
if (isBeforeData) var intervalLeft=(this.BeforeOpenData.VolMax-this.BeforeOpenData.VolMin)/(count-1);
|
|
5637
|
+
if (isAfterData) var intervalRight=(this.AfterCloseData.VolMax-this.AfterCloseData.VolMin)/(count-1);
|
|
5638
|
+
|
|
5639
|
+
var aryHorizontalInfo=[];
|
|
5640
|
+
for(var i=0;i<count;++i)
|
|
5641
|
+
{
|
|
5642
|
+
var item=new CoordinateInfo();
|
|
5643
|
+
var yValue=intervalY*i+splitData.Min;
|
|
5644
|
+
item.Value=yValue;
|
|
5645
|
+
item.LineType=8;
|
|
5646
|
+
if (isBeforeData )
|
|
5647
|
+
{
|
|
5648
|
+
var leftValue=intervalLeft*i;
|
|
5649
|
+
item.Message[0]=this.FormatValueString(leftValue);
|
|
5650
|
+
}
|
|
5651
|
+
|
|
5652
|
+
if (isAfterData && (this.ShareAfterVol==0 || this.ShareAfterVol==2) )
|
|
5653
|
+
{
|
|
5654
|
+
var rightValue=intervalRight*i;
|
|
5655
|
+
item.Message[1]=this.FormatValueString(rightValue);
|
|
5656
|
+
}
|
|
5657
|
+
aryHorizontalInfo.push(item);
|
|
5658
|
+
}
|
|
5659
|
+
return { HorizontalInfo:aryHorizontalInfo, IsBeforeData:isBeforeData, IsAfterData:isAfterData };
|
|
5660
|
+
}
|
|
5661
|
+
|
|
5662
|
+
var isMultiDayBeforeData=false;
|
|
5663
|
+
var intervalLeft=null;
|
|
5664
|
+
if (this.MultiDayBeforeOpenData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))
|
|
5665
|
+
{
|
|
5666
|
+
isMultiDayBeforeData=true;
|
|
5667
|
+
var firstDayData=this.MultiDayBeforeOpenData[0];
|
|
5668
|
+
if (firstDayData.Ver==2.0 || firstDayData.Ver==3.0)
|
|
5669
|
+
{
|
|
5670
|
+
var intervalLeft=(firstDayData.VolMax-firstDayData.VolMin)/(count-1);
|
|
5671
|
+
}
|
|
5672
|
+
}
|
|
5673
|
+
|
|
5674
|
+
var isMultiDayAfterData=false;
|
|
5675
|
+
var intervalRight=null;
|
|
5676
|
+
if (this.MultiDayAfterCloseData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))
|
|
5677
|
+
{
|
|
5678
|
+
isMultiDayAfterData=true;
|
|
5679
|
+
var firstDayData=this.MultiDayAfterCloseData[0];
|
|
5680
|
+
if (firstDayData.Ver==2.0 || firstDayData.Ver==3.0)
|
|
5681
|
+
{
|
|
5682
|
+
var intervalRight=(firstDayData.VolMax-firstDayData.VolMin)/(count-1);
|
|
5683
|
+
}
|
|
5684
|
+
}
|
|
5685
|
+
|
|
5686
|
+
if (isMultiDayBeforeData || isMultiDayAfterData)
|
|
5687
|
+
{
|
|
5688
|
+
var intervalY=(splitData.Max-splitData.Min)/(count-1);
|
|
5689
|
+
var aryHorizontalInfo=[];
|
|
5690
|
+
for(var i=0;i<count;++i)
|
|
5691
|
+
{
|
|
5692
|
+
var item=new CoordinateInfo();
|
|
5693
|
+
var yValue=intervalY*i+splitData.Min;
|
|
5694
|
+
item.Value=yValue;
|
|
5695
|
+
item.LineType=9;
|
|
5696
|
+
var isVaild=false;
|
|
5697
|
+
if (intervalLeft!=null)
|
|
5698
|
+
{
|
|
5699
|
+
var leftValue=intervalLeft*i;
|
|
5700
|
+
item.Message[0]=this.FormatValueString(leftValue);
|
|
5701
|
+
isVaild=true;
|
|
5702
|
+
}
|
|
5703
|
+
|
|
5704
|
+
if (intervalRight!=null && (this.ShareAfterVol==0 || this.ShareAfterVol==2))
|
|
5705
|
+
{
|
|
5706
|
+
var rightValue=intervalRight*i;
|
|
5707
|
+
item.Message[1]=this.FormatValueString(rightValue);
|
|
5708
|
+
isVaild=true;
|
|
5709
|
+
}
|
|
5710
|
+
|
|
5711
|
+
if (isVaild) aryHorizontalInfo.push(item);
|
|
5712
|
+
}
|
|
5713
|
+
|
|
5714
|
+
if (IFrameSplitOperator.IsNonEmptyArray(aryHorizontalInfo))
|
|
5715
|
+
return { HorizontalInfo:aryHorizontalInfo, IsBeforeData:isMultiDayBeforeData, IsAfterData:isMultiDayAfterData };
|
|
5716
|
+
}
|
|
5717
|
+
|
|
5718
|
+
return null;
|
|
5719
|
+
}
|
|
5720
|
+
*/this.RightFrameSplitY=function(){if(!this.Frame.RightFrame)return;var rightFrame=this.Frame.RightFrame;if(rightFrame.YSplitOperator)rightFrame.YSplitOperator.Operator();for(var i=0;i<this.Frame.HorizontalInfo.length;++i){var item=this.Frame.HorizontalInfo[i];var y=this.Frame.GetYFromData(item.Value);var yValue=rightFrame.GetYData(y);item.Message[1]=IFrameSplitOperator.FormatValueString(yValue,this.FloatPrecision,this.LanguageID);}};this.MainOverlayFrameSplitY=function(){if(!this.Frame.GetMainOverlayFrame)return;var aryOverlayFrame=this.Frame.GetMainOverlayFrame();if(!aryOverlayFrame)return;if(aryOverlayFrame[1]){var rightFrame=aryOverlayFrame[1];var ySplitOper=rightFrame.YSplitOperator;if(ySplitOper)ySplitOper.Operator();for(var i=0;i<this.Frame.HorizontalInfo.length;++i){var item=this.Frame.HorizontalInfo[i];var y=this.Frame.GetYFromData(item.Value);var yValue=rightFrame.GetYData(y);if(ySplitOper&&ySplitOper.FormatValueString)item.Message[1]=ySplitOper.FormatValueString(yValue);else item.Message[1]=this.FormatValueString(yValue);}}if(aryOverlayFrame[0]){var leftFrame=aryOverlayFrame[0];var ySplitOper=leftFrame.YSplitOperator;if(ySplitOper)ySplitOper.Operator();for(var i=0;i<this.Frame.HorizontalInfo.length;++i){var item=this.Frame.HorizontalInfo[i];var y=this.Frame.GetYFromData(item.Value);var yValue=leftFrame.GetYData(y);if(ySplitOper&&ySplitOper.FormatValueString)item.Message[0]=ySplitOper.FormatValueString(yValue);else item.Message[0]=this.FormatValueString(yValue);}}};this.CustomCoordinate=function(){this.Frame.CustomHorizontalInfo=[];var data=this.InvokeCustomYCoordinateCallback();if(data&&data.PreventDefault==true)return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Custom))return;for(var i=0;i<this.Custom.length;++i){var item=this.Custom[i];if(item.Type==JSCHART_CUSTOM_YCOORDINATE_ID.PAGE_LAST_INDEX_VALUE_ID)//当前屏最后一个数据
|
|
5577
5721
|
{this.CustomLatestIndexDataCoordinate(item);}else if(item.Type==JSCHART_CUSTOM_YCOORDINATE_ID.FIXED_VALUE_ID)//自定义刻度
|
|
5578
5722
|
{this.CustomFixedCoordinate(item);}else if(item.Type==JSCHART_CUSTOM_YCOORDINATE_ID.PAGE_LAST_OVERLAY_INDEX_VALUE_ID)//叠加指标当前屏最后一个数据
|
|
5579
5723
|
{this.CustomLatestOverlayIndexDataCoordinate(item);}}};this.CustomFixedCoordinate=function(option)//固定坐标刻度
|
|
@@ -5819,7 +5963,7 @@ this.newMethod();delete this.newMethod;this.Symbol;this.FrameID;this.Frame;this.
|
|
|
5819
5963
|
this.PercentageText;//百分比
|
|
5820
5964
|
this.RValue;//右边值
|
|
5821
5965
|
this.RText;this.RComplexText;//{ Space:2 间距, Text:[ {Color:, Text: }] } 支持单行多颜色
|
|
5822
|
-
this.Point;this.ClientPos=-1;this.ExtendChartPaint;this.RExtendText=[];this.BeforeOpenData;this.AfterCloseData;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.ShareAfterVol=0;//1=主图共享 2=盘前共享
|
|
5966
|
+
this.Point;this.ClientPos=-1;this.HQChart;this.ExtendChartPaint;this.RExtendText=[];this.BeforeOpenData;this.AfterCloseData;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.ShareAfterVol=0;//1=主图共享 2=盘前共享
|
|
5823
5967
|
this.PriceFormatType=0;//主窗口格式 0=默认 1=科学计数
|
|
5824
5968
|
this.DataFormatType=0;//副图指标格式 0=默认 1=科学计数
|
|
5825
5969
|
this.GetEventCallback;//盘前集合竞价
|
|
@@ -5831,7 +5975,7 @@ if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator
|
|
|
5831
5975
|
if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.Operator=function(){this.RText=null;this.RComplexText=null;this.RExtendText=[];if(IFrameSplitOperator.IsString(this.RValue))this.RText=this.RValue;if(!this.Value)return false;this.PercentageText=null;var defaultfloatPrecision=2;//价格小数位数
|
|
5832
5976
|
if(this.FrameID==0)//第1个窗口显示原始价格
|
|
5833
5977
|
{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.YClose>0)this.PercentageText=((this.Value-this.YClose)*100/this.YClose).toFixed(2);//走势图右边坐标显示百分比
|
|
5834
|
-
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);}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;};//深度图刻度
|
|
5978
|
+
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;};//深度图刻度
|
|
5835
5979
|
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;//派生
|
|
5836
5980
|
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
|
|
5837
5981
|
this.LanguageID=0;this.KItem=null;//缓存当前的K线
|
|
@@ -6059,7 +6203,7 @@ if(IFrameSplitOperator.IsNumber(item.Vol[0])&&this.CallAuctionShowTitle.has("MTi
|
|
|
6059
6203
|
if(IFrameSplitOperator.IsNumber(item.Vol[1])&&this.CallAuctionShowTitle.has("MTitle-AC-NotMatchVol")){var text=g_JSChartLocalization.GetText('MTitle-AC-NotMatchVol',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(item.Vol[1]/unit,2);aryText.push({Text:text,Color:this.VolColor});}if(item.ExtendData&&IFrameSplitOperator.IsNonEmptyArray(item.ExtendData.Amount)){var aryAmount=item.ExtendData.Amount;if(IFrameSplitOperator.IsNumber(aryAmount[0])&&this.CallAuctionShowTitle.has("MTitle-AC-Amount"))//匹配量金额
|
|
6060
6204
|
{var text=g_JSChartLocalization.GetText('MTitle-AC-Amount',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(aryAmount[0],2);aryText.push({Text:text,Color:this.AmountColor});}if(IFrameSplitOperator.IsNumber(aryAmount[1])&&this.CallAuctionShowTitle.has("MTitle-AC-NotMatchAmount"))//未匹配量金额
|
|
6061
6205
|
{var text=g_JSChartLocalization.GetText('MTitle-AC-NotMatchAmount',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(aryAmount[1],2);aryText.push({Text:text,Color:this.AmountColor});}}}return{AryText:aryText};};this.DrawCallAuction=function()//集合竞价标题
|
|
6062
|
-
{var isHScreen=this.Frame.IsHScreen===true;var border=this.Frame.GetBorder();var pixelRatio=GetDevicePixelRatio();var left=this.GetLeft(isHScreen);var right=this.GetRight(isHScreen);var bottom=this.GetBottom(isHScreen);var bDraw=true;if(isHScreen){if(this.Frame.ChartBorder.Right<5*pixelRatio)return;var xText=bottom;var yText=left;this.Canvas.translate(xText,yText);this.Canvas.rotate(90*Math.PI/180);left=bottom=0;}else{if(this.Frame.ChartBorder.Top<5*pixelRatio)bDraw=false;}this.Canvas.textAlign="left";this.Canvas.textBaseline="bottom";this.Canvas.font=this.Font;var position={Left:left,Bottom:bottom,MaxRight:right,IsHScreen:isHScreen};var auctionData=this.GetCurrentAuctionData();var titleData=this.FormatCallAuctionTitle(auctionData);if(bDraw&&titleData&&IFrameSplitOperator.IsNonEmptyArray(titleData.AryText)){for(var i=0;i<titleData.AryText.length;++i){var item=titleData.AryText[i];if(!this.DrawText(item.Text,item.Color,position))break;}}this.OnDrawCallAuctionEventCallback(auctionData);};this.OnDrawCallAuctionEventCallback=function(drawData){if(this.OnDrawEvent&&this.OnDrawEvent.Callback){var data={Draw:drawData,Name:this.ClassName};this.OnDrawEvent.Callback(this.OnDrawEvent,data,this);}if(this.OnMouseMoveEvent&&this.OnMouseMoveEvent.Callback){var data={Draw:drawData,Name:this.ClassName};this.OnMouseMoveEvent.Callback(this.OnDrawEvent,data,this);}};this.DrawNone=function(){this.OnDrawEventCallback(null);if(this.
|
|
6206
|
+
{var isHScreen=this.Frame.IsHScreen===true;var border=this.Frame.GetBorder();var pixelRatio=GetDevicePixelRatio();var left=this.GetLeft(isHScreen);var right=this.GetRight(isHScreen);var bottom=this.GetBottom(isHScreen);var bDraw=true;if(isHScreen){if(this.Frame.ChartBorder.Right<5*pixelRatio)return;var xText=bottom;var yText=left;this.Canvas.translate(xText,yText);this.Canvas.rotate(90*Math.PI/180);left=bottom=0;}else{if(this.Frame.ChartBorder.Top<5*pixelRatio)bDraw=false;}this.Canvas.textAlign="left";this.Canvas.textBaseline="bottom";this.Canvas.font=this.Font;var position={Left:left,Bottom:bottom,MaxRight:right,IsHScreen:isHScreen};var auctionData=this.GetCurrentAuctionData();var titleData=this.FormatCallAuctionTitle(auctionData);if(bDraw&&titleData&&IFrameSplitOperator.IsNonEmptyArray(titleData.AryText)){for(var i=0;i<titleData.AryText.length;++i){var item=titleData.AryText[i];if(!this.DrawText(item.Text,item.Color,position))break;}}this.OnDrawCallAuctionEventCallback(auctionData);};this.OnDrawCallAuctionEventCallback=function(drawData){if(this.OnDrawEvent&&this.OnDrawEvent.Callback){var data={Draw:drawData,Name:this.ClassName};this.OnDrawEvent.Callback(this.OnDrawEvent,data,this);}if(this.OnMouseMoveEvent&&this.OnMouseMoveEvent.Callback){var data={Draw:drawData,Name:this.ClassName};this.OnMouseMoveEvent.Callback(this.OnDrawEvent,data,this);}};this.DrawNone=function(){this.OnDrawEventCallback(null);var bShowLastData=this.IsAlwaysShowLastData;if(this.DrawStatus&&this.DrawStatus.IsTitleShowLatestData){var status=this.DrawStatus;if(!IFrameSplitOperator.IsNumber(status.FrameID)||status.FrameID<0)bShowLastData=true;else if(status.CorssCursorTouchEnd&&status.IsOnTouch==false)bShowLastData=true;}if(bShowLastData){this.Canvas.save();this.DrawLastDataItem();this.Canvas.restore();}};this.Draw=function(){this.LastShowData=null;this.GlobalOption=this.Frame.GlobalOption;if(!this.IsShow){//隐藏标题 并且没有回调事件
|
|
6063
6207
|
var bEvent=this.OnDrawEvent&&this.OnDrawEvent.Callback||this.OnMouseMoveEvent&&this.OnMouseMoveEvent.Callback;if(!bEvent)return;}if(this.PointInfo&&(this.PointInfo.ClientPos==2||this.PointInfo.ClientPos==3||this.PointInfo.ClientPos>=200&&this.PointInfo.ClientPos<=299||this.PointInfo.ClientPos>=300&&this.PointInfo.ClientPos<=399)){//集合竞价区域
|
|
6064
6208
|
this.Canvas.save();this.DrawCallAuction();this.Canvas.restore();return;}if(!this.Data||!this.Data.Data||this.Data.Data.length<=0){this.DrawNone();return;}if(this.CursorIndex==null&&!(this.GlobalOption&&this.GlobalOption.IsDisplayLatest)){this.DrawNone();return;}this.Canvas.font=this.Font;this.SpaceWidth=this.Canvas.measureText('0').width;var isShowLastData=false;if(this.DrawStatus&&this.DrawStatus.IsTitleShowLatestData){var status=this.DrawStatus;if(!IFrameSplitOperator.IsNumber(status.FrameID)||status.FrameID<0)isShowLastData=true;else if(status.CorssCursorTouchEnd&&status.IsOnTouch==false)isShowLastData=true;}else if(this.GlobalOption&&this.GlobalOption.IsDisplayLatest){isShowLastData=true;}//十字光标锁定状态 禁用显示最后一个数据
|
|
6065
6209
|
if(this.GlobalOption&&this.GlobalOption.LockCorssCursor&&this.GlobalOption.LockCorssCursor.X.Enable)isShowLastData=false;var isLastOne=false;if(isShowLastData){var item=null;var lastItem=this.GetLatestKLineData(true);if(lastItem&&lastItem.Type==0)item=lastItem.Data;isLastOne=true;}else{//var index=Math.abs(this.CursorIndex-0.5);
|
|
@@ -6126,7 +6270,8 @@ if(this.GlobalOption&&this.GlobalOption.LockCorssCursor&&this.GlobalOption.LockC
|
|
|
6126
6270
|
*/return;}var left=this.Frame.ChartBorder.GetLeft()+this.MerginLeft;var bottom=this.Frame.ChartBorder.GetTop()+this.Frame.ChartBorder.TitleHeight/2;//上下居中显示
|
|
6127
6271
|
var right=this.Frame.ChartBorder.GetRight();var toolbarInfo={Width:0,YCenter:bottom};this.DrawToolbar(toolbarInfo,moveonPoint,mouseStatus);left+=toolbarInfo.Width;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.font=this.Font;var pixelRatio=GetDevicePixelRatio();if(this.Title&&this.IsShowIndexName&&this.IsShowMainIndexTitle){if(this.IsDrawTitleBG){var rtButton={Left:left,YCenter:bottom,Width:0};this.DrawNameButton(rtButton,moveonPoint,mouseStatus);this.Buttons.push({ID:JSCHART_BUTTON_ID.INDEX_NAME_BUTTON,Rect:rtButton,FrameID:this.Frame.Identify,Type:2});//Type 0=主图按钮 1=附图按钮 2=主图指标名字按钮
|
|
6128
6272
|
this.NameButtonHeight=rtButton.Height;if(this.IsSelectedChart(this.Identify))this.DrawSelectedLine(left,bottom,textWidth);this.TitleRect=rtButton;left+=rtButton.Width+3*pixelRatio;left+=this.TitleSpace;}else{var textWidth=this.Canvas.measureText(this.Title).width+2;this.Canvas.fillStyle=this.TitleColor;this.Canvas.fillText(this.Title,left,bottom,textWidth);if(this.IsSelectedChart(this.Identify))this.DrawSelectedLine(left,bottom,textWidth);left+=textWidth;left+=this.TitleSpace;}}if(this.ArgumentsText&&this.IsShowIndexName&&this.IsShowMainIndexTitle){var textWidth=this.Canvas.measureText(this.ArgumentsText).width+2;this.Canvas.fillStyle=this.TitleColor;this.Canvas.fillText(this.ArgumentsText,left,bottom,textWidth);left+=textWidth;left+=this.TitleSpace;}var isShowLastData=this.IsShowLastData();var lockRect=this.Frame.GetLockRect();if(lockRect)//指标上锁区域不显示动态标题
|
|
6129
|
-
{var index=Math.abs(this.CursorIndex);if(this.IsKLineFrame)index=this.CursorIndex;var x=this.Frame.GetXFromIndex(index.toFixed(0));if(x>=lockRect.Left)return;if(isShowLastData)return;}var rtText={Left:left,Right:left};if(this.IsMinuteFrame&&this.PointInfo&&(this.PointInfo.ClientPos==2||this.PointInfo.ClientPos==3||this.PointInfo.ClientPos>=200&&this.PointInfo.ClientPos<=299||this.PointInfo.ClientPos>=300&&this.PointInfo.ClientPos<=399)){var result={PreventDefault:false};
|
|
6273
|
+
{var index=Math.abs(this.CursorIndex);if(this.IsKLineFrame)index=this.CursorIndex;var x=this.Frame.GetXFromIndex(index.toFixed(0));if(x>=lockRect.Left)return;if(isShowLastData)return;}var rtText={Left:left,Right:left};if(this.IsMinuteFrame&&this.PointInfo&&(this.PointInfo.ClientPos==2||this.PointInfo.ClientPos==3||this.PointInfo.ClientPos>=200&&this.PointInfo.ClientPos<=299||this.PointInfo.ClientPos>=300&&this.PointInfo.ClientPos<=399)){var result={PreventDefault:false};var yRight=right;if(this.Frame.ToolbarCacheSize&&this.Frame.ToolbarCacheSize.RToolbar)yRight=this.Frame.ToolbarCacheSize.RToolbar.Left-2;//右侧按钮宽度要去掉
|
|
6274
|
+
this.DrawMainCallAuction({Left:left,Right:yRight,Bottom:bottom},rtText,result);if(result.PreventDefault===false)this.DrawMainIndexTitle({Left:left,Right:yRight,Bottom:bottom},isShowLastData,rtText);if(IFrameSplitOperator.IsNumber(rtText.Bottom))bottom=rtText.Bottom;}else{var yRight=right;if(this.Frame.ToolbarCacheSize&&this.Frame.ToolbarCacheSize.RToolbar)yRight=this.Frame.ToolbarCacheSize.RToolbar.Left-2;//右侧按钮宽度要去掉
|
|
6130
6275
|
this.DrawMainIndexTitle({Left:left,Right:yRight,Bottom:bottom},isShowLastData,rtText);if(IFrameSplitOperator.IsNumber(rtText.Bottom))bottom=rtText.Bottom;}left=rtText.Left;if(this.Explain)//说明信息
|
|
6131
6276
|
{this.Canvas.fillStyle=this.TitleColor;var text="说明:"+this.Explain;var textWidth=this.Canvas.measureText(text).width+2;if(left+textWidth<right){this.Canvas.fillText(text,left,bottom,textWidth);left+=textWidth;}}if(this.ColorIndex&&this.IsShowColorIndexTitle){this.Canvas.fillStyle=g_JSChartResource.Title.ColorIndexColor;var tradeName=this.ColorIndex.Name+this.ColorIndex.Param;var textWidth=this.Canvas.measureText(tradeName).width+2;//后空2个像素
|
|
6132
6277
|
this.Canvas.fillText(tradeName,left,bottom,textWidth);left+=textWidth;}if(this.TradeIndex&&this.IsShowTradeIndexTitle){this.Canvas.fillStyle=g_JSChartResource.Title.TradeIndexColor;var tradeName=this.TradeIndex.Name+this.TradeIndex.Param;var textWidth=this.Canvas.measureText(tradeName).width+2;//后空2个像素
|
|
@@ -7431,7 +7576,7 @@ this.OnWheel_ZoomUpDownFrameY=function(e,x,y){if(!this.EnableYDrag.Wheel)return
|
|
|
7431
7576
|
if(!this.Frame.OnZoomUpDownFrameY(dragY,yMove))return false;this.Frame.SetSizeChage(true);this.Draw();return true;};//创建
|
|
7432
7577
|
//windowCount 窗口个数
|
|
7433
7578
|
this.Create=function(windowCount,option){var _this20=this;this.UIElement.JSChartContainer=this;//创建十字光标
|
|
7434
|
-
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_XStringFormat");this.ChartCorssCursor.StringFormatX.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.StringFormatX.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;this.ChartCorssCursor.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.OnChangeStatusCallback=function(data,obj){_this20.OnChangeCorssCursorStatus(data,obj);};//创建等待提示
|
|
7579
|
+
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_XStringFormat");this.ChartCorssCursor.StringFormatX.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.StringFormatX.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;this.ChartCorssCursor.StringFormatY.HQChart=this;this.ChartCorssCursor.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.OnChangeStatusCallback=function(data,obj){_this20.OnChangeCorssCursorStatus(data,obj);};//创建等待提示
|
|
7435
7580
|
this.ChartSplashPaint=new ChartSplashPaint();this.ChartSplashPaint.Canvas=this.Canvas;this.ChartSplashPaint.HQChart=this;//创建框架容器
|
|
7436
7581
|
this.Frame=new HQTradeFrame();this.Frame.ChartBorder=new ChartBorder();this.Frame.ChartBorder.UIElement=this.UIElement;this.Frame.ChartBorder.Top=30;this.Frame.ChartBorder.Left=5;this.Frame.ChartBorder.Bottom=20;this.Frame.Canvas=this.Canvas;this.Frame.GetExtendChartRightWidth=function(){return _this20.GetExtendChartRightWidth();};this.Frame.GetExtendChartByClassName=function(name){return _this20.GetExtendChartByClassName(name);};this.Frame.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartCorssCursor.Frame=this.Frame;//十字光标绑定框架
|
|
7437
7582
|
this.ChartSplashPaint.Frame=this.Frame;this.CreateChildWindow(windowCount);this.CreateMainKLine();this.CreateExtendChart("RectSelectPaint",option?option.SelectRect:null);//区间统计
|
|
@@ -8640,7 +8785,7 @@ if(this.SelectedChart.EnableSelected){selectedChart=this.PtInChart(x,y);}var dbC
|
|
|
8640
8785
|
if(!selectedChart&&this.EnableZoomIndexWindow){var frameId=this.Frame.PtInFrame(x,y);JSConsole.Chart.Log("[MinuteChartContainer::OnDoubleClick] frameId",frameId);if(frameId>=this.Frame.ZoomStartWindowIndex){if(this.ZoomIndexWindow(frameId,{X:x,Y:y})){this.Frame.SetSizeChage(true);bDraw=true;}}}if(bDraw)this.Draw();};this.GetDataItem=function(pointInfo){if(!pointInfo)return null;if(!IFrameSplitOperator.IsNumber(pointInfo.Index))return null;if(!this.SourceData||!this.SourceData.Data)return null;var data=this.SourceData;var clientPos=pointInfo.ClientPos;if(clientPos==2||clientPos==3||clientPos>=200&&clientPos<=299||clientPos>=300&&clientPos<=399){if(!this.ChartCorssCursor||!this.ChartCorssCursor.CallAcutionXOperator)return null;var isHScreen=this.Frame.IsHScreen===true;var callAcutionXOper=this.ChartCorssCursor.CallAcutionXOperator;callAcutionXOper.Value=isHScreen?pointInfo.Point.Y:pointInfo.Point.X;callAcutionXOper.Point={X:pointInfo.Point.X,Y:pointInfo.Point.Y};callAcutionXOper.ClientPos=clientPos;if(clientPos==2){if(!this.BeforeOpenData)return null;}else if(clientPos==3){if(!this.AfterCloseData)return null;}else if(clientPos>=200&&clientPos<=299){if(!this.MultiDayBeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))return;}else if(clientPos>=300&&tclientPos<=399){if(!this.MultiDayAfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return;}if(callAcutionXOper.Operator()){var item=callAcutionXOper.Item;return{Type:clientPos,Item:item,Index:callAcutionXOper.DataIndex};}return null;}var index=parseInt(pointInfo.Index.toFixed(0));var dataIndex=index+data.DataOffset;if(dataIndex>=data.Data.length)return null;var item=data.Data[dataIndex];return{Type:clientPos,Item:item,Index:dataIndex};};this.UpdatePointByCursorIndex=function(){this.LastPoint.X=this.Frame.GetXFromIndex(this.CursorIndex);var index=this.CursorIndex;index=parseInt(index.toFixed(0));var data=this.Frame.SourceData;if(data.DataOffset+index>=data.Data.length){return;}var item=data.Data[data.DataOffset+index];var close=null;if(item.Before)close=item.Before.Close;else close=item.Close;this.LastPoint.Y=this.Frame.GetYFromData(close);};//创建
|
|
8641
8786
|
//windowCount 窗口个数
|
|
8642
8787
|
this.Create=function(windowCount,option){var _this29=this;this.UIElement.JSChartContainer=this;//创建十字光标
|
|
8643
|
-
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.PtInClient=function(x,y){return _this29.PtInClient(x,y);};this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");this.ChartCorssCursor.StringFormatX.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY.ShareAfterVol=this.ShareAfterVol;this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();this.ChartCorssCursor.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.ChartCorssCursor.OnChangeStatusCallback=function(data,obj){_this29.OnChangeCorssCursorStatus(data,obj);};//创建等待提示
|
|
8788
|
+
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.PtInClient=function(x,y){return _this29.PtInClient(x,y);};this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");this.ChartCorssCursor.StringFormatX.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY.ShareAfterVol=this.ShareAfterVol;this.ChartCorssCursor.StringFormatY.HQChart=this;this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();this.ChartCorssCursor.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.ChartCorssCursor.OnChangeStatusCallback=function(data,obj){_this29.OnChangeCorssCursorStatus(data,obj);};//创建等待提示
|
|
8644
8789
|
this.ChartSplashPaint=new ChartSplashPaint();this.ChartSplashPaint.Canvas=this.Canvas;this.ChartSplashPaint.HQChart=this;//创建框架容器
|
|
8645
8790
|
this.Frame=new HQTradeFrame();this.Frame.ChartBorder=new ChartBorder();this.Frame.ChartBorder.UIElement=this.UIElement;this.Frame.ChartBorder.Top=25;this.Frame.ChartBorder.TitleHeight=0;this.Frame.ChartBorder.Left=50;this.Frame.ChartBorder.Bottom=20;this.Frame.Canvas=this.Canvas;this.Frame.GetExtendChartRightWidth=function(){return _this29.GetExtendChartRightWidth();};this.Frame.GetEventCallback=function(id){return _this29.GetEventCallback(id);};this.Frame.ZoomStartWindowIndex=2;this.ChartCorssCursor.Frame=this.Frame;//十字光标绑定框架
|
|
8646
8791
|
this.ChartSplashPaint.Frame=this.Frame;this.CreateChildWindow(windowCount);this.CreateMainKLine();this.CreateExtendChart("RectSelectPaint",option?option.SelectRect:null);//区间统计
|
|
@@ -8648,8 +8793,8 @@ if(this.EnableIndexChartDrag)this.CreateExtendChart("DragMovePaint");this.Create
|
|
|
8648
8793
|
for(var i=0;i<this.Frame.SubFrame.length;++i){var titlePaint=new DynamicChartTitlePainting();if(i==0||i==1)titlePaint.IsShowMainIndexTitle=false;titlePaint.Frame=this.Frame.SubFrame[i].Frame;titlePaint.Canvas=this.Canvas;titlePaint.LanguageID=this.LanguageID;titlePaint.GetEventCallback=function(id){return _this29.GetEventCallback(id);};titlePaint.SelectedChart=this.SelectedChart;titlePaint.MainTitlePaint=this.TitlePaint[0];titlePaint.HQChart=this;this.TitlePaint.push(titlePaint);}this.ChartCorssCursor.StringFormatX.Frame=this.Frame.SubFrame[0].Frame;this.ChartCorssCursor.StringFormatY.Frame=this.Frame;if(this.ChartCorssCursor.CallAcutionXOperator)this.ChartCorssCursor.CallAcutionXOperator.Frame=this.Frame.SubFrame[0].Frame;var bRegisterKeydown=true;var bRegisterWheel=true;if(option&&option.Listener){var item=option.Listener;if(item.KeyDown===false){bRegisterKeydown=false;JSConsole.Chart.Log('[MinuteChartContainer::Create] not register keydown event.');}if(item.Wheel===false){bRegisterWheel=false;JSConsole.Chart.Log('[MinuteChartContainer::Create] not register wheel event.');}}if(bRegisterKeydown)this.UIElement.addEventListener("keydown",function(e){_this29.OnKeyDown(e);},true);//键盘消息
|
|
8649
8794
|
if(bRegisterWheel)this.UIElement.addEventListener("wheel",function(e){_this29.OnWheel(e);},true);//上下滚动消息
|
|
8650
8795
|
};//创建子窗口
|
|
8651
|
-
this.CreateChildWindow=function(windowCount){var _this30=this;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_FRAME);for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;frame.GlobalOption=this.GlobalOption;if(i<2)frame.ChartBorder.TitleHeight=0;frame.XPointCount=243;frame.HQChart=this;frame.GetEventCallback=function(id){return _this30.GetEventCallback(id);};if(i>=2){}var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];if(i==0){frame.YSplitOperator=new FrameSplitMinutePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.GetEventCallback=function(id){return _this30.GetEventCallback(id);};frame.YSplitOperator.DayOffset=this.DayOffset;frame.YSplitOperator.GlobalOption=this.GlobalOption;frame.YSplitOperator.HQChart=this;}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this30.GetEventCallback(id);};if(i==1)frame.YSplitOperator.ShareAfterVol=this.ShareAfterVol;}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this30.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;frame.XSplitOperator.Operator();for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();frame.FrameData.SubFrameItem=subFrame;subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;if(event&&event.Callback){var sendData={SubFrame:this.Frame.SubFrame[i],WindowIndex:i};event.Callback(event,sendData,this);}}};this.CreateSubFrameItem=function(id,mainFrame){var _this31=this;var border=new ChartBorder();border.UIElement=this.UIElement;if(mainFrame&&mainFrame.ChartBorder&&mainFrame.ChartBorder.MultiDayMinute){var item=mainFrame.ChartBorder.MultiDayMinute;border.MultiDayMinute.Count=item.Count;border.MultiDayMinute.Left=item.Left;border.MultiDayMinute.Right=item.Right;}var frame=null;if(this.ClassName=="MinuteChartHScreenContainer")frame=new MinuteHScreenFrame();else frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=id;//窗口序号
|
|
8652
|
-
frame.XPointCount=243;frame.GlobalOption=this.GlobalOption;frame.HQChart=this;frame.GetEventCallback=function(id){return _this31.GetEventCallback(id);};var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.ShowText=false;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this31.GetEventCallback(id);};frame.YSplitOperator.GetEventCallback=function(id){return _this31.GetEventCallback(id);};frame.XSplitOperator.Symbol=this.Symbol;if(this.DayCount>1){var dayCount=this.DayCount;if(IFrameSplitOperator.IsNonEmptyArray(this.DayData))dayCount=this.DayData.length;frame.XSplitOperator.DayCount=dayCount;frame.XSplitOperator.DayData=this.DayData;frame.DayCount=dayCount;}//K线数据绑定
|
|
8796
|
+
this.CreateChildWindow=function(windowCount){var _this30=this;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_FRAME);for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;frame.GlobalOption=this.GlobalOption;if(i<2)frame.ChartBorder.TitleHeight=0;frame.XPointCount=243;frame.HQChart=this;frame.GetEventCallback=function(id){return _this30.GetEventCallback(id);};if(i>=2){}var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];if(i==0){frame.YSplitOperator=new FrameSplitMinutePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.GetEventCallback=function(id){return _this30.GetEventCallback(id);};frame.YSplitOperator.DayOffset=this.DayOffset;frame.YSplitOperator.GlobalOption=this.GlobalOption;frame.YSplitOperator.HQChart=this;}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this30.GetEventCallback(id);};frame.YSplitOperator.HQChart=this;if(i==1)frame.YSplitOperator.ShareAfterVol=this.ShareAfterVol;}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this30.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;frame.XSplitOperator.Operator();for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();frame.FrameData.SubFrameItem=subFrame;subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;if(event&&event.Callback){var sendData={SubFrame:this.Frame.SubFrame[i],WindowIndex:i};event.Callback(event,sendData,this);}}};this.CreateSubFrameItem=function(id,mainFrame){var _this31=this;var border=new ChartBorder();border.UIElement=this.UIElement;if(mainFrame&&mainFrame.ChartBorder&&mainFrame.ChartBorder.MultiDayMinute){var item=mainFrame.ChartBorder.MultiDayMinute;border.MultiDayMinute.Count=item.Count;border.MultiDayMinute.Left=item.Left;border.MultiDayMinute.Right=item.Right;}var frame=null;if(this.ClassName=="MinuteChartHScreenContainer")frame=new MinuteHScreenFrame();else frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=id;//窗口序号
|
|
8797
|
+
frame.XPointCount=243;frame.GlobalOption=this.GlobalOption;frame.HQChart=this;frame.GetEventCallback=function(id){return _this31.GetEventCallback(id);};var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.YSplitOperator.HQChart=this;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.ShowText=false;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this31.GetEventCallback(id);};frame.YSplitOperator.GetEventCallback=function(id){return _this31.GetEventCallback(id);};frame.XSplitOperator.Symbol=this.Symbol;if(this.DayCount>1){var dayCount=this.DayCount;if(IFrameSplitOperator.IsNonEmptyArray(this.DayData))dayCount=this.DayData.length;frame.XSplitOperator.DayCount=dayCount;frame.XSplitOperator.DayData=this.DayData;frame.DayCount=dayCount;}//K线数据绑定
|
|
8653
8798
|
var xPointCouont=this.Frame.SubFrame[0].Frame.XPointCount;frame.XPointCount=xPointCouont;frame.Data=this.ChartPaint[0].Data;for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();frame.FrameData.SubFrameItem=subFrame;subFrame.Frame=frame;subFrame.Height=10;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_FRAME);if(event&&event.Callback){var sendData={SubFrame:subFrame,WindowIndex:id};event.Callback(event,sendData,this);}return subFrame;};this.AddNewSubFrame=function(option){var _this32=this;var mainFrame=this.Frame.SubFrame[0].Frame;var index=this.Frame.SubFrame.length;var subFrame=this.CreateSubFrameItem(index,mainFrame);var pixelRatio=GetDevicePixelRatio();subFrame.Frame.ChartBorder.TitleHeight*=pixelRatio;this.Frame.SubFrame[index]=subFrame;var titlePaint=new DynamicChartTitlePainting();titlePaint.Frame=this.Frame.SubFrame[index].Frame;titlePaint.Canvas=this.Canvas;titlePaint.LanguageID=this.LanguageID;titlePaint.GetEventCallback=function(id){return _this32.GetEventCallback(id);};titlePaint.MainTitlePaint=this.TitlePaint[0];titlePaint.HQChart=this;this.TitlePaint[index+1]=titlePaint;this.SetSubFrameOption(subFrame,option);this.UpdateSubFrameDataWidth(subFrame.Frame);//最后一个显示X轴坐标
|
|
8654
8799
|
for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i].Frame;if(i==this.Frame.SubFrame.length-1)item.XSplitOperator.ShowText=true;else item.XSplitOperator.ShowText=false;}this.UpdataDataoffset();//更新数据偏移
|
|
8655
8800
|
this.Frame.SetSizeChage(true);if(this.UpdateXShowText)this.UpdateXShowText();this.ResetFrameXYSplit();this.UpdateFrameMaxMin();//调整坐标最大 最小值
|
|
@@ -8799,10 +8944,10 @@ this.UpdateLatestMinuteDataV2(minuteData);this.UpdateMinuteUI(data.stock[0],{Fun
|
|
|
8799
8944
|
if(this.IsBeforeData)this.BeforeOpenData=beforeOpenData;if(this.IsAfterData)this.AfterCloseData=afterCloseData;var bFirstData=this.DataStatus.LatestDay==false;//首条单日数据
|
|
8800
8945
|
if(IFrameSplitOperator.IsNonEmptyArray(data.stock)&&data.stock[0]){this.DataStatus.LatestDate=data.stock[0].date;//保存下最后一天的日期
|
|
8801
8946
|
this.RecvBuySellData(data.stock[0].BuySellData);}this.DataStatus.LatestDay=true;if(this.DayCount>1)//多日走势图
|
|
8802
|
-
{this.UpdateCallCationData(beforeOpenData,afterCloseData);this.UpdateLineColorData(aryColorData,data.stock[0].date);this.UpdateLatestMinuteData(aryMinuteData,data.stock[0].date,data.stock[0]);this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"});this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
|
|
8947
|
+
{this.UpdateCallCationData(beforeOpenData,afterCloseData);this.UpdateLineColorData(aryColorData,data.stock[0].date);this.UpdateLatestMinuteData(aryMinuteData,data.stock[0].date,data.stock[0]);this.UpdateTradeStatusData(data.TradeStatus);this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"});this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
|
|
8803
8948
|
this.BindAllOverlayIndexData(this.SourceData);this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();return;}if(this.IsOnTouch==true)//正在操作中不更新数据
|
|
8804
8949
|
{if(this.SourceData&&IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){this.AutoUpdate();return;}}//原始数据
|
|
8805
|
-
var sourceData=new ChartData();sourceData.Data=aryMinuteData;sourceData.UpdateTime=updateTime;this.SourceData=sourceData;this.ColorLineData=aryColorData;this.UpdateMinuteUI(data.stock[0],{FunctionName:"RecvMinuteData",Day:{IsFirstData:bFirstData}});if(data.AutoUpdate===false)//不执行自动更新
|
|
8950
|
+
var sourceData=new ChartData();sourceData.Data=aryMinuteData;sourceData.UpdateTime=updateTime;this.SourceData=sourceData;this.ColorLineData=aryColorData;this.UpdateTradeStatusData(data.TradeStatus);this.UpdateMinuteUI(data.stock[0],{FunctionName:"RecvMinuteData",Day:{IsFirstData:bFirstData}});if(data.AutoUpdate===false)//不执行自动更新
|
|
8806
8951
|
{}else{this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();}};//更新单日分时图
|
|
8807
8952
|
this.UpdateMinuteUI=function(stockData,eventData){this.TradeDate=stockData.date;this.Frame.SetDayCount(1);//单日数据
|
|
8808
8953
|
this.Symbol=stockData.symbol;this.Name=stockData.name;this.SetCallCationDataBorder({Left:this.IsBeforeData,Right:this.IsAfterData,MultiDay:{Left:false,Right:false}});if(this.ShareAfterVol==2)//盘前, 盘后成交量公用坐标
|
|
@@ -8926,13 +9071,13 @@ bindData=new ChartData();bindData.Data=minuteData.GetMinuteAvPrice();this.ChartP
|
|
|
8926
9071
|
this.ChartPaint[1].Data=null;else if(MARKET_SUFFIX_NAME.IsShowAvPrice&&!MARKET_SUFFIX_NAME.IsShowAvPrice(upperSymbol))//外部控制是否显示均线
|
|
8927
9072
|
this.ChartPaint[1].Data=null;firstFrame.YSplitOperator.AverageData=bindData;//均线
|
|
8928
9073
|
firstFrame.YSplitOperator.OverlayChartPaint=this.OverlayChartPaint;firstFrame.YSplitOperator.LimitPrice=this.LimitPrice;firstFrame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;firstFrame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;firstFrame.YSplitOperator.DayCount=this.DayCount;if(extendData){firstFrame.YSplitOperator.High=extendData.High;firstFrame.YSplitOperator.Low=extendData.Low;}else{firstFrame.YSplitOperator.High=null;firstFrame.YSplitOperator.Low=null;}//成交量
|
|
8929
|
-
this.ChartPaint[2].Data=minuteData;this.ChartPaint[2].YClose=yClose;this.ChartPaint[2].Symbol=this.Symbol;this.ChartPaint[2].BeforeOpenData=this.BeforeOpenData;this.ChartPaint[2].AfterCloseData=this.AfterCloseData;this.ChartPaint[2].MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartPaint[2].MultiDayAfterCloseData=multiAfterCloseData;for(var i in this.Frame.SubFrame){var item=this.Frame.SubFrame[i];item.Frame.YSplitOperator.BeforeOpenData=this.BeforeOpenData;item.Frame.YSplitOperator.IsBeforeData=this.IsBeforeData;item.Frame.YSplitOperator.AfterCloseData=this.AfterCloseData;item.Frame.YSplitOperator.IsAfterData=this.IsAfterData;item.Frame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;item.Frame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;}if(MARKET_SUFFIX_NAME.IsShowMinutePostionLine(upperSymbol))this.BindOverlayPositionData(minuteData,yClose);//期货,期权 持仓量
|
|
9074
|
+
this.ChartPaint[2].Data=minuteData;this.ChartPaint[2].YClose=yClose;this.ChartPaint[2].Symbol=this.Symbol;this.ChartPaint[2].BeforeOpenData=this.BeforeOpenData;this.ChartPaint[2].AfterCloseData=this.AfterCloseData;this.ChartPaint[2].MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartPaint[2].MultiDayAfterCloseData=multiAfterCloseData;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];if(item.ClassName=="ChartMinuteBarCallAuction"){item.YClose=yClose;item.Symbol=this.Symbol;item.BeforeOpenData=this.BeforeOpenData;item.AfterCloseData=this.AfterCloseData;item.MultiDayBeforeOpenData=multiBeforeOpenData;item.MultiDayAfterCloseData=multiAfterCloseData;}}for(var i in this.Frame.SubFrame){var item=this.Frame.SubFrame[i];item.Frame.YSplitOperator.BeforeOpenData=this.BeforeOpenData;item.Frame.YSplitOperator.IsBeforeData=this.IsBeforeData;item.Frame.YSplitOperator.AfterCloseData=this.AfterCloseData;item.Frame.YSplitOperator.IsAfterData=this.IsAfterData;item.Frame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;item.Frame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;}if(MARKET_SUFFIX_NAME.IsShowMinutePostionLine(upperSymbol))this.BindOverlayPositionData(minuteData,yClose);//期货,期权 持仓量
|
|
8930
9075
|
else this.ClearBindOverlayPositionData();this.TitlePaint[0].Data=this.SourceData;//动态标题
|
|
8931
9076
|
this.TitlePaint[0].Symbol=this.Symbol;this.TitlePaint[0].Name=this.Name;this.TitlePaint[0].YClose=yClose;this.TitlePaint[0].BeforeOpenData=this.BeforeOpenData;this.TitlePaint[0].AfterCloseData=this.AfterCloseData;this.TitlePaint[0].MultiDayBeforeOpenData=this.IsShowMultiDayBeforeData?this.MultiDayBeforeOpenData:null;this.TitlePaint[0].MultiDayAfterCloseData=this.IsShowMultiDayAfterData?this.MultiDayAfterCloseData:null;if(this.TitlePaint[0].CallAcutionXOperator){this.TitlePaint[0].CallAcutionXOperator.BeforeOpenData=this.BeforeOpenData;this.TitlePaint[0].CallAcutionXOperator.AfterCloseData=this.AfterCloseData;this.TitlePaint[0].CallAcutionXOperator.MultiDayBeforeOpenData=multiBeforeOpenData;this.TitlePaint[0].CallAcutionXOperator.MultiDayAfterCloseData=multiAfterCloseData;this.TitlePaint[0].CallAcutionXOperator.DayOffset=this.DayOffset;}if(this.ChartCorssCursor&&this.ChartCorssCursor.StringFormatY){this.ChartCorssCursor.StringFormatY.YClose=yClose;this.ChartCorssCursor.StringFormatY.BeforeOpenData=this.BeforeOpenData;this.ChartCorssCursor.StringFormatY.AfterCloseData=this.AfterCloseData;this.ChartCorssCursor.StringFormatY.MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartCorssCursor.StringFormatY.MultiDayAfterCloseData=multiAfterCloseData;this.ChartCorssCursor.StringFormatY.DayOffset=this.DayOffset;this.ChartCorssCursor.StringFormatX.Data=this.ChartPaint[0].Data;//十字光标
|
|
8932
9077
|
this.ChartCorssCursor.StringFormatX.BeforeOpenData=this.BeforeOpenData;this.ChartCorssCursor.StringFormatX.AfterCloseData=this.AfterCloseData;this.ChartCorssCursor.StringFormatX.MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartCorssCursor.StringFormatX.MultiDayAfterCloseData=multiAfterCloseData;this.ChartCorssCursor.StringFormatX.DayOffset=this.DayOffset;;if(this.ChartCorssCursor.CallAcutionXOperator){this.ChartCorssCursor.CallAcutionXOperator.BeforeOpenData=this.BeforeOpenData;this.ChartCorssCursor.CallAcutionXOperator.AfterCloseData=this.AfterCloseData;this.ChartCorssCursor.CallAcutionXOperator.MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartCorssCursor.CallAcutionXOperator.MultiDayAfterCloseData=multiAfterCloseData;this.ChartCorssCursor.CallAcutionXOperator.DayOffset=this.DayOffset;}}if(this.ExtendChartPaint[0]){this.ExtendChartPaint[0].Symbol=this.Symbol;this.ExtendChartPaint[0].Name=this.Name;}for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];item.MainData=minuteData;//绑定主图数据
|
|
8933
9078
|
}};//绑定分钟叠加指标数据(持仓量)
|
|
8934
9079
|
this.BindOverlayPositionData=function(minuteData,yClose){var _this36=this;if(this.Frame.SubFrame.length<2)return;var chart=null;var frame=null;var subFrame=this.Frame.SubFrame[1];//第2个窗口
|
|
8935
|
-
var overlayFrame=null;for(var i=0;i<subFrame.OverlayIndex.length;++i){var item=subFrame.OverlayIndex[i];if(item.Identify=='Position_Line_Frame'){overlayFrame=item;break;}}if(!overlayFrame){overlayFrame=new OverlayIndexItem();overlayFrame.Identify='Position_Line_Frame';if(this.ClassName=="MinuteChartContainer")frame=new OverlayMinuteFrame();else frame=new OverlayMinuteHScreenFrame();frame.Canvas=this.Canvas;frame.MainFrame=subFrame.Frame;frame.ChartBorder=subFrame.Frame.ChartBorder;frame.GlobalOption=this.GlobalOption;overlayFrame.Frame=frame;frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=frame.ChartBorder;frame.YSplitOperator.SplitCount=subFrame.Frame.YSplitOperator.SplitCount;frame.YSplitOperator.GetEventCallback=function(id){return _this36.GetEventCallback(id);};frame.YSplitOperator.OverlayIdentify=overlayFrame.Identify;frame.YSplitOperator.FloatPrecision=0;//持仓量 整数
|
|
9080
|
+
var overlayFrame=null;for(var i=0;i<subFrame.OverlayIndex.length;++i){var item=subFrame.OverlayIndex[i];if(item.Identify=='Position_Line_Frame'){overlayFrame=item;break;}}if(!overlayFrame){overlayFrame=new OverlayIndexItem();overlayFrame.Identify='Position_Line_Frame';if(this.ClassName=="MinuteChartContainer")frame=new OverlayMinuteFrame();else frame=new OverlayMinuteHScreenFrame();frame.Canvas=this.Canvas;frame.MainFrame=subFrame.Frame;frame.ChartBorder=subFrame.Frame.ChartBorder;frame.GlobalOption=this.GlobalOption;overlayFrame.Frame=frame;frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=frame.ChartBorder;frame.YSplitOperator.HQChart=this;frame.YSplitOperator.SplitCount=subFrame.Frame.YSplitOperator.SplitCount;frame.YSplitOperator.GetEventCallback=function(id){return _this36.GetEventCallback(id);};frame.YSplitOperator.OverlayIdentify=overlayFrame.Identify;frame.YSplitOperator.FloatPrecision=0;//持仓量 整数
|
|
8936
9081
|
var chart=new ChartMinutePositionLine();chart.Canvas=this.Canvas;chart.Name='Position-Line';chart.ChartBorder=frame.ChartBorder;chart.ChartFrame=frame;chart.Identify=overlayFrame.Identify;chart.Color=g_JSChartResource.Minute.PositionColor;overlayFrame.ChartPaint.push(chart);subFrame.OverlayIndex.push(overlayFrame);subFrame.Frame.RightFrame=frame;//右边坐标绑定到主坐标上
|
|
8937
9082
|
}else{frame=overlayFrame.Frame;for(var i=0;i<overlayFrame.ChartPaint.length;++i){var item=overlayFrame.ChartPaint[i];if(item.Name=='Position-Line'){chart=item;break;}}if(!chart)//图形不存在就创建一个
|
|
8938
9083
|
{chart=new ChartMinutePositionLine();chart.Canvas=this.Canvas;chart.Name='Position-Line';chart.ChartBorder=frame.ChartBorder;chart.ChartFrame=frame;chart.Identify=overlayFrame.Identify;chart.Color=g_JSChartResource.Minute.PositionColor;overlayFrame.ChartPaint.push(chart);}}var xPointCouont=this.Frame.SubFrame[0].Frame.XPointCount;frame.XPointCount=xPointCouont;subFrame.Frame.IsShowPositionTitle=true;var bindData=new ChartData();bindData.Data=minuteData.GetPosition();chart.Data=bindData;};this.ClearBindOverlayPositionData=function(){if(this.Frame.SubFrame.length<2)return;var subFrame=this.Frame.SubFrame[1];//第2个窗口
|
|
@@ -9004,7 +9149,7 @@ if(this.ChartCorssCursor.ClientPos>=0){var titlePaint=this.TitlePaint[0];if(titl
|
|
|
9004
9149
|
{if(!this.SourceData||!IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))return false;var minuteData=this.SourceData.Data[this.SourceData.Data.length-1];var dataID={Symbol:this.Symbol,Date:minuteData.Date,Time:minuteData.Time};if(!this.DialogTooltip.IsEqualDataID(dataID))return false;minuteItem={Type:0,Data:minuteData};dataType=2;}var sendData={DataType:dataType,ClientPos:this.ChartCorssCursor.ClientPos,//位置
|
|
9005
9150
|
IsShowCorss:this.ChartCorssCursor.IsShowCorss,//是否显示十字线
|
|
9006
9151
|
MinItem:minuteItem,Symbol:this.Symbol,Name:this.Name,LastValue:this.ChartCorssCursor.LastValue};this.DialogTooltip.Update(sendData);return true;};this.DrawSelectRectDialog=function(e){if(!this.DialogSelectRect)return;this.UpdateSelectRectDialog(e);};this.UpdateSelectRectDialog=function(e){if(!this.DialogSelectRect)return false;var data=e.data;//区间统计数据
|
|
9007
|
-
var x,y;if(data&&IFrameSplitOperator.IsNumber(data.X)&&IFrameSplitOperator.IsNumber(data.Y)){var pixelRatio=GetDevicePixelRatio();var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();x=data.X;y=data.Y;x+=rtClient.left+rtScroll.Left;y+=rtClient.top+rtScroll.Top;}var sendData={Symbol:this.Symbol,Name:this.Name,SelectData:data.SelectData,X:x,Y:y,e:e};this.DialogSelectRect.Update(sendData);};this.GetKData=function(){if(!this.SourceData)return null;var data=this.SourceData;if(!data)return null;return data;};}//盘前数据
|
|
9152
|
+
var x,y;if(data&&IFrameSplitOperator.IsNumber(data.X)&&IFrameSplitOperator.IsNumber(data.Y)){var pixelRatio=GetDevicePixelRatio();var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();x=data.X;y=data.Y;x+=rtClient.left+rtScroll.Left;y+=rtClient.top+rtScroll.Top;}var sendData={Symbol:this.Symbol,Name:this.Name,SelectData:data.SelectData,X:x,Y:y,e:e};this.DialogSelectRect.Update(sendData);};this.GetKData=function(){if(!this.SourceData)return null;var data=this.SourceData;if(!data)return null;return data;};this.IsCallAuctionFrame=function(frameID){if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(frameID<0||frameID>=this.Frame.SubFrame.length)return false;var subItem=this.Frame.SubFrame[frameID];if(!subItem||!subItem.Frame)return false;var subFrame=subItem.Frame;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];if(item.ChartFrame&&item.ChartFrame.Guid==subFrame.Guid)return true;}return false;};}//盘前数据
|
|
9008
9153
|
MinuteChartContainer.JsonDataToBeforeOpenData=function(data){var symbol=data.stock[0].symbol;var upperSymbol=symbol.toUpperCase();var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);var yClose=data.stock[0].yclose;var preClose=data.stock[0].yclose;//前一个数据价格
|
|
9009
9154
|
var stockData=data.stock[0];var date=stockData.date;//日期
|
|
9010
9155
|
var beforeOpenData={Data:[],TotalCount:15,Ver:1.0,Date:date};var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA;//扩展数据序号
|
|
@@ -9189,7 +9334,7 @@ if(this.DataMove(moveSetp,isLeft)){this.UpdataDataoffset();this.UpdatePointByCur
|
|
|
9189
9334
|
{var cursorIndex={};cursorIndex.Index=parseInt(Math.abs(this.CursorIndex-0.5).toFixed(0));if(!this.Frame.ZoomDown(cursorIndex))return;this.CursorIndex=cursorIndex.Index;this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.Draw();this.ShowTooltipByKeyDown();this.OnKLinePageChange("OnTouchMove");}phonePinch.Last={"X":touches[0].pageX,"Y":touches[0].pageY,"X2":touches[1].pageX,"Y2":touches[1].pageY};}};this.OnTouchEnd=function(e){JSConsole.Chart.Log('[KLineChartHScreenContainer:OnTouchEnd]',e);if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var bClearDrawPicture=true;if(this.CurrentChartDrawPicture){var drawPicture=this.CurrentChartDrawPicture;if(drawPicture.Status==2||drawPicture.Status==1||drawPicture.Status==3){drawPicture.PointStatus=drawPicture.Status;if(this.FinishChartDrawPicturePoint())this.DrawDynamicInfo();else bClearDrawPicture=false;}else if(drawPicture.Status==20){if(this.FinishMoveChartDrawPicture())this.DrawDynamicInfo();}}this.IsOnTouch=false;this.VerticalDrag=null;this.StopDragTimer();this.TouchEvent({EventID:JSCHART_EVENT_ID.ON_PHONE_TOUCH,FunctionName:"OnTouchEnd"},e);this.OnTouchFinished();this.TouchDrawCount=0;};//创建
|
|
9190
9335
|
//windowCount 窗口个数
|
|
9191
9336
|
this.Create=function(windowCount){var _this39=this;this.UIElement.JSChartContainer=this;//创建十字光标
|
|
9192
|
-
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_XStringFormat");this.ChartCorssCursor.StringFormatX.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;this.ChartCorssCursor.GetEventCallback=function(id){return _this39.GetEventCallback(id);};//创建等待提示
|
|
9337
|
+
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_XStringFormat");this.ChartCorssCursor.StringFormatX.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;this.ChartCorssCursor.StringFormatY.HQChart=this;this.ChartCorssCursor.GetEventCallback=function(id){return _this39.GetEventCallback(id);};//创建等待提示
|
|
9193
9338
|
this.ChartSplashPaint=new ChartSplashPaint();this.ChartSplashPaint.Canvas=this.Canvas;this.ChartSplashPaint.HQChart=this;//创建框架容器
|
|
9194
9339
|
this.Frame=new HQTradeHScreenFrame();this.Frame.ChartBorder=new ChartBorder();this.Frame.ChartBorder.UIElement=this.UIElement;this.Frame.ChartBorder.Top=30;this.Frame.ChartBorder.Left=5;this.Frame.ChartBorder.Bottom=20;this.Frame.Canvas=this.Canvas;this.ChartCorssCursor.Frame=this.Frame;//十字光标绑定框架
|
|
9195
9340
|
this.ChartSplashPaint.Frame=this.Frame;this.CreateChildWindow(windowCount);this.CreateMainKLine();//子窗口动态标题
|
|
@@ -9209,13 +9354,13 @@ function MinuteChartHScreenContainer(uielement){this.newMethod=MinuteChartContai
|
|
|
9209
9354
|
this.newMethod(uielement);delete this.newMethod;this.ClassName='MinuteChartHScreenContainer';this.OnMouseMove=function(x,y,e,isPhone){this.LastPoint.X=x;this.LastPoint.Y=y;this.CursorIndex=this.Frame.GetXData(y);var clientPos=this.PtInClient(x,y);var option={ParentFunction:'OnMouseMove',Point:{X:x,Y:y},IsPhone:isPhone===true,ClientPos:clientPos};this.DrawDynamicInfo(option);};//创建
|
|
9210
9355
|
//windowCount 窗口个数
|
|
9211
9356
|
this.Create=function(windowCount){var _this41=this;this.UIElement.JSChartContainer=this;//创建十字光标
|
|
9212
|
-
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.PtInClient=function(x,y){return _this41.PtInClient(x,y);};this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");this.ChartCorssCursor.StringFormatX.GetEventCallback=function(id){return _this41.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.GetEventCallback=function(id){return _this41.GetEventCallback(id);};this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();this.ChartCorssCursor.GetEventCallback=function(id){return _this41.GetEventCallback(id);};//创建等待提示
|
|
9357
|
+
this.ChartCorssCursor=new ChartCorssCursor();this.ChartCorssCursor.PtInClient=function(x,y){return _this41.PtInClient(x,y);};this.ChartCorssCursor.Canvas=this.Canvas;this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");this.ChartCorssCursor.StringFormatX.GetEventCallback=function(id){return _this41.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");this.ChartCorssCursor.StringFormatY.GetEventCallback=function(id){return _this41.GetEventCallback(id);};this.ChartCorssCursor.StringFormatY.HQChart=this;this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();this.ChartCorssCursor.GetEventCallback=function(id){return _this41.GetEventCallback(id);};//创建等待提示
|
|
9213
9358
|
this.ChartSplashPaint=new ChartSplashPaint();this.ChartSplashPaint.Canvas=this.Canvas;this.ChartSplashPaint.HQChart=this;//创建框架容器
|
|
9214
9359
|
this.Frame=new HQTradeHScreenFrame();this.Frame.ChartBorder=new ChartBorder();this.Frame.ChartBorder.UIElement=this.UIElement;this.Frame.ChartBorder.Top=25;this.Frame.ChartBorder.Left=50;this.Frame.ChartBorder.Bottom=20;this.Frame.Canvas=this.Canvas;this.ChartCorssCursor.Frame=this.Frame;//十字光标绑定框架
|
|
9215
9360
|
this.ChartSplashPaint.Frame=this.Frame;this.CreateChildWindow(windowCount);this.CreateMainKLine();//子窗口动态标题
|
|
9216
9361
|
for(var i in this.Frame.SubFrame){var titlePaint=new DynamicChartTitlePainting();titlePaint.Frame=this.Frame.SubFrame[i].Frame;titlePaint.Canvas=this.Canvas;titlePaint.LanguageID=this.LanguageID;titlePaint.GetEventCallback=function(id){return _this41.GetEventCallback(id);};titlePaint.SelectedChart=this.SelectedChart;titlePaint.HQChart=this;this.TitlePaint.push(titlePaint);}this.ChartCorssCursor.StringFormatX.Frame=this.Frame.SubFrame[0].Frame;this.ChartCorssCursor.StringFormatY.Frame=this.Frame;this.ChartCorssCursor.CallAcutionXOperator.Frame=this.Frame.SubFrame[0].Frame;this.UIElement.addEventListener("keydown",OnKeyDown,true);//键盘消息
|
|
9217
9362
|
};//创建子窗口
|
|
9218
|
-
this.CreateChildWindow=function(windowCount){var _this42=this;for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteHScreenFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;if(i<2)frame.ChartBorder.TitleHeight=0;frame.XPointCount=243;frame.HQChart=this;frame.GetEventCallback=function(id){return _this42.GetEventCallback(id);};var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];if(i==0){frame.YSplitOperator=new FrameSplitMinutePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.GetEventCallback=function(id){return _this42.GetEventCallback(id);};frame.YSplitOperator.DayOffset=this.DayOffset;frame.YSplitOperator.HQChart=this;}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this42.GetEventCallback(id);};}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this42.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;frame.XSplitOperator.Operator();for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();frame.FrameData.SubFrameItem=subFrame;subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;}};}/////////////////////////////////////////////////////////////////////////////////
|
|
9363
|
+
this.CreateChildWindow=function(windowCount){var _this42=this;for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteHScreenFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;if(i<2)frame.ChartBorder.TitleHeight=0;frame.XPointCount=243;frame.HQChart=this;frame.GetEventCallback=function(id){return _this42.GetEventCallback(id);};var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];if(i==0){frame.YSplitOperator=new FrameSplitMinutePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.GetEventCallback=function(id){return _this42.GetEventCallback(id);};frame.YSplitOperator.DayOffset=this.DayOffset;frame.YSplitOperator.HQChart=this;}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this42.GetEventCallback(id);};frame.YSplitOperator.HQChart=this;}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this42.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;frame.XSplitOperator.Operator();for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();frame.FrameData.SubFrameItem=subFrame;subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;}};}/////////////////////////////////////////////////////////////////////////////////
|
|
9219
9364
|
// 深度图
|
|
9220
9365
|
//
|
|
9221
9366
|
function DepthChartContainer(uielement){this.newMethod=JSChartContainer;//派生
|
|
@@ -14768,7 +14913,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
14768
14913
|
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);};}/********************************************************************************
|
|
14769
14914
|
* 版本信息输出
|
|
14770
14915
|
*
|
|
14771
|
-
*/var HQCHART_VERSION="1.1.
|
|
14916
|
+
*/var HQCHART_VERSION="1.1.14741";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();//把给外界调用的方法暴露出来
|
|
14772
14917
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
14773
14918
|
// BaseIndex:BaseIndex,
|
|
14774
14919
|
// ChartLine:ChartLine,
|
|
@@ -14795,4 +14940,5 @@ GetDevicePixelRatio:GetDevicePixelRatio},(0,_defineProperty3.default)(_jsChartIn
|
|
|
14795
14940
|
HQMinuteTimeStringFormat:HQMinuteTimeStringFormat,//分时图X轴 十字光标输出格式化
|
|
14796
14941
|
HQDateStringFormat:HQDateStringFormat,//K线图X轴 十字光标输出格式化
|
|
14797
14942
|
HQPriceStringFormat:HQPriceStringFormat//分时图,K线图Y轴 十字光标输出格式化
|
|
14798
|
-
}),(0,_defineProperty3.default)(_jsChartInit$jsChartS,'JS_ID',{JSCHART_EVENT_ID:JSCHART_EVENT_ID,JSCHART_OPERATOR_ID:JSCHART_OPERATOR_ID,JSCHART_DRAG_ID:JSCHART_DRAG_ID,JSCHART_BUTTON_ID:JSCHART_BUTTON_ID,JSCHART_DATA_FIELD_ID:JSCHART_DATA_FIELD_ID,JSCHART_WORKER_MESSAGE_ID:JSCHART_WORKER_MESSAGE_ID,JSCHART_MENU_ID:JSCHART_MENU_ID
|
|
14943
|
+
}),(0,_defineProperty3.default)(_jsChartInit$jsChartS,'JS_ID',{JSCHART_EVENT_ID:JSCHART_EVENT_ID,JSCHART_OPERATOR_ID:JSCHART_OPERATOR_ID,JSCHART_DRAG_ID:JSCHART_DRAG_ID,JSCHART_BUTTON_ID:JSCHART_BUTTON_ID,JSCHART_DATA_FIELD_ID:JSCHART_DATA_FIELD_ID,JSCHART_WORKER_MESSAGE_ID:JSCHART_WORKER_MESSAGE_ID,JSCHART_MENU_ID:JSCHART_MENU_ID,JSCHART_TRADE_STATUS_ID:JSCHART_TRADE_STATUS_ID//交易状态
|
|
14944
|
+
}),(0,_defineProperty3.default)(_jsChartInit$jsChartS,'HQChartScriptWorker',HQChartScriptWorker),(0,_defineProperty3.default)(_jsChartInit$jsChartS,'JSPopMenu',JSPopMenu),(0,_defineProperty3.default)(_jsChartInit$jsChartS,'JSDialogDrawTool',JSDialogDrawTool),_jsChartInit$jsChartS);
|