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.
- package/lib/umychart.NetworkFilterTest.vue.js +1 -1
- package/lib/umychart.vue.js +29 -15
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +10 -1
- package/src/jscommon/umychart.PopKeyboard.js +9 -1
- package/src/jscommon/umychart.complier.js +57 -0
- package/src/jscommon/umychart.js +297 -0
- package/src/jscommon/umychart.keyboard.js +97 -10
- package/src/jscommon/umychart.resource/css/tools.css +2 -2
- package/src/jscommon/umychart.testdata.js +10 -1
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +452 -11
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +10 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +461 -12
|
@@ -113,4 +113,4 @@ extendData[0]="行业X";//地区
|
|
|
113
113
|
extendData[1]="地区X";//PE|PB
|
|
114
114
|
extendData[2]=Math.round(Math.random()*60)/100;extendData[3]=Math.round(Math.random()*60)/100;extendData[4]=Math.round(Math.random()*60)/100;extendData[5]=Math.round(Math.random()*60)/100;//周涨幅
|
|
115
115
|
extendData[6]=Math.round(Math.random()*60)/100;extendData[7]=Math.round(Math.random()*60)/100;extendData[8]=Math.round(Math.random()*60)/100;item.Data=newItem;}}var hqchartData={data:[],index:[],filedindex:column.index,sort:sortType,symbol:blockID};var _iteratorNormalCompletion2=true;var _didIteratorError2=false;var _iteratorError2=undefined;try{for(var _iterator2=(0,_getIterator3.default)(mapStock),_step2;!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=true){var mapItem=_step2.value;var item=mapItem[1];if(!item.Data)continue;hqchartData.data.push(item.Data);hqchartData.index.push(item.Index);}}catch(err){_didIteratorError2=true;_iteratorError2=err;}finally{try{if(!_iteratorNormalCompletion2&&_iterator2.return){_iterator2.return();}}finally{if(_didIteratorError2){throw _iteratorError2;}}}callback(hqchartData);};HQData.Keyboard_RequestSymbolList=function(data,callback){//加载数据
|
|
116
|
-
var recv={symbollist:SYMBOL_LIST};var arySymbol=[];for(var i=0;i<recv.symbollist.length;++i){var item=recv.symbollist[i];var shortSymbol=item[0];shortSymbol=shortSymbol.replace(".sh","");shortSymbol=shortSymbol.replace(".sz","");var symbolItem={Symbol:item[0],Name:item[1],ShortSymbol:shortSymbol,Spell:item[3],Type:item[2]};if(symbolItem.Type=="EQA"){symbolItem.TypeName="股票";}else if(symbolItem.Type=="IDX"){symbolItem.TypeName="指数";symbolItem.Color="rgb(30,144,255)";}arySymbol.push(symbolItem);}callback(arySymbol);};/*暴露外部用的方法*/exports.default={HQData:HQData};
|
|
116
|
+
var recv={symbollist:SYMBOL_LIST};var arySymbol=[];for(var i=0;i<recv.symbollist.length;++i){var item=recv.symbollist[i];var shortSymbol=item[0];shortSymbol=shortSymbol.replace(".sh","");shortSymbol=shortSymbol.replace(".sz","");var symbolItem={Symbol:item[0],Name:item[1],ShortSymbol:shortSymbol,Spell:item[3],Type:item[2],Data:{Symbol:item[0],Type:0}};if(symbolItem.Type=="EQA"){symbolItem.TypeName="股票";}else if(symbolItem.Type=="IDX"){symbolItem.TypeName="指数";symbolItem.Color="rgb(30,144,255)";}arySymbol.push(symbolItem);}arySymbol.push({Symbol:"01",Name:"分时成交明细",TypeName:"功能键",Priority:1,Color:"rgb(220,20,60)",Data:{PageName:"分时成交明细",Type:2}});arySymbol.push({Symbol:"02",Name:"分价表",TypeName:"功能键",Priority:1,Color:"rgb(220,20,60)",Data:{PageName:"分价表",Type:2}});arySymbol.push({Symbol:"06",Name:"自选股",TypeName:"功能键",Priority:1,Color:"rgb(220,20,60)",Data:{PageName:"自选股",Type:2}});arySymbol.push({Symbol:"MACD",Name:"平滑异同平均线",TypeName:"指标",Priority:2,Color:"rgb(0,0,255)",Data:{Index:"MACD",Type:1}});arySymbol.push({Symbol:"RSI",Name:"相对强弱指标",TypeName:"指标",Priority:2,Color:"rgb(0,0,255)",Data:{Index:"RSI",Type:1}});arySymbol.push({Symbol:"MA",Name:"均线",TypeName:"指标",Priority:2,Color:"rgb(0,0,255)",Data:{Index:"MA",Type:1}});arySymbol.push({Symbol:"BOLL",Name:"布林线",TypeName:"指标",Priority:2,Color:"rgb(0,0,255)",Data:{Index:"BOLL",Type:1}});callback(arySymbol);};/*暴露外部用的方法*/exports.default={HQData:HQData};
|
package/lib/umychart.vue.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
'use strict';Object.defineProperty(exports,"__esModule",{value:true});var _promise=require('babel-runtime/core-js/promise');var _promise2=_interopRequireDefault(_promise);var _log=require('babel-runtime/core-js/math/log10');var _log2=_interopRequireDefault(_log);var _defineProperties=require('babel-runtime/core-js/object/define-properties');var _defineProperties2=_interopRequireDefault(_defineProperties);var _create=require('babel-runtime/core-js/object/create');var _create2=_interopRequireDefault(_create);var _from=require('babel-runtime/core-js/array/from');var _from2=_interopRequireDefault(_from);var _typeof2=require('babel-runtime/helpers/typeof');var _typeof3=_interopRequireDefault(_typeof2);var _set=require('babel-runtime/core-js/set');var _set2=_interopRequireDefault(_set);var _defineProperty2=require('babel-runtime/helpers/defineProperty');var _defineProperty3=_interopRequireDefault(_defineProperty2);var _stringify=require('babel-runtime/core-js/json/stringify');var _stringify2=_interopRequireDefault(_stringify);var _getIterator2=require('babel-runtime/core-js/get-iterator');var _getIterator3=_interopRequireDefault(_getIterator2);var _map=require('babel-runtime/core-js/map');var _map2=_interopRequireDefault(_map);var _jsChartInit$jsChartS;var _jquery=require('jquery');var _jquery2=_interopRequireDefault(_jquery);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}//日志输出类
|
|
1
|
+
'use strict';Object.defineProperty(exports,"__esModule",{value:true});var _toConsumableArray2=require('babel-runtime/helpers/toConsumableArray');var _toConsumableArray3=_interopRequireDefault(_toConsumableArray2);var _promise=require('babel-runtime/core-js/promise');var _promise2=_interopRequireDefault(_promise);var _log=require('babel-runtime/core-js/math/log10');var _log2=_interopRequireDefault(_log);var _defineProperties=require('babel-runtime/core-js/object/define-properties');var _defineProperties2=_interopRequireDefault(_defineProperties);var _create=require('babel-runtime/core-js/object/create');var _create2=_interopRequireDefault(_create);var _from=require('babel-runtime/core-js/array/from');var _from2=_interopRequireDefault(_from);var _typeof2=require('babel-runtime/helpers/typeof');var _typeof3=_interopRequireDefault(_typeof2);var _set=require('babel-runtime/core-js/set');var _set2=_interopRequireDefault(_set);var _defineProperty2=require('babel-runtime/helpers/defineProperty');var _defineProperty3=_interopRequireDefault(_defineProperty2);var _stringify=require('babel-runtime/core-js/json/stringify');var _stringify2=_interopRequireDefault(_stringify);var _getIterator2=require('babel-runtime/core-js/get-iterator');var _getIterator3=_interopRequireDefault(_getIterator2);var _map=require('babel-runtime/core-js/map');var _map2=_interopRequireDefault(_map);var _jsChartInit$jsChartS;var _jquery=require('jquery');var _jquery2=_interopRequireDefault(_jquery);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}//日志输出类
|
|
2
2
|
var JSConsole={Chart:{Log:console.log,Warn:console.warn},//图形日志
|
|
3
3
|
Complier:{Log:console.log,Warn:console.warn},//编译器日志
|
|
4
4
|
JSTable:{Log:console.log,Warn:console.warn//表格日志
|
|
@@ -4075,7 +4075,14 @@ function ChartMACD(){this.newMethod=IChartPainting;//派生
|
|
|
4075
4075
|
this.newMethod();delete this.newMethod;this.ClassName="ChartMACD";this.UpColor=g_JSChartResource.UpBarColor;this.DownColor=g_JSChartResource.DownBarColor;this.LineWidth=1;this.DrawSelectedStatus=this.DrawLinePoint;this.ExportData=this.ExportArrayData;this.PtInChart=function(x,y){var dataWidth=this.ChartFrame.DataWidth;var barWidth=this.LineWidth*GetDevicePixelRatio();if(this.barWidth==50)barWidth=null;else if(barWidth>dataWidth)barWidth=dataWidth;if(barWidth<4)barWidth=4;//宽度太小了点不到
|
|
4076
4076
|
return this.PtInBar(x,y,{BarWidth:barWidth});};this.DrawBars=function(lineWidth,bUpBar){var isMinute=this.IsMinuteFrame();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var isHSCreen=this.ChartFrame.IsHScreen===true;if(isHSCreen){var border=this.ChartBorder.GetHScreenBorder();var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.BottomEx;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Top;}else{var border=this.ChartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Left;}if(bUpBar)this.Canvas.strokeStyle=this.UpColor;else this.Canvas.strokeStyle=this.DownColor;var yBottom=this.ChartFrame.GetYFromData(0);this.Canvas.beginPath();var drawCount=0;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var value=this.Data.Data[i];if(value==null)continue;if(bUpBar){if(value<0)continue;}else{if(value>=0)continue;}if(isMinute){var x=this.ChartFrame.GetXFromIndex(j);}else{var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=left+(right-left)/2;}if(x>chartright)break;var y=this.ChartFrame.GetYFromData(value);var xFix=ToFixedPoint2(lineWidth,x);//毛边修正
|
|
4077
4077
|
if(isHSCreen){this.Canvas.moveTo(yBottom,ToFixedPoint(x));this.Canvas.lineTo(y,ToFixedPoint(x));}else{this.Canvas.moveTo(xFix,yBottom);this.Canvas.lineTo(xFix,y);}++drawCount;}if(drawCount>0)this.Canvas.stroke();};this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}var dataWidth=this.ChartFrame.DataWidth;var lineWidth=this.LineWidth*GetDevicePixelRatio();if(this.LineWidth==50)lineWidth=dataWidth;else if(lineWidth>dataWidth)lineWidth=dataWidth;var backupLineWidth=this.Canvas.lineWidth;this.Canvas.lineWidth=lineWidth;//上下分开画
|
|
4078
|
-
this.DrawBars(lineWidth,true);this.DrawBars(lineWidth,false);this.Canvas.lineWidth=backupLineWidth;};this.GetItemData=function(indexData){if(!indexData)return null;if(!IFrameSplitOperator.IsNumber(indexData.Index))return null;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return null;var index=indexData.Index;if(index<0||index>=this.Data.Data.length)return null;var item=this.Data.Data[index];return[{Value:item,Color:item>0?this.UpColor:this.DownColor,Name:this.Name}];};}
|
|
4078
|
+
this.DrawBars(lineWidth,true);this.DrawBars(lineWidth,false);this.Canvas.lineWidth=backupLineWidth;};this.GetItemData=function(indexData){if(!indexData)return null;if(!IFrameSplitOperator.IsNumber(indexData.Index))return null;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return null;var index=indexData.Index;if(index<0||index>=this.Data.Data.length)return null;var item=this.Data.Data[index];return[{Value:item,Color:item>0?this.UpColor:this.DownColor,Name:this.Name}];};}function ChartClipColorStick(){this.newMethod=IChartPainting;//派生
|
|
4079
|
+
this.newMethod();delete this.newMethod;this.ClassName="ChartClipColorStick";this.UpColor=g_JSChartResource.UpBarColor;this.DownColor=g_JSChartResource.DownBarColor;this.LineWidth=1;//差值线
|
|
4080
|
+
this.DownDiffColor=g_JSChartResource.DownBarColor;this.UpDiffColor=g_JSChartResource.UpBarColor;this.BaseLineColor;//基准线
|
|
4081
|
+
this.BaseValue=0;this.Super_GetMaxMin=this.GetMaxMin;//父类的方法
|
|
4082
|
+
this.SetOption=function(option){if(!option)return;if(option.UpColor)this.UpColor=option.UpColor;if(option.DownColor)this.DownColor=option.DownColor;if(option.DownDiffColor)this.DownDiffColor=option.DownDiffColor;if(option.UpDiffColor)this.UpDiffColor=option.UpDiffColor;if(option.BaseLineColor)this.BaseLineColor=option.BaseLineColor;if(IFrameSplitOperator.IsNumber(option.BaseValue))this.BaseValue=option.BaseValue;};this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}this.Canvas.save();var dataWidth=this.ChartFrame.DataWidth;var lineWidth=this.LineWidth*GetDevicePixelRatio();if(this.LineWidth==50)lineWidth=dataWidth;else if(lineWidth>dataWidth)lineWidth=dataWidth;if(IFrameSplitOperator.IsNumber(this.BaseValue)&&this.BaseValue!=0){this.DrawBaseLine();if(this.BaseValue>0)this.DrawBars(lineWidth,true);else this.DrawBars(lineWidth,false);}else{//上下分开画
|
|
4083
|
+
this.DrawBars(lineWidth,true);this.DrawBars(lineWidth,false);}this.Canvas.restore();};this.DrawBars=function(lineWidth,bUpBar){var isMinute=this.IsMinuteFrame();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var isHSCreen=this.ChartFrame.IsHScreen===true;if(isHSCreen){var border=this.ChartBorder.GetHScreenBorder();var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.BottomEx;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Top;}else{var border=this.ChartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Left;}var yBottom=this.ChartFrame.GetYFromData(this.BaseValue);var aryBar=[],aryDiffBar=[];for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var value=this.Data.Data[i];if(value==null)continue;if(bUpBar){if(value<0)continue;}else{if(value>=0)continue;}if(isMinute){var x=this.ChartFrame.GetXFromIndex(j);}else{var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=left+(right-left)/2;}if(x>chartright)break;var bDiffBar=false;var diffValue=null;if(this.BaseValue>0){if(value<this.BaseValue){bDiffBar=true;diffValue=this.BaseValue-(this.BaseValue-value);}}else if(this.BaseValue<0){if(value>this.BaseValue){bDiffBar=true;diffValue=this.BaseValue+(value-this.BaseValue);}}if(!bDiffBar){var y=this.ChartFrame.GetYFromData(value);aryBar.push({X:x,Y:y});}else{var y=this.ChartFrame.GetYFromData(diffValue);aryDiffBar.push({X:x,Y:y});}}this.Canvas.lineWidth=lineWidth;if(bUpBar)this.Canvas.strokeStyle=this.UpColor;else this.Canvas.strokeStyle=this.DownColor;this.DrawStick(aryBar,lineWidth,yBottom);if(this.BaseValue>0){this.Canvas.strokeStyle=this.UpDiffColor;this.DrawStick(aryDiffBar,lineWidth,yBottom);}else if(this.BaseValue<0){this.Canvas.strokeStyle=this.DownDiffColor;this.DrawStick(aryDiffBar,lineWidth,yBottom);}};this.DrawStick=function(aryData,lineWidth,yBottom){if(!IFrameSplitOperator.IsNonEmptyArray(aryData))return;var isHSCreen=this.ChartFrame.IsHScreen===true;var drawCount=0;this.Canvas.beginPath();for(var i=0;i<aryData.length;++i){var item=aryData[i];var y=item.Y;var xFix=ToFixedPoint2(lineWidth,item.X);//毛边修正
|
|
4084
|
+
if(isHSCreen){this.Canvas.moveTo(yBottom,ToFixedPoint(x));this.Canvas.lineTo(y,ToFixedPoint(x));}else{this.Canvas.moveTo(xFix,yBottom);this.Canvas.lineTo(xFix,y);}++drawCount;}if(drawCount>0)this.Canvas.stroke();};this.DrawBaseLine=function(){if(!IFrameSplitOperator.IsNumber(this.BaseValue)||this.BaseValue==0)return;if(!this.BaseLineColor)return;var isHSCreen=this.ChartFrame.IsHScreen===true;var border=this.ChartFrame.GetBorder();var y=this.ChartFrame.GetYFromData(this.BaseValue);this.Canvas.strokeStyle=this.BaseLineColor;this.Canvas.lineWidth=1*GetDevicePixelRatio();if(isHSCreen){}else{var yFix=ToFixedPoint(y);this.Canvas.beginPath();this.Canvas.moveTo(border.Left,yFix);this.Canvas.lineTo(border.Right,yFix);this.Canvas.stroke();}};this.GetMaxMin=function(){if(!IFrameSplitOperator.IsNumber(this.BaseValue)||this.BaseValue==0)return this.Super_GetMaxMin();var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange){start=0;xPointCount=this.Data.Data.length;}var range={Min:null,Max:null},maxDiffValue=null;//基准值的差值
|
|
4085
|
+
if(!this.Data||!this.Data.Data)return range;if(this.BaseValue>0)range.Min=this.BaseValue;else range.Max=this.BaseValue;for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var value=this.Data.Data[i];if(value==null||isNaN(value))continue;if(this.BaseValue>0){if(value<0)continue;if(value<this.BaseValue){var diffValue=this.BaseValue-value;if(maxDiffValue==null||maxDiffValue<diffValue)maxDiffValue=diffValue;continue;}}else{if(value>0)continue;if(value>this.BaseValue){var diffValue=value-this.BaseValue;if(maxDiffValue==null||maxDiffValue<diffValue)maxDiffValue=diffValue;continue;}}if(range.Max==null)range.Max=value;if(range.Min==null)range.Min=value;if(range.Max<value)range.Max=value;if(range.Min>value)range.Min=value;}if(this.BaseValue>0){if(IFrameSplitOperator.IsNumber(maxDiffValue)&&IFrameSplitOperator.IsNumber(range.Min))range.Min-=maxDiffValue;}else{if(IFrameSplitOperator.IsNumber(maxDiffValue)&&IFrameSplitOperator.IsNumber(range.Max))range.Max+=maxDiffValue;}return range;};}//柱子
|
|
4079
4086
|
function ChartBar(){this.newMethod=IChartPainting;//派生
|
|
4080
4087
|
this.newMethod();delete this.newMethod;this.ClassName="ChartBar";this.UpBarColor=g_JSChartResource.UpBarColor;this.DownBarColor=g_JSChartResource.DownBarColor;this.Draw=function(){if(this.ChartFrame.IsMinSize)return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var chartright=this.ChartBorder.GetRight();var xPointCount=this.ChartFrame.XPointCount;var xOffset=this.ChartBorder.GetLeft()+distanceWidth/2.0+2.0;var bFirstPoint=true;var drawCount=0;var yBottom=this.ChartFrame.GetYFromData(0);if(dataWidth>=4){yBottom=ToFixedRect(yBottom);//调整为整数
|
|
4081
4088
|
for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var value=this.Data.Data[i];if(value==null||value==0)continue;var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=this.ChartFrame.GetXFromIndex(j);var y=this.ChartFrame.GetYFromData(value);if(value>0)this.Canvas.fillStyle=this.UpBarColor;else this.Canvas.fillStyle=this.DownBarColor;//高度调整为整数
|
|
@@ -11689,7 +11696,8 @@ HISTORY_MINUTE_ID:3,//历史分钟走势图
|
|
|
11689
11696
|
MULTIDAY_MINUTE_ID:4//多日走势图
|
|
11690
11697
|
};// 图形指标名字
|
|
11691
11698
|
var SCRIPT_CHART_NAME={OVERLAY_BARS:"OVERLAY_BARS",//叠加柱子图
|
|
11692
|
-
KLINE_TABLE:"KLINE_TABLE",SCATTER_PLOT:"SCATTER_PLOT"
|
|
11699
|
+
KLINE_TABLE:"KLINE_TABLE",SCATTER_PLOT:"SCATTER_PLOT",//散点图
|
|
11700
|
+
CLIP_COLOR_STICK:"CLIP_COLOR_STICK"//上下柱子 裁剪
|
|
11693
11701
|
// 外部对接API指标数据及图形
|
|
11694
11702
|
};function ScriptIndexChartFactory(){this.DataMap=new _map2.default();//["图形名字", {} ]
|
|
11695
11703
|
this.Add=function(name,option){this.DataMap.set(name,{MinuteFittingCallback:option.MinuteFittingCallback,KLineFittingCallback:option.KLineFittingCallback,CreateChartCallback:option.CreateChartCallback,FormatTitleCallback:option.FormatTitleCallback});};this.Get=function(name){if(!this.DataMap.has(name))return null;return this.DataMap.get(name);};this.Has=function(name){return this.DataMap.has(name);};}var g_ScriptIndexChartFactory=new ScriptIndexChartFactory();//脚本指标
|
|
@@ -11807,7 +11815,7 @@ chart.Bars=varItem.Draw.DrawData;var titleIndex=windowIndex+1;var titleData=new
|
|
|
11807
11815
|
chart.Texts=varItem.Draw.DrawData;this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateMultiSVGIcon=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiSVGIconV2();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
11808
11816
|
chart.Family=varItem.Draw.DrawData.Family;chart.AryIcon=varItem.Draw.DrawData.Icon;chart.BuildCacheData();this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateChartDrawSVG=function(hqChart,windowIndex,varItem,i){var chart=new ChartDrawSVG();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(hqChart.ChartPaint[0].IsMinuteFrame())chart.Data=hqChart.SourceData;else chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
11809
11817
|
if(IFrameSplitOperator.IsBool(varItem.Draw.DrawData.EnableTooltip))chart.EnableTooltip=varItem.Draw.DrawData.EnableTooltip;if(IFrameSplitOperator.IsBool(varItem.Draw.DrawData.IsDrawFirst))chart.IsDrawFirst=varItem.Draw.DrawData.IsDrawFirst;chart.Family=varItem.Draw.DrawData.Family;chart.TextFont=varItem.Draw.DrawData.TextFont;chart.Texts=varItem.Draw.DrawData.Data;hqChart.ChartPaint.push(chart);};this.CreateMulitHtmlDom=function(hqChart,windowIndex,varItem,i){var chart=new ChartMultiHtmlDom();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
11810
|
-
chart.Texts=varItem.Draw.DrawData;chart.DrawCallback=varItem.Draw.Callback;hqChart.ChartPaint.push(chart);};this.CreateStackedBar=function(hqChart,windowIndex,varItem,i){var chart=new ChartStackedBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarColor))chart.BarColor=varItem.Draw.BarColor;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarName))chart.BarName=varItem.Draw.BarName;if(IFrameSplitOperator.IsNumber(varItem.Draw.LineWidth))chart.LineWidth=varItem.Draw.LineWidth;if(IFrameSplitOperator.IsNumber(varItem.Draw.BarType))chart.BarType=varItem.Draw.BarType;hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartStackedBar";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateKLineTable=function(hqChart,windowIndex,varItem,i){var chart=new ChartKLineTable();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsBool(varItem.Draw.IsShowRowName))chart.IsShowRowName=varItem.Draw.IsShowRowName;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;if(varItem.Draw.BGColor)chart.BGColor=varItem.Draw.BGColor;hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateScatterPlot=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlot();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;chart.Color=varItem.Draw.Color;chart.Radius=varItem.Draw.Radius;hqChart.ChartPaint.push(chart);};this.CreateColorKLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartColorKline();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
11818
|
+
chart.Texts=varItem.Draw.DrawData;chart.DrawCallback=varItem.Draw.Callback;hqChart.ChartPaint.push(chart);};this.CreateStackedBar=function(hqChart,windowIndex,varItem,i){var chart=new ChartStackedBar();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarColor))chart.BarColor=varItem.Draw.BarColor;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.BarName))chart.BarName=varItem.Draw.BarName;if(IFrameSplitOperator.IsNumber(varItem.Draw.LineWidth))chart.LineWidth=varItem.Draw.LineWidth;if(IFrameSplitOperator.IsNumber(varItem.Draw.BarType))chart.BarType=varItem.Draw.BarType;hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartStackedBar";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateKLineTable=function(hqChart,windowIndex,varItem,i){var chart=new ChartKLineTable();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsBool(varItem.Draw.IsShowRowName))chart.IsShowRowName=varItem.Draw.IsShowRowName;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;if(varItem.Draw.BGColor)chart.BGColor=varItem.Draw.BGColor;hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);titleData.DataType="ChartKLineTable";hqChart.TitlePaint[titleIndex].Data[i]=titleData;};this.CreateScatterPlot=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlot();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;chart.Color=varItem.Draw.Color;chart.Radius=varItem.Draw.Radius;hqChart.ChartPaint.push(chart);};this.CreateClipColorStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartClipColorStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.HQChart=hqChart;chart.Identify=this.Guid;chart.Data.Data=varItem.Draw.DrawData;if(varItem.Option&&chart.SetOption)chart.SetOption(varItem.Option);hqChart.ChartPaint.push(chart);var titleIndex=windowIndex+1;if(varItem.IsShowTitle===false){}else{var clrTitle=this.GetDefaultColor(id);if(varItem.Option&&varItem.Option.TitleColor)clrTitle=this.GetColor(varItem.Option.TitleColor);hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,clrTitle);}};this.CreateColorKLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartColorKline();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hqChart.ChartPaint[0].Data;//绑定K线
|
|
11811
11819
|
chart.KLineColor=varItem.Draw.DrawData.KLine;if(varItem.Color)chart.Color=varItem.Color;hqChart.ChartPaint.push(chart);};this.CreateRectangle=function(hqChart,windowIndex,varItem,i){var chart=new ChartRectangle();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Color=[varItem.Draw.DrawData.Color];chart.Rect=varItem.Draw.DrawData.Rect;if(varItem.Color)chart.BorderColor=this.GetColor(varItem.Color);hqChart.ChartPaint.push(chart);};this.CreateScriptOverlayLine=function(hqChart,windowIndex,varItem,i){var chart=new ChartOverlayLine();chart.Canvas=hqChart.Canvas;chart.DrawType=1;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(i);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}if(varItem.IsDotLine)chart.IsDotLine=true;//虚线
|
|
11812
11820
|
if(varItem.IsShow==false)chart.IsShow=false;var titleIndex=windowIndex+1;chart.Data.Data=varItem.Draw.DrawData.Data;chart.MainData.Data=varItem.Draw.DrawData.MainData;if(varItem.Draw.DrawData.Title)hqChart.TitlePaint[titleIndex].Data[i]=new DynamicTitleData(chart.Data,varItem.Draw.DrawData.Title,chart.Color);hqChart.ChartPaint.push(chart);};//创建K线
|
|
11813
11821
|
this.CreateSelfKLine=function(hqChart,windowIndex,hisData){var chart=new ChartKLine();chart.Canvas=hqChart.Canvas;chart.Name="Self Kline";chart.Identify=this.Guid;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data=hisData;chart.IsShowMaxMinPrice=false;chart.IsShowKTooltip=false;chart.DrawType=this.KLineType;hqChart.ChartPaint.push(chart);};this.BindInstructionData=function(hqChart,windowIndex,hisData)//绑定指示指标
|
|
@@ -11832,7 +11840,7 @@ if(this.YSplitScale)hqChart.Frame.SubFrame[windowIndex].Frame.YSplitScale=this.Y
|
|
|
11832
11840
|
}
|
|
11833
11841
|
*/for(var _i135=0;_i135<this.OutVar.length;++_i135){var _item24=this.OutVar[_i135];if(_item24.IsExData===true)continue;//扩展数据不显示图形
|
|
11834
11842
|
if(_item24.Type==1000||_item24.Type==1001)continue;//数据集合, 字符串
|
|
11835
|
-
if(_item24.Type==0){if(_item24.IsOverlayLine)this.CreateOverlayLine(hqChart,windowIndex,_item24,_i135,_item24.Type);else if(_item24.IsSingleLine)this.CreateSingleLine(hqChart,windowIndex,_item24,_i135,_item24.Type);else this.CreateLine(hqChart,windowIndex,_item24,_i135,_item24.Type);}else if(_item24.Type==1){switch(_item24.Draw.DrawType){case'STICKLINE':this.CreateBar(hqChart,windowIndex,_item24,_i135);break;case'DRAWTEXT':this.CreateDrawTextV2(hqChart,windowIndex,_item24,_i135);break;case'SUPERDRAWTEXT':this.CreateText(hqChart,windowIndex,_item24,_i135);break;case'DRAWLINE':this.CreateStraightLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWBAND':this.CreateBand(hqChart,windowIndex,_item24,_i135);break;case"FILLRGN":this.CreateFillRGN(hqChart,windowIndex,_item24,_i135);break;case"FILLRGN2":this.CreateFillRGN2(hqChart,windowIndex,_item24,_i135);break;case"FILLTOPRGN":case"FILLBOTTOMRGN":case"FILLVERTICALRGN":this.CreateFillBGRGN(hqChart,windowIndex,_item24,_i135);break;case"FLOATRGN":this.CreateFLOATRGN(hqChart,windowIndex,_item24,_i135);break;case'DRAWKLINE':case"DRAWKLINE1":this.CreateKLine(hqChart,windowIndex,_item24,_i135);break;case"DRAWOVERLAYKLINE":this.CreateOverlayKLine(hqChart,windowIndex,_item24,_i135);break;case"DRAWCOLORKLINE":this.CreateDrawColorKLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWKLINE_IF':this.CreateKLine(hqChart,windowIndex,_item24,_i135);break;case'POLYLINE':this.CreatePolyLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWGBK':case"DRAWGBK2":this.CreateBackgroud(hqChart,windowIndex,_item24,_i135);break;case"DRAWGBK_DIV":this.CreateBackgroundDiv(hqChart,windowIndex,_item24,_i135);break;case'DRAWTEXT_LINE':this.CreateTextLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWNUMBER':this.CreateDrawNumber(hqChart,windowIndex,_item24,_i135);break;case"DRAWNUMBER_FIX":case'DRAWTEXT_FIX':this.CreateNumberText(hqChart,windowIndex,_item24,_i135);break;case'DRAWICON':this.CreateIcon(hqChart,windowIndex,_item24,_i135);break;case"ICON":this.CreateIcon(hqChart,windowIndex,_item24,_i135);break;case"TIPICON":this.CreateTipIcon(hqChart,windowIndex,_item24,_i135);break;case'DRAWCHANNEL':this.CreateChannel(hqChart,windowIndex,_item24,_i135);break;case'PARTLINE':this.CreatePartLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWRECTREL':this.CreateRectangle(hqChart,windowIndex,_item24,_i135);break;case"DRAWTEXTABS":case"DRAWTEXTREL":this.CreateDrawText(hqChart,windowIndex,_item24,_i135);break;case"DRAWOVERLAYLINE":this.CreateScriptOverlayLine(hqChart,windowIndex,_item24,_i135);break;case"DRAWSL":this.CreateChartSlopeLine(hqChart,windowIndex,_item24,_i135);break;case"VERTLINE":this.CreateChartVericaltLine(hqChart,windowIndex,_item24,_i135);break;case"HORLINE":this.CreateChartHorizontalLine(hqChart,windowIndex,_item24,_i135);break;case'MULTI_LINE':this.CreateMultiLine(hqChart,windowIndex,_item24,_i135);break;case"MULTI_POINT":this.CreateMultiPoint(hqChart,windowIndex,_item24,_i135);break;case'MULTI_BAR':this.CreateMultiBar(hqChart,windowIndex,_item24,_i135);break;case'MULTI_TEXT':this.CreateMultiText(hqChart,windowIndex,_item24,_i135);break;case'MULTI_SVGICON':this.CreateMultiSVGIcon(hqChart,windowIndex,_item24,_i135);break;case"DRAWSVG":this.CreateChartDrawSVG(hqChart,windowIndex,_item24,_i135);break;case"MULTI_HTMLDOM":this.CreateMulitHtmlDom(hqChart,windowIndex,_item24,_i135);break;case"COLOR_KLINE":this.CreateColorKLine(hqChart,windowIndex,_item24,_i135);break;case"KLINE_BG":this.CreateBackgroud(hqChart,windowIndex,_item24,_i135);break;case"MULTI_POINT_LINE":this.CreateLineMultiData(hqChart,windowIndex,_item24,_i135);break;case"BUY":case"SELL":case"SELLSHORT":case"BUYSHORT":this.CreateTradeIcon(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.OVERLAY_BARS:this.CreateStackedBar(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.KLINE_TABLE:this.CreateKLineTable(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.SCATTER_PLOT:this.CreateScatterPlot(hqChart,windowIndex,_item24,_i135);break;default:{var find=g_ScriptIndexChartFactory.Get(_item24.Draw.DrawType);//外部挂接
|
|
11843
|
+
if(_item24.Type==0){if(_item24.IsOverlayLine)this.CreateOverlayLine(hqChart,windowIndex,_item24,_i135,_item24.Type);else if(_item24.IsSingleLine)this.CreateSingleLine(hqChart,windowIndex,_item24,_i135,_item24.Type);else this.CreateLine(hqChart,windowIndex,_item24,_i135,_item24.Type);}else if(_item24.Type==1){switch(_item24.Draw.DrawType){case'STICKLINE':this.CreateBar(hqChart,windowIndex,_item24,_i135);break;case'DRAWTEXT':this.CreateDrawTextV2(hqChart,windowIndex,_item24,_i135);break;case'SUPERDRAWTEXT':this.CreateText(hqChart,windowIndex,_item24,_i135);break;case'DRAWLINE':this.CreateStraightLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWBAND':this.CreateBand(hqChart,windowIndex,_item24,_i135);break;case"FILLRGN":this.CreateFillRGN(hqChart,windowIndex,_item24,_i135);break;case"FILLRGN2":this.CreateFillRGN2(hqChart,windowIndex,_item24,_i135);break;case"FILLTOPRGN":case"FILLBOTTOMRGN":case"FILLVERTICALRGN":this.CreateFillBGRGN(hqChart,windowIndex,_item24,_i135);break;case"FLOATRGN":this.CreateFLOATRGN(hqChart,windowIndex,_item24,_i135);break;case'DRAWKLINE':case"DRAWKLINE1":this.CreateKLine(hqChart,windowIndex,_item24,_i135);break;case"DRAWOVERLAYKLINE":this.CreateOverlayKLine(hqChart,windowIndex,_item24,_i135);break;case"DRAWCOLORKLINE":this.CreateDrawColorKLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWKLINE_IF':this.CreateKLine(hqChart,windowIndex,_item24,_i135);break;case'POLYLINE':this.CreatePolyLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWGBK':case"DRAWGBK2":this.CreateBackgroud(hqChart,windowIndex,_item24,_i135);break;case"DRAWGBK_DIV":this.CreateBackgroundDiv(hqChart,windowIndex,_item24,_i135);break;case'DRAWTEXT_LINE':this.CreateTextLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWNUMBER':this.CreateDrawNumber(hqChart,windowIndex,_item24,_i135);break;case"DRAWNUMBER_FIX":case'DRAWTEXT_FIX':this.CreateNumberText(hqChart,windowIndex,_item24,_i135);break;case'DRAWICON':this.CreateIcon(hqChart,windowIndex,_item24,_i135);break;case"ICON":this.CreateIcon(hqChart,windowIndex,_item24,_i135);break;case"TIPICON":this.CreateTipIcon(hqChart,windowIndex,_item24,_i135);break;case'DRAWCHANNEL':this.CreateChannel(hqChart,windowIndex,_item24,_i135);break;case'PARTLINE':this.CreatePartLine(hqChart,windowIndex,_item24,_i135);break;case'DRAWRECTREL':this.CreateRectangle(hqChart,windowIndex,_item24,_i135);break;case"DRAWTEXTABS":case"DRAWTEXTREL":this.CreateDrawText(hqChart,windowIndex,_item24,_i135);break;case"DRAWOVERLAYLINE":this.CreateScriptOverlayLine(hqChart,windowIndex,_item24,_i135);break;case"DRAWSL":this.CreateChartSlopeLine(hqChart,windowIndex,_item24,_i135);break;case"VERTLINE":this.CreateChartVericaltLine(hqChart,windowIndex,_item24,_i135);break;case"HORLINE":this.CreateChartHorizontalLine(hqChart,windowIndex,_item24,_i135);break;case'MULTI_LINE':this.CreateMultiLine(hqChart,windowIndex,_item24,_i135);break;case"MULTI_POINT":this.CreateMultiPoint(hqChart,windowIndex,_item24,_i135);break;case'MULTI_BAR':this.CreateMultiBar(hqChart,windowIndex,_item24,_i135);break;case'MULTI_TEXT':this.CreateMultiText(hqChart,windowIndex,_item24,_i135);break;case'MULTI_SVGICON':this.CreateMultiSVGIcon(hqChart,windowIndex,_item24,_i135);break;case"DRAWSVG":this.CreateChartDrawSVG(hqChart,windowIndex,_item24,_i135);break;case"MULTI_HTMLDOM":this.CreateMulitHtmlDom(hqChart,windowIndex,_item24,_i135);break;case"COLOR_KLINE":this.CreateColorKLine(hqChart,windowIndex,_item24,_i135);break;case"KLINE_BG":this.CreateBackgroud(hqChart,windowIndex,_item24,_i135);break;case"MULTI_POINT_LINE":this.CreateLineMultiData(hqChart,windowIndex,_item24,_i135);break;case"BUY":case"SELL":case"SELLSHORT":case"BUYSHORT":this.CreateTradeIcon(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.OVERLAY_BARS:this.CreateStackedBar(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.KLINE_TABLE:this.CreateKLineTable(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.SCATTER_PLOT:this.CreateScatterPlot(hqChart,windowIndex,_item24,_i135);break;case SCRIPT_CHART_NAME.CLIP_COLOR_STICK:this.CreateClipColorStick(hqChart,windowIndex,_item24,_i135);break;default:{var find=g_ScriptIndexChartFactory.Get(_item24.Draw.DrawType);//外部挂接
|
|
11836
11844
|
if(find&&find.CreateChartCallback)find.CreateChartCallback(hqChart,windowIndex,_item24,_i135,this);}break;}}else if(_item24.Type==2){this.CreateMACD(hqChart,windowIndex,_item24,_i135);}else if(_item24.Type==3){this.CreatePointDot(hqChart,windowIndex,_item24,_i135,hisData);}else if(_item24.Type==4){this.CreateLineStick(hqChart,windowIndex,_item24,_i135);}else if(_item24.Type==5){this.CreateStick(hqChart,windowIndex,_item24,_i135);}else if(_item24.Type==6){this.CreateVolStick(hqChart,windowIndex,_item24,_i135,hisData);}else if(_item24.Type==7){this.CreateLine(hqChart,windowIndex,_item24,_i135,_item24.Type);}else if(_item24.Type==8){this.CreateLine(hqChart,windowIndex,_item24,_i135,_item24.Type);}else if(_item24.Type==9){this.CreateArea(hqChart,windowIndex,_item24,_i135);}var titlePaint=hqChart.TitlePaint[windowIndex+1];if(titlePaint&&titlePaint.Data&&_i135<titlePaint.Data.length)//设置标题数值 小数位数和格式
|
|
11837
11845
|
{if(this.StringFormat>0)titlePaint.Data[_i135].StringFormat=this.StringFormat;if(this.FloatPrecision>=0)titlePaint.Data[_i135].FloatPrecision=this.FloatPrecision;if(this.OutName&&this.OutName.length>0&&this.Arguments&&this.Arguments.length>0){titlePaint.SetDynamicTitle(this.OutName,this.Arguments);}}}var titleIndex=windowIndex+1;var titlePaint=hqChart.TitlePaint[titleIndex];titlePaint.Title=this.Name;titlePaint.Identify=this.Guid;//指标ID
|
|
11838
11846
|
titlePaint.ArgumentsText=null;titlePaint.Script=this;titlePaint.IsShowMainIndexTitle=this.IsShowIndexTitle;if(!this.IsShortTitle){var indexParam='';for(var _i136=0;_i136<this.Arguments.length;++_i136){var _item25=this.Arguments[_i136];if(indexParam.length>0)indexParam+=',';indexParam+=_item25.Value.toString();}if(indexParam.length>0)titlePaint.ArgumentsText='('+indexParam+')';}if(this.TitleFont)titlePaint.Font=this.TitleFont;return true;};//给一个默认的颜色
|
|
@@ -11993,7 +12001,7 @@ if(item.isexdata==true)outVarItem.IsExData=true;if(item.BreakPoint)outVarItem.Br
|
|
|
11993
12001
|
{drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.Width=draw.Width;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="DRAWBAND"){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);drawItem.Color=draw.Color;outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_LINE'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);if(IFrameSplitOperator.IsNonEmptyArray(drawItem.DrawData)){for(var k=0;k<drawItem.DrawData.length;++k){this.GetKLineData(drawItem.DrawData[k].Point,hqChart);}}outVarItem.Draw=drawItem;if(draw.LineDash)drawItem.LineDash=draw.LineDash;if(IFrameSplitOperator.IsBool(draw.IsFullRangeMaxMin))drawItem.IsFullRangeMaxMin=draw.IsFullRangeMaxMin;if(draw.Arrow)drawItem.Arrow=draw.Arrow;if(IFrameSplitOperator.IsNumber(draw.LineWidth))drawItem.LineWidth=draw.LineWidth;result.push(outVarItem);}else if(draw.DrawType=='MULTI_POINT'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);if(IFrameSplitOperator.IsNonEmptyArray(drawItem.DrawData)){for(var k=0;k<drawItem.DrawData.length;++k){this.GetKLineData(drawItem.DrawData[k].Point,hqChart);}}outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_BAR'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.OVERLAY_BARS){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.BarName=draw.BarName;drawItem.BarColor=draw.BarColor;drawItem.LineWidth=draw.LineWidth;drawItem.BarType=draw.BarType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.SCATTER_PLOT){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);//默认的值
|
|
11994
12002
|
drawItem.Color=draw.Color;drawItem.Radius=draw.Radius;outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.KLINE_TABLE){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);drawItem.RowCount=draw.RowCount;drawItem.RowName=draw.RowName;drawItem.IsShowRowName=draw.IsShowRowName;drawItem.BGColor=draw.BGColor;outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_TEXT'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiText(draw.DrawData,date,time,hqChart);this.GetKLineData(drawItem.DrawData,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_SVGICON'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData={Icon:draw.DrawData.Icon,Family:draw.DrawData.Family};outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='DRAWSVG'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;if(draw.AutoPosition)drawItem.AutoPosition=draw.AutoPosition;drawItem.DrawData={Data:this.FittingMultiText(draw.Data,date,time,hqChart),Family:draw.Family,TextFont:draw.TextFont,EnableTooltip:draw.EnableTooltip,IsDrawFirst:draw.IsDrawFirst};this.GetKLineData(drawItem.DrawData.Data,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="MULTI_HTMLDOM")//外部自己创建dom
|
|
11995
12003
|
{drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.Callback=draw.Callback;drawItem.DrawData=this.FittingMultiText(draw.DrawData,date,time,hqChart);this.GetKLineData(drawItem.DrawData,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="COLOR_KLINE"){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;var klineOption=this.FittingMultiText(draw.DrawData.KLine,date,time,hqChart);var mapKLineOption=new _map2.default();for(var i in klineOption){var item=klineOption[i];mapKLineOption.set(item.Index,item);}drawItem.DrawData={KLine:mapKLineOption};if(draw.Color)outVarItem.Color=draw.Color;outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="KLINE_BG"){drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData={};drawItem.DrawData.Color=draw.Color;drawItem.DrawData.Angle=draw.Angle;if(draw.Ver==2.0)drawItem.DrawData.Data=this.FittingKLineBG_V2(draw.DrawData,hqChart);else drawItem.DrawData.Data=this.FittingKLineBG(draw.DrawData,hqChart);outVarItem.Draw=drawItem;outVarItem.Name=draw.DrawType;result.push(outVarItem);}else if(draw.DrawType=='MULTI_POINT_LINE'){drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData={};drawItem.DrawData.Color=draw.Color;drawItem.DrawData.PointRadius=draw.PointRadius;drawItem.DrawData.PointColor=draw.PointColor;drawItem.DrawData.LineWidth=draw.LineWidth;drawItem.DrawData.Data=this.FittingMultiPointLine(draw.DrawData,hqChart);outVarItem.Draw=drawItem;//outVarItem.Name=draw.DrawType;
|
|
11996
|
-
result.push(outVarItem);}else if(draw.DrawType=="PARTLINE"){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;if(draw.LineWidth)outVarItem.LineWidth=draw.LineWidth;result.push(outVarItem);}else{var find=g_ScriptIndexChartFactory.Get(draw.DrawType);//外部挂接
|
|
12004
|
+
result.push(outVarItem);}else if(draw.DrawType=="PARTLINE"){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;if(draw.LineWidth)outVarItem.LineWidth=draw.LineWidth;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.CLIP_COLOR_STICK){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingArray(draw.Data,date,time,hqChart);outVarItem.Draw=drawItem;if(draw.LineWidth)outVarItem.LineWidth=draw.LineWidth;if(draw.UpColor)outVarItem.UpColor=draw.UpColor;if(draw.DownColor)outVarItem.DownColor=draw.DownColor;result.push(outVarItem);}else{var find=g_ScriptIndexChartFactory.Get(draw.DrawType);//外部挂接
|
|
11997
12005
|
if(find&&find.KLineFittingCallback){if(find.KLineFittingCallback(item,outVarItem,{Date:date,Time:time,HQChart:hqChart},this))result.push(outVarItem);}}}}return result;};// h, high, low l. c, close
|
|
11998
12006
|
this.GetKLineData=function(data,hqChart){if(!data)return;if(!Array.isArray(data))return;if(this.HQDataType==HQ_DATA_TYPE.MINUTE_ID||this.HQDataType==HQ_DATA_TYPE.MULTIDAY_MINUTE_ID)var kData=hqChart.SourceData;//走势图分钟数据
|
|
11999
12007
|
else var kData=hqChart.ChartPaint[0].Data;//K线
|
|
@@ -12008,7 +12016,7 @@ var result=[];if(ChartData.IsDayPeriod(hqChart.Period,true))//日线
|
|
|
12008
12016
|
if(item.data){outVarItem.Data=this.FittingMinuteArray(item.data,date,time,hqChart);if(item.color)outVarItem.Color=item.color;if(item.linewidth>=1)outVarItem.LineWidth=item.linewidth;if(item.isshow==false)outVarItem.IsShow=false;if(item.isexdata==true)outVarItem.IsExData=true;if(item.BreakPoint)outVarItem.BreakPoint=item.BreakPoint;if(item.UpColor)outVarItem.UpColor=item.UpColor;if(item.DownColor)outVarItem.DownColor=item.DownColor;result.push(outVarItem);}else if(item.Draw){var draw=item.Draw;var drawItem={};if(draw.DrawType=='DRAWICON')//图标
|
|
12009
12017
|
{drawItem.Icon=draw.Icon;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMinuteArray(draw.DrawData,date,time,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='DRAWTEXT')//文本
|
|
12010
12018
|
{drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMinuteArray(draw.DrawData,date,time,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='STICKLINE')//柱子
|
|
12011
|
-
{drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.Width=draw.Width;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMinuteArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.OVERLAY_BARS){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.BarName=draw.BarName;drawItem.BarColor=draw.BarColor;drawItem.LineWidth=draw.LineWidth;drawItem.DrawData=this.FittingMinuteArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_LINE'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);for(var k in drawItem.DrawData){this.GetKLineData(drawItem.DrawData[k].Point,hqChart);}outVarItem.Draw=drawItem;if(draw.LineDash)drawItem.LineDash=draw.LineDash;if(draw.Arrow)drawItem.Arrow=draw.Arrow;result.push(outVarItem);}else if(draw.DrawType=='MULTI_POINT'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);if(IFrameSplitOperator.IsNonEmptyArray(drawItem.DrawData)){for(var k=0;k<drawItem.DrawData.length;++k){this.GetKLineData(drawItem.DrawData[k].Point,hqChart);}}outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_TEXT'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiText(draw.DrawData,date,time,hqChart);this.GetKLineData(drawItem.DrawData,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_SVGICON'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData={Icon:draw.DrawData.Icon,Family:draw.DrawData.Family};outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='DRAWSVG'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;if(draw.AutoPosition)drawItem.AutoPosition=draw.AutoPosition;drawItem.DrawData={Data:this.FittingMultiText(draw.Data,date,time,hqChart),Family:draw.Family,TextFont:draw.TextFont,EnableTooltip:draw.EnableTooltip,IsDrawFirst:draw.IsDrawFirst};this.GetKLineData(drawItem.DrawData.Data,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="MULTI_HTMLDOM")//外部自己创建dom
|
|
12019
|
+
{drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.Width=draw.Width;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMinuteArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.OVERLAY_BARS){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.BarName=draw.BarName;drawItem.BarColor=draw.BarColor;drawItem.LineWidth=draw.LineWidth;drawItem.DrawData=this.FittingMinuteArray(draw.DrawData,date,time,hqChart,1);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType==SCRIPT_CHART_NAME.CLIP_COLOR_STICK){drawItem.Name=draw.Name;drawItem.Type=draw.Type;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMinuteArray(draw.Data,date,time,hqChart);outVarItem.Draw=drawItem;if(draw.Option)outVarItem.Option=draw.Option;result.push(outVarItem);}else if(draw.DrawType=='MULTI_LINE'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);for(var k in drawItem.DrawData){this.GetKLineData(drawItem.DrawData[k].Point,hqChart);}outVarItem.Draw=drawItem;if(draw.LineDash)drawItem.LineDash=draw.LineDash;if(draw.Arrow)drawItem.Arrow=draw.Arrow;result.push(outVarItem);}else if(draw.DrawType=='MULTI_POINT'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiLine(draw.DrawData,date,time,hqChart);if(IFrameSplitOperator.IsNonEmptyArray(drawItem.DrawData)){for(var k=0;k<drawItem.DrawData.length;++k){this.GetKLineData(drawItem.DrawData[k].Point,hqChart);}}outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_TEXT'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData=this.FittingMultiText(draw.DrawData,date,time,hqChart);this.GetKLineData(drawItem.DrawData,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='MULTI_SVGICON'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.DrawData={Icon:draw.DrawData.Icon,Family:draw.DrawData.Family};outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=='DRAWSVG'){drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;if(draw.AutoPosition)drawItem.AutoPosition=draw.AutoPosition;drawItem.DrawData={Data:this.FittingMultiText(draw.Data,date,time,hqChart),Family:draw.Family,TextFont:draw.TextFont,EnableTooltip:draw.EnableTooltip,IsDrawFirst:draw.IsDrawFirst};this.GetKLineData(drawItem.DrawData.Data,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else if(draw.DrawType=="MULTI_HTMLDOM")//外部自己创建dom
|
|
12012
12020
|
{drawItem.Text=draw.Text;drawItem.Name=draw.Name;drawItem.DrawType=draw.DrawType;drawItem.Callback=draw.Callback;drawItem.DrawData=this.FittingMultiText(draw.DrawData,date,time,hqChart);this.GetKLineData(drawItem.DrawData,hqChart);outVarItem.Draw=drawItem;result.push(outVarItem);}else{var find=g_ScriptIndexChartFactory.Get(draw.DrawType);//外部挂接
|
|
12013
12021
|
if(find&&find.MinuteFittingCallback){if(find.MinuteFittingCallback(item,outVarItem,{Date:date,Time:time,HQChart:hqChart},this))result.push(outVarItem);}}}}return result;};//matchType 0=精确匹配(默认) 5=模糊匹配
|
|
12014
12022
|
this.FittingMinuteArray=function(sourceData,date,time,hqChart,matchType){var minutedata=hqChart.SourceData;;//分钟线
|
|
@@ -13343,17 +13351,22 @@ this.ChartPaint=[];//图形画法
|
|
|
13343
13351
|
this.Canvas=uielement.getContext("2d");//画布
|
|
13344
13352
|
this.ShowCanvas=null;this.NetworkFilter;//数据回调接口
|
|
13345
13353
|
this.Data={XOffset:0,YOffset:0,Data:[]};//股票列表
|
|
13346
|
-
this.MapSymbol=new _map2.default();this.SourceData={Data:[]//码表数据 Data:[ { Symbol:, Spell, Name:, Color:}]
|
|
13354
|
+
this.MapSymbol=new _map2.default();this.SourceData={Data:[]//码表数据 Data:[ { Symbol:, Spell, Name:, Color: TypeName:, TypeID } ]
|
|
13355
|
+
};this.FunctionKeyData=[];//功能键 { Priority:, Data:[ { Symbol:, Spell, Name:, Color:, TypeName:, TypeID } ]
|
|
13347
13356
|
//事件回调
|
|
13348
|
-
|
|
13357
|
+
this.mapEvent=new _map2.default();//通知外部调用 key:JSCHART_EVENT_ID value:{Callback:回调,}
|
|
13349
13358
|
this.UIElement=uielement;this.LastPoint=new Point();//鼠标位置
|
|
13350
13359
|
//拖拽滚动条
|
|
13351
13360
|
this.DragYScroll=null;//{Start:{x,y}, End:{x, y}}
|
|
13352
13361
|
this.IsDestroy=false;//是否已经销毁了
|
|
13353
13362
|
this.ChartDestory=function()//销毁
|
|
13354
|
-
{this.IsDestroy=true;};this.ClearSearch=function(option){this.Data.Data=[];this.Data.XOffset=0;this.Data.YOffset=0;if(option&&option.Redraw==true)this.Draw();};this.
|
|
13363
|
+
{this.IsDestroy=true;};this.ClearSearch=function(option){this.Data.Data=[];this.Data.XOffset=0;this.Data.YOffset=0;if(option&&option.Redraw==true)this.Draw();};this.SearchFunctionKeyData=function(strSearch){if(strSearch.length<=0)return null;if(!IFrameSplitOperator.IsNonEmptyArray(this.FunctionKeyData))return null;var aryData=[];for(var i=0;i<this.FunctionKeyData.length;++i){var groupData=this.FunctionKeyData[i];if(!groupData)continue;if(!IFrameSplitOperator.IsNonEmptyArray(groupData.Data))continue;var aryExactQuery=[];//精确查询
|
|
13364
|
+
var aryFuzzyQuery=[];//模糊查询
|
|
13365
|
+
var aryEqualQuery=[];//相等
|
|
13366
|
+
for(var j=0;j<groupData.Data.length;++j){var item=groupData.Data[j];if(this.SearchSymbol(item,strSearch,aryExactQuery,aryFuzzyQuery,aryEqualQuery))continue;}if(IFrameSplitOperator.IsNonEmptyArray(aryEqualQuery))aryData.push.apply(aryData,aryEqualQuery);if(IFrameSplitOperator.IsNonEmptyArray(aryExactQuery))aryData.push.apply(aryData,aryExactQuery);if(IFrameSplitOperator.IsNonEmptyArray(aryFuzzyQuery))aryData.push.apply(aryData,aryFuzzyQuery);}if(aryData.length>0)return aryData;return null;};this.Search=function(strText){var _Data$Data,_Data$Data2,_Data$Data3,_Data$Data4;var aryExactQuery=[];//精确查询
|
|
13355
13367
|
var aryFuzzyQuery=[];//模糊查询
|
|
13356
|
-
|
|
13368
|
+
var aryEqualQuery=[];//相等
|
|
13369
|
+
var aryFuncKeyQuery=null;this.MapSymbol.clear();this.Data.Data=[];this.Data.XOffset=0;this.Data.YOffset=0;var strSearch=strText.trim();if(strSearch.length>0){aryFuncKeyQuery=this.SearchFunctionKeyData(strSearch);for(var i=0;i<this.SourceData.Data.length;++i){var item=this.SourceData.Data[i];if(this.SearchSymbol(item,strSearch,aryExactQuery,aryFuzzyQuery,aryEqualQuery))continue;else if(this.SearchSpell(item,strSearch,aryExactQuery,aryFuzzyQuery))continue;}}if(IFrameSplitOperator.IsNonEmptyArray(aryFuncKeyQuery))(_Data$Data=this.Data.Data).push.apply(_Data$Data,(0,_toConsumableArray3.default)(aryFuncKeyQuery));if(IFrameSplitOperator.IsNonEmptyArray(aryEqualQuery))(_Data$Data2=this.Data.Data).push.apply(_Data$Data2,aryEqualQuery);if(IFrameSplitOperator.IsNonEmptyArray(aryExactQuery))(_Data$Data3=this.Data.Data).push.apply(_Data$Data3,aryExactQuery);if(IFrameSplitOperator.IsNonEmptyArray(aryFuzzyQuery))(_Data$Data4=this.Data.Data).push.apply(_Data$Data4,aryFuzzyQuery);this.ChartPaint[0].SelectedRow=0;this.ChartPaint[0].SizeChange=true;JSConsole.Chart.Log('[JSKeyboardChart:Search] search='+strSearch+', source='+this.SourceData.Data.length+' match='+this.Data.Data.length);this.Draw();};this.SearchSymbol=function(item,strText,aryExactQuery,aryFuzzyQuery,aryEqualQuery){var find=item.Symbol.indexOf(strText);if(find<0)return false;if(item.Symbol==strText)aryEqualQuery.push(item.Symbol);else if(find==0)aryExactQuery.push(item.Symbol);else aryFuzzyQuery.push(item.Symbol);this.MapSymbol.set(item.Symbol,item);return true;};this.SearchSpell=function(item,strText,aryExactQuery,aryFuzzyQuery){if(!IFrameSplitOperator.IsString(item.Spell))return false;var find=item.Spell.indexOf(strText);if(find!=0)return false;aryExactQuery.push(item.Symbol);this.MapSymbol.set(item.Symbol,item);return true;};this.SetSymbolData=function(arySymbol){this.SourceData.Data=[];for(var i=0;i<arySymbol.length;++i){var item=arySymbol[i];if(IFrameSplitOperator.IsNumber(item.Priority)){if(!this.FunctionKeyData[item.Priority])this.FunctionKeyData[item.Priority]={Priority:item.Priority,Data:[]};this.FunctionKeyData[item.Priority].Data.push(item);}else{this.SourceData.Data.push(item);}}/*
|
|
13357
13370
|
//测试
|
|
13358
13371
|
this.MapSymbol.clear();
|
|
13359
13372
|
for(var i=0;i<this.SourceData.Data.length && i<3050 ;++i)
|
|
@@ -13385,7 +13398,7 @@ var result=this.MoveSelectedRow(1);if(result){if(result.Redraw)this.Draw();}brea
|
|
|
13385
13398
|
if(this.MoveXOffset(-1))this.Draw();break;case 39://right
|
|
13386
13399
|
if(this.MoveXOffset(1))this.Draw();break;case 13://Enter
|
|
13387
13400
|
this.OnSelectedSymbol();break;}//不让滚动条滚动
|
|
13388
|
-
if(e.preventDefault)e.preventDefault();else e.returnValue=false;};this.OnSelectedSymbol=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return false;var chart=this.ChartPaint[0];if(!chart)return false;var data=chart.GetSelectedSymbol();var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYBOARD_SELECTED);if(event&&event.Callback){event.Callback(event,{Data:data},this);}};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){if(chart.OnDblClick(x,y,e))this.OnSelectedSymbol();}};this.UIOnMouseDown=function(e){var _this70=this;this.DragYScroll=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;//if (e.button!=0) return;
|
|
13401
|
+
if(e.preventDefault)e.preventDefault();else e.returnValue=false;};this.OnSelectedSymbol=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return false;var chart=this.ChartPaint[0];if(!chart)return false;var data=chart.GetSelectedSymbol();var selItem=this.MapSymbol.get(data.Symbol);if(!selItem)return false;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYBOARD_SELECTED);if(event&&event.Callback){event.Callback(event,{Data:data,RowData:selItem},this);}};this.UIOnDblClick=function(e){var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){if(chart.OnDblClick(x,y,e))this.OnSelectedSymbol();}};this.UIOnMouseDown=function(e){var _this70=this;this.DragYScroll=null;this.DragMove={Click:{X:e.clientX,Y:e.clientY},Move:{X:e.clientX,Y:e.clientY},PreMove:{X:e.clientX,Y:e.clientY}};var pixelTatio=GetDevicePixelRatio();var x=(e.clientX-this.UIElement.getBoundingClientRect().left)*pixelTatio;var y=(e.clientY-this.UIElement.getBoundingClientRect().top)*pixelTatio;var chart=this.ChartPaint[0];if(chart){var clickData=chart.OnMouseDown(x,y,e);if(!clickData)return;//if (e.button!=0) return;
|
|
13389
13402
|
if(clickData.Type==2&&(e.button==0||e.button==2))//点击行
|
|
13390
13403
|
{if(clickData.Redraw==true)this.Draw();}else if(clickData.Type==5&&e.button==0)//右侧滚动条
|
|
13391
13404
|
{var scroll=clickData.VScrollbar;if(scroll.Type==1)//顶部按钮
|
|
@@ -13445,7 +13458,7 @@ this.Column=//{ Type:列id, Title:标题, TextAlign:文字对齐方式, MaxText:
|
|
|
13445
13458
|
{Type:KEYBOARD_COLUMN_ID.TYPE_NAME_ID,Title:"类型",TextAlign:"right",Width:null,MaxText:"擎擎擎擎"}];this.RectClient={};this.ReloadResource=function(resource){this.BorderColor=g_JSChartResource.Keyboard.BorderColor;//边框线
|
|
13446
13459
|
this.SelectedColor=g_JSChartResource.Keyboard.SelectedColor;//选中行
|
|
13447
13460
|
this.TextColor=g_JSChartResource.Keyboard.TextColor;//文字颜色
|
|
13448
|
-
if(this.VScrollbar)this.VScrollbar.ReloadResource(resource);};this.SetColumn=function(aryColumn){if(!IFrameSplitOperator.IsNonEmptyArray(aryColumn))return;};this.Draw=function(){this.ShowSymbol=[];if(this.SizeChange)this.CalculateSize();else this.UpdateCacheData();var bShowVScrollbar=this.IsShowVScrollbar();this.Canvas.save();this.Canvas.beginPath();this.Canvas.rect(this.RectClient.Left,this.RectClient.Top+1,this.RectClient.Right-this.RectClient.Left,this.RectClient.Bottom-(this.RectClient.Top+1));//this.Canvas.stroke(); //调试用
|
|
13461
|
+
if(this.VScrollbar)this.VScrollbar.ReloadResource(resource);};this.SetColumn=function(aryColumn){if(!IFrameSplitOperator.IsNonEmptyArray(aryColumn))return;this.Column=[];for(var i=0;i<aryColumn.length;++i){var item=aryColumn[i];var colItem=this.GetDefaultColunm(item.Type);if(!colItem)continue;if(item.Title)colItem.Title=item.Title;if(item.TextAlign)colItem.TextAlign=item.TextAlign;if(item.MaxText)colItem.MaxText=item.MaxText;this.Column.push(colItem);}};this.GetDefaultColunm=function(id){var DEFAULT_COLUMN=[{Type:KEYBOARD_COLUMN_ID.SHORT_SYMBOL_ID,Title:"代码",TextAlign:"left",Width:null,MaxText:"888888"},{Type:KEYBOARD_COLUMN_ID.NAME_ID,Title:"名称",TextAlign:"left",Width:null,MaxText:"擎擎擎擎擎擎"},{Type:KEYBOARD_COLUMN_ID.TYPE_NAME_ID,Title:"类型",TextAlign:"right",Width:null,MaxText:"擎擎擎擎"}];for(var i=0;i<DEFAULT_COLUMN.length;++i){var item=DEFAULT_COLUMN[i];if(item.Type==id)return item;}return null;};this.Draw=function(){this.ShowSymbol=[];if(this.SizeChange)this.CalculateSize();else this.UpdateCacheData();var bShowVScrollbar=this.IsShowVScrollbar();this.Canvas.save();this.Canvas.beginPath();this.Canvas.rect(this.RectClient.Left,this.RectClient.Top+1,this.RectClient.Right-this.RectClient.Left,this.RectClient.Bottom-(this.RectClient.Top+1));//this.Canvas.stroke(); //调试用
|
|
13449
13462
|
this.Canvas.clip();this.DrawBody();this.Canvas.restore();this.DrawBorder();if(this.VScrollbar&&bShowVScrollbar){var bottom=this.ChartBorder.GetBottom();this.VScrollbar.DrawScrollbar(this.RectClient.Left,this.RectClient.Top+2,this.RectClient.Right+this.VScrollbar.ButtonSize+2,bottom-2);}this.SizeChange=false;};//更新缓存变量
|
|
13450
13463
|
this.UpdateCacheData=function(){this.RectClient.Left=this.ChartBorder.GetLeft();this.RectClient.Right=this.ChartBorder.GetRight();this.RectClient.Top=this.ChartBorder.GetTop();this.RectClient.Bottom=this.ChartBorder.GetBottom();var bShowVScrollbar=this.IsShowVScrollbar();if(bShowVScrollbar&&this.VScrollbar&&this.VScrollbar.Enable){this.RectClient.Right-=this.VScrollbar.ButtonSize+2;}};this.GetPageSize=function(recalculate)//recalculate 是否重新计算
|
|
13451
13464
|
{if(recalculate)this.CalculateSize();var size=this.RowCount;return size;};this.GetCurrentPageStatus=function()//{ Start:起始索引, End:结束索引(数据), PageSize:页面可以显示几条记录, IsEnd:是否是最后一页, IsSinglePage:是否只有一页数据}
|
|
@@ -13727,7 +13740,8 @@ Border://边框
|
|
|
13727
13740
|
Right:1,//右边间距
|
|
13728
13741
|
Bottom:1,//底部间距
|
|
13729
13742
|
Top:1//顶部间距
|
|
13730
|
-
},BorderLine:1|2|4|8,EnableResize:true
|
|
13743
|
+
},BorderLine:1|2|4|8,EnableResize:true,//{ Type:列id, Title:标题, TextAlign:文字对齐方式, MaxText:文字最大宽度 , TextColor:文字颜色, Sort:0=不支持排序 1=本地排序 0=远程排序 }
|
|
13744
|
+
Column:[{Type:KEYBOARD_COLUMN_ID.SHORT_SYMBOL_ID,Title:"代码",TextAlign:"left",Width:null,MaxText:"888888"},{Type:KEYBOARD_COLUMN_ID.NAME_ID,Title:"名称",TextAlign:"left",Width:null,MaxText:"擎擎擎擎擎擎擎擎"},{Type:KEYBOARD_COLUMN_ID.TYPE_NAME_ID,Title:"类型",TextAlign:"right",Width:null,MaxText:"擎擎擎擎擎"}]};return option;};///////////////////////////////////////////////////////////////////////////////////
|
|
13731
13745
|
// 工作线程计算指标示例
|
|
13732
13746
|
//
|
|
13733
13747
|
//
|
|
@@ -13739,7 +13753,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
13739
13753
|
this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
|
|
13740
13754
|
* 版本信息输出
|
|
13741
13755
|
*
|
|
13742
|
-
*/var HQCHART_VERSION="1.1.
|
|
13756
|
+
*/var HQCHART_VERSION="1.1.13716";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
|
|
13743
13757
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
13744
13758
|
// BaseIndex:BaseIndex,
|
|
13745
13759
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -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
|
|
|
@@ -269,7 +269,15 @@ JSPopKeyboard.GetOption=function()
|
|
|
269
269
|
},
|
|
270
270
|
|
|
271
271
|
BorderLine:1|2|4|8,
|
|
272
|
-
EnableResize:true
|
|
272
|
+
EnableResize:true,
|
|
273
|
+
|
|
274
|
+
//{ Type:列id, Title:标题, TextAlign:文字对齐方式, MaxText:文字最大宽度 , TextColor:文字颜色, Sort:0=不支持排序 1=本地排序 0=远程排序 }
|
|
275
|
+
Column:
|
|
276
|
+
[
|
|
277
|
+
{ Type:KEYBOARD_COLUMN_ID.SHORT_SYMBOL_ID, Title:"代码", TextAlign:"left", Width:null, MaxText:"888888" },
|
|
278
|
+
{ Type:KEYBOARD_COLUMN_ID.NAME_ID, Title:"名称", TextAlign:"left", Width:null, MaxText:"擎擎擎擎擎擎擎擎" },
|
|
279
|
+
{ Type:KEYBOARD_COLUMN_ID.TYPE_NAME_ID, Title:"类型", TextAlign:"right", Width:null, MaxText:"擎擎擎擎擎" },
|
|
280
|
+
]
|
|
273
281
|
};
|
|
274
282
|
|
|
275
283
|
return option;
|
|
@@ -20025,6 +20025,8 @@ var SCRIPT_CHART_NAME=
|
|
|
20025
20025
|
OVERLAY_BARS:"OVERLAY_BARS", //叠加柱子图
|
|
20026
20026
|
KLINE_TABLE:"KLINE_TABLE",
|
|
20027
20027
|
SCATTER_PLOT:"SCATTER_PLOT", //散点图
|
|
20028
|
+
|
|
20029
|
+
CLIP_COLOR_STICK:"CLIP_COLOR_STICK", //上下柱子 裁剪
|
|
20028
20030
|
}
|
|
20029
20031
|
|
|
20030
20032
|
|
|
@@ -21783,6 +21785,33 @@ function ScriptIndex(name,script,args,option)
|
|
|
21783
21785
|
hqChart.ChartPaint.push(chart);
|
|
21784
21786
|
}
|
|
21785
21787
|
|
|
21788
|
+
this.CreateClipColorStick=function(hqChart,windowIndex,varItem,id)
|
|
21789
|
+
{
|
|
21790
|
+
var chart=new ChartClipColorStick();
|
|
21791
|
+
chart.Canvas=hqChart.Canvas;
|
|
21792
|
+
chart.Name=varItem.Name;
|
|
21793
|
+
chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;
|
|
21794
|
+
chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;
|
|
21795
|
+
chart.HQChart=hqChart;
|
|
21796
|
+
chart.Identify=this.Guid;
|
|
21797
|
+
|
|
21798
|
+
chart.Data.Data=varItem.Draw.DrawData;
|
|
21799
|
+
if (varItem.Option && chart.SetOption) chart.SetOption(varItem.Option);
|
|
21800
|
+
hqChart.ChartPaint.push(chart);
|
|
21801
|
+
|
|
21802
|
+
var titleIndex=windowIndex+1;
|
|
21803
|
+
if (varItem.IsShowTitle===false)
|
|
21804
|
+
{
|
|
21805
|
+
|
|
21806
|
+
}
|
|
21807
|
+
else
|
|
21808
|
+
{
|
|
21809
|
+
var clrTitle=this.GetDefaultColor(id);
|
|
21810
|
+
if (varItem.Option && varItem.Option.TitleColor) clrTitle=this.GetColor(varItem.Option.TitleColor);
|
|
21811
|
+
hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,clrTitle);
|
|
21812
|
+
}
|
|
21813
|
+
}
|
|
21814
|
+
|
|
21786
21815
|
this.CreateColorKLine=function(hqChart,windowIndex,varItem,i)
|
|
21787
21816
|
{
|
|
21788
21817
|
let chart=new ChartColorKline();
|
|
@@ -22100,6 +22129,9 @@ function ScriptIndex(name,script,args,option)
|
|
|
22100
22129
|
case SCRIPT_CHART_NAME.SCATTER_PLOT:
|
|
22101
22130
|
this.CreateScatterPlot(hqChart,windowIndex,item,i);
|
|
22102
22131
|
break;
|
|
22132
|
+
case SCRIPT_CHART_NAME.CLIP_COLOR_STICK:
|
|
22133
|
+
this.CreateClipColorStick(hqChart,windowIndex,item,i);
|
|
22134
|
+
break;
|
|
22103
22135
|
default:
|
|
22104
22136
|
{
|
|
22105
22137
|
var find=g_ScriptIndexChartFactory.Get(item.Draw.DrawType); //外部挂接
|
|
@@ -24535,6 +24567,20 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
24535
24567
|
|
|
24536
24568
|
result.push(outVarItem);
|
|
24537
24569
|
}
|
|
24570
|
+
else if (draw.DrawType==SCRIPT_CHART_NAME.CLIP_COLOR_STICK)
|
|
24571
|
+
{
|
|
24572
|
+
drawItem.Name=draw.Name;
|
|
24573
|
+
drawItem.Type=draw.Type;
|
|
24574
|
+
drawItem.DrawType=draw.DrawType;
|
|
24575
|
+
drawItem.DrawData=this.FittingArray(draw.Data,date,time,hqChart);
|
|
24576
|
+
|
|
24577
|
+
outVarItem.Draw=drawItem;
|
|
24578
|
+
if (draw.LineWidth) outVarItem.LineWidth=draw.LineWidth;
|
|
24579
|
+
if (draw.UpColor) outVarItem.UpColor=draw.UpColor;
|
|
24580
|
+
if (draw.DownColor) outVarItem.DownColor=draw.DownColor;
|
|
24581
|
+
|
|
24582
|
+
result.push(outVarItem);
|
|
24583
|
+
}
|
|
24538
24584
|
else
|
|
24539
24585
|
{
|
|
24540
24586
|
var find=g_ScriptIndexChartFactory.Get(draw.DrawType); //外部挂接
|
|
@@ -24800,6 +24846,17 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
24800
24846
|
|
|
24801
24847
|
result.push(outVarItem);
|
|
24802
24848
|
}
|
|
24849
|
+
else if (draw.DrawType==SCRIPT_CHART_NAME.CLIP_COLOR_STICK)
|
|
24850
|
+
{
|
|
24851
|
+
drawItem.Name=draw.Name;
|
|
24852
|
+
drawItem.Type=draw.Type;
|
|
24853
|
+
drawItem.DrawType=draw.DrawType;
|
|
24854
|
+
drawItem.DrawData=this.FittingMinuteArray(draw.Data,date,time,hqChart);
|
|
24855
|
+
|
|
24856
|
+
outVarItem.Draw=drawItem;
|
|
24857
|
+
if (draw.Option) outVarItem.Option=draw.Option;
|
|
24858
|
+
result.push(outVarItem);
|
|
24859
|
+
}
|
|
24803
24860
|
else if (draw.DrawType=='MULTI_LINE')
|
|
24804
24861
|
{
|
|
24805
24862
|
drawItem.Text=draw.Text;
|