hqchart 1.1.14731 → 1.1.14742
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +175 -29
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +89 -1
- package/src/jscommon/umychart.js +395 -9
- package/src/jscommon/umychart.testdata.js +89 -1
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +396 -10
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +89 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +398 -11
package/src/jscommon/umychart.js
CHANGED
|
@@ -1109,7 +1109,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
1109
1109
|
if (item.BottomSpace>=0) chart.Frame.SubFrame[i].Frame.ChartBorder.BottomSpace=item.BottomSpace*pixelRatio;
|
|
1110
1110
|
|
|
1111
1111
|
//是否显示关闭集合竞价按钮
|
|
1112
|
-
if (IFrameSplitOperator.
|
|
1112
|
+
if (IFrameSplitOperator.IsBool(item.CloseBeforeButton)) chart.Frame.SubFrame[i].Frame.IsShowCloseButton=item.CloseBeforeButton;
|
|
1113
1113
|
|
|
1114
1114
|
if (item.ClientBGColor) subFrame.ClientBGColor=item.ClientBGColor;
|
|
1115
1115
|
if (!IFrameSplitOperator.IsUndefined(item.HorizontalReserved)) subFrame.HorizontalReserved=item.HorizontalReserved;
|
|
@@ -2984,6 +2984,18 @@ var JSCHART_MENU_ID=
|
|
|
2984
2984
|
CMD_REPORT_CHANGE_COLUMN_ID:105, //报价列表 切换列 Arg[Column, ]
|
|
2985
2985
|
}
|
|
2986
2986
|
|
|
2987
|
+
var JSCHART_TRADE_STATUS_ID=
|
|
2988
|
+
{
|
|
2989
|
+
START_ID:1000, //8:45~9:15
|
|
2990
|
+
BEFORE_OPEN_ID:2000, //9:15~9:25 是开盘集合竞价阶段
|
|
2991
|
+
TRADE_ID:3000, //9:25~14:57 是连续竞价阶段
|
|
2992
|
+
AFTER_CLOSE_ID:4000, //14:57~15:00 是收盘集合竞价阶段
|
|
2993
|
+
CLOSE_ID:5000, //15:00 后,首先发 CLOSE 标志
|
|
2994
|
+
ENDTR_ID:6000, //交易结束
|
|
2995
|
+
//上面状态个位数 是停牌状态 如3001 连续交易时间段停牌
|
|
2996
|
+
SUSP_ID:1, //停牌
|
|
2997
|
+
}
|
|
2998
|
+
|
|
2987
2999
|
|
|
2988
3000
|
function PhoneDBClick()
|
|
2989
3001
|
{
|
|
@@ -3200,6 +3212,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
3200
3212
|
|
|
3201
3213
|
//图形中的单元选中状态
|
|
3202
3214
|
MapIndexChartCache:new Map(), //key 指标GUID
|
|
3215
|
+
|
|
3216
|
+
TradeStatus:null, //当前交易状态 { Date, Time:数据最后更新的时间, Status: }
|
|
3203
3217
|
};
|
|
3204
3218
|
|
|
3205
3219
|
this.VerticalDrag; //通过X轴左右拖动数据(手势才有)
|
|
@@ -10220,6 +10234,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
10220
10234
|
frame.YSplitOperator.ChartBorder=frame.ChartBorder;
|
|
10221
10235
|
frame.YSplitOperator.SplitCount=subFrame.Frame.YSplitOperator.SplitCount;
|
|
10222
10236
|
frame.YSplitOperator.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
10237
|
+
frame.YSplitOperator.HQChart=this;
|
|
10223
10238
|
|
|
10224
10239
|
overlayFrame.Frame=frame;
|
|
10225
10240
|
|
|
@@ -11153,6 +11168,27 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
11153
11168
|
chart.Canvas=this.Canvas;
|
|
11154
11169
|
chart.ChartBorder=frame.ChartBorder;
|
|
11155
11170
|
chart.ChartFrame=frame;
|
|
11171
|
+
chart.HQChart=this;
|
|
11172
|
+
|
|
11173
|
+
this.ChartPaintEx.push(chart);
|
|
11174
|
+
|
|
11175
|
+
return true;
|
|
11176
|
+
}
|
|
11177
|
+
|
|
11178
|
+
this.CreateChartPaintExtendV2=function(className, option, windowIndex)
|
|
11179
|
+
{
|
|
11180
|
+
if (windowIndex<0) return false;
|
|
11181
|
+
var subFrame=this.Frame.SubFrame[windowIndex];
|
|
11182
|
+
if (!subFrame || !subFrame.Frame) return false;
|
|
11183
|
+
|
|
11184
|
+
var chart=g_ChartPaintFactory.Create(className, option);
|
|
11185
|
+
if (!chart) return false;
|
|
11186
|
+
|
|
11187
|
+
var frame=subFrame.Frame;
|
|
11188
|
+
chart.Canvas=this.Canvas;
|
|
11189
|
+
chart.ChartBorder=frame.ChartBorder;
|
|
11190
|
+
chart.ChartFrame=frame;
|
|
11191
|
+
chart.HQChart=this;
|
|
11156
11192
|
|
|
11157
11193
|
this.ChartPaintEx.push(chart);
|
|
11158
11194
|
|
|
@@ -11695,6 +11731,32 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
11695
11731
|
|
|
11696
11732
|
return true;
|
|
11697
11733
|
}
|
|
11734
|
+
|
|
11735
|
+
//是否是额外的集合竞价部分
|
|
11736
|
+
this.IsCallAuctionFrame=function(frameID)
|
|
11737
|
+
{
|
|
11738
|
+
return false;
|
|
11739
|
+
}
|
|
11740
|
+
|
|
11741
|
+
//更新交易状态
|
|
11742
|
+
this.UpdateTradeStatusData=function(data, option)
|
|
11743
|
+
{
|
|
11744
|
+
if (option)
|
|
11745
|
+
{
|
|
11746
|
+
//是否清空
|
|
11747
|
+
if (option.IsClear===true) this.GlobalOption.TradeStatus=null;
|
|
11748
|
+
}
|
|
11749
|
+
|
|
11750
|
+
if (!data) return false;
|
|
11751
|
+
|
|
11752
|
+
if (IFrameSplitOperator.IsNumber(data.Date) && IFrameSplitOperator.IsNumber(data.Time) && IFrameSplitOperator.IsNumber(data.Status))
|
|
11753
|
+
{
|
|
11754
|
+
this.GlobalOption.TradeStatus={ Date:data.Date, Time:data.Time, Status:data.Status };
|
|
11755
|
+
return true;
|
|
11756
|
+
}
|
|
11757
|
+
|
|
11758
|
+
return false;
|
|
11759
|
+
}
|
|
11698
11760
|
}
|
|
11699
11761
|
|
|
11700
11762
|
function GetDevicePixelRatio()
|
|
@@ -12230,6 +12292,40 @@ function ChartBorder()
|
|
|
12230
12292
|
{
|
|
12231
12293
|
return this.TitleHeight;
|
|
12232
12294
|
}
|
|
12295
|
+
|
|
12296
|
+
//是否显示单日集合竞价 盘前
|
|
12297
|
+
this.IsShowBeforeOpen=function()
|
|
12298
|
+
{
|
|
12299
|
+
if (this.LeftExtendWidth<10) return false;
|
|
12300
|
+
|
|
12301
|
+
return true;
|
|
12302
|
+
}
|
|
12303
|
+
|
|
12304
|
+
//是否显示单日集合竞价 盘后
|
|
12305
|
+
this.IsShowAfterClose=function()
|
|
12306
|
+
{
|
|
12307
|
+
if (this.RightExtendWidth<10) return false;
|
|
12308
|
+
|
|
12309
|
+
return true;
|
|
12310
|
+
}
|
|
12311
|
+
|
|
12312
|
+
//是否显示多日集合竞价 盘前
|
|
12313
|
+
this.IsShowMultiDayBeforeOpen=function()
|
|
12314
|
+
{
|
|
12315
|
+
if (!this.MultiDayMinute) return false;
|
|
12316
|
+
if (this.MultiDayMinute.Count<=1 || this.MultiDayMinute.Left<=0) return false;
|
|
12317
|
+
|
|
12318
|
+
return true;
|
|
12319
|
+
}
|
|
12320
|
+
|
|
12321
|
+
//是否显示多日集合竞价 盘后
|
|
12322
|
+
this.IsShowMultiDayAfterClose=function()
|
|
12323
|
+
{
|
|
12324
|
+
if (!this.MultiDayMinute) return false;
|
|
12325
|
+
if (this.MultiDayMinute.Count<=1 || this.MultiDayMinute.Right<=0) return false;
|
|
12326
|
+
|
|
12327
|
+
return true;
|
|
12328
|
+
}
|
|
12233
12329
|
}
|
|
12234
12330
|
|
|
12235
12331
|
//框架外部挂接
|
|
@@ -25723,6 +25819,7 @@ function ChartPaintFactory()
|
|
|
25723
25819
|
["ChartMinuteVolumBar",{ Create:function(option) { return new ChartMinuteVolumBar(); } }], //分时成交量柱子
|
|
25724
25820
|
["ChartMinutePriceLine",{ Create:function(option) { return new ChartMinutePriceLine();} }],
|
|
25725
25821
|
["ChartMinuteBuySellBar", { Create:function(option){ return new ChartMinuteBuySellBar(); }}],
|
|
25822
|
+
["ChartMinuteBarCallAuction", { Create:function(option){ return new ChartMinuteBarCallAuction(); }}]
|
|
25726
25823
|
]);
|
|
25727
25824
|
|
|
25728
25825
|
this.Create=function(name, option)
|
|
@@ -34592,6 +34689,8 @@ function ChartMinuteVolumBar()
|
|
|
34592
34689
|
var isHScreen=(this.ChartFrame.IsHScreen===true);
|
|
34593
34690
|
var yPrice=this.YClose; //上一分钟的价格
|
|
34594
34691
|
var yBottom=this.ChartFrame.GetYFromData(0);
|
|
34692
|
+
var yBottom=border.BottomEx;
|
|
34693
|
+
if (isHScreen) yBottom=border.LeftEx;
|
|
34595
34694
|
var unit=this.GetVolUnit();
|
|
34596
34695
|
if (callAutionData.Ver==1.0)
|
|
34597
34696
|
{
|
|
@@ -34782,6 +34881,28 @@ function ChartMinuteVolumBar()
|
|
|
34782
34881
|
|
|
34783
34882
|
}
|
|
34784
34883
|
|
|
34884
|
+
//只画集合竞价柱子
|
|
34885
|
+
function ChartMinuteBarCallAuction()
|
|
34886
|
+
{
|
|
34887
|
+
this.newMethod=ChartMinuteVolumBar; //派生
|
|
34888
|
+
this.newMethod();
|
|
34889
|
+
delete this.newMethod;
|
|
34890
|
+
|
|
34891
|
+
this.ClassName="ChartMinuteBarCallAuction";
|
|
34892
|
+
|
|
34893
|
+
this.Draw=function()
|
|
34894
|
+
{
|
|
34895
|
+
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
34896
|
+
if (this.IsShowIndexTitleOnly()) return;
|
|
34897
|
+
|
|
34898
|
+
this.DrawBeforeOpen();
|
|
34899
|
+
this.DrawMultiDayBeforeOpen();
|
|
34900
|
+
|
|
34901
|
+
this.DrawAfterClose();
|
|
34902
|
+
this.DrawMultiDayAfterClose();
|
|
34903
|
+
}
|
|
34904
|
+
}
|
|
34905
|
+
|
|
34785
34906
|
function ChartErrorMessage()
|
|
34786
34907
|
{
|
|
34787
34908
|
this.newMethod=IChartPainting; //派生
|
|
@@ -40137,6 +40258,8 @@ function ChartOverlayMinutePriceLine()
|
|
|
40137
40258
|
}
|
|
40138
40259
|
|
|
40139
40260
|
|
|
40261
|
+
|
|
40262
|
+
|
|
40140
40263
|
//分钟持仓线
|
|
40141
40264
|
function ChartMinutePositionLine()
|
|
40142
40265
|
{
|
|
@@ -54181,7 +54304,7 @@ function FrameSplitY()
|
|
|
54181
54304
|
|
|
54182
54305
|
this.RightFrameSplitY();
|
|
54183
54306
|
this.MainOverlayFrameSplitY(); //主图Y轴绑定叠加Y轴坐标
|
|
54184
|
-
this.
|
|
54307
|
+
this.CallAcutionSplitYV2(splitData, this.Frame.HorizontalInfo.slice());
|
|
54185
54308
|
|
|
54186
54309
|
if (this.EnableRemoveZero) this.RemoveZero(this.Frame.HorizontalInfo);
|
|
54187
54310
|
|
|
@@ -54262,9 +54385,177 @@ function FrameSplitY()
|
|
|
54262
54385
|
}
|
|
54263
54386
|
}
|
|
54264
54387
|
|
|
54388
|
+
this.CallAcutionSplitYV2=function(splitData, aryHorizontalInfo)
|
|
54389
|
+
{
|
|
54390
|
+
if (!this.IsCallAuctionFrame()) return;
|
|
54391
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(aryHorizontalInfo)) return;
|
|
54392
|
+
|
|
54393
|
+
var aryCallAcution=this.GetCallAcutionSplitYV2(splitData,aryHorizontalInfo);
|
|
54394
|
+
if (!aryCallAcution) return;
|
|
54395
|
+
|
|
54396
|
+
for(var i=0; i<this.Frame.HorizontalInfo.length; ++i) //把显示的数据迁移到 Message[2] Message[3]
|
|
54397
|
+
{
|
|
54398
|
+
var item=this.Frame.HorizontalInfo[i];
|
|
54399
|
+
if (aryCallAcution.IsBeforeData)
|
|
54400
|
+
{
|
|
54401
|
+
item.Message[2]=item.Message[0];
|
|
54402
|
+
item.Message[0]=null;
|
|
54403
|
+
}
|
|
54404
|
+
|
|
54405
|
+
if (aryCallAcution.IsAfterData && (this.ShareAfterVol==0 || this.ShareAfterVol==2) )
|
|
54406
|
+
{
|
|
54407
|
+
item.Message[3]=item.Message[1];
|
|
54408
|
+
item.Message[1]=null;
|
|
54409
|
+
}
|
|
54410
|
+
}
|
|
54411
|
+
|
|
54412
|
+
//集合竞价的坐标插入最后
|
|
54413
|
+
for(var i=0; i<aryCallAcution.HorizontalInfo.length; ++i)
|
|
54414
|
+
{
|
|
54415
|
+
var item=aryCallAcution.HorizontalInfo[i];
|
|
54416
|
+
this.Frame.HorizontalInfo.push(item);
|
|
54417
|
+
}
|
|
54418
|
+
}
|
|
54419
|
+
|
|
54420
|
+
this.GetCallAcutionSplitYV2=function(splitData, arySource)
|
|
54421
|
+
{
|
|
54422
|
+
if (!this.IsCallAuctionFrame()) return null;
|
|
54423
|
+
|
|
54424
|
+
var bBeforeData=(this.IsBeforeData==true && this.BeforeOpenData && (this.BeforeOpenData.Ver==2.0 || this.BeforeOpenData.Ver==3.0));
|
|
54425
|
+
var bAfterData=(this.IsAfterData==true && this.AfterCloseData && (this.AfterCloseData.Ver==2.0 || this.AfterCloseData.Ver==3.0));
|
|
54426
|
+
|
|
54427
|
+
var bottom=this.Frame.ChartBorder.GetBottomEx();
|
|
54428
|
+
var height=this.Frame.ChartBorder.GetHeightEx();
|
|
54429
|
+
var bHScreen=this.Frame.IsHScreen;
|
|
54430
|
+
if (this.Frame.IsHScreen)
|
|
54431
|
+
{
|
|
54432
|
+
var border=this.Frame.GetBorder();
|
|
54433
|
+
var width=border.RightEx-border.LeftEx;
|
|
54434
|
+
}
|
|
54435
|
+
|
|
54436
|
+
if (bBeforeData || bAfterData)
|
|
54437
|
+
{
|
|
54438
|
+
var aryHorizontalInfo=[];
|
|
54439
|
+
for(var i=0;i<arySource.length;++i)
|
|
54440
|
+
{
|
|
54441
|
+
var hItem=arySource[i];
|
|
54442
|
+
if (!hItem || !IFrameSplitOperator.IsNumber(hItem.Value)) continue;
|
|
54443
|
+
var y=this.Frame.GetYFromData(hItem.Value);
|
|
54444
|
+
|
|
54445
|
+
var item=new CoordinateInfo();
|
|
54446
|
+
item.Value=hItem.Value;
|
|
54447
|
+
item.LineType=8;
|
|
54448
|
+
if (bBeforeData)
|
|
54449
|
+
{
|
|
54450
|
+
if (bHScreen)
|
|
54451
|
+
{
|
|
54452
|
+
var value=(y-border.LeftEx)/width*(this.BeforeOpenData.VolMax-this.BeforeOpenData.VolMin)+this.BeforeOpenData.VolMin;
|
|
54453
|
+
}
|
|
54454
|
+
else
|
|
54455
|
+
{
|
|
54456
|
+
var value=(bottom-y)/height*(this.BeforeOpenData.VolMax-this.BeforeOpenData.VolMin)+this.BeforeOpenData.VolMin;
|
|
54457
|
+
}
|
|
54458
|
+
|
|
54459
|
+
item.Message[0]=this.FormatValueString(value);
|
|
54460
|
+
}
|
|
54461
|
+
|
|
54462
|
+
if (bAfterData && (this.ShareAfterVol==0 || this.ShareAfterVol==2) )
|
|
54463
|
+
{
|
|
54464
|
+
if (bHScreen)
|
|
54465
|
+
{
|
|
54466
|
+
var value=(y-border.LeftEx)/width*(this.AfterCloseData.VolMax-this.AfterCloseData.VolMin)+this.AfterCloseData.VolMin;
|
|
54467
|
+
}
|
|
54468
|
+
else
|
|
54469
|
+
{
|
|
54470
|
+
var value=(bottom-y)/height*(this.AfterCloseData.VolMax-this.AfterCloseData.VolMin)+this.AfterCloseData.VolMin;
|
|
54471
|
+
}
|
|
54472
|
+
|
|
54473
|
+
item.Message[1]=this.FormatValueString(value);
|
|
54474
|
+
}
|
|
54475
|
+
|
|
54476
|
+
aryHorizontalInfo.push(item);
|
|
54477
|
+
}
|
|
54478
|
+
|
|
54479
|
+
return { HorizontalInfo:aryHorizontalInfo, IsBeforeData:bBeforeData, IsAfterData:bAfterData };
|
|
54480
|
+
}
|
|
54481
|
+
|
|
54482
|
+
var bMultiDayBeforeData=false, bMultiDayAfterData=false;
|
|
54483
|
+
var beforeDayData=null, afterDayData=null;
|
|
54484
|
+
if (this.MultiDayBeforeOpenData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))
|
|
54485
|
+
{
|
|
54486
|
+
bMultiDayBeforeData=true;
|
|
54487
|
+
var firstDayData=this.MultiDayBeforeOpenData[0];
|
|
54488
|
+
if (firstDayData.Ver==2.0 || firstDayData.Ver==3.0)
|
|
54489
|
+
beforeDayData=firstDayData;
|
|
54490
|
+
}
|
|
54491
|
+
|
|
54492
|
+
if (this.MultiDayAfterCloseData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))
|
|
54493
|
+
{
|
|
54494
|
+
bMultiDayAfterData=true;
|
|
54495
|
+
var firstDayData=this.MultiDayAfterCloseData[0];
|
|
54496
|
+
if (firstDayData.Ver==2.0 || firstDayData.Ver==3.0)
|
|
54497
|
+
afterDayData=firstDayData;
|
|
54498
|
+
}
|
|
54499
|
+
|
|
54500
|
+
if (bMultiDayBeforeData || bMultiDayAfterData)
|
|
54501
|
+
{
|
|
54502
|
+
var aryHorizontalInfo=[];
|
|
54503
|
+
for(var i=0;i<arySource.length;++i)
|
|
54504
|
+
{
|
|
54505
|
+
var hItem=arySource[i];
|
|
54506
|
+
if (!hItem || !IFrameSplitOperator.IsNumber(hItem.Value)) continue;
|
|
54507
|
+
var y=this.Frame.GetYFromData(hItem.Value);
|
|
54508
|
+
|
|
54509
|
+
var item=new CoordinateInfo();
|
|
54510
|
+
item.Value=hItem.Value;
|
|
54511
|
+
item.LineType=9;
|
|
54512
|
+
|
|
54513
|
+
var isVaild=false;
|
|
54514
|
+
if (beforeDayData)
|
|
54515
|
+
{
|
|
54516
|
+
if (bHScreen)
|
|
54517
|
+
{
|
|
54518
|
+
var value=(y-border.LeftEx)/width*(beforeDayData.VolMax-beforeDayData.VolMin)+beforeDayData.VolMin;
|
|
54519
|
+
}
|
|
54520
|
+
else
|
|
54521
|
+
{
|
|
54522
|
+
var value=(bottom-y)/height*(beforeDayData.VolMax-beforeDayData.VolMin)+beforeDayData.VolMin;
|
|
54523
|
+
}
|
|
54524
|
+
|
|
54525
|
+
item.Message[0]=this.FormatValueString(value);
|
|
54526
|
+
isVaild=true;
|
|
54527
|
+
}
|
|
54528
|
+
|
|
54529
|
+
if (afterDayData && (this.ShareAfterVol==0 || this.ShareAfterVol==2))
|
|
54530
|
+
{
|
|
54531
|
+
if (bHScreen)
|
|
54532
|
+
{
|
|
54533
|
+
var value=(y-border.LeftEx)/width*(afterDayData.VolMax-afterDayData.VolMin)+afterDayData.VolMin;
|
|
54534
|
+
}
|
|
54535
|
+
else
|
|
54536
|
+
{
|
|
54537
|
+
var value=(bottom-y)/height*(afterDayData.VolMax-afterDayData.VolMin)+afterDayData.VolMin;
|
|
54538
|
+
}
|
|
54539
|
+
|
|
54540
|
+
item.Message[1]=this.FormatValueString(value);
|
|
54541
|
+
isVaild=true;
|
|
54542
|
+
}
|
|
54543
|
+
|
|
54544
|
+
if (isVaild) aryHorizontalInfo.push(item);
|
|
54545
|
+
}
|
|
54546
|
+
|
|
54547
|
+
if (IFrameSplitOperator.IsNonEmptyArray(aryHorizontalInfo))
|
|
54548
|
+
return { HorizontalInfo:aryHorizontalInfo, IsBeforeData:bMultiDayBeforeData, IsAfterData:bMultiDayAfterData };
|
|
54549
|
+
}
|
|
54550
|
+
|
|
54551
|
+
return null;
|
|
54552
|
+
}
|
|
54553
|
+
|
|
54554
|
+
/* 废弃 使用 CallAcutionSplitYV2
|
|
54265
54555
|
this.CallAcutionSplitY=function(count,splitData)
|
|
54266
54556
|
{
|
|
54267
|
-
if (this.
|
|
54557
|
+
if (!this.IsCallAuctionFrame()) return;
|
|
54558
|
+
|
|
54268
54559
|
var aryCallAcution=this.GetCallAcutionSplitY(count,splitData);
|
|
54269
54560
|
if (!aryCallAcution) return;
|
|
54270
54561
|
|
|
@@ -54291,10 +54582,21 @@ function FrameSplitY()
|
|
|
54291
54582
|
this.Frame.HorizontalInfo.push(item);
|
|
54292
54583
|
}
|
|
54293
54584
|
}
|
|
54585
|
+
*/
|
|
54586
|
+
|
|
54587
|
+
this.IsCallAuctionFrame=function()
|
|
54588
|
+
{
|
|
54589
|
+
if (this.Frame.Identify==1) return true;
|
|
54590
|
+
|
|
54591
|
+
if (!this.HQChart || !this.HQChart.IsCallAuctionFrame) return false;
|
|
54592
|
+
|
|
54593
|
+
return this.HQChart.IsCallAuctionFrame(this.Frame.Identify);
|
|
54594
|
+
}
|
|
54294
54595
|
|
|
54596
|
+
/* 废弃 使用 GetCallAcutionSplitYV2
|
|
54295
54597
|
this.GetCallAcutionSplitY=function(count,splitData)
|
|
54296
54598
|
{
|
|
54297
|
-
if (this.
|
|
54599
|
+
if (!this.IsCallAuctionFrame()) return null;
|
|
54298
54600
|
|
|
54299
54601
|
var isBeforeData=(this.IsBeforeData==true && this.BeforeOpenData && (this.BeforeOpenData.Ver==2.0 || this.BeforeOpenData.Ver==3.0));
|
|
54300
54602
|
var isAfterData=(this.IsAfterData==true && this.AfterCloseData && (this.AfterCloseData.Ver==2.0 || this.AfterCloseData.Ver==3.0));
|
|
@@ -54309,7 +54611,7 @@ function FrameSplitY()
|
|
|
54309
54611
|
for(var i=0;i<count;++i)
|
|
54310
54612
|
{
|
|
54311
54613
|
var item=new CoordinateInfo();
|
|
54312
|
-
var yValue=intervalY*i;
|
|
54614
|
+
var yValue=intervalY*i+splitData.Min;
|
|
54313
54615
|
item.Value=yValue;
|
|
54314
54616
|
item.LineType=8;
|
|
54315
54617
|
if (isBeforeData )
|
|
@@ -54359,7 +54661,7 @@ function FrameSplitY()
|
|
|
54359
54661
|
for(var i=0;i<count;++i)
|
|
54360
54662
|
{
|
|
54361
54663
|
var item=new CoordinateInfo();
|
|
54362
|
-
var yValue=intervalY*i;
|
|
54664
|
+
var yValue=intervalY*i+splitData.Min;
|
|
54363
54665
|
item.Value=yValue;
|
|
54364
54666
|
item.LineType=9;
|
|
54365
54667
|
var isVaild=false;
|
|
@@ -54386,6 +54688,7 @@ function FrameSplitY()
|
|
|
54386
54688
|
|
|
54387
54689
|
return null;
|
|
54388
54690
|
}
|
|
54691
|
+
*/
|
|
54389
54692
|
|
|
54390
54693
|
this.RightFrameSplitY=function()
|
|
54391
54694
|
{
|
|
@@ -57703,6 +58006,7 @@ function HQPriceStringFormat()
|
|
|
57703
58006
|
this.RComplexText; //{ Space:2 间距, Text:[ {Color:, Text: }] } 支持单行多颜色
|
|
57704
58007
|
this.Point;
|
|
57705
58008
|
this.ClientPos=-1;
|
|
58009
|
+
this.HQChart;
|
|
57706
58010
|
|
|
57707
58011
|
this.ExtendChartPaint;
|
|
57708
58012
|
this.RExtendText=[];
|
|
@@ -57855,6 +58159,32 @@ function HQPriceStringFormat()
|
|
|
57855
58159
|
if (this.DataFormatType==1) this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
|
|
57856
58160
|
else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);
|
|
57857
58161
|
if (IFrameSplitOperator.IsNumber(this.RValue)) this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);
|
|
58162
|
+
|
|
58163
|
+
var bCallAuction=false;
|
|
58164
|
+
if (this.HQChart && this.HQChart.IsCallAuctionFrame)
|
|
58165
|
+
bCallAuction=this.HQChart.IsCallAuctionFrame(this.FrameID);
|
|
58166
|
+
|
|
58167
|
+
if (bCallAuction)
|
|
58168
|
+
{
|
|
58169
|
+
if (this.ClientPos==2)
|
|
58170
|
+
{
|
|
58171
|
+
this.GetBeforeOpen();
|
|
58172
|
+
}
|
|
58173
|
+
else if (this.ClientPos==3)
|
|
58174
|
+
{
|
|
58175
|
+
if (this.ShareAfterVol==0 || this.ShareAfterVol==2)
|
|
58176
|
+
this.GetAfterClose();
|
|
58177
|
+
}
|
|
58178
|
+
else if (this.ClientPos>=200 && this.ClientPos<=299)
|
|
58179
|
+
{
|
|
58180
|
+
this.GetMultiDayBeforeOpen();
|
|
58181
|
+
}
|
|
58182
|
+
else if (this.ClientPos>=300 && this.ClientPos<=399 )
|
|
58183
|
+
{
|
|
58184
|
+
if (this.ShareAfterVol==0 || this.ShareAfterVol==2)
|
|
58185
|
+
this.GetMultiDayAfterClose();
|
|
58186
|
+
}
|
|
58187
|
+
}
|
|
57858
58188
|
}
|
|
57859
58189
|
|
|
57860
58190
|
if (this.GetEventCallback)
|
|
@@ -60018,7 +60348,17 @@ function DynamicMinuteTitlePainting()
|
|
|
60018
60348
|
{
|
|
60019
60349
|
this.OnDrawEventCallback(null);
|
|
60020
60350
|
|
|
60021
|
-
|
|
60351
|
+
var bShowLastData=this.IsAlwaysShowLastData
|
|
60352
|
+
if (this.DrawStatus && this.DrawStatus.IsTitleShowLatestData)
|
|
60353
|
+
{
|
|
60354
|
+
var status=this.DrawStatus;
|
|
60355
|
+
if (!IFrameSplitOperator.IsNumber(status.FrameID) || status.FrameID<0)
|
|
60356
|
+
bShowLastData=true;
|
|
60357
|
+
else if (status.CorssCursorTouchEnd && status.IsOnTouch==false)
|
|
60358
|
+
bShowLastData=true;
|
|
60359
|
+
}
|
|
60360
|
+
|
|
60361
|
+
if (bShowLastData)
|
|
60022
60362
|
{
|
|
60023
60363
|
this.Canvas.save();
|
|
60024
60364
|
this.DrawLastDataItem();
|
|
@@ -60993,8 +61333,11 @@ function DynamicChartTitlePainting()
|
|
|
60993
61333
|
if (this.IsMinuteFrame && this.PointInfo && ( this.PointInfo.ClientPos==2 || this.PointInfo.ClientPos==3 || (this.PointInfo.ClientPos>=200&& this.PointInfo.ClientPos<=299) || (this.PointInfo.ClientPos>=300&& this.PointInfo.ClientPos<=399) ))
|
|
60994
61334
|
{
|
|
60995
61335
|
var result={ PreventDefault:false }
|
|
60996
|
-
|
|
60997
|
-
if (
|
|
61336
|
+
var yRight=right;
|
|
61337
|
+
if (this.Frame.ToolbarCacheSize && this.Frame.ToolbarCacheSize.RToolbar) yRight=this.Frame.ToolbarCacheSize.RToolbar.Left-2; //右侧按钮宽度要去掉
|
|
61338
|
+
this.DrawMainCallAuction({ Left:left, Right:yRight, Bottom:bottom }, rtText, result);
|
|
61339
|
+
if (result.PreventDefault===false) this.DrawMainIndexTitle({ Left:left, Right:yRight, Bottom:bottom }, isShowLastData, rtText);
|
|
61340
|
+
if (IFrameSplitOperator.IsNumber(rtText.Bottom)) bottom=rtText.Bottom;
|
|
60998
61341
|
}
|
|
60999
61342
|
else
|
|
61000
61343
|
{
|
|
@@ -79255,6 +79598,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
79255
79598
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
79256
79599
|
this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;
|
|
79257
79600
|
this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;
|
|
79601
|
+
this.ChartCorssCursor.StringFormatY.HQChart=this;
|
|
79258
79602
|
this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
79259
79603
|
this.ChartCorssCursor.OnChangeStatusCallback=(data, obj)=>{ this.OnChangeCorssCursorStatus(data,obj); }
|
|
79260
79604
|
|
|
@@ -89122,6 +89466,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
89122
89466
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
89123
89467
|
this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;
|
|
89124
89468
|
this.ChartCorssCursor.StringFormatY.ShareAfterVol=this.ShareAfterVol;
|
|
89469
|
+
this.ChartCorssCursor.StringFormatY.HQChart=this;
|
|
89125
89470
|
this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();
|
|
89126
89471
|
this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
89127
89472
|
this.ChartCorssCursor.OnChangeStatusCallback=(data, obj)=>{ this.OnChangeCorssCursorStatus(data,obj); }
|
|
@@ -89239,6 +89584,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
89239
89584
|
frame.YSplitOperator.LanguageID=this.LanguageID;
|
|
89240
89585
|
frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');
|
|
89241
89586
|
frame.YSplitOperator.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
89587
|
+
frame.YSplitOperator.HQChart=this;
|
|
89242
89588
|
if (i==1) frame.YSplitOperator.ShareAfterVol=this.ShareAfterVol;
|
|
89243
89589
|
}
|
|
89244
89590
|
|
|
@@ -89314,6 +89660,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
89314
89660
|
frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');
|
|
89315
89661
|
frame.YSplitOperator.Frame=frame;
|
|
89316
89662
|
frame.YSplitOperator.ChartBorder=border;
|
|
89663
|
+
frame.YSplitOperator.HQChart=this;
|
|
89317
89664
|
frame.XSplitOperator=new FrameSplitMinuteX();
|
|
89318
89665
|
frame.XSplitOperator.Frame=frame;
|
|
89319
89666
|
frame.XSplitOperator.ChartBorder=border;
|
|
@@ -91076,6 +91423,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
91076
91423
|
this.UpdateCallCationData(beforeOpenData,afterCloseData);
|
|
91077
91424
|
this.UpdateLineColorData(aryColorData,data.stock[0].date);
|
|
91078
91425
|
this.UpdateLatestMinuteData(aryMinuteData, data.stock[0].date, data.stock[0]);
|
|
91426
|
+
this.UpdateTradeStatusData(data.TradeStatus);
|
|
91079
91427
|
this.UpdateHistoryMinuteUI(updateTime);
|
|
91080
91428
|
this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"} );
|
|
91081
91429
|
this.RequestOverlayMinuteData(); //请求叠加数据 (主数据下载完再下载)
|
|
@@ -91102,6 +91450,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
91102
91450
|
|
|
91103
91451
|
this.ColorLineData=aryColorData;
|
|
91104
91452
|
|
|
91453
|
+
this.UpdateTradeStatusData(data.TradeStatus);
|
|
91105
91454
|
this.UpdateMinuteUI(data.stock[0], {FunctionName:"RecvMinuteData", Day:{ IsFirstData:bFirstData} });
|
|
91106
91455
|
|
|
91107
91456
|
if (data.AutoUpdate===false) //不执行自动更新
|
|
@@ -91710,6 +92059,20 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
91710
92059
|
this.ChartPaint[2].MultiDayBeforeOpenData=multiBeforeOpenData;
|
|
91711
92060
|
this.ChartPaint[2].MultiDayAfterCloseData=multiAfterCloseData;
|
|
91712
92061
|
|
|
92062
|
+
for(var i=0;i<this.ChartPaintEx.length;++i)
|
|
92063
|
+
{
|
|
92064
|
+
var item=this.ChartPaintEx[i];
|
|
92065
|
+
if (item.ClassName=="ChartMinuteBarCallAuction")
|
|
92066
|
+
{
|
|
92067
|
+
item.YClose=yClose;
|
|
92068
|
+
item.Symbol=this.Symbol;
|
|
92069
|
+
item.BeforeOpenData=this.BeforeOpenData;
|
|
92070
|
+
item.AfterCloseData=this.AfterCloseData;
|
|
92071
|
+
item.MultiDayBeforeOpenData=multiBeforeOpenData;
|
|
92072
|
+
item.MultiDayAfterCloseData=multiAfterCloseData;
|
|
92073
|
+
}
|
|
92074
|
+
}
|
|
92075
|
+
|
|
91713
92076
|
for(var i in this.Frame.SubFrame)
|
|
91714
92077
|
{
|
|
91715
92078
|
var item=this.Frame.SubFrame[i];
|
|
@@ -91822,6 +92185,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
91822
92185
|
frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');
|
|
91823
92186
|
frame.YSplitOperator.Frame=frame;
|
|
91824
92187
|
frame.YSplitOperator.ChartBorder=frame.ChartBorder;
|
|
92188
|
+
frame.YSplitOperator.HQChart=this;
|
|
91825
92189
|
frame.YSplitOperator.SplitCount=subFrame.Frame.YSplitOperator.SplitCount;
|
|
91826
92190
|
frame.YSplitOperator.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
91827
92191
|
frame.YSplitOperator.OverlayIdentify=overlayFrame.Identify;
|
|
@@ -92824,6 +93188,25 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
92824
93188
|
|
|
92825
93189
|
return data;
|
|
92826
93190
|
}
|
|
93191
|
+
|
|
93192
|
+
this.IsCallAuctionFrame=function(frameID)
|
|
93193
|
+
{
|
|
93194
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx)) return false;
|
|
93195
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame)) return false;
|
|
93196
|
+
if (frameID<0 || frameID>=this.Frame.SubFrame.length) return false;
|
|
93197
|
+
var subItem=this.Frame.SubFrame[frameID];
|
|
93198
|
+
if (!subItem || !subItem.Frame) return false;
|
|
93199
|
+
|
|
93200
|
+
var subFrame=subItem.Frame;
|
|
93201
|
+
for(var i=0;i<this.ChartPaintEx.length;++i)
|
|
93202
|
+
{
|
|
93203
|
+
var item=this.ChartPaintEx[i];
|
|
93204
|
+
if (item.ChartFrame && item.ChartFrame.Guid==subFrame.Guid)
|
|
93205
|
+
return true;
|
|
93206
|
+
}
|
|
93207
|
+
|
|
93208
|
+
return false;
|
|
93209
|
+
}
|
|
92827
93210
|
}
|
|
92828
93211
|
|
|
92829
93212
|
//盘前数据
|
|
@@ -94647,6 +95030,7 @@ function KLineChartHScreenContainer(uielement)
|
|
|
94647
95030
|
this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
|
|
94648
95031
|
this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;
|
|
94649
95032
|
this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;
|
|
95033
|
+
this.ChartCorssCursor.StringFormatY.HQChart=this;
|
|
94650
95034
|
this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
94651
95035
|
|
|
94652
95036
|
//创建等待提示
|
|
@@ -94828,6 +95212,7 @@ function MinuteChartHScreenContainer(uielement)
|
|
|
94828
95212
|
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
94829
95213
|
this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
|
|
94830
95214
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
95215
|
+
this.ChartCorssCursor.StringFormatY.HQChart=this;
|
|
94831
95216
|
this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();
|
|
94832
95217
|
this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
94833
95218
|
|
|
@@ -94905,6 +95290,7 @@ function MinuteChartHScreenContainer(uielement)
|
|
|
94905
95290
|
frame.YSplitOperator.LanguageID=this.LanguageID;
|
|
94906
95291
|
frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');
|
|
94907
95292
|
frame.YSplitOperator.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
95293
|
+
frame.YSplitOperator.HQChart=this;
|
|
94908
95294
|
}
|
|
94909
95295
|
|
|
94910
95296
|
frame.YSplitOperator.Frame=frame;
|