hqchart 1.1.13709 → 1.1.13717

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.
@@ -39895,6 +39895,303 @@ function ChartMACD()
39895
39895
  }
39896
39896
  }
39897
39897
 
39898
+ function ChartClipColorStick()
39899
+ {
39900
+ this.newMethod=IChartPainting; //派生
39901
+ this.newMethod();
39902
+ delete this.newMethod;
39903
+
39904
+ this.ClassName="ChartClipColorStick";
39905
+ this.UpColor=g_JSChartResource.UpBarColor;
39906
+ this.DownColor=g_JSChartResource.DownBarColor;
39907
+ this.LineWidth=1;
39908
+ //差值线
39909
+ this.DownDiffColor=g_JSChartResource.DownBarColor;
39910
+ this.UpDiffColor=g_JSChartResource.UpBarColor;
39911
+
39912
+ this.BaseLineColor; //基准线
39913
+
39914
+ this.BaseValue=0;
39915
+ this.Super_GetMaxMin=this.GetMaxMin; //父类的方法
39916
+
39917
+ this.SetOption=function(option)
39918
+ {
39919
+ if (!option) return;
39920
+
39921
+ if (option.UpColor) this.UpColor=option.UpColor;
39922
+ if (option.DownColor) this.DownColor=option.DownColor;
39923
+ if (option.DownDiffColor) this.DownDiffColor=option.DownDiffColor;
39924
+ if (option.UpDiffColor) this.UpDiffColor=option.UpDiffColor;
39925
+ if (option.BaseLineColor) this.BaseLineColor=option.BaseLineColor;
39926
+ if (IFrameSplitOperator.IsNumber(option.BaseValue)) this.BaseValue=option.BaseValue;
39927
+ }
39928
+
39929
+ this.Draw=function()
39930
+ {
39931
+ if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
39932
+ if (this.IsShowIndexTitleOnly()) return;
39933
+ if (this.IsHideScriptIndex()) return;
39934
+
39935
+ if (this.NotSupportMessage)
39936
+ {
39937
+ this.DrawNotSupportmessage();
39938
+ return;
39939
+ }
39940
+
39941
+ this.Canvas.save();
39942
+ var dataWidth=this.ChartFrame.DataWidth;
39943
+ var lineWidth=this.LineWidth*GetDevicePixelRatio();
39944
+ if (this.LineWidth==50) lineWidth=dataWidth;
39945
+ else if (lineWidth>dataWidth) lineWidth=dataWidth;
39946
+
39947
+ if (IFrameSplitOperator.IsNumber(this.BaseValue) && this.BaseValue!=0)
39948
+ {
39949
+ this.DrawBaseLine();
39950
+
39951
+ if (this.BaseValue>0) this.DrawBars(lineWidth, true);
39952
+ else this.DrawBars(lineWidth, false);
39953
+ }
39954
+ else
39955
+ {
39956
+ //上下分开画
39957
+ this.DrawBars(lineWidth, true);
39958
+ this.DrawBars(lineWidth, false);
39959
+ }
39960
+
39961
+
39962
+ this.Canvas.restore();
39963
+ }
39964
+
39965
+ this.DrawBars=function(lineWidth, bUpBar)
39966
+ {
39967
+ var isMinute=this.IsMinuteFrame();
39968
+ var dataWidth=this.ChartFrame.DataWidth;
39969
+ var distanceWidth=this.ChartFrame.DistanceWidth;
39970
+ var xPointCount=this.ChartFrame.XPointCount;
39971
+ var isHSCreen=this.ChartFrame.IsHScreen===true;
39972
+
39973
+ if (isHSCreen)
39974
+ {
39975
+ var border=this.ChartBorder.GetHScreenBorder();
39976
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
39977
+ var chartright=border.BottomEx;
39978
+ var lockRect=this.GetLockRect();
39979
+ if (lockRect) chartright=lockRect.Top;
39980
+ }
39981
+ else
39982
+ {
39983
+ var border=this.ChartBorder.GetBorder();
39984
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
39985
+
39986
+ var chartright=border.RightEx;
39987
+ var lockRect=this.GetLockRect();
39988
+ if (lockRect) chartright=lockRect.Left;
39989
+ }
39990
+
39991
+ var yBottom=this.ChartFrame.GetYFromData(this.BaseValue);
39992
+ var aryBar=[], aryDiffBar=[];
39993
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
39994
+ {
39995
+ var value=this.Data.Data[i];
39996
+ if (value==null) continue;
39997
+ if (bUpBar)
39998
+ {
39999
+ if (value<0) continue;
40000
+ }
40001
+ else
40002
+ {
40003
+ if (value>=0) continue;
40004
+ }
40005
+
40006
+ if (isMinute)
40007
+ {
40008
+ var x=this.ChartFrame.GetXFromIndex(j);
40009
+ }
40010
+ else
40011
+ {
40012
+ var left=xOffset;
40013
+ var right=xOffset+dataWidth;
40014
+ if (right>chartright) break;
40015
+ var x=left+(right-left)/2;
40016
+ }
40017
+
40018
+ if (x>chartright) break;
40019
+
40020
+ var bDiffBar=false;
40021
+ var diffValue=null;
40022
+ if (this.BaseValue>0)
40023
+ {
40024
+ if (value<this.BaseValue)
40025
+ {
40026
+ bDiffBar=true;
40027
+ diffValue=this.BaseValue-(this.BaseValue-value);
40028
+ }
40029
+ }
40030
+ else if (this.BaseValue<0)
40031
+ {
40032
+ if (value>this.BaseValue)
40033
+ {
40034
+ bDiffBar=true;
40035
+ diffValue=this.BaseValue+(value-this.BaseValue)
40036
+ }
40037
+ }
40038
+
40039
+ if (!bDiffBar)
40040
+ {
40041
+ var y=this.ChartFrame.GetYFromData(value);
40042
+ aryBar.push({X:x, Y:y});
40043
+ }
40044
+ else
40045
+ {
40046
+ var y=this.ChartFrame.GetYFromData(diffValue);
40047
+ aryDiffBar.push({X:x, Y:y});
40048
+ }
40049
+ }
40050
+
40051
+ this.Canvas.lineWidth=lineWidth;
40052
+ if (bUpBar) this.Canvas.strokeStyle=this.UpColor;
40053
+ else this.Canvas.strokeStyle=this.DownColor;
40054
+
40055
+ this.DrawStick(aryBar,lineWidth,yBottom);
40056
+
40057
+ if (this.BaseValue>0)
40058
+ {
40059
+ this.Canvas.strokeStyle=this.UpDiffColor;
40060
+ this.DrawStick(aryDiffBar,lineWidth,yBottom);
40061
+ }
40062
+ else if (this.BaseValue<0)
40063
+ {
40064
+ this.Canvas.strokeStyle=this.DownDiffColor;
40065
+ this.DrawStick(aryDiffBar,lineWidth,yBottom);
40066
+ }
40067
+
40068
+ }
40069
+
40070
+ this.DrawStick=function(aryData, lineWidth, yBottom)
40071
+ {
40072
+ if (!IFrameSplitOperator.IsNonEmptyArray(aryData)) return;
40073
+
40074
+ var isHSCreen=this.ChartFrame.IsHScreen===true;
40075
+ var drawCount=0;
40076
+ this.Canvas.beginPath();
40077
+ for(var i=0; i<aryData.length; ++i)
40078
+ {
40079
+ var item=aryData[i];
40080
+ var y=item.Y;
40081
+ var xFix=ToFixedPoint2(lineWidth, item.X); //毛边修正
40082
+
40083
+ if (isHSCreen)
40084
+ {
40085
+ this.Canvas.moveTo(yBottom,ToFixedPoint(x));
40086
+ this.Canvas.lineTo(y,ToFixedPoint(x));
40087
+ }
40088
+ else
40089
+ {
40090
+ this.Canvas.moveTo(xFix,yBottom);
40091
+ this.Canvas.lineTo(xFix,y);
40092
+ }
40093
+
40094
+ ++drawCount;
40095
+ }
40096
+
40097
+ if (drawCount>0) this.Canvas.stroke();
40098
+ }
40099
+
40100
+ this.DrawBaseLine=function()
40101
+ {
40102
+ if (!IFrameSplitOperator.IsNumber(this.BaseValue) || this.BaseValue==0) return;
40103
+ if (!this.BaseLineColor) return;
40104
+
40105
+ var isHSCreen=this.ChartFrame.IsHScreen===true;
40106
+ var border=this.ChartFrame.GetBorder();
40107
+ var y=this.ChartFrame.GetYFromData(this.BaseValue);
40108
+
40109
+ this.Canvas.strokeStyle=this.BaseLineColor;
40110
+ this.Canvas.lineWidth=1*GetDevicePixelRatio();
40111
+
40112
+ if (isHSCreen)
40113
+ {
40114
+
40115
+ }
40116
+ else
40117
+ {
40118
+ var yFix=ToFixedPoint(y);
40119
+ this.Canvas.beginPath();
40120
+ this.Canvas.moveTo(border.Left,yFix);
40121
+ this.Canvas.lineTo(border.Right,yFix);
40122
+ this.Canvas.stroke();
40123
+ }
40124
+ }
40125
+
40126
+ this.GetMaxMin=function()
40127
+ {
40128
+ if (!IFrameSplitOperator.IsNumber(this.BaseValue) || this.BaseValue==0)
40129
+ return this.Super_GetMaxMin();
40130
+
40131
+ var xPointCount=this.ChartFrame.XPointCount;
40132
+ var start=this.Data.DataOffset;
40133
+ if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
40134
+ {
40135
+ start=0;
40136
+ xPointCount=this.Data.Data.length;
40137
+ }
40138
+
40139
+ var range={ Min:null, Max:null }, maxDiffValue=null; //基准值的差值
40140
+ if(!this.Data || !this.Data.Data) return range;
40141
+
40142
+ if (this.BaseValue>0) range.Min=this.BaseValue;
40143
+ else range.Max=this.BaseValue;
40144
+
40145
+ for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
40146
+ {
40147
+ var value=this.Data.Data[i];
40148
+ if (value==null || isNaN(value)) continue;
40149
+
40150
+ if (this.BaseValue>0)
40151
+ {
40152
+ if (value<0) continue;
40153
+
40154
+ if (value<this.BaseValue)
40155
+ {
40156
+ var diffValue=this.BaseValue-value;
40157
+ if (maxDiffValue==null || maxDiffValue<diffValue) maxDiffValue=diffValue;
40158
+ continue;
40159
+ }
40160
+ }
40161
+ else
40162
+ {
40163
+ if (value>0) continue;
40164
+
40165
+ if (value>this.BaseValue)
40166
+ {
40167
+ var diffValue=value-this.BaseValue;
40168
+ if (maxDiffValue==null || maxDiffValue<diffValue) maxDiffValue=diffValue;
40169
+ continue;
40170
+ }
40171
+ }
40172
+
40173
+ if (range.Max==null) range.Max=value;
40174
+ if (range.Min==null) range.Min=value;
40175
+
40176
+ if (range.Max<value) range.Max=value;
40177
+ if (range.Min>value) range.Min=value;
40178
+ }
40179
+
40180
+ if (this.BaseValue>0)
40181
+ {
40182
+ if (IFrameSplitOperator.IsNumber(maxDiffValue) && IFrameSplitOperator.IsNumber(range.Min))
40183
+ range.Min-=maxDiffValue;
40184
+ }
40185
+ else
40186
+ {
40187
+ if (IFrameSplitOperator.IsNumber(maxDiffValue) && IFrameSplitOperator.IsNumber(range.Max))
40188
+ range.Max+=maxDiffValue;
40189
+ }
40190
+
40191
+ return range;
40192
+ }
40193
+ }
40194
+
39898
40195
  //柱子
39899
40196
  function ChartBar()
39900
40197
  {
@@ -118024,6 +118321,8 @@ var SCRIPT_CHART_NAME=
118024
118321
  OVERLAY_BARS:"OVERLAY_BARS", //叠加柱子图
118025
118322
  KLINE_TABLE:"KLINE_TABLE",
118026
118323
  SCATTER_PLOT:"SCATTER_PLOT", //散点图
118324
+
118325
+ CLIP_COLOR_STICK:"CLIP_COLOR_STICK", //上下柱子 裁剪
118027
118326
  }
118028
118327
 
118029
118328
 
@@ -119782,6 +120081,33 @@ function ScriptIndex(name,script,args,option)
119782
120081
  hqChart.ChartPaint.push(chart);
119783
120082
  }
119784
120083
 
120084
+ this.CreateClipColorStick=function(hqChart,windowIndex,varItem,id)
120085
+ {
120086
+ var chart=new ChartClipColorStick();
120087
+ chart.Canvas=hqChart.Canvas;
120088
+ chart.Name=varItem.Name;
120089
+ chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;
120090
+ chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;
120091
+ chart.HQChart=hqChart;
120092
+ chart.Identify=this.Guid;
120093
+
120094
+ chart.Data.Data=varItem.Draw.DrawData;
120095
+ if (varItem.Option && chart.SetOption) chart.SetOption(varItem.Option);
120096
+ hqChart.ChartPaint.push(chart);
120097
+
120098
+ var titleIndex=windowIndex+1;
120099
+ if (varItem.IsShowTitle===false)
120100
+ {
120101
+
120102
+ }
120103
+ else
120104
+ {
120105
+ var clrTitle=this.GetDefaultColor(id);
120106
+ if (varItem.Option && varItem.Option.TitleColor) clrTitle=this.GetColor(varItem.Option.TitleColor);
120107
+ hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,clrTitle);
120108
+ }
120109
+ }
120110
+
119785
120111
  this.CreateColorKLine=function(hqChart,windowIndex,varItem,i)
119786
120112
  {
119787
120113
  let chart=new ChartColorKline();
@@ -120099,6 +120425,9 @@ function ScriptIndex(name,script,args,option)
120099
120425
  case SCRIPT_CHART_NAME.SCATTER_PLOT:
120100
120426
  this.CreateScatterPlot(hqChart,windowIndex,item,i);
120101
120427
  break;
120428
+ case SCRIPT_CHART_NAME.CLIP_COLOR_STICK:
120429
+ this.CreateClipColorStick(hqChart,windowIndex,item,i);
120430
+ break;
120102
120431
  default:
120103
120432
  {
120104
120433
  var find=g_ScriptIndexChartFactory.Get(item.Draw.DrawType); //外部挂接
@@ -122534,6 +122863,20 @@ function APIScriptIndex(name,script,args,option, isOverlay)
122534
122863
 
122535
122864
  result.push(outVarItem);
122536
122865
  }
122866
+ else if (draw.DrawType==SCRIPT_CHART_NAME.CLIP_COLOR_STICK)
122867
+ {
122868
+ drawItem.Name=draw.Name;
122869
+ drawItem.Type=draw.Type;
122870
+ drawItem.DrawType=draw.DrawType;
122871
+ drawItem.DrawData=this.FittingArray(draw.Data,date,time,hqChart);
122872
+
122873
+ outVarItem.Draw=drawItem;
122874
+ if (draw.LineWidth) outVarItem.LineWidth=draw.LineWidth;
122875
+ if (draw.UpColor) outVarItem.UpColor=draw.UpColor;
122876
+ if (draw.DownColor) outVarItem.DownColor=draw.DownColor;
122877
+
122878
+ result.push(outVarItem);
122879
+ }
122537
122880
  else
122538
122881
  {
122539
122882
  var find=g_ScriptIndexChartFactory.Get(draw.DrawType); //外部挂接
@@ -122799,6 +123142,17 @@ function APIScriptIndex(name,script,args,option, isOverlay)
122799
123142
 
122800
123143
  result.push(outVarItem);
122801
123144
  }
123145
+ else if (draw.DrawType==SCRIPT_CHART_NAME.CLIP_COLOR_STICK)
123146
+ {
123147
+ drawItem.Name=draw.Name;
123148
+ drawItem.Type=draw.Type;
123149
+ drawItem.DrawType=draw.DrawType;
123150
+ drawItem.DrawData=this.FittingMinuteArray(draw.Data,date,time,hqChart);
123151
+
123152
+ outVarItem.Draw=drawItem;
123153
+ if (draw.Option) outVarItem.Option=draw.Option;
123154
+ result.push(outVarItem);
123155
+ }
122802
123156
  else if (draw.DrawType=='MULTI_LINE')
122803
123157
  {
122804
123158
  drawItem.Text=draw.Text;
@@ -134783,7 +135137,8 @@ function JSKeyboardChartContainer(uielement)
134783
135137
  this.NetworkFilter; //数据回调接口
134784
135138
  this.Data={ XOffset:0, YOffset:0, Data:[] }; //股票列表
134785
135139
  this.MapSymbol=new Map();
134786
- this.SourceData={ Data:[] } //码表数据 Data:[ { Symbol:, Spell, Name:, Color:}]
135140
+ this.SourceData={ Data:[] } //码表数据 Data:[ { Symbol:, Spell, Name:, Color: TypeName:, TypeID } ]
135141
+ this.FunctionKeyData=[]; //功能键 { Priority:, Data:[ { Symbol:, Spell, Name:, Color:, TypeName:, TypeID } ]
134787
135142
 
134788
135143
  //事件回调
134789
135144
  this.mapEvent=new Map(); //通知外部调用 key:JSCHART_EVENT_ID value:{Callback:回调,}
@@ -134810,10 +135165,44 @@ function JSKeyboardChartContainer(uielement)
134810
135165
  if (option && option.Redraw==true) this.Draw();
134811
135166
  }
134812
135167
 
135168
+ this.SearchFunctionKeyData=function(strSearch)
135169
+ {
135170
+ if (strSearch.length<=0) return null;
135171
+ if (!IFrameSplitOperator.IsNonEmptyArray(this.FunctionKeyData)) return null;
135172
+
135173
+ var aryData=[];
135174
+ for(var i=0; i<this.FunctionKeyData.length; ++i)
135175
+ {
135176
+ var groupData=this.FunctionKeyData[i];
135177
+ if (!groupData) continue;
135178
+ if (!IFrameSplitOperator.IsNonEmptyArray(groupData.Data)) continue;
135179
+
135180
+ var aryExactQuery=[]; //精确查询
135181
+ var aryFuzzyQuery=[]; //模糊查询
135182
+ var aryEqualQuery=[]; //相等
135183
+
135184
+ for(var j=0;j<groupData.Data.length;++j)
135185
+ {
135186
+ var item=groupData.Data[j];
135187
+ if (this.SearchSymbol(item, strSearch, aryExactQuery, aryFuzzyQuery,aryEqualQuery)) continue;
135188
+ }
135189
+
135190
+ if (IFrameSplitOperator.IsNonEmptyArray(aryEqualQuery)) aryData.push(...aryEqualQuery);
135191
+ if (IFrameSplitOperator.IsNonEmptyArray(aryExactQuery)) aryData.push(...aryExactQuery);
135192
+ if (IFrameSplitOperator.IsNonEmptyArray(aryFuzzyQuery)) aryData.push(...aryFuzzyQuery);
135193
+ }
135194
+
135195
+ if (aryData.length>0) return aryData;
135196
+
135197
+ return null;
135198
+ }
135199
+
134813
135200
  this.Search=function(strText)
134814
135201
  {
134815
135202
  var aryExactQuery=[]; //精确查询
134816
135203
  var aryFuzzyQuery=[]; //模糊查询
135204
+ var aryEqualQuery=[]; //相等
135205
+ var aryFuncKeyQuery=null;
134817
135206
  this.MapSymbol.clear();
134818
135207
  this.Data.Data=[];
134819
135208
  this.Data.XOffset=0;
@@ -134822,17 +135211,21 @@ function JSKeyboardChartContainer(uielement)
134822
135211
  var strSearch=strText.trim();
134823
135212
  if (strSearch.length>0)
134824
135213
  {
135214
+ aryFuncKeyQuery=this.SearchFunctionKeyData(strSearch);
135215
+
134825
135216
  for(var i=0;i<this.SourceData.Data.length;++i)
134826
135217
  {
134827
135218
  var item=this.SourceData.Data[i];
134828
- if (this.SearchSymbol(item, strSearch, aryExactQuery, aryFuzzyQuery)) continue;
135219
+ if (this.SearchSymbol(item, strSearch, aryExactQuery, aryFuzzyQuery, aryEqualQuery)) continue;
134829
135220
  else if (this.SearchSpell(item, strSearch, aryExactQuery, aryFuzzyQuery)) continue;
134830
135221
  }
134831
135222
  }
134832
-
134833
- if (IFrameSplitOperator.IsNonEmptyArray(aryExactQuery) || IFrameSplitOperator.IsNonEmptyArray(aryFuzzyQuery))
134834
- this.Data.Data=aryExactQuery.concat(aryFuzzyQuery);
134835
135223
 
135224
+ if (IFrameSplitOperator.IsNonEmptyArray(aryFuncKeyQuery)) this.Data.Data.push(...aryFuncKeyQuery);
135225
+ if (IFrameSplitOperator.IsNonEmptyArray(aryEqualQuery)) this.Data.Data.push(...aryEqualQuery);
135226
+ if (IFrameSplitOperator.IsNonEmptyArray(aryExactQuery)) this.Data.Data.push(...aryExactQuery);
135227
+ if (IFrameSplitOperator.IsNonEmptyArray(aryFuzzyQuery)) this.Data.Data.push(...aryFuzzyQuery);
135228
+
134836
135229
  this.ChartPaint[0].SelectedRow=0;
134837
135230
  this.ChartPaint[0].SizeChange=true;
134838
135231
 
@@ -134841,12 +135234,13 @@ function JSKeyboardChartContainer(uielement)
134841
135234
  this.Draw();
134842
135235
  }
134843
135236
 
134844
- this.SearchSymbol=function(item, strText, aryExactQuery, aryFuzzyQuery)
135237
+ this.SearchSymbol=function(item, strText, aryExactQuery, aryFuzzyQuery, aryEqualQuery)
134845
135238
  {
134846
135239
  var find=item.Symbol.indexOf(strText);
134847
135240
  if (find<0) return false;
134848
135241
 
134849
- if (find==0) aryExactQuery.push(item.Symbol);
135242
+ if (item.Symbol==strText) aryEqualQuery.push(item.Symbol);
135243
+ else if (find==0) aryExactQuery.push(item.Symbol);
134850
135244
  else aryFuzzyQuery.push(item.Symbol);
134851
135245
 
134852
135246
  this.MapSymbol.set(item.Symbol, item);
@@ -134871,8 +135265,21 @@ function JSKeyboardChartContainer(uielement)
134871
135265
 
134872
135266
  this.SetSymbolData=function(arySymbol)
134873
135267
  {
134874
- this.SourceData.Data=arySymbol;
134875
-
135268
+ this.SourceData.Data=[];
135269
+ for(var i=0;i<arySymbol.length;++i)
135270
+ {
135271
+ var item=arySymbol[i];
135272
+ if (IFrameSplitOperator.IsNumber(item.Priority))
135273
+ {
135274
+ if (!this.FunctionKeyData[item.Priority]) this.FunctionKeyData[item.Priority]={ Priority:item.Priority, Data:[] };
135275
+ this.FunctionKeyData[item.Priority].Data.push(item);
135276
+ }
135277
+ else
135278
+ {
135279
+ this.SourceData.Data.push(item);
135280
+ }
135281
+ }
135282
+
134876
135283
  /*
134877
135284
  //测试
134878
135285
  this.MapSymbol.clear();
@@ -135145,11 +135552,13 @@ function JSKeyboardChartContainer(uielement)
135145
135552
  if (!chart) return false;
135146
135553
 
135147
135554
  var data=chart.GetSelectedSymbol();
135555
+ var selItem=this.MapSymbol.get(data.Symbol);
135556
+ if (!selItem) return false;
135148
135557
 
135149
135558
  var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYBOARD_SELECTED)
135150
135559
  if (event && event.Callback)
135151
135560
  {
135152
- event.Callback(event, { Data:data }, this);
135561
+ event.Callback(event, { Data:data, RowData:selItem }, this);
135153
135562
  }
135154
135563
  }
135155
135564
 
@@ -135759,6 +136168,38 @@ function ChartSymbolList()
135759
136168
  this.SetColumn=function(aryColumn)
135760
136169
  {
135761
136170
  if (!IFrameSplitOperator.IsNonEmptyArray(aryColumn)) return;
136171
+
136172
+ this.Column=[];
136173
+ for(var i=0;i<aryColumn.length;++i)
136174
+ {
136175
+ var item=aryColumn[i];
136176
+ var colItem=this.GetDefaultColunm(item.Type);
136177
+ if (!colItem) continue;
136178
+
136179
+ if (item.Title) colItem.Title=item.Title;
136180
+ if (item.TextAlign) colItem.TextAlign=item.TextAlign;
136181
+ if (item.MaxText) colItem.MaxText=item.MaxText;
136182
+
136183
+ this.Column.push(colItem);
136184
+ }
136185
+ }
136186
+
136187
+ this.GetDefaultColunm=function(id)
136188
+ {
136189
+ var DEFAULT_COLUMN=
136190
+ [
136191
+ { Type:KEYBOARD_COLUMN_ID.SHORT_SYMBOL_ID, Title:"代码", TextAlign:"left", Width:null, MaxText:"888888" },
136192
+ { Type:KEYBOARD_COLUMN_ID.NAME_ID, Title:"名称", TextAlign:"left", Width:null, MaxText:"擎擎擎擎擎擎" },
136193
+ { Type:KEYBOARD_COLUMN_ID.TYPE_NAME_ID, Title:"类型", TextAlign:"right", Width:null, MaxText:"擎擎擎擎" },
136194
+ ];
136195
+
136196
+ for(var i=0;i<DEFAULT_COLUMN.length;++i)
136197
+ {
136198
+ var item=DEFAULT_COLUMN[i];
136199
+ if (item.Type==id) return item;
136200
+ }
136201
+
136202
+ return null;
135762
136203
  }
135763
136204
 
135764
136205
  this.Draw=function()
@@ -137784,7 +138225,7 @@ function ScrollBarBGChart()
137784
138225
 
137785
138226
 
137786
138227
 
137787
- var HQCHART_VERSION="1.1.13708";
138228
+ var HQCHART_VERSION="1.1.13716";
137788
138229
 
137789
138230
  function PrintHQChartVersion()
137790
138231
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.13708";
8
+ var HQCHART_VERSION="1.1.13716";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -49702,7 +49702,7 @@ HQData.Keyboard_RequestSymbolList=function(data, callback)
49702
49702
  var shortSymbol=item[0];
49703
49703
  shortSymbol=shortSymbol.replace(".sh", "");
49704
49704
  shortSymbol=shortSymbol.replace(".sz", "");
49705
- var symbolItem={ Symbol:item[0], Name:item[1], ShortSymbol:shortSymbol, Spell:item[3], Type:item[2] };
49705
+ var symbolItem={ Symbol:item[0], Name:item[1], ShortSymbol:shortSymbol, Spell:item[3], Type:item[2], Data:{ Symbol:item[0], Type:0 } };
49706
49706
  if (symbolItem.Type=="EQA")
49707
49707
  {
49708
49708
  symbolItem.TypeName="股票";
@@ -49716,6 +49716,15 @@ HQData.Keyboard_RequestSymbolList=function(data, callback)
49716
49716
  arySymbol.push(symbolItem);
49717
49717
  }
49718
49718
 
49719
+ arySymbol.push( { Symbol:"01", Name:"分时成交明细", TypeName:"功能键", Priority:1, Color:"rgb(220,20,60)" , Data:{ PageName:"分时成交明细", Type:2 }} );
49720
+ arySymbol.push( { Symbol:"02", Name:"分价表", TypeName:"功能键", Priority:1, Color:"rgb(220,20,60)" ,Data:{ PageName:"分价表", Type:2 }} );
49721
+ arySymbol.push( { Symbol:"06", Name:"自选股", TypeName:"功能键", Priority:1 , Color:"rgb(220,20,60)", Data:{ PageName:"自选股", Type:2 }} );
49722
+
49723
+ arySymbol.push( { Symbol:"MACD", Name:"平滑异同平均线", TypeName:"指标", Priority:2 , Color:"rgb(0,0,255)", Data:{ Index:"MACD", Type:1 }} );
49724
+ arySymbol.push( { Symbol:"RSI", Name:"相对强弱指标", TypeName:"指标", Priority:2, Color:"rgb(0,0,255)",Data:{ Index:"RSI", Type:1 }} );
49725
+ arySymbol.push( { Symbol:"MA", Name:"均线", TypeName:"指标", Priority:2, Color:"rgb(0,0,255)" ,Data:{ Index:"MA", Type:1 } } );
49726
+ arySymbol.push( { Symbol:"BOLL", Name:"布林线", TypeName:"指标", Priority:2, Color:"rgb(0,0,255)" ,Data:{ Index:"BOLL", Type:1 } } );
49727
+
49719
49728
  callback(arySymbol);
49720
49729
  }
49721
49730