hqchart 1.1.14394 → 1.1.14404
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +38 -29
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +142 -14
- package/src/jscommon/umychart.js +218 -51
- package/src/jscommon/umychart.testdata/DayMinute/600000.sh.1day.minute.js +1 -1
- package/src/jscommon/umychart.testdata.js +141 -13
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +219 -52
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +142 -14
- package/src/jscommon/umychart.vue/umychart.vue.js +219 -52
|
@@ -4920,6 +4920,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4920
4920
|
}
|
|
4921
4921
|
}
|
|
4922
4922
|
|
|
4923
|
+
if (option.EnableYDrag)
|
|
4924
|
+
{
|
|
4925
|
+
var item=option.EnableYDrag;
|
|
4926
|
+
if (IFrameSplitOperator.IsBool(item.Left)) chart.EnableYDrag.Left=item.Left;
|
|
4927
|
+
if (IFrameSplitOperator.IsBool(item.Right)) chart.EnableYDrag.Right=item.Right;
|
|
4928
|
+
if (IFrameSplitOperator.IsBool(item.Wheel)) chart.EnableYDrag.Wheel=item.Wheel;
|
|
4929
|
+
if (IFrameSplitOperator.IsNumber(item.WheelYMove)) chart.EnableYDrag.WheelYMove=item.WheelYMove;
|
|
4930
|
+
}
|
|
4931
|
+
|
|
4923
4932
|
//分页
|
|
4924
4933
|
if (option.PageInfo) chart.SetPageInfo(option.PageInfo);
|
|
4925
4934
|
|
|
@@ -4995,7 +5004,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4995
5004
|
}
|
|
4996
5005
|
if (item.Height>=0) chart.Frame.SubFrame[i].Height = item.Height;
|
|
4997
5006
|
if (item.Custom) chart.Frame.SubFrame[i].Frame.YSplitOperator.Custom=item.Custom;
|
|
4998
|
-
if (item.RightTextFormat>0) chart.Frame.SubFrame[i].Frame.YSplitOperator.RightTextFormat=item.RightTextFormat;
|
|
4999
5007
|
if (IFrameSplitOperator.IsNumber(item.TitleHeight)) chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;
|
|
5000
5008
|
if (IFrameSplitOperator.IsNumber(item.BorderLine)) chart.Frame.SubFrame[i].Frame.BorderLine=item.BorderLine;
|
|
5001
5009
|
if (IFrameSplitOperator.IsBool(item.EnableRemoveZero)) chart.Frame.SubFrame[i].Frame.YSplitOperator.EnableRemoveZero=item.EnableRemoveZero;
|
|
@@ -5013,6 +5021,15 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
5013
5021
|
|
|
5014
5022
|
if (item.ClientBGColor) subFrame.ClientBGColor=item.ClientBGColor;
|
|
5015
5023
|
if (!IFrameSplitOperator.IsUndefined(item.HorizontalReserved)) subFrame.HorizontalReserved=item.HorizontalReserved;
|
|
5024
|
+
|
|
5025
|
+
if (i==0)
|
|
5026
|
+
{
|
|
5027
|
+
if (IFrameSplitOperator.IsNumber(item.RightTextFormat))
|
|
5028
|
+
{
|
|
5029
|
+
subFrame.YSplitOperator.RightTextFormat=item.RightTextFormat;
|
|
5030
|
+
if (item.RightTextFormat==2) subFrame.MultiTextFormat=1;
|
|
5031
|
+
}
|
|
5032
|
+
}
|
|
5016
5033
|
}
|
|
5017
5034
|
|
|
5018
5035
|
chart.UpdateXShowText();
|
|
@@ -16405,7 +16422,7 @@ function AverageWidthFrame()
|
|
|
16405
16422
|
var item=aryText[i];
|
|
16406
16423
|
var message=item.Item;
|
|
16407
16424
|
|
|
16408
|
-
this.Canvas.textBaseline=
|
|
16425
|
+
this.Canvas.textBaseline=item.TextBaseline;
|
|
16409
16426
|
if (message.ExtendData && message.ExtendData.Font) this.Canvas.font=message.ExtendData.Font;
|
|
16410
16427
|
else if (message.Font) this.Canvas.font=message.Font;
|
|
16411
16428
|
|
|
@@ -18028,20 +18045,17 @@ function AverageWidthFrame()
|
|
|
18028
18045
|
|
|
18029
18046
|
if (Array.isArray(item.Message[1]))
|
|
18030
18047
|
{
|
|
18031
|
-
if (this.MultiTextFormat==1) //显示1行 格式:价格/百分比
|
|
18048
|
+
if (this.MultiTextFormat==1 && IFrameSplitOperator.IsNonEmptyArray(item.Message[1])) //显示1行 格式:价格/百分比
|
|
18032
18049
|
{
|
|
18033
|
-
if (item.ExtendData)
|
|
18034
|
-
|
|
18035
|
-
|
|
18036
|
-
|
|
18037
|
-
|
|
18038
|
-
|
|
18039
|
-
|
|
18040
|
-
|
|
18041
|
-
if (rightExtendWidth<width2) rightExtendWidth=width2;
|
|
18050
|
+
if (item.ExtendData && item.ExtendData.Font) this.Canvas.font=item.ExtendData.Font;
|
|
18051
|
+
|
|
18052
|
+
var width1=this.Canvas.measureText(item.Message[1][0]).width;
|
|
18053
|
+
var width2=this.Canvas.measureText(item.Message[1][1]).width;
|
|
18054
|
+
var width3=this.Canvas.measureText('/').width;
|
|
18055
|
+
textWidth=width1+width3;
|
|
18056
|
+
if (rightExtendWidth<width2) rightExtendWidth=width2;
|
|
18042
18057
|
|
|
18043
|
-
|
|
18044
|
-
}
|
|
18058
|
+
//JSConsole.Chart.Log(`[ChartData::GetScaleTextWidth] ${item.Message[1][1]}/${item.Message[1][0]} ${textWidth}, ${rightExtendWidth}`);
|
|
18045
18059
|
}
|
|
18046
18060
|
else if (this.MultiTextFormat==2) //显示2行
|
|
18047
18061
|
{
|
|
@@ -41066,7 +41080,7 @@ function ChartMinutePriceLine()
|
|
|
41066
41080
|
if (value==null) continue;
|
|
41067
41081
|
|
|
41068
41082
|
var x=this.ChartFrame.GetXFromIndex(j);
|
|
41069
|
-
var y=this.ChartFrame.GetYFromData(value);
|
|
41083
|
+
var y=this.ChartFrame.GetYFromData(value,false);
|
|
41070
41084
|
|
|
41071
41085
|
if (bFirstPoint)
|
|
41072
41086
|
{
|
|
@@ -56303,7 +56317,7 @@ function FrameSplitMinutePriceY()
|
|
|
56303
56317
|
this.DefaultSplitType=0;
|
|
56304
56318
|
this.LimitPrice; //{Max: Min:} 涨跌停价
|
|
56305
56319
|
this.Custom;
|
|
56306
|
-
this.RightTextFormat=0; //右边刻度显示模式 0=百分比 1=价格
|
|
56320
|
+
this.RightTextFormat=0; //右边刻度显示模式 0=百分比 1=价格 2=价格 | 百分比
|
|
56307
56321
|
|
|
56308
56322
|
this.BeforeOpenData;
|
|
56309
56323
|
this.IsBeforeData=false;
|
|
@@ -56319,9 +56333,12 @@ function FrameSplitMinutePriceY()
|
|
|
56319
56333
|
this.GlobalOption;
|
|
56320
56334
|
this.HQChart;
|
|
56321
56335
|
|
|
56336
|
+
this.FixedYMaxMin; //{ Max, Min} 固定Y轴最大最小值
|
|
56337
|
+
this.EnableZoomUpDown=false;
|
|
56338
|
+
|
|
56322
56339
|
this.IsEnableDragY=function()
|
|
56323
56340
|
{
|
|
56324
|
-
return
|
|
56341
|
+
return true;
|
|
56325
56342
|
}
|
|
56326
56343
|
|
|
56327
56344
|
this.Operator=function()
|
|
@@ -56330,23 +56347,35 @@ function FrameSplitMinutePriceY()
|
|
|
56330
56347
|
this.Frame.CustomHorizontalInfo=[];
|
|
56331
56348
|
if (!this.Data) return;
|
|
56332
56349
|
|
|
56333
|
-
var range=
|
|
56350
|
+
var range=null;
|
|
56351
|
+
var isFixedMaxMin=(this.FixedYMaxMin && IFrameSplitOperator.IsNumber(this.FixedYMaxMin.Max) && IFrameSplitOperator.IsNumber(this.FixedYMaxMin.Min));
|
|
56352
|
+
if (isFixedMaxMin)
|
|
56353
|
+
{
|
|
56354
|
+
range={ Max:this.FixedYMaxMin.Max, Min:this.FixedYMaxMin.Min };
|
|
56355
|
+
JSConsole.Chart.Log(`[FrameSplitMinutePriceY::Operator] FixedYMaxMin.Max=${this.FixedYMaxMin.Max} FixedYMaxMin.Min=${this.FixedYMaxMin.Min} `);
|
|
56356
|
+
}
|
|
56357
|
+
else
|
|
56358
|
+
{
|
|
56359
|
+
range=this.GetMaxMin();
|
|
56360
|
+
}
|
|
56334
56361
|
|
|
56335
56362
|
if (this.Symbol && MARKET_SUFFIX_NAME.IsUSA(this.Symbol.toUpperCase()))
|
|
56336
56363
|
{
|
|
56337
|
-
this.USASplit(range);
|
|
56364
|
+
this.USASplit(range,isFixedMaxMin);
|
|
56338
56365
|
}
|
|
56339
56366
|
else if (this.SplitType==2)
|
|
56340
56367
|
{
|
|
56341
|
-
this.USASplit(range);
|
|
56368
|
+
this.USASplit(range,isFixedMaxMin);
|
|
56342
56369
|
}
|
|
56343
56370
|
else
|
|
56344
56371
|
{
|
|
56345
|
-
this.DefaultSplit(range);
|
|
56372
|
+
this.DefaultSplit(range,isFixedMaxMin);
|
|
56346
56373
|
}
|
|
56347
56374
|
|
|
56348
56375
|
this.CustomCoordinate();
|
|
56349
56376
|
|
|
56377
|
+
if (this.EnableZoomUpDown==true && !this.FixedYMaxMin) this.FixedYMaxMin={ Max:range.Max, Min:range.Min };
|
|
56378
|
+
|
|
56350
56379
|
this.ReservedHeight({ Max:this.Frame.HorizontalMax, Min:this.Frame.HorizontalMin }); //预留高度
|
|
56351
56380
|
|
|
56352
56381
|
if (this.GetEventCallback)
|
|
@@ -56742,10 +56771,21 @@ function FrameSplitMinutePriceY()
|
|
|
56742
56771
|
var per=(price/this.YClose-1)*100;
|
|
56743
56772
|
if (per>0) coordinate.TextColor=g_JSChartResource.UpTextColor;
|
|
56744
56773
|
else if (per<0) coordinate.TextColor=g_JSChartResource.DownTextColor;
|
|
56774
|
+
var strPer=IFrameSplitOperator.FormatValueString(per,2)+'%';
|
|
56745
56775
|
if (this.IsShowRightText)
|
|
56746
56776
|
{
|
|
56747
|
-
if (this.RightTextFormat==1)
|
|
56748
|
-
|
|
56777
|
+
if (this.RightTextFormat==1)
|
|
56778
|
+
{
|
|
56779
|
+
coordinate.Message[1]=strPrice;
|
|
56780
|
+
}
|
|
56781
|
+
else if (this.RightTextFormat==2) //价格/百分比
|
|
56782
|
+
{
|
|
56783
|
+
coordinate.Message[1]=[strPrice,strPer];
|
|
56784
|
+
}
|
|
56785
|
+
else
|
|
56786
|
+
{
|
|
56787
|
+
coordinate.Message[1]=strPer; //百分比
|
|
56788
|
+
}
|
|
56749
56789
|
}
|
|
56750
56790
|
}
|
|
56751
56791
|
|
|
@@ -56777,22 +56817,25 @@ function FrameSplitMinutePriceY()
|
|
|
56777
56817
|
this.Frame.HorizontalMin=min;
|
|
56778
56818
|
}
|
|
56779
56819
|
|
|
56780
|
-
this.DefaultSplit=function(range)
|
|
56820
|
+
this.DefaultSplit=function(range,isFixedMaxMin)
|
|
56781
56821
|
{
|
|
56782
56822
|
var max=range.Max;
|
|
56783
56823
|
var min=range.Min;
|
|
56784
56824
|
|
|
56785
|
-
if (
|
|
56786
|
-
{
|
|
56787
|
-
max=this.YClose+this.YClose*0.1;
|
|
56788
|
-
min=this.YClose-this.YClose*0.1
|
|
56789
|
-
}
|
|
56790
|
-
else
|
|
56825
|
+
if (!isFixedMaxMin)
|
|
56791
56826
|
{
|
|
56792
|
-
|
|
56793
|
-
|
|
56794
|
-
|
|
56795
|
-
|
|
56827
|
+
if (this.YClose==max && this.YClose==min)
|
|
56828
|
+
{
|
|
56829
|
+
max=this.YClose+this.YClose*0.1;
|
|
56830
|
+
min=this.YClose-this.YClose*0.1
|
|
56831
|
+
}
|
|
56832
|
+
else
|
|
56833
|
+
{
|
|
56834
|
+
var distanceValue=Math.max(Math.abs(this.YClose-max),Math.abs(this.YClose-min));
|
|
56835
|
+
max=this.YClose+distanceValue;
|
|
56836
|
+
min=this.YClose-distanceValue;
|
|
56837
|
+
if (min<0) min=range.Min;
|
|
56838
|
+
}
|
|
56796
56839
|
}
|
|
56797
56840
|
|
|
56798
56841
|
var pixelTatio = GetDevicePixelRatio(); //获取设备的分辨率
|
|
@@ -56805,7 +56848,7 @@ function FrameSplitMinutePriceY()
|
|
|
56805
56848
|
const minDistance=[1, 0.1, 0.01, 0.001, 0.0001];
|
|
56806
56849
|
var defaultfloatPrecision=GetfloatPrecision(this.Symbol);
|
|
56807
56850
|
if (isPhoneModel && MARKET_SUFFIX_NAME.IsSHSZIndex(this.Symbol)) defaultfloatPrecision = 0; //手机端指数不显示小数位数,太长了
|
|
56808
|
-
if (distance<minDistance[defaultfloatPrecision])
|
|
56851
|
+
if (distance<minDistance[defaultfloatPrecision] && !isFixedMaxMin)
|
|
56809
56852
|
{
|
|
56810
56853
|
distance=minDistance[defaultfloatPrecision];
|
|
56811
56854
|
max=this.YClose+(distance*(showCount-1)/2);
|
|
@@ -56826,11 +56869,21 @@ function FrameSplitMinutePriceY()
|
|
|
56826
56869
|
var per=(price/this.YClose-1)*100;
|
|
56827
56870
|
if (per>0) coordinate.TextColor=g_JSChartResource.UpTextColor;
|
|
56828
56871
|
else if (per<0) coordinate.TextColor=g_JSChartResource.DownTextColor;
|
|
56829
|
-
|
|
56872
|
+
var strPer=`${IFrameSplitOperator.FormatValueString(per,2)}%`;
|
|
56830
56873
|
if (this.IsShowRightText)
|
|
56831
56874
|
{
|
|
56832
|
-
if (this.RightTextFormat==1)
|
|
56833
|
-
|
|
56875
|
+
if (this.RightTextFormat==1)
|
|
56876
|
+
{
|
|
56877
|
+
coordinate.Message[1]=strPrice;
|
|
56878
|
+
}
|
|
56879
|
+
else if (this.RightTextFormat==2) //价格/百分比
|
|
56880
|
+
{
|
|
56881
|
+
coordinate.Message[1]=[strPer,strPrice];
|
|
56882
|
+
}
|
|
56883
|
+
else
|
|
56884
|
+
{
|
|
56885
|
+
coordinate.Message[1]=strPer; //百分比
|
|
56886
|
+
}
|
|
56834
56887
|
}
|
|
56835
56888
|
|
|
56836
56889
|
if (Math.abs(price-this.YClose) <0.00000000001) //小数有精度问题 使用差值
|
|
@@ -87544,14 +87597,30 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
87544
87597
|
var moveSetp=moveData.X;
|
|
87545
87598
|
var yMoveSetp=moveData.Y;
|
|
87546
87599
|
|
|
87547
|
-
|
|
87600
|
+
var bNeedDraw=true;
|
|
87601
|
+
if (this.UpDownDrag && this.UpDownDrag.Index>=0)
|
|
87602
|
+
{
|
|
87603
|
+
if (yMoveSetp>=5)
|
|
87604
|
+
{
|
|
87605
|
+
var yMove=e.clientY-drag.LastMove.Y;
|
|
87606
|
+
JSConsole.Chart.Log("[MinuteChartContainer::OnDragMode_One] UpDownDrag ",this.UpDownDrag,yMove);
|
|
87607
|
+
//this.UIElement.style.cursor="pointer";
|
|
87608
|
+
this.SetCursor({Cursor:"pointer"});
|
|
87609
|
+
if (this.OnUpDonwFrameY(this.UpDownDrag, yMove))
|
|
87610
|
+
{
|
|
87611
|
+
drag.LastMove.Y=e.clientY;
|
|
87612
|
+
bNeedDraw=true;
|
|
87613
|
+
}
|
|
87614
|
+
}
|
|
87615
|
+
}
|
|
87616
|
+
else if (this.RectSelectDrag && this.RectSelectDrag.Index>=0) //区间选择
|
|
87548
87617
|
{
|
|
87549
87618
|
if (moveSetp<5) return;
|
|
87550
87619
|
var obj={ X:e.clientX, Y:e.clientY, PointIndex:this.RectSelectDrag.Index, Name:"MoveRectSelectLine" };
|
|
87551
87620
|
if (this.MoveRectSelectPoint(obj))
|
|
87552
87621
|
{
|
|
87553
87622
|
drag.LastMove.X=e.clientX;
|
|
87554
|
-
|
|
87623
|
+
bNeedDraw=true;
|
|
87555
87624
|
}
|
|
87556
87625
|
}
|
|
87557
87626
|
else
|
|
@@ -87569,6 +87638,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
87569
87638
|
drag.LastMove.X=e.clientX;
|
|
87570
87639
|
drag.LastMove.Y=e.clientY;
|
|
87571
87640
|
}
|
|
87641
|
+
|
|
87642
|
+
if (bNeedDraw) this.Draw();
|
|
87572
87643
|
}
|
|
87573
87644
|
|
|
87574
87645
|
this.OnMinuteSelectRectMouseUp=function(e)
|
|
@@ -87586,8 +87657,12 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
87586
87657
|
selectData.YEnd=(drag.LastMove.Y-uielement.getBoundingClientRect().top)*pixelTatio;
|
|
87587
87658
|
selectData.JSChartContainer=this;
|
|
87588
87659
|
selectData.Stock={Symbol:this.Symbol, Name:this.Name};
|
|
87660
|
+
|
|
87661
|
+
if (this.UpDownDrag)
|
|
87662
|
+
{
|
|
87589
87663
|
|
|
87590
|
-
|
|
87664
|
+
}
|
|
87665
|
+
else if (this.EnableSelectRect && !this.BorderDrag && this.GetSelectRectData(selectData))
|
|
87591
87666
|
{
|
|
87592
87667
|
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_SELECT_RECT);
|
|
87593
87668
|
var paint=this.GetRectSelectPaint();
|
|
@@ -87958,25 +88033,83 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
87958
88033
|
}
|
|
87959
88034
|
}
|
|
87960
88035
|
|
|
88036
|
+
|
|
88037
|
+
this.GetDataIndexByDatTime=function(date, time)
|
|
88038
|
+
{
|
|
88039
|
+
var result={ DayIndex:-1, DataIndex:-1, Index:-1 };
|
|
88040
|
+
var frame=this.Frame.SubFrame[0].Frame;
|
|
88041
|
+
var minCount=frame.MinuteCount; //每天的分钟个数
|
|
88042
|
+
var kData=this.GetKData();
|
|
88043
|
+
for(var i=0;i<kData.Data.length;++i)
|
|
88044
|
+
{
|
|
88045
|
+
var minItem=kData.Data[i];
|
|
88046
|
+
if (!minItem) continue;
|
|
88047
|
+
|
|
88048
|
+
if (minItem.Date==date && minItem.Time==time)
|
|
88049
|
+
{
|
|
88050
|
+
result.Index=i;
|
|
88051
|
+
result.DayIndex=parseInt(i/minCount);
|
|
88052
|
+
result.DataIndex=i%minCount;
|
|
88053
|
+
break;
|
|
88054
|
+
}
|
|
88055
|
+
}
|
|
88056
|
+
|
|
88057
|
+
return result;
|
|
88058
|
+
}
|
|
88059
|
+
|
|
88060
|
+
//获取十字光标位置 通过日期和时间 目前只支持连续交易时间段
|
|
88061
|
+
this.GetCorssCursorIndexByDateTime=function(date, time)
|
|
88062
|
+
{
|
|
88063
|
+
var border=this.Frame.ChartBorder.GetBorder();
|
|
88064
|
+
|
|
88065
|
+
if (border.DayBorder) //多日分时主图+多日集合竞价
|
|
88066
|
+
{
|
|
88067
|
+
var corssCursorIndex=this.GetDataIndexByDatTime(date, time);
|
|
88068
|
+
corssCursorIndex.Type=10;
|
|
88069
|
+
}
|
|
88070
|
+
else //单日,多日
|
|
88071
|
+
{
|
|
88072
|
+
var corssCursorIndex=this.GetDataIndexByDatTime(date, time);
|
|
88073
|
+
corssCursorIndex.Type=1;
|
|
88074
|
+
corssCursorIndex.DayIndex=0;
|
|
88075
|
+
corssCursorIndex.DataIndex=corssCursorIndex.Index;
|
|
88076
|
+
}
|
|
88077
|
+
|
|
88078
|
+
return corssCursorIndex;
|
|
88079
|
+
}
|
|
88080
|
+
|
|
87961
88081
|
this.LockCorssCursor=function(option)
|
|
87962
88082
|
{
|
|
87963
88083
|
var xItem=this.GlobalOption.LockCorssCursor.X;
|
|
88084
|
+
|
|
88085
|
+
var corssCursorIndex={ DayIndex:-1, DataIndex:-1, Type:-1, Index:this.CursorIndex };
|
|
88086
|
+
if (this.EnableNewIndex)
|
|
88087
|
+
{
|
|
88088
|
+
corssCursorIndex.Type=this.CorssCursorIndex.Type;
|
|
88089
|
+
corssCursorIndex.DayIndex=this.CorssCursorIndex.DayIndex;
|
|
88090
|
+
corssCursorIndex.DataIndex=this.CorssCursorIndex.DataIndex;
|
|
88091
|
+
}
|
|
88092
|
+
|
|
88093
|
+
if (option && option.KItem) //指定日期时间
|
|
88094
|
+
{
|
|
88095
|
+
corssCursorIndex=this.GetCorssCursorIndexByDateTime(option.KItem.Date, option.KItem.Time);
|
|
88096
|
+
}
|
|
87964
88097
|
|
|
87965
88098
|
if (this.EnableNewIndex)
|
|
87966
88099
|
{
|
|
87967
|
-
if (
|
|
88100
|
+
if (corssCursorIndex.Type!=1 && corssCursorIndex.Type!=10) return false; //目前只支持连续交易时间段
|
|
87968
88101
|
|
|
87969
88102
|
xItem.Minute=
|
|
87970
88103
|
{
|
|
87971
|
-
DayIndex:
|
|
87972
|
-
DataIndex:
|
|
87973
|
-
Type:
|
|
87974
|
-
CursorIndex:
|
|
88104
|
+
DayIndex:corssCursorIndex.DayIndex,
|
|
88105
|
+
DataIndex:corssCursorIndex.DataIndex,
|
|
88106
|
+
Type:corssCursorIndex.Type,
|
|
88107
|
+
CursorIndex:corssCursorIndex.Index,
|
|
87975
88108
|
};
|
|
87976
88109
|
}
|
|
87977
88110
|
else
|
|
87978
88111
|
{
|
|
87979
|
-
xItem.Minute={ CursorIndex:
|
|
88112
|
+
xItem.Minute={ CursorIndex:corssCursorIndex.Index };
|
|
87980
88113
|
}
|
|
87981
88114
|
|
|
87982
88115
|
xItem.Enable=true;
|
|
@@ -88052,12 +88185,16 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
88052
88185
|
var x=null;
|
|
88053
88186
|
var dayIndex=corssCursorIndex.DayIndex;
|
|
88054
88187
|
var dataIndex=corssCursorIndex.DataIndex;
|
|
88055
|
-
|
|
88188
|
+
var frame=this.Frame.SubFrame[0].Frame;
|
|
88189
|
+
switch(corssCursorIndex.Type) //单日,多日 1=主图 2=盘前 3=盘后 //多日+多日集合竞价 10=主图 20=盘前 30=盘后
|
|
88056
88190
|
{
|
|
88057
|
-
case 1:
|
|
88058
|
-
case 10: //多日 10=主图
|
|
88191
|
+
case 1: //单日,多日 1=主图
|
|
88059
88192
|
x=this.Frame.GetXFromIndex(dataIndex)
|
|
88060
88193
|
break;
|
|
88194
|
+
case 10: //多日+多日集合竞价 10=主图
|
|
88195
|
+
var cursorIndex=frame.MinuteCount*dayIndex+dataIndex;
|
|
88196
|
+
x=this.Frame.GetXFromIndex(cursorIndex);
|
|
88197
|
+
break;
|
|
88061
88198
|
/*
|
|
88062
88199
|
case 2: //单日 2=盘前
|
|
88063
88200
|
x=this.Frame.SubFrame[0].Frame.GetLeftExtendXFromIndex(dataIndex,this.GetBeforeOpenData());
|
|
@@ -88855,6 +88992,17 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
88855
88992
|
var bShowCorss=false; //十字光标十字线
|
|
88856
88993
|
if (this.ChartCorssCursor) bShowCorss=this.ChartCorssCursor.IsShowCorss;
|
|
88857
88994
|
|
|
88995
|
+
var minItem=null;
|
|
88996
|
+
if (frameID>=0 && option && IFrameSplitOperator.IsNumber(option.CursorIndex))
|
|
88997
|
+
{
|
|
88998
|
+
var kData=this.GetKData();
|
|
88999
|
+
if (kData && IFrameSplitOperator.IsNonEmptyArray(kData.Data))
|
|
89000
|
+
{
|
|
89001
|
+
var dataIndex=kData.DataOffset+parseInt(option.CursorIndex.toFixed(0));
|
|
89002
|
+
if (dataIndex>=0 && dataIndex<kData.Data.length) minItem=kData.Data[dataIndex];
|
|
89003
|
+
}
|
|
89004
|
+
}
|
|
89005
|
+
|
|
88858
89006
|
var aryMenu=
|
|
88859
89007
|
[
|
|
88860
89008
|
{
|
|
@@ -88986,7 +89134,14 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
88986
89134
|
}
|
|
88987
89135
|
else if (item.Name=="其他设置")
|
|
88988
89136
|
{
|
|
88989
|
-
|
|
89137
|
+
if (minItem)
|
|
89138
|
+
{
|
|
89139
|
+
var bLocked=this.IsLockCorssCursor();
|
|
89140
|
+
if (bLocked)
|
|
89141
|
+
item.SubMenu.push({ Name:"锁十字光标", Data:{ ID: JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR }, Checked:bLocked });
|
|
89142
|
+
else
|
|
89143
|
+
item.SubMenu.push({ Name:"锁十字光标", Data:{ ID: JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR, Args:[{ KItem:{Date:minItem.Date, Time:minItem.Time}, Draw:true }] }, Checked:bLocked });
|
|
89144
|
+
}
|
|
88990
89145
|
}
|
|
88991
89146
|
}
|
|
88992
89147
|
|
|
@@ -89002,6 +89157,18 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
89002
89157
|
{
|
|
89003
89158
|
JSConsole.Chart.Log("[MinuteChartContainer::OnDoubleClick]", e);
|
|
89004
89159
|
|
|
89160
|
+
if (this.EnableYDrag && (this.EnableYDrag.Left || this.EnableYDrag.Right) && this.Frame && this.Frame.PtInFrameY)
|
|
89161
|
+
{
|
|
89162
|
+
var pixelTatio = GetDevicePixelRatio();
|
|
89163
|
+
var x = (e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;
|
|
89164
|
+
var y = (e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;
|
|
89165
|
+
var dragY=this.Frame.PtInFrameY(x,y);
|
|
89166
|
+
if (dragY && dragY.Index>=0)
|
|
89167
|
+
{
|
|
89168
|
+
this.CancelZoomUpDownFrameY(dragY);
|
|
89169
|
+
}
|
|
89170
|
+
}
|
|
89171
|
+
|
|
89005
89172
|
if (this.ClickChartTimer!=null)
|
|
89006
89173
|
{
|
|
89007
89174
|
clearTimeout(this.ClickChartTimer);
|
|
@@ -152986,7 +153153,7 @@ function HQChartScriptWorker()
|
|
|
152986
153153
|
|
|
152987
153154
|
|
|
152988
153155
|
|
|
152989
|
-
var HQCHART_VERSION="1.1.
|
|
153156
|
+
var HQCHART_VERSION="1.1.14403";
|
|
152990
153157
|
|
|
152991
153158
|
function PrintHQChartVersion()
|
|
152992
153159
|
{
|