hqchart 1.1.12790 → 1.1.12798

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.
@@ -4451,6 +4451,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4451
4451
  var item=option.EnableYDrag;
4452
4452
  if (IFrameSplitOperator.IsBool(item.Left)) chart.EnableYDrag.Left=item.Left;
4453
4453
  if (IFrameSplitOperator.IsBool(item.Right)) chart.EnableYDrag.Right=item.Right;
4454
+ if (IFrameSplitOperator.IsBool(item.Wheel)) chart.EnableYDrag.Wheel=item.Wheel;
4455
+ if (IFrameSplitOperator.IsNumber(item.WheelYMove)) chart.EnableYDrag.WheelYMove=item.WheelYMove;
4454
4456
  }
4455
4457
 
4456
4458
  if (option.KLine) //k线图的属性设置
@@ -6404,6 +6406,11 @@ JSChart.GetKLineZoom=function() //K线缩放配置
6404
6406
  return ZOOM_SEED;
6405
6407
  }
6406
6408
 
6409
+ JSChart.SetKLineZoom=function(aryZoom) //设置K线缩放比例
6410
+ {
6411
+ ZOOM_SEED=aryZoom;
6412
+ }
6413
+
6407
6414
  JSChart.GetDivTooltipDataFormat=function() //div tooltip数据格式化
6408
6415
  {
6409
6416
  return g_DivTooltipDataForamt;
@@ -6685,6 +6692,8 @@ var JSCHART_EVENT_ID=
6685
6692
  ON_KEYDOWN:117,
6686
6693
 
6687
6694
  ON_CREATE_OVERLAY_FRAME:118, //创建叠加框架回调
6695
+
6696
+ ON_CREATE_CUSTOM_Y_COORDINATE:119, //自定义Y轴刻度
6688
6697
  }
6689
6698
 
6690
6699
  var JSCHART_OPERATOR_ID=
@@ -6982,7 +6991,12 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
6982
6991
  this.ClickDownPoint; //鼠标点击坐标 {X, Y}, 鼠标放开以后清空为null
6983
6992
  this.IsDestroy=false; //是否已经销毁了
6984
6993
 
6985
- this.EnableYDrag={ Left:false, Right:false }; //是否可以拖拽Y轴,放大缩小Y轴最大最小值
6994
+ this.EnableYDrag=
6995
+ {
6996
+ Left:false, Right:false, //是否可以拖拽缩放Y轴最大最小值
6997
+ Wheel:false, WheelYMove:5 //是否可以滚轴缩放Y轴最大最小值
6998
+ };
6999
+
6986
7000
  this.EnableZoomIndexWindow=false; //是否支持双击缩放附图窗口
6987
7001
  this.EnableVerifyRecvData=false; //是否检测接收到的数据
6988
7002
 
@@ -47408,130 +47422,144 @@ function IFrameSplitOperator()
47408
47422
  return result;
47409
47423
  }
47410
47424
 
47411
- //当前屏最新指标数据
47412
- this.CustomLatestIndexDataCoordinate=function(option)
47413
- {
47414
- var pageInfo=this.GetKLinePageInfo(); //获取当前屏信息
47415
- if (!pageInfo) return;
47416
- if (!this.HQChart) return;
47417
-
47418
- var event=null;
47419
- if (this.GetEventCallback)
47420
- event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_INDEX_Y_LABEL);
47421
-
47422
- var endIndex=pageInfo.End.Index;
47423
- var floatPrecision=2;
47424
- if (IFrameSplitOperator.IsNumber(this.FloatPrecision)) floatPrecision=this.FloatPrecision;
47425
- for(var i=0, j=0;i<this.HQChart.ChartPaint.length;++i)
47426
- {
47427
- var chart=this.HQChart.ChartPaint[i];
47428
- if (!chart.ChartFrame) continue;
47429
- if (!chart.GetItemData) continue;
47430
- if (chart.ChartFrame.Identify==this.Frame.Identify || chart.ChartFrame==this.Frame)
47431
- {
47432
- var aryItem=chart.GetItemData( {Index:endIndex} );
47433
- if (!IFrameSplitOperator.IsNonEmptyArray(aryItem)) continue;
47434
-
47435
- for(j=0; j<aryItem.length; ++j)
47436
- {
47437
- var item=aryItem[j];
47438
-
47439
- var info=new CoordinateInfo();
47440
- info.Type=1;
47441
- info.TextColor=g_JSChartResource.FrameLatestPrice.TextColor;
47442
- info.LineColor=item.Color;
47443
- info.LineType=-1; //默认不画线
47444
- info.IsLast=pageInfo.IsLast;//是否是最后一个数据
47445
- if (IFrameSplitOperator.IsNumber(option.LineType)) info.LineType=option.LineType;
47446
-
47447
- info.Value=item.Value;
47448
- var text=IFrameSplitOperator.FormatValueString(item.Value, floatPrecision,this.LanguageID);
47449
-
47450
- if (option.Position=='left') info.Message[0]=text;
47451
- else info.Message[1]=text;
47452
-
47453
- if (!pageInfo.IsLast)
47454
- {
47455
- var config={};
47456
- if (!pageInfo.IsLast) config.EmptyBGColor=g_JSChartResource.FrameLatestPrice.EmptyBGColor;
47457
-
47458
- info.ExtendData={ Custom:config };
47459
- }
47460
-
47461
- if (event)
47462
- {
47463
- var sendData={ PreventDefault:false, Label:info, Data:item, IndexName:chart.IndexName, FrameID:this.Frame.Identify };
47464
- event.Callback(event,sendData,this);
47465
-
47466
- if (sendData.PreventDefault) continue;
47467
- }
47468
-
47469
- this.Frame.CustomHorizontalInfo.push(info);
47470
- }
47471
- }
47472
- }
47473
- }
47474
-
47475
- this.CustomLatestOverlayIndexDataCoordinate=function(option)
47476
- {
47425
+ //当前屏最新指标数据
47426
+ this.CustomLatestIndexDataCoordinate=function(option)
47427
+ {
47477
47428
  var pageInfo=this.GetKLinePageInfo(); //获取当前屏信息
47478
47429
  if (!pageInfo) return;
47479
- if (!this.OverlayIndex) return;
47480
- if (!IFrameSplitOperator.IsNonEmptyArray(this.OverlayIndex.ChartPaint)) return;
47430
+ if (!this.HQChart) return;
47481
47431
 
47482
47432
  var event=null;
47483
47433
  if (this.GetEventCallback)
47484
- event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_OVERLAY_INDEX_Y_LABEL);
47434
+ event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_INDEX_Y_LABEL);
47485
47435
 
47486
47436
  var endIndex=pageInfo.End.Index;
47487
47437
  var floatPrecision=2;
47488
47438
  if (IFrameSplitOperator.IsNumber(this.FloatPrecision)) floatPrecision=this.FloatPrecision;
47489
-
47490
- for(var i=0, j=0;i<this.OverlayIndex.ChartPaint.length;++i)
47439
+ for(var i=0, j=0;i<this.HQChart.ChartPaint.length;++i)
47491
47440
  {
47492
- var chart=this.OverlayIndex.ChartPaint[i];
47441
+ var chart=this.HQChart.ChartPaint[i];
47493
47442
  if (!chart.ChartFrame) continue;
47494
47443
  if (!chart.GetItemData) continue;
47495
-
47496
- var aryItem=chart.GetItemData( {Index:endIndex} );
47497
- if (!IFrameSplitOperator.IsNonEmptyArray(aryItem)) continue;
47498
- for(j=0; j<aryItem.length; ++j)
47444
+ if (chart.ChartFrame.Identify==this.Frame.Identify || chart.ChartFrame==this.Frame)
47499
47445
  {
47500
- var item=aryItem[j];
47501
- var info=new CoordinateInfo();
47502
- info.Type=1;
47503
- info.TextColor=g_JSChartResource.FrameLatestPrice.TextColor;
47504
- info.LineColor=item.Color;
47505
- info.LineType=-1; //默认不画线
47506
- info.IsLast=pageInfo.IsLast;//是否是最后一个数据
47507
- if (IFrameSplitOperator.IsNumber(option.LineType)) info.LineType=option.LineType;
47446
+ var aryItem=chart.GetItemData( {Index:endIndex} );
47447
+ if (!IFrameSplitOperator.IsNonEmptyArray(aryItem)) continue;
47508
47448
 
47509
- info.Value=item.Value;
47510
- var text=IFrameSplitOperator.FormatValueString(item.Value, floatPrecision,this.LanguageID);
47449
+ for(j=0; j<aryItem.length; ++j)
47450
+ {
47451
+ var item=aryItem[j];
47511
47452
 
47512
- if (option.Position=='left') info.Message[0]=text;
47513
- else info.Message[1]=text;
47453
+ var info=new CoordinateInfo();
47454
+ info.Type=1;
47455
+ info.TextColor=g_JSChartResource.FrameLatestPrice.TextColor;
47456
+ info.LineColor=item.Color;
47457
+ info.LineType=-1; //默认不画线
47458
+ info.IsLast=pageInfo.IsLast;//是否是最后一个数据
47459
+ if (IFrameSplitOperator.IsNumber(option.LineType)) info.LineType=option.LineType;
47460
+
47461
+ info.Value=item.Value;
47462
+ var text=IFrameSplitOperator.FormatValueString(item.Value, floatPrecision,this.LanguageID);
47514
47463
 
47515
- if (!pageInfo.IsLast)
47516
- {
47517
- var config={};
47518
- if (!pageInfo.IsLast) config.EmptyBGColor=g_JSChartResource.FrameLatestPrice.EmptyBGColor;
47464
+ if (option.Position=='left') info.Message[0]=text;
47465
+ else info.Message[1]=text;
47519
47466
 
47520
- info.ExtendData={ Custom:config };
47521
- }
47467
+ if (!pageInfo.IsLast)
47468
+ {
47469
+ var config={};
47470
+ if (!pageInfo.IsLast) config.EmptyBGColor=g_JSChartResource.FrameLatestPrice.EmptyBGColor;
47522
47471
 
47523
- if (event)
47524
- {
47525
- var sendData={ PreventDefault:false, Label:info, Data:item, IndexName:chart.IndexName, OverlayIdentify:this.OverlayIndex.Identify };
47526
- event.Callback(event,sendData,this);
47472
+ info.ExtendData={ Custom:config };
47473
+ }
47527
47474
 
47528
- if (sendData.PreventDefault) continue;
47475
+ if (event)
47476
+ {
47477
+ var sendData={ PreventDefault:false, Label:info, Data:item, IndexName:chart.IndexName, FrameID:this.Frame.Identify };
47478
+ event.Callback(event,sendData,this);
47479
+
47480
+ if (sendData.PreventDefault) continue;
47481
+ }
47482
+
47483
+ this.Frame.CustomHorizontalInfo.push(info);
47529
47484
  }
47530
-
47531
- this.Frame.CustomHorizontalInfo.push(info);
47532
47485
  }
47533
47486
  }
47534
- }
47487
+ }
47488
+
47489
+ this.CustomLatestOverlayIndexDataCoordinate=function(option)
47490
+ {
47491
+ var pageInfo=this.GetKLinePageInfo(); //获取当前屏信息
47492
+ if (!pageInfo) return;
47493
+ if (!this.OverlayIndex) return;
47494
+ if (!IFrameSplitOperator.IsNonEmptyArray(this.OverlayIndex.ChartPaint)) return;
47495
+
47496
+ var event=null;
47497
+ if (this.GetEventCallback)
47498
+ event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_OVERLAY_INDEX_Y_LABEL);
47499
+
47500
+ var endIndex=pageInfo.End.Index;
47501
+ var floatPrecision=2;
47502
+ if (IFrameSplitOperator.IsNumber(this.FloatPrecision)) floatPrecision=this.FloatPrecision;
47503
+
47504
+ for(var i=0, j=0;i<this.OverlayIndex.ChartPaint.length;++i)
47505
+ {
47506
+ var chart=this.OverlayIndex.ChartPaint[i];
47507
+ if (!chart.ChartFrame) continue;
47508
+ if (!chart.GetItemData) continue;
47509
+
47510
+ var aryItem=chart.GetItemData( {Index:endIndex} );
47511
+ if (!IFrameSplitOperator.IsNonEmptyArray(aryItem)) continue;
47512
+ for(j=0; j<aryItem.length; ++j)
47513
+ {
47514
+ var item=aryItem[j];
47515
+ var info=new CoordinateInfo();
47516
+ info.Type=1;
47517
+ info.TextColor=g_JSChartResource.FrameLatestPrice.TextColor;
47518
+ info.LineColor=item.Color;
47519
+ info.LineType=-1; //默认不画线
47520
+ info.IsLast=pageInfo.IsLast;//是否是最后一个数据
47521
+ if (IFrameSplitOperator.IsNumber(option.LineType)) info.LineType=option.LineType;
47522
+
47523
+ info.Value=item.Value;
47524
+ var text=IFrameSplitOperator.FormatValueString(item.Value, floatPrecision,this.LanguageID);
47525
+
47526
+ if (option.Position=='left') info.Message[0]=text;
47527
+ else info.Message[1]=text;
47528
+
47529
+ if (!pageInfo.IsLast)
47530
+ {
47531
+ var config={};
47532
+ if (!pageInfo.IsLast) config.EmptyBGColor=g_JSChartResource.FrameLatestPrice.EmptyBGColor;
47533
+
47534
+ info.ExtendData={ Custom:config };
47535
+ }
47536
+
47537
+ if (event)
47538
+ {
47539
+ var sendData={ PreventDefault:false, Label:info, Data:item, IndexName:chart.IndexName, OverlayIdentify:this.OverlayIndex.Identify };
47540
+ event.Callback(event,sendData,this);
47541
+
47542
+ if (sendData.PreventDefault) continue;
47543
+ }
47544
+
47545
+ this.Frame.CustomHorizontalInfo.push(info);
47546
+ }
47547
+ }
47548
+ },
47549
+
47550
+ //回调外部处理自定义Y轴刻度
47551
+ this.InvokeCustomYCoordinateCallback=function()
47552
+ {
47553
+ if (!this.GetEventCallback) return null;
47554
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_CUSTOM_Y_COORDINATE);
47555
+ if (!event || !event.Callback) return null;
47556
+
47557
+ var data={ ID:this.Frame.Identify, Frame:this.Frame, PreventDefault:false, Custom:this.Custom };
47558
+ if (this.OverlayIdentify) data.OverlayIdentify=this.OverlayIdentify;
47559
+ event.Callback(event,data,this);
47560
+
47561
+ return data;
47562
+ }
47535
47563
  }
47536
47564
 
47537
47565
  //字符串格式化 千分位分割
@@ -48532,6 +48560,10 @@ function FrameSplitKLinePriceY()
48532
48560
  this.CustomCoordinate=function(floatPrecision)
48533
48561
  {
48534
48562
  this.Frame.CustomHorizontalInfo=[];
48563
+
48564
+ var data=this.InvokeCustomYCoordinateCallback();
48565
+ if (data && data.PreventDefault==true) return;
48566
+
48535
48567
  var lastCoordinate, pageLastCoordinate;
48536
48568
  for(var i=0; i<this.Custom.length; ++i)
48537
48569
  {
@@ -49179,6 +49211,9 @@ function FrameSplitY()
49179
49211
  {
49180
49212
  this.Frame.CustomHorizontalInfo=[];
49181
49213
 
49214
+ var data=this.InvokeCustomYCoordinateCallback();
49215
+ if (data && data.PreventDefault==true) return;
49216
+
49182
49217
  if (!IFrameSplitOperator.IsNonEmptyArray(this.Custom)) return;
49183
49218
 
49184
49219
  for(var i=0; i<this.Custom.length; ++i)
@@ -49560,6 +49595,9 @@ function FrameSplitMinutePriceY()
49560
49595
 
49561
49596
  this.CustomCoordinate=function() //自定义刻度
49562
49597
  {
49598
+ var data=this.InvokeCustomYCoordinateCallback();
49599
+ if (data && data.PreventDefault==true) return;
49600
+
49563
49601
  if (!this.Custom) return;
49564
49602
 
49565
49603
  var defaultfloatPrecision=GetfloatPrecision(this.Symbol);
@@ -70373,12 +70411,47 @@ function KLineChartContainer(uielement,OffscreenElement)
70373
70411
  }
70374
70412
  }
70375
70413
 
70376
- if (!isInClient) return;
70414
+ if (!isInClient)
70415
+ {
70416
+ if (!this.OnWheel_ZoomUpDownFrameY(e,x,y)) return;
70417
+ }
70377
70418
 
70378
70419
  if(e.preventDefault) e.preventDefault();
70379
70420
  else e.returnValue = false;
70380
70421
  }
70381
70422
 
70423
+ //通过滚轴缩放Y轴
70424
+ this.OnWheel_ZoomUpDownFrameY=function(e, x, y)
70425
+ {
70426
+ if (!this.EnableYDrag.Wheel) return false;
70427
+
70428
+ var dragY=this.TryYDrag(x,y);
70429
+ if (!dragY) return false;
70430
+
70431
+ if ((dragY.Left && !dragY.IsOverlay) || dragY.Right)
70432
+ {
70433
+
70434
+ }
70435
+ else
70436
+ {
70437
+ return false;
70438
+ }
70439
+
70440
+ var wheelValue=e.wheelDelta;
70441
+ if (!IFrameSplitOperator.IsObjectExist(e.wheelDelta))
70442
+ wheelValue=e.deltaY* -0.01;
70443
+
70444
+ var yMove=this.EnableYDrag.WheelYMove;
70445
+ if (wheelValue>0) yMove*=-1;
70446
+ dragY.Position=0; //只能两边缩放
70447
+ if (!this.Frame.OnZoomUpDownFrameY(dragY, yMove)) return false;
70448
+
70449
+ this.Frame.SetSizeChage(true);
70450
+ this.Draw();
70451
+
70452
+ return true;
70453
+ }
70454
+
70382
70455
  //创建
70383
70456
  //windowCount 窗口个数
70384
70457
  this.Create=function(windowCount, option)
@@ -114729,7 +114802,7 @@ function ScriptIndex(name,script,args,option)
114729
114802
  //是否超出执行的最大次数
114730
114803
  this.IsExcessRunCount=function()
114731
114804
  {
114732
- if (this.MaxRunCount<=0) return false; //没有限制
114805
+ if (this.MaxRunCount<0) return false; //没有限制
114733
114806
 
114734
114807
  return this.RunCount>=this.MaxRunCount;
114735
114808
  }
@@ -131496,7 +131569,7 @@ function ScrollBarBGChart()
131496
131569
 
131497
131570
 
131498
131571
 
131499
- var HQCHART_VERSION="1.1.12789";
131572
+ var HQCHART_VERSION="1.1.12797";
131500
131573
 
131501
131574
  function PrintHQChartVersion()
131502
131575
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.12789";
8
+ var HQCHART_VERSION="1.1.12797";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {