hqchart 1.1.15292 → 1.1.15299
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 +24 -21
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +48 -0
- package/src/jscommon/umychart.complier.js +14 -2
- package/src/jscommon/umychart.js +73 -18
- package/src/jscommon/umychart.testdata.js +48 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +88 -21
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +48 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +88 -21
package/src/jscommon/umychart.js
CHANGED
|
@@ -3138,6 +3138,7 @@ var JSCHART_MENU_ID=
|
|
|
3138
3138
|
CMD_CORSS_X_TEXTALIGN_ID:61, //十字光标 底部文字对齐方式
|
|
3139
3139
|
|
|
3140
3140
|
CMD_CHANGE_YRIGHT_TEXT_FORMAT:62, //分时图主图 右侧刻度格式
|
|
3141
|
+
CMD_ENABLE_ZOOM_Y_ID:63, //放大缩小Y坐标 { FrameID:, Enable: , Range:{ Max:, Min: }}
|
|
3141
3142
|
|
|
3142
3143
|
|
|
3143
3144
|
CMD_REPORT_CHANGE_BLOCK_ID:100, //报价列表 切换板块ID
|
|
@@ -11940,6 +11941,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
11940
11941
|
this.ResetFrameXYSplit();
|
|
11941
11942
|
this.Draw();
|
|
11942
11943
|
break;
|
|
11944
|
+
case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:
|
|
11945
|
+
if (!srcParam) return false;
|
|
11946
|
+
if (this.EnableZoomYCoordinate) this.EnableZoomYCoordinate(srcParam);
|
|
11947
|
+
break;
|
|
11943
11948
|
}
|
|
11944
11949
|
}
|
|
11945
11950
|
|
|
@@ -30618,12 +30623,13 @@ function ChartKLine()
|
|
|
30618
30623
|
if (this.TradeIcon) this.DrawTradeIcon()
|
|
30619
30624
|
else this.DrawTrade();
|
|
30620
30625
|
|
|
30626
|
+
if (this.PriceGap.Enable) this.DrawPriceGap();
|
|
30627
|
+
|
|
30621
30628
|
this.Canvas.restore();
|
|
30622
30629
|
|
|
30623
30630
|
this.UpdateGlobalLatestPoint();
|
|
30624
30631
|
|
|
30625
30632
|
this.DrawPredictionLine();
|
|
30626
|
-
if (this.PriceGap.Enable) this.DrawPriceGap();
|
|
30627
30633
|
|
|
30628
30634
|
if (this.IsShowMaxMinPrice) //标注最大值最小值
|
|
30629
30635
|
{
|
|
@@ -58095,7 +58101,7 @@ function FrameSplitMinuteX()
|
|
|
58095
58101
|
width=width/GetDevicePixelRatio();
|
|
58096
58102
|
|
|
58097
58103
|
const minuteCoordinate = g_MinuteCoordinateData;
|
|
58098
|
-
var xcoordinateData = minuteCoordinate.GetCoordinateData(this.Symbol,width);
|
|
58104
|
+
var xcoordinateData = minuteCoordinate.GetCoordinateData(this.Symbol, width, this.Frame.GlobalOption);
|
|
58099
58105
|
var minuteCount=xcoordinateData.Count;
|
|
58100
58106
|
var minuteMiddleCount=xcoordinateData.MiddleCount>0? xcoordinateData.MiddleCount: parseInt(minuteCount/2);
|
|
58101
58107
|
var xcoordinate = xcoordinateData.Data;
|
|
@@ -60761,7 +60767,8 @@ function HQMinuteTimeStringFormat()
|
|
|
60761
60767
|
this.MultiDayBeforeOpenData; //多日分时图 盘前数据
|
|
60762
60768
|
this.MultiDayAfterCloseData; //多日分时图 收盘数据
|
|
60763
60769
|
|
|
60764
|
-
this.GetEventCallback
|
|
60770
|
+
this.GetEventCallback;
|
|
60771
|
+
this.HQChart;
|
|
60765
60772
|
|
|
60766
60773
|
this.GetBeforeOpen=function()
|
|
60767
60774
|
{
|
|
@@ -60859,7 +60866,9 @@ function HQMinuteTimeStringFormat()
|
|
|
60859
60866
|
if (this.Frame && this.Frame.MinuteCount) showIndex=index%this.Frame.MinuteCount;
|
|
60860
60867
|
|
|
60861
60868
|
var timeStringData=g_MinuteTimeStringData;
|
|
60862
|
-
var
|
|
60869
|
+
var globalOption=null;
|
|
60870
|
+
if (this.HQChart) globalOption=this.HQChart.GlobalOption;
|
|
60871
|
+
var timeData=timeStringData.GetTimeData(this.Symbol, globalOption);
|
|
60863
60872
|
if (!timeData) return false;
|
|
60864
60873
|
|
|
60865
60874
|
if (showIndex<0) showIndex=0;
|
|
@@ -88242,12 +88251,19 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
88242
88251
|
var bDaySummary=klineChart.DaySummary.Enable;
|
|
88243
88252
|
var infoPosition=klineChart.InfoPosition;
|
|
88244
88253
|
var coordinateType=null, yCoordinateType=null; //坐标类型
|
|
88254
|
+
var bZoomYCoordinate=false;
|
|
88245
88255
|
var mainFrame=null;
|
|
88246
88256
|
if (this.Frame.SubFrame[0] && this.Frame.SubFrame[0].Frame) mainFrame=this.Frame.SubFrame[0].Frame;
|
|
88247
88257
|
if (mainFrame)
|
|
88248
88258
|
{
|
|
88249
88259
|
coordinateType=mainFrame.CoordinateType;
|
|
88250
|
-
if (mainFrame.YSplitOperator)
|
|
88260
|
+
if (mainFrame.YSplitOperator)
|
|
88261
|
+
{
|
|
88262
|
+
yCoordinateType=mainFrame.YSplitOperator.CoordinateType;
|
|
88263
|
+
if (mainFrame.YSplitOperator.FixedYMaxMin && mainFrame.YSplitOperator.EnableZoomUpDown)
|
|
88264
|
+
bZoomYCoordinate=true;
|
|
88265
|
+
}
|
|
88266
|
+
|
|
88251
88267
|
}
|
|
88252
88268
|
|
|
88253
88269
|
var aryKLineInfo=[]; //信息地雷
|
|
@@ -88509,6 +88525,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
88509
88525
|
|
|
88510
88526
|
{ Name:"显示走完剩余时间", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID, Args:[!bDaySummary]}, Checked:bDaySummary},
|
|
88511
88527
|
|
|
88528
|
+
{ Name:"拖动Y轴", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID, Args:[{FrameID:0, Enable:!bZoomYCoordinate }, ]}, Checked:bZoomYCoordinate},
|
|
88529
|
+
|
|
88512
88530
|
{ Name:JSPopMenu.SEPARATOR_LINE_NAME },
|
|
88513
88531
|
{
|
|
88514
88532
|
Name:"鼠标形状",
|
|
@@ -90382,6 +90400,41 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
90382
90400
|
|
|
90383
90401
|
return false;
|
|
90384
90402
|
}
|
|
90403
|
+
|
|
90404
|
+
//option={ FrameID:, Enable: }
|
|
90405
|
+
this.EnableZoomYCoordinate=function(option)
|
|
90406
|
+
{
|
|
90407
|
+
if (!option) return false;
|
|
90408
|
+
if (!IFrameSplitOperator.IsNumber(option.FrameID)) return false;
|
|
90409
|
+
if (!IFrameSplitOperator.IsBool(option.Enable)) return false;
|
|
90410
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame)) return false;
|
|
90411
|
+
if (option.FrameID<0 || option.FrameID>this.Frame.SubFrame.length) return false;
|
|
90412
|
+
|
|
90413
|
+
var item=this.Frame.SubFrame[option.FrameID];
|
|
90414
|
+
if (!item || !item.Frame || !item.Frame.YSplitOperator) return false;
|
|
90415
|
+
|
|
90416
|
+
var frame=item.Frame;
|
|
90417
|
+
var splitOper=frame.YSplitOperator;
|
|
90418
|
+
|
|
90419
|
+
if (option.Enable)
|
|
90420
|
+
{
|
|
90421
|
+
var max=frame.HorizontalMax, min=frame.HorizontalMin;
|
|
90422
|
+
if (!IFrameSplitOperator.IsNumber(max) || !IFrameSplitOperator.IsNumber(min)) return false;
|
|
90423
|
+
|
|
90424
|
+
splitOper.FixedYMaxMin={ Max:max, Min:min };
|
|
90425
|
+
splitOper.EnableZoomUpDown=true;
|
|
90426
|
+
frame.XYSplit=true;
|
|
90427
|
+
this.ChartDragSelectRect.EnableLButton=false;
|
|
90428
|
+
}
|
|
90429
|
+
else
|
|
90430
|
+
{
|
|
90431
|
+
splitOper.FixedYMaxMin=null
|
|
90432
|
+
splitOper.EnableZoomUpDown=false;
|
|
90433
|
+
frame.XYSplit=true;
|
|
90434
|
+
}
|
|
90435
|
+
|
|
90436
|
+
this.Draw();
|
|
90437
|
+
}
|
|
90385
90438
|
}
|
|
90386
90439
|
|
|
90387
90440
|
//API 返回数据 转化为array[]
|
|
@@ -93134,7 +93187,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
93134
93187
|
this.ChartCorssCursor.PtInClient=(x,y)=>{ return this.PtInClient(x,y); }
|
|
93135
93188
|
this.ChartCorssCursor.Canvas=this.Canvas;
|
|
93136
93189
|
this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");
|
|
93137
|
-
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
93190
|
+
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
93191
|
+
this.ChartCorssCursor.StringFormatX.HQChart=this;
|
|
93138
93192
|
this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
|
|
93139
93193
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
93140
93194
|
this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;
|
|
@@ -99156,6 +99210,7 @@ function MinuteChartHScreenContainer(uielement)
|
|
|
99156
99210
|
this.ChartCorssCursor.Canvas=this.Canvas;
|
|
99157
99211
|
this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");
|
|
99158
99212
|
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
99213
|
+
this.ChartCorssCursor.StringFormatX.HQChart=this;
|
|
99159
99214
|
this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
|
|
99160
99215
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
99161
99216
|
this.ChartCorssCursor.StringFormatY.HQChart=this;
|
|
@@ -102792,7 +102847,7 @@ function MinuteTimeStringData()
|
|
|
102792
102847
|
return data;
|
|
102793
102848
|
}
|
|
102794
102849
|
|
|
102795
|
-
this.GetTimeData = function (symbol)
|
|
102850
|
+
this.GetTimeData = function (symbol, option)
|
|
102796
102851
|
{
|
|
102797
102852
|
if (!symbol) return this.SHSZ;
|
|
102798
102853
|
|
|
@@ -102808,7 +102863,7 @@ function MinuteTimeStringData()
|
|
|
102808
102863
|
if (MARKET_SUFFIX_NAME.IsUSA(upperSymbol)) return this.GetUSA(upperSymbol);
|
|
102809
102864
|
if (MARKET_SUFFIX_NAME.IsCFFEX(upperSymbol) || MARKET_SUFFIX_NAME.IsCZCE(upperSymbol) || MARKET_SUFFIX_NAME.IsDCE(upperSymbol) || MARKET_SUFFIX_NAME.IsSHFE(upperSymbol) || MARKET_SUFFIX_NAME.IsGZFE(upperSymbol))
|
|
102810
102865
|
{
|
|
102811
|
-
var splitData = g_FuturesTimeData.GetSplitData(upperSymbol);
|
|
102866
|
+
var splitData = g_FuturesTimeData.GetSplitData(upperSymbol, option);
|
|
102812
102867
|
if (!splitData) return null;
|
|
102813
102868
|
return this.GetFutures(splitData);
|
|
102814
102869
|
}
|
|
@@ -103273,8 +103328,8 @@ function MinuteCoordinateData()
|
|
|
103273
103328
|
}
|
|
103274
103329
|
|
|
103275
103330
|
|
|
103276
|
-
|
|
103277
|
-
this.GetCoordinateData = function (symbol, width)
|
|
103331
|
+
// option=GlobalOption
|
|
103332
|
+
this.GetCoordinateData = function (symbol, width, option)
|
|
103278
103333
|
{
|
|
103279
103334
|
var data = null;
|
|
103280
103335
|
if (!symbol)
|
|
@@ -103299,7 +103354,7 @@ function MinuteCoordinateData()
|
|
|
103299
103354
|
else if (MARKET_SUFFIX_NAME.IsJP(upperSymbol))
|
|
103300
103355
|
data=this.GetJPData(upperSymbol,width);
|
|
103301
103356
|
else if (MARKET_SUFFIX_NAME.IsCFFEX(upperSymbol) || MARKET_SUFFIX_NAME.IsCZCE(upperSymbol) || MARKET_SUFFIX_NAME.IsDCE(upperSymbol) || MARKET_SUFFIX_NAME.IsSHFE(upperSymbol) || MARKET_SUFFIX_NAME.IsGZFE(upperSymbol))
|
|
103302
|
-
return this.GetChinatFuturesData(upperSymbol,width);
|
|
103357
|
+
return this.GetChinatFuturesData(upperSymbol, width, option);
|
|
103303
103358
|
else if (MARKET_SUFFIX_NAME.IsUSA(upperSymbol))
|
|
103304
103359
|
data = this.GetUSAData(upperSymbol,width);
|
|
103305
103360
|
else if (MARKET_SUFFIX_NAME.IsFTSE(upperSymbol))
|
|
@@ -103381,9 +103436,9 @@ function MinuteCoordinateData()
|
|
|
103381
103436
|
return result;
|
|
103382
103437
|
}
|
|
103383
103438
|
|
|
103384
|
-
this.GetFuturesData = function (upperSymbol,width,timeData)
|
|
103439
|
+
this.GetFuturesData = function (upperSymbol,width,timeData, option)
|
|
103385
103440
|
{
|
|
103386
|
-
var splitData = timeData.GetSplitData(upperSymbol);
|
|
103441
|
+
var splitData = timeData.GetSplitData(upperSymbol, option);
|
|
103387
103442
|
if (!splitData) return null;
|
|
103388
103443
|
var stringData = g_MinuteTimeStringData.GetFutures(splitData);
|
|
103389
103444
|
if (!stringData) return null;
|
|
@@ -103422,9 +103477,9 @@ function MinuteCoordinateData()
|
|
|
103422
103477
|
return result;
|
|
103423
103478
|
}
|
|
103424
103479
|
|
|
103425
|
-
this.GetChinatFuturesData=function(upperSymbol,width)
|
|
103480
|
+
this.GetChinatFuturesData=function(upperSymbol, width, option)
|
|
103426
103481
|
{
|
|
103427
|
-
return this.GetFuturesData(upperSymbol,width, g_FuturesTimeData);
|
|
103482
|
+
return this.GetFuturesData(upperSymbol,width, g_FuturesTimeData, option);
|
|
103428
103483
|
}
|
|
103429
103484
|
|
|
103430
103485
|
this.GetNYMEXData=function(upperSymbol,width)
|
|
@@ -104230,7 +104285,7 @@ function FuturesTimeData()
|
|
|
104230
104285
|
}
|
|
104231
104286
|
}
|
|
104232
104287
|
|
|
104233
|
-
this.GetData=function(upperSymbol)
|
|
104288
|
+
this.GetData=function(upperSymbol, option)
|
|
104234
104289
|
{
|
|
104235
104290
|
var oneWord = upperSymbol.charAt(0);
|
|
104236
104291
|
var twoWords = upperSymbol.substr(0,2);
|
|
@@ -104275,9 +104330,9 @@ function FuturesTimeData()
|
|
|
104275
104330
|
return null;
|
|
104276
104331
|
}
|
|
104277
104332
|
|
|
104278
|
-
this.GetSplitData = function (upperSymbol)
|
|
104333
|
+
this.GetSplitData = function (upperSymbol, option)
|
|
104279
104334
|
{
|
|
104280
|
-
var data=this.GetData(upperSymbol);
|
|
104335
|
+
var data=this.GetData(upperSymbol, option);
|
|
104281
104336
|
if (!data) return null;
|
|
104282
104337
|
|
|
104283
104338
|
return this.TIME_SPLIT[data.Time];
|
|
@@ -2760,6 +2760,8 @@ HQData.Report_APIIndex=function(data, callback)
|
|
|
2760
2760
|
HQData.APIIndex_BASELINE_BAR(data, callback);
|
|
2761
2761
|
else if (request.Data.indexname=="API_VERTLINE")
|
|
2762
2762
|
HQData.APIIndex_VERTLINE(data, callback);
|
|
2763
|
+
else if (request.Data.indexname=="API_DRAWTEXT_FIX")
|
|
2764
|
+
HQData.APIIndex_DRAWTEXT_FIX(data, callback);
|
|
2763
2765
|
|
|
2764
2766
|
else if (request.Data.indexname=="API_ERRORMESSAGE")
|
|
2765
2767
|
HQData.APIIndex_ErrorMessage(data, callback);
|
|
@@ -4455,6 +4457,52 @@ HQData.API_CHART_AREA_TEXT=function(data, callback)
|
|
|
4455
4457
|
}
|
|
4456
4458
|
|
|
4457
4459
|
|
|
4460
|
+
HQData.APIIndex_DRAWTEXT_FIX=function(data, callback)
|
|
4461
|
+
{
|
|
4462
|
+
data.PreventDefault=true;
|
|
4463
|
+
var hqchart=data.HQChart;
|
|
4464
|
+
var kData=hqchart.GetKData();
|
|
4465
|
+
|
|
4466
|
+
var textData=
|
|
4467
|
+
{
|
|
4468
|
+
name:'DRAWTEXT_FIX', type:1,
|
|
4469
|
+
Draw:
|
|
4470
|
+
{
|
|
4471
|
+
DrawType:'DRAWTEXT_FIX',
|
|
4472
|
+
DrawData: { Value:[], Text:[] },
|
|
4473
|
+
Position:{ X:0.5, Y:0.2, Type:1 }
|
|
4474
|
+
},
|
|
4475
|
+
Color:"rgb(30,144,255)",
|
|
4476
|
+
Font:`italic bold 2.2em "Fira Sans", sans-serif`,
|
|
4477
|
+
};
|
|
4478
|
+
|
|
4479
|
+
for(var i=0;i<kData.Data.length;++i)
|
|
4480
|
+
{
|
|
4481
|
+
var kItem=kData.Data[i];
|
|
4482
|
+
|
|
4483
|
+
if (i%50==1)
|
|
4484
|
+
{
|
|
4485
|
+
textData.Draw.DrawData.Value[i]=1;
|
|
4486
|
+
textData.Draw.DrawData.Text[i]=`${kItem.Date}-${i}`;
|
|
4487
|
+
}
|
|
4488
|
+
else
|
|
4489
|
+
{
|
|
4490
|
+
textData.Draw.DrawData.Value[i]=0;
|
|
4491
|
+
}
|
|
4492
|
+
}
|
|
4493
|
+
|
|
4494
|
+
var apiData=
|
|
4495
|
+
{
|
|
4496
|
+
code:0,
|
|
4497
|
+
stock:{ name:hqchart.Name, symbol:hqchart.Symbol },
|
|
4498
|
+
outdata: { date:kData.GetDate(), time:kData.GetTime(), outvar:[textData] }
|
|
4499
|
+
};
|
|
4500
|
+
|
|
4501
|
+
console.log('[HQData.APIIndex_PARTLINE] apiData ', apiData);
|
|
4502
|
+
callback(apiData);
|
|
4503
|
+
}
|
|
4504
|
+
|
|
4505
|
+
|
|
4458
4506
|
HQData.APIIndex_ErrorMessage=function(data, callback)
|
|
4459
4507
|
{
|
|
4460
4508
|
data.PreventDefault=true;
|
|
@@ -7234,6 +7234,7 @@ var JSCHART_MENU_ID=
|
|
|
7234
7234
|
CMD_CORSS_X_TEXTALIGN_ID:61, //十字光标 底部文字对齐方式
|
|
7235
7235
|
|
|
7236
7236
|
CMD_CHANGE_YRIGHT_TEXT_FORMAT:62, //分时图主图 右侧刻度格式
|
|
7237
|
+
CMD_ENABLE_ZOOM_Y_ID:63, //放大缩小Y坐标 { FrameID:, Enable: , Range:{ Max:, Min: }}
|
|
7237
7238
|
|
|
7238
7239
|
|
|
7239
7240
|
CMD_REPORT_CHANGE_BLOCK_ID:100, //报价列表 切换板块ID
|
|
@@ -16036,6 +16037,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
16036
16037
|
this.ResetFrameXYSplit();
|
|
16037
16038
|
this.Draw();
|
|
16038
16039
|
break;
|
|
16040
|
+
case JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID:
|
|
16041
|
+
if (!srcParam) return false;
|
|
16042
|
+
if (this.EnableZoomYCoordinate) this.EnableZoomYCoordinate(srcParam);
|
|
16043
|
+
break;
|
|
16039
16044
|
}
|
|
16040
16045
|
}
|
|
16041
16046
|
|
|
@@ -34714,12 +34719,13 @@ function ChartKLine()
|
|
|
34714
34719
|
if (this.TradeIcon) this.DrawTradeIcon()
|
|
34715
34720
|
else this.DrawTrade();
|
|
34716
34721
|
|
|
34722
|
+
if (this.PriceGap.Enable) this.DrawPriceGap();
|
|
34723
|
+
|
|
34717
34724
|
this.Canvas.restore();
|
|
34718
34725
|
|
|
34719
34726
|
this.UpdateGlobalLatestPoint();
|
|
34720
34727
|
|
|
34721
34728
|
this.DrawPredictionLine();
|
|
34722
|
-
if (this.PriceGap.Enable) this.DrawPriceGap();
|
|
34723
34729
|
|
|
34724
34730
|
if (this.IsShowMaxMinPrice) //标注最大值最小值
|
|
34725
34731
|
{
|
|
@@ -62191,7 +62197,7 @@ function FrameSplitMinuteX()
|
|
|
62191
62197
|
width=width/GetDevicePixelRatio();
|
|
62192
62198
|
|
|
62193
62199
|
const minuteCoordinate = g_MinuteCoordinateData;
|
|
62194
|
-
var xcoordinateData = minuteCoordinate.GetCoordinateData(this.Symbol,width);
|
|
62200
|
+
var xcoordinateData = minuteCoordinate.GetCoordinateData(this.Symbol, width, this.Frame.GlobalOption);
|
|
62195
62201
|
var minuteCount=xcoordinateData.Count;
|
|
62196
62202
|
var minuteMiddleCount=xcoordinateData.MiddleCount>0? xcoordinateData.MiddleCount: parseInt(minuteCount/2);
|
|
62197
62203
|
var xcoordinate = xcoordinateData.Data;
|
|
@@ -64857,7 +64863,8 @@ function HQMinuteTimeStringFormat()
|
|
|
64857
64863
|
this.MultiDayBeforeOpenData; //多日分时图 盘前数据
|
|
64858
64864
|
this.MultiDayAfterCloseData; //多日分时图 收盘数据
|
|
64859
64865
|
|
|
64860
|
-
this.GetEventCallback
|
|
64866
|
+
this.GetEventCallback;
|
|
64867
|
+
this.HQChart;
|
|
64861
64868
|
|
|
64862
64869
|
this.GetBeforeOpen=function()
|
|
64863
64870
|
{
|
|
@@ -64955,7 +64962,9 @@ function HQMinuteTimeStringFormat()
|
|
|
64955
64962
|
if (this.Frame && this.Frame.MinuteCount) showIndex=index%this.Frame.MinuteCount;
|
|
64956
64963
|
|
|
64957
64964
|
var timeStringData=g_MinuteTimeStringData;
|
|
64958
|
-
var
|
|
64965
|
+
var globalOption=null;
|
|
64966
|
+
if (this.HQChart) globalOption=this.HQChart.GlobalOption;
|
|
64967
|
+
var timeData=timeStringData.GetTimeData(this.Symbol, globalOption);
|
|
64959
64968
|
if (!timeData) return false;
|
|
64960
64969
|
|
|
64961
64970
|
if (showIndex<0) showIndex=0;
|
|
@@ -92338,12 +92347,19 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
92338
92347
|
var bDaySummary=klineChart.DaySummary.Enable;
|
|
92339
92348
|
var infoPosition=klineChart.InfoPosition;
|
|
92340
92349
|
var coordinateType=null, yCoordinateType=null; //坐标类型
|
|
92350
|
+
var bZoomYCoordinate=false;
|
|
92341
92351
|
var mainFrame=null;
|
|
92342
92352
|
if (this.Frame.SubFrame[0] && this.Frame.SubFrame[0].Frame) mainFrame=this.Frame.SubFrame[0].Frame;
|
|
92343
92353
|
if (mainFrame)
|
|
92344
92354
|
{
|
|
92345
92355
|
coordinateType=mainFrame.CoordinateType;
|
|
92346
|
-
if (mainFrame.YSplitOperator)
|
|
92356
|
+
if (mainFrame.YSplitOperator)
|
|
92357
|
+
{
|
|
92358
|
+
yCoordinateType=mainFrame.YSplitOperator.CoordinateType;
|
|
92359
|
+
if (mainFrame.YSplitOperator.FixedYMaxMin && mainFrame.YSplitOperator.EnableZoomUpDown)
|
|
92360
|
+
bZoomYCoordinate=true;
|
|
92361
|
+
}
|
|
92362
|
+
|
|
92347
92363
|
}
|
|
92348
92364
|
|
|
92349
92365
|
var aryKLineInfo=[]; //信息地雷
|
|
@@ -92605,6 +92621,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
92605
92621
|
|
|
92606
92622
|
{ Name:"显示走完剩余时间", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID, Args:[!bDaySummary]}, Checked:bDaySummary},
|
|
92607
92623
|
|
|
92624
|
+
{ Name:"拖动Y轴", Data:{ ID:JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID, Args:[{FrameID:0, Enable:!bZoomYCoordinate }, ]}, Checked:bZoomYCoordinate},
|
|
92625
|
+
|
|
92608
92626
|
{ Name:JSPopMenu.SEPARATOR_LINE_NAME },
|
|
92609
92627
|
{
|
|
92610
92628
|
Name:"鼠标形状",
|
|
@@ -94478,6 +94496,41 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
94478
94496
|
|
|
94479
94497
|
return false;
|
|
94480
94498
|
}
|
|
94499
|
+
|
|
94500
|
+
//option={ FrameID:, Enable: }
|
|
94501
|
+
this.EnableZoomYCoordinate=function(option)
|
|
94502
|
+
{
|
|
94503
|
+
if (!option) return false;
|
|
94504
|
+
if (!IFrameSplitOperator.IsNumber(option.FrameID)) return false;
|
|
94505
|
+
if (!IFrameSplitOperator.IsBool(option.Enable)) return false;
|
|
94506
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame)) return false;
|
|
94507
|
+
if (option.FrameID<0 || option.FrameID>this.Frame.SubFrame.length) return false;
|
|
94508
|
+
|
|
94509
|
+
var item=this.Frame.SubFrame[option.FrameID];
|
|
94510
|
+
if (!item || !item.Frame || !item.Frame.YSplitOperator) return false;
|
|
94511
|
+
|
|
94512
|
+
var frame=item.Frame;
|
|
94513
|
+
var splitOper=frame.YSplitOperator;
|
|
94514
|
+
|
|
94515
|
+
if (option.Enable)
|
|
94516
|
+
{
|
|
94517
|
+
var max=frame.HorizontalMax, min=frame.HorizontalMin;
|
|
94518
|
+
if (!IFrameSplitOperator.IsNumber(max) || !IFrameSplitOperator.IsNumber(min)) return false;
|
|
94519
|
+
|
|
94520
|
+
splitOper.FixedYMaxMin={ Max:max, Min:min };
|
|
94521
|
+
splitOper.EnableZoomUpDown=true;
|
|
94522
|
+
frame.XYSplit=true;
|
|
94523
|
+
this.ChartDragSelectRect.EnableLButton=false;
|
|
94524
|
+
}
|
|
94525
|
+
else
|
|
94526
|
+
{
|
|
94527
|
+
splitOper.FixedYMaxMin=null
|
|
94528
|
+
splitOper.EnableZoomUpDown=false;
|
|
94529
|
+
frame.XYSplit=true;
|
|
94530
|
+
}
|
|
94531
|
+
|
|
94532
|
+
this.Draw();
|
|
94533
|
+
}
|
|
94481
94534
|
}
|
|
94482
94535
|
|
|
94483
94536
|
//API 返回数据 转化为array[]
|
|
@@ -97230,7 +97283,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
97230
97283
|
this.ChartCorssCursor.PtInClient=(x,y)=>{ return this.PtInClient(x,y); }
|
|
97231
97284
|
this.ChartCorssCursor.Canvas=this.Canvas;
|
|
97232
97285
|
this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");
|
|
97233
|
-
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
97286
|
+
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
97287
|
+
this.ChartCorssCursor.StringFormatX.HQChart=this;
|
|
97234
97288
|
this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
|
|
97235
97289
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
97236
97290
|
this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;
|
|
@@ -103252,6 +103306,7 @@ function MinuteChartHScreenContainer(uielement)
|
|
|
103252
103306
|
this.ChartCorssCursor.Canvas=this.Canvas;
|
|
103253
103307
|
this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_Minute_XStringFormat");
|
|
103254
103308
|
this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
103309
|
+
this.ChartCorssCursor.StringFormatX.HQChart=this;
|
|
103255
103310
|
this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
|
|
103256
103311
|
this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
103257
103312
|
this.ChartCorssCursor.StringFormatY.HQChart=this;
|
|
@@ -106888,7 +106943,7 @@ function MinuteTimeStringData()
|
|
|
106888
106943
|
return data;
|
|
106889
106944
|
}
|
|
106890
106945
|
|
|
106891
|
-
this.GetTimeData = function (symbol)
|
|
106946
|
+
this.GetTimeData = function (symbol, option)
|
|
106892
106947
|
{
|
|
106893
106948
|
if (!symbol) return this.SHSZ;
|
|
106894
106949
|
|
|
@@ -106904,7 +106959,7 @@ function MinuteTimeStringData()
|
|
|
106904
106959
|
if (MARKET_SUFFIX_NAME.IsUSA(upperSymbol)) return this.GetUSA(upperSymbol);
|
|
106905
106960
|
if (MARKET_SUFFIX_NAME.IsCFFEX(upperSymbol) || MARKET_SUFFIX_NAME.IsCZCE(upperSymbol) || MARKET_SUFFIX_NAME.IsDCE(upperSymbol) || MARKET_SUFFIX_NAME.IsSHFE(upperSymbol) || MARKET_SUFFIX_NAME.IsGZFE(upperSymbol))
|
|
106906
106961
|
{
|
|
106907
|
-
var splitData = g_FuturesTimeData.GetSplitData(upperSymbol);
|
|
106962
|
+
var splitData = g_FuturesTimeData.GetSplitData(upperSymbol, option);
|
|
106908
106963
|
if (!splitData) return null;
|
|
106909
106964
|
return this.GetFutures(splitData);
|
|
106910
106965
|
}
|
|
@@ -107369,8 +107424,8 @@ function MinuteCoordinateData()
|
|
|
107369
107424
|
}
|
|
107370
107425
|
|
|
107371
107426
|
|
|
107372
|
-
|
|
107373
|
-
this.GetCoordinateData = function (symbol, width)
|
|
107427
|
+
// option=GlobalOption
|
|
107428
|
+
this.GetCoordinateData = function (symbol, width, option)
|
|
107374
107429
|
{
|
|
107375
107430
|
var data = null;
|
|
107376
107431
|
if (!symbol)
|
|
@@ -107395,7 +107450,7 @@ function MinuteCoordinateData()
|
|
|
107395
107450
|
else if (MARKET_SUFFIX_NAME.IsJP(upperSymbol))
|
|
107396
107451
|
data=this.GetJPData(upperSymbol,width);
|
|
107397
107452
|
else if (MARKET_SUFFIX_NAME.IsCFFEX(upperSymbol) || MARKET_SUFFIX_NAME.IsCZCE(upperSymbol) || MARKET_SUFFIX_NAME.IsDCE(upperSymbol) || MARKET_SUFFIX_NAME.IsSHFE(upperSymbol) || MARKET_SUFFIX_NAME.IsGZFE(upperSymbol))
|
|
107398
|
-
return this.GetChinatFuturesData(upperSymbol,width);
|
|
107453
|
+
return this.GetChinatFuturesData(upperSymbol, width, option);
|
|
107399
107454
|
else if (MARKET_SUFFIX_NAME.IsUSA(upperSymbol))
|
|
107400
107455
|
data = this.GetUSAData(upperSymbol,width);
|
|
107401
107456
|
else if (MARKET_SUFFIX_NAME.IsFTSE(upperSymbol))
|
|
@@ -107477,9 +107532,9 @@ function MinuteCoordinateData()
|
|
|
107477
107532
|
return result;
|
|
107478
107533
|
}
|
|
107479
107534
|
|
|
107480
|
-
this.GetFuturesData = function (upperSymbol,width,timeData)
|
|
107535
|
+
this.GetFuturesData = function (upperSymbol,width,timeData, option)
|
|
107481
107536
|
{
|
|
107482
|
-
var splitData = timeData.GetSplitData(upperSymbol);
|
|
107537
|
+
var splitData = timeData.GetSplitData(upperSymbol, option);
|
|
107483
107538
|
if (!splitData) return null;
|
|
107484
107539
|
var stringData = g_MinuteTimeStringData.GetFutures(splitData);
|
|
107485
107540
|
if (!stringData) return null;
|
|
@@ -107518,9 +107573,9 @@ function MinuteCoordinateData()
|
|
|
107518
107573
|
return result;
|
|
107519
107574
|
}
|
|
107520
107575
|
|
|
107521
|
-
this.GetChinatFuturesData=function(upperSymbol,width)
|
|
107576
|
+
this.GetChinatFuturesData=function(upperSymbol, width, option)
|
|
107522
107577
|
{
|
|
107523
|
-
return this.GetFuturesData(upperSymbol,width, g_FuturesTimeData);
|
|
107578
|
+
return this.GetFuturesData(upperSymbol,width, g_FuturesTimeData, option);
|
|
107524
107579
|
}
|
|
107525
107580
|
|
|
107526
107581
|
this.GetNYMEXData=function(upperSymbol,width)
|
|
@@ -108326,7 +108381,7 @@ function FuturesTimeData()
|
|
|
108326
108381
|
}
|
|
108327
108382
|
}
|
|
108328
108383
|
|
|
108329
|
-
this.GetData=function(upperSymbol)
|
|
108384
|
+
this.GetData=function(upperSymbol, option)
|
|
108330
108385
|
{
|
|
108331
108386
|
var oneWord = upperSymbol.charAt(0);
|
|
108332
108387
|
var twoWords = upperSymbol.substr(0,2);
|
|
@@ -108371,9 +108426,9 @@ function FuturesTimeData()
|
|
|
108371
108426
|
return null;
|
|
108372
108427
|
}
|
|
108373
108428
|
|
|
108374
|
-
this.GetSplitData = function (upperSymbol)
|
|
108429
|
+
this.GetSplitData = function (upperSymbol, option)
|
|
108375
108430
|
{
|
|
108376
|
-
var data=this.GetData(upperSymbol);
|
|
108431
|
+
var data=this.GetData(upperSymbol, option);
|
|
108377
108432
|
if (!data) return null;
|
|
108378
108433
|
|
|
108379
108434
|
return this.TIME_SPLIT[data.Time];
|
|
@@ -136196,14 +136251,14 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
136196
136251
|
var indexData=[];
|
|
136197
136252
|
var outVarItem={Name:item.name,Type:item.type};
|
|
136198
136253
|
if (item.color) outVarItem.Color=item.color;
|
|
136254
|
+
else if (item.Color) outVarItem.Color=item.Color;
|
|
136199
136255
|
if (IFrameSplitOperator.IsBool(item.IsShowTitle)) outVarItem.IsShowTitle = item.IsShowTitle; //是否显示指标标题
|
|
136200
136256
|
if (IFrameSplitOperator.IsNumber(item.DrawVAlign)) outVarItem.DrawVAlign = item.DrawVAlign;
|
|
136201
136257
|
if (IFrameSplitOperator.IsNumber(item.DrawAlign)) outVarItem.DrawAlign = item.DrawAlign;
|
|
136258
|
+
if (item.Font) outVarItem.Font=item.Font;
|
|
136202
136259
|
if (item.data)
|
|
136203
136260
|
{
|
|
136204
136261
|
outVarItem.Data=this.FittingArray(item.data,date,time,hqChart);
|
|
136205
|
-
|
|
136206
|
-
if (item.color) outVarItem.Color=item.color;
|
|
136207
136262
|
if (item.linewidth) outVarItem.LineWidth=item.linewidth;
|
|
136208
136263
|
if (IFrameSplitOperator.IsBool(item.isshow)) outVarItem.IsShow = item.isshow; //是否绘制线段
|
|
136209
136264
|
if (item.isexdata==true) outVarItem.IsExData = true;
|
|
@@ -136243,6 +136298,18 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
136243
136298
|
|
|
136244
136299
|
result.push(outVarItem);
|
|
136245
136300
|
}
|
|
136301
|
+
else if (draw.DrawType=="DRAWTEXT_FIX")
|
|
136302
|
+
{
|
|
136303
|
+
drawItem.Text=draw.Text;
|
|
136304
|
+
drawItem.Name=draw.Name;
|
|
136305
|
+
drawItem.DrawType=draw.DrawType;
|
|
136306
|
+
drawItem.DrawData={ Value:null, Text:null };
|
|
136307
|
+
drawItem.DrawData.Value=this.FittingArray(draw.DrawData.Value,date,time,hqChart);
|
|
136308
|
+
drawItem.DrawData.Text=this.FittingArray(draw.DrawData.Text,date,time,hqChart);
|
|
136309
|
+
drawItem.Position=draw.Position;
|
|
136310
|
+
outVarItem.Draw=drawItem;
|
|
136311
|
+
result.push(outVarItem);
|
|
136312
|
+
}
|
|
136246
136313
|
else if (draw.DrawType=="VERTLINE") //竖线
|
|
136247
136314
|
{
|
|
136248
136315
|
drawItem.Text=draw.Text;
|
|
@@ -154931,7 +154998,7 @@ function ScrollBarBGChart()
|
|
|
154931
154998
|
|
|
154932
154999
|
|
|
154933
155000
|
|
|
154934
|
-
var HQCHART_VERSION="1.1.
|
|
155001
|
+
var HQCHART_VERSION="1.1.15298";
|
|
154935
155002
|
|
|
154936
155003
|
function PrintHQChartVersion()
|
|
154937
155004
|
{
|
|
@@ -58292,6 +58292,8 @@ HQData.Report_APIIndex=function(data, callback)
|
|
|
58292
58292
|
HQData.APIIndex_BASELINE_BAR(data, callback);
|
|
58293
58293
|
else if (request.Data.indexname=="API_VERTLINE")
|
|
58294
58294
|
HQData.APIIndex_VERTLINE(data, callback);
|
|
58295
|
+
else if (request.Data.indexname=="API_DRAWTEXT_FIX")
|
|
58296
|
+
HQData.APIIndex_DRAWTEXT_FIX(data, callback);
|
|
58295
58297
|
|
|
58296
58298
|
else if (request.Data.indexname=="API_ERRORMESSAGE")
|
|
58297
58299
|
HQData.APIIndex_ErrorMessage(data, callback);
|
|
@@ -59987,6 +59989,52 @@ HQData.API_CHART_AREA_TEXT=function(data, callback)
|
|
|
59987
59989
|
}
|
|
59988
59990
|
|
|
59989
59991
|
|
|
59992
|
+
HQData.APIIndex_DRAWTEXT_FIX=function(data, callback)
|
|
59993
|
+
{
|
|
59994
|
+
data.PreventDefault=true;
|
|
59995
|
+
var hqchart=data.HQChart;
|
|
59996
|
+
var kData=hqchart.GetKData();
|
|
59997
|
+
|
|
59998
|
+
var textData=
|
|
59999
|
+
{
|
|
60000
|
+
name:'DRAWTEXT_FIX', type:1,
|
|
60001
|
+
Draw:
|
|
60002
|
+
{
|
|
60003
|
+
DrawType:'DRAWTEXT_FIX',
|
|
60004
|
+
DrawData: { Value:[], Text:[] },
|
|
60005
|
+
Position:{ X:0.5, Y:0.2, Type:1 }
|
|
60006
|
+
},
|
|
60007
|
+
Color:"rgb(30,144,255)",
|
|
60008
|
+
Font:`italic bold 2.2em "Fira Sans", sans-serif`,
|
|
60009
|
+
};
|
|
60010
|
+
|
|
60011
|
+
for(var i=0;i<kData.Data.length;++i)
|
|
60012
|
+
{
|
|
60013
|
+
var kItem=kData.Data[i];
|
|
60014
|
+
|
|
60015
|
+
if (i%50==1)
|
|
60016
|
+
{
|
|
60017
|
+
textData.Draw.DrawData.Value[i]=1;
|
|
60018
|
+
textData.Draw.DrawData.Text[i]=`${kItem.Date}-${i}`;
|
|
60019
|
+
}
|
|
60020
|
+
else
|
|
60021
|
+
{
|
|
60022
|
+
textData.Draw.DrawData.Value[i]=0;
|
|
60023
|
+
}
|
|
60024
|
+
}
|
|
60025
|
+
|
|
60026
|
+
var apiData=
|
|
60027
|
+
{
|
|
60028
|
+
code:0,
|
|
60029
|
+
stock:{ name:hqchart.Name, symbol:hqchart.Symbol },
|
|
60030
|
+
outdata: { date:kData.GetDate(), time:kData.GetTime(), outvar:[textData] }
|
|
60031
|
+
};
|
|
60032
|
+
|
|
60033
|
+
console.log('[HQData.APIIndex_PARTLINE] apiData ', apiData);
|
|
60034
|
+
callback(apiData);
|
|
60035
|
+
}
|
|
60036
|
+
|
|
60037
|
+
|
|
59990
60038
|
HQData.APIIndex_ErrorMessage=function(data, callback)
|
|
59991
60039
|
{
|
|
59992
60040
|
data.PreventDefault=true;
|