hqchart 1.1.13678 → 1.1.13689
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.NetworkFilterTest.vue.js +15 -4
- package/lib/umychart.vue.js +69 -33
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +121 -0
- package/src/jscommon/umychart.complier.js +186 -7
- package/src/jscommon/umychart.js +10 -0
- package/src/jscommon/umychart.keyboard.js +141 -65
- package/src/jscommon/umychart.report.js +1 -1
- package/src/jscommon/umychart.resource/css/tools.css +1 -1
- package/src/jscommon/umychart.testdata.js +121 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +339 -74
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +121 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +339 -74
|
@@ -72171,6 +72171,16 @@ function JSChartResource()
|
|
|
72171
72171
|
NameFont:{ Size:14, Name:"微软雅黑" },
|
|
72172
72172
|
SymbolFont:{ Size:12, Name:"微软雅黑" }
|
|
72173
72173
|
},
|
|
72174
|
+
|
|
72175
|
+
VScrollbar:
|
|
72176
|
+
{
|
|
72177
|
+
ScrollBarHeight:50,
|
|
72178
|
+
ButtonColor:"rgba(252,252,252,0.8)",
|
|
72179
|
+
BarColor:"rgba(168,168,168,0.9)",
|
|
72180
|
+
BorderColor:'rgba(180,180,180,0.9)',
|
|
72181
|
+
BGColor:"rgba(234,239,248,0.9)",
|
|
72182
|
+
BarWidth:{ Size:8 }
|
|
72183
|
+
},
|
|
72174
72184
|
},
|
|
72175
72185
|
|
|
72176
72186
|
//滚动条
|
|
@@ -98081,6 +98091,38 @@ var g_JSComplierResource=
|
|
|
98081
98091
|
Data:new Map() //自定义函数 key=变量名, Value:{ Name:变量名, Description:描述信息 }
|
|
98082
98092
|
},
|
|
98083
98093
|
|
|
98094
|
+
CustomDataFunction: //自定义数据函数
|
|
98095
|
+
{
|
|
98096
|
+
//自定义函数 key=变量名, Value:{ Name:变量名, Description:描述信息, ArgCount:参数个数 }
|
|
98097
|
+
Data:new Map(
|
|
98098
|
+
[
|
|
98099
|
+
[
|
|
98100
|
+
"L2_VOLNUM",
|
|
98101
|
+
{
|
|
98102
|
+
Name:"L2_VOLNUM",
|
|
98103
|
+
Description:"单数分档,按: N(0--1):(超大+大)/(中+小),M(0--1):买/卖二类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
|
|
98104
|
+
ArgCount:2
|
|
98105
|
+
}
|
|
98106
|
+
],
|
|
98107
|
+
[
|
|
98108
|
+
"L2_VOL",
|
|
98109
|
+
{
|
|
98110
|
+
Name:"L2_VOL",
|
|
98111
|
+
Description:"成交量分档,按: N(0--3):超大/大/中/小四档处理,M(0--3):买入/卖出/主买/主卖四类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
|
|
98112
|
+
ArgCount:2
|
|
98113
|
+
}
|
|
98114
|
+
],
|
|
98115
|
+
[
|
|
98116
|
+
"L2_AMO",
|
|
98117
|
+
{
|
|
98118
|
+
Name:"L2_AMO",
|
|
98119
|
+
Description:"成交额分档,按: N(0--3):超大/大/中/小四档处理,M(0--3):买入/卖出/主买/主卖四类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
|
|
98120
|
+
ArgCount:2
|
|
98121
|
+
}
|
|
98122
|
+
]
|
|
98123
|
+
])
|
|
98124
|
+
},
|
|
98125
|
+
|
|
98084
98126
|
GetDrawIcon:function(id)
|
|
98085
98127
|
{
|
|
98086
98128
|
var icon;
|
|
@@ -98133,6 +98175,12 @@ var g_JSComplierResource=
|
|
|
98133
98175
|
{
|
|
98134
98176
|
if (g_JSComplierResource.CustomVariant.Data.has(name)) return true;
|
|
98135
98177
|
return false;
|
|
98178
|
+
},
|
|
98179
|
+
|
|
98180
|
+
IsCustomDataFunction:function(name)
|
|
98181
|
+
{
|
|
98182
|
+
if (g_JSComplierResource.CustomDataFunction.Data.has(name)) return true;
|
|
98183
|
+
return false;
|
|
98136
98184
|
}
|
|
98137
98185
|
}
|
|
98138
98186
|
|
|
@@ -99039,7 +99087,15 @@ function Node(ErrorHandler)
|
|
|
99039
99087
|
"CAPITAL","TOTALCAPITAL","EXCHANGE",
|
|
99040
99088
|
"HYBLOCK","DYBLOCK","GNBLOCK","FGBLOCK","ZSBLOCK","ZHBLOCK","ZDBLOCK","HYZSCODE",
|
|
99041
99089
|
"GNBLOCKNUM","FGBLOCKNUM","ZSBLOCKNUM","ZHBLOCKNUM","ZDBLOCKNUM",
|
|
99042
|
-
"HYSYL","HYSJL","FROMOPEN"
|
|
99090
|
+
"HYSYL","HYSJL","FROMOPEN",
|
|
99091
|
+
//资金流向
|
|
99092
|
+
"LARGEINTRDVOL","LARGEOUTTRDVOL",
|
|
99093
|
+
"TRADENUM","TRADEINNUM","TRADEOUTNUM",
|
|
99094
|
+
"LARGETRDINNUM","LARGETRDOUTNUM",
|
|
99095
|
+
"CUR_BUYORDER","CUR_SELLORDER",
|
|
99096
|
+
"ACTINVOL","ACTOUTVOL",
|
|
99097
|
+
"BIDORDERVOL","BIDCANCELVOL","AVGBIDPX",
|
|
99098
|
+
"OFFERORDERVOL","OFFERCANCELVOL","AVGOFFERPX",
|
|
99043
99099
|
]);
|
|
99044
99100
|
|
|
99045
99101
|
if (setVariantName.has(varName))
|
|
@@ -99132,6 +99188,15 @@ function Node(ErrorHandler)
|
|
|
99132
99188
|
return;
|
|
99133
99189
|
}
|
|
99134
99190
|
|
|
99191
|
+
//自定义数据函数
|
|
99192
|
+
if (g_JSComplierResource.IsCustomDataFunction(callee.Name))
|
|
99193
|
+
{
|
|
99194
|
+
var item={FunctionName:callee.Name, ID:JS_EXECUTE_JOB_ID.JOB_CUSTOM_DATA_FUNCTION, Args:args}
|
|
99195
|
+
if (token) item.Token={ Index:token.Start, Line:token.LineNumber};
|
|
99196
|
+
this.FunctionData.push(item);
|
|
99197
|
+
return;
|
|
99198
|
+
}
|
|
99199
|
+
|
|
99135
99200
|
if (callee.Name=='DYNAINFO')
|
|
99136
99201
|
{
|
|
99137
99202
|
var item={ ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_LATEST_DATA, Args:args, FunctionName:callee.Name };
|
|
@@ -112558,7 +112623,7 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
112558
112623
|
Request:
|
|
112559
112624
|
{
|
|
112560
112625
|
Url:"数据地址", Type:'POST',
|
|
112561
|
-
Data:{ VariantName:jobItem.VariantName, symbol: this.Symbol, daterange:dateRange, period:this.Period }
|
|
112626
|
+
Data:{ VariantName:jobItem.VariantName, symbol: this.Symbol, daterange:dateRange, period:this.Period, right:this.Right }
|
|
112562
112627
|
},
|
|
112563
112628
|
Self:this,
|
|
112564
112629
|
VariantInfo:variantInfo,
|
|
@@ -112601,7 +112666,61 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
112601
112666
|
{
|
|
112602
112667
|
FunctionName:jobItem.FunctionName,
|
|
112603
112668
|
symbol: this.Symbol, daterange:dateRange,
|
|
112604
|
-
JobItem:jobItem //函数编译信息
|
|
112669
|
+
JobItem:jobItem, //函数编译信息
|
|
112670
|
+
period:this.Period,
|
|
112671
|
+
right:this.Right,
|
|
112672
|
+
}
|
|
112673
|
+
},
|
|
112674
|
+
Self:this,
|
|
112675
|
+
FunctionInfo:functionInfo,
|
|
112676
|
+
PreventDefault:false
|
|
112677
|
+
};
|
|
112678
|
+
this.NetworkFilter(obj, function(recvData)
|
|
112679
|
+
{
|
|
112680
|
+
if (recvData.Error) self.AddStockValueError(key,recvData.Error);
|
|
112681
|
+
else self.RecvStockValue(recvData.Data,jobItem,key,recvData.DataType);
|
|
112682
|
+
self.Execute.RunNextJob();
|
|
112683
|
+
});
|
|
112684
|
+
}
|
|
112685
|
+
else
|
|
112686
|
+
{
|
|
112687
|
+
this.AddStockValueError(key, `自定义函数${key}下载失败`);
|
|
112688
|
+
this.Execute.RunNextJob();
|
|
112689
|
+
}
|
|
112690
|
+
}
|
|
112691
|
+
|
|
112692
|
+
|
|
112693
|
+
this.GetCustomFunctionDataV2=function(jobItem)
|
|
112694
|
+
{
|
|
112695
|
+
var funcName=jobItem.FunctionName;
|
|
112696
|
+
var functionInfo=g_JSComplierResource.CustomDataFunction.Data.get(funcName);
|
|
112697
|
+
if (!functionInfo) return;
|
|
112698
|
+
|
|
112699
|
+
var aryArgs=this.JobArgumentsToArray(jobItem, functionInfo.ArgCount);
|
|
112700
|
+
var key=this.GetStockDataKey(jobItem,aryArgs);
|
|
112701
|
+
|
|
112702
|
+
if (this.StockData.has(key)) return this.Execute.RunNextJob(); //一个函数只能缓存一个数据, 保存多个外部自己保存
|
|
112703
|
+
|
|
112704
|
+
var self=this;
|
|
112705
|
+
if (this.NetworkFilter)
|
|
112706
|
+
{
|
|
112707
|
+
var dateRange=this.Data.GetDateRange();
|
|
112708
|
+
var obj=
|
|
112709
|
+
{
|
|
112710
|
+
Name:'JSSymbolData::GetCustomFunctionData', //类名::函数名
|
|
112711
|
+
Explain:'自定义函数数据下载',
|
|
112712
|
+
JobID:jobItem.ID,
|
|
112713
|
+
Request:
|
|
112714
|
+
{
|
|
112715
|
+
Url:"数据地址", Type:'POST',
|
|
112716
|
+
Data:
|
|
112717
|
+
{
|
|
112718
|
+
FunctionName:jobItem.FunctionName,
|
|
112719
|
+
symbol: this.Symbol, daterange:dateRange,
|
|
112720
|
+
JobItem:jobItem, //函数编译信息
|
|
112721
|
+
Key:key,
|
|
112722
|
+
period:this.Period,
|
|
112723
|
+
right:this.Right,
|
|
112605
112724
|
}
|
|
112606
112725
|
},
|
|
112607
112726
|
Self:this,
|
|
@@ -114418,6 +114537,7 @@ var JS_EXECUTE_JOB_ID=
|
|
|
114418
114537
|
|
|
114419
114538
|
JOB_CUSTOM_FUNCTION_DATA:6000, //自定义函数
|
|
114420
114539
|
JOB_CUSTOM_VARIANT_DATA:6001, //自定义变量
|
|
114540
|
+
JOB_CUSTOM_DATA_FUNCTION:6002, //自定义数据函数
|
|
114421
114541
|
//截面数据
|
|
114422
114542
|
//财务数据 SF(公告期,数据名称) 如: SF(201901,"流动资产");
|
|
114423
114543
|
JOB_DOWNLOAD_SECTION_SF:20000,
|
|
@@ -114658,8 +114778,26 @@ function JSExecute(ast,option)
|
|
|
114658
114778
|
["MACHINEDATE",null],["MACHINETIME",null],["MACHINEWEEK",null],
|
|
114659
114779
|
|
|
114660
114780
|
["TR", null], //真实波幅
|
|
114661
|
-
["AUTOFILTER", null]
|
|
114662
|
-
|
|
114781
|
+
["AUTOFILTER", null],
|
|
114782
|
+
|
|
114783
|
+
['LARGEINTRDVOL', null], //逐笔买入大单成交量,相当于L2_VOL(0,0)+L2_VOL(1,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114784
|
+
['LARGEOUTTRDVOL', null], //逐笔卖出大单成交量,相当于L2_VOL(0,1)+L2_VOL(1,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114785
|
+
["TRADENUM", null], //逐笔成交总单数,沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114786
|
+
["TRADEINNUM", null], //逐笔买入成交单数,相当于L2_VOLNUM(0,0)+L2_VOLNUM(1,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114787
|
+
["TRADEOUTNUM", null], //逐笔卖出成交单数,相当于L2_VOLNUM(0,1)+L2_VOLNUM(1,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114788
|
+
["LARGETRDINNUM", null], //逐笔买入大单成交单数,相当于L2_VOLNUM(0,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114789
|
+
["LARGETRDOUTNUM", null], //逐笔卖出大单成交单数,相当于L2_VOLNUM(0,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114790
|
+
["CUR_BUYORDER", null], //总委买量,序列数据,专业版等(资金流向功能)沪深京品种行情专用
|
|
114791
|
+
["CUR_SELLORDER", null], //总委卖量,序列数据,专业版等(资金流向功能)沪深京品种行情专用
|
|
114792
|
+
["ACTINVOL", null], //主动买成交量,相当于L2_VOL(0,2)+L2_VOL(1,2)+L2_VOL(2,2)+L2_VOL(3,2),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114793
|
+
["ACTOUTVOL", null], //主动卖成交量,相当于L2_VOL(0,3)+L2_VOL(1,3)+L2_VOL(2,3)+L2_VOL(3,3),沪深京品种的资金流向,仅日线以上周期,用于特定版本
|
|
114794
|
+
["BIDORDERVOL", null], //累计总有效委买量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委买量-累计总有效撤买量=总买+总成交量
|
|
114795
|
+
["BIDCANCELVOL", null], //累计总有效撤买量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委买量-累计总有效撤买量=总买+总成交量
|
|
114796
|
+
["AVGBIDPX", null], //专业版等(资金流向功能)沪深京品种行情专用:最新委买均价
|
|
114797
|
+
["OFFERORDERVOL", null], //累计总有效委卖量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委卖量-累计总有效撤卖量=总卖+总成交量
|
|
114798
|
+
["OFFERCANCELVOL", null], //累计总有效撤卖量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委卖量-累计总有效撤卖量=总卖+总成交量
|
|
114799
|
+
["AVGOFFERPX", null], //专业版等(资金流向功能)沪深京品种行情专用:最新委卖均价
|
|
114800
|
+
//["", null],
|
|
114663
114801
|
]);
|
|
114664
114802
|
|
|
114665
114803
|
this.SymbolData=new JSSymbolData(this.AST,option,this);
|
|
@@ -114784,6 +114922,9 @@ function JSExecute(ast,option)
|
|
|
114784
114922
|
case JS_EXECUTE_JOB_ID.JOB_CUSTOM_FUNCTION_DATA:
|
|
114785
114923
|
return this.SymbolData.GetCustomFunctionData(jobItem);
|
|
114786
114924
|
|
|
114925
|
+
case JS_EXECUTE_JOB_ID.JOB_CUSTOM_DATA_FUNCTION:
|
|
114926
|
+
return this.SymbolData.GetCustomFunctionDataV2(jobItem);
|
|
114927
|
+
|
|
114787
114928
|
|
|
114788
114929
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_CUSTOM_API_DATA:
|
|
114789
114930
|
return this.SymbolData.DownloadCustomAPIData(jobItem);
|
|
@@ -114876,6 +115017,24 @@ function JSExecute(ast,option)
|
|
|
114876
115017
|
case "HYSJL":
|
|
114877
115018
|
|
|
114878
115019
|
case 'FROMOPEN':
|
|
115020
|
+
|
|
115021
|
+
case "LARGEINTRDVOL":
|
|
115022
|
+
case "LARGEOUTTRDVOL":
|
|
115023
|
+
case "TRADENUM":
|
|
115024
|
+
case "TRADEINNUM":
|
|
115025
|
+
case "TRADEOUTNUM":
|
|
115026
|
+
case "LARGETRDINNUM":
|
|
115027
|
+
case "LARGETRDOUTNUM":
|
|
115028
|
+
case "CUR_BUYORDER":
|
|
115029
|
+
case "CUR_SELLORDER":
|
|
115030
|
+
case "ACTINVOL":
|
|
115031
|
+
case "ACTOUTVOL":
|
|
115032
|
+
case "BIDORDERVOL":
|
|
115033
|
+
case "BIDCANCELVOL":
|
|
115034
|
+
case "AVGBIDPX":
|
|
115035
|
+
case "OFFERORDERVOL":
|
|
115036
|
+
case "OFFERCANCELVOL":
|
|
115037
|
+
case "AVGOFFERPX":
|
|
114879
115038
|
return this.SymbolData.GetStockCacheData({ VariantName:name, Node:node });
|
|
114880
115039
|
case 'SETCODE':
|
|
114881
115040
|
return this.SymbolData.SETCODE();
|
|
@@ -114939,8 +115098,9 @@ function JSExecute(ast,option)
|
|
|
114939
115098
|
return this.SymbolData.WEEKOFYEAR();
|
|
114940
115099
|
case "DAYSTOTODAY":
|
|
114941
115100
|
return this.SymbolData.DAYSTOTODAY();
|
|
114942
|
-
|
|
114943
115101
|
}
|
|
115102
|
+
|
|
115103
|
+
this.ThrowUnexpectedNode(node, '变量'+name+'不存在', name);
|
|
114944
115104
|
}
|
|
114945
115105
|
|
|
114946
115106
|
this.ReadCustomVariant=function(name,node)
|
|
@@ -115891,6 +116051,15 @@ function JSExecute(ast,option)
|
|
|
115891
116051
|
return node.Out;
|
|
115892
116052
|
}
|
|
115893
116053
|
|
|
116054
|
+
if (g_JSComplierResource.IsCustomDataFunction(funcName))
|
|
116055
|
+
{
|
|
116056
|
+
var functionInfo=g_JSComplierResource.CustomDataFunction.Data.get(funcName);
|
|
116057
|
+
node.Out=this.SymbolData.GetStockCacheData( {FunctionName:funcName, Args:args, ArgCount:functionInfo.ArgCount, Node:node } );
|
|
116058
|
+
node.Draw=null;
|
|
116059
|
+
|
|
116060
|
+
return node.Out;
|
|
116061
|
+
}
|
|
116062
|
+
|
|
115894
116063
|
switch(funcName)
|
|
115895
116064
|
{
|
|
115896
116065
|
case 'DYNAINFO': //行情最新数据
|
|
@@ -116460,6 +116629,24 @@ function JSExplainer(ast,option)
|
|
|
116460
116629
|
['DRAWNULL',"无效数据"],
|
|
116461
116630
|
["TR", "求真实波幅"],
|
|
116462
116631
|
|
|
116632
|
+
["LARGEINTRDVOL","逐笔买入大单成交量"],
|
|
116633
|
+
["LARGEOUTTRDVOL","逐笔卖出大单成交量"],
|
|
116634
|
+
["TRADENUM", "逐笔成交总单数"],
|
|
116635
|
+
["TRADEINNUM", "逐笔买入成交单数"],
|
|
116636
|
+
["TRADEOUTNUM", "逐笔卖出成交单数"],
|
|
116637
|
+
["LARGETRDINNUM", "逐笔买入大单成交单数"],
|
|
116638
|
+
["LARGETRDOUTNUM", "逐笔卖出大单成交单数"],
|
|
116639
|
+
["CUR_BUYORDER", "总委买量"],
|
|
116640
|
+
["CUR_SELLORDER", "总委卖量"],
|
|
116641
|
+
["ACTINVOL", "主动买成交量"],
|
|
116642
|
+
["ACTOUTVOL", "主动卖成交量"],
|
|
116643
|
+
["BIDORDERVOL", "累计总有效委买量"],
|
|
116644
|
+
["BIDCANCELVOL", "累计总有效撤买量"],
|
|
116645
|
+
["AVGBIDPX", "最新委买均价"],
|
|
116646
|
+
["OFFERORDERVOL", "累计总有效委卖量"],
|
|
116647
|
+
["OFFERCANCELVOL", "累计总有效撤卖量"],
|
|
116648
|
+
["AVGOFFERPX", "最新委卖均价"],
|
|
116649
|
+
|
|
116463
116650
|
]);
|
|
116464
116651
|
|
|
116465
116652
|
if (option)
|
|
@@ -117051,7 +117238,9 @@ function JSExplainer(ast,option)
|
|
|
117051
117238
|
}
|
|
117052
117239
|
],
|
|
117053
117240
|
|
|
117054
|
-
|
|
117241
|
+
["L2_VOLNUM", { Name:"L2_VOLNUM", Param:{ Count:2 }, ToString:function(args) { return `单数分档`; } }],
|
|
117242
|
+
["L2_VOL", { Name:"L2_VOL", Param:{ Count:2 }, ToString:function(args) { return `成交量分档`; } }],
|
|
117243
|
+
["L2_AMO", { Name:"L2_AMO", Param:{ Count:2 }, ToString:function(args) { return `成交额分档`; } }],
|
|
117055
117244
|
|
|
117056
117245
|
]
|
|
117057
117246
|
);
|
|
@@ -133993,7 +134182,7 @@ function ChartVScrollbar()
|
|
|
133993
134182
|
this.ChartBorder; //边框信息
|
|
133994
134183
|
this.ChartFrame; //框架画法
|
|
133995
134184
|
this.Name; //名称
|
|
133996
|
-
this.ClassName='
|
|
134185
|
+
this.ClassName='ChartVScrollbar'; //类名
|
|
133997
134186
|
this.IsDrawFirst=false;
|
|
133998
134187
|
this.GetEventCallback; //获取事件
|
|
133999
134188
|
this.Report;
|
|
@@ -134570,6 +134759,7 @@ function JSKeyboardChartContainer(uielement)
|
|
|
134570
134759
|
|
|
134571
134760
|
//拖拽滚动条
|
|
134572
134761
|
this.DragYScroll=null; //{Start:{x,y}, End:{x, y}}
|
|
134762
|
+
|
|
134573
134763
|
this.IsDestroy=false; //是否已经销毁了
|
|
134574
134764
|
|
|
134575
134765
|
this.ChartDestory=function() //销毁
|
|
@@ -134610,6 +134800,7 @@ function JSKeyboardChartContainer(uielement)
|
|
|
134610
134800
|
this.Data.Data=aryExactQuery.concat(aryFuzzyQuery);
|
|
134611
134801
|
|
|
134612
134802
|
this.ChartPaint[0].SelectedRow=0;
|
|
134803
|
+
this.ChartPaint[0].SizeChange=true;
|
|
134613
134804
|
|
|
134614
134805
|
JSConsole.Chart.Log(`[JSKeyboardChart:Search] search=${strSearch}, source=${this.SourceData.Data.length} match=${this.Data.Data.length}`);
|
|
134615
134806
|
|
|
@@ -134686,6 +134877,12 @@ function JSKeyboardChartContainer(uielement)
|
|
|
134686
134877
|
chart.Data=this.Data;
|
|
134687
134878
|
this.ChartPaint[0]=chart;
|
|
134688
134879
|
|
|
134880
|
+
chart.VScrollbar=new ChartKeyboardVScrollbar();
|
|
134881
|
+
chart.VScrollbar.Frame=this.Frame;
|
|
134882
|
+
chart.VScrollbar.Canvas=this.Canvas;
|
|
134883
|
+
chart.VScrollbar.ChartBorder=this.Frame.ChartBorder;
|
|
134884
|
+
chart.VScrollbar.Report=chart;
|
|
134885
|
+
|
|
134689
134886
|
if (option)
|
|
134690
134887
|
{
|
|
134691
134888
|
|
|
@@ -134937,7 +135134,7 @@ function JSKeyboardChartContainer(uielement)
|
|
|
134937
135134
|
|
|
134938
135135
|
this.UIOnMouseDown=function(e)
|
|
134939
135136
|
{
|
|
134940
|
-
this.
|
|
135137
|
+
this.DragYScroll=null;
|
|
134941
135138
|
this.DragMove={ Click:{ X:e.clientX, Y:e.clientY }, Move:{X:e.clientX, Y:e.clientY}, PreMove:{X:e.clientX, Y:e.clientY } };
|
|
134942
135139
|
|
|
134943
135140
|
var pixelTatio = GetDevicePixelRatio();
|
|
@@ -134956,6 +135153,29 @@ function JSKeyboardChartContainer(uielement)
|
|
|
134956
135153
|
if (clickData.Redraw==true)
|
|
134957
135154
|
this.Draw();
|
|
134958
135155
|
}
|
|
135156
|
+
else if (clickData.Type==5 && e.button==0) //右侧滚动条
|
|
135157
|
+
{
|
|
135158
|
+
var scroll=clickData.VScrollbar;
|
|
135159
|
+
if (scroll.Type==1) //顶部按钮
|
|
135160
|
+
{
|
|
135161
|
+
if (this.MoveYOffset(-1))
|
|
135162
|
+
this.Draw();
|
|
135163
|
+
}
|
|
135164
|
+
else if (scroll.Type==2) //底部按钮
|
|
135165
|
+
{
|
|
135166
|
+
if (this.MoveYOffset(1))
|
|
135167
|
+
this.Draw();
|
|
135168
|
+
}
|
|
135169
|
+
else if (scroll.Type==3) //滚动条
|
|
135170
|
+
{
|
|
135171
|
+
this.DragYScroll={ Click:{X:x, Y:y}, LastMove:{X:x, Y:y} };
|
|
135172
|
+
}
|
|
135173
|
+
else if (scroll.Type==4) //滚动条内部
|
|
135174
|
+
{
|
|
135175
|
+
if (this.SetYOffset(scroll.Pos))
|
|
135176
|
+
this.Draw();
|
|
135177
|
+
}
|
|
135178
|
+
}
|
|
134959
135179
|
}
|
|
134960
135180
|
|
|
134961
135181
|
document.onmousemove=(e)=>{ this.DocOnMouseMove(e); }
|
|
@@ -135001,68 +135221,17 @@ function JSKeyboardChartContainer(uielement)
|
|
|
135001
135221
|
var x = (e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;
|
|
135002
135222
|
var y = (e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;
|
|
135003
135223
|
|
|
135004
|
-
|
|
135005
|
-
|
|
135006
|
-
if (this.DragRow)
|
|
135007
|
-
{
|
|
135008
|
-
var drag=this.DragRow;
|
|
135009
|
-
var moveSetpY=drag.LastMove.Y-e.clientY;
|
|
135010
|
-
if (Math.abs(moveSetpY)<2) return;
|
|
135011
|
-
var reportChart=this.GetReportChart();
|
|
135012
|
-
drag.LastMove.X=e.clientX;
|
|
135013
|
-
drag.LastMove.Y=e.clientY;
|
|
135014
|
-
drag.Inside={X:x, Y:y};
|
|
135015
|
-
|
|
135016
|
-
if (reportChart)
|
|
135017
|
-
{
|
|
135018
|
-
var moveRow=reportChart.OnDrawgRow(x,y,e);
|
|
135019
|
-
if (moveRow )
|
|
135020
|
-
{
|
|
135021
|
-
if (moveRow.Type==2)
|
|
135022
|
-
{
|
|
135023
|
-
if (moveRow.Data.DataIndex!=drag.Data.Row.DataIndex)
|
|
135024
|
-
{
|
|
135025
|
-
drag.MoveRow=moveRow;
|
|
135026
|
-
}
|
|
135027
|
-
}
|
|
135028
|
-
else if (moveRow.Type==7)
|
|
135029
|
-
{
|
|
135030
|
-
var pageStatus=reportChart.GetCurrentPageStatus();
|
|
135031
|
-
if (!pageStatus.IsEnd)
|
|
135032
|
-
{
|
|
135033
|
-
this.MoveYOffset(1, false);
|
|
135034
|
-
drag.MoveRow=null;
|
|
135035
|
-
|
|
135036
|
-
this.EnablePageScroll=true;
|
|
135037
|
-
this.AutoScrollPage(2);
|
|
135038
|
-
}
|
|
135039
|
-
}
|
|
135040
|
-
else if (moveRow.Type==5)
|
|
135041
|
-
{
|
|
135042
|
-
if (this.Data.YOffset>0)
|
|
135043
|
-
{
|
|
135044
|
-
this.MoveYOffset(-1, false);
|
|
135045
|
-
drag.MoveRow=null;
|
|
135046
|
-
|
|
135047
|
-
this.EnablePageScroll=true;
|
|
135048
|
-
this.AutoScrollPage(-2);
|
|
135049
|
-
}
|
|
135050
|
-
}
|
|
135051
|
-
}
|
|
135052
|
-
reportChart.DragRow=drag;
|
|
135053
|
-
}
|
|
135054
|
-
|
|
135055
|
-
this.Draw();
|
|
135056
|
-
}
|
|
135057
|
-
else if (this.DragXScroll)
|
|
135224
|
+
if (this.DragYScroll)
|
|
135058
135225
|
{
|
|
135059
135226
|
var chart=this.ChartPaint[0];
|
|
135060
|
-
if (!chart || !chart.
|
|
135227
|
+
if (!chart || !chart.VScrollbar) return;
|
|
135061
135228
|
|
|
135062
|
-
this.
|
|
135063
|
-
this.
|
|
135064
|
-
|
|
135065
|
-
|
|
135229
|
+
this.DragYScroll.LastMove.X=x;
|
|
135230
|
+
this.DragYScroll.LastMove.Y=y;
|
|
135231
|
+
|
|
135232
|
+
var pos=chart.VScrollbar.GetScrollPostionByPoint(x,y);
|
|
135233
|
+
if (this.SetYOffset(pos))
|
|
135234
|
+
this.Draw();
|
|
135066
135235
|
}
|
|
135067
135236
|
}
|
|
135068
135237
|
|
|
@@ -135072,6 +135241,8 @@ function JSKeyboardChartContainer(uielement)
|
|
|
135072
135241
|
document.onmousemove=null;
|
|
135073
135242
|
document.onmouseup=null;
|
|
135074
135243
|
|
|
135244
|
+
this.DragYScroll=null;
|
|
135245
|
+
|
|
135075
135246
|
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYBOARD_MOUSEUP)
|
|
135076
135247
|
if (event && event.Callback)
|
|
135077
135248
|
{
|
|
@@ -135378,6 +135549,21 @@ function JSKeyboardChartContainer(uielement)
|
|
|
135378
135549
|
return result;
|
|
135379
135550
|
}
|
|
135380
135551
|
}
|
|
135552
|
+
|
|
135553
|
+
this.SetYOffset=function(pos)
|
|
135554
|
+
{
|
|
135555
|
+
if (!IFrameSplitOperator.IsNumber(pos)) return false;
|
|
135556
|
+
var chart=this.ChartPaint[0];
|
|
135557
|
+
if (!chart) return false;
|
|
135558
|
+
|
|
135559
|
+
var maxOffset=chart.GetYScrollRange();
|
|
135560
|
+
if (pos<0) pos=0;
|
|
135561
|
+
if (pos>maxOffset) pos=maxOffset;
|
|
135562
|
+
|
|
135563
|
+
this.Data.YOffset=pos;
|
|
135564
|
+
|
|
135565
|
+
return true;
|
|
135566
|
+
}
|
|
135381
135567
|
}
|
|
135382
135568
|
|
|
135383
135569
|
function JSKeyboardFrame()
|
|
@@ -135387,14 +135573,14 @@ function JSKeyboardFrame()
|
|
|
135387
135573
|
|
|
135388
135574
|
this.BorderLine=null; //1=上 2=下 4=左 8=右
|
|
135389
135575
|
|
|
135390
|
-
this.BorderColor=g_JSChartResource.
|
|
135576
|
+
this.BorderColor=g_JSChartResource.Keyboard.BorderColor; //边框线
|
|
135391
135577
|
|
|
135392
135578
|
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;
|
|
135393
135579
|
this.LogoTextFont=g_JSChartResource.FrameLogo.Font;
|
|
135394
135580
|
|
|
135395
|
-
this.ReloadResource=function(
|
|
135581
|
+
this.ReloadResource=function(option)
|
|
135396
135582
|
{
|
|
135397
|
-
this.BorderColor=g_JSChartResource.
|
|
135583
|
+
this.BorderColor=g_JSChartResource.Keyboard.BorderColor; //边框线
|
|
135398
135584
|
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;
|
|
135399
135585
|
this.LogoTextFont=g_JSChartResource.FrameLogo.Font;
|
|
135400
135586
|
}
|
|
@@ -135491,10 +135677,12 @@ function ChartSymbolList()
|
|
|
135491
135677
|
this.IsDrawBorder=false; //是否绘制单元格边框
|
|
135492
135678
|
|
|
135493
135679
|
this.ShowSymbol=[]; //显示的股票列表 { Index:序号(排序用), Symbol:股票代码 }
|
|
135680
|
+
|
|
135681
|
+
this.VScrollbar; //竖向滚动条
|
|
135494
135682
|
|
|
135495
135683
|
this.BorderColor=g_JSChartResource.Keyboard.BorderColor; //边框线
|
|
135496
135684
|
this.SelectedColor=g_JSChartResource.Keyboard.SelectedColor; //选中行
|
|
135497
|
-
this.TextColor=g_JSChartResource.Keyboard.TextColor;
|
|
135685
|
+
this.TextColor=g_JSChartResource.Keyboard.TextColor; //文字颜色
|
|
135498
135686
|
|
|
135499
135687
|
//表格内容配置
|
|
135500
135688
|
this.ItemFontConfig={ Size:g_JSChartResource.Keyboard.Item.Font.Size, Name:g_JSChartResource.Keyboard.Item.Font.Name };
|
|
@@ -135527,7 +135715,11 @@ function ChartSymbolList()
|
|
|
135527
135715
|
|
|
135528
135716
|
this.ReloadResource=function(resource)
|
|
135529
135717
|
{
|
|
135530
|
-
|
|
135718
|
+
this.BorderColor=g_JSChartResource.Keyboard.BorderColor; //边框线
|
|
135719
|
+
this.SelectedColor=g_JSChartResource.Keyboard.SelectedColor; //选中行
|
|
135720
|
+
this.TextColor=g_JSChartResource.Keyboard.TextColor; //文字颜色
|
|
135721
|
+
|
|
135722
|
+
if (this.VScrollbar) this.VScrollbar.ReloadResource(resource);
|
|
135531
135723
|
}
|
|
135532
135724
|
|
|
135533
135725
|
this.SetColumn=function(aryColumn)
|
|
@@ -135542,6 +135734,7 @@ function ChartSymbolList()
|
|
|
135542
135734
|
if (this.SizeChange) this.CalculateSize();
|
|
135543
135735
|
else this.UpdateCacheData();
|
|
135544
135736
|
|
|
135737
|
+
var bShowVScrollbar=this.IsShowVScrollbar();
|
|
135545
135738
|
this.Canvas.save();
|
|
135546
135739
|
|
|
135547
135740
|
this.Canvas.beginPath();
|
|
@@ -135554,6 +135747,12 @@ function ChartSymbolList()
|
|
|
135554
135747
|
|
|
135555
135748
|
this.DrawBorder();
|
|
135556
135749
|
|
|
135750
|
+
if (this.VScrollbar && bShowVScrollbar)
|
|
135751
|
+
{
|
|
135752
|
+
var bottom=this.ChartBorder.GetBottom();
|
|
135753
|
+
this.VScrollbar.DrawScrollbar(this.RectClient.Left,this.RectClient.Top+2, this.RectClient.Right+this.VScrollbar.ButtonSize+2, bottom-2);
|
|
135754
|
+
}
|
|
135755
|
+
|
|
135557
135756
|
this.SizeChange=false;
|
|
135558
135757
|
}
|
|
135559
135758
|
|
|
@@ -135564,6 +135763,12 @@ function ChartSymbolList()
|
|
|
135564
135763
|
this.RectClient.Right=this.ChartBorder.GetRight();
|
|
135565
135764
|
this.RectClient.Top=this.ChartBorder.GetTop();
|
|
135566
135765
|
this.RectClient.Bottom=this.ChartBorder.GetBottom();
|
|
135766
|
+
|
|
135767
|
+
var bShowVScrollbar=this.IsShowVScrollbar();
|
|
135768
|
+
if (bShowVScrollbar && this.VScrollbar && this.VScrollbar.Enable)
|
|
135769
|
+
{
|
|
135770
|
+
this.RectClient.Right-=(this.VScrollbar.ButtonSize+2);
|
|
135771
|
+
}
|
|
135567
135772
|
}
|
|
135568
135773
|
|
|
135569
135774
|
this.GetPageSize=function(recalculate) //recalculate 是否重新计算
|
|
@@ -135597,6 +135802,8 @@ function ChartSymbolList()
|
|
|
135597
135802
|
|
|
135598
135803
|
this.CalculateSize=function() //计算大小
|
|
135599
135804
|
{
|
|
135805
|
+
if (this.VScrollbar && this.VScrollbar.Enable) this.VScrollbar.CalculateSize();
|
|
135806
|
+
|
|
135600
135807
|
this.UpdateCacheData();
|
|
135601
135808
|
|
|
135602
135809
|
var pixelRatio=GetDevicePixelRatio();
|
|
@@ -135791,6 +135998,7 @@ function ChartSymbolList()
|
|
|
135791
135998
|
else if (textAlign=='right')
|
|
135792
135999
|
{
|
|
135793
136000
|
x=left+width-2;
|
|
136001
|
+
if (left+width-2>this.RectClient.Right) x=this.RectClient.Right-2;
|
|
135794
136002
|
this.Canvas.textAlign="right";
|
|
135795
136003
|
}
|
|
135796
136004
|
else
|
|
@@ -135845,6 +136053,12 @@ function ChartSymbolList()
|
|
|
135845
136053
|
else
|
|
135846
136054
|
var uiElement={Left:null, Top:null};
|
|
135847
136055
|
|
|
136056
|
+
if (this.VScrollbar)
|
|
136057
|
+
{
|
|
136058
|
+
var item=this.VScrollbar.OnMouseDown(x,y,e);
|
|
136059
|
+
if (item) return { Type:5, VScrollbar:item }; //右侧滚动条
|
|
136060
|
+
}
|
|
136061
|
+
|
|
135848
136062
|
var row=this.PtInBody(x,y);
|
|
135849
136063
|
if (row)
|
|
135850
136064
|
{
|
|
@@ -136005,6 +136219,57 @@ function ChartSymbolList()
|
|
|
136005
136219
|
event.Callback(event,data,this);
|
|
136006
136220
|
}
|
|
136007
136221
|
}
|
|
136222
|
+
|
|
136223
|
+
this.GetYScrollRange=function()
|
|
136224
|
+
{
|
|
136225
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return 0;
|
|
136226
|
+
|
|
136227
|
+
var maxOffset=this.Data.Data.length-this.RowCount;
|
|
136228
|
+
|
|
136229
|
+
return maxOffset;
|
|
136230
|
+
}
|
|
136231
|
+
|
|
136232
|
+
//大于1屏数据 显示滚动条
|
|
136233
|
+
this.IsShowVScrollbar=function()
|
|
136234
|
+
{
|
|
136235
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return false;
|
|
136236
|
+
|
|
136237
|
+
return this.Data.Data.length>this.RowCount;
|
|
136238
|
+
}
|
|
136239
|
+
}
|
|
136240
|
+
|
|
136241
|
+
//纵向滚动条
|
|
136242
|
+
function ChartKeyboardVScrollbar()
|
|
136243
|
+
{
|
|
136244
|
+
this.newMethod=ChartVScrollbar; //派生
|
|
136245
|
+
this.newMethod();
|
|
136246
|
+
delete this.newMethod;
|
|
136247
|
+
|
|
136248
|
+
this.ClassName='ChartKeyboardVScrollbar';
|
|
136249
|
+
this.Enable=true;
|
|
136250
|
+
|
|
136251
|
+
this.ScrollBarHeight=g_JSChartResource.Keyboard.VScrollbar.ScrollBarHeight;
|
|
136252
|
+
this.ButtonColor=g_JSChartResource.Keyboard.VScrollbar.ButtonColor;
|
|
136253
|
+
this.BarColor=g_JSChartResource.Keyboard.VScrollbar.BarColor;
|
|
136254
|
+
this.BorderColor=g_JSChartResource.Keyboard.VScrollbar.BorderColor;
|
|
136255
|
+
this.BGColor=g_JSChartResource.Keyboard.VScrollbar.BGColor;
|
|
136256
|
+
this.Mergin={ Left:2, Right:2, Top:2, Bottom:2 };
|
|
136257
|
+
this.BarWithConfig={ Size:g_JSChartResource.Keyboard.VScrollbar.BarWidth.Size };
|
|
136258
|
+
|
|
136259
|
+
this.ReloadResource=function(resource)
|
|
136260
|
+
{
|
|
136261
|
+
this.ScrollBarHeight=g_JSChartResource.Keyboard.VScrollbar.ScrollBarHeight;
|
|
136262
|
+
this.ButtonColor=g_JSChartResource.Keyboard.VScrollbar.ButtonColor;
|
|
136263
|
+
this.BarColor=g_JSChartResource.Keyboard.VScrollbar.BarColor;
|
|
136264
|
+
this.BorderColor=g_JSChartResource.Keyboard.VScrollbar.BorderColor;
|
|
136265
|
+
this.BGColor=g_JSChartResource.Keyboard.VScrollbar.BGColor;
|
|
136266
|
+
this.BarWithConfig={ Size:g_JSChartResource.Keyboard.VScrollbar.BarWidth.Size };
|
|
136267
|
+
}
|
|
136268
|
+
|
|
136269
|
+
this.IsShowCallback=function()
|
|
136270
|
+
{
|
|
136271
|
+
return true;
|
|
136272
|
+
}
|
|
136008
136273
|
}
|
|
136009
136274
|
|
|
136010
136275
|
/*
|
|
@@ -137485,7 +137750,7 @@ function ScrollBarBGChart()
|
|
|
137485
137750
|
|
|
137486
137751
|
|
|
137487
137752
|
|
|
137488
|
-
var HQCHART_VERSION="1.1.
|
|
137753
|
+
var HQCHART_VERSION="1.1.13688";
|
|
137489
137754
|
|
|
137490
137755
|
function PrintHQChartVersion()
|
|
137491
137756
|
{
|