hqchart 1.1.14915 → 1.1.14919

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.
@@ -13376,14 +13376,16 @@ this.SetFullData=function(data){this.ClearMapStockData();this.ClearData();this.R
13376
13376
  }
13377
13377
 
13378
13378
  this.Draw();
13379
- */};this.RequestMemberListData=function(){//this.ChartSplashPaint.SetTitle(this.SplashTitle.MemberList);
13379
+ */};this.RequestMemberListData=function(){if(this.RequestStatus.IsFinishStockList==false)return;//码表没有下完
13380
+ //this.ChartSplashPaint.SetTitle(this.SplashTitle.MemberList);
13380
13381
  //this.ChartSplashPaint.EnableSplash(true);
13381
13382
  //this.Draw();
13382
13383
  this.RequestStatus.IsFinishMemberList=false;var self=this;if(this.NetworkFilter){var obj={Name:'JSReportChartContainer::RequestMemberListData',//类名::
13383
13384
  Explain:'板块成分数据',Request:{Data:{symbol:this.Symbol}},Self:this,PreventDefault:false};if(this.SortInfo.Field>=0&&this.SortInfo.Sort>0){var reportChart=this.GetReportChart();if(reportChart){var column=reportChart.Column[this.SortInfo.Field];obj.Sort={Column:column,Field:this.SortInfo.Field,Sort:this.SortInfo.Sort};}}this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvMemberListData(data);});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
13384
13385
  }//throw { Name:'JSReportChartContainer::RequestMemberListData', Error:'(板块成分数据)不提供内置测试数据' };
13385
- };this.RecvMemberListData=function(recvData){this.ClearData();if(IFrameSplitOperator.IsNonEmptyArray(recvData.data)){for(var i=0;i<recvData.data.length;++i){this.Data.Data.push(recvData.data[i]);this.SourceData.Data.push(recvData.data[i]);}}if(recvData.Virtual)//虚拟表设置
13386
- {var item=recvData.Virtual;if(IFrameSplitOperator.IsNumber(item.Count))this.Data.Virtual.Count=item.Count;}this.RequestStatus.IsFinishMemberList=true;this.Draw();this.UpdateStockData();};//删除股票
13386
+ };this.RecvMemberListData=function(recvData){var _this62=this;this.ClearData();if(IFrameSplitOperator.IsNonEmptyArray(recvData.data)){for(var i=0;i<recvData.data.length;++i){this.Data.Data.push(recvData.data[i]);this.SourceData.Data.push(recvData.data[i]);}}if(recvData.Virtual)//虚拟表设置
13387
+ {var item=recvData.Virtual;if(IFrameSplitOperator.IsNumber(item.Count))this.Data.Virtual.Count=item.Count;}this.RequestStatus.IsFinishMemberList=true;//实时本地数据排序
13388
+ var chart=this.GetReportChart();if(chart&&(this.SortInfo.Sort==1||this.SortInfo.Sort==2)&&IFrameSplitOperator.IsNumber(this.SortInfo.Field)&&this.SortInfo.Field>=0){var column=chart.Column[this.SortInfo.Field];var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_LOCAL_SORT);var bLocalSrot=true;if(event&&event.Callback){var sendData={Column:column,SortInfo:this.SortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(event.PreventDefault){bLocalSrot=false;if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}}if(bLocalSrot)this.Data.Data.sort(function(left,right){return _this62.LocalSort(left,right,column,_this62.SortInfo.Sort);});}this.Draw();this.UpdateStockData();};//删除股票
13387
13389
  this.DeleteSymbol=function(arySymbol,option){if(!IFrameSplitOperator.IsNonEmptyArray(arySymbol))return false;var setSymbol=new _set2.default(arySymbol);var bFinder=false;if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){var aryData=[];for(var i=0;i<this.SourceData.Data.length;++i){var item=this.SourceData.Data[i];if(setSymbol.has(item)){bFinder=true;continue;}aryData.push(item);}if(bFinder)this.SourceData.Data=aryData;}if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)){var aryData=[];for(var i=0;i<this.Data.Data.length;++i){var item=this.Data.Data[i];if(setSymbol.has(item)){bFinder=true;continue;}aryData.push(item);}if(bFinder)this.Data.Data=aryData;}if(!bFinder)return false;this.Draw();this.UpdateStockData();return true;};//添加股票
13388
13390
  this.AddSymbol=function(arySymbol,option){if(!IFrameSplitOperator.IsNonEmptyArray(arySymbol))return false;var bDuplicate=true;if(option&&IFrameSplitOperator.IsBool(option.Duplicate))bDuplicate=option.Duplicate;//是否去重
13389
13391
  var mapSymbol=new _map2.default();for(var i=0;i<arySymbol.length;++i){var item={Symbol:arySymbol[i],IsExist:false,IsExist2:false};mapSymbol.set(item.Symbol,item);}if(bDuplicate){if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){for(var i=0;i<this.SourceData.Data.length;++i){var item=this.Data.Data[i];if(mapSymbol.has(item)){mapSymbol.get(item).IsExist=true;}}}if(IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)){for(var i=0;i<this.Data.Data.length;++i){var item=this.Data.Data[i];if(mapSymbol.has(item)){mapSymbol.get(item).IsExist2=true;}}}}var _iteratorNormalCompletion24=true;var _didIteratorError24=false;var _iteratorError24=undefined;try{for(var _iterator24=(0,_getIterator3.default)(mapSymbol),_step24;!(_iteratorNormalCompletion24=(_step24=_iterator24.next()).done);_iteratorNormalCompletion24=true){var mapItem=_step24.value;var item=mapItem[1];if(!item.IsExist)this.SourceData.Data.push(item.Symbol);if(!item.IsExist2)this.Data.Data.push(item.Symbol);}}catch(err){_didIteratorError24=true;_iteratorError24=err;}finally{try{if(!_iteratorNormalCompletion24&&_iterator24.return){_iterator24.return();}}finally{if(_didIteratorError24){throw _iteratorError24;}}}this.Draw();this.UpdateStockData();return true;};//下载码表
@@ -13398,20 +13400,20 @@ this.GetStockData=function(symbol){if(!this.MapStockData)return null;if(!this.Ma
13398
13400
  this.SetFlashBGItem=function(symbol,obj){var item={ID:obj.ID,Color:obj.Color,Count:1};if(IFrameSplitOperator.IsNumber(obj.Count))item.Count=obj.Count;if(IFrameSplitOperator.IsNumber(obj.Time))item.Time=obj.Time;else item.Time=Date.now();if(this.FlashBG.has(symbol)){var stockItem=this.FlashBG.get(symbol);stockItem.LastTime=item.Time;stockItem.Data.set(item.ID,item);}else{var stockItem={LastTime:item.Time,Data:new _map2.default([[item.ID,item]])};this.FlashBG.set(symbol,stockItem);}};this.GetFlashBGData=function(symbol,time){if(!this.FlashBG)return null;if(!this.FlashBG.has(symbol))return null;var timeDiff=3*1000;var stockItem=this.FlashBG.get(symbol);if(time-stockItem.LastTime>=timeDiff)//超时的删除
13399
13401
  {this.FlashBG.delete(symbol);return null;}if(!stockItem.Data||stockItem.Data.size<=0){this.FlashBG.delete(symbol);return null;}var aryDelID=[];//超时需要参数的
13400
13402
  var _iteratorNormalCompletion25=true;var _didIteratorError25=false;var _iteratorError25=undefined;try{for(var _iterator25=(0,_getIterator3.default)(stockItem.Data),_step25;!(_iteratorNormalCompletion25=(_step25=_iterator25.next()).done);_iteratorNormalCompletion25=true){var mapItem=_step25.value;var item=mapItem[1];if(time-item.Time>=timeDiff||item.Count<=0)aryDelID.push(item.ID);}}catch(err){_didIteratorError25=true;_iteratorError25=err;}finally{try{if(!_iteratorNormalCompletion25&&_iterator25.return){_iterator25.return();}}finally{if(_didIteratorError25){throw _iteratorError25;}}}if(IFrameSplitOperator.IsNonEmptyArray(aryDelID)){for(var i=0;i<aryDelID.length;++i){stockItem.Data.delete(aryDelID[i]);}if(stockItem.Data.size<=0){this.FlashBG.delete(symbol);return null;}}return stockItem;};//delay=是否延迟
13401
- this.DelayUpdateStockData=function(){var _this62=this;if(this.DelayUpdateTimer!=null){clearTimeout(this.DelayUpdateTimer);this.DelayUpdateTimer=null;}var frequency=this.DelayUpdateFrequency;this.DelayUpdateTimer=setTimeout(function(){_this62.UpdateStockData();},frequency);};this.UpdateStockData=function(){var chart=this.ChartPaint[0];if(!chart)return;//列表还没有加载完成
13402
- if(this.RequestStatus.IsFinishMemberList==false||this.RequestStatus.IsFinishMemberList==false)return;if(this.Data.Virtual&&this.Data.Virtual.Enable){this.RequestVirtualStockData();//虚拟表格 全部取后台
13403
+ this.DelayUpdateStockData=function(){var _this63=this;if(this.DelayUpdateTimer!=null){clearTimeout(this.DelayUpdateTimer);this.DelayUpdateTimer=null;}var frequency=this.DelayUpdateFrequency;this.DelayUpdateTimer=setTimeout(function(){_this63.UpdateStockData();},frequency);};this.UpdateStockData=function(){var chart=this.ChartPaint[0];if(!chart)return;//列表还没有加载完成
13404
+ if(this.RequestStatus.IsFinishStockList==false||this.RequestStatus.IsFinishMemberList==false)return;if(this.Data.Virtual&&this.Data.Virtual.Enable){this.RequestVirtualStockData();//虚拟表格 全部取后台
13403
13405
  return;}//if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
13404
13406
  if(this.SortInfo&&this.SortInfo.Field>=0&&this.SortInfo.Sort>0){var column=chart.Column[this.SortInfo.Field];if(column.Sort==2){this.RequestStockSortData(column,this.SortInfo.Field,this.SortInfo.Sort);//远程排序
13405
13407
  return;}}var arySymbol=chart.ShowSymbol;//if (!IFrameSplitOperator.IsNonEmptyArray(arySymbol)) return;
13406
13408
  this.RequestStockData(arySymbol);};//下载股票数据
13407
13409
  this.RequestStockData=function(arySymbol){var self=this;if(this.NetworkFilter){var obj={Name:'JSDealChartContainer::RequestStockData',//类名::函数名
13408
13410
  Explain:'报价列表股票数据',Request:{Data:{stocks:arySymbol},symbol:this.Symbol,name:this.Name},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.RecvStockData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;}//throw { Name:'JSReportChartContainer::RequestStockData', Error:'(报价列表股票数据)不提供内置测试数据' };
13409
- };this.RecvStockData=function(data){var _this63=this;var setUpdateSymbol=new _set2.default();//更新的股票列表
13411
+ };this.RecvStockData=function(data){var _this64=this;var setUpdateSymbol=new _set2.default();//更新的股票列表
13410
13412
  if(IFrameSplitOperator.IsNonEmptyArray(data.data)){//0=证券代码 1=股票名称 2=昨收 3=开 4=高 5=低 6=收 7=成交量 8=成交金额, 9=买价 10=买量 11=卖价 12=卖量 13=均价 14=流通股 15=总股本
13411
13413
  for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];if(!symbol)continue;var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQReportItem();stock.OriginalSymbol=symbol;stock.Symbol=this.GetSymbolNoSuffix(symbol);this.MapStockData.set(symbol,stock);}this.ReadStockJsonData(stock,item);if(!setUpdateSymbol.has(symbol))setUpdateSymbol.add(symbol);}}//重新更新板块成员
13412
13414
  if(IFrameSplitOperator.IsArray(data.members)){this.SourceData.Data=[];this.Data.Data=[];var aryMember=data.members;for(var i=0;i<aryMember.length;++i){var value=aryMember[i];this.Data.Data.push(value);this.SourceData.Data.push(value);}}var chart=this.ChartPaint[0];if(!chart)return;var bUpdate=false;//实时本地数据排序
13413
13415
  var chart=this.ChartPaint[0];if(chart&&(this.SortInfo.Sort==1||this.SortInfo.Sort==2)&&IFrameSplitOperator.IsNumber(this.SortInfo.Field)&&this.SortInfo.Field>=0){var column=chart.Column[this.SortInfo.Field];var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_LOCAL_SORT);//当前选中的股票
13414
- var selectedSymbol=null;if(chart.SelectedRowData&&chart.SelectedModel==1)selectedSymbol=chart.SelectedRowData.Symbol;var bLocalSrot=true;if(event&&event.Callback){var sendData={Column:column,SortInfo:this.SortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(event.PreventDefault){bLocalSrot=false;if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}}if(bLocalSrot)this.Data.Data.sort(function(left,right){return _this63.LocalSort(left,right,column,_this63.SortInfo.Sort);});if(selectedSymbol){chart.SetSelectedRow({Symbol:selectedSymbol});}bUpdate=true;//排序暂时每次都刷新
13416
+ var selectedSymbol=null;if(chart.SelectedRowData&&chart.SelectedModel==1)selectedSymbol=chart.SelectedRowData.Symbol;var bLocalSrot=true;if(event&&event.Callback){var sendData={Column:column,SortInfo:this.SortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(event.PreventDefault){bLocalSrot=false;if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}}if(bLocalSrot)this.Data.Data.sort(function(left,right){return _this64.LocalSort(left,right,column,_this64.SortInfo.Sort);});if(selectedSymbol){chart.SetSelectedRow({Symbol:selectedSymbol});}bUpdate=true;//排序暂时每次都刷新
13415
13417
  }else{//更新的股票在当前页面,需要重绘
13416
13418
  var aryStock=chart.ShowSymbol;for(var i=0;i<aryStock.length;++i){if(setUpdateSymbol.has(aryStock[i].Symbol)){bUpdate=true;break;}}}if(bUpdate)this.Draw();};//读取单条股票json数据
13417
13419
  this.ReadStockJsonData=function(stock,item){//0=证券代码 1=股票名称 2=昨收 3=开 4=高 5=低 6=收 7=成交量 8=成交金额, 9=买价 10=买量 11=卖价 12=卖量 13=均价 14=流通股 15=总股本 16=涨停价 17=跌停价
@@ -13483,7 +13485,7 @@ var result=this.MoveSelectedRow(-1,{EnablePageCycle:this.PageUpDownCycle});if(re
13483
13485
  var result=this.MoveSelectedRow(1,{EnablePageCycle:this.PageUpDownCycle});if(result){if(result.Redraw)this.Draw();if(result.Update)this.DelayUpdateStockData();this.MoveSelectedRowEvent(result.OldIndex,result.NewIndex);}break;case 37://left
13484
13486
  if(this.MoveXOffset(-1))this.Draw();break;case 39://right
13485
13487
  if(this.MoveXOffset(1))this.Draw();break;}//不让滚动条滚动
13486
- if(e.preventDefault)e.preventDefault();else e.returnValue=false;};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart)chart.OnDblClick(x,y,e);};this.UIOnMouseDown=function(e){var _this64=this;this.DragXScroll=null;this.DragYScroll=null;this.DragHeader=null;this.DragColumnWidth=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){var dragColumnWidth=chart.PtInHeaderDragBorder(x,y);if(dragColumnWidth){this.DragColumnWidth={ClickPoint:{X:x,Y:y},LastPoint:{X:x,Y:y},//Click:{ X:e.clientX, Y:e.clientY },
13488
+ if(e.preventDefault)e.preventDefault();else e.returnValue=false;};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart)chart.OnDblClick(x,y,e);};this.UIOnMouseDown=function(e){var _this65=this;this.DragXScroll=null;this.DragYScroll=null;this.DragHeader=null;this.DragColumnWidth=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){var dragColumnWidth=chart.PtInHeaderDragBorder(x,y);if(dragColumnWidth){this.DragColumnWidth={ClickPoint:{X:x,Y:y},LastPoint:{X:x,Y:y},//Click:{ X:e.clientX, Y:e.clientY },
13487
13489
  //LastMove:{ X:e.clientX, Y:e.clientY},
13488
13490
  ClickData:dragColumnWidth,ColumnWidth:dragColumnWidth.Column.Width};}else{var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;//if (e.button!=0) return;
13489
13491
  if((clickData.Type==2||clickData.Type==4)&&(e.button==0||e.button==2))//点击行|固定行
@@ -13499,11 +13501,11 @@ if((clickData.Type==2||clickData.Type==4)&&(e.button==0||e.button==2))//点击
13499
13501
  {if(this.MoveYOffset(-1)){this.Draw();this.DelayUpdateStockData();}}else if(scroll.Type==2)//底部按钮
13500
13502
  {if(this.MoveYOffset(1)){this.Draw();this.DelayUpdateStockData();}}else if(scroll.Type==3)//滚动条
13501
13503
  {this.DragYScroll={Click:{X:x,Y:y},LastMove:{X:x,Y:y}};}else if(scroll.Type==4)//滚动条内部
13502
- {if(this.SetYOffset(scroll.Pos)){this.Draw();this.DelayUpdateStockData();}}}}}document.onmousemove=function(e){_this64.DocOnMouseMove(e);};document.onmouseup=function(e){_this64.DocOnMouseUp(e);};};this.UIOnMounseUp=function(e){console.log('"UIOnMounseUp');};//去掉右键菜单
13504
+ {if(this.SetYOffset(scroll.Pos)){this.Draw();this.DelayUpdateStockData();}}}}}document.onmousemove=function(e){_this65.DocOnMouseMove(e);};document.onmouseup=function(e){_this65.DocOnMouseUp(e);};};this.UIOnMounseUp=function(e){console.log('"UIOnMounseUp');};//去掉右键菜单
13503
13505
  this.UIOnContextMenu=function(e){e.preventDefault();if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;if(!this.IsShowRightMenu)return;var x=e.clientX-this.UIElement.getBoundingClientRect().left;var y=e.clientY-this.UIElement.getBoundingClientRect().top;if(typeof this.OnRightMenu=='function')this.OnRightMenu(x,y,e);//右键菜单事件
13504
13506
  };this.OnRightMenu=function(x,y,e){this.PopupRightMenu(x,y,e);};this.PtInReportChart=function(x,y)//Type: 2=行 3=表头 4=固定行
13505
- {var chart=this.GetReportChart();if(!chart)return null;var row=chart.PtInHeader(x,y);if(row)return{Type:3,Row:row,X:x,Y:y};row=chart.PtInFixedBody(x,y);if(row)return{Type:4,Row:row,X:x,Y:y};row=chart.PtInBody(x,y);if(row)return{Type:2,Row:row,X:x,Y:y};return{Type:-1,Row:null,X:x,Y:y};};this.PopupRightMenu=function(x,y,e){var _this65=this;var pixelTatio=GetDevicePixelRatio();var data=this.PtInReportChart(x*pixelTatio,y*pixelTatio);//x,y 需要乘以放大倍速
13506
- if(!data)return;if(!this.JSPopMenu)return;data.e=e;var menuData={Menu:null,Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this65.OnClickRightMenu(data);};var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_RIGHT_MENU);if(event&&event.Callback){var sendData={MenuData:menuData,Data:data};event.Callback(event,sendData,this);}if(menuData.Menu)this.PopupMenuByRClick(menuData,x,y);};//右键菜单
13507
+ {var chart=this.GetReportChart();if(!chart)return null;var row=chart.PtInHeader(x,y);if(row)return{Type:3,Row:row,X:x,Y:y};row=chart.PtInFixedBody(x,y);if(row)return{Type:4,Row:row,X:x,Y:y};row=chart.PtInBody(x,y);if(row)return{Type:2,Row:row,X:x,Y:y};return{Type:-1,Row:null,X:x,Y:y};};this.PopupRightMenu=function(x,y,e){var _this66=this;var pixelTatio=GetDevicePixelRatio();var data=this.PtInReportChart(x*pixelTatio,y*pixelTatio);//x,y 需要乘以放大倍速
13508
+ if(!data)return;if(!this.JSPopMenu)return;data.e=e;var menuData={Menu:null,Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this66.OnClickRightMenu(data);};var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_RIGHT_MENU);if(event&&event.Callback){var sendData={MenuData:menuData,Data:data};event.Callback(event,sendData,this);}if(menuData.Menu)this.PopupMenuByRClick(menuData,x,y);};//右键菜单
13507
13509
  this.PopupMenuByRClick=function(menuData,x,y){if(!this.JSPopMenu)return;var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();x+=rtClient.left+rtScroll.Left;y+=rtClient.top+rtScroll.Top;this.JSPopMenu.CreatePopMenu(menuData);this.JSPopMenu.PopupMenuByRight(x,y);};//点击右键菜单
13508
13510
  this.OnClickRightMenu=function(data){JSConsole.Chart.Log('[JSReportChartContainer::OnClickRightMenu] ',data);if(!data||!data.Data)return;var cmdID=data.Data.ID;//命令ID
13509
13511
  var aryArgs=data.Data.Args;//参数
@@ -13555,18 +13557,18 @@ break;--selected;if(selected<pageStatus.Start)--offset;if(selected<0){selected=t
13555
13557
  this.MoveXOffset=function(step){var chart=this.ChartPaint[0];if(!chart)return false;var maxOffset=chart.GetXScrollRange();if(maxOffset<=0)return false;if(step>0){if(this.Data.XOffset>=maxOffset)return false;for(var i=0;i<step;++i){if(this.Data.XOffset>=maxOffset)break;++this.Data.XOffset;}return true;}else if(step<0){if(this.Data.XOffset<=0)return false;step=Math.abs(step);for(var i=0;i<step;++i){if(this.Data.XOffset-1<0)break;--this.Data.XOffset;}return true;}return false;};this.SetXOffset=function(pos){if(!IFrameSplitOperator.IsNumber(pos))return false;var chart=this.ChartPaint[0];if(!chart)return false;var maxOffset=chart.GetXScrollRange();if(pos<0)pos=0;if(pos>maxOffset)pos=maxOffset;this.Data.XOffset=pos;return true;};this.SetYOffset=function(pos){if(!IFrameSplitOperator.IsNumber(pos))return false;var chart=this.ChartPaint[0];if(!chart)return false;var maxOffset=chart.GetYScrollRange();if(pos<0)pos=0;if(pos>maxOffset)pos=maxOffset;this.Data.YOffset=pos;return true;};this.GotoLastPage=function(){var chart=this.ChartPaint[0];if(!chart)return;//显示最后一屏
13556
13558
  var pageSize=chart.GetPageSize(true);var offset=this.Data.Data.length-pageSize;if(offset<0)offset=0;this.Data.DataOffset=offset;};this.SetColumn=function(aryColunm,option){var chart=this.ChartPaint[0];if(!chart)return;chart.SetColumn(aryColunm);chart.SizeChange=true;if(option&&option.Redraw)this.Draw();};this.SetTab=function(aryTab,option){var chart=this.ChartPaint[0];;if(!chart)return;var chartTab=chart.Tab;if(!chartTab)return;chartTab.SetTabList(aryTab);if(option&&option.Redraw)this.Draw();};this.SetVScrollbar=function(option){var chart=this.GetReportChart();if(!chart)return;var scrollbar=chart.VScrollbar;if(!scrollbar)return;scrollbar.SetOption(option);};this.SetSelectedTab=function(index,opiton){var chart=this.ChartPaint[0];;if(!chart)return;var chartTab=chart.Tab;if(!chartTab)return;chartTab.SelectedTabIndex=index;};this.ReloadResource=function(option){this.Frame.ReloadResource(option);for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.ReloadResource)item.ReloadResource(option);}if(option&&(option.Redraw||option.Draw)){this.SetSizeChange(true);this.Draw();}if(this.TooltipMinuteChart)this.TooltipMinuteChart.ReloadResource(option);//分时图
13557
13559
  if(this.TooltipKLineChart)this.TooltipKLineChart.ReloadResource(option);};//列排序
13558
- this.SortColumn=function(index,sortType){var _this66=this;if(index<0)return false;var reportChart=this.GetReportChart();if(!reportChart)return false;var column=reportChart.Column[index];if(!column)return false;if(column.Sort!=1&&column.Sort!=2)return false;var sortInfo={Field:index,Sort:sortType};if(this.Data.Virtual&&this.Data.Virtual.Enable){this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Data.YOffset=0;this.ResetReportSelectStatus();this.RequestVirtualStockData();//虚拟表格
13560
+ this.SortColumn=function(index,sortType){var _this67=this;if(index<0)return false;var reportChart=this.GetReportChart();if(!reportChart)return false;var column=reportChart.Column[index];if(!column)return false;if(column.Sort!=1&&column.Sort!=2)return false;var sortInfo={Field:index,Sort:sortType};if(this.Data.Virtual&&this.Data.Virtual.Enable){this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Data.YOffset=0;this.ResetReportSelectStatus();this.RequestVirtualStockData();//虚拟表格
13559
13561
  return true;}else if(sortInfo.Sort==0)//不排序还原
13560
13562
  {this.Data.Data=[];if(IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))this.Data.Data=this.SourceData.Data.slice();}else if(sortInfo.Sort==1||sortInfo.Sort==2){if(column.Sort==1)//本地排序
13561
- {var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_LOCAL_SORT);var bLocalSort=true;if(event&&event.Callback){var sendData={Column:column,SortInfo:sortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault){if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;bLocalSort=false;}}if(bLocalSort)this.Data.Data.sort(function(left,right){return _this66.LocalSort(left,right,column,sortInfo.Sort);});}else if(column.Sort==2)//远程排序
13563
+ {var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_LOCAL_SORT);var bLocalSort=true;if(event&&event.Callback){var sendData={Column:column,SortInfo:sortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault){if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;bLocalSort=false;}}if(bLocalSort)this.Data.Data.sort(function(left,right){return _this67.LocalSort(left,right,column,sortInfo.Sort);});}else if(column.Sort==2)//远程排序
13562
13564
  {if(!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Data.YOffset=0;this.ResetReportSelectStatus();this.RequestStockSortData(column,sortInfo.Field,sortInfo.Sort);//远程排序
13563
13565
  return true;}}this.Data.YOffset=0;this.ResetReportSelectStatus();this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Draw();this.DelayUpdateStockData();return true;};//点表头
13564
- this.OnClickHeader=function(clickData,e){var _this67=this;var header=clickData.Header;if(header.Column&&header.Column.EnablePopupHeaderMenu){this.PopupHeaderMenu(clickData,e);return;}if(header.Column&&(header.Column.Sort==1||header.Column.Sort==2)){var index=header.Index;var sortInfo={Field:this.SortInfo.Field,Sort:this.SortInfo.Sort};var arySortType=header.Column.SortType;if(sortInfo.Field!=index){sortInfo.Field=index;sortInfo.Sort=arySortType[0];}else{if(arySortType.length==1){sortInfo.Sort=arySortType[0];}else{for(var i=0;i<arySortType.length;++i){if(sortInfo.Sort==arySortType[i]){sortInfo.Sort=arySortType[(i+1)%arySortType.length];break;}}}}if(header.Column.Sort==1||header.Column.Sort==2){if(sortInfo.Sort==0){this.Data.Data=[];for(var i=0;i<this.SourceData.Data.length;++i){this.Data.Data.push(this.SourceData.Data[i]);}}else{if(header.Column.Sort==1)//本地排序
13565
- {var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_LOCAL_SORT);var bLocalSort=true;if(event&&event.Callback){var sendData={Column:header.Column,SortInfo:sortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault){if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;bLocalSort=false;}}if(bLocalSort)this.Data.Data.sort(function(left,right){return _this67.LocalSort(left,right,header.Column,sortInfo.Sort);});}else if(header.Column.Sort==2)//远程排序
13566
+ this.OnClickHeader=function(clickData,e){var _this68=this;var header=clickData.Header;if(header.Column&&header.Column.EnablePopupHeaderMenu){this.PopupHeaderMenu(clickData,e);return;}if(header.Column&&(header.Column.Sort==1||header.Column.Sort==2)){var index=header.Index;var sortInfo={Field:this.SortInfo.Field,Sort:this.SortInfo.Sort};var arySortType=header.Column.SortType;if(sortInfo.Field!=index){sortInfo.Field=index;sortInfo.Sort=arySortType[0];}else{if(arySortType.length==1){sortInfo.Sort=arySortType[0];}else{for(var i=0;i<arySortType.length;++i){if(sortInfo.Sort==arySortType[i]){sortInfo.Sort=arySortType[(i+1)%arySortType.length];break;}}}}if(header.Column.Sort==1||header.Column.Sort==2){if(sortInfo.Sort==0){this.Data.Data=[];for(var i=0;i<this.SourceData.Data.length;++i){this.Data.Data.push(this.SourceData.Data[i]);}}else{if(header.Column.Sort==1)//本地排序
13567
+ {var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_LOCAL_SORT);var bLocalSort=true;if(event&&event.Callback){var sendData={Column:header.Column,SortInfo:sortInfo,SymbolList:this.Data.Data,Result:null,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault){if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;bLocalSort=false;}}if(bLocalSort)this.Data.Data.sort(function(left,right){return _this68.LocalSort(left,right,header.Column,sortInfo.Sort);});}else if(header.Column.Sort==2)//远程排序
13566
13568
  {if(!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Data.YOffset=0;this.ResetReportSelectStatus();this.RequestStockSortData(header.Column,sortInfo.Field,sortInfo.Sort);//远程排序
13567
- return;}}this.Data.YOffset=0;this.ResetReportSelectStatus();this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Draw();this.DelayUpdateStockData();}}};this.PopupHeaderMenu=function(clickData,e){var _this68=this;if(!this.JSPopMenu)return;if(!this.GetEventCallback)return;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_REPORT_HEADER_MENU);if(!event||!event.Callback)return;var header=clickData.Header;var column=header.Column;var menuData={Menu:null,Position:JSPopMenu.POSITION_ID.DROPDOWN_MENU_ID};menuData.ClickCallback=function(data){_this68.OnClickHeaderMenu(column,data);};var sendData={MenuData:menuData,Column:column,Index:header.Index,PreventDefault:false,e:e};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;if(!menuData.Menu)return;this.PopupMenuByDrapdown(menuData,header.Rect);};//下拉菜单
13569
+ return;}}this.Data.YOffset=0;this.ResetReportSelectStatus();this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.Draw();this.DelayUpdateStockData();}}};this.PopupHeaderMenu=function(clickData,e){var _this69=this;if(!this.JSPopMenu)return;if(!this.GetEventCallback)return;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_REPORT_HEADER_MENU);if(!event||!event.Callback)return;var header=clickData.Header;var column=header.Column;var menuData={Menu:null,Position:JSPopMenu.POSITION_ID.DROPDOWN_MENU_ID};menuData.ClickCallback=function(data){_this69.OnClickHeaderMenu(column,data);};var sendData={MenuData:menuData,Column:column,Index:header.Index,PreventDefault:false,e:e};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;if(!menuData.Menu)return;this.PopupMenuByDrapdown(menuData,header.Rect);};//下拉菜单
13568
13570
  this.PopupMenuByDrapdown=function(menuData,rtButton){if(!this.JSPopMenu)return;var pixelRatio=GetDevicePixelRatio();var rtCell={Left:rtButton.Left/pixelRatio,Right:rtButton.Right/pixelRatio,Bottom:rtButton.Bottom/pixelRatio,Top:rtButton.Top/pixelRatio};rtCell.Width=rtCell.Right-rtCell.Left;rtCell.Height=rtCell.Bottom-rtCell.Top;var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();var offsetLeft=rtClient.left+rtScroll.Left;var offsetTop=rtClient.top+rtScroll.Top;rtCell.Left+=offsetLeft;rtCell.Right+=offsetLeft;rtCell.Top+=offsetTop;rtCell.Bottom+=offsetTop;this.JSPopMenu.CreatePopMenu(menuData);this.JSPopMenu.PopupMenuByDrapdown(rtCell);};this.GetTabPopMenu=function(tabItem){var aryMenu=[];if(IFrameSplitOperator.IsNonEmptyArray(tabItem.ArySubMenu)){for(var i=0;i<tabItem.ArySubMenu.length;++i){var item=tabItem.ArySubMenu[i];var menuItem={Name:item.Title,Data:{ID:item.CommandID,Args:[item.ID]}};if(item.Text)menuItem.Text=item.Text;aryMenu.push(menuItem);}}return aryMenu;};this.PopupTabMenu=function(menuData,tab,e){if(!this.JSPopMenu)return;var rtTab=tab.Rect;var pixelRatio=GetDevicePixelRatio();var rtCell={Left:rtTab.Left/pixelRatio,Right:rtTab.Right/pixelRatio,Bottom:rtTab.Bottom/pixelRatio,Top:rtTab.Top/pixelRatio};rtCell.Width=rtCell.Right-rtCell.Left;rtCell.Height=rtCell.Bottom-rtCell.Top;var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();var offsetLeft=rtClient.left+rtScroll.Left;var offsetTop=rtClient.top+rtScroll.Top;rtCell.Left+=offsetLeft;rtCell.Right+=offsetLeft;rtCell.Top+=offsetTop;rtCell.Bottom+=offsetTop;this.JSPopMenu.CreatePopMenu(menuData);this.JSPopMenu.PopupMenuByTab(rtCell);if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();};//点击标签
13569
- this.OnClickTab=function(tabData,e){var _this69=this;if(!tabData.Tab)return;var redraw=false;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var uiElement={Left:this.UIElement.getBoundingClientRect().left,Top:this.UIElement.getBoundingClientRect().top};if(tabData.Tab.IsMenu){var menuData={Menu:this.GetTabPopMenu(tabData.Tab),Position:JSPopMenu.POSITION_ID.TAB_MENU_ID};menuData.ClickCallback=function(data){_this69.OnClickTabPopMenu(tabData,data);};var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_REPORT_TABMENU);if(event&&event.Callback){var sendData={MenuData:menuData,Tab:tabData,PreventDefault:false,e:e};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;}this.PopupTabMenu(menuData,tabData.Tab,e);}else{var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_REPORT_TAB);if(event&&event.Callback){var sendData={Data:tabData,IsSide:{X:x,Y:x},UIElement:uiElement,e:e,Redraw:redraw,PreventDefault:false};event.Callback(event,sendData,this);if(IFrameSplitOperator.IsBool(sendData.Redraw))redraw=sendData.Redraw;if(sendData.PreventDefault==true)return;}if(tabData.Tab.CommandID==JSCHART_MENU_ID.CMD_REPORT_CHANGE_BLOCK_ID){this.ExecuteMenuCommand(tabData.Tab.CommandID,[tabData.Tab.ID]);this.SetSelectedTab(tabData.Index);redraw=true;}}if(redraw)this.Draw();};this.OnClickTabPopMenu=function(tabData,data){JSConsole.Chart.Log('[JSReportChartContainer::OnClickTabPopMenu] ',tabData,data);var cmdID=data.Data.ID;//命令ID
13571
+ this.OnClickTab=function(tabData,e){var _this70=this;if(!tabData.Tab)return;var redraw=false;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var uiElement={Left:this.UIElement.getBoundingClientRect().left,Top:this.UIElement.getBoundingClientRect().top};if(tabData.Tab.IsMenu){var menuData={Menu:this.GetTabPopMenu(tabData.Tab),Position:JSPopMenu.POSITION_ID.TAB_MENU_ID};menuData.ClickCallback=function(data){_this70.OnClickTabPopMenu(tabData,data);};var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_REPORT_TABMENU);if(event&&event.Callback){var sendData={MenuData:menuData,Tab:tabData,PreventDefault:false,e:e};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;}this.PopupTabMenu(menuData,tabData.Tab,e);}else{var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_REPORT_TAB);if(event&&event.Callback){var sendData={Data:tabData,IsSide:{X:x,Y:x},UIElement:uiElement,e:e,Redraw:redraw,PreventDefault:false};event.Callback(event,sendData,this);if(IFrameSplitOperator.IsBool(sendData.Redraw))redraw=sendData.Redraw;if(sendData.PreventDefault==true)return;}if(tabData.Tab.CommandID==JSCHART_MENU_ID.CMD_REPORT_CHANGE_BLOCK_ID){this.ExecuteMenuCommand(tabData.Tab.CommandID,[tabData.Tab.ID]);this.SetSelectedTab(tabData.Index);redraw=true;}}if(redraw)this.Draw();};this.OnClickTabPopMenu=function(tabData,data){JSConsole.Chart.Log('[JSReportChartContainer::OnClickTabPopMenu] ',tabData,data);var cmdID=data.Data.ID;//命令ID
13570
13572
  var aryArgs=data.Data.Args;//参数
13571
13573
  var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MENU_COMMAND);//回调通知外部
13572
13574
  if(event&&event.Callback){var data={PreventDefault:false,CommandID:cmdID,Args:aryArgs,SrcData:data,TabData:tabData};event.Callback(event,data,this);if(data.PreventDefault)return;}this.ExecuteMenuCommand(cmdID,aryArgs);this.SetSelectedTab(tabData.Index);this.Draw();};this.OnClickHeaderMenu=function(menuData,data){JSConsole.Chart.Log('[JSReportChartContainer::OnClickHeaderMenu] ',menuData,data);var cmdID=data.Data.ID;var aryArgs=data.Data.Args;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MENU_COMMAND);//回调通知外部
@@ -14100,7 +14102,7 @@ if(option.Symbol){chart.Draw();var name=option.Symbol;if(option.Name)name=option
14100
14102
  if(option.SortInfo){var item=option.SortInfo;if(IFrameSplitOperator.IsNumber(item.Field))chart.SortInfo.Field=item.Field;if(IFrameSplitOperator.IsNumber(item.Sort))chart.SortInfo.Sort=item.Sort;}this.SetChartBorder(chart,option);//是否自动更新
14101
14103
  if(option.IsAutoUpdate!=null)chart.IsAutoUpdate=option.IsAutoUpdate;if(option.AutoUpdateFrequency>0)chart.AutoUpdateFrequency=option.AutoUpdateFrequency;if(IFrameSplitOperator.IsBool(option.EnableFilter))chart.EnableFilter=option.EnableFilter;//注册事件
14102
14104
  if(option.EventCallback){for(var i=0;i<option.EventCallback.length;++i){var item=option.EventCallback[i];chart.AddEventCallback(item);}}return chart;};this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14103
- chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;};this.CreateResizeListener=function(){var _this70=this;this.ResizeListener=new ResizeObserver(function(entries){_this70.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSTReportChart::OnDivResize] entries=",entries);this.OnSize();};/////////////////////////////////////////////////////////////////////////////
14105
+ chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;};this.CreateResizeListener=function(){var _this71=this;this.ResizeListener=new ResizeObserver(function(entries){_this71.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSTReportChart::OnDivResize] entries=",entries);this.OnSize();};/////////////////////////////////////////////////////////////////////////////
14104
14106
  //对外接口
14105
14107
  //切换股票代码接口
14106
14108
  this.ChangeSymbol=function(symbol,option){if(this.JSChartContainer)this.JSChartContainer.ChangeSymbol(symbol,option);};this.SetColumn=function(aryColumn,option){if(this.JSChartContainer)this.JSChartContainer.SetColumn(aryColumn,option);};//事件回调
@@ -14151,16 +14153,16 @@ this.ChartDestroy=function()//销毁
14151
14153
  this.ShowMinuteChartTooltip=function(x,y,data){if(!this.TooltipMinuteChart)return;var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();var offsetLeft=rtClient.left+rtScroll.Left;var offsetTop=rtClient.top+rtScroll.Top;data.Offset={Left:offsetLeft,Top:offsetTop};this.TooltipMinuteChart.Show(data,x,y);};this.HideMinuteChartTooltip=function(){if(!this.TooltipMinuteChart)return;this.TooltipMinuteChart.Hide();};this.InitalFloatTooltip=function(option){if(this.FloatTooltip)return;this.FloatTooltip=new JSFloatTooltip();this.FloatTooltip.Inital(this,option);this.FloatTooltip.Create();};this.HideFloatTooltip=function(){if(!this.FloatTooltip)return;this.FloatTooltip.Hide();};this.DestroyFloatTooltip=function(){if(!this.FloatTooltip)return;this.FloatTooltip.Destroy();this.FloatTooltip=null;};this.DrawFloatTooltip=function(point,toolTip){if(!this.FloatTooltip)return;this.UpdateFloatTooltip(point,toolTip);};this.UpdateFloatTooltip=function(point,toolTip){if(!this.FloatTooltip)return;var sendData={Tooltip:toolTip,Point:point,DataType:4};this.FloatTooltip.Update(sendData);};//清空固定行数据
14152
14154
  this.ClearFixedRowData=function(){this.FixedRowData.Data=[];};//设置固定行
14153
14155
  this.SetFixedRowCount=function(value){var chart=this.ChartPaint[0];if(!chart)return;chart.FixedRowCount=value;};//创建
14154
- this.Create=function(option){var _this71=this;this.UIElement.JSChartContainer=this;//创建等待提示
14156
+ this.Create=function(option){var _this72=this;this.UIElement.JSChartContainer=this;//创建等待提示
14155
14157
  this.ChartSplashPaint=new ChartSplashPaint();this.ChartSplashPaint.Canvas=this.Canvas;this.ChartSplashPaint.SetTitle(this.LoadDataSplashTitle);this.ChartSplashPaint.IsEnableSplash=true;//创建框架
14156
14158
  this.Frame=new JSTReportFrame();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.ChartSplashPaint.Frame=this.Frame;//创建表格
14157
- var chart=new ChartTReport();chart.Frame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.UIElement=this.UIElement;chart.GetEventCallback=function(id){return _this71.GetEventCallback(id);};chart.GetExePriceDataCallback=function(exePrice){return _this71.GetExePriceData(exePrice);};chart.GetFlashBGDataCallback=function(symbol,time){return _this71.GetFlashBGData(symbol,time);};chart.Data=this.Data;chart.BorderData=this.BorderData;chart.GlobalOption=this.GlobalOption;chart.FixedRowData=this.FixedRowData;chart.SortInfo=this.SortInfo;this.ChartPaint[0]=chart;if(option){if(IFrameSplitOperator.IsBool(option.IsShowHeader))chart.IsShowHeader=option.IsShowHeader;//是否显示表头
14159
+ var chart=new ChartTReport();chart.Frame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.UIElement=this.UIElement;chart.GetEventCallback=function(id){return _this72.GetEventCallback(id);};chart.GetExePriceDataCallback=function(exePrice){return _this72.GetExePriceData(exePrice);};chart.GetFlashBGDataCallback=function(symbol,time){return _this72.GetFlashBGData(symbol,time);};chart.Data=this.Data;chart.BorderData=this.BorderData;chart.GlobalOption=this.GlobalOption;chart.FixedRowData=this.FixedRowData;chart.SortInfo=this.SortInfo;this.ChartPaint[0]=chart;if(option){if(IFrameSplitOperator.IsBool(option.IsShowHeader))chart.IsShowHeader=option.IsShowHeader;//是否显示表头
14158
14160
  if(IFrameSplitOperator.IsNumber(option.FixedColumn))chart.FixedColumn=option.FixedColumn;//固定列
14159
14161
  if(IFrameSplitOperator.IsNumber(option.BorderLine))this.Frame.BorderLine=option.BorderLine;//边框
14160
14162
  if(IFrameSplitOperator.IsBool(option.ItemBorder))chart.IsDrawBorder=option.ItemBorder;//单元格边框
14161
- if(IFrameSplitOperator.IsNumber(option.SelectedModel))chart.SelectedModel=option.SelectedModel;}var bRegisterKeydown=true;var bRegisterWheel=true;if(option){if(option.KeyDown===false){bRegisterKeydown=false;JSConsole.Chart.Log('[JSTReportChartContainer::Create] not register keydown event.');}if(option.Wheel===false){bRegisterWheel=false;JSConsole.Chart.Log('[JSTReportChartContainer::Create] not register wheel event.');}}if(bRegisterKeydown)this.UIElement.addEventListener("keydown",function(e){_this71.OnKeyDown(e);},true);//键盘消息
14162
- if(bRegisterWheel)this.UIElement.addEventListener("wheel",function(e){_this71.OnWheel(e);},true);//上下滚动消息
14163
- this.UIElement.ondblclick=function(e){_this71.UIOnDblClick(e);};this.UIElement.onmousedown=function(e){_this71.UIOnMouseDown(e);};this.UIElement.onmousemove=function(e){_this71.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this71.UIOnMounseOut(e);};this.UIElement.onmouseleave=function(e){_this71.UIOnMouseleave(e);};this.UIElement.oncontextmenu=function(e){_this71.UIOnContextMenu(e);};/*
14163
+ if(IFrameSplitOperator.IsNumber(option.SelectedModel))chart.SelectedModel=option.SelectedModel;}var bRegisterKeydown=true;var bRegisterWheel=true;if(option){if(option.KeyDown===false){bRegisterKeydown=false;JSConsole.Chart.Log('[JSTReportChartContainer::Create] not register keydown event.');}if(option.Wheel===false){bRegisterWheel=false;JSConsole.Chart.Log('[JSTReportChartContainer::Create] not register wheel event.');}}if(bRegisterKeydown)this.UIElement.addEventListener("keydown",function(e){_this72.OnKeyDown(e);},true);//键盘消息
14164
+ if(bRegisterWheel)this.UIElement.addEventListener("wheel",function(e){_this72.OnWheel(e);},true);//上下滚动消息
14165
+ this.UIElement.ondblclick=function(e){_this72.UIOnDblClick(e);};this.UIElement.onmousedown=function(e){_this72.UIOnMouseDown(e);};this.UIElement.onmousemove=function(e){_this72.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this72.UIOnMounseOut(e);};this.UIElement.onmouseleave=function(e){_this72.UIOnMouseleave(e);};this.UIElement.oncontextmenu=function(e){_this72.UIOnContextMenu(e);};/*
14164
14166
  this.UIElement.onmouseup=(e)=>{ this.UIOnMounseUp(e); }
14165
14167
 
14166
14168
 
@@ -14172,7 +14174,7 @@ this.UIElement.ondblclick=function(e){_this71.UIOnDblClick(e);};this.UIElement.o
14172
14174
  */};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14173
14175
  this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段宽度
14174
14176
  this.LastMouseStatus.MouseOnStatus=null;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash){this.Frame.Draw({IsEnableSplash:this.ChartSplashPaint.IsEnableSplash});this.ChartSplashPaint.Draw();return;}this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
14175
- for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.IsDrawFirst)item.Draw();}for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.IsDrawFirst)item.Draw();}if(this.GlobalOption.FlashBGCount>0){this.DelayDraw(500);}};this.DelayDraw=function(frequency){var _this72=this;if(typeof this.FlashBGTimer=='number'){clearTimeout(this.FlashBGTimer);this.FlashBGTimer=null;}this.FlashBGTimer=setTimeout(function(){_this72.Draw();},frequency);};this.ClearData=function(){this.SourceData.Data=[];this.Data.Data=[];this.Data.Price=null;this.Data.XOffset=0;//清空偏移
14177
+ for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.IsDrawFirst)item.Draw();}for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.IsDrawFirst)item.Draw();}if(this.GlobalOption.FlashBGCount>0){this.DelayDraw(500);}};this.DelayDraw=function(frequency){var _this73=this;if(typeof this.FlashBGTimer=='number'){clearTimeout(this.FlashBGTimer);this.FlashBGTimer=null;}this.FlashBGTimer=setTimeout(function(){_this73.Draw();},frequency);};this.ClearData=function(){this.SourceData.Data=[];this.Data.Data=[];this.Data.Price=null;this.Data.XOffset=0;//清空偏移
14176
14178
  this.Data.YOffset=0;this.MapStockData=new _map2.default();this.MapExePriceData=null;this.BorderData.MapData=null;};this.StopAutoUpdate=function(){this.CancelAutoUpdate();this.AutoUpdateEvent(false,'JSTReportChartContainer::StopAutoUpdate');if(!this.IsAutoUpdate)return;this.IsAutoUpdate=false;};//设置事件回调
14177
14179
  //{event:事件id, callback:回调函数}
14178
14180
  this.AddEventCallback=function(object){if(!object||!object.event||!object.callback)return;var data={Callback:object.callback,Source:object};this.mapEvent.set(object.event,data);};this.RemoveEventCallback=function(eventid){if(!this.mapEvent.has(eventid))return;this.mapEvent.delete(eventid);};this.GetEventCallback=function(id)//获取事件回调
@@ -14183,10 +14185,10 @@ Explain:'T型报价列表数据',Self:this,PreventDefault:false};this.NetworkFil
14183
14185
  }throw{Name:'JSTReportChartContainer::RequestStockListData',Error:'(T型报价列表数据)不提供内置测试数据'};};this.RecvStockListData=function(data){this.MapExePriceData=new _map2.default();this.MapStockData=new _map2.default();if(IFrameSplitOperator.IsNonEmptyArray(data.data)){//0=行权价格 1=左边期权代码 2=右侧期权代码 3=左侧期权名称 4=右侧期权名称
14184
14186
  for(var i=0;i<data.data.length;++i){var item=data.data[i];var exePrice=item[0];var leftData=new HQTReportItem();leftData.Symbol=leftData.Name=item[1];if(item[3])leftData.Name=item[3];var rightData=new HQTReportItem();rightData.Symbol=rightData.Name=item[2];if(item[4])rightData.Name=item[4];this.MapStockData.set(leftData.Symbol,leftData);this.MapStockData.set(rightData.Symbol,rightData);var dataItem={ExePrice:exePrice,LeftData:leftData,RightData:rightData};this.MapExePriceData.set(dataItem.ExePrice,dataItem);this.SourceData.Data.push(exePrice);this.Data.Data.push(exePrice);}}if(IFrameSplitOperator.IsNumber(data.price)){this.Data.Price=data.price;}if(IFrameSplitOperator.IsNumber(data.Decimal)){var chart=this.ChartPaint[0];if(chart)chart.DefaultDecimal=data.Decimal;}this.Draw();this.UpdateStockData();};this.GetExePriceData=function(exePrice){if(!this.MapExePriceData)return null;if(!this.MapExePriceData.has(exePrice))return null;return this.MapExePriceData.get(exePrice);};this.UpdateStockData=function(){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;if(this.MapStockData.size<=0)return;var arySymbol=[];var _iteratorNormalCompletion26=true;var _didIteratorError26=false;var _iteratorError26=undefined;try{for(var _iterator26=(0,_getIterator3.default)(this.MapStockData),_step26;!(_iteratorNormalCompletion26=(_step26=_iterator26.next()).done);_iteratorNormalCompletion26=true){var mapItem=_step26.value;arySymbol.push(mapItem[0]);}}catch(err){_didIteratorError26=true;_iteratorError26=err;}finally{try{if(!_iteratorNormalCompletion26&&_iterator26.return){_iterator26.return();}}finally{if(_didIteratorError26){throw _iteratorError26;}}}if(!IFrameSplitOperator.IsNonEmptyArray(arySymbol))return;this.RequestStockData(arySymbol);};//下载期权数据
14185
14187
  this.RequestStockData=function(arySymbol){var self=this;if(this.NetworkFilter){var chart=this.ChartPaint[0];var obj={Name:'JSTReportChartContainer::RequestStockData',//类名::函数名
14186
- Explain:'T型报价列表期权数据',Request:{Data:{stocks:arySymbol,symbol:this.Symbol,fixedRowCount:chart.FixedRowCount}},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.RecvStockData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;}throw{Name:'JSTReportChartContainer::RequestStockData',Error:'(T型报价列表期权数据)不提供内置测试数据'};};this.RecvStockData=function(data){var _this73=this;var setUpdateSymbol=new _set2.default();//更新的股票列表
14188
+ Explain:'T型报价列表期权数据',Request:{Data:{stocks:arySymbol,symbol:this.Symbol,fixedRowCount:chart.FixedRowCount}},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.RecvStockData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;}throw{Name:'JSTReportChartContainer::RequestStockData',Error:'(T型报价列表期权数据)不提供内置测试数据'};};this.RecvStockData=function(data){var _this74=this;var setUpdateSymbol=new _set2.default();//更新的股票列表
14187
14189
  if(IFrameSplitOperator.IsNonEmptyArray(data.data)){for(var i=0;i<data.data.length;++i){var item=data.data[i];var symbol=item[0];//0=证券代码;
14188
14190
  if(!symbol)continue;var stock=null;if(this.MapStockData.has(symbol)){stock=this.MapStockData.get(symbol);}else{stock=new HQTReportItem();stock.Symbol=symbol;this.MapStockData.set(symbol,stock);}this.ReadStockJsonData(stock,item);if(!setUpdateSymbol.has(symbol))setUpdateSymbol.add(symbol);}}if(IFrameSplitOperator.IsNumber(data.price))this.Data.Price=data.price;if(IFrameSplitOperator.IsNonEmptyArray(data.fixedRowData)){for(var i=0;i<data.fixedRowData.length;++i){var item=data.fixedRowData[i];if(!item||!item.TData)continue;this.FixedRowData.Data[i]=item;}}var chart=this.ChartPaint[0];//实时数据排序
14189
- if(chart&&(this.SortInfo.Sort==1||this.SortInfo.Sort==2)&&IFrameSplitOperator.IsNumber(this.SortInfo.Field)&&this.SortInfo.Field>=0){var column=chart.Column[this.SortInfo.Field];var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TREPORT_LOCAL_SORT);if(event&&event.Callback){var sendData={Column:column,SortInfo:this.SortInfo,SymbolList:this.Data.Data,Result:null};event.Callback(event,sendData,this);if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}else{this.Data.Data.sort(function(left,right){return _this73.LocalSort(left,right,column,_this73.SortInfo.Sort,_this73.SortInfo.CellType);});}}this.CalculateData();this.Draw();};//计算统计数据
14191
+ if(chart&&(this.SortInfo.Sort==1||this.SortInfo.Sort==2)&&IFrameSplitOperator.IsNumber(this.SortInfo.Field)&&this.SortInfo.Field>=0){var column=chart.Column[this.SortInfo.Field];var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TREPORT_LOCAL_SORT);if(event&&event.Callback){var sendData={Column:column,SortInfo:this.SortInfo,SymbolList:this.Data.Data,Result:null};event.Callback(event,sendData,this);if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}else{this.Data.Data.sort(function(left,right){return _this74.LocalSort(left,right,column,_this74.SortInfo.Sort,_this74.SortInfo.CellType);});}}this.CalculateData();this.Draw();};//计算统计数据
14190
14192
  this.CalculateData=function(){if(!this.MapExePriceData||this.MapExePriceData.size<=0)return;var leftMaxPosition={Max:null,ExePrice:null,CellType:1};var rightMaxPosition={Max:null,ExePrice:null,CellType:2};this.BorderData.MapData=new _map2.default();var _iteratorNormalCompletion27=true;var _didIteratorError27=false;var _iteratorError27=undefined;try{for(var _iterator27=(0,_getIterator3.default)(this.MapExePriceData),_step27;!(_iteratorNormalCompletion27=(_step27=_iterator27.next()).done);_iteratorNormalCompletion27=true){var mapItem=_step27.value;var item=mapItem[1];var leftData=item.LeftData;var rightData=item.RightData;if(leftData&&IFrameSplitOperator.IsNumber(leftData.Position)){if(leftMaxPosition.Max==null||leftMaxPosition.Max<leftData.Position){leftMaxPosition.Max=leftData.Position;leftMaxPosition.ExePrice=mapItem[0];}}if(rightData&&IFrameSplitOperator.IsNumber(rightData.Position)){if(rightMaxPosition.Max==null||rightMaxPosition.Max<rightData.Position){rightMaxPosition.Max=rightData.Position;rightMaxPosition.ExePrice=mapItem[0];}}}}catch(err){_didIteratorError27=true;_iteratorError27=err;}finally{try{if(!_iteratorNormalCompletion27&&_iterator27.return){_iterator27.return();}}finally{if(_didIteratorError27){throw _iteratorError27;}}}var aryData=[null,null,null];if(leftMaxPosition.ExePrice)aryData[1]=leftMaxPosition;if(rightMaxPosition.ExePrice)aryData[2]=rightMaxPosition;this.BorderData.MapData.set(TREPORT_COLUMN_ID.POSITION_ID,{Data:aryData});};//读取单条股票json数据
14191
14193
  this.ReadStockJsonData=function(stock,item){//0=证券代码 1=股票名称 2=昨收 3=开 4=高 5=低 6=收 7=成交量 8=成交金额, 9=买价 10=买量 11=卖价 12=卖量 13=均价 14=持仓 16=涨停价 17=跌停价
14192
14194
  //21=涨幅% 22=涨跌 24=振幅%
@@ -14215,7 +14217,7 @@ if(IFrameSplitOperator.IsString(item[201])||IFrameSplitOperator.IsObject(item[20
14215
14217
  var frequency=this.AutoUpdateFrequency;if(marketStatus==1)//盘前
14216
14218
  {this.AutoUpdateTimer=setTimeout(function(){self.AutoUpdate();},frequency);}else if(marketStatus==2)//盘中
14217
14219
  {this.AutoUpdateTimer=setTimeout(function(){self.UpdateStockData();},frequency);}};//delay=是否延迟
14218
- this.DelayUpdateStockData=function(){var _this74=this;if(this.DelayUpdateTimer!=null){clearTimeout(this.DelayUpdateTimer);this.DelayUpdateTimer=null;}var frequency=this.DelayUpdateFrequency;this.DelayUpdateTimer=setTimeout(function(){_this74.UpdateStockData();},frequency);};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.GetTReportChart();if(chart)chart.OnDblClick(x,y,e);};this.UIOnMouseDown=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(!chart)return;var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;if(clickData.Type==2&&(e.button==0||e.button==2))//点击行
14220
+ this.DelayUpdateStockData=function(){var _this75=this;if(this.DelayUpdateTimer!=null){clearTimeout(this.DelayUpdateTimer);this.DelayUpdateTimer=null;}var frequency=this.DelayUpdateFrequency;this.DelayUpdateTimer=setTimeout(function(){_this75.UpdateStockData();},frequency);};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.GetTReportChart();if(chart)chart.OnDblClick(x,y,e);};this.UIOnMouseDown=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(!chart)return;var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;if(clickData.Type==2&&(e.button==0||e.button==2))//点击行
14219
14221
  {if(clickData.Redraw==true)this.Draw();}else if(clickData.Type==3&&e.button==0)//表头
14220
14222
  {this.OnClickHeader(clickData,e);}//document.onmousemove=(e)=>{ this.DocOnMouseMove(e); }
14221
14223
  //document.onmouseup=(e)=> { this.DocOnMouseUp(e); }
@@ -14231,8 +14233,8 @@ if(tooltipData){if(tooltipData.Type==20){if(tooltipData.Data&&tooltipData.Data.S
14231
14233
  */if(mouseStatus)this.UIElement.style.cursor=mouseStatus.Cursor;if(bShowChartTooltip){this.ShowMinuteChartTooltip(null,null,chartTooltipData);}else{this.HideMinuteChartTooltip();}if(bShowTooltip){var xTooltip=e.clientX-this.UIElement.getBoundingClientRect().left;var yTooltip=e.clientY-this.UIElement.getBoundingClientRect().top;this.DrawFloatTooltip({X:xTooltip,Y:yTooltip,YMove:20/pixelTatio},this.LastMouseStatus.TooltipStatus.Data);}else{this.HideFloatTooltip();}};this.UIOnMounseOut=function(e){this.HideMinuteChartTooltip();};this.UIOnMouseleave=function(e){this.HideMinuteChartTooltip();};this.UIOnContextMenu=function(e){e.preventDefault();var x=e.clientX-this.UIElement.getBoundingClientRect().left;var y=e.clientY-this.UIElement.getBoundingClientRect().top;this.OnRightMenu(x,y,e);//右键菜单事件
14232
14234
  };this.OnRightMenu=function(x,y,e){};//点表头
14233
14235
  this.OnClickHeader=function(clickData,e){var header=clickData.Header;if(header.Column&&header.Column.Sort==1){var data={CellType:header.CellType,ColumnIndex:header.ColumnIndex};this.SortHeader(header.Column,data);}};//排序
14234
- this.SortHeader=function(column,sortData){var _this75=this;var sortInfo={Field:this.SortInfo.Field,Sort:this.SortInfo.Sort,CellType:this.SortInfo.CellType};var arySortType=column.SortType;if(sortInfo.Field!=sortData.ColumnIndex||sortInfo.CellType!=sortData.CellType){sortInfo.Field=sortData.ColumnIndex;sortInfo.CellType=sortData.CellType;sortInfo.Sort=arySortType[0];}else{if(arySortType.length==1){sortInfo.Sort=arySortType[0];}else{for(var i=0;i<arySortType.length;++i){if(sortInfo.Sort==arySortType[i]){sortInfo.Sort=arySortType[(i+1)%arySortType.length];break;}}}}if(sortInfo.Sort==0)//还原
14235
- {this.Data.Data=[];for(var i=0;i<this.SourceData.Data.length;++i){this.Data.Data.push(this.SourceData.Data[i]);}}else{var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TREPORT_LOCAL_SORT);if(event&&event.Callback){var sendData={Column:column,SortInfo:sortInfo,SymbolList:this.Data.Data,Result:null};event.Callback(event,sendData,this);if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}else{this.Data.Data.sort(function(left,right){return _this75.LocalSort(left,right,column,sortInfo.Sort,sortInfo.CellType);});}}this.Data.YOffset=0;this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.SortInfo.CellType=sortInfo.CellType;this.Draw();this.DelayUpdateStockData();};//本地排序
14236
+ this.SortHeader=function(column,sortData){var _this76=this;var sortInfo={Field:this.SortInfo.Field,Sort:this.SortInfo.Sort,CellType:this.SortInfo.CellType};var arySortType=column.SortType;if(sortInfo.Field!=sortData.ColumnIndex||sortInfo.CellType!=sortData.CellType){sortInfo.Field=sortData.ColumnIndex;sortInfo.CellType=sortData.CellType;sortInfo.Sort=arySortType[0];}else{if(arySortType.length==1){sortInfo.Sort=arySortType[0];}else{for(var i=0;i<arySortType.length;++i){if(sortInfo.Sort==arySortType[i]){sortInfo.Sort=arySortType[(i+1)%arySortType.length];break;}}}}if(sortInfo.Sort==0)//还原
14237
+ {this.Data.Data=[];for(var i=0;i<this.SourceData.Data.length;++i){this.Data.Data.push(this.SourceData.Data[i]);}}else{var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TREPORT_LOCAL_SORT);if(event&&event.Callback){var sendData={Column:column,SortInfo:sortInfo,SymbolList:this.Data.Data,Result:null};event.Callback(event,sendData,this);if(Array.isArray(sendData.Result))this.Data.Data=sendData.Result;}else{this.Data.Data.sort(function(left,right){return _this76.LocalSort(left,right,column,sortInfo.Sort,sortInfo.CellType);});}}this.Data.YOffset=0;this.SortInfo.Field=sortInfo.Field;this.SortInfo.Sort=sortInfo.Sort;this.SortInfo.CellType=sortInfo.CellType;this.Draw();this.DelayUpdateStockData();};//本地排序
14236
14238
  this.LocalSort=function(left,right,column,sortType,cellType){switch(column.Type){case TREPORT_COLUMN_ID.SYMBOL_ID:case TREPORT_COLUMN_ID.NAME_ID:return this.LocalStringSort(left,right,column,sortType,cellType);case TREPORT_COLUMN_ID.PRICE_ID:case TREPORT_COLUMN_ID.VOL_ID:case TREPORT_COLUMN_ID.UPDOWN_ID:case TREPORT_COLUMN_ID.BUY_PRICE_ID:case TREPORT_COLUMN_ID.SELL_PRICE_ID:case TREPORT_COLUMN_ID.AMOUNT_ID:case TREPORT_COLUMN_ID.BUY_VOL_ID:case TREPORT_COLUMN_ID.SELL_VOL_ID:case TREPORT_COLUMN_ID.YCLOSE_ID:case TREPORT_COLUMN_ID.OPEN_ID:case TREPORT_COLUMN_ID.HIGH_ID:case TREPORT_COLUMN_ID.LOW_ID:case TREPORT_COLUMN_ID.AVERAGE_PRICE_ID:case TREPORT_COLUMN_ID.EXE_PRICE_ID://行权价格
14237
14239
  case TREPORT_COLUMN_ID.POSITION_ID://持仓量
14238
14240
  case TREPORT_COLUMN_ID.AMPLITUDE_ID:case TREPORT_COLUMN_ID.INCREASE_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER1_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER2_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER3_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER4_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER5_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER6_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER7_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER8_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER9_ID:case TREPORT_COLUMN_ID.RESERVE_NUMBER10_ID:return this.LocalNumberSort(left,right,column,sortType,cellType);default:return 0;}};this.LocalNumberSort=function(left,right,column,sortType,cellType){var leftStock=this.GetExePriceData(left);var rightStock=this.GetExePriceData(right);var leftValue=-99999999999999,rightValue=-99999999999999;if(sortType==2)leftValue=rightValue=99999999999999;var filedName=MAP_TREPORT_COLUMN_FIELD.get(column.Type);if(cellType==0)//行权价格
@@ -14412,7 +14414,7 @@ this.CanvasElement.height*=pixelTatio;this.CanvasElement.width*=pixelTatio;JSCon
14412
14414
  //注册事件
14413
14415
  if(option.EventCallback){for(var i=0;i<option.EventCallback.length;++i){var item=option.EventCallback[i];chart.AddEventCallback(item);}}if(option.EnableResize==true)this.CreateResizeListener();chart.Draw();};this.CreateJSKeyboardChartContainer=function(option){var chart=new JSKeyboardChartContainer(this.CanvasElement);chart.Create(option);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;if(IFrameSplitOperator.IsNonEmptyArray(option.Column))chart.SetColumn(option.Column);if(IFrameSplitOperator.IsNumber(option.BorderLine))chart.Frame.BorderLine=option.BorderLine;this.SetChartBorder(chart,option);//注册事件
14414
14416
  if(option.EventCallback){for(var i=0;i<option.EventCallback.length;++i){var item=option.EventCallback[i];chart.AddEventCallback(item);}}return chart;};this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14415
- chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;};this.CreateResizeListener=function(){var _this76=this;this.ResizeListener=new ResizeObserver(function(entries){_this76.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSKeyboardChart::OnDivResize] entries=",entries);this.OnSize();};/////////////////////////////////////////////////////////////////////////////
14417
+ chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;};this.CreateResizeListener=function(){var _this77=this;this.ResizeListener=new ResizeObserver(function(entries){_this77.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSKeyboardChart::OnDivResize] entries=",entries);this.OnSize();};/////////////////////////////////////////////////////////////////////////////
14416
14418
  //对外接口
14417
14419
  this.SetColumn=function(aryColumn,option){if(this.JSChartContainer)this.JSChartContainer.SetColumn(aryColumn,option);};//事件回调
14418
14420
  this.AddEventCallback=function(obj){if(this.JSChartContainer&&typeof this.JSChartContainer.AddEventCallback=='function'){JSConsole.Chart.Log('[JSKeyboardChart:AddEventCallback] obj=',obj);this.JSChartContainer.AddEventCallback(obj);}};//重新加载配置
@@ -14448,11 +14450,11 @@ var aryFuncKeyQuery=null;this.MapSymbol.clear();this.Data.Data=[];this.Data.XOff
14448
14450
  }
14449
14451
  this.ChartPaint[0].SelectedRow=0;
14450
14452
  */};//创建
14451
- this.Create=function(option){var _this77=this;this.UIElement.JSChartContainer=this;//创建框架
14453
+ this.Create=function(option){var _this78=this;this.UIElement.JSChartContainer=this;//创建框架
14452
14454
  this.Frame=new JSKeyboardFrame();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;//创建表格
14453
- var chart=new ChartSymbolList();chart.Frame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.UIElement=this.UIElement;chart.GetEventCallback=function(id){return _this77.GetEventCallback(id);};chart.GetStockDataCallback=function(symbol){return _this77.GetStockData(symbol);};chart.Data=this.Data;this.ChartPaint[0]=chart;chart.VScrollbar=new ChartKeyboardVScrollbar();chart.VScrollbar.Frame=this.Frame;chart.VScrollbar.Canvas=this.Canvas;chart.VScrollbar.ChartBorder=this.Frame.ChartBorder;chart.VScrollbar.Report=chart;if(option){}var bRegisterKeydown=true;var bRegisterWheel=true;if(option){if(option.KeyDown===false){bRegisterKeydown=false;JSConsole.Chart.Log('[JSKeyboardChartContainer::Create] not register keydown event.');}if(option.Wheel===false){bRegisterWheel=false;JSConsole.Chart.Log('[JSKeyboardChartContainer::Create] not register wheel event.');}}if(bRegisterKeydown)this.UIElement.addEventListener("keydown",function(e){_this77.OnKeyDown(e);},true);//键盘消息
14454
- if(bRegisterWheel)this.UIElement.addEventListener("wheel",function(e){_this77.OnWheel(e);},true);//上下滚动消息
14455
- this.UIElement.ondblclick=function(e){_this77.UIOnDblClick(e);};this.UIElement.onmousedown=function(e){_this77.UIOnMouseDown(e);};this.UIElement.oncontextmenu=function(e){_this77.UIOnContextMenu(e);};this.UIElement.onmousemove=function(e){_this77.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this77.UIOnMounseOut(e);};this.UIElement.onmouseleave=function(e){_this77.UIOnMouseleave(e);};};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14455
+ var chart=new ChartSymbolList();chart.Frame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.UIElement=this.UIElement;chart.GetEventCallback=function(id){return _this78.GetEventCallback(id);};chart.GetStockDataCallback=function(symbol){return _this78.GetStockData(symbol);};chart.Data=this.Data;this.ChartPaint[0]=chart;chart.VScrollbar=new ChartKeyboardVScrollbar();chart.VScrollbar.Frame=this.Frame;chart.VScrollbar.Canvas=this.Canvas;chart.VScrollbar.ChartBorder=this.Frame.ChartBorder;chart.VScrollbar.Report=chart;if(option){}var bRegisterKeydown=true;var bRegisterWheel=true;if(option){if(option.KeyDown===false){bRegisterKeydown=false;JSConsole.Chart.Log('[JSKeyboardChartContainer::Create] not register keydown event.');}if(option.Wheel===false){bRegisterWheel=false;JSConsole.Chart.Log('[JSKeyboardChartContainer::Create] not register wheel event.');}}if(bRegisterKeydown)this.UIElement.addEventListener("keydown",function(e){_this78.OnKeyDown(e);},true);//键盘消息
14456
+ if(bRegisterWheel)this.UIElement.addEventListener("wheel",function(e){_this78.OnWheel(e);},true);//上下滚动消息
14457
+ this.UIElement.ondblclick=function(e){_this78.UIOnDblClick(e);};this.UIElement.onmousedown=function(e){_this78.UIOnMouseDown(e);};this.UIElement.oncontextmenu=function(e){_this78.UIOnContextMenu(e);};this.UIElement.onmousemove=function(e){_this78.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this78.UIOnMounseOut(e);};this.UIElement.onmouseleave=function(e){_this78.UIOnMouseleave(e);};};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14456
14458
  this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段宽度
14457
14459
  this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
14458
14460
  for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.IsDrawFirst)item.Draw();}for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.IsDrawFirst)item.Draw();}};this.GetStockData=function(symbol){if(!this.MapSymbol.has(symbol))return null;return this.MapSymbol.get(symbol);};this.ResetStatus=function(){this.Data.XOffset=0;this.Data.YOffset=0;};this.ResetSelectStatus=function(){var chart=this.GetReportChart();if(chart){chart.SelectedRow=-1;chart.SelectedFixedRow=-1;}};//设置事件回调
@@ -14469,14 +14471,14 @@ var result=this.MoveSelectedRow(1);if(result){if(result.Redraw)this.Draw();}brea
14469
14471
  if(this.MoveXOffset(-1))this.Draw();break;case 39://right
14470
14472
  if(this.MoveXOffset(1))this.Draw();break;case 13://Enter
14471
14473
  this.OnSelectedSymbol();break;}//不让滚动条滚动
14472
- if(e.preventDefault)e.preventDefault();else e.returnValue=false;};this.OnSelectedSymbol=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return false;var chart=this.ChartPaint[0];if(!chart)return false;var data=chart.GetSelectedSymbol();var selItem=this.MapSymbol.get(data.Symbol);if(!selItem)return false;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYBOARD_SELECTED);if(event&&event.Callback){event.Callback(event,{Data:data,RowData:selItem},this);}};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){if(chart.OnDblClick(x,y,e))this.OnSelectedSymbol();}};this.UIOnMouseDown=function(e){var _this78=this;this.DragYScroll=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;//if (e.button!=0) return;
14474
+ if(e.preventDefault)e.preventDefault();else e.returnValue=false;};this.OnSelectedSymbol=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return false;var chart=this.ChartPaint[0];if(!chart)return false;var data=chart.GetSelectedSymbol();var selItem=this.MapSymbol.get(data.Symbol);if(!selItem)return false;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYBOARD_SELECTED);if(event&&event.Callback){event.Callback(event,{Data:data,RowData:selItem},this);}};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){if(chart.OnDblClick(x,y,e))this.OnSelectedSymbol();}};this.UIOnMouseDown=function(e){var _this79=this;this.DragYScroll=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;//if (e.button!=0) return;
14473
14475
  if(clickData.Type==2&&(e.button==0||e.button==2))//点击行
14474
14476
  {if(clickData.Redraw==true)this.Draw();}else if(clickData.Type==5&&e.button==0)//右侧滚动条
14475
14477
  {var scroll=clickData.VScrollbar;if(scroll.Type==1)//顶部按钮
14476
14478
  {if(this.MoveYOffset(-1))this.Draw();}else if(scroll.Type==2)//底部按钮
14477
14479
  {if(this.MoveYOffset(1))this.Draw();}else if(scroll.Type==3)//滚动条
14478
14480
  {this.DragYScroll={Click:{X:x,Y:y},LastMove:{X:x,Y:y}};}else if(scroll.Type==4)//滚动条内部
14479
- {if(this.SetYOffset(scroll.Pos))this.Draw();}}}document.onmousemove=function(e){_this78.DocOnMouseMove(e);};document.onmouseup=function(e){_this78.DocOnMouseUp(e);};};//去掉右键菜单
14481
+ {if(this.SetYOffset(scroll.Pos))this.Draw();}}}document.onmousemove=function(e){_this79.DocOnMouseMove(e);};document.onmouseup=function(e){_this79.DocOnMouseUp(e);};};//去掉右键菜单
14480
14482
  this.UIOnContextMenu=function(e){e.preventDefault();};this.UIOnMouseMove=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;};this.UIOnMounseOut=function(e){};this.UIOnMouseleave=function(e){};this.DocOnMouseMove=function(e){this.DragMove.PreMove.X=this.DragMove.Move.X;this.DragMove.PreMove.Y=this.DragMove.Move.Y;this.DragMove.Move.X=e.clientX;this.DragMove.Move.Y=e.clientX;//if (this.DragMove.Move.X!=this.DragMove.PreMove.X || this.DragMove.Move.Y!=this.DragMove.PreMove.Y)
14481
14483
  // this.StopAutoDragScrollTimer();
14482
14484
  if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;if(this.DragYScroll){var chart=this.ChartPaint[0];if(!chart||!chart.VScrollbar)return;this.DragYScroll.LastMove.X=x;this.DragYScroll.LastMove.Y=y;var pos=chart.VScrollbar.GetScrollPostionByPoint(x,y);if(this.SetYOffset(pos))this.Draw();}};this.DocOnMouseUp=function(e){//清空事件
@@ -14565,7 +14567,7 @@ var height=this.DivElement.offsetHeight;var width=this.DivElement.offsetWidth;if
14565
14567
  this.CanvasElement.height*=pixelTatio;this.CanvasElement.width*=pixelTatio;JSConsole.Chart.Log('[JSScrollBarChart::OnSize] devicePixelRatio='+window.devicePixelRatio+', height='+this.CanvasElement.height+', width='+this.CanvasElement.width);if(this.JSChartContainer&&this.JSChartContainer.OnSize){this.JSChartContainer.OnSize();}};this.SetOption=function(option){var chart=this.CreateJSScrollBarChartContainer(option);if(!chart)return false;this.JSChartContainer=chart;this.DivElement.JSChart=this;//div中保存一份
14566
14568
  if(option.EnableResize==true)this.CreateResizeListener();if(option.OnCreatedCallback)option.OnCreatedCallback(chart);chart.Draw();};this.CreateJSScrollBarChartContainer=function(option){var chart=new JSScrollBarChartContainer(this.CanvasElement);chart.Create(option);if(IFrameSplitOperator.IsNumber(option.DelayDragFrequency))chart.DelayDragFrequency=option.DelayDragFrequency;this.SetChartBorder(chart,option);//注册事件
14567
14569
  if(option.EventCallback){for(var i=0;i<option.EventCallback.length;++i){var item=option.EventCallback[i];chart.AddEventCallback(item);}}return chart;};this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14568
- chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;if(IFrameSplitOperator.IsBool(item.AutoLeft))chart.AutoMargin.Left=item.AutoLeft;if(IFrameSplitOperator.IsBool(item.AutoRight))chart.AutoMargin.Right=item.AutoRight;};this.CreateResizeListener=function(){var _this79=this;this.ResizeListener=new ResizeObserver(function(entries){_this79.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSScrollBarChart::OnDivResize] entries=",entries);this.OnSize();};/////////////////////////////////////////////////////////////////////////////
14570
+ chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;if(IFrameSplitOperator.IsBool(item.AutoLeft))chart.AutoMargin.Left=item.AutoLeft;if(IFrameSplitOperator.IsBool(item.AutoRight))chart.AutoMargin.Right=item.AutoRight;};this.CreateResizeListener=function(){var _this80=this;this.ResizeListener=new ResizeObserver(function(entries){_this80.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSScrollBarChart::OnDivResize] entries=",entries);this.OnSize();};/////////////////////////////////////////////////////////////////////////////
14569
14571
  //对外接口
14570
14572
  //事件回调
14571
14573
  this.AddEventCallback=function(obj){if(this.JSChartContainer&&typeof this.JSChartContainer.AddEventCallback=='function'){JSConsole.Chart.Log('[JSScrollBarChart:AddEventCallback] obj=',obj);this.JSChartContainer.AddEventCallback(obj);}};//重新加载配置
@@ -14598,28 +14600,28 @@ this.HQChart=null;this.ChartDestroy=function()//销毁
14598
14600
  //{event:事件id, callback:回调函数}
14599
14601
  this.AddEventCallback=function(object){if(!object||!object.event||!object.callback)return;var data={Callback:object.callback,Source:object};this.mapEvent.set(object.event,data);};this.RemoveEventCallback=function(eventid){if(!this.mapEvent.has(eventid))return;this.mapEvent.delete(eventid);};this.GetEventCallback=function(id)//获取事件回调
14600
14602
  {if(!this.mapEvent.has(id))return null;var item=this.mapEvent.get(id);return item;};//创建
14601
- this.Create=function(option){var _this80=this;this.UIElement.JSChartContainer=this;//创建等待提示
14603
+ this.Create=function(option){var _this81=this;this.UIElement.JSChartContainer=this;//创建等待提示
14602
14604
  this.ChartSplashPaint=new ChartSplashPaint();this.ChartSplashPaint.Canvas=this.Canvas;this.ChartSplashPaint.SetTitle(this.LoadDataSplashTitle);this.ChartSplashPaint.IsEnableSplash=true;//创建框架
14603
14605
  this.Frame=new JSScrollBarFrame();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.ChartSplashPaint.Frame=this.Frame;//背景
14604
- var chart=new ScrollBarBGChart();chart.ChartFrame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.GetEventCallback=function(id){return _this80.GetEventCallback(id);};this.ChartPaint.push(chart);//创建滑块
14605
- var chart=new SliderChart();chart.ChartFrame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.OffsetData=this.XOffsetData;chart.GetEventCallback=function(id){return _this80.GetEventCallback(id);};this.SliderChart=chart;this.ChartPaint.push(chart);//this.UIElement.ondblclick=(e)=>{ this.UIOnDblClick(e); }
14606
- this.UIElement.onmousedown=function(e){_this80.UIOnMouseDown(e);};this.UIElement.oncontextmenu=function(e){_this80.UIOnContextMenu(e);};this.UIElement.onmousemove=function(e){_this80.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this80.UIOnMounseOut(e);};this.UIElement.onmouseleave=function(e){_this80.UIOnMouseleave(e);};//手机拖拽
14606
+ var chart=new ScrollBarBGChart();chart.ChartFrame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.GetEventCallback=function(id){return _this81.GetEventCallback(id);};this.ChartPaint.push(chart);//创建滑块
14607
+ var chart=new SliderChart();chart.ChartFrame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.OffsetData=this.XOffsetData;chart.GetEventCallback=function(id){return _this81.GetEventCallback(id);};this.SliderChart=chart;this.ChartPaint.push(chart);//this.UIElement.ondblclick=(e)=>{ this.UIOnDblClick(e); }
14608
+ this.UIElement.onmousedown=function(e){_this81.UIOnMouseDown(e);};this.UIElement.oncontextmenu=function(e){_this81.UIOnContextMenu(e);};this.UIElement.onmousemove=function(e){_this81.UIOnMouseMove(e);};this.UIElement.onmouseout=function(e){_this81.UIOnMounseOut(e);};this.UIElement.onmouseleave=function(e){_this81.UIOnMouseleave(e);};//手机拖拽
14607
14609
  //this.UIElement.ontouchstart=(e)=> { this.OnTouchStart(e); }
14608
14610
  //this.UIElement.ontouchmove=(e)=> {this.OnTouchMove(e); }
14609
14611
  //this.UIElement.ontouchend=(e)=> {this.OnTouchEnd(e); }
14610
14612
  };//创建一个图形
14611
- this.CreateChartPaint=function(name){var _this81=this;var chart=g_ChartPaintFactory.Create(name);if(!chart)return null;chart.ChartFrame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.Data=this.Frame.Data;chart.GetEventCallback=function(id){return _this81.GetEventCallback(id);};chart.GetHQChartCallback=function(){return _this81.GetHQChart();};return chart;};this.GetChartPaintByClassName=function(name){for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.ClassName==name){return{Chart:item,Index:i};}}return null;};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14613
+ this.CreateChartPaint=function(name){var _this82=this;var chart=g_ChartPaintFactory.Create(name);if(!chart)return null;chart.ChartFrame=this.Frame;chart.ChartBorder=this.Frame.ChartBorder;chart.Canvas=this.Canvas;chart.Data=this.Frame.Data;chart.GetEventCallback=function(id){return _this82.GetEventCallback(id);};chart.GetHQChartCallback=function(){return _this82.GetHQChart();};return chart;};this.GetChartPaintByClassName=function(name){for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.ClassName==name){return{Chart:item,Index:i};}}return null;};this.Draw=function(){if(this.UIElement.width<=0||this.UIElement.height<=0)return;this.Canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
14612
14614
  this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段宽度
14613
14615
  if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash){this.Frame.Draw({IsEnableSplash:this.ChartSplashPaint.IsEnableSplash});this.ChartSplashPaint.Draw();return;}this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
14614
14616
  for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.IsDrawFirst)item.Draw();}for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.IsDrawFirst)item.Draw();}};this.OnSize=function(){if(!this.Frame)return;this.SetSizeChange(true);this.Draw();};this.SetSizeChange=function(bChanged){for(var i=0;i<this.ChartPaint.length;++i){var chart=this.ChartPaint[i];if(chart)chart.SizeChange=bChanged;}};this.UpdateFrameMaxMin=function(){var max=null,min=null;for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item.GetMaxMin)continue;var range=item.GetMaxMin();if(range==null||range.Max==null||range.Min==null)continue;if(max==null||max<range.Max)max=range.Max;if(min==null||min>range.Min)min=range.Min;}if(IFrameSplitOperator.IsNumber(max)&&IFrameSplitOperator.IsNumber(min)){this.Frame.HorizontalMax=max;this.Frame.HorizontalMin=min;}};//未启动
14615
- this.UIOnDblClick=function(e){};this.CancelDragTimer=function(){if(this.DragTimer){clearTimeout(this.DragTimer);this.DragTimer=null;}};this.UIOnMouseDown=function(e){var _this82=this;this.CancelDragTimer();this.DragSlider=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;if(this.SliderChart){var clickData=this.SliderChart.PtInChart(x,y);if(!clickData){if(!this.Frame.PtInClient(x,y))return;//滚动块直接移动到鼠标点击的位置
14617
+ this.UIOnDblClick=function(e){};this.CancelDragTimer=function(){if(this.DragTimer){clearTimeout(this.DragTimer);this.DragTimer=null;}};this.UIOnMouseDown=function(e){var _this83=this;this.CancelDragTimer();this.DragSlider=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;if(this.SliderChart){var clickData=this.SliderChart.PtInChart(x,y);if(!clickData){if(!this.Frame.PtInClient(x,y))return;//滚动块直接移动到鼠标点击的位置
14616
14618
  var index=this.Frame.GetXData(x);index=Math.round(index);var pageRange=this.GetPageRange();var showCount=pageRange.ShowCount;var start=index-parseInt(showCount/2);if(start<0)start=0;var end=start+showCount;if(end>=this.Frame.XPointCount){end=this.Frame.XPointCount-1;start=end-showCount;}var drag={UpdateData:{StartIndex:start,EndIndex:end,Type:3}};this.DragUpdate(drag);return;}this.DragSlider={Click:{X:e.clientX,Y:e.clientY},LastMove:{X:e.clientX,Y:e.clientY},Data:clickData};this.DragSlider.DrawCount=0;//重绘次数
14617
- }document.onmousemove=function(e){_this82.DocOnMouseMove(e);};document.onmouseup=function(e){_this82.DocOnMouseUp(e);};};//去掉右键菜单
14619
+ }document.onmousemove=function(e){_this83.DocOnMouseMove(e);};document.onmouseup=function(e){_this83.DocOnMouseUp(e);};};//去掉右键菜单
14618
14620
  this.UIOnContextMenu=function(e){e.preventDefault();};this.UIOnMouseMove=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;if(this.DragSlider)return;var mouseStatus=mouseStatus={Cursor:"default"};;//鼠标状态
14619
- var item=this.SliderChart.PtInChart(x,y);if(item){switch(item.Data.Type){case 0:mouseStatus={Cursor:"grab",Name:"SliderChart"};break;case 1:case 2:mouseStatus={Cursor:"col-resize",Name:"SliderChart"};break;}}if(mouseStatus)this.UIElement.style.cursor=mouseStatus.Cursor;};this.UIOnMounseOut=function(e){};this.UIOnMouseleave=function(e){};this.DocOnMouseMove=function(e){var _this83=this;this.DragMove.PreMove.X=this.DragMove.Move.X;this.DragMove.PreMove.Y=this.DragMove.Move.Y;this.DragMove.Move.X=e.clientX;this.DragMove.Move.Y=e.clientX;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;JSConsole.Chart.Log('[JSScrollBarChartContainer::DocOnMouseMove] x='+x+', y='+y);if(this.DragSlider){var drag=this.DragSlider;var moveSetp=(e.clientX-drag.LastMove.X)*pixelTatio;if(Math.abs(moveSetp)<1)return;var pageRange=this.GetPageRange();var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();this.SliderChart.DragMode=true;var type=drag.Data.Data.Type;var xStart=this.SliderChart.XStart+moveSetp;var xEnd=this.SliderChart.XEnd+moveSetp;if(type==0)//整体移动
14621
+ var item=this.SliderChart.PtInChart(x,y);if(item){switch(item.Data.Type){case 0:mouseStatus={Cursor:"grab",Name:"SliderChart"};break;case 1:case 2:mouseStatus={Cursor:"col-resize",Name:"SliderChart"};break;}}if(mouseStatus)this.UIElement.style.cursor=mouseStatus.Cursor;};this.UIOnMounseOut=function(e){};this.UIOnMouseleave=function(e){};this.DocOnMouseMove=function(e){var _this84=this;this.DragMove.PreMove.X=this.DragMove.Move.X;this.DragMove.PreMove.Y=this.DragMove.Move.Y;this.DragMove.Move.X=e.clientX;this.DragMove.Move.Y=e.clientX;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;JSConsole.Chart.Log('[JSScrollBarChartContainer::DocOnMouseMove] x='+x+', y='+y);if(this.DragSlider){var drag=this.DragSlider;var moveSetp=(e.clientX-drag.LastMove.X)*pixelTatio;if(Math.abs(moveSetp)<1)return;var pageRange=this.GetPageRange();var left=this.Frame.ChartBorder.GetLeft();var right=this.Frame.ChartBorder.GetRight();this.SliderChart.DragMode=true;var type=drag.Data.Data.Type;var xStart=this.SliderChart.XStart+moveSetp;var xEnd=this.SliderChart.XEnd+moveSetp;if(type==0)//整体移动
14620
14622
  {if(xStart<left)//第1页
14621
14623
  {xStart=pageRange.First.XStart;xEnd=pageRange.First.XEnd;}else if(xEnd>=right){xStart=pageRange.Last.XStart;xEnd=pageRange.Last.XEnd;}this.SliderChart.XStart=xStart;this.SliderChart.XEnd=xEnd;}else if(type==1)//左移动
14622
- {if(xStart<=left){xStart=pageRange.First.XStart;}else if(xStart>=right){xStart=pageRange.Last.XEnd;}this.SliderChart.XStart=xStart;}else if(type==2){if(xEnd>=right){xEnd=pageRange.Last.XEnd;}else if(xEnd<=left){xEnd=pageRange.First.XStart;}this.SliderChart.XEnd=xEnd;}drag.UpdateData={XStart:xStart,XEnd:xEnd,Type:type};drag.LastMove.X=e.clientX;drag.LastMove.Y=e.clientY;if(drag.DrawCount==0){this.DragUpdate(drag);}else{this.DragTimer=setTimeout(function(){_this83.DragUpdate(_this83.DragSlider);},this.DelayDragFrequency);}}};this.DocOnMouseUp=function(e){//清空事件
14624
+ {if(xStart<=left){xStart=pageRange.First.XStart;}else if(xStart>=right){xStart=pageRange.Last.XEnd;}this.SliderChart.XStart=xStart;}else if(type==2){if(xEnd>=right){xEnd=pageRange.Last.XEnd;}else if(xEnd<=left){xEnd=pageRange.First.XStart;}this.SliderChart.XEnd=xEnd;}drag.UpdateData={XStart:xStart,XEnd:xEnd,Type:type};drag.LastMove.X=e.clientX;drag.LastMove.Y=e.clientY;if(drag.DrawCount==0){this.DragUpdate(drag);}else{this.DragTimer=setTimeout(function(){_this84.DragUpdate(_this84.DragSlider);},this.DelayDragFrequency);}}};this.DocOnMouseUp=function(e){//清空事件
14623
14625
  document.onmousemove=null;document.onmouseup=null;this.CancelDragTimer();var dragSlider=this.DragSlider;this.DragMove=null;this.DragSlider=null;this.SliderChart.DragMode=false;this.DragUpdate(dragSlider);};this.DragUpdate=function(dragData){if(!dragData||!dragData.UpdateData)return;this.UpdateXDataOffset(dragData.UpdateData);this.Draw();++dragData.DrawCount;};this.Reset=function(option){this.SourceData=null;this.XOffsetData.Start=-1;this.XOffsetData.End=-1;this.XOffsetData.Count=0;this.Frame.Data=null;for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];item.Data=null;}if(this.ChartSplashPaint)this.ChartSplashPaint.IsEnableSplash=true;if(option.Draw)this.Draw();};//外部更新滑块 obj={ Start: , End: }
14624
14626
  this.UpdateSlider=function(obj){if(this.SliderChart.DragMode)return;var bSizeChange=false;if((this.AutoMargin.Left||this.AutoMargin.Right)&&obj.Border){if(this.AutoMargin.Left){if(this.Frame.ChartBorder.Left!=obj.Border.Left)bSizeChange=true;}if(this.AutoMargin.Right){if(this.Frame.ChartBorder.Right!=obj.Border.Right)bSizeChange=true;}}var data=obj.Data;if(this.XOffsetData.Start==obj.Start&&this.XOffsetData.End==obj.End&&this.SourceData==data&&!bSizeChange)return;this.SourceData=data;var count=data.Data.length;if(IFrameSplitOperator.IsNumber(obj.RightSpaceCount))count+=obj.RightSpaceCount;this.Frame.XPointCount=count;this.Frame.Data=data;this.XOffsetData.Count=count;this.XOffsetData.Start=obj.Start;this.XOffsetData.End=obj.End;for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];item.Data=data;}if(this.AutoMargin.Left&&obj.Border){if(IFrameSplitOperator.IsNumber(obj.Border.Left))this.Frame.ChartBorder.Left=obj.Border.Left;}if(this.AutoMargin.Right&&obj.Border){if(IFrameSplitOperator.IsNumber(obj.Border.Right))this.Frame.ChartBorder.Right=obj.Border.Right;}this.UpdateFrameMaxMin();if(this.ChartSplashPaint)this.ChartSplashPaint.IsEnableSplash=false;if(obj.Draw)this.Draw();};//移动滑块
14625
14627
  this.UpdateXDataOffset=function(obj){if(!obj)return;var type=obj.Type;if(obj.Type==0){var start=this.Frame.GetXData(obj.XStart);start=parseInt(start+0.5);//四舍五入
@@ -14693,13 +14695,13 @@ this.SelectedClassName="UMyChart_MenuItem_Tr_Selected";this.RestoreFocusDelay=10
14693
14695
  "UMyChart_MenuItem_Td_Arrow"//箭头
14694
14696
  ];this.Inital=function(hqchart,option){this.HQChart=hqchart;this.MouseDownlistenerPtr=this.OnWindowMouseDown.bind(this);window.addEventListener('mousedown',this.MouseDownlistenerPtr);};this.Destroy=function(){if(this.MouseDownlistenerPtr){window.removeEventListener('mousedown',this.MouseDownlistenerPtr);this.MouseDownlistenerPtr=null;}};//创建菜单
14695
14697
  this.CreatePopMenu=function(data){this.Clear();if(!IFrameSplitOperator.IsNonEmptyArray(data.Menu))return;var root=document.createElement("div");root.className="UMyChart_PopMenu";var table=document.createElement("table");table.className="UMyChart_PopMenu_Table";root.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_PopMenu_Tbody";table.appendChild(tbody);var rootData={Root:root,TBody:tbody,Table:table};root.JSMenuData=rootData;for(var i=0;i<data.Menu.length;++i){var item=data.Menu[i];if(item.Name==JSPopMenu.SEPARATOR_LINE_NAME){var trSeparator=this.CreateSeparatorTr();if(trSeparator)tbody.appendChild(trSeparator);continue;}var trDom=this.CreateMenu(rootData,item);tbody.appendChild(trDom);}document.body.appendChild(root);this.RootDOM=root;this.TBodyDOM=tbody;if(IFrameSplitOperator.IsNumber(data.Position))this.Data.Position=data.Position;if(data.ClickCallback)this.ClickCallback=data.ClickCallback;if(data.RestoreFocusCallback)this.RestoreFocusCallback=data.RestoreFocusCallback;};//清除菜单
14696
- this.Clear=function(){this.Data.Menu=[];this.Data.Position=JSPopMenu.POSITION_ID.RIGHT_MENU_ID;this.ClickCallback=null;if(!this.RootDOM)return;document.body.removeChild(this.RootDOM);this.RootDOM=null;this.TBodyDOM=null;for(var i=0;i<this.ArySubRootDOM.length;++i){document.body.removeChild(this.ArySubRootDOM[i]);}this.ArySubRootDOM=[];};this.CreateMenu=function(parentItem,item){var _this84=this;var trDom=document.createElement("tr");trDom.className='UMyChart_MenuItem_Tr';if(item.Disable===true)trDom.classList.add('UMyChart_DrawTool_Disable_Tr');var prtTdDom=null;for(var i=0;i<this.AryTDClassName.length;++i){var tdDom=document.createElement("td");tdDom.className=this.AryTDClassName[i];if(i==0)//图标
14698
+ this.Clear=function(){this.Data.Menu=[];this.Data.Position=JSPopMenu.POSITION_ID.RIGHT_MENU_ID;this.ClickCallback=null;if(!this.RootDOM)return;document.body.removeChild(this.RootDOM);this.RootDOM=null;this.TBodyDOM=null;for(var i=0;i<this.ArySubRootDOM.length;++i){document.body.removeChild(this.ArySubRootDOM[i]);}this.ArySubRootDOM=[];};this.CreateMenu=function(parentItem,item){var _this85=this;var trDom=document.createElement("tr");trDom.className='UMyChart_MenuItem_Tr';if(item.Disable===true)trDom.classList.add('UMyChart_DrawTool_Disable_Tr');var prtTdDom=null;for(var i=0;i<this.AryTDClassName.length;++i){var tdDom=document.createElement("td");tdDom.className=this.AryTDClassName[i];if(i==0)//图标
14697
14699
  {if(item.Checked){var spanDom=document.createElement("span");spanDom.className=this.CheckedClassName;spanDom.style["font-size"]="10px";tdDom.appendChild(spanDom);}}else if(i==1)//内容
14698
14700
  {tdDom.innerText=item.Name;}else if(i==2)//快捷方式
14699
14701
  {if(item.Text)tdDom.innerText=item.Text;}else if(i==3)//箭头
14700
14702
  {if(IFrameSplitOperator.IsNonEmptyArray(item.SubMenu)){var spanDom=document.createElement("span");spanDom.className=this.RightArrowClassName;spanDom.style["font-size"]="10px";tdDom.appendChild(spanDom);}}trDom.appendChild(tdDom);}if(IFrameSplitOperator.IsNonEmptyArray(item.SubMenu))//子菜单
14701
- {var subRoot=document.createElement("div");subRoot.className="UMyChart_PopSubMenu";var subTable=document.createElement("table");subTable.className="UMyChart_PopMenu_Table";subRoot.appendChild(subTable);var subTbody=document.createElement("tbody");subTbody.className="UMyChart_PopMenu_TBody";subTable.appendChild(subTbody);var subRootData={Root:subRoot,TBody:subTbody,Table:subTable};subRoot.JSMenuData=subRootData;var preTrDom=null;for(var i=0;i<item.SubMenu.length;++i){var subItem=item.SubMenu[i];if(subItem.Name==JSPopMenu.SEPARATOR_LINE_NAME){var trSeparator=this.CreateSeparatorTr();if(trSeparator)subTbody.appendChild(trSeparator);continue;}var subTrDom=this.CreateMenu(subRootData,subItem);preTrDom=subTrDom;subTbody.appendChild(subTrDom);}trDom.onmouseover=function(e){_this84.OnMouseOver(e,parentItem,trDom,subRoot);};document.body.appendChild(subRoot);this.ArySubRootDOM.push(subRoot);}else{if(item.Disable===true){}else{trDom.onmousedown=function(e){_this84.OnClickMenu(e,item,false);};//菜单点击
14702
- trDom.onmouseover=function(e){_this84.OnMouseOver(e,parentItem);};}}return trDom;};this.CreateSeparatorTr=function(){var trSeparator=document.createElement("tr");trSeparator.className='UMyChart_MenuItem_Tr_Separator';var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Status_Separator";trSeparator.appendChild(tdDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Separator";trSeparator.appendChild(tdDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Separator";trSeparator.appendChild(tdDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Separator";trSeparator.appendChild(tdDom);return trSeparator;};//弹tab菜单
14703
+ {var subRoot=document.createElement("div");subRoot.className="UMyChart_PopSubMenu";var subTable=document.createElement("table");subTable.className="UMyChart_PopMenu_Table";subRoot.appendChild(subTable);var subTbody=document.createElement("tbody");subTbody.className="UMyChart_PopMenu_TBody";subTable.appendChild(subTbody);var subRootData={Root:subRoot,TBody:subTbody,Table:subTable};subRoot.JSMenuData=subRootData;var preTrDom=null;for(var i=0;i<item.SubMenu.length;++i){var subItem=item.SubMenu[i];if(subItem.Name==JSPopMenu.SEPARATOR_LINE_NAME){var trSeparator=this.CreateSeparatorTr();if(trSeparator)subTbody.appendChild(trSeparator);continue;}var subTrDom=this.CreateMenu(subRootData,subItem);preTrDom=subTrDom;subTbody.appendChild(subTrDom);}trDom.onmouseover=function(e){_this85.OnMouseOver(e,parentItem,trDom,subRoot);};document.body.appendChild(subRoot);this.ArySubRootDOM.push(subRoot);}else{if(item.Disable===true){}else{trDom.onmousedown=function(e){_this85.OnClickMenu(e,item,false);};//菜单点击
14704
+ trDom.onmouseover=function(e){_this85.OnMouseOver(e,parentItem);};}}return trDom;};this.CreateSeparatorTr=function(){var trSeparator=document.createElement("tr");trSeparator.className='UMyChart_MenuItem_Tr_Separator';var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Status_Separator";trSeparator.appendChild(tdDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Separator";trSeparator.appendChild(tdDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Separator";trSeparator.appendChild(tdDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_MenuItem_Td_Separator";trSeparator.appendChild(tdDom);return trSeparator;};//弹tab菜单
14703
14705
  this.PopupMenuByTab=function(rtTab){if(!this.RootDOM)return;if(!rtTab)return;if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();var xLeft=rtTab.Left;var yTop=rtTab.Top-this.RootDOM.offsetHeight;this.RootDOM.style.visibility='visible';this.RootDOM.style.top=yTop+"px";this.RootDOM.style.left=xLeft+"px";};//弹右键菜单
14704
14706
  this.PopupMenuByRight=function(x,y){if(!this.RootDOM)return;if(!IFrameSplitOperator.IsNumber(x)||!IFrameSplitOperator.IsNumber(y))return;if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();//菜单在当前屏幕无法显示需要调整
14705
14707
  var menuHeight=this.RootDOM.offsetHeight;var yMenuBottom=y+menuHeight;var yBottom=window.innerHeight-15;if(yMenuBottom>yBottom)y=yBottom-menuHeight;var menuWidth=this.RootDOM.offsetWidth;var yMenuRight=x+menuWidth;var yRight=window.innerWidth-15;if(yMenuRight>yRight)x=yRight-menuWidth;this.RootDOM.style.visibility='visible';this.RootDOM.style.top=y+"px";this.RootDOM.style.left=x+"px";};//下拉菜单
@@ -14738,17 +14740,17 @@ CMD_ZOOM_FONT_ID:11,//字体放大
14738
14740
  CMD_ZOOM_OUT_FONT_ID:12,//字体缩小
14739
14741
  CMD_MODIFY_TEXT_ID:13,//随机生成文字内容
14740
14742
  CMD_ADVANCED_SETTING_ID:14//高级设置
14741
- };function JSDialogDrawTool(){this.AryChartGroup=[{Title:"线段",AryChart:[{Title:'线段',ClassName:'hqchart_drawtool icon-draw_line',Type:0,Data:{ID:"线段"}},{Title:'线段信息',ClassName:'hqchart_drawtool icon-infoline',Type:0,Data:{ID:"InfoLine"}},{Title:'射线',ClassName:'hqchart_drawtool icon-draw_rays',Type:0,Data:{ID:"射线"}},{Title:"趋势线角度",ClassName:"hqchart_drawtool icon-qushixianjiaodu",Type:0,Data:{ID:"TrendAngle"}},{Title:'标价线',ClassName:'hqchart_drawtool icon-price_line',Type:0,Data:{ID:"标价线"}},{Title:'垂直线',ClassName:'hqchart_drawtool icon-vertical_line',Type:0,Data:{ID:"垂直线"}},{Title:'十字线',ClassName:'hqchart_drawtool icon-tubiao_shizixian',Type:0,Data:{ID:"十字线"}},{Title:'箭头',ClassName:'hqchart_drawtool icon-bottom-arrow-solid',Type:0,Data:{ID:"箭头"}},{Title:'大箭头',ClassName:'hqchart_drawtool icon-big_arrow',Type:0,Data:{ID:"ArrowMarker"}},{Title:'趋势线',ClassName:'hqchart_drawtool icon-draw_trendline',Type:0,Data:{ID:"趋势线"}},{Title:'水平线',ClassName:'hqchart_drawtool icon-draw_hline',Type:0,Data:{ID:"水平线"}},{Title:'水平射线',ClassName:'hqchart_drawtool icon-tubiao_shuipingshexian',Type:0,Data:{ID:"水平射线"}},{Title:'涂鸦线段',ClassName:'hqchart_drawtool icon-draw_line',Type:0,Data:{ID:"涂鸦线段"}},{Title:'阻速线',ClassName:'hqchart_drawtool icon-draw_resline',Type:0,Data:{ID:"阻速线"}},{Title:'通达信阻速线',ClassName:'hqchart_drawtool icon-draw_resline',Type:0,Data:{ID:"阻速线2"}},{Title:'江恩角度线',ClassName:'hqchart_drawtool icon-jiangenjiaoduxian',Type:0,Data:{ID:"江恩角度线"}},{Title:'通达信江恩角度线',ClassName:'hqchart_drawtool icon-jiangenjiaoduxian',Type:0,Data:{ID:"江恩角度线2"}}]},{Title:"通道",AryChart:[{Title:'平行线',ClassName:'hqchart_drawtool icon-draw_parallel_lines',Type:0,Data:{ID:"平行线"}},{Title:'水平线段',ClassName:'hqchart_drawtool icon-draw_hlinesegment',Type:0,Data:{ID:"水平线段"}},{Title:'平行射线',ClassName:'hqchart_drawtool icon-draw_p_rays_lines',Type:0,Data:{ID:"平行射线"}},{Title:'平行通道',ClassName:'hqchart_drawtool icon-draw_parallelchannel',Type:0,Data:{ID:"平行通道"}},{Title:'价格通道线',ClassName:'hqchart_drawtool icon-draw_pricechannel',Type:0,Data:{ID:"价格通道线"}},{Title:'箱型线',ClassName:'hqchart_drawtool icon-draw_box',Type:0,Data:{ID:"箱型线"}},{Title:"不相交通道",ClassName:"hqchart_drawtool icon-buxiangjiaojiao",Type:0,Data:{ID:"DisjointChannel"}},{Title:"平滑顶/底",ClassName:"hqchart_drawtool icon-tubiao_buxiangjiaotongdao",Type:0,Data:{ID:"FlatTop"}},{Title:"波段线",ClassName:'hqchart_drawtool icon-draw_waveband',Type:0,Data:{ID:"波段线"}},{Title:"百分比线",ClassName:'hqchart_drawtool icon-PercentageLine',Type:0,Data:{ID:"百分比线"}},{Title:"黄金分割",ClassName:'hqchart_drawtool icon-GoldenSection',Type:0,Data:{ID:"黄金分割"}},{Title:"线形回归线",ClassName:'hqchart_drawtool icon-linear_3',Type:0,Data:{ID:"线形回归线"}},{Title:"线形回归带",ClassName:'hqchart_drawtool icon-linear_1',Type:0,Data:{ID:"线形回归带"}},{Title:"延长线形回归带",ClassName:'hqchart_drawtool icon-linear_2',Type:0,Data:{ID:"延长线形回归带"}}]},{Title:"形状",AryChart:[{Title:'圆弧线',ClassName:'hqchart_drawtool icon-draw_arc',Type:0,Data:{ID:"圆弧线"}},{Title:'矩形',ClassName:'hqchart_drawtool icon-rectangle',Type:0,Data:{ID:"矩形"}},{Title:'平行四边形',ClassName:'hqchart_drawtool icon-draw_quadrangle',Type:0,Data:{ID:"平行四边形"}},{Title:'三角形',ClassName:'hqchart_drawtool icon-draw_triangle',Type:0,Data:{ID:"三角形"}},{Title:'圆',ClassName:'hqchart_drawtool icon-draw_circle',Type:0,Data:{ID:"圆"}},{Title:'对称角度',ClassName:'hqchart_drawtool icon-draw_symangle',Type:0,Data:{ID:"对称角度"}}]},{Title:"波浪线",AryChart:[{Title:'M头W底',ClassName:'hqchart_drawtool icon-draw_wavemw',Type:0,Data:{ID:"M头W底"}},{Title:'头肩型',ClassName:'hqchart_drawtool icon-draw_head_shoulders_bt',Type:0,Data:{ID:"头肩型"}},{Title:'波浪尺',ClassName:'hqchart_drawtool icon-waveruler',Type:0,Data:{ID:"波浪尺"}},{Title:'AB波浪尺',ClassName:'hqchart_drawtool icon-waveruler',Type:0,Data:{ID:"AB波浪尺"}}]},{Title:"斐波那契",AryChart:[{Title:'斐波那契周期线',ClassName:'hqchart_drawtool icon-feibonaqizhouqixian',Type:0,Data:{ID:"斐波那契周期线"}},{Title:'斐波那契楔形',ClassName:'hqchart_drawtool icon-feibonaqiqixing',Type:0,Data:{ID:"FibWedge"}},{Title:'斐波那契回撤',ClassName:'hqchart_drawtool icon-feibonaqihuiche',Type:0,Data:{ID:"FibRetracement"}},{Title:'斐波那契速度阻力扇',ClassName:'hqchart_drawtool icon-feibonaqisuduzulishan',Type:0,Data:{ID:"FibSpeedResistanceFan"}}]},{Title:"测量工具",AryChart:[{Title:'价格范围',ClassName:'hqchart_drawtool icon-shijianfanwei',Type:0,Data:{ID:"PriceRange"}},{Title:'时间范围',ClassName:'hqchart_drawtool icon-jiagefanwei',Type:0,Data:{ID:"DateRange"}},{Title:"价格和时间范围",ClassName:"hqchart_drawtool icon-jiagefanwei",Type:0,Data:{ID:"DatePriceRange"}},{Title:"监测线",ClassName:"hqchart_drawtool icon-jiance",Type:0,Data:{ID:"MonitorLine"}},{Title:"固定范围成交量分布图",ClassName:"hqchart_drawtool icon-tubiao_gudingfanweichengjiaoliangfenbutu",Type:0,Data:{ID:"固定范围成交量分布图"}}]},{Title:"文字",AryChart:[{Title:"文字",ClassName:'hqchart_drawtool icon-draw_text',Type:0,Data:{ID:"文本"}},{Title:"锚点文字",ClassName:'hqchart_drawtool icon-maodianwenzi',Type:0,Data:{ID:"AnchoredText"}},{Title:"注释",ClassName:'hqchart_drawtool icon-maodian ',Type:0,Data:{ID:"Note"}},{Title:'价格标签',ClassName:'hqchart_drawtool icon-Tooltip',Type:0,Data:{ID:"PriceLabel"}},{Title:'价格注释',ClassName:'hqchart_drawtool icon-tooltiptext',Type:0,Data:{ID:"PriceNote"}},{Title:'向上箭头',ClassName:'iconfont icon-arrow_up',Type:0,Data:{ID:"icon-arrow_up"}},{Title:'向下箭头',ClassName:'iconfont icon-arrow_down',Type:0,Data:{ID:"icon-arrow_down"}},{Title:'向左箭头',ClassName:'iconfont icon-arrow_left',Type:0,Data:{ID:"icon-arrow_left"}},{Title:'向右箭头',ClassName:'iconfont icon-arrow_right',Type:0,Data:{ID:"icon-arrow_right"}}]}];this.ToolConfig={Title:"工具",AryTool:[{Title:"选中",ClassName:'hqchart_drawtool icon-arrow',Type:1,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_SELECTED_ID}},{Title:'尺子',ClassName:'hqchart_drawtool icon-ruler',Type:0,Data:{ID:"尺子"}},{Title:"磁铁",ClassName:'hqchart_drawtool icon-xifu',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ENABLE_MAGNET_ID}},{Title:"点击切换颜色",ClassName:'hqchart_drawtool icon-fangkuai',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID}},{Title:"擦除画线",ClassName:'hqchart_drawtool icon-a-xiangpicachuxiangpica',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ERASE_DRAW_CHART_ID}},{Title:"删除所有画线",ClassName:'hqchart_drawtool icon-recycle_bin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_ALL_DRAW_CHART_ID}}]};this.DivDialog=null;this.AryDivChart=[];this.HQChart=null;this.LineColor='rgb(255,140,0)';this.LineColorIndex=0;this.RandomLineColor=["rgb(255,69,0)","rgb(0,191,255)","rgb(255,0,255)","rgb(255,105,180)"];this.LineWidth=1*GetDevicePixelRatio();this.ColumnCount=5;this.DragTitle=null;this.RestoreFocusDelay=800;this.Inital=function(hqchart){this.LineColor=g_JSChartResource.DrawPicture.LineColor[0];this.RandomLineColor.splice(0,0,this.LineColor);this.HQChart=hqchart;};this.Create=function(){var _this85=this;var divDom=document.createElement("div");divDom.className='UMyChart_DrawTool_Dialog_Div';var divTitle=document.createElement("div");divTitle.className='UMyChart_DrawTool_Title_Div';divTitle.innerText="画图工具";divTitle.onmousedown=function(e){_this85.OnMouseDownTitle(e);};var divClose=document.createElement("div");divClose.className='UMyChart_DrawTool_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this85.Close(e);};divTitle.appendChild(divClose);divDom.appendChild(divTitle);var table=document.createElement("table");table.className="UMyChart_DrawTool_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_DrawTool_Tbody";table.appendChild(tbody);for(var i=0;i<this.AryChartGroup.length;++i){var item=this.AryChartGroup[i];if(!IFrameSplitOperator.IsNonEmptyArray(item.AryChart))continue;this.CreateChartGroupItem(item,tbody);var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Group_End_Tr';tbody.appendChild(trDom);}//工具栏
14742
- this.CreateToolGroup(tbody);this.DivDialog=divDom;document.body.appendChild(divDom);};this.Destroy=function(){this.AryDivChart=[];if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);}this.DivDialog=null;};this.CreateChartGroupItem=function(groupItem,tbody){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Group_Tr';tbody.appendChild(trDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Group_Td";tdDom.innerText=groupItem.Title;tdDom.colSpan=this.ColumnCount;trDom.appendChild(tdDom);var chartCount=groupItem.AryChart.length;for(var i=0,j=0;i<chartCount;){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Tr';for(j=0;j<this.ColumnCount&&i<chartCount;++j,++i){var item=groupItem.AryChart[i];this.CreateChartItem(item,trDom);}tbody.appendChild(trDom);}};this.CreateChartItem=function(item,trDom){var _this86=this;var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Td";tdDom.title=item.Title;trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_DrawTool_Span");tdDom.appendChild(spanDom);var data={Item:item,TD:tdDom,Span:spanDom};tdDom.onmousedown=function(e){_this86.OnClickItem(e,data);};//点击
14743
+ };function JSDialogDrawTool(){this.AryChartGroup=[{Title:"线段",AryChart:[{Title:'线段',ClassName:'hqchart_drawtool icon-draw_line',Type:0,Data:{ID:"线段"}},{Title:'线段信息',ClassName:'hqchart_drawtool icon-infoline',Type:0,Data:{ID:"InfoLine"}},{Title:'射线',ClassName:'hqchart_drawtool icon-draw_rays',Type:0,Data:{ID:"射线"}},{Title:"趋势线角度",ClassName:"hqchart_drawtool icon-qushixianjiaodu",Type:0,Data:{ID:"TrendAngle"}},{Title:'标价线',ClassName:'hqchart_drawtool icon-price_line',Type:0,Data:{ID:"标价线"}},{Title:'垂直线',ClassName:'hqchart_drawtool icon-vertical_line',Type:0,Data:{ID:"垂直线"}},{Title:'十字线',ClassName:'hqchart_drawtool icon-tubiao_shizixian',Type:0,Data:{ID:"十字线"}},{Title:'箭头',ClassName:'hqchart_drawtool icon-bottom-arrow-solid',Type:0,Data:{ID:"箭头"}},{Title:'大箭头',ClassName:'hqchart_drawtool icon-big_arrow',Type:0,Data:{ID:"ArrowMarker"}},{Title:'趋势线',ClassName:'hqchart_drawtool icon-draw_trendline',Type:0,Data:{ID:"趋势线"}},{Title:'水平线',ClassName:'hqchart_drawtool icon-draw_hline',Type:0,Data:{ID:"水平线"}},{Title:'水平射线',ClassName:'hqchart_drawtool icon-tubiao_shuipingshexian',Type:0,Data:{ID:"水平射线"}},{Title:'涂鸦线段',ClassName:'hqchart_drawtool icon-draw_line',Type:0,Data:{ID:"涂鸦线段"}},{Title:'阻速线',ClassName:'hqchart_drawtool icon-draw_resline',Type:0,Data:{ID:"阻速线"}},{Title:'通达信阻速线',ClassName:'hqchart_drawtool icon-draw_resline',Type:0,Data:{ID:"阻速线2"}},{Title:'江恩角度线',ClassName:'hqchart_drawtool icon-jiangenjiaoduxian',Type:0,Data:{ID:"江恩角度线"}},{Title:'通达信江恩角度线',ClassName:'hqchart_drawtool icon-jiangenjiaoduxian',Type:0,Data:{ID:"江恩角度线2"}}]},{Title:"通道",AryChart:[{Title:'平行线',ClassName:'hqchart_drawtool icon-draw_parallel_lines',Type:0,Data:{ID:"平行线"}},{Title:'水平线段',ClassName:'hqchart_drawtool icon-draw_hlinesegment',Type:0,Data:{ID:"水平线段"}},{Title:'平行射线',ClassName:'hqchart_drawtool icon-draw_p_rays_lines',Type:0,Data:{ID:"平行射线"}},{Title:'平行通道',ClassName:'hqchart_drawtool icon-draw_parallelchannel',Type:0,Data:{ID:"平行通道"}},{Title:'价格通道线',ClassName:'hqchart_drawtool icon-draw_pricechannel',Type:0,Data:{ID:"价格通道线"}},{Title:'箱型线',ClassName:'hqchart_drawtool icon-draw_box',Type:0,Data:{ID:"箱型线"}},{Title:"不相交通道",ClassName:"hqchart_drawtool icon-buxiangjiaojiao",Type:0,Data:{ID:"DisjointChannel"}},{Title:"平滑顶/底",ClassName:"hqchart_drawtool icon-tubiao_buxiangjiaotongdao",Type:0,Data:{ID:"FlatTop"}},{Title:"波段线",ClassName:'hqchart_drawtool icon-draw_waveband',Type:0,Data:{ID:"波段线"}},{Title:"百分比线",ClassName:'hqchart_drawtool icon-PercentageLine',Type:0,Data:{ID:"百分比线"}},{Title:"黄金分割",ClassName:'hqchart_drawtool icon-GoldenSection',Type:0,Data:{ID:"黄金分割"}},{Title:"线形回归线",ClassName:'hqchart_drawtool icon-linear_3',Type:0,Data:{ID:"线形回归线"}},{Title:"线形回归带",ClassName:'hqchart_drawtool icon-linear_1',Type:0,Data:{ID:"线形回归带"}},{Title:"延长线形回归带",ClassName:'hqchart_drawtool icon-linear_2',Type:0,Data:{ID:"延长线形回归带"}}]},{Title:"形状",AryChart:[{Title:'圆弧线',ClassName:'hqchart_drawtool icon-draw_arc',Type:0,Data:{ID:"圆弧线"}},{Title:'矩形',ClassName:'hqchart_drawtool icon-rectangle',Type:0,Data:{ID:"矩形"}},{Title:'平行四边形',ClassName:'hqchart_drawtool icon-draw_quadrangle',Type:0,Data:{ID:"平行四边形"}},{Title:'三角形',ClassName:'hqchart_drawtool icon-draw_triangle',Type:0,Data:{ID:"三角形"}},{Title:'圆',ClassName:'hqchart_drawtool icon-draw_circle',Type:0,Data:{ID:"圆"}},{Title:'对称角度',ClassName:'hqchart_drawtool icon-draw_symangle',Type:0,Data:{ID:"对称角度"}}]},{Title:"波浪线",AryChart:[{Title:'M头W底',ClassName:'hqchart_drawtool icon-draw_wavemw',Type:0,Data:{ID:"M头W底"}},{Title:'头肩型',ClassName:'hqchart_drawtool icon-draw_head_shoulders_bt',Type:0,Data:{ID:"头肩型"}},{Title:'波浪尺',ClassName:'hqchart_drawtool icon-waveruler',Type:0,Data:{ID:"波浪尺"}},{Title:'AB波浪尺',ClassName:'hqchart_drawtool icon-waveruler',Type:0,Data:{ID:"AB波浪尺"}}]},{Title:"斐波那契",AryChart:[{Title:'斐波那契周期线',ClassName:'hqchart_drawtool icon-feibonaqizhouqixian',Type:0,Data:{ID:"斐波那契周期线"}},{Title:'斐波那契楔形',ClassName:'hqchart_drawtool icon-feibonaqiqixing',Type:0,Data:{ID:"FibWedge"}},{Title:'斐波那契回撤',ClassName:'hqchart_drawtool icon-feibonaqihuiche',Type:0,Data:{ID:"FibRetracement"}},{Title:'斐波那契速度阻力扇',ClassName:'hqchart_drawtool icon-feibonaqisuduzulishan',Type:0,Data:{ID:"FibSpeedResistanceFan"}}]},{Title:"测量工具",AryChart:[{Title:'价格范围',ClassName:'hqchart_drawtool icon-shijianfanwei',Type:0,Data:{ID:"PriceRange"}},{Title:'时间范围',ClassName:'hqchart_drawtool icon-jiagefanwei',Type:0,Data:{ID:"DateRange"}},{Title:"价格和时间范围",ClassName:"hqchart_drawtool icon-jiagefanwei",Type:0,Data:{ID:"DatePriceRange"}},{Title:"监测线",ClassName:"hqchart_drawtool icon-jiance",Type:0,Data:{ID:"MonitorLine"}},{Title:"固定范围成交量分布图",ClassName:"hqchart_drawtool icon-tubiao_gudingfanweichengjiaoliangfenbutu",Type:0,Data:{ID:"固定范围成交量分布图"}}]},{Title:"文字",AryChart:[{Title:"文字",ClassName:'hqchart_drawtool icon-draw_text',Type:0,Data:{ID:"文本"}},{Title:"锚点文字",ClassName:'hqchart_drawtool icon-maodianwenzi',Type:0,Data:{ID:"AnchoredText"}},{Title:"注释",ClassName:'hqchart_drawtool icon-maodian ',Type:0,Data:{ID:"Note"}},{Title:'价格标签',ClassName:'hqchart_drawtool icon-Tooltip',Type:0,Data:{ID:"PriceLabel"}},{Title:'价格注释',ClassName:'hqchart_drawtool icon-tooltiptext',Type:0,Data:{ID:"PriceNote"}},{Title:'向上箭头',ClassName:'iconfont icon-arrow_up',Type:0,Data:{ID:"icon-arrow_up"}},{Title:'向下箭头',ClassName:'iconfont icon-arrow_down',Type:0,Data:{ID:"icon-arrow_down"}},{Title:'向左箭头',ClassName:'iconfont icon-arrow_left',Type:0,Data:{ID:"icon-arrow_left"}},{Title:'向右箭头',ClassName:'iconfont icon-arrow_right',Type:0,Data:{ID:"icon-arrow_right"}}]}];this.ToolConfig={Title:"工具",AryTool:[{Title:"选中",ClassName:'hqchart_drawtool icon-arrow',Type:1,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_SELECTED_ID}},{Title:'尺子',ClassName:'hqchart_drawtool icon-ruler',Type:0,Data:{ID:"尺子"}},{Title:"磁铁",ClassName:'hqchart_drawtool icon-xifu',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ENABLE_MAGNET_ID}},{Title:"点击切换颜色",ClassName:'hqchart_drawtool icon-fangkuai',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID}},{Title:"擦除画线",ClassName:'hqchart_drawtool icon-a-xiangpicachuxiangpica',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ERASE_DRAW_CHART_ID}},{Title:"删除所有画线",ClassName:'hqchart_drawtool icon-recycle_bin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_ALL_DRAW_CHART_ID}}]};this.DivDialog=null;this.AryDivChart=[];this.HQChart=null;this.LineColor='rgb(255,140,0)';this.LineColorIndex=0;this.RandomLineColor=["rgb(255,69,0)","rgb(0,191,255)","rgb(255,0,255)","rgb(255,105,180)"];this.LineWidth=1*GetDevicePixelRatio();this.ColumnCount=5;this.DragTitle=null;this.RestoreFocusDelay=800;this.Inital=function(hqchart){this.LineColor=g_JSChartResource.DrawPicture.LineColor[0];this.RandomLineColor.splice(0,0,this.LineColor);this.HQChart=hqchart;};this.Create=function(){var _this86=this;var divDom=document.createElement("div");divDom.className='UMyChart_DrawTool_Dialog_Div';var divTitle=document.createElement("div");divTitle.className='UMyChart_DrawTool_Title_Div';divTitle.innerText="画图工具";divTitle.onmousedown=function(e){_this86.OnMouseDownTitle(e);};var divClose=document.createElement("div");divClose.className='UMyChart_DrawTool_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this86.Close(e);};divTitle.appendChild(divClose);divDom.appendChild(divTitle);var table=document.createElement("table");table.className="UMyChart_DrawTool_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_DrawTool_Tbody";table.appendChild(tbody);for(var i=0;i<this.AryChartGroup.length;++i){var item=this.AryChartGroup[i];if(!IFrameSplitOperator.IsNonEmptyArray(item.AryChart))continue;this.CreateChartGroupItem(item,tbody);var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Group_End_Tr';tbody.appendChild(trDom);}//工具栏
14744
+ this.CreateToolGroup(tbody);this.DivDialog=divDom;document.body.appendChild(divDom);};this.Destroy=function(){this.AryDivChart=[];if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);}this.DivDialog=null;};this.CreateChartGroupItem=function(groupItem,tbody){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Group_Tr';tbody.appendChild(trDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Group_Td";tdDom.innerText=groupItem.Title;tdDom.colSpan=this.ColumnCount;trDom.appendChild(tdDom);var chartCount=groupItem.AryChart.length;for(var i=0,j=0;i<chartCount;){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Tr';for(j=0;j<this.ColumnCount&&i<chartCount;++j,++i){var item=groupItem.AryChart[i];this.CreateChartItem(item,trDom);}tbody.appendChild(trDom);}};this.CreateChartItem=function(item,trDom){var _this87=this;var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Td";tdDom.title=item.Title;trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_DrawTool_Span");tdDom.appendChild(spanDom);var data={Item:item,TD:tdDom,Span:spanDom};tdDom.onmousedown=function(e){_this87.OnClickItem(e,data);};//点击
14743
14745
  this.AryDivChart.push(data);};this.OnClickItem=function(e,data){console.log('[JSDialogDrawTool::OnClickChartItem] ',data);if(!data.Item||!data.Item.Data)return;var type=data.Item.Type;var id=data.Item.Data.ID;if(type==2&&id==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID){this.OnChangeLineColor(data);}else if(type==2&&id==JS_DRAWTOOL_MENU_ID.CMD_DELETE_ALL_DRAW_CHART_ID){this.DeleteAllChart();}else if(type==2&&id==JS_DRAWTOOL_MENU_ID.CMD_ERASE_DRAW_CHART_ID){this.ClearAllSelectedChart();this.ClearCurrnetDrawPicture();this.EnableEraseChart(true);}else if(type==1&&id==JS_DRAWTOOL_MENU_ID.CMD_SELECTED_ID){this.ClearAllSelectedChart();this.ClearCurrnetDrawPicture();this.EnableEraseChart(false);}else if(type==2&&id==JS_DRAWTOOL_MENU_ID.CMD_ENABLE_MAGNET_ID){this.ChangeMagnet(data);}else if(type==0){this.ClearAllSelectedChart();this.EnableEraseChart(false);data.Span.classList.remove("UMyChart_DrawTool_Span");data.Span.classList.add("UMyChart_DrawTool_Span_Selected");this.CreateDrawPicture(data);}};//清空选中状态
14744
- this.ClearAllSelectedChart=function(){for(var i=0;i<this.AryDivChart.length;++i){var item=this.AryDivChart[i];if(item.Item.Type==2)continue;item.Span.classList.remove("UMyChart_DrawTool_Span_Selected");item.Span.classList.add("UMyChart_DrawTool_Span");}};this.CreateToolGroup=function(tbody){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Group_Tr';tbody.appendChild(trDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Group_Td";tdDom.innerText=this.ToolConfig.Title;tdDom.colSpan=this.ColumnCount;trDom.appendChild(tdDom);var chartCount=this.ToolConfig.AryTool.length;for(var i=0,j=0;i<chartCount;){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Tr';for(j=0;j<this.ColumnCount&&i<chartCount;++j,++i){var item=this.ToolConfig.AryTool[i];this.CreateToolItem(item,trDom);}tbody.appendChild(trDom);}};this.CreateToolItem=function(item,trDom){var _this87=this;var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Td";tdDom.title=item.Title;trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_DrawTool_Span");tdDom.appendChild(spanDom);var data={Item:item,TD:tdDom,Span:spanDom};if(item.Type==2&&item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID)//颜色
14745
- {spanDom.style['color']=this.LineColor;}tdDom.onmousedown=function(e){_this87.OnClickItem(e,data);};//点击
14746
+ this.ClearAllSelectedChart=function(){for(var i=0;i<this.AryDivChart.length;++i){var item=this.AryDivChart[i];if(item.Item.Type==2)continue;item.Span.classList.remove("UMyChart_DrawTool_Span_Selected");item.Span.classList.add("UMyChart_DrawTool_Span");}};this.CreateToolGroup=function(tbody){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Group_Tr';tbody.appendChild(trDom);var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Group_Td";tdDom.innerText=this.ToolConfig.Title;tdDom.colSpan=this.ColumnCount;trDom.appendChild(tdDom);var chartCount=this.ToolConfig.AryTool.length;for(var i=0,j=0;i<chartCount;){var trDom=document.createElement("tr");trDom.className='UMyChart_DrawTool_Tr';for(j=0;j<this.ColumnCount&&i<chartCount;++j,++i){var item=this.ToolConfig.AryTool[i];this.CreateToolItem(item,trDom);}tbody.appendChild(trDom);}};this.CreateToolItem=function(item,trDom){var _this88=this;var tdDom=document.createElement("td");tdDom.className="UMyChart_DrawTool_Td";tdDom.title=item.Title;trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_DrawTool_Span");tdDom.appendChild(spanDom);var data={Item:item,TD:tdDom,Span:spanDom};if(item.Type==2&&item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID)//颜色
14747
+ {spanDom.style['color']=this.LineColor;}tdDom.onmousedown=function(e){_this88.OnClickItem(e,data);};//点击
14746
14748
  this.AryDivChart.push(data);};this.OnChangeLineColor=function(data){++this.LineColorIndex;var index=this.LineColorIndex%this.RandomLineColor.length;this.LineColor=this.RandomLineColor[index];data.Span.style['color']=this.LineColor;};//清空所有画图工具
14747
- this.DeleteAllChart=function(){if(!this.HQChart)return;this.HQChart.ClearChartDrawPicture();};this.SetEraseChartButtonStatus=function(enable){for(var i=0;i<this.AryDivChart.length;++i){var item=this.AryDivChart[i];if(item.Item.Type==2&&item.Item.Data&&item.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_ERASE_DRAW_CHART_ID){if(enable){if(item.Span.classList.contains("UMyChart_DrawTool_Span")){item.Span.classList.replace("UMyChart_DrawTool_Span","UMyChart_DrawTool_Span_Selected");}}else{if(item.Span.classList.contains("UMyChart_DrawTool_Span_Selected")){item.Span.classList.replace("UMyChart_DrawTool_Span_Selected","UMyChart_DrawTool_Span");}}break;}}};this.EnableEraseChart=function(enable){if(!this.HQChart)return;if(this.HQChart.EnableEraseChartDrawPicture==enable)return;this.HQChart.EnableEraseChartDrawPicture=enable;this.SetEraseChartButtonStatus(enable);};this.ChangeMagnet=function(data){if(!this.HQChart)return;var enable=true;if(this.HQChart.ChartDrawOption.Magnet){var item=this.HQChart.ChartDrawOption.Magnet;var enable=!item.Enable;}if(enable){this.HQChart.SetChartDrawOption({Magnet:{Enable:enable,Type:0}});data.Span.classList.remove("UMyChart_DrawTool_Span");data.Span.classList.add("UMyChart_DrawTool_Span_Selected");}else{this.HQChart.SetChartDrawOption({Magnet:{Enable:false}});data.Span.classList.remove("UMyChart_DrawTool_Span_Selected");data.Span.classList.add("UMyChart_DrawTool_Span");}};this.CreateDrawPicture=function(data){var _this88=this;if(!this.HQChart)return null;var option={LineColor:this.LineColor,//线段颜色
14749
+ this.DeleteAllChart=function(){if(!this.HQChart)return;this.HQChart.ClearChartDrawPicture();};this.SetEraseChartButtonStatus=function(enable){for(var i=0;i<this.AryDivChart.length;++i){var item=this.AryDivChart[i];if(item.Item.Type==2&&item.Item.Data&&item.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_ERASE_DRAW_CHART_ID){if(enable){if(item.Span.classList.contains("UMyChart_DrawTool_Span")){item.Span.classList.replace("UMyChart_DrawTool_Span","UMyChart_DrawTool_Span_Selected");}}else{if(item.Span.classList.contains("UMyChart_DrawTool_Span_Selected")){item.Span.classList.replace("UMyChart_DrawTool_Span_Selected","UMyChart_DrawTool_Span");}}break;}}};this.EnableEraseChart=function(enable){if(!this.HQChart)return;if(this.HQChart.EnableEraseChartDrawPicture==enable)return;this.HQChart.EnableEraseChartDrawPicture=enable;this.SetEraseChartButtonStatus(enable);};this.ChangeMagnet=function(data){if(!this.HQChart)return;var enable=true;if(this.HQChart.ChartDrawOption.Magnet){var item=this.HQChart.ChartDrawOption.Magnet;var enable=!item.Enable;}if(enable){this.HQChart.SetChartDrawOption({Magnet:{Enable:enable,Type:0}});data.Span.classList.remove("UMyChart_DrawTool_Span");data.Span.classList.add("UMyChart_DrawTool_Span_Selected");}else{this.HQChart.SetChartDrawOption({Magnet:{Enable:false}});data.Span.classList.remove("UMyChart_DrawTool_Span_Selected");data.Span.classList.add("UMyChart_DrawTool_Span");}};this.CreateDrawPicture=function(data){var _this89=this;if(!this.HQChart)return null;var option={LineColor:this.LineColor,//线段颜色
14748
14750
  LineWidth:this.LineWidth,//线段宽度
14749
14751
  PointColor:this.LineColor//点颜色
14750
- };var name=data.Item.Data.ID;if(["icon-arrow_up","icon-arrow_down","icon-arrow_left","icon-arrow_right"].includes(name))option=null;else if(name=="InfoLine")option.FormatLabelTextCallback=function(lableInfo){_this88.ChartInfoLine_FormatLabelText(lableInfo);};else if(name=="MonitorLine")option.FormatLabelTextCallback=function(lableInfo){_this88.ChartDrawMonitorLine_FormatLabelText(lableInfo);};this.HQChart.CreateChartDrawPicture(name,option,function(chart){_this88.OnFinishDrawPicture(chart,data);});};this.ClearCurrnetDrawPicture=function(){if(this.HQChart)this.HQChart.ClearCurrnetDrawPicture();};//画图工具绘制完成
14751
- this.OnFinishDrawPicture=function(chart,data){data.Span.classList.remove("UMyChart_DrawTool_Span_Selected");data.Span.classList.add("UMyChart_DrawTool_Span");};this.Show=function(x,y){if(!this.DivDialog)return;this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.Close=function(e){if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.OnMouseDownTitle=function(e){var _this89=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this89.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this89.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.ChartInfoLine_FormatLabelText=function(labelInfo){if(!IFrameSplitOperator.IsNonEmptyArray(labelInfo.AryValue))return;if(!labelInfo.Data||!IFrameSplitOperator.IsNonEmptyArray(labelInfo.Data.Data))return;for(var i=0;i<labelInfo.AryValue.length;++i){var item=labelInfo.AryValue[i];if(!IFrameSplitOperator.IsNumber(item.XValue)||item.XValue<0)return;}var startIndex=labelInfo.AryValue[0].XValue;var endIndex=labelInfo.AryValue[1].XValue;var startItem=labelInfo.Data.Data[startIndex];var endItem=labelInfo.Data.Data[endIndex];if(!startItem||!endItem)return;var isMinutePeriod=ChartData.IsMinutePeriod(labelInfo.Data.Period,true);labelInfo.AryText=[];labelInfo.AryText.push({Name:"起始日期: ",Text:IFrameSplitOperator.FormatDateString(startItem.Date),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});if(isMinutePeriod)labelInfo.AryText.push({Name:"起始时间: ",Text:IFrameSplitOperator.FormatTimeString(startItem.Time,"HH:MM"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});labelInfo.AryText.push({Name:"结束日期: ",Text:IFrameSplitOperator.FormatDateString(endItem.Date),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});if(isMinutePeriod)labelInfo.AryText.push({Name:"结束时间: ",Text:IFrameSplitOperator.FormatTimeString(endItem.Time,"HH:MM"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});//示例:计算一个斜率数据
14752
+ };var name=data.Item.Data.ID;if(["icon-arrow_up","icon-arrow_down","icon-arrow_left","icon-arrow_right"].includes(name))option=null;else if(name=="InfoLine")option.FormatLabelTextCallback=function(lableInfo){_this89.ChartInfoLine_FormatLabelText(lableInfo);};else if(name=="MonitorLine")option.FormatLabelTextCallback=function(lableInfo){_this89.ChartDrawMonitorLine_FormatLabelText(lableInfo);};this.HQChart.CreateChartDrawPicture(name,option,function(chart){_this89.OnFinishDrawPicture(chart,data);});};this.ClearCurrnetDrawPicture=function(){if(this.HQChart)this.HQChart.ClearCurrnetDrawPicture();};//画图工具绘制完成
14753
+ this.OnFinishDrawPicture=function(chart,data){data.Span.classList.remove("UMyChart_DrawTool_Span_Selected");data.Span.classList.add("UMyChart_DrawTool_Span");};this.Show=function(x,y){if(!this.DivDialog)return;this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.Close=function(e){if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.OnMouseDownTitle=function(e){var _this90=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this90.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this90.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.ChartInfoLine_FormatLabelText=function(labelInfo){if(!IFrameSplitOperator.IsNonEmptyArray(labelInfo.AryValue))return;if(!labelInfo.Data||!IFrameSplitOperator.IsNonEmptyArray(labelInfo.Data.Data))return;for(var i=0;i<labelInfo.AryValue.length;++i){var item=labelInfo.AryValue[i];if(!IFrameSplitOperator.IsNumber(item.XValue)||item.XValue<0)return;}var startIndex=labelInfo.AryValue[0].XValue;var endIndex=labelInfo.AryValue[1].XValue;var startItem=labelInfo.Data.Data[startIndex];var endItem=labelInfo.Data.Data[endIndex];if(!startItem||!endItem)return;var isMinutePeriod=ChartData.IsMinutePeriod(labelInfo.Data.Period,true);labelInfo.AryText=[];labelInfo.AryText.push({Name:"起始日期: ",Text:IFrameSplitOperator.FormatDateString(startItem.Date),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});if(isMinutePeriod)labelInfo.AryText.push({Name:"起始时间: ",Text:IFrameSplitOperator.FormatTimeString(startItem.Time,"HH:MM"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});labelInfo.AryText.push({Name:"结束日期: ",Text:IFrameSplitOperator.FormatDateString(endItem.Date),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});if(isMinutePeriod)labelInfo.AryText.push({Name:"结束时间: ",Text:IFrameSplitOperator.FormatTimeString(endItem.Time,"HH:MM"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});//示例:计算一个斜率数据
14752
14754
  var x=labelInfo.AryPoint[1].X-labelInfo.AryPoint[0].X;var y=labelInfo.AryPoint[1].Y-labelInfo.AryPoint[0].Y;var text="--";if(x!=0)text=''+(y/x).toFixed(4);labelInfo.AryText.push({Name:"斜率: ",Text:text,NameColor:"rgb(0,0,0)",TextColor:"rgb(238, 0, 238)"});labelInfo.AryText.push({Name:"其他: ",Text:'......',NameColor:"rgb(0,0,0)",TextColor:"rgb(156, 156, 156)"});};this.ChartDrawMonitorLine_FormatLabelText=function(labelInfo){if(!labelInfo.Data||!IFrameSplitOperator.IsNonEmptyArray(labelInfo.Data.Data))return;if(!IFrameSplitOperator.IsNumber(labelInfo.StartIndex)||labelInfo.StartIndex<0)return;var startItem=labelInfo.Data.Data[labelInfo.StartIndex];var endItem=labelInfo.Data.Data[labelInfo.Data.Data.length-1];labelInfo.YValue=endItem.Close;var isMinutePeriod=ChartData.IsMinutePeriod(labelInfo.Data.Period,true);labelInfo.AryText=[];labelInfo.AryText.push({Name:"起始: ",Text:IFrameSplitOperator.FormatDateString(startItem.Date,"MM-DD"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});if(isMinutePeriod)labelInfo.AryText.push({Name:"起始: ",Text:IFrameSplitOperator.FormatTimeString(startItem.Time,"HH:MM"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});labelInfo.AryText.push({Name:"最新: ",Text:IFrameSplitOperator.FormatDateString(endItem.Date,"MM-DD"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});if(isMinutePeriod)labelInfo.AryText.push({Name:"最新: ",Text:IFrameSplitOperator.FormatTimeString(endItem.Time,"HH:MM"),NameColor:"rgb(0,0,0)",TextColor:"rgb(30,10,30)"});labelInfo.AryText.push({Name:"ɑ: ",Text:"--.--",NameColor:"rgb(0, 0 ,255)",TextColor:"rgb(255, 165, 0)"});labelInfo.AryText.push({Name:"β: ",Text:"--.--",NameColor:"rgb(0 ,0 ,255)",TextColor:"rgb(238 ,121, 66)"});};}/////////////////////////////////////////////////////////////////////////////////////
14753
14755
  // 修改画图工具
14754
14756
  //
@@ -14759,8 +14761,8 @@ this.ColorButton=null;this.BGColorButton=null;this.FontColorButton=null;this.Bor
14759
14761
  this.RandomBGColor=["rgba(210,251,209,0.8)","rgb(217,217,253)","rgb(255,208,204)","rgb(252,249,206)"];//背景颜色
14760
14762
  this.RandomFontColor=["rgb(0,0,0)","rgb(255, 0, 0)","rgb(20, 255, 0)","rgb(255, 0, 255)"];//文字颜色
14761
14763
  this.RandomBorderColor=["rgb(0,0,0)","rgb(5, 246, 143)","rgb(139, 137, 137)","rgb(255, 20, 147)"];//边框颜色
14762
- this.AryButton=[{Title:"修改线段颜色",ClassName:'hqchart_drawtool icon-huabi',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID}},{Title:"修改字体颜色",ClassName:'hqchart_drawtool icon-zitiyanse',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID}},{Title:"修改背景颜色",ClassName:'hqchart_drawtool icon-zitibeijingse',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID}},{Title:"修改边框颜色",ClassName:'hqchart_drawtool icon-biankuang',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID}},{Title:"字体放大",ClassName:'hqchart_drawtool icon-zoomin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID}},{Title:"字体缩小",ClassName:'hqchart_drawtool icon-zoomout',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID}},{Title:"随机生成文字内容",ClassName:'hqchart_drawtool icon-bianji',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID}},{Title:"高级设置",ClassName:'hqchart_drawtool icon-setting',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID}},{Title:"上锁",ClassName:'hqchart_drawtool icon-lock',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID}},{Title:"删除图形",ClassName:'hqchart_drawtool icon-recycle_bin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID}}];this.RestoreFocusDelay=800;this.Inital=function(hqchart){this.HQChart=hqchart;};this.Destroy=function(){this.ChartPicture=null;this.ColorButton=null;if(this.DivDialog){document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Create=function(){var _this90=this;var divDom=document.createElement("div");divDom.className='UMyChart_Draw_Modify_Dialog_Div';var drgDiv=document.createElement("div");drgDiv.className="UMyChart_Draw_Modify_Dialog_Drag_Div";drgDiv.onmousedown=function(e){_this90.OnMouseDownTitle(e);};divDom.appendChild(drgDiv);var spanDom=document.createElement("span");spanDom.className="hqchart_drawtool icon-tuodong";spanDom.classList.add("UMyChart_DrawTool_Span");drgDiv.appendChild(spanDom);for(var i=0;i<this.AryButton.length;++i){var item=this.AryButton[i];this.CreateButtonItem(item,divDom);}this.DivDialog=divDom;document.body.appendChild(divDom);};this.CreateButtonItem=function(item,parentDivDom){var _this91=this;var divItem=document.createElement("div");divItem.className="UMyChart_Draw_Modify_Dialog_Button_Div";var spanTooltip=document.createElement("span");spanTooltip.className="UMyChart_Draw_Modify_Tooltip";spanTooltip.innerText=item.Title;divItem.appendChild(spanTooltip);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_DrawTool_Span");divItem.appendChild(spanDom);var data={Div:divItem,Span:spanDom,Parent:parentDivDom,Item:item,Tooltip:spanTooltip};divItem.onmousedown=function(e){_this91.OnClickButton(e,data);};//点击
14763
- divItem.onmouseover=function(e){_this91.OnHoverButton(e,data);};divItem.onmouseout=function(e){_this91.OnLeaveButton(e,data);};switch(item.Data.ID){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ColorButton=data;break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.BGColorButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.FontColorButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.BorderColorButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.LockButton=data;this.LockButton.Span.style['color']="rgb(220,220,220)";break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.FontZoomButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.FontZoomOutButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyTextButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedButton=data;divItem.style.display="none";break;}parentDivDom.appendChild(divItem);};this.OnClickButton=function(e,data){console.log('[JSDialogModifyDraw::OnClickButton] ',data);if(!data.Item||!data.Item.Data)return;var id=data.Item.Data.ID;switch(id){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ModifyLineColor();break;case JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID:this.DeleteDrawPicture();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.ModifyBGColor();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.ModifyFontColor();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.ModifyBorderColor();break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.ModifyLockChart();break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.ModifyFontZoom(1);break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.ModifyFontZoom(-1);break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyText();break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedSetting();break;}};this.OnHoverButton=function(e,data){//var x=e.clientX;
14764
+ this.AryButton=[{Title:"修改线段颜色",ClassName:'hqchart_drawtool icon-huabi',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID}},{Title:"修改字体颜色",ClassName:'hqchart_drawtool icon-zitiyanse',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID}},{Title:"修改背景颜色",ClassName:'hqchart_drawtool icon-zitibeijingse',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID}},{Title:"修改边框颜色",ClassName:'hqchart_drawtool icon-biankuang',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID}},{Title:"字体放大",ClassName:'hqchart_drawtool icon-zoomin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID}},{Title:"字体缩小",ClassName:'hqchart_drawtool icon-zoomout',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID}},{Title:"随机生成文字内容",ClassName:'hqchart_drawtool icon-bianji',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID}},{Title:"高级设置",ClassName:'hqchart_drawtool icon-setting',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID}},{Title:"上锁",ClassName:'hqchart_drawtool icon-lock',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID}},{Title:"删除图形",ClassName:'hqchart_drawtool icon-recycle_bin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID}}];this.RestoreFocusDelay=800;this.Inital=function(hqchart){this.HQChart=hqchart;};this.Destroy=function(){this.ChartPicture=null;this.ColorButton=null;if(this.DivDialog){document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Create=function(){var _this91=this;var divDom=document.createElement("div");divDom.className='UMyChart_Draw_Modify_Dialog_Div';var drgDiv=document.createElement("div");drgDiv.className="UMyChart_Draw_Modify_Dialog_Drag_Div";drgDiv.onmousedown=function(e){_this91.OnMouseDownTitle(e);};divDom.appendChild(drgDiv);var spanDom=document.createElement("span");spanDom.className="hqchart_drawtool icon-tuodong";spanDom.classList.add("UMyChart_DrawTool_Span");drgDiv.appendChild(spanDom);for(var i=0;i<this.AryButton.length;++i){var item=this.AryButton[i];this.CreateButtonItem(item,divDom);}this.DivDialog=divDom;document.body.appendChild(divDom);};this.CreateButtonItem=function(item,parentDivDom){var _this92=this;var divItem=document.createElement("div");divItem.className="UMyChart_Draw_Modify_Dialog_Button_Div";var spanTooltip=document.createElement("span");spanTooltip.className="UMyChart_Draw_Modify_Tooltip";spanTooltip.innerText=item.Title;divItem.appendChild(spanTooltip);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_DrawTool_Span");divItem.appendChild(spanDom);var data={Div:divItem,Span:spanDom,Parent:parentDivDom,Item:item,Tooltip:spanTooltip};divItem.onmousedown=function(e){_this92.OnClickButton(e,data);};//点击
14765
+ divItem.onmouseover=function(e){_this92.OnHoverButton(e,data);};divItem.onmouseout=function(e){_this92.OnLeaveButton(e,data);};switch(item.Data.ID){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ColorButton=data;break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.BGColorButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.FontColorButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.BorderColorButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.LockButton=data;this.LockButton.Span.style['color']="rgb(220,220,220)";break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.FontZoomButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.FontZoomOutButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyTextButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedButton=data;divItem.style.display="none";break;}parentDivDom.appendChild(divItem);};this.OnClickButton=function(e,data){console.log('[JSDialogModifyDraw::OnClickButton] ',data);if(!data.Item||!data.Item.Data)return;var id=data.Item.Data.ID;switch(id){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ModifyLineColor();break;case JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID:this.DeleteDrawPicture();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.ModifyBGColor();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.ModifyFontColor();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.ModifyBorderColor();break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.ModifyLockChart();break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.ModifyFontZoom(1);break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.ModifyFontZoom(-1);break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyText();break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedSetting();break;}};this.OnHoverButton=function(e,data){//var x=e.clientX;
14764
14766
  //data.Tooltip.style.left=x+"px";
14765
14767
  data.Tooltip.style.display="inline";};this.OnLeaveButton=function(e,data){data.Tooltip.style.display="none";};this.Close=function(e){if(!this.DivDialog)return;this.ChartPicture=null;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.DeleteDrawPicture=function(){if(this.ChartPicture&&this.HQChart){this.HQChart.ClearChartDrawPicture(this.ChartPicture);}this.Close();};this.OnClearChartDrawPicture=function(drawPicture){if(!this.IsShow())return;if(!drawPicture){this.Close();return;}if(this.ChartPicture&&drawPicture.Guid==this.ChartPicture.Guid)this.Close();};this.ShowButton=function(dom,diaplay){if(dom.style.display==diaplay)return;dom.style.display=diaplay;};this.GetRandomColor=function(currentColor,randomLineColor){var colorIndex=0;for(var i=0;i<randomLineColor.length;++i){if(currentColor==randomLineColor[i]){colorIndex=i+1;break;}}colorIndex=colorIndex%randomLineColor.length;var color=randomLineColor[colorIndex];return color;};this.ModifyLineColor=function(){if(!this.ChartPicture||!this.HQChart)return;var color=this.GetRandomColor(this.ChartPicture.LineColor,this.RandomLineColor);this.ChartPicture.LineColor=color;this.ChartPicture.PointColor=color;if(this.ColorButton)this.ColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
14766
14768
  this.HQChart.Draw();};this.ModifyFontColor=function(){if(!this.ChartPicture||!this.HQChart)return;if(this.ChartPicture.ClassName=="ChartDrawNote"){var color=this.GetRandomColor(this.ChartPicture.NoteTextColor,this.RandomFontColor);this.ChartPicture.NoteTextColor=color;}else{var color=this.GetRandomColor(this.ChartPicture.TextColor,this.RandomFontColor);this.ChartPicture.TextColor=color;}if(this.FontColorButton)this.FontColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
@@ -14768,7 +14770,7 @@ this.HQChart.Draw();};this.ModifyBGColor=function(){if(!this.ChartPicture||!this
14768
14770
  this.HQChart.Draw();};this.ModifyLockChart=function(){if(!this.ChartPicture||!this.HQChart)return;this.ChartPicture.EnableMove=!this.ChartPicture.EnableMove;if(this.LockButton)this.LockButton.Span.style['color']=this.ChartPicture.EnableMove?"rgb(220,220,220)":"rgb(0,0,0)";};this.ModifyBorderColor=function(){if(!this.ChartPicture||!this.HQChart)return;if(this.ChartPicture.ClassName=="ChartDrawNote"){var color=this.GetRandomColor(this.ChartPicture.NoteBorderColor,this.RandomBorderColor);this.ChartPicture.NoteBorderColor=color;}else{var color=this.GetRandomColor(this.ChartPicture.BorderColor,this.RandomBorderColor);this.ChartPicture.BorderColor=color;}if(this.BorderColorButton)this.BorderColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
14769
14771
  this.HQChart.Draw();};this.ModifyFontZoom=function(step){if(!this.ChartPicture||!this.HQChart)return;if(this.ChartPicture.FontOption.Size+step<=2)return;var chart=this.ChartPicture;chart.FontOption.Size+=step;if(chart.ClassName=="ChartDrawNote")chart.NoteFontOption.Size+=step;this.HQChart.Draw();};this.ModifyText=function(){if(!this.ChartPicture||!this.HQChart)return;var chart=this.ChartPicture;switch(chart.ClassName){case"ChartDrawPictureText":chart.Text=this.GetRandomText(chart.Text);break;case"ChartDrawAnchoredText":var text=null;if(IFrameSplitOperator.IsNonEmptyArray(chart.AryText))text=chart.AryText[0].Text;chart.AryText=[{Text:this.GetRandomText(text)},{Text:this.GetRandomText(null)}];break;case"ChartDrawNote":var text=null;if(IFrameSplitOperator.IsNonEmptyArray(chart.AryNoteText))text=chart.AryNoteText[0].Text;chart.AryNoteText=[{Text:this.GetRandomText(text)},{Text:this.GetRandomText(null)}];break;default:return;}this.HQChart.Draw();};this.GetRandomText=function(text){var ARY_TEXT=["下跌形态","反转十字星","低位档五阳线","倒V型反转","双顶","持续整理形态"];var index=this.GetRandomTestData(0,ARY_TEXT.length-1);for(var i=index;i<10;++i){var value=ARY_TEXT[i%ARY_TEXT.length];if(value!=text)return value;}};this.GetRandomTestData=function(min,max)//测试数据
14770
14772
  {min=Math.ceil(min);max=Math.floor(max);return Math.floor(Math.random()*(max-min+1))+min;//含最大值,含最小值
14771
- };this.Show=function(x,y){if(!this.DivDialog)this.Create();this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.SetChartPicture=function(chart){this.ChartPicture=chart;var bShowLineColor=true,bShowBGColor=false,bShowFontColor=false,bShowBorderColor=false,bShowFontZoom=false,bModifyText=false,bAdvanced=false;;var bgColor=null,fontColor=null,borderColor=null;var ARRAY_TEXT_CHART=['ChartDrawPriceLabel',"ChartDrawAnchoredText","ChartDrawPriceNote"];if(ARRAY_TEXT_CHART.includes(chart.ClassName)){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bShowFontZoom=true;if(chart.ClassName=="ChartDrawAnchoredText")bModifyText=true;bgColor=chart.BGColor;fontColor=chart.TextColor;borderColor=chart.BorderColor;}else if(chart.ClassName=="ChartDrawPictureText"){bModifyText=true;bShowFontZoom=true;bShowLineColor=true;}else if(chart.ClassName=="ChartDrawNote"){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bModifyText=true;bShowFontZoom=true;bgColor=chart.NoteBGColor;fontColor=chart.NoteTextColor;borderColor=chart.NoteBorderColor;}else if(chart.ClassName=="ChartDrawVolProfile"){bShowLineColor=false;bAdvanced=true;}else if(chart.ClassName=="ChartDrawPictureIconFont"){bShowFontZoom=true;}if(this.ColorButton){var item=this.ColorButton;this.ShowButton(item.Div,bShowLineColor?"inline":"none");if(bShowLineColor){item.Span.style['color']=chart.LineColor;}}if(this.BGColorButton){var item=this.BGColorButton;this.ShowButton(item.Div,bShowBGColor?"inline":"none");if(bShowBGColor){item.Span.style['color']=bgColor;}}if(this.FontColorButton){var item=this.FontColorButton;this.ShowButton(item.Div,bShowFontColor?"inline":"none");if(bShowFontColor){item.Span.style['color']=fontColor;}}if(this.BorderColorButton){var item=this.BorderColorButton;this.ShowButton(item.Div,bShowBorderColor?"inline":"none");if(bShowBorderColor){item.Span.style['color']=borderColor;}}if(this.LockButton){var item=this.LockButton;item.Span.style['color']=this.ChartPicture.EnableMove?"rgb(220,220,220)":"rgb(0,0,0)";}if(this.FontZoomButton){var item=this.FontZoomButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.FontZoomOutButton){var item=this.FontZoomOutButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.ModifyTextButton){var item=this.ModifyTextButton;this.ShowButton(item.Div,bModifyText?"inline":"none");}if(this.AdvancedButton){var item=this.AdvancedButton;this.ShowButton(item.Div,bAdvanced?"inline":"none");}};this.OnMouseDownTitle=function(e){var _this92=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this92.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this92.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};}/*
14773
+ };this.Show=function(x,y){if(!this.DivDialog)this.Create();this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.SetChartPicture=function(chart){this.ChartPicture=chart;var bShowLineColor=true,bShowBGColor=false,bShowFontColor=false,bShowBorderColor=false,bShowFontZoom=false,bModifyText=false,bAdvanced=false;;var bgColor=null,fontColor=null,borderColor=null;var ARRAY_TEXT_CHART=['ChartDrawPriceLabel',"ChartDrawAnchoredText","ChartDrawPriceNote"];if(ARRAY_TEXT_CHART.includes(chart.ClassName)){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bShowFontZoom=true;if(chart.ClassName=="ChartDrawAnchoredText")bModifyText=true;bgColor=chart.BGColor;fontColor=chart.TextColor;borderColor=chart.BorderColor;}else if(chart.ClassName=="ChartDrawPictureText"){bModifyText=true;bShowFontZoom=true;bShowLineColor=true;}else if(chart.ClassName=="ChartDrawNote"){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bModifyText=true;bShowFontZoom=true;bgColor=chart.NoteBGColor;fontColor=chart.NoteTextColor;borderColor=chart.NoteBorderColor;}else if(chart.ClassName=="ChartDrawVolProfile"){bShowLineColor=false;bAdvanced=true;}else if(chart.ClassName=="ChartDrawPictureIconFont"){bShowFontZoom=true;}if(this.ColorButton){var item=this.ColorButton;this.ShowButton(item.Div,bShowLineColor?"inline":"none");if(bShowLineColor){item.Span.style['color']=chart.LineColor;}}if(this.BGColorButton){var item=this.BGColorButton;this.ShowButton(item.Div,bShowBGColor?"inline":"none");if(bShowBGColor){item.Span.style['color']=bgColor;}}if(this.FontColorButton){var item=this.FontColorButton;this.ShowButton(item.Div,bShowFontColor?"inline":"none");if(bShowFontColor){item.Span.style['color']=fontColor;}}if(this.BorderColorButton){var item=this.BorderColorButton;this.ShowButton(item.Div,bShowBorderColor?"inline":"none");if(bShowBorderColor){item.Span.style['color']=borderColor;}}if(this.LockButton){var item=this.LockButton;item.Span.style['color']=this.ChartPicture.EnableMove?"rgb(220,220,220)":"rgb(0,0,0)";}if(this.FontZoomButton){var item=this.FontZoomButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.FontZoomOutButton){var item=this.FontZoomOutButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.ModifyTextButton){var item=this.ModifyTextButton;this.ShowButton(item.Div,bModifyText?"inline":"none");}if(this.AdvancedButton){var item=this.AdvancedButton;this.ShowButton(item.Div,bAdvanced?"inline":"none");}};this.OnMouseDownTitle=function(e){var _this93=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this93.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this93.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};}/*
14772
14774
  Copyright (c) 2018 jones
14773
14775
 
14774
14776
  http://www.apache.org/licenses/LICENSE-2.0
@@ -14784,13 +14786,13 @@ this.CorssCursorFont=g_JSChartResource.PopMinuteChart.CorssCursor.Font;//十字
14784
14786
  this.FrameSplitTextFont=g_JSChartResource.PopMinuteChart.Frame.Font;//刻度文字
14785
14787
  this.Minute={Option:JSPopMinuteChart.GetMinuteOption(),JSChart:null,Date:null,Symbol:null,Name:null,Chart:null};this.ClearCache=function(){this.Minute.Date=null;this.Minute.Symbol=null;this.Minute.Name=null;this.Minute.Chart=null;};this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsObject(option.Option)){var item=CloneData(option.Option);//复制一份出来
14786
14788
  this.Minute.Option=(0,_assign2.default)(this.Minute.Option,item);}if(option.EnableMarkBG)//标记背景
14787
- {this.HQChart.CreateExtendChart("MarkPopMinutePaint");}}};this.Create=function(){var _this93=this;var divDom=document.createElement('div');divDom.className='jchart_pop_minute_dailog';divDom.id=this.ID;var divTitle=document.createElement("div");divTitle.className='jschart_pop_minute_chart_Title_Div';divTitle.onmousedown=function(e){_this93.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divInfoText=document.createElement("div");divInfoText.className="jschart_pop_minute_chart_Title";divInfoText.innerText="分时图";this.DivInfoText=divInfoText;divTitle.appendChild(divInfoText);var divClose=document.createElement("div");divClose.className='jschart_pop_minute_chart_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this93.Close(e);};divTitle.appendChild(divClose);var divChart=document.createElement('div');divChart.className='jschart_pop_minute_chart';divDom.appendChild(divChart);this.TitleBox={DivTitle:divTitle,DivName:divInfoText,DivColor:divClose};this.DivDialog=divDom;var chart=JSChart.Init(divChart);this.Minute.JSChart=chart;//语言跟主图保持一致
14788
- if(this.HQChart)this.Minute.Option.Language=g_JSChartLocalization.GetLanguageName(this.HQChart.LanguageID);this.Minute.Option.OnCreatedCallback=function(chart){_this93.OnCreateHQChart(chart);};this.Minute.Option.NetworkFilter=function(data,callback){_this93.NetworkFilter(data,callback);};var keyDownEvent={event:JSCHART_EVENT_ID.ON_KEYDOWN,//键盘消息
14789
- callback:function callback(event,data,obj){_this93.OnKeyDown(event,data,obj);}};var reloadResourceEvent={event:JSCHART_EVENT_ID.ON_RELOAD_RESOURCE,callback:function callback(event,data,obj){_this93.LoadChartResource(obj);}};var splitXEvent={event:JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE,callback:function callback(event,data,obj){_this93.OnSplitXCoordinate(event,data,obj);}};var splitYEvent={event:JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE,callback:function callback(event,data,obj){_this93.OnSplitYCoordinate(event,data,obj);}};if(Array.isArray(this.Minute.Option.EventCallback)){this.Minute.Option.EventCallback.unshift(keyDownEvent,reloadResourceEvent,splitYEvent,splitYEvent);}else{this.Minute.Option.EventCallback=[keyDownEvent,reloadResourceEvent,splitXEvent,splitYEvent];}chart.SetOption(this.Minute.Option);//设置K线配置
14789
+ {this.HQChart.CreateExtendChart("MarkPopMinutePaint");}}};this.Create=function(){var _this94=this;var divDom=document.createElement('div');divDom.className='jchart_pop_minute_dailog';divDom.id=this.ID;var divTitle=document.createElement("div");divTitle.className='jschart_pop_minute_chart_Title_Div';divTitle.onmousedown=function(e){_this94.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divInfoText=document.createElement("div");divInfoText.className="jschart_pop_minute_chart_Title";divInfoText.innerText="分时图";this.DivInfoText=divInfoText;divTitle.appendChild(divInfoText);var divClose=document.createElement("div");divClose.className='jschart_pop_minute_chart_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this94.Close(e);};divTitle.appendChild(divClose);var divChart=document.createElement('div');divChart.className='jschart_pop_minute_chart';divDom.appendChild(divChart);this.TitleBox={DivTitle:divTitle,DivName:divInfoText,DivColor:divClose};this.DivDialog=divDom;var chart=JSChart.Init(divChart);this.Minute.JSChart=chart;//语言跟主图保持一致
14790
+ if(this.HQChart)this.Minute.Option.Language=g_JSChartLocalization.GetLanguageName(this.HQChart.LanguageID);this.Minute.Option.OnCreatedCallback=function(chart){_this94.OnCreateHQChart(chart);};this.Minute.Option.NetworkFilter=function(data,callback){_this94.NetworkFilter(data,callback);};var keyDownEvent={event:JSCHART_EVENT_ID.ON_KEYDOWN,//键盘消息
14791
+ callback:function callback(event,data,obj){_this94.OnKeyDown(event,data,obj);}};var reloadResourceEvent={event:JSCHART_EVENT_ID.ON_RELOAD_RESOURCE,callback:function callback(event,data,obj){_this94.LoadChartResource(obj);}};var splitXEvent={event:JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE,callback:function callback(event,data,obj){_this94.OnSplitXCoordinate(event,data,obj);}};var splitYEvent={event:JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE,callback:function callback(event,data,obj){_this94.OnSplitYCoordinate(event,data,obj);}};if(Array.isArray(this.Minute.Option.EventCallback)){this.Minute.Option.EventCallback.unshift(keyDownEvent,reloadResourceEvent,splitYEvent,splitYEvent);}else{this.Minute.Option.EventCallback=[keyDownEvent,reloadResourceEvent,splitXEvent,splitYEvent];}chart.SetOption(this.Minute.Option);//设置K线配置
14790
14792
  document.body.appendChild(divDom);this.UpdateStyle();};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;if(this.TitleBGColor)this.TitleBox.DivTitle.style['background-color']=this.TitleBGColor;if(this.TitleColor)this.TitleBox.DivName.style['color']=this.TitleColor;};this.NetworkFilter=function(data,callback){if(!this.HQChart||!this.HQChart.NetworkFilter)return;if(data)data.PopMinuteData={Date:this.Date};//弹出分时图额外数据
14791
14793
  if(data.Name=='MinuteChartContainer::RequestMinuteData')//分时图数据对接
14792
14794
  {data.Request.Data.date=this.Date;data.Name="MinuteChartContainer::RequestPopMinuteData";data.Explain="指定日期分时数据";};this.HQChart.NetworkFilter(data,callback);};this.OnCreateHQChart=function(chart){this.LoadChartResource(chart);};this.Destroy=function(){if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);}this.DivDialog=null;this.TitleBox=null;this.Minute.JSChart=null;};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.Show=function(data,x,y){if(!this.DivDialog)this.Create();if(!data.Symbol||!IFrameSplitOperator.IsPlusNumber(data.Date))return;this.Date=data.Date;this.Symbol=this.Name=data.Symbol;if(data.Name)this.Name=data.Name;this.Chart=data.Chart;this.UpdateDialogTitle();if(this.Minute.JSChart){this.Minute.JSChart.ChangeSymbol(this.Symbol);this.MarkKLineBG();}if(!this.Minute.Option.EnableResize){if(this.Minute.JSChart)this.Minute.JSChart.OnSize();}//超出窗口调整位置
14793
- var height=this.DivDialog.offsetHeight;var width=this.DivDialog.offsetWidth;var xRight=window.innerWidth-5;var ybottom=window.innerHeight-5;if(x+width>xRight)x=xRight-width;if(y+height>ybottom)y=ybottom-height;this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.UpdateDialogTitle=function(){var title=this.Name+' '+IFrameSplitOperator.FormatDateString(this.Date)+' \u5206\u65F6\u56FE PageUp/PageDown\u7FFB\u9875';this.TitleBox.DivName.innerText=title;};this.Close=function(e){if(!this.DivDialog)return;this.ClearCache();this.DivDialog.style.visibility='hidden';this.ClearMarkKLineBG();};this.OnMouseDownTitle=function(e){var _this94=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this94.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this94.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.ReloadResource=function(option){this.TitleColor=g_JSChartResource.PopMinuteChart.TitleColor;this.TitleBGColor=g_JSChartResource.PopMinuteChart.TitleBGColor;this.BGColor=g_JSChartResource.PopMinuteChart.BGColor;this.BorderColor=g_JSChartResource.PopMinuteChart.BorderColor;this.TitleFont=g_JSChartResource.PopMinuteChart.Title.Font;this.CorssCursorFont=g_JSChartResource.PopMinuteChart.CorssCursor.Font;//十字光标
14795
+ var height=this.DivDialog.offsetHeight;var width=this.DivDialog.offsetWidth;var xRight=window.innerWidth-5;var ybottom=window.innerHeight-5;if(x+width>xRight)x=xRight-width;if(y+height>ybottom)y=ybottom-height;this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.UpdateDialogTitle=function(){var title=this.Name+' '+IFrameSplitOperator.FormatDateString(this.Date)+' \u5206\u65F6\u56FE PageUp/PageDown\u7FFB\u9875';this.TitleBox.DivName.innerText=title;};this.Close=function(e){if(!this.DivDialog)return;this.ClearCache();this.DivDialog.style.visibility='hidden';this.ClearMarkKLineBG();};this.OnMouseDownTitle=function(e){var _this95=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this95.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this95.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.ReloadResource=function(option){this.TitleColor=g_JSChartResource.PopMinuteChart.TitleColor;this.TitleBGColor=g_JSChartResource.PopMinuteChart.TitleBGColor;this.BGColor=g_JSChartResource.PopMinuteChart.BGColor;this.BorderColor=g_JSChartResource.PopMinuteChart.BorderColor;this.TitleFont=g_JSChartResource.PopMinuteChart.Title.Font;this.CorssCursorFont=g_JSChartResource.PopMinuteChart.CorssCursor.Font;//十字光标
14794
14796
  this.FrameSplitTextFont=g_JSChartResource.PopMinuteChart.Frame.Font;if(!this.DivDialog)return;this.UpdateStyle();if(this.Minute.JSChart)this.Minute.JSChart.ReloadResource(option);};this.LoadChartResource=function(chart){if(IFrameSplitOperator.IsNonEmptyArray(chart.TitlePaint)){for(var i=0;i<chart.TitlePaint.length;++i){var item=chart.TitlePaint[i];if(!item)continue;item.Font=this.TitleFont;}}if(IFrameSplitOperator.IsNonEmptyArray(chart.WindowIndex)){for(var i=0;i<chart.WindowIndex.length;++i)//去掉指标里面的字体
14795
14797
  {var item=chart.WindowIndex[i];if(!item)continue;item.TitleFont=null;}}if(chart.ChartCorssCursor){chart.ChartCorssCursor.Font=this.CorssCursorFont;}};this.SetLanguage=function(language){if(!this.DivDialog)return;if(this.Minute.JSChart)this.Minute.JSChart.SetLanguage(language);};this.OnKeyDown=function(event,data,obj){switch(data.KeyID){case 33://page up
14796
14798
  data.PreventDefault=true;var item=this.GetNextData(1);if(item)this.ChangeSymbol(item.Symbol,item.Date);break;case 34://page down
@@ -14820,8 +14822,8 @@ function JSTooltipMinuteChart(){this.DivDialog=null;this.HQChart=null;this.ID=Gu
14820
14822
  this.CorssCursorFont=g_JSChartResource.PopMinuteChart.CorssCursor.Font;//十字光标
14821
14823
  this.FrameSplitTextFont=g_JSChartResource.PopMinuteChart.Frame.Font;//刻度文字
14822
14824
  this.OnCreatedCallback;this.Minute={Option:JSTooltipMinuteChart.GetMinuteOption(),JSChart:null,Symbol:null,Date:null};this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsObject(option.Option)){var item=CloneData(option.Option);//复制一份出来
14823
- this.Minute.Option=(0,_assign2.default)(this.Minute.Option,item);if(IFrameSplitOperator.IsNonEmptyArray(option.Option.EventCallback))this.Minute.Option.EventCallback=option.Option.EventCallback;}if(option.OnCreatedCallback)this.OnCreatedCallback=option.OnCreatedCallback;}};this.Create=function(){var _this95=this;var divDom=document.createElement('div');divDom.className='UMyChart_Tooltip_Minute_Div';divDom.id=this.ID;var divChart=document.createElement('div');divChart.className='UMyChart_Tooltip_Minute_Chart_Div';divDom.appendChild(divChart);this.DivDialog=divDom;var chart=JSChart.Init(divChart);this.Minute.JSChart=chart;//语言跟主图保持一致
14824
- if(this.HQChart)this.Minute.Option.Language=g_JSChartLocalization.GetLanguageName(this.HQChart.LanguageID);this.Minute.Option.OnCreatedCallback=function(chart){_this95.OnCreateHQChart(chart);};this.Minute.Option.NetworkFilter=function(data,callback){_this95.NetworkFilter(data,callback);};var reloadResourceEvent={event:JSCHART_EVENT_ID.ON_RELOAD_RESOURCE,callback:function callback(event,data,obj){_this95.LoadChartResource(obj);}};var splitXEvent={event:JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE,callback:function callback(event,data,obj){_this95.OnSplitXCoordinate(event,data,obj);}};var splitYEvent={event:JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE,callback:function callback(event,data,obj){_this95.OnSplitYCoordinate(event,data,obj);}};if(Array.isArray(this.Minute.Option.EventCallback)){this.Minute.Option.EventCallback.unshift(reloadResourceEvent,splitYEvent,splitYEvent);}else{this.Minute.Option.EventCallback=[reloadResourceEvent,splitXEvent,splitYEvent];}chart.SetOption(this.Minute.Option);//设置K线配置
14825
+ this.Minute.Option=(0,_assign2.default)(this.Minute.Option,item);if(IFrameSplitOperator.IsNonEmptyArray(option.Option.EventCallback))this.Minute.Option.EventCallback=option.Option.EventCallback;}if(option.OnCreatedCallback)this.OnCreatedCallback=option.OnCreatedCallback;}};this.Create=function(){var _this96=this;var divDom=document.createElement('div');divDom.className='UMyChart_Tooltip_Minute_Div';divDom.id=this.ID;var divChart=document.createElement('div');divChart.className='UMyChart_Tooltip_Minute_Chart_Div';divDom.appendChild(divChart);this.DivDialog=divDom;var chart=JSChart.Init(divChart);this.Minute.JSChart=chart;//语言跟主图保持一致
14826
+ if(this.HQChart)this.Minute.Option.Language=g_JSChartLocalization.GetLanguageName(this.HQChart.LanguageID);this.Minute.Option.OnCreatedCallback=function(chart){_this96.OnCreateHQChart(chart);};this.Minute.Option.NetworkFilter=function(data,callback){_this96.NetworkFilter(data,callback);};var reloadResourceEvent={event:JSCHART_EVENT_ID.ON_RELOAD_RESOURCE,callback:function callback(event,data,obj){_this96.LoadChartResource(obj);}};var splitXEvent={event:JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE,callback:function callback(event,data,obj){_this96.OnSplitXCoordinate(event,data,obj);}};var splitYEvent={event:JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE,callback:function callback(event,data,obj){_this96.OnSplitYCoordinate(event,data,obj);}};if(Array.isArray(this.Minute.Option.EventCallback)){this.Minute.Option.EventCallback.unshift(reloadResourceEvent,splitYEvent,splitYEvent);}else{this.Minute.Option.EventCallback=[reloadResourceEvent,splitXEvent,splitYEvent];}chart.SetOption(this.Minute.Option);//设置K线配置
14825
14827
  document.body.appendChild(divDom);this.UpdateStyle();if(!this.Minute.Option.EnableResize){if(this.Minute.JSChart)this.Minute.JSChart.OnSize();}};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;};this.NetworkFilter=function(data,callback){if(!this.HQChart||!this.HQChart.NetworkFilter)return;/*
14826
14828
  if (data) data.PopMinuteData={ Date:this.Date }; //弹出分时图额外数据
14827
14829
 
@@ -14874,8 +14876,8 @@ function JSTooltipKLineChart(){this.DivDialog=null;this.HQChart=null;this.ID=Gui
14874
14876
  this.CorssCursorFont=g_JSChartResource.PopMinuteChart.CorssCursor.Font;//十字光标
14875
14877
  this.FrameSplitTextFont=g_JSChartResource.PopMinuteChart.Frame.Font;//刻度文字
14876
14878
  this.OnCreatedCallback=null;this.KLine={Option:JSTooltipKLineChart.GetKLineOption(),JSChart:null,Symbol:null};this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsObject(option.Option)){var item=CloneData(option.Option);//复制一份出来
14877
- this.KLine.Option=(0,_assign2.default)(this.KLine.Option,item);if(IFrameSplitOperator.IsNonEmptyArray(option.Option.EventCallback))this.KLine.Option.EventCallback=option.Option.EventCallback;}if(option.OnCreatedCallback)this.OnCreatedCallback=option.OnCreatedCallback;}};this.Create=function(){var _this96=this;var divDom=document.createElement('div');divDom.className='UMyChart_Tooltip_KLine_Div';divDom.id=this.ID;var divChart=document.createElement('div');divChart.className='UMyChart_Tooltip_KLine_Chart_Div';divDom.appendChild(divChart);this.DivDialog=divDom;var chart=JSChart.Init(divChart);this.KLine.JSChart=chart;//语言跟主图保持一致
14878
- if(this.HQChart)this.KLine.Option.Language=g_JSChartLocalization.GetLanguageName(this.HQChart.LanguageID);this.KLine.Option.OnCreatedCallback=function(chart){_this96.OnCreateHQChart(chart);};this.KLine.Option.NetworkFilter=function(data,callback){_this96.NetworkFilter(data,callback);};var reloadResourceEvent={event:JSCHART_EVENT_ID.ON_RELOAD_RESOURCE,callback:function callback(event,data,obj){_this96.LoadChartResource(obj);}};var splitXEvent={event:JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE,callback:function callback(event,data,obj){_this96.OnSplitXCoordinate(event,data,obj);}};var splitYEvent={event:JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE,callback:function callback(event,data,obj){_this96.OnSplitYCoordinate(event,data,obj);}};if(Array.isArray(this.KLine.Option.EventCallback)){this.KLine.Option.EventCallback.unshift(reloadResourceEvent,splitYEvent,splitYEvent);}else{this.KLine.Option.EventCallback=[reloadResourceEvent,splitXEvent,splitYEvent];}chart.SetOption(this.KLine.Option);//设置K线配置
14879
+ this.KLine.Option=(0,_assign2.default)(this.KLine.Option,item);if(IFrameSplitOperator.IsNonEmptyArray(option.Option.EventCallback))this.KLine.Option.EventCallback=option.Option.EventCallback;}if(option.OnCreatedCallback)this.OnCreatedCallback=option.OnCreatedCallback;}};this.Create=function(){var _this97=this;var divDom=document.createElement('div');divDom.className='UMyChart_Tooltip_KLine_Div';divDom.id=this.ID;var divChart=document.createElement('div');divChart.className='UMyChart_Tooltip_KLine_Chart_Div';divDom.appendChild(divChart);this.DivDialog=divDom;var chart=JSChart.Init(divChart);this.KLine.JSChart=chart;//语言跟主图保持一致
14880
+ if(this.HQChart)this.KLine.Option.Language=g_JSChartLocalization.GetLanguageName(this.HQChart.LanguageID);this.KLine.Option.OnCreatedCallback=function(chart){_this97.OnCreateHQChart(chart);};this.KLine.Option.NetworkFilter=function(data,callback){_this97.NetworkFilter(data,callback);};var reloadResourceEvent={event:JSCHART_EVENT_ID.ON_RELOAD_RESOURCE,callback:function callback(event,data,obj){_this97.LoadChartResource(obj);}};var splitXEvent={event:JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE,callback:function callback(event,data,obj){_this97.OnSplitXCoordinate(event,data,obj);}};var splitYEvent={event:JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE,callback:function callback(event,data,obj){_this97.OnSplitYCoordinate(event,data,obj);}};if(Array.isArray(this.KLine.Option.EventCallback)){this.KLine.Option.EventCallback.unshift(reloadResourceEvent,splitYEvent,splitYEvent);}else{this.KLine.Option.EventCallback=[reloadResourceEvent,splitXEvent,splitYEvent];}chart.SetOption(this.KLine.Option);//设置K线配置
14879
14881
  document.body.appendChild(divDom);this.UpdateStyle();if(!this.KLine.Option.EnableResize){if(this.KLine.JSChart)this.KLine.JSChart.OnSize({Type:1});}};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;};this.NetworkFilter=function(data,callback){if(!this.HQChart||!this.HQChart.NetworkFilter)return;this.HQChart.NetworkFilter(data,callback);};this.OnCreateHQChart=function(chart){this.LoadChartResource(chart);if(this.OnCreatedCallback)this.OnCreatedCallback(chart);};this.Destroy=function(){if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);}this.DivDialog=null;this.TitleBox=null;if(!this.KLine.JSChart)this.KLine.JSChart.ChartDestory();this.KLine.JSChart=null;};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.Show=function(data,x,y){if(!this.DivDialog)this.Create();if(!data||!data.Symbol)return;var symbol=data.Symbol;if(this.KLine.JSChart){if(this.KLine.Symbol!=symbol){this.KLine.Symbol=symbol;this.KLine.JSChart.ChangeSymbol(symbol);}}if(IFrameSplitOperator.IsNumberV2(x,y)){}else if(data.Rect){var rtCell=data.Rect;var pixelRatio=GetDevicePixelRatio();var rtItem={Left:rtCell.Left/pixelRatio,Right:rtCell.Right/pixelRatio,Bottom:rtCell.Bottom/pixelRatio,Top:rtCell.Top/pixelRatio};rtItem.Width=rtItem.Right-rtItem.Left;rtItem.Height=rtItem.Bottom-rtItem.Top;//超出窗口调整位置
14880
14882
  var height=this.DivDialog.offsetHeight;var width=this.DivDialog.offsetWidth;var x=rtItem.Right+data.Offset.Left;var y=rtItem.Bottom+data.Offset.Top;var xRight=window.innerWidth-5;var ybottom=window.innerHeight-5;if(x+width>xRight)x=rtItem.Left+data.Offset.Left-width;if(y+height>ybottom)y=rtItem.Top+data.Offset.Top-height;this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";}};this.Hide=function(){if(!this.DivDialog)return;if(this.DivDialog.style.visibility!='hidden')this.DivDialog.style.visibility='hidden';};this.ReloadResource=function(option){this.BGColor=g_JSChartResource.PopMinuteChart.BGColor;this.BorderColor=g_JSChartResource.PopMinuteChart.BorderColor;this.TitleFont=g_JSChartResource.PopMinuteChart.Title.Font;//指标标题字体
14881
14883
  this.CorssCursorFont=g_JSChartResource.PopMinuteChart.CorssCursor.Font;//十字光标
@@ -14918,11 +14920,11 @@ AutoLeft:{Blank:10,MinWidth:30},AutoRight:{Blank:5,MinWidth:30}},Frame://子框
14918
14920
  */function JSPopKeyboard(){this.DivDialog=null;this.DragTitle=null;this.TitleBox=null;//{ DivTitle, DivName, }
14919
14921
  this.InputDOM=null;this.Title="HQChart 键盘精灵";this.ID=Guid();this.ActiveDOM=null;//启动键盘精灵是的控件
14920
14922
  this.InputStatus=0;//0=空闲 1=输入中
14921
- this.BGColor=g_JSChartResource.DialogPopKeyboard.BGColor;this.TitleColor=g_JSChartResource.DialogPopKeyboard.TitleColor;this.TitleBGColor=g_JSChartResource.DialogPopKeyboard.TitleBGColor;this.BorderColor=g_JSChartResource.DialogPopKeyboard.BorderColor;this.InputBGColor=g_JSChartResource.DialogPopKeyboard.Input.BGColor;this.InputTextColor=g_JSChartResource.DialogPopKeyboard.Input.TextColor;this.Keyboard={Option:JSPopKeyboard.GetOption(),JSChart:null};this.Inital=function(option){var _this97=this;if(option){if(IFrameSplitOperator.IsBool(option.EnableResize))this.Keyboard.Option.EnableResize=option.EnableResize;}window.addEventListener('mousedown',function(e){_this97.OnWindowMouseDown(e);});};this.OnWindowMouseDown=function(e){if(!this.DivDialog)return;console.log("[JSPopKeyboard::OnWindowMouseDown] e=",e);if(!this.DivDialog.contains(e.target)){this.Hide();}};this.Destroy=function(){var _this98=this;if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);}this.DivDialog=null;this.TitleBox=null;if(!this.Keyboard.JSChart)this.Keyboard.JSChart.ChartDestory();this.Keyboard.JSChart=null;window.removeEventListener('mousedown',function(e){_this98.OnWindowMouseDown(e);});//注销监听
14922
- };this.Create=function(){var _this99=this;var divDom=document.createElement('div');divDom.className='jchart_pop_keyboard_dailog';divDom.id=this.ID;var divTitle=document.createElement("div");divTitle.className='jschart_keyboard_Title_Div';divTitle.onmousedown=function(e){_this99.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divInfoText=document.createElement("div");divInfoText.className="jschart_keyboard_Title";divInfoText.innerText=this.Title;this.DivInfoText=divInfoText;divTitle.appendChild(divInfoText);var divClose=document.createElement("div");divClose.className='jschart_keyboard_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this99.Hide();};divTitle.appendChild(divClose);this.TitleBox={DivTitle:divTitle,DivName:divInfoText,DivClose:divClose};var divInput=document.createElement("div");divInput.className='jschart_keyboard_Input_Div';divDom.appendChild(divInput);var input=document.createElement("input");input.className="jschart_keyboard_input";input.addEventListener("keydown",function(event){_this99.OnKeydown(event);});input.addEventListener("keyup",function(event){_this99.OnKeyup(event);});input.addEventListener("compositionstart",function(event){_this99.OnCompositionStart(event);});input.addEventListener("compositionupdate",function(event){_this99.OnCompositionUpdate(event);});input.addEventListener("compositionend",function(event){_this99.OnCompositionEnd(event);});divInput.appendChild(input);var divChart=document.createElement("div");divChart.className="jschart_keyboard_Chart_Div";divDom.appendChild(divChart);this.DivDialog=divDom;this.InputDOM=input;var chart=JSKeyboardChart.Init(divChart);this.Keyboard.JSChart=chart;this.Keyboard.Option.OnCreatedCallback=function(chart){_this99.OnCreateHQChart(chart);};chart.SetOption(this.Keyboard.Option);//设置K线配置
14923
- chart.AddEventCallback({event:JSCHART_EVENT_ID.ON_KEYBOARD_MOUSEUP,callback:function callback(event,data,chart){_this99.OnChartMouseUp(event,data,chart);}});this.UpdateStyle();document.body.appendChild(divDom);};this.OnCreateHQChart=function(chart){};this.OnCompositionStart=function(event){this.InputStatus=1;};this.OnCompositionUpdate=function(event){};this.OnCompositionEnd=function(event){this.InputStatus=0;};this.OnKeydown=function(event){if(this.InputStatus!=0)return;var aryKey=new _set2.default([40,38,13,33,34]);if(aryKey.has(event.keyCode)){this.Keyboard.JSChart.OnKeyDown(event);}if(event.keyCode==27){this.Hide();}};this.OnKeyup=function(event){if(this.InputStatus!=0)return;var code=event.keyCode;if(code==8)//删除
14923
+ this.BGColor=g_JSChartResource.DialogPopKeyboard.BGColor;this.TitleColor=g_JSChartResource.DialogPopKeyboard.TitleColor;this.TitleBGColor=g_JSChartResource.DialogPopKeyboard.TitleBGColor;this.BorderColor=g_JSChartResource.DialogPopKeyboard.BorderColor;this.InputBGColor=g_JSChartResource.DialogPopKeyboard.Input.BGColor;this.InputTextColor=g_JSChartResource.DialogPopKeyboard.Input.TextColor;this.Keyboard={Option:JSPopKeyboard.GetOption(),JSChart:null};this.Inital=function(option){var _this98=this;if(option){if(IFrameSplitOperator.IsBool(option.EnableResize))this.Keyboard.Option.EnableResize=option.EnableResize;}window.addEventListener('mousedown',function(e){_this98.OnWindowMouseDown(e);});};this.OnWindowMouseDown=function(e){if(!this.DivDialog)return;console.log("[JSPopKeyboard::OnWindowMouseDown] e=",e);if(!this.DivDialog.contains(e.target)){this.Hide();}};this.Destroy=function(){var _this99=this;if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);}this.DivDialog=null;this.TitleBox=null;if(!this.Keyboard.JSChart)this.Keyboard.JSChart.ChartDestory();this.Keyboard.JSChart=null;window.removeEventListener('mousedown',function(e){_this99.OnWindowMouseDown(e);});//注销监听
14924
+ };this.Create=function(){var _this100=this;var divDom=document.createElement('div');divDom.className='jchart_pop_keyboard_dailog';divDom.id=this.ID;var divTitle=document.createElement("div");divTitle.className='jschart_keyboard_Title_Div';divTitle.onmousedown=function(e){_this100.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divInfoText=document.createElement("div");divInfoText.className="jschart_keyboard_Title";divInfoText.innerText=this.Title;this.DivInfoText=divInfoText;divTitle.appendChild(divInfoText);var divClose=document.createElement("div");divClose.className='jschart_keyboard_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this100.Hide();};divTitle.appendChild(divClose);this.TitleBox={DivTitle:divTitle,DivName:divInfoText,DivClose:divClose};var divInput=document.createElement("div");divInput.className='jschart_keyboard_Input_Div';divDom.appendChild(divInput);var input=document.createElement("input");input.className="jschart_keyboard_input";input.addEventListener("keydown",function(event){_this100.OnKeydown(event);});input.addEventListener("keyup",function(event){_this100.OnKeyup(event);});input.addEventListener("compositionstart",function(event){_this100.OnCompositionStart(event);});input.addEventListener("compositionupdate",function(event){_this100.OnCompositionUpdate(event);});input.addEventListener("compositionend",function(event){_this100.OnCompositionEnd(event);});divInput.appendChild(input);var divChart=document.createElement("div");divChart.className="jschart_keyboard_Chart_Div";divDom.appendChild(divChart);this.DivDialog=divDom;this.InputDOM=input;var chart=JSKeyboardChart.Init(divChart);this.Keyboard.JSChart=chart;this.Keyboard.Option.OnCreatedCallback=function(chart){_this100.OnCreateHQChart(chart);};chart.SetOption(this.Keyboard.Option);//设置K线配置
14925
+ chart.AddEventCallback({event:JSCHART_EVENT_ID.ON_KEYBOARD_MOUSEUP,callback:function callback(event,data,chart){_this100.OnChartMouseUp(event,data,chart);}});this.UpdateStyle();document.body.appendChild(divDom);};this.OnCreateHQChart=function(chart){};this.OnCompositionStart=function(event){this.InputStatus=1;};this.OnCompositionUpdate=function(event){};this.OnCompositionEnd=function(event){this.InputStatus=0;};this.OnKeydown=function(event){if(this.InputStatus!=0)return;var aryKey=new _set2.default([40,38,13,33,34]);if(aryKey.has(event.keyCode)){this.Keyboard.JSChart.OnKeyDown(event);}if(event.keyCode==27){this.Hide();}};this.OnKeyup=function(event){if(this.InputStatus!=0)return;var code=event.keyCode;if(code==8)//删除
14924
14926
  {var strText=this.InputDOM.value;if(strText.length==0){this.Hide();//只有按了删除 才能隐藏
14925
- return;}}if(code>=48&&code<=57||code>=65&&code<=90||code>=96&&code<=122||code==8){var strText=this.InputDOM.value;strText=strText.toUpperCase();this.Keyboard.JSChart.Search(strText);}};this.OnMouseDownTitle=function(e){var _this100=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this100.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this100.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;this.onmousemove=null;this.onmouseup=null;};this.SetSymbolData=function(data){if(!this.Keyboard.JSChart)return false;this.Keyboard.JSChart.SetSymbolData(data);};this.Show=function(){if(!this.DivDialog)return;if(!this.Keyboard.Option.EnableResize)//自动调整大小
14927
+ return;}}if(code>=48&&code<=57||code>=65&&code<=90||code>=96&&code<=122||code==8){var strText=this.InputDOM.value;strText=strText.toUpperCase();this.Keyboard.JSChart.Search(strText);}};this.OnMouseDownTitle=function(e){var _this101=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this101.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this101.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;this.onmousemove=null;this.onmouseup=null;};this.SetSymbolData=function(data){if(!this.Keyboard.JSChart)return false;this.Keyboard.JSChart.SetSymbolData(data);};this.Show=function(){if(!this.DivDialog)return;if(!this.Keyboard.Option.EnableResize)//自动调整大小
14926
14928
  {if(this.Keyboard.JSChart)this.Keyboard.JSChart.OnSize();}//显示在右下方
14927
14929
  var height=this.DivDialog.offsetHeight;var width=this.DivDialog.offsetWidth;var xRight=window.innerWidth-5;var ybottom=window.innerHeight-5;var x=xRight-width;var y=ybottom-height;this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.Hide=function(){if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';this.InputDOM.value="";this.Keyboard.JSChart.ClearSearch();if(this.ActiveDOM){if(this.ActiveDOM.focus)this.ActiveDOM.focus();//把焦点换回去
14928
14930
  this.ActiveDOM=null;}};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.OnGlobalKeydown=function(event){if(!this.DivDialog)return;var code=event.keyCode;if(code==116)return;//F5不处理
@@ -14951,7 +14953,7 @@ this.LastValueCache=null;//最后的鼠标位置对应的数值
14951
14953
  this.LastValueCacheID=null;//鼠标信息
14952
14954
  this.DataID=null;//当前显示的数据时间{ Symbol:, Date:, Time: }
14953
14955
  this.RestoreFocusDelay=800;this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(IFrameSplitOperator.IsPlusNumber(option.MaxRowCount))this.MaxRowCount=option.MaxRowCount;if(option.IndexTitle){var item=option.IndexTitle;if(IFrameSplitOperator.IsBool(item.Enable))this.IndexTitle.Enable=item.Enable;if(IFrameSplitOperator.IsPlusNumber(item.MaxCount))this.IndexTitle.MaxCount=item.MaxCount;}}};this.Destroy=function(){this.AryData=[];this.AryText=[];this.KItemCache=null;this.KItemCache2=null;this.KItemCacheID=null;if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.OnClickColseButton=function(e){this.Close(e);if(this.HQChart&&this.HQChart.ChartCorssCursor){var chart=this.HQChart.ChartCorssCursor;if(!chart.IsShowCorss)return;chart.IsShowCorss=false;this.HQChart.Draw();this.HQChart.SetFocus();}};//data={ Symbol, Date, Time}
14954
- this.IsEqualDataID=function(data){if(!this.DataID)return false;if(!data)return false;if(this.DataID.Symbol!=data.Symbol)return false;if(this.DataID.Date!=data.Date)return false;if(IFrameSplitOperator.IsNumber(this.DataID.Time)){if(this.DataID.Time!=data.Time)return false;}return true;};this.Create=function(){var _this101=this;var divDom=document.createElement("div");divDom.className='UMyChart_Tooltip_Dialog_Div';var divTitle=document.createElement("div");divTitle.className='UMyChart_Tooltip_Title_Div';divTitle.onmousedown=function(e){_this101.OnMouseDownTitle(e);};var divName=document.createElement("div");divName.className='UMyChart_Tooltip_Name_Div';divName.innerText="----";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_Tooltip_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this101.OnClickColseButton(e);};divTitle.appendChild(divClose);divDom.appendChild(divTitle);var table=document.createElement("table");table.className="UMyChart_Tooltip_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_Tooltip_Tbody";table.appendChild(tbody);this.AryData=[];if(this.Style==1){for(var i=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,TitleSpan:null,TextSpan:null,Tr2:null};var trDom=document.createElement("tr");trDom.className='UMyChart_Tooltip_Group_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Text_Sinlge_Td";//标题
14956
+ this.IsEqualDataID=function(data){if(!this.DataID)return false;if(!data)return false;if(this.DataID.Symbol!=data.Symbol)return false;if(this.DataID.Date!=data.Date)return false;if(IFrameSplitOperator.IsNumber(this.DataID.Time)){if(this.DataID.Time!=data.Time)return false;}return true;};this.Create=function(){var _this102=this;var divDom=document.createElement("div");divDom.className='UMyChart_Tooltip_Dialog_Div';var divTitle=document.createElement("div");divTitle.className='UMyChart_Tooltip_Title_Div';divTitle.onmousedown=function(e){_this102.OnMouseDownTitle(e);};var divName=document.createElement("div");divName.className='UMyChart_Tooltip_Name_Div';divName.innerText="----";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_Tooltip_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this102.OnClickColseButton(e);};divTitle.appendChild(divClose);divDom.appendChild(divTitle);var table=document.createElement("table");table.className="UMyChart_Tooltip_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_Tooltip_Tbody";table.appendChild(tbody);this.AryData=[];if(this.Style==1){for(var i=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,TitleSpan:null,TextSpan:null,Tr2:null};var trDom=document.createElement("tr");trDom.className='UMyChart_Tooltip_Group_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Text_Sinlge_Td";//标题
14955
14957
  trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className='UMyChart_Tooltip_Title_Left_Span';spanDom.innerText='标题';tdDom.appendChild(spanDom);rowItem.TitleSpan=spanDom;var trDom=document.createElement("tr");trDom.className='UMyChart_Tooltip_Group_Tr';tbody.appendChild(trDom);rowItem.Tr2=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Text_Sinlge_Td";//数值
14956
14958
  trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className='UMyChart_Tooltip_Text_Span';spanDom.innerText='数值';tdDom.appendChild(spanDom);rowItem.TextSpan=spanDom;this.AryData.push(rowItem);}}else{for(var i=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,TitleSpan:null,TextSpan:null,TitleTd:null,TextTd:null};var trDom=document.createElement("tr");trDom.className='UMyChart_Tooltip_Group_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Title_Td";//标题
14957
14959
  trDom.appendChild(tdDom);rowItem.TitleTd=tdDom;var spanDom=document.createElement("span");spanDom.className='UMyChart_Tooltip_Title_Span';spanDom.innerText='标题';tdDom.appendChild(spanDom);rowItem.TitleSpan=spanDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Text_Td";//数值
@@ -14969,7 +14971,7 @@ if(outItem.ClassName){item.TextSpan.className=outItem.ClassName;}else{if(item.Te
14969
14971
  if(outItem.TitleClassName){item.TitleSpan.className=outItem.TitleClassName;}else{if(this.Style==0){if(item.TitleSpan.className!=this.TitleAlign.Right)item.TitleSpan.className=this.TitleAlign.Right;}else if(this.Style==1){if(item.TitleSpan.className!=this.TitleAlign.Left)item.TitleSpan.className=this.TitleAlign.Left;}}if(item.TitleTd){if(outItem.IsMergeCell)//合并单元格
14970
14972
  {item.TitleTd.colSpan=2;item.TextTd.style.display="none";}else{if(item.TitleTd.colSpan!=1)item.TitleTd.colSpan=1;item.TextTd.style.display="";}}item.Tr.style.display="";if(item.Tr2)item.Tr2.style.display="";}for(;index<this.MaxRowCount;++index){var item=this.AryData[index];item.Tr.style.display="none";if(item.Tr2)item.Tr2.style.display="none";}};this.UpdateDataID=function(data){if(this.HQChart.ClassName=='KLineChartContainer'){var kItem=data.KItem;this.DataID={Symbol:data.Symbol,Date:kItem.Date,Time:null};if(IFrameSplitOperator.IsNumber(kItem.Time))this.DataID.Time=kItem.Time;}else if(this.HQChart.ClassName=='MinuteChartContainer'){var minItem=data.MinItem;if(minItem.Type==0)//连续交易
14971
14973
  {var item=minItem.Data;if(item)this.DataID={Symbol:data.Symbol,Date:item.Date,Time:item.Time};}else if(minItem.Type==1)//集合竞价
14972
- {var item=minItem.Data.Data;if(item)this.DataID={Symbol:data.Symbol,Date:item.Date,Time:item.Time};}}};this.Close=function(e){if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.OnMouseDownTitle=function(e){var _this102=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this102.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this102.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.Show=function(x,y){if(this.IsShow())return;if(!this.DivDialog)return;if(!this.HQChart)return;var top=this.HQChart.Frame.ChartBorder.GetTop();var left=this.HQChart.Frame.ChartBorder.GetLeft();var rtClient=this.HQChart.UIElement.getBoundingClientRect();var x=left+rtClient.left+5;var y=top+rtClient.top+10;this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";this.DivDialog.style.visibility='visible';};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.GetFormatKLineTooltipText=function(data){var defaultfloatPrecision=GetfloatPrecision(this.HQChart.Symbol);//价格小数位数
14974
+ {var item=minItem.Data.Data;if(item)this.DataID={Symbol:data.Symbol,Date:item.Date,Time:item.Time};}}};this.Close=function(e){if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.OnMouseDownTitle=function(e){var _this103=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this103.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this103.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.Show=function(x,y){if(this.IsShow())return;if(!this.DivDialog)return;if(!this.HQChart)return;var top=this.HQChart.Frame.ChartBorder.GetTop();var left=this.HQChart.Frame.ChartBorder.GetLeft();var rtClient=this.HQChart.UIElement.getBoundingClientRect();var x=left+rtClient.left+5;var y=top+rtClient.top+10;this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";this.DivDialog.style.visibility='visible';};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.GetFormatKLineTooltipText=function(data){var defaultfloatPrecision=GetfloatPrecision(this.HQChart.Symbol);//价格小数位数
14973
14975
  var upperSymbol=this.HQChart.Symbol.toUpperCase();var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);var priceFormat=0;if(this.Style==1)priceFormat=1;//日期
14974
14976
  var dateItem=this.ForamtDate(data.Date,"YYYY/MM/DD/W",'DialogTooltip-Date');//时间
14975
14977
  var timeItem=null;if(IFrameSplitOperator.IsNumber(data.Time))timeItem=this.FormatTime(data.Time,this.HQChart.Period,null,'DialogTooltip-Time');var yClose=data.YClose;//昨收价|昨结算价
@@ -14999,11 +15001,12 @@ var item={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),Text:'--.
14999
15001
  this.ForamtFClose=function(value,defaultfloatPrecision,TitleID){var item={Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),Text:'--.--',Color:this.DateTimeColor};if(!IFrameSplitOperator.IsNumber(value))return item;item.Text=value.toFixed(defaultfloatPrecision);return item;};}//浮动K线提示信息
15000
15002
  function JSFloatTooltip(){this.DivDialog=null;this.Style=0;//0=一行一个, 1=2行一个
15001
15003
  this.HQChart=null;this.MaxRowCount=25;this.UpColor=g_JSChartResource.UpTextColor;this.DownColor=g_JSChartResource.DownTextColor;this.UnchangeColor=g_JSChartResource.UnchagneTextColor;this.BGColor=g_JSChartResource.FloatTooltip.BGColor;this.BorderColor=g_JSChartResource.FloatTooltip.BorderColor;this.TextColor=g_JSChartResource.FloatTooltip.TextColor;this.ValueColor=g_JSChartResource.FloatTooltip.ValueColor;this.VolColor=g_JSChartResource.FloatTooltip.VolColor;this.AmountColor=g_JSChartResource.FloatTooltip.AmountColor;this.TurnoverRateColor=g_JSChartResource.FloatTooltip.TurnoverRateColor;this.PositionColor=g_JSChartResource.FloatTooltip.PositionColor;this.DateTimeColor=g_JSChartResource.FloatTooltip.DateTimeColor;this.LanguageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;this.ValueAlign={Left:"UMyChart_Tooltip_Float_Text2_Span",//左对齐
15002
- MarginLeft:'UMyChart_Tooltip_Float_Text3_Span',Right:"UMyChart_Tooltip_Float_Text_Span"};this.AryData=[];//输出文字信息
15004
+ MarginLeft:'UMyChart_Tooltip_Float_Text3_Span',Right:"UMyChart_Tooltip_Float_Text_Span"};this.TitleAlign={Default:"UMyChart_Tooltip_Float_Title_Span"//标题默认
15005
+ };this.AryData=[];//输出文字信息
15003
15006
  this.AryText=[];//表格tr
15004
15007
  this.KItemCache=null;//{ Symbol:, Item:, Name }
15005
15008
  this.KItemCacheID=null;this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(IFrameSplitOperator.IsNumber(option.MaxRowCount))this.MaxRowCount=option.MaxRowCount;}};this.Destroy=function(){this.AryData=[];this.AryText=[];this.KItemCache=null;this.KItemCacheID=null;if(this.DivDialog){document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Show=function(x,y,option){if(!this.DivDialog)return;if(!this.HQChart)return;var rtClient=this.HQChart.UIElement.getBoundingClientRect();var yMove=0;if(option&&IFrameSplitOperator.IsNumber(option.YMove))yMove=option.YMove;var left=x+rtClient.left,top=y+rtClient.top+yMove;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=left-this.DivDialog.offsetWidth;if(bottom+5>=window.innerHeight){top=y+rtClient.top-this.DivDialog.offsetHeight;}this.DivDialog.style.top=top+"px";this.DivDialog.style.left=left+"px";if(this.DivDialog.style.visibility!='visible')this.DivDialog.style.visibility='visible';};this.Hide=function(){if(!this.DivDialog)return;this.KItemCache=null;this.KItemCacheID=null;if(this.DivDialog.style.visibility!='hidden')this.DivDialog.style.visibility='hidden';};this.Create=function(){var divDom=document.createElement("div");divDom.className='UMyChart_Tooltip_Float_Div';var table=document.createElement("table");table.className="UMyChart_Tooltip_Float_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_Tooltip_Float_Tbody";table.appendChild(tbody);this.AryData=[];for(var i=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,TitleSpan:null,TextSpan:null,TitleTd:null,TextTd:null};var trDom=document.createElement("tr");trDom.className='UMyChart_Tooltip_Float_Group_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Float_Title_Td";//标题
15006
- trDom.appendChild(tdDom);rowItem.TitleTd=tdDom;var spanDom=document.createElement("span");spanDom.className='UMyChart_Tooltip_Float_Title_Span';spanDom.innerText='标题';tdDom.appendChild(spanDom);rowItem.TitleSpan=spanDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Float_Text_Td";//数值
15009
+ trDom.appendChild(tdDom);rowItem.TitleTd=tdDom;var spanDom=document.createElement("span");spanDom.className=this.TitleAlign.Default;spanDom.innerText='标题';tdDom.appendChild(spanDom);rowItem.TitleSpan=spanDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_Tooltip_Float_Text_Td";//数值
15007
15010
  trDom.appendChild(tdDom);rowItem.TextTd=tdDom;var spanDom=document.createElement("span");spanDom.className='UMyChart_Tooltip_Float_Text_Span';spanDom.innerText='数值';tdDom.appendChild(spanDom);rowItem.TextSpan=spanDom;this.AryData.push(rowItem);}document.body.appendChild(divDom);this.DivDialog=divDom;this.UpdateStyle();};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};//data={ Symbol, Date, Time} 是否是同一条K线
15008
15011
  this.IsEqualHQID=function(data){if(!this.KItemCache)return false;if(!data)return false;if(!this.KItemCache.Item)return false;var kItem=this.KItemCache.Item;if(this.KItemCache.Symbol!=data.Symbol)return false;if(kItem.Date!=data.Date)return false;if(IFrameSplitOperator.IsNumber(kItem.Time)){if(kItem.Time!=data.Time)return false;}return true;};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;//this.UpdateTableDOM();
15009
15012
  };//更新数据
@@ -15038,7 +15041,7 @@ this.UpdatMultiSVGIconV2Tooltip=function(data){var tooltipData=data.Tooltip;if(!
15038
15041
  this.UpdatChartOXTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Data)return;var item=tooltipData.Data.Data;var period=this.HQChart.Period;var aryText=[];if(ChartData.IsDayPeriod(period,true)){var strStartDate=IFrameSplitOperator.FormatDateString(item.Start.Date,"YYYY-MM-DD");var strEndDate=IFrameSplitOperator.FormatDateString(item.End.Date,"YYYY-MM-DD");aryText.push({Title:"起始时间",Text:strStartDate,Color:this.ValueColor});aryText.push({Title:"结束时间",Text:strEndDate,Color:this.ValueColor});}else if(ChartData.IsMinutePeriod(period,true)){var strStartDate=IFrameSplitOperator.FormatDateString(item.Start.Date);var strStartTime=IFrameSplitOperator.FormatTimeString(item.Start.Time,"HH:MM");var strEndDate=IFrameSplitOperator.FormatDateString(item.End.Date);var strEndTime=IFrameSplitOperator.FormatTimeString(item.End.Time,"HH:MM");aryText.push({Title:"起始时间",Text:strStartDate+' '+strStartTime,Color:this.ValueColor});aryText.push({Title:"结束时间",Text:strEndDate+' '+strEndTime,Color:this.ValueColor});}this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};//表头图标
15039
15042
  this.ReportHeaderIconTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;this.AryText=tooltipData.Data.AryText;this.UpdateTableDOM();this.ShowTooltip(data);};//单元格提示信息
15040
15043
  this.ReportCellTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;this.AryText=tooltipData.Data.AryText;this.UpdateTableDOM();this.ShowTooltip(data);};//表格单元格截断内容
15041
- this.ReportCellTruncateTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;var item=tooltipData.Data.AryText[0];if(!item.Text)return;this.AryText=[{Title:item.Text,IsMergeCell:true}];this.UpdateTableDOM();this.ShowTooltip(data);};this.TReportIconTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;this.AryText=tooltipData.Data.AryText;this.UpdateTableDOM();this.ShowTooltip(data);};this.DealItemTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;this.AryText=tooltipData.Data.AryText;this.UpdateTableDOM();this.ShowTooltip(data);};this.UpdateTableDOM=function(){var index=0;for(index=0;index<this.AryText.length&&index<this.MaxRowCount;++index){var outItem=this.AryText[index];var item=this.AryData[index];if(outItem.HTMLTitle)item.TitleSpan.innerHTML=outItem.HTMLTitle;else item.TitleSpan.innerText=outItem.Title;if(outItem.TitleColor)item.TitleSpan.style.color=outItem.TitleColor;else item.TitleSpan.style.color=this.TextColor;if(outItem.HTMLText)item.TextSpan.innerHTML=outItem.HTMLText;else item.TextSpan.innerText=outItem.Text;item.TextSpan.style.color=outItem.Color;item.TextTd.style.color=outItem.Color;if(outItem.ClassName){item.TextSpan.className=outItem.ClassName;}else{if(item.TextSpan.className!=this.ValueAlign.Right)item.TextSpan.className=this.ValueAlign.Right;}if(outItem.IsMergeCell)//合并单元格
15044
+ this.ReportCellTruncateTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;var item=tooltipData.Data.AryText[0];if(!item.Text)return;this.AryText=[{Title:item.Text,IsMergeCell:true}];this.UpdateTableDOM();this.ShowTooltip(data);};this.TReportIconTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;this.AryText=tooltipData.Data.AryText;this.UpdateTableDOM();this.ShowTooltip(data);};this.DealItemTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!IFrameSplitOperator.IsNonEmptyArray(tooltipData.Data.AryText))return;this.AryText=tooltipData.Data.AryText;this.UpdateTableDOM();this.ShowTooltip(data);};this.UpdateTableDOM=function(){var index=0;for(index=0;index<this.AryText.length&&index<this.MaxRowCount;++index){var outItem=this.AryText[index];var item=this.AryData[index];if(outItem.HTMLTitle)item.TitleSpan.innerHTML=outItem.HTMLTitle;else item.TitleSpan.innerText=outItem.Title;if(outItem.TitleColor)item.TitleSpan.style.color=outItem.TitleColor;else item.TitleSpan.style.color=this.TextColor;if(outItem.HTMLText)item.TextSpan.innerHTML=outItem.HTMLText;else item.TextSpan.innerText=outItem.Text;item.TextSpan.style.color=outItem.Color;item.TextTd.style.color=outItem.Color;if(outItem.ClassName){item.TextSpan.className=outItem.ClassName;}else{if(item.TextSpan.className!=this.ValueAlign.Right)item.TextSpan.className=this.ValueAlign.Right;}if(outItem.TitleClassName){item.TitleSpan.className=outItem.TitleClassName;}else{if(item.TitleSpan.className!=this.TitleAlign.Default)item.TitleSpan.className=this.TitleAlign.Default;}if(outItem.IsMergeCell)//合并单元格
15042
15045
  {item.TitleTd.colspan=2;item.TextTd.style.display="none";}else{if(item.TitleTd.colspan!=1)item.TitleTd.colspan=1;item.TextTd.style.display="";}item.Tr.style.display="";if(item.Tr2)item.Tr2.style.display="none";}for(;index<this.MaxRowCount;++index){var item=this.AryData[index];item.Tr.style.display="none";if(item.Tr2)item.Tr2.style.display="none";}};this.GetFormatKLineTooltipText=function(kItem){var data=kItem.Item;var symbol=kItem.Symbol;if(data&&data.Symbol)symbol=symbol;var upperSymbol="";if(symbol)upperSymbol=symbol.toUpperCase();var defaultfloatPrecision=GetfloatPrecision(symbol);//价格小数位数
15043
15046
  var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);//日期
15044
15047
  var dateItem=this.ForamtDate(data.Date,"YYYY/MM/DD/W",'FloatTooltip-Date');//时间
@@ -15083,9 +15086,9 @@ this.ReloadResource=function(option){this.UpColor=g_JSChartResource.UpTextColor;
15083
15086
  jones_2000@163.com
15084
15087
 
15085
15088
  内置区间统计框 设置框
15086
- */function JSDialogSelectRect(){this.DivDialog=null;this.DragTitle=null;this.HQChart=null;this.UpColor=g_JSChartResource.UpTextColor;this.DownColor=g_JSChartResource.DownTextColor;this.UnchangeColor=g_JSChartResource.UnchagneTextColor;this.TitleColor=g_JSChartResource.DialogSelectRect.TitleColor;this.TitleBGColor=g_JSChartResource.DialogSelectRect.TitleBGColor;this.BGColor=g_JSChartResource.DialogSelectRect.BGColor;this.BorderColor=g_JSChartResource.DialogSelectRect.BorderColor;this.TextColor=g_JSChartResource.DialogSelectRect.TextColor;this.ValueColor=g_JSChartResource.DialogSelectRect.ValueColor;this.VolColor=g_JSChartResource.DialogSelectRect.VolColor;this.AmountColor=g_JSChartResource.DialogSelectRect.AmountColor;this.TurnoverRateColor=g_JSChartResource.DialogSelectRect.TurnoverRateColor;this.PositionColor=g_JSChartResource.DialogSelectRect.PositionColor;this.MaxRowCount=10;this.AryData=[];this.DateTimeBox={Start:{SpanText:null,SpanValue:null},End:{SpanText:null,SpanValue:null}};this.ShowData;this.SelectData;this.RestoreFocusDelay=800;this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){}};this.Destroy=function(){this.AryData=[];this.ShowData=null;this.DateTimeBox={Start:{SpanText:null,SpanValue:null},End:{SpanText:null,SpanValue:null}};if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Create=function(){var _this103=this;var divDom=document.createElement("div");divDom.className='UMyChart_SelectRect_Dialog_Div';var divTitle=document.createElement("div");divTitle.className='UMyChart_SelectRect_Title_Div';divTitle.onmousedown=function(e){_this103.OnMouseDownTitle(e);};var divName=document.createElement("div");divName.className='UMyChart_SelectRect_Name_Div';divName.innerText="区间统计";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_SelectRect_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this103.Close(e);};divTitle.appendChild(divClose);divDom.appendChild(divTitle);var divDateTime=document.createElement("div");divDateTime.className='UMyChart_SelectRect_DateTime_Div';//起始日期
15087
- var divStartDate=document.createElement("div");divDateTime.append(divStartDate);var spanText=document.createElement("span");spanText.className="UMyChart_SelectRect_DateTitle_Span";spanText.innerText="开始:";divStartDate.appendChild(spanText);this.DateTimeBox.Start.SpanText=spanText;var spanDate=document.createElement("span");spanDate.className="UMyChart_SelectRect_DateValue_Span";spanDate.innerText="--/--";divStartDate.appendChild(spanDate);this.DateTimeBox.Start.SpanValue=spanDate;var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText="<";spanArrow.onmousedown=function(e){_this103.MoveStartDate(-1);};divStartDate.appendChild(spanArrow);var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText=">";spanArrow.onmousedown=function(e){_this103.MoveStartDate(1);};divStartDate.appendChild(spanArrow);//结束日期
15088
- var divEndDate=document.createElement("div");divDateTime.append(divEndDate);var spanText=document.createElement("span");spanText.className="UMyChart_SelectRect_DateTitle_Span";spanText.innerText="结束:";divEndDate.appendChild(spanText);this.DateTimeBox.End.SpanText=spanText;var spanDate=document.createElement("span");spanDate.className="UMyChart_SelectRect_DateValue_Span";spanDate.innerText="--/--";divEndDate.appendChild(spanDate);this.DateTimeBox.SpanEnd=spanDate;this.DateTimeBox.End.SpanValue=spanDate;var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText="<";spanArrow.onmousedown=function(e){_this103.MoveEndDate(-1);};divEndDate.appendChild(spanArrow);var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText=">";spanArrow.onmousedown=function(e){_this103.MoveEndDate(1);};divEndDate.appendChild(spanArrow);divDom.appendChild(divDateTime);var table=document.createElement("table");table.className="UMyChart_SelectRect_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_SelectRect_Tbody";table.appendChild(tbody);for(var i=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,AryItem:[]};var trDom=document.createElement("tr");trDom.className='UMyChart_SelectRect_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;for(var j=0;j<3;++j){var item={Td:null,LeftSpan:null,RightSpan:null};var tdDom=document.createElement("td");tdDom.className="UMyChart_SelectRect_Td";//标题+数值
15089
+ */function JSDialogSelectRect(){this.DivDialog=null;this.DragTitle=null;this.HQChart=null;this.UpColor=g_JSChartResource.UpTextColor;this.DownColor=g_JSChartResource.DownTextColor;this.UnchangeColor=g_JSChartResource.UnchagneTextColor;this.TitleColor=g_JSChartResource.DialogSelectRect.TitleColor;this.TitleBGColor=g_JSChartResource.DialogSelectRect.TitleBGColor;this.BGColor=g_JSChartResource.DialogSelectRect.BGColor;this.BorderColor=g_JSChartResource.DialogSelectRect.BorderColor;this.TextColor=g_JSChartResource.DialogSelectRect.TextColor;this.ValueColor=g_JSChartResource.DialogSelectRect.ValueColor;this.VolColor=g_JSChartResource.DialogSelectRect.VolColor;this.AmountColor=g_JSChartResource.DialogSelectRect.AmountColor;this.TurnoverRateColor=g_JSChartResource.DialogSelectRect.TurnoverRateColor;this.PositionColor=g_JSChartResource.DialogSelectRect.PositionColor;this.MaxRowCount=10;this.AryData=[];this.DateTimeBox={Start:{SpanText:null,SpanValue:null},End:{SpanText:null,SpanValue:null}};this.ShowData;this.SelectData;this.RestoreFocusDelay=800;this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){}};this.Destroy=function(){this.AryData=[];this.ShowData=null;this.DateTimeBox={Start:{SpanText:null,SpanValue:null},End:{SpanText:null,SpanValue:null}};if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Create=function(){var _this104=this;var divDom=document.createElement("div");divDom.className='UMyChart_SelectRect_Dialog_Div';var divTitle=document.createElement("div");divTitle.className='UMyChart_SelectRect_Title_Div';divTitle.onmousedown=function(e){_this104.OnMouseDownTitle(e);};var divName=document.createElement("div");divName.className='UMyChart_SelectRect_Name_Div';divName.innerText="区间统计";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_SelectRect_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this104.Close(e);};divTitle.appendChild(divClose);divDom.appendChild(divTitle);var divDateTime=document.createElement("div");divDateTime.className='UMyChart_SelectRect_DateTime_Div';//起始日期
15090
+ var divStartDate=document.createElement("div");divDateTime.append(divStartDate);var spanText=document.createElement("span");spanText.className="UMyChart_SelectRect_DateTitle_Span";spanText.innerText="开始:";divStartDate.appendChild(spanText);this.DateTimeBox.Start.SpanText=spanText;var spanDate=document.createElement("span");spanDate.className="UMyChart_SelectRect_DateValue_Span";spanDate.innerText="--/--";divStartDate.appendChild(spanDate);this.DateTimeBox.Start.SpanValue=spanDate;var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText="<";spanArrow.onmousedown=function(e){_this104.MoveStartDate(-1);};divStartDate.appendChild(spanArrow);var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText=">";spanArrow.onmousedown=function(e){_this104.MoveStartDate(1);};divStartDate.appendChild(spanArrow);//结束日期
15091
+ var divEndDate=document.createElement("div");divDateTime.append(divEndDate);var spanText=document.createElement("span");spanText.className="UMyChart_SelectRect_DateTitle_Span";spanText.innerText="结束:";divEndDate.appendChild(spanText);this.DateTimeBox.End.SpanText=spanText;var spanDate=document.createElement("span");spanDate.className="UMyChart_SelectRect_DateValue_Span";spanDate.innerText="--/--";divEndDate.appendChild(spanDate);this.DateTimeBox.SpanEnd=spanDate;this.DateTimeBox.End.SpanValue=spanDate;var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText="<";spanArrow.onmousedown=function(e){_this104.MoveEndDate(-1);};divEndDate.appendChild(spanArrow);var spanArrow=document.createElement("span");spanArrow.className="UMyChart_SelectRect_ArrowButton_Span";spanArrow.innerText=">";spanArrow.onmousedown=function(e){_this104.MoveEndDate(1);};divEndDate.appendChild(spanArrow);divDom.appendChild(divDateTime);var table=document.createElement("table");table.className="UMyChart_SelectRect_Table";divDom.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_SelectRect_Tbody";table.appendChild(tbody);for(var i=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,AryItem:[]};var trDom=document.createElement("tr");trDom.className='UMyChart_SelectRect_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;for(var j=0;j<3;++j){var item={Td:null,LeftSpan:null,RightSpan:null};var tdDom=document.createElement("td");tdDom.className="UMyChart_SelectRect_Td";//标题+数值
15089
15092
  item.Td=tdDom;trDom.appendChild(tdDom);var spanDom=document.createElement("span");spanDom.className='UMyChart_SelectRect_Item_Left_Span';spanDom.innerText='数值';item.LeftSpan=spanDom;tdDom.appendChild(spanDom);var spanDom=document.createElement("span");spanDom.className='UMyChart_SelectRect_Item_Right_Span';spanDom.innerText='--';item.RightSpan=spanDom;tdDom.appendChild(spanDom);rowItem.AryItem.push(item);}this.AryData.push(rowItem);}document.body.appendChild(divDom);this.DivDialog=divDom;this.UpdateStyle();};this.Close=function(e){if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';this.ShowData=null;this.SelectData=null;if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.MoveStartDate=function(step){if(!this.DivDialog||!this.HQChart)return;if(step==0)return;if(!this.SelectData)return;var selectData=this.SelectData;var bUpdate=false;if(step>0){var index=selectData.Start;var endIndex=selectData.End;for(i=0;i<step&&index<endIndex;++i){++index;}if(selectData.Start!=index){selectData.Start=index;bUpdate=true;}}else{step=Math.abs(step);var index=selectData.Start;var endIndex=selectData.End;for(var i=0;i<step&&index>0;++i){--index;}if(selectData.Start!=index){selectData.Start=index;bUpdate=true;}}if(bUpdate)this.UpdateSelectRect(selectData);};this.MoveEndDate=function(step){if(!this.DivDialog)return;if(step==0)return;if(!this.SelectData)return;var selectData=this.SelectData;var bUpdate=false;if(step>0){var index=selectData.End;var startIndex=selectData.Start;for(i=0;i<step&&index<this.ShowData.DataCount;++i){++index;}if(selectData.End!=index){selectData.End=index;bUpdate=true;}}else{step=Math.abs(step);var index=selectData.End;var startIndex=selectData.Start;for(var i=0;i<step&&index>startIndex;++i){--index;}if(selectData.End!=index){selectData.End=index;bUpdate=true;}}if(bUpdate)this.UpdateSelectRect(selectData);};this.Show=function(x,y){if(!this.DivDialog)return;if(!this.HQChart)return;/*
15090
15093
  if (!this.DivDialog.style.top || !this.DivDialog.style.left) //上一次显示的位置
15091
15094
  {
@@ -15098,7 +15101,7 @@ item.Td=tdDom;trDom.appendChild(tdDom);var spanDom=document.createElement("span"
15098
15101
  this.DivDialog.style.top = y + "px";
15099
15102
  this.DivDialog.style.left = x + "px";
15100
15103
  }
15101
- */if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();var top=this.HQChart.Frame.ChartBorder.GetTop();var left=this.HQChart.Frame.ChartBorder.GetLeft();var rtClient=this.HQChart.UIElement.getBoundingClientRect();left=left+rtClient.left+5;top=top+rtClient.top+10;if(IFrameSplitOperator.IsNumber(x)&&IFrameSplitOperator.IsNumber(y)){left=x;top=y;}var right=x+this.DivDialog.offsetWidth;var bottom=y+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.top=top+"px";this.DivDialog.style.left=left+"px";this.DivDialog.style.visibility='visible';};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.OnMouseDownTitle=function(e){var _this104=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this104.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this104.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};//配色修改
15104
+ */if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();var top=this.HQChart.Frame.ChartBorder.GetTop();var left=this.HQChart.Frame.ChartBorder.GetLeft();var rtClient=this.HQChart.UIElement.getBoundingClientRect();left=left+rtClient.left+5;top=top+rtClient.top+10;if(IFrameSplitOperator.IsNumber(x)&&IFrameSplitOperator.IsNumber(y)){left=x;top=y;}var right=x+this.DivDialog.offsetWidth;var bottom=y+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.top=top+"px";this.DivDialog.style.left=left+"px";this.DivDialog.style.visibility='visible';};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.OnMouseDownTitle=function(e){var _this105=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this105.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this105.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};//配色修改
15102
15105
  this.ReloadResource=function(option){this.UpColor=g_JSChartResource.UpTextColor;this.DownColor=g_JSChartResource.DownTextColor;this.UnchangeColor=g_JSChartResource.UnchagneTextColor;this.TitleColor=g_JSChartResource.DialogSelectRect.TitleColor;this.TitleBGColor=g_JSChartResource.DialogSelectRect.TitleBGColor;this.BGColor=g_JSChartResource.DialogSelectRect.BGColor;this.BorderColor=g_JSChartResource.DialogSelectRect.BorderColor;this.TextColor=g_JSChartResource.DialogSelectRect.TextColor;this.ValueColor=g_JSChartResource.DialogSelectRect.ValueColor;this.VolColor=g_JSChartResource.DialogSelectRect.VolColor;this.AmountColor=g_JSChartResource.DialogSelectRect.AmountColor;this.TurnoverRateColor=g_JSChartResource.DialogSelectRect.TurnoverRateColor;this.PositionColor=g_JSChartResource.DialogSelectRect.PositionColor;if(!this.DivDialog)return;this.UpdateStyle();if(this.SelectData){var selectData=this.SelectData;this.HQChart.UpdateSelectRect(selectData.Start,selectData.End);var showData=this.CalculateKLineData({SelectData:selectData});this.FormatKLineText(showData);this.ShowData=showData;this.UpdateTableDOM(showData);}};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;if(this.DateTimeBox.Start){var item=this.DateTimeBox.Start;item.SpanText.style["color"]=this.TextColor;item.SpanValue.style["color"]=this.ValueColor;}if(this.DateTimeBox.End){var item=this.DateTimeBox.End;item.SpanText.style["color"]=this.TextColor;item.SpanValue.style["color"]=this.ValueColor;}//if (this.TitleBGColor) this.TitleBox.DivTitle.style['background-color']=this.TitleBGColor;
15103
15106
  };this.UpdateTableDOM=function(showData){var index=0;for(var index=0,j=0,dataIndex=0;index<this.AryData.length&&dataIndex<showData.AryText.length;++index){var rowItem=this.AryData[index];for(j=0;j<rowItem.AryItem.length;++j,++dataIndex){if(dataIndex>=showData.AryText.length)break;var item=rowItem.AryItem[j];var outItem=showData.AryText[dataIndex];item.LeftSpan.innerText=outItem.Title;item.LeftSpan.style.color=this.TextColor;item.RightSpan.innerText=outItem.Text;item.RightSpan.style.color=outItem.Color;}rowItem.Tr.style.display="";}for(;index<this.AryData.length;++index){var rowItem=this.AryData[index];rowItem.Tr.style.display="none";}if(this.DateTimeBox.Start.SpanValue)this.DateTimeBox.Start.SpanValue.innerText=showData.Date.Start.Text;if(this.DateTimeBox.End.SpanValue)this.DateTimeBox.End.SpanValue.innerText=showData.Date.End.Text;};this.UpdateSelectRect=function(selectData){this.HQChart.UpdateSelectRect(selectData.Start,selectData.End);var showData=null;if(this.HQChart.ClassName=='KLineChartContainer'){showData=this.CalculateKLineData({SelectData:selectData});this.FormatKLineText(showData);}else if(this.HQChart.ClassName=='MinuteChartContainer'){showData=this.CalculateMinuteData({SelectData:selectData});this.FormatMinuteText(showData);}if(showData){this.ShowData=showData;this.UpdateTableDOM(showData);}};this.Update=function(data){if(!this.DivDialog)return;var showData;if(this.HQChart.ClassName=='KLineChartContainer'){showData=this.CalculateKLineData(data);this.FormatKLineText(showData);}else if(this.HQChart.ClassName=='MinuteChartContainer'){showData=this.CalculateMinuteData(data);this.FormatMinuteText(showData);}if(!showData)return;this.ShowData=showData;this.SelectData=data.SelectData;this.UpdateTableDOM(showData);if(!this.IsShow())this.Show(data.X,data.Y);};this.CreateEmptyShowData=function(){var showData={Open:null,Close:null,High:null,Low:null,YClose:null,Vol:0,Amount:0,Date:{Start:{Time:null,Date:null,Text:""},End:{Time:null,Date:null,Text:""}},Count:0,KLine:{Up:0,Down:0,Unchanged:0},//阳线|阴线|平线
15104
15107
  AryText:[],DataCount:0};return showData;};this.CalculateKLineData=function(data){var selectData=data.SelectData;var hisData=selectData.Data;var start=selectData.Start;var end=selectData.End;var showData=this.CreateEmptyShowData();showData.DataCount=hisData.Data.length;for(var i=start;i<hisData.Data.length&&i<=end;++i){var item=hisData.Data[i];++showData.Count;if(!IFrameSplitOperator.IsNumber(showData.Open)&&IFrameSplitOperator.IsNumber(item.Open))showData.Open=item.Open;if(IFrameSplitOperator.IsNumber(item.Close))showData.Close=item.Close;if(IFrameSplitOperator.IsNumber(item.Vol))showData.Vol+=item.Vol;if(IFrameSplitOperator.IsNumber(item.Amount))showData.Amount+=item.Amount;if(IFrameSplitOperator.IsNumber(item.High)){if(!IFrameSplitOperator.IsNumber(showData.High)||showData.High<item.High)showData.High=item.High;}if(IFrameSplitOperator.IsNumber(item.Low)){if(!IFrameSplitOperator.IsNumber(showData.Low)||showData.Low>item.Low)showData.Low=item.Low;}if(IFrameSplitOperator.IsNumber(item.Open)&&IFrameSplitOperator.IsNumber(item.Close)){if(item.Close>item.Open)++showData.KLine.Up;else if(item.Close<item.Open)++showData.KLine.Down;else++showData.KLine.Unchanged;}if(IFrameSplitOperator.IsNumber(item.Date)){showData.Date.End.Date=item.Date;if(!IFrameSplitOperator.IsNumber(showData.Date.Start.Date))showData.Date.Start.Date=item.Date;}if(IFrameSplitOperator.IsNumber(item.Time)){showData.Date.End.Time=item.Time;if(!IFrameSplitOperator.IsNumber(showData.Date.Start.Time))showData.Date.Start.Time=item.Time;}}return showData;};//格式化K线数据
@@ -15122,15 +15125,15 @@ this.ColCount=3;//列
15122
15125
  this.MaxGroupCount=10;//分类最多个数
15123
15126
  this.AryData=[];this.AryGroup=[];//分类
15124
15127
  this.IndexData=JSDialogSearchIndex.GetDefaultIndexData();this.RestoreFocusDelay=800;this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(option.IndexData)this.IndexData=option.IndexData;if(IFrameSplitOperator.IsNumber(option.MaxRowCount))this.MaxRowCount=option.MaxRowCount;}};this.Destroy=function(){this.AryData=[];this.AryGroup=[];this.IndexData=null;this.InputDom=null;this.HQChart=null;if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.OnClickColseButton=function(e){this.Close(e);};//设置当前窗口数据
15125
- this.SetOpData=function(data){this.OpData=data;};this.Close=function(e){this.OpData=null;if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.OnMouseDownTitle=function(e){var _this105=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this105.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this105.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.Show=function(x,y,groupID){if(!this.DivDialog)return;if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();if(!groupID)groupID=this.IndexData.Data[0].Group.ID;this.UpdateGroupData();this.ChangeGroup(groupID);if(this.OpData&&this.OpData.Title)this.TitleBox.DivName.innerText=this.OpData.Title;if(!IFrameSplitOperator.IsNumber(x)||!IFrameSplitOperator.IsNumber(y))//默认居中显示
15126
- {var rtClient=this.HQChart.UIElement.getBoundingClientRect();x=rtClient.left+(rtClient.right-rtClient.left-this.DivDialog.offsetWidth)/2;y=rtClient.top+(rtClient.bottom-rtClient.top-this.DivDialog.offsetHeight)/2;}this.InputDom.value="";this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.Create=function(){var _this106=this;var divDom=document.createElement("div");divDom.className='UMyChart_SearchIndex_Dialog_Div';//对话框标题栏
15127
- var divTitle=document.createElement("div");divTitle.className='UMyChart_SearchIndex_Title_Div';divTitle.onmousedown=function(e){_this106.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divName=document.createElement("div");divName.className='UMyChart_SearchIndex_Name_Div';divName.innerText="指标搜索";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_SearchIndex_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this106.OnClickColseButton(e);};divTitle.appendChild(divClose);//整个框子
15128
+ this.SetOpData=function(data){this.OpData=data;};this.Close=function(e){this.OpData=null;if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.OnMouseDownTitle=function(e){var _this106=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this106.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this106.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};this.Show=function(x,y,groupID){if(!this.DivDialog)return;if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();if(!groupID)groupID=this.IndexData.Data[0].Group.ID;this.UpdateGroupData();this.ChangeGroup(groupID);if(this.OpData&&this.OpData.Title)this.TitleBox.DivName.innerText=this.OpData.Title;if(!IFrameSplitOperator.IsNumber(x)||!IFrameSplitOperator.IsNumber(y))//默认居中显示
15129
+ {var rtClient=this.HQChart.UIElement.getBoundingClientRect();x=rtClient.left+(rtClient.right-rtClient.left-this.DivDialog.offsetWidth)/2;y=rtClient.top+(rtClient.bottom-rtClient.top-this.DivDialog.offsetHeight)/2;}this.InputDom.value="";this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.Create=function(){var _this107=this;var divDom=document.createElement("div");divDom.className='UMyChart_SearchIndex_Dialog_Div';//对话框标题栏
15130
+ var divTitle=document.createElement("div");divTitle.className='UMyChart_SearchIndex_Title_Div';divTitle.onmousedown=function(e){_this107.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divName=document.createElement("div");divName.className='UMyChart_SearchIndex_Name_Div';divName.innerText="指标搜索";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_SearchIndex_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this107.OnClickColseButton(e);};divTitle.appendChild(divClose);//整个框子
15128
15131
  var divFrame=document.createElement("div");divFrame.className="UMyChart_SearchIndex_Frome_Div";divDom.appendChild(divFrame);//搜索框
15129
- var divInput=document.createElement("div");divInput.className="UMyChart_SearchIndex_Input_Div";divFrame.appendChild(divInput);var input=document.createElement("input");input.className='UMyChart_SearchIndex_Input';input.type="text";input.placeholder="输入指标名称";input.addEventListener("input",function(e){_this106.OnInputSearch(e);});divInput.appendChild(input);this.InputDom=input;//分类+指标内容
15132
+ var divInput=document.createElement("div");divInput.className="UMyChart_SearchIndex_Input_Div";divFrame.appendChild(divInput);var input=document.createElement("input");input.className='UMyChart_SearchIndex_Input';input.type="text";input.placeholder="输入指标名称";input.addEventListener("input",function(e){_this107.OnInputSearch(e);});divInput.appendChild(input);this.InputDom=input;//分类+指标内容
15130
15133
  var divContainer=document.createElement("div");divContainer.className="UMyChart_SearchIndex_Container_Div";divDom.appendChild(divContainer);//分类
15131
- var divGroup=document.createElement("div");divGroup.className="UMyChart_SearchIndex_GroupList_Div";divContainer.appendChild(divGroup);for(var i=0,j=0;i<this.MaxGroupCount;++i){var groupItem={Div:null,Span:null};var divItem=document.createElement("div");divItem.className="UMyChart_SearchIndex_Group_Div";divGroup.appendChild(divItem);groupItem.Div=divItem;var spanDom=document.createElement("span");spanDom.className='UMyChart_SearchIndex_Group_Span';spanDom.innerText='分类名称';divItem.appendChild(spanDom);groupItem.Span=spanDom;spanDom.onmousedown=function(e){_this106.OnClickGroup(e);};this.AryGroup.push(groupItem);}//表格
15132
- var divTable=document.createElement("div");divTable.className='UMyChart_SearchIndex_Table_Div';divContainer.appendChild(divTable);var table=document.createElement("table");table.className="UMyChart_SearchIndex_Table";divTable.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_SearchIndex_Tbody";table.appendChild(tbody);this.AryData=[];for(var i=0,j=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,AryCell:[]};var trDom=document.createElement("tr");trDom.className='UMyChart_SearchIndex_Group_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;for(j=0;j<this.ColCount;++j){var cellItem=this.CreateCellDOM(i,j,trDom);rowItem.AryCell.push(cellItem);}this.AryData.push(rowItem);}document.body.appendChild(divDom);this.DivName=divName;this.DivDialog=divDom;this.TitleBox={DivTitle:divTitle,DivName:divName,DivColor:divClose};this.UpdateStyle();};this.CreateCellDOM=function(rowID,colID,trDom){var _this107=this;var cellItem={Td:null,Span:null,RowID:rowID,ColID:colID,IndexItem:null};var tdDom=document.createElement("td");tdDom.className="UMyChart_SearchIndex_Text_Td";//指标名称
15133
- trDom.appendChild(tdDom);cellItem.Td=tdDom;var spanDom=document.createElement("span");spanDom.className='UMyChart_SearchIndex_Text_Span';spanDom.innerText='指标名称';spanDom.onmousedown=function(e){_this107.OnClickIndex(e,cellItem);};tdDom.appendChild(spanDom);cellItem.Span=spanDom;return cellItem;};this.OnClickIndex=function(e,cellItem){if(!this.OpData)return;if(!cellItem||!cellItem.IndexItem)return;var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.SEARCH_DIALOG_ON_CLICK_INDEX);if(event&&event.Callback){var sendData={OpData:this.OpData,IndexData:cellItem.IndexItem,HQChart:this.HQChart,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;//已被上层处理了
15134
+ var divGroup=document.createElement("div");divGroup.className="UMyChart_SearchIndex_GroupList_Div";divContainer.appendChild(divGroup);for(var i=0,j=0;i<this.MaxGroupCount;++i){var groupItem={Div:null,Span:null};var divItem=document.createElement("div");divItem.className="UMyChart_SearchIndex_Group_Div";divGroup.appendChild(divItem);groupItem.Div=divItem;var spanDom=document.createElement("span");spanDom.className='UMyChart_SearchIndex_Group_Span';spanDom.innerText='分类名称';divItem.appendChild(spanDom);groupItem.Span=spanDom;spanDom.onmousedown=function(e){_this107.OnClickGroup(e);};this.AryGroup.push(groupItem);}//表格
15135
+ var divTable=document.createElement("div");divTable.className='UMyChart_SearchIndex_Table_Div';divContainer.appendChild(divTable);var table=document.createElement("table");table.className="UMyChart_SearchIndex_Table";divTable.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_SearchIndex_Tbody";table.appendChild(tbody);this.AryData=[];for(var i=0,j=0;i<this.MaxRowCount;++i){var rowItem={Tr:null,AryCell:[]};var trDom=document.createElement("tr");trDom.className='UMyChart_SearchIndex_Group_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;for(j=0;j<this.ColCount;++j){var cellItem=this.CreateCellDOM(i,j,trDom);rowItem.AryCell.push(cellItem);}this.AryData.push(rowItem);}document.body.appendChild(divDom);this.DivName=divName;this.DivDialog=divDom;this.TitleBox={DivTitle:divTitle,DivName:divName,DivColor:divClose};this.UpdateStyle();};this.CreateCellDOM=function(rowID,colID,trDom){var _this108=this;var cellItem={Td:null,Span:null,RowID:rowID,ColID:colID,IndexItem:null};var tdDom=document.createElement("td");tdDom.className="UMyChart_SearchIndex_Text_Td";//指标名称
15136
+ trDom.appendChild(tdDom);cellItem.Td=tdDom;var spanDom=document.createElement("span");spanDom.className='UMyChart_SearchIndex_Text_Span';spanDom.innerText='指标名称';spanDom.onmousedown=function(e){_this108.OnClickIndex(e,cellItem);};tdDom.appendChild(spanDom);cellItem.Span=spanDom;return cellItem;};this.OnClickIndex=function(e,cellItem){if(!this.OpData)return;if(!cellItem||!cellItem.IndexItem)return;var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.SEARCH_DIALOG_ON_CLICK_INDEX);if(event&&event.Callback){var sendData={OpData:this.OpData,IndexData:cellItem.IndexItem,HQChart:this.HQChart,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;//已被上层处理了
15134
15137
  }if(this.OpData.OpType==1){if(!IFrameSplitOperator.IsNumber(this.OpData.WindowIndex))return;var indexItem=cellItem.IndexItem;if(indexItem.Type==0)//系统指标
15135
15138
  {this.HQChart.ChangeIndex(this.OpData.WindowIndex,indexItem.ID);}else if(indexItem.Type==4||indexItem.Type==5)//五彩K线
15136
15139
  {this.HQChart.ChangeInstructionIndex(indexItem.ID);}else if(indexItem.Type==1)//自定义脚本指标
@@ -15165,32 +15168,32 @@ this.EnableRestoreParam=true;//是否允许“恢复默认"
15165
15168
  this.RestoreFocusDelay=800;this.Inital=function(hqchart,option){this.HQChart=hqchart;if(option){if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(IFrameSplitOperator.IsNumber(option.MaxRowCount))this.MaxRowCount=option.MaxRowCount;if(IFrameSplitOperator.IsBool(option.EnableRestoreParam))this.EnableRestoreParam=option.EnableRestoreParam;}};this.Destroy=function(){this.AryData=[];this.HQChart=null;if(this.DivDialog){if(document&&document.body&&document.body.removeChild)document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Show=function(x,y){if(!this.DivDialog)return;if(this.HQChart)this.HQChart.ClearRestoreFocusTimer();this.UpdateParam();if(this.IndexData&&this.IndexData.Title)this.TitleBox.DivName.innerText=this.IndexData.Title;if(!IFrameSplitOperator.IsNumber(x)||!IFrameSplitOperator.IsNumber(y))//默认居中显示
15166
15169
  {var rtClient=this.HQChart.UIElement.getBoundingClientRect();x=rtClient.left+(rtClient.right-rtClient.left-this.DivDialog.offsetWidth)/2;y=rtClient.top+(rtClient.bottom-rtClient.top-this.DivDialog.offsetHeight)/2;}this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.OnClickColseButton=function(e){//this.RestoreParam(); //还原参数
15167
15170
  this.Close(e);};this.OnClickRestoreButton=function(e){var aryText=this.Arguments;if(!aryText)aryText=[];this.UpdateParamTable(aryText);this.RestoreParam();};this.OnClickOkButton=function(e){this.Close(e);};this.Close=function(e){this.IndexData=null;this.Arguments=[];if(!this.DivDialog)return;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.SetIndexData=function(data){this.IndexData=data;this.GetDefaultParam();//this.BackupParam();
15168
- };this.OnMouseDownTitle=function(e){var _this108=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this108.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this108.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;this.onmousemove=null;this.onmouseup=null;};this.Create=function(){var _this109=this;var divDom=document.createElement("div");divDom.className='UMyChart_ModifyIndexParam_Dialog_Div';//对话框标题栏
15169
- var divTitle=document.createElement("div");divTitle.className='UMyChart_ModifyIndexParam_Title_Div';divTitle.onmousedown=function(e){_this109.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divName=document.createElement("div");divName.className='UMyChart_ModifyIndexParam_Name_Div';divName.innerText="指标参数修改";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_ModifyIndexParam_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this109.OnClickColseButton(e);};divTitle.appendChild(divClose);//整个框子
15171
+ };this.OnMouseDownTitle=function(e){var _this109=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this109.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this109.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;this.onmousemove=null;this.onmouseup=null;};this.Create=function(){var _this110=this;var divDom=document.createElement("div");divDom.className='UMyChart_ModifyIndexParam_Dialog_Div';//对话框标题栏
15172
+ var divTitle=document.createElement("div");divTitle.className='UMyChart_ModifyIndexParam_Title_Div';divTitle.onmousedown=function(e){_this110.OnMouseDownTitle(e);};divDom.appendChild(divTitle);var divName=document.createElement("div");divName.className='UMyChart_ModifyIndexParam_Name_Div';divName.innerText="指标参数修改";divTitle.appendChild(divName);var divClose=document.createElement("div");divClose.className='UMyChart_ModifyIndexParam_Close_Div';divClose.innerText="x";divClose.onmousedown=function(e){_this110.OnClickColseButton(e);};divTitle.appendChild(divClose);//整个框子
15170
15173
  var divFrame=document.createElement("div");divFrame.className="UMyChart_ModifyIndexParam_Frome_Div";divDom.appendChild(divFrame);//表格
15171
15174
  var divTable=document.createElement("div");divTable.className='UMyChart_ModifyIndexParam_Table_Div';divFrame.appendChild(divTable);var table=document.createElement("table");table.className="UMyChart_ModifyIndexParam_Table";divTable.appendChild(table);var tbody=document.createElement("tbody");tbody.className="UMyChart_ModifyIndexParam_Tbody";table.appendChild(tbody);this.AryData=[];for(var i=0;i<this.MaxRowCount;++i){var rowItem=this.CreateRowDOM(i,tbody);this.AryData.push(rowItem);}var divButton=document.createElement("div");divButton.className='UMyChart_ModifyIndexParam_Button_Div';divFrame.appendChild(divButton);if(this.EnableRestoreParam){var btnRestore=document.createElement("button");//btnRestore.className="UMyChart_ModifyIndexParam_button";
15172
- btnRestore.innerText="恢复默认";btnRestore.addEventListener("mousedown",function(e){_this109.OnClickRestoreButton(e);});divButton.appendChild(btnRestore);}/*
15175
+ btnRestore.innerText="恢复默认";btnRestore.addEventListener("mousedown",function(e){_this110.OnClickRestoreButton(e);});divButton.appendChild(btnRestore);}/*
15173
15176
  var btnOk=document.createElement("button");
15174
15177
  //btnOk.className="UMyChart_ModifyIndexParam_button";
15175
15178
  btnOk.innerText="确认";
15176
15179
  btnOk.addEventListener("mousedown", (e)=>{ this.OnClickOkButton(e); })
15177
15180
  divButton.appendChild(btnOk);
15178
15181
  */var btnOk=document.createElement("button");//btnOk.className="UMyChart_ModifyIndexParam_button";
15179
- btnOk.innerText="关闭";btnOk.addEventListener("mousedown",function(e){_this109.Close(e);});divButton.appendChild(btnOk);document.body.appendChild(divDom);this.DivName=divName;this.DivDialog=divDom;this.TitleBox={DivTitle:divTitle,DivName:divName,DivColor:divClose};this.UpdateStyle();};this.CreateRowDOM=function(index,tbody){var _this110=this;var rowItem={Tr:null,TdName:null,SpanName:null,TdValue:null,Input:null,ParamItem:null};var trDom=document.createElement("tr");trDom.className='UMyChart_ModifyIndexParam_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_ModifyIndexParam_Name_Td";//指标名称
15182
+ btnOk.innerText="关闭";btnOk.addEventListener("mousedown",function(e){_this110.Close(e);});divButton.appendChild(btnOk);document.body.appendChild(divDom);this.DivName=divName;this.DivDialog=divDom;this.TitleBox={DivTitle:divTitle,DivName:divName,DivColor:divClose};this.UpdateStyle();};this.CreateRowDOM=function(index,tbody){var _this111=this;var rowItem={Tr:null,TdName:null,SpanName:null,TdValue:null,Input:null,ParamItem:null};var trDom=document.createElement("tr");trDom.className='UMyChart_ModifyIndexParam_Tr';tbody.appendChild(trDom);rowItem.Tr=trDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_ModifyIndexParam_Name_Td";//指标名称
15180
15183
  trDom.appendChild(tdDom);rowItem.TdName=tdDom;var spanDom=document.createElement("span");spanDom.className='UMyChart_ModifyIndexParam_Name_Span';spanDom.innerText='参数';tdDom.appendChild(spanDom);rowItem.SpanName=spanDom;var tdDom=document.createElement("td");tdDom.className="UMyChart_ModifyIndexParam_Value_Td";//指标名称
15181
- trDom.appendChild(tdDom);rowItem.TdValue=tdDom;var input=document.createElement("input");input.className='UMyChart_ModifyIndexParam_Input';input.type="number";input.step=1;input.addEventListener("mouseup",function(e){_this110.OnParamMouseUp(e);});input.addEventListener("keyup",function(e){_this110.OnParamKeyUp(e);});tdDom.appendChild(input);rowItem.Input=input;return rowItem;};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;if(this.TitleBGColor)this.TitleBox.DivTitle.style['background-color']=this.TitleBGColor;if(this.TitleColor)this.TitleBox.DivName.style['color']=this.TitleColor;};this.UpdateParamTable=function(aryText){var index=0;for(index=0;index<aryText.length&&index<this.AryData.length;++index){var item=aryText[index];var row=this.AryData[index];row.SpanName.innerText=item.Name+': ';row.SpanName.style.color=this.ParamNameColor;row.Input.value=item.Value;row.Input.style.color=this.InputTextColor;row.Input.dataset.paramid=item.Index;if(row.Tr.style.display=="none")row.Tr.style.display="";}for(;index<this.AryData.length;++index){var row=this.AryData[index];row.Tr.style.display="none";row.Input.dataset.paramid=-1;}};this.UpdateParam=function(){var aryText=[];var indexScript=this.IndexData.IndexScript;if(indexScript&&IFrameSplitOperator.IsNonEmptyArray(indexScript.Arguments)){for(var i=0;i<indexScript.Arguments.length;++i){var item=indexScript.Arguments[i];aryText.push({Name:item.Name,Value:item.Value,Index:i});}}this.UpdateParamTable(aryText);};this.RestoreParam=function(){if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;if(!IFrameSplitOperator.IsNonEmptyArray(indexScript.Arguments))return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Arguments))return;var bUpdate=false;for(var i=0;i<this.Arguments.length;++i){var oldItem=this.Arguments[i];var item=indexScript.Arguments[i];if(oldItem.Value!=item.Value){item.Value=oldItem.Value;bUpdate=true;}}if(!bUpdate)return;if(this.IndexData.Type==1)this.HQChart.UpdateWindowIndex(this.IndexData.WindowIndex);else if(this.IndexData.Type==2)this.HQChart.UpdateOverlayIndex(this.IndexData.Identify);};this.BackupParam=function(){this.Arguments=[];if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;if(IFrameSplitOperator.IsNonEmptyArray(indexScript.Arguments)){for(var i=0;i<indexScript.Arguments.length;++i){var item=indexScript.Arguments[i];this.Arguments.push({Name:item.Name,Value:item.Value,Index:i});}}};this.GetDefaultParam=function(){this.Arguments=[];if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;var args=[];if(indexScript.ID){var scriptData=new JSIndexScript();var indexInfo=scriptData.Get(indexScript.ID);if(indexInfo)args=indexInfo.Args;}var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.GET_DEFAULT_INDEX_PARAM);if(event&&event.Callback){var sendData={IndexData:this.IndexData,Args:args.slice(),PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault)return;args=sendData.Args;}if(IFrameSplitOperator.IsNonEmptyArray(args)){for(var i=0;i<args.length;++i){var item=args[i];this.Arguments.push({Name:item.Name,Value:item.Value,Index:i});}}};this.OnParamMouseUp=function(e){var input=e.target;var value=input.value;var id=input.dataset.paramid;this.ModifyParam(id,parseInt(value));};this.OnParamKeyUp=function(e){var input=e.target;var value=input.value;var id=input.dataset.paramid;this.ModifyParam(id,parseInt(value));};this.ModifyParam=function(id,value){if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;var item=indexScript.Arguments[id];if(!item)return;if(item.Value==value)return;item.Value=value;if(this.IndexData.Type==1){this.HQChart.UpdateWindowIndex(this.IndexData.WindowIndex);}else if(this.IndexData.Type==2){this.HQChart.UpdateOverlayIndex(this.IndexData.Identify);}};}///////////////////////////////////////////////////////////////////////////////////
15184
+ trDom.appendChild(tdDom);rowItem.TdValue=tdDom;var input=document.createElement("input");input.className='UMyChart_ModifyIndexParam_Input';input.type="number";input.step=1;input.addEventListener("mouseup",function(e){_this111.OnParamMouseUp(e);});input.addEventListener("keyup",function(e){_this111.OnParamKeyUp(e);});tdDom.appendChild(input);rowItem.Input=input;return rowItem;};this.UpdateStyle=function(){if(!this.DivDialog)return;if(this.BGColor)this.DivDialog.style['background-color']=this.BGColor;if(this.BorderColor)this.DivDialog.style['border-color']=this.BorderColor;if(this.TitleBGColor)this.TitleBox.DivTitle.style['background-color']=this.TitleBGColor;if(this.TitleColor)this.TitleBox.DivName.style['color']=this.TitleColor;};this.UpdateParamTable=function(aryText){var index=0;for(index=0;index<aryText.length&&index<this.AryData.length;++index){var item=aryText[index];var row=this.AryData[index];row.SpanName.innerText=item.Name+': ';row.SpanName.style.color=this.ParamNameColor;row.Input.value=item.Value;row.Input.style.color=this.InputTextColor;row.Input.dataset.paramid=item.Index;if(row.Tr.style.display=="none")row.Tr.style.display="";}for(;index<this.AryData.length;++index){var row=this.AryData[index];row.Tr.style.display="none";row.Input.dataset.paramid=-1;}};this.UpdateParam=function(){var aryText=[];var indexScript=this.IndexData.IndexScript;if(indexScript&&IFrameSplitOperator.IsNonEmptyArray(indexScript.Arguments)){for(var i=0;i<indexScript.Arguments.length;++i){var item=indexScript.Arguments[i];aryText.push({Name:item.Name,Value:item.Value,Index:i});}}this.UpdateParamTable(aryText);};this.RestoreParam=function(){if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;if(!IFrameSplitOperator.IsNonEmptyArray(indexScript.Arguments))return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Arguments))return;var bUpdate=false;for(var i=0;i<this.Arguments.length;++i){var oldItem=this.Arguments[i];var item=indexScript.Arguments[i];if(oldItem.Value!=item.Value){item.Value=oldItem.Value;bUpdate=true;}}if(!bUpdate)return;if(this.IndexData.Type==1)this.HQChart.UpdateWindowIndex(this.IndexData.WindowIndex);else if(this.IndexData.Type==2)this.HQChart.UpdateOverlayIndex(this.IndexData.Identify);};this.BackupParam=function(){this.Arguments=[];if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;if(IFrameSplitOperator.IsNonEmptyArray(indexScript.Arguments)){for(var i=0;i<indexScript.Arguments.length;++i){var item=indexScript.Arguments[i];this.Arguments.push({Name:item.Name,Value:item.Value,Index:i});}}};this.GetDefaultParam=function(){this.Arguments=[];if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;var args=[];if(indexScript.ID){var scriptData=new JSIndexScript();var indexInfo=scriptData.Get(indexScript.ID);if(indexInfo)args=indexInfo.Args;}var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.GET_DEFAULT_INDEX_PARAM);if(event&&event.Callback){var sendData={IndexData:this.IndexData,Args:args.slice(),PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault)return;args=sendData.Args;}if(IFrameSplitOperator.IsNonEmptyArray(args)){for(var i=0;i<args.length;++i){var item=args[i];this.Arguments.push({Name:item.Name,Value:item.Value,Index:i});}}};this.OnParamMouseUp=function(e){var input=e.target;var value=input.value;var id=input.dataset.paramid;this.ModifyParam(id,parseInt(value));};this.OnParamKeyUp=function(e){var input=e.target;var value=input.value;var id=input.dataset.paramid;this.ModifyParam(id,parseInt(value));};this.ModifyParam=function(id,value){if(!this.IndexData||!this.IndexData.IndexScript)return;var indexScript=this.IndexData.IndexScript;var item=indexScript.Arguments[id];if(!item)return;if(item.Value==value)return;item.Value=value;if(this.IndexData.Type==1){this.HQChart.UpdateWindowIndex(this.IndexData.WindowIndex);}else if(this.IndexData.Type==2){this.HQChart.UpdateOverlayIndex(this.IndexData.Identify);}};}///////////////////////////////////////////////////////////////////////////////////
15182
15185
  // 工作线程计算指标示例
15183
15186
  //
15184
15187
  //
15185
15188
  //////////////////////////////////////////////////////////////////////////////////
15186
15189
  function HQChartScriptWorker(){this.Status=0;//0=空闲 1=运行
15187
- this.Create=function(){var _this111=this;addEventListener('message',function(obj){_this111.OnRecvMessage(obj);});};this.NetworkFilter=function(data,callback,indexInfo){JSConsole.Complier.Log('[HQChartScriptWorker::NetworkFilter] ['+data.Name+']['+data.Explain+'] data=',data);//数据下载
15188
- };this.ExecuteScript=function(indexData,message){var _this112=this;var scriptObj={};if(indexData.Script){scriptObj.Name=indexData.Name;scriptObj.ID=indexData.Index;scriptObj.Script=indexData.Script;}else{if(!indexData.Index)return false;var scriptData=new JSIndexScript();var finder=scriptData.Get(indexData.Index);if(!finder)return false;scriptObj.ID=indexData.Index;scriptObj.Name=finder.Name;scriptObj.Script=finder.Script;scriptObj.Args=finder.Args;}if(indexData.Args)scriptObj.Args=indexData.Args;if(IFrameSplitOperator.IsBool(message.IsApiPeriod))scriptObj.IsApiPeriod=message.IsApiPeriod;var indexInfo={Name:scriptObj.Name,ID:scriptObj.ID,Script:scriptObj.Script,Args:scriptObj.Args,Guid:message.Guid};scriptObj.ErrorCallback=function(error){_this112.OnExecuteError(error,indexInfo,message);};scriptObj.FinishCallback=function(data,jsExectute){_this112.OnExecuteFinish(data,indexInfo,jsExectute,message);};scriptObj.NetworkFilter=function(data,callback){_this112.NetworkFilter(data,callback,indexInfo,message);};JSConsole.Complier.Log('[HQChartScriptWorker::ExecuteScript] scriptObj=',scriptObj);var indexConsole=new ScriptIndexConsole(scriptObj);var hisData=null;if(message&&message.Data){hisData=new ChartData();hisData.Data=message.Data;hisData.Right=message.Right;hisData.Period=message.Period;hisData.DataType=message.DataType;//0=日线 1=分钟
15190
+ this.Create=function(){var _this112=this;addEventListener('message',function(obj){_this112.OnRecvMessage(obj);});};this.NetworkFilter=function(data,callback,indexInfo){JSConsole.Complier.Log('[HQChartScriptWorker::NetworkFilter] ['+data.Name+']['+data.Explain+'] data=',data);//数据下载
15191
+ };this.ExecuteScript=function(indexData,message){var _this113=this;var scriptObj={};if(indexData.Script){scriptObj.Name=indexData.Name;scriptObj.ID=indexData.Index;scriptObj.Script=indexData.Script;}else{if(!indexData.Index)return false;var scriptData=new JSIndexScript();var finder=scriptData.Get(indexData.Index);if(!finder)return false;scriptObj.ID=indexData.Index;scriptObj.Name=finder.Name;scriptObj.Script=finder.Script;scriptObj.Args=finder.Args;}if(indexData.Args)scriptObj.Args=indexData.Args;if(IFrameSplitOperator.IsBool(message.IsApiPeriod))scriptObj.IsApiPeriod=message.IsApiPeriod;var indexInfo={Name:scriptObj.Name,ID:scriptObj.ID,Script:scriptObj.Script,Args:scriptObj.Args,Guid:message.Guid};scriptObj.ErrorCallback=function(error){_this113.OnExecuteError(error,indexInfo,message);};scriptObj.FinishCallback=function(data,jsExectute){_this113.OnExecuteFinish(data,indexInfo,jsExectute,message);};scriptObj.NetworkFilter=function(data,callback){_this113.NetworkFilter(data,callback,indexInfo,message);};JSConsole.Complier.Log('[HQChartScriptWorker::ExecuteScript] scriptObj=',scriptObj);var indexConsole=new ScriptIndexConsole(scriptObj);var hisData=null;if(message&&message.Data){hisData=new ChartData();hisData.Data=message.Data;hisData.Right=message.Right;hisData.Period=message.Period;hisData.DataType=message.DataType;//0=日线 1=分钟
15189
15192
  hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,Stock:{Symbol:message.Symbol},Request:{MaxDataCount:500,MaxMinuteDayCount:5},Period:message.Period,Right:message.Right,Data:hisData};if(IFrameSplitOperator.IsNumber(message.HQDataType))stockObj.HQDataType=message.HQDataType;indexConsole.ExecuteScript(stockObj);};this.OnRecvMessage=function(message){var data=message.data;if(!data)return;if(data.ID==JSCHART_WORKER_MESSAGE_ID.EXECUTE_SCRIPT){if(!IFrameSplitOperator.IsNonEmptyArray(data.AryIndex))return;for(var i=0;i<data.AryIndex.length;++i){var item=data.AryIndex[i];this.Status=1;//执行状态
15190
15193
  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);};}/********************************************************************************
15191
15194
  * 版本信息输出
15192
15195
  *
15193
- */var HQCHART_VERSION="1.1.14914";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();//把给外界调用的方法暴露出来
15196
+ */var HQCHART_VERSION="1.1.14918";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();//把给外界调用的方法暴露出来
15194
15197
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15195
15198
  // BaseIndex:BaseIndex,
15196
15199
  // ChartLine:ChartLine,