hqchart 1.1.14632 → 1.1.14635
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +14 -10
- package/package.json +1 -1
- package/src/jscommon/umychart.DialogTooltip.js +10 -0
- package/src/jscommon/umychart.complier.js +1 -0
- package/src/jscommon/umychart.js +55 -6
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +57 -7
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +67 -7
package/lib/umychart.vue.js
CHANGED
|
@@ -2119,7 +2119,8 @@ this.Tooltip.style.position="absolute";this.Tooltip.style.left=left+"px";this.To
|
|
|
2119
2119
|
this.Tooltip.style.position="absolute";this.Tooltip.style.left=left+"px";this.Tooltip.style.top=top+xMove+"px";this.Tooltip.style.width=width+"px";this.Tooltip.style.height=null;this.Tooltip.innerHTML=format.Text;;this.Tooltip.style.display="block";}else if(toolTip.Type==7)//ChartDrawSVG
|
|
2120
2120
|
{if(this.FloatTooltip){this.DrawFloatTooltip({X:x,Y:y,YMove:20/pixelTatio},toolTip);bHideFloatToolip=false;return;}var left=x;var top=y;var format=g_DivTooltipDataForamt.Create('ChartDrawSVGDataStringFormat');format.Value=toolTip;format.Symbol=this.Symbol;format.Period=this.Period;format.LanguageID=this.LanguageID;if(!format.Operator())return;var width=format.Width;this.Tooltip.className='jchart-chartdrawsvg-tooltip';//ChartDrawSVG指标数据
|
|
2121
2121
|
this.Tooltip.style.position="absolute";this.Tooltip.style.left=left+"px";this.Tooltip.style.top=top+xMove+"px";this.Tooltip.style.width=width+"px";this.Tooltip.style.height=null;this.Tooltip.innerHTML=format.Text;this.Tooltip.style.display="block";}else if(toolTip.Type==8)//ChartDrawSVG 新版本
|
|
2122
|
-
{if(this.FloatTooltip){this.DrawFloatTooltip({X:x,Y:y,YMove:20/pixelTatio},toolTip);bHideFloatToolip=false;return;}}
|
|
2122
|
+
{if(this.FloatTooltip){this.DrawFloatTooltip({X:x,Y:y,YMove:20/pixelTatio},toolTip);bHideFloatToolip=false;return;}}else if(toolTip.Type==9)//ChartKLineTable
|
|
2123
|
+
{if(toolTip.Data.Item&&toolTip.Data.Item.Tooltip&&this.FloatTooltip){this.DrawFloatTooltip({X:x,Y:y,YMove:20/pixelTatio},toolTip);bHideFloatToolip=false;return;}}if(bHideFloatToolip)this.HideFloatTooltip();};this.UpdateDOMTooltip=function(toolTipType,data){var _this14=this;if(!this.TooltipCache.IsShow)return;if(this.TooltipCache.Type!=toolTipType)return;if(!this.TooltipCache.Data)return;if(this.TooltipCache.Type===0){if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.Data))return;var lastItem=data.Data[data.Data.length-1];if(lastItem.Date!=this.TooltipCache.Data.Date)return;if(IFrameSplitOperator.IsNumber(lastItem.Time)&&lastItem.Time!=this.TooltipCache.Data.Time)return;var klinePaint=this.ChartPaint[0];var format=g_DivTooltipDataForamt.Create('HistoryDataStringFormat');format.Value={Data:lastItem,ChartPaint:klinePaint,Type:this.TooltipCache.Type};format.Symbol=this.Symbol;format.LanguageID=this.LanguageID;format.GetEventCallback=function(id){return _this14.GetEventCallback(id);};if(!format.Operator())return;if(format.Text==this.TooltipCache.InnerHTML)return;this.Tooltip.innerHTML=format.Text;this.TooltipCache.InnerHTML=format.Text;}};this.HideTooltip=function(){this.TooltipCache.IsShow=false;this.TooltipCache.Type=null;this.TooltipCache.InnerHTML=null;this.TooltipCache.Data=null;if(this.Tooltip.style.display!="none")this.Tooltip.style.display="none";this.HideFloatTooltip();};this.UpdateSelectRect=function(start,end){if(!this.ChartPaint[0].Data)return;var paint=this.GetRectSelectPaint();if(!paint)return;var data=this.ChartPaint[0].Data;var count=data.Data.length;if(end>=count)end=count-1;var startItem=data.Data[start];var endItem=data.Data[end];JSConsole.Chart.Log('[JSChartContainer::UpdateSelectRect]',startItem,endItem);paint.SetPoint(startItem,{Index:0,DataIndex:start});paint.SetPoint(endItem,{Index:1,DataIndex:end});this.Draw();};this.HideSelectRect=function(){this.ClearDragSelectRect();};this.ResetFrameXYSplit=function(){if(typeof this.Frame.ResetXYSplit=='function')this.Frame.ResetXYSplit();};this.ResetFrameXSplit=function(){if(typeof this.Frame.ResetXSplit=='function')this.Frame.ResetXSplit();};this.ResetFrameYCustomSplit=function(windowIndex){if(typeof this.Frame.ResetYCustomSplit=='function')this.Frame.ResetYCustomSplit(windowIndex);};this.UpdateFrameMaxMinV2=function(){var mapFrame=new _map2.default();//key=frameid, value:{ ChartPaint:[] }
|
|
2123
2124
|
for(var i=0;i<this.Frame.SubFrame.length;++i){var subItem=this.Frame.SubFrame[i];if(!subItem||!subItem.Frame)continue;var frame=subItem.Frame;//自定义刻度每次都调用
|
|
2124
2125
|
frame.YCustomSplit=true;var key=frame.Identify;var item={ID:key,Frame:frame,ChartPaint:[],Max:null,Min:null,OverlayFrame:[],//共享坐标
|
|
2125
2126
|
SingleOverlay:[],//独立坐标
|
|
@@ -4068,14 +4069,16 @@ this.RowCount=5;//行数
|
|
|
4068
4069
|
this.RowHeight=10;//行高
|
|
4069
4070
|
this.RowHeightType=1;//0=均分 1=固定高度
|
|
4070
4071
|
this.TextFontConfig=CloneData(g_JSChartResource.ChartKLineTable.TextFont);this.ItemMergin=CloneData(g_JSChartResource.ChartKLineTable.ItemMergin);this.TextFont;this.TextColor='rgb(0,0,0)';this.AryTableData=[];this.MapCache=null;//key=date/date-time value={ Date:, Time:, Data:[ ] }
|
|
4071
|
-
this.GetKValue=ChartData.GetKValue;this.
|
|
4072
|
+
this.GetKValue=ChartData.GetKValue;this.AryCellRect=[];//保存单元格信息
|
|
4073
|
+
this.BuildCacheData=function(){var mapData=new _map2.default();this.MapCache=mapData;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;for(var i=0;i<this.AryTableData.length;++i){var item=this.AryTableData[i];var key=this.BuildKey(item);mapData.set(key,item);}};//绘制背景色
|
|
4072
4074
|
this.DrawBG=function(rtBG){if(!this.BGColor)return;if(this.BGColor){this.Canvas.fillStyle=this.BGColor;this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-1,rtBG.Height);}};this.DrawBorder=function(rtBG){if(!this.BorderColor)return;var yLine=rtBG.Top;for(var i=0;i<30;++i){this.Canvas.beginPath();this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));this.Canvas.stroke();yLine+=this.RowHeight;if(yLine>=rtBG.Bottom)break;}};//计算行高
|
|
4073
|
-
this.CalculateRowHeight=function(rtBG){if(this.RowHeightType==1){this.RowHeight=this.TextFontConfig.FontMaxSize+this.ItemMergin.Top+this.ItemMergin.Bottom;}else{this.RowHeight=rtBG.Height/this.RowCount;}};this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;if(!this.MapCache||this.MapCache.size<=0)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return;if(this.RowCount<=0)return;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();var height=border.Bottom-border.TopTitle;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var top=border.TopTitle;var bottom=border.Bottom;//绘制背景
|
|
4075
|
+
this.CalculateRowHeight=function(rtBG){if(this.RowHeightType==1){this.RowHeight=this.TextFontConfig.FontMaxSize+this.ItemMergin.Top+this.ItemMergin.Bottom;}else{this.RowHeight=rtBG.Height/this.RowCount;}};this.Draw=function(){this.AryCellRect=[];if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;if(!this.MapCache||this.MapCache.size<=0)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return;if(this.RowCount<=0)return;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();var height=border.Bottom-border.TopTitle;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var top=border.TopTitle;var bottom=border.Bottom;//绘制背景
|
|
4074
4076
|
var rtBG={Left:border.LeftEx,Top:top,Right:border.RightEx,Bottom:bottom};rtBG.Width=rtBG.Right-rtBG.Left;rtBG.Height=rtBG.Bottom-rtBG.Top;this.DrawBG(rtBG);this.CalculateRowHeight(rtBG);var itemHeight=this.RowHeight;var itemWidth=dataWidth+distanceWidth;if(itemHeight-this.ItemMergin.Top-this.ItemMergin.Bottom>0)itemHeight=itemHeight-this.ItemMergin.Top-this.ItemMergin.Bottom;if(itemWidth-this.ItemMergin.Left-this.ItemMergin.Right>0)itemWidth=itemWidth-this.ItemMergin.Left-this.ItemMergin.Right;var font=this.GetDynamicTextFont(itemHeight,itemWidth);this.TextFont=font;this.Canvas.font=this.TextFont;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var kItem=this.Data.Data[i];if(!kItem)continue;var left=xOffset;var right=xOffset+dataWidth+distanceWidth;if(right>chartright)break;var x=left+(right-left)/2;if(x>chartright)break;var bDrawName=false;if(j==0&&this.RowNamePosition===1)bDrawName=true;if(bDrawName)this.DrawRowName(top,bottom,left,right);var key=this.BuildKey(kItem);if(!this.MapCache.has(key))continue;var mapItem=this.MapCache.get(key);if(!bDrawName)this.DrawRow(mapItem,top,bottom,left,right);//绘制一列
|
|
4075
4077
|
}if(this.RowNamePosition==3)this.DrawRightRowName();this.DrawBorder(rtBG);};this.DrawRowName=function(top,bottom,left,right){if(!IFrameSplitOperator.IsNonEmptyArray(this.RowName))return;var x=left,y=top,width=right-left;var yOffset=3;if(this.ItemMergin.YOffset)yOffset=this.ItemMergin.YOffset;for(var i=0;i<this.RowName.length;++i){var item=this.RowName[i];var rtBG={Left:x,Top:y,Right:right,Height:this.RowHeight,Width:width};rtBG.Bottom=rtBG.Top+this.RowHeight;var yText=rtBG.Bottom-yOffset;if(item.Name&&rtBG.Width>10){this.Canvas.fillStyle=item.Color?item.Color:this.TextColor;this.Canvas.textBaseline='bottom';if(item.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(item.Name,rtBG.Right-2,yText,width-4);}else if(item.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(item.Name,rtBG.Left+rtBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(item.Name,rtBG.Left+2,yText,width-4);}}y+=this.RowHeight;}};//绘制右侧行名
|
|
4076
|
-
this.DrawRightRowName=function(){var border=this.ChartFrame.GetBorder();if(this.BGColor){var rtRightBG={Left:border.RightEx,Top:border.
|
|
4077
|
-
{var subCellWidth=rtBG.Width/item.AryText.length;var xCell=rtBG.Left;for(var j=0;j<item.AryText.length;++j){var subItem=item.AryText[j];var rtSubBG={Left:xCell,Top:rtBG.Top,Bottom:rtBG.Bottom,Width:subCellWidth,Height:rtBG.Height};rtSubBG.Right=rtSubBG.Left+rtSubBG.Width;if(subItem&&subItem.BGColor){this.Canvas.fillStyle=subItem.BGColor;this.Canvas.fillRect(rtSubBG.Left,rtSubBG.Top,rtSubBG.Width,rtSubBG.Height);}if(subItem&&subItem.Color&&subCellWidth>10){this.Canvas.fillStyle=subItem.Color;this.Canvas.textBaseline='bottom';var yText=rtSubBG.Bottom-yOffset;if(subItem.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(subItem.Text,rtSubBG.Right-2,yText,width-4);}else if(subItem.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(subItem.Text,rtSubBG.Left+rtSubBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(subItem.Text,rtSubBG.Left+2,yText,width-4);}}xCell+=subCellWidth;}}else{if(item
|
|
4078
|
-
if(fontSize>this.TextFontConfig.FontMaxSize)fontSize=this.TextFontConfig.FontMaxSize;else if(fontSize<=0)fontSize=1;var font=this.FormatFontString(fontSize,this.TextFontConfig.Family,fontOption);return font;};this.FormatFontString=function(fontSize,family,option){var font;if(!option){font=fontSize+'px '+family;}else{if(option.Weight)font=option.Weight+' '+fontSize+'px '+family;}return font;};this.GetMaxMin=function(){return{Min:0,Max:this.RowCount};};}
|
|
4078
|
+
this.DrawRightRowName=function(){var border=this.ChartFrame.GetBorder();if(this.BGColor){var rtRightBG={Left:border.RightEx,Top:border.Top,Right:border.ChartWidth,Bottom:border.Bottom};rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;this.Canvas.fillStyle=this.BGColor;this.Canvas.fillRect(rtRightBG.Left+1,rtRightBG.Top,rtRightBG.Width-1,rtRightBG.Height);}var x=border.RightEx,y=border.TopTitle;var yOffset=3;if(this.ItemMergin.YOffset)yOffset=this.ItemMergin.YOffset;for(var i=0;i<this.RowName.length;++i){var item=this.RowName[i];var rtBG={Left:x,Top:y,Right:border.ChartWidth,Height:this.RowHeight};rtBG.Bottom=rtBG.Top+this.RowHeight;rtBG.Width=rtBG.Right-rtBG.Left;var yText=rtBG.Bottom-yOffset;if(rtBG.Bottom>border.Bottom)break;if(item.Name&&rtBG.Width>10){this.Canvas.fillStyle=item.Color?item.Color:this.TextColor;this.Canvas.textBaseline='bottom';this.Canvas.textAlign='left';this.Canvas.fillText(item.Name,rtBG.Left+2,yText);}y+=this.RowHeight;}};this.DrawRow=function(data,top,bottom,left,right){if(!IFrameSplitOperator.IsNonEmptyArray(data.Data))return;var x=left,y=top,width=right-left;var yOffset=3;if(this.ItemMergin.YOffset)yOffset=this.ItemMergin.YOffset;for(var i=0;i<data.Data.length;++i,y+=this.RowHeight){var item=data.Data[i];if(!item)continue;var rtBG={Left:x,Top:y,Right:right,Height:this.RowHeight,Width:width};rtBG.Bottom=rtBG.Top+this.RowHeight;if(rtBG.Bottom>bottom)break;if(IFrameSplitOperator.IsNonEmptyArray(item.AryText))//左右显示
|
|
4079
|
+
{var subCellWidth=rtBG.Width/item.AryText.length;var xCell=rtBG.Left;for(var j=0;j<item.AryText.length;++j){var subItem=item.AryText[j];var rtSubBG={Left:xCell,Top:rtBG.Top,Bottom:rtBG.Bottom,Width:subCellWidth,Height:rtBG.Height};rtSubBG.Right=rtSubBG.Left+rtSubBG.Width;if(subItem&&subItem.BGColor){this.Canvas.fillStyle=subItem.BGColor;this.Canvas.fillRect(rtSubBG.Left,rtSubBG.Top,rtSubBG.Width,rtSubBG.Height);}if(subItem&&subItem.Color&&subCellWidth>10){this.Canvas.fillStyle=subItem.Color;this.Canvas.textBaseline='bottom';var yText=rtSubBG.Bottom-yOffset;if(subItem.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(subItem.Text,rtSubBG.Right-2,yText,width-4);}else if(subItem.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(subItem.Text,rtSubBG.Left+rtSubBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(subItem.Text,rtSubBG.Left+2,yText,width-4);}}if(rtBG.Width>5){this.AryCellRect.push({Item:{Cell:item,Colunm:data,RowIndex:i,SubCell:subItem,SubIndex:j,Tooltip:subItem.Tooltip,Type:2},Rect:rtBG});}xCell+=subCellWidth;}}else{if(item.BGColor){this.Canvas.fillStyle=item.BGColor;this.Canvas.fillRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);}if(item.Text&&rtBG.Width>10){if(item.Color)this.Canvas.fillStyle=item.Color;else this.Canvas.fillStyle=this.TextColor;this.Canvas.textBaseline='bottom';var yText=rtBG.Bottom-yOffset;if(item.TextAlign=='right'){this.Canvas.textAlign='right';this.Canvas.fillText(item.Text,rtBG.Right-2,yText,width-4);}else if(item.TextAlign=='center'){this.Canvas.textAlign='center';this.Canvas.fillText(item.Text,rtBG.Left+rtBG.Width/2,yText,width-4);}else{this.Canvas.textAlign='left';this.Canvas.fillText(item.Text,rtBG.Left+2,yText,width-4);}}if(rtBG.Width>5){this.AryCellRect.push({Item:{Cell:item,Colunm:data,RowIndex:i,Tooltip:item.Tooltip,Type:1},Rect:rtBG});}}}};this.GetDynamicTextFont=function(cellHeight,width,fontOption){var fontSize=parseInt(cellHeight)-2;if(cellHeight<5)fontSize=parseInt(cellHeight);//高度太小了就不要上下间距了
|
|
4080
|
+
if(fontSize>this.TextFontConfig.FontMaxSize)fontSize=this.TextFontConfig.FontMaxSize;else if(fontSize<=0)fontSize=1;var font=this.FormatFontString(fontSize,this.TextFontConfig.Family,fontOption);return font;};this.FormatFontString=function(fontSize,family,option){var font;if(!option){font=fontSize+'px '+family;}else{if(option.Weight)font=option.Weight+' '+fontSize+'px '+family;}return font;};this.GetMaxMin=function(){return{Min:0,Max:this.RowCount};};this.GetTooltipData=function(x,y,tooltip){if(!this.IsShow)return false;for(var i=0;i<this.AryCellRect.length;++i){var item=this.AryCellRect[i];if(!item.Rect)continue;var rect=item.Rect;if(x>=rect.Left&&x<=rect.Right&&y>=rect.Top&&y<=rect.Bottom){var data=item.Item;JSConsole.Chart.Log('[ChartKLineTable::GetTooltipData] cell',item);tooltip.Data={Rect:item.Rect,Item:data};tooltip.ChartPaint=this;tooltip.Type=9;//ChartKLineTable
|
|
4081
|
+
return true;}}return false;};}//表格
|
|
4079
4082
|
function ChartSimpleTable(){this.newMethod=IChartPainting;//派生
|
|
4080
4083
|
this.newMethod();delete this.newMethod;this.ClassName='ChartSimpleTable';//类名
|
|
4081
4084
|
//this.Data;
|
|
@@ -12290,7 +12293,7 @@ chart.Bars=varItem.Draw.DrawData;chart.BuildCacheData();this.SetChartIndexName(c
|
|
|
12290
12293
|
chart.Texts=varItem.Draw.DrawData;chart.BuildCacheData();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.GetKData();//绑定K线
|
|
12291
12294
|
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;chart.Data=hqChart.GetKData();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;if(varItem.Draw.BuildKeyCallback)chart.BuildKeyCallback=varItem.Draw.BuildKeyCallback;chart.Family=varItem.Draw.DrawData.Family;chart.TextFont=varItem.Draw.DrawData.TextFont;chart.Texts=varItem.Draw.DrawData.Data;chart.BuildCacheData();this.SetChartIndexName(chart);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线
|
|
12292
12295
|
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=hqChart.GetKData();//绑定K线
|
|
12293
|
-
chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;var config=varItem.Draw.Config;if(config){if(config.BGColor)chart.BGColor=config.BGColor;if(config.TextColor)chart.TextColor=config.TextColor;if(config.BorderColor)chart.BorderColor=config.BorderColor;if(IFrameSplitOperator.IsNumber(config.RowNamePosition))chart.RowNamePosition=config.RowNamePosition;if(config.ItemMergin){var subItem=config.ItemMergin;if(IFrameSplitOperator.IsNumber(subItem.Left))chart.ItemMergin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))chart.ItemMergin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))chart.ItemMergin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))chart.ItemMergin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))chart.ItemMergin.YOffset=subItem.YOffset;}if(config.TextFont){var subItem=config.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))chart.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)chart.TextFontConfig.Family=subItem.Family;}}chart.BuildCacheData();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.CreateScatterPlotV2=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlotV2();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=hqChart.GetKData();//绑定K线
|
|
12296
|
+
chart.AryTableData=varItem.Draw.DrawData;if(IFrameSplitOperator.IsNumber(varItem.Draw.RowCount))chart.RowCount=varItem.Draw.RowCount;if(IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName))chart.RowName=varItem.Draw.RowName;var config=varItem.Draw.Config;if(config){if(config.BGColor)chart.BGColor=config.BGColor;if(config.TextColor)chart.TextColor=config.TextColor;if(config.BorderColor)chart.BorderColor=config.BorderColor;if(IFrameSplitOperator.IsNumber(config.RowNamePosition))chart.RowNamePosition=config.RowNamePosition;if(IFrameSplitOperator.IsNumber(config.RowHeightType))chart.RowHeightType=config.RowHeightType;if(config.ItemMergin){var subItem=config.ItemMergin;if(IFrameSplitOperator.IsNumber(subItem.Left))chart.ItemMergin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))chart.ItemMergin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))chart.ItemMergin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))chart.ItemMergin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))chart.ItemMergin.YOffset=subItem.YOffset;}if(config.TextFont){var subItem=config.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))chart.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)chart.TextFontConfig.Family=subItem.Family;}}chart.BuildCacheData();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.CreateScatterPlotV2=function(hqChart,windowIndex,varItem,i){var chart=new ChartScatterPlotV2();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=hqChart.GetKData();//绑定K线
|
|
12294
12297
|
chart.AryPoint=varItem.Draw.DrawData;var config=varItem.Draw.Config;if(config){if(config.Color)chart.Color=config.Color;if(IFrameSplitOperator.IsNumber(config.Radius))chart.Radius=config.Radius;if(config.TextColor)chart.TextColor=config.TextColor;if(config.Font)chart.Font=config.Font;}chart.BuildCacheData();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线
|
|
12295
12298
|
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;//虚线
|
|
12296
12299
|
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线
|
|
@@ -14702,7 +14705,8 @@ this.Update=function(data){if(!this.DivDialog)return;this.LanguageID=this.HQChar
|
|
|
14702
14705
|
{this.UpdatChartOXTooltip(data);}else if(tooltipData.Type==6)//散点图
|
|
14703
14706
|
{this.UpdatChartScatterPlotTooltip(data);}else if(tooltipData.Type==7)//ChartDrawSVG 老版本 单行
|
|
14704
14707
|
{this.UpdateChartDrawSVGTooltip(data);}else if(tooltipData.Type==8)//ChartDrawSVG 新版本
|
|
14705
|
-
{this.UpdateChartDrawSVGV2Tooltip(data);}
|
|
14708
|
+
{this.UpdateChartDrawSVGV2Tooltip(data);}else if(tooltipData.Type==9)//ChartKLineTable
|
|
14709
|
+
{this.UpdateChartKLineTableTooltip(data);}}else if(data.DataType==2)//更新实时行情数据
|
|
14706
14710
|
{this.UpdateRealtimeHQTooltip(data);}else if(data.DataType==3)//报价列表
|
|
14707
14711
|
{var tooltipData=data.Tooltip;if(!tooltipData)return;if(tooltipData.Type==2)//报价列表表头图标提示信息
|
|
14708
14712
|
{this.ReportHeaderIconTooltip(data);}else if(tooltipData.Type==1)//单元格截断内容
|
|
@@ -14713,7 +14717,7 @@ this.UpdateKLineToolitp=function(data){var tooltipData=data.Tooltip;var symbol=d
|
|
|
14713
14717
|
var bIndexKLine=false;if(tooltipData.ChartPaint.Name=="Overlay-KLine"){symbol=tooltipData.ChartPaint.Symbol;name=tooltipData.ChartPaint.Title;bOverlay=true;}else if(tooltipData.ChartPaint.Name=="DRAWKLINE"){symbol=tooltipData.ChartPaint.Symbol;name=tooltipData.ChartPaint.Title;bIndexKLine=true;}var kItem={Symbol:symbol,Name:name,Item:CloneData(tooltipData.Data),IsOverlay:bOverlay,IsIndexKLine:bIndexKLine};var strKItem=(0,_stringify2.default)(kItem);var bUpdata=false;if(this.KItemCacheID!=strKItem)//数据变动的才更新
|
|
14714
14718
|
{this.KItemCache=kItem;this.KItemCacheID=strKItem;this.AryText=this.GetFormatKLineTooltipText(this.KItemCache);bUpdata=true;}if(bUpdata){this.UpdateTableDOM();}this.ShowTooltip(data);};//ChartDrawSVG 老版本 单行
|
|
14715
14719
|
this.UpdateChartDrawSVGTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Item||!tooltipData.Data.Item.Tooltip)return;var item=tooltipData.Data.Item.Tooltip;var aryText=[];var rowItem={Text:"",HTMLTitle:item.Text,Color:this.ValueColor,IsMergeCell:true};aryText.push(rowItem);this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};//ChartDrawSVG 新版本
|
|
14716
|
-
this.UpdateChartDrawSVGV2Tooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Item||!tooltipData.Data.Item.Tooltip)return;var aryData=tooltipData.Data.Item.Tooltip.AryText;if(!IFrameSplitOperator.IsNonEmptyArray(aryData))return;var aryText=[];for(var i=0;i<aryData.length;++i){var item=aryData[i];var rowItem={Title:"",Text:"",Color:this.ValueColor,ClassName:this.ValueAlign.MarginLeft};if(item.TextColor)rowItem.Color=item.TextColor;if(item.Title)rowItem.Title=item.Title;if(item.Text)rowItem.Text=item.Text;aryText.push(rowItem);}this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};//交易指标
|
|
14720
|
+
this.UpdateChartDrawSVGV2Tooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Item||!tooltipData.Data.Item.Tooltip)return;var aryData=tooltipData.Data.Item.Tooltip.AryText;if(!IFrameSplitOperator.IsNonEmptyArray(aryData))return;var aryText=[];for(var i=0;i<aryData.length;++i){var item=aryData[i];var rowItem={Title:"",Text:"",Color:this.ValueColor,ClassName:this.ValueAlign.MarginLeft};if(item.TextColor)rowItem.Color=item.TextColor;if(item.Title)rowItem.Title=item.Title;if(item.Text)rowItem.Text=item.Text;aryText.push(rowItem);}this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};this.UpdateChartKLineTableTooltip=function(data){this.UpdateChartDrawSVGV2Tooltip(data);};//交易指标
|
|
14717
14721
|
this.UpdateTradeIndexTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Data)return;var item=tooltipData.Data.Data;var kItem=item.KData;var aryText=[];var rowItem={Title:"日期",Text:IFrameSplitOperator.FormatDateString(kItem.Date,"YYYY-MM-DD"),Color:this.ValueColor};aryText.push(rowItem);if(IFrameSplitOperator.IsNumber(kItem.Time)){var format="HH:MM";var rowItem={Title:"时间",Text:IFrameSplitOperator.FormatTimeString(kItem.Time,format),Color:this.ValueColor};aryText.push(rowItem);}var rowItem={Title:"指标名称:",Text:''+item.Name+item.Param,Color:this.ValueColor};aryText.push(rowItem);var rowItem={Title:"买卖方向:",Text:''+(item.Type==1?"买入":"卖出"),Color:item.Type==1?this.UpColor:this.DownColor};aryText.push(rowItem);var rowItem={};this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};//分时图异动信息
|
|
14718
14722
|
this.UpdateMinuteInfoTooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Data||!tooltipData.Data.Data.Item)return;var item=tooltipData.Data.Data.Item;var aryText=[];var rowItem={Title:"日期",Text:IFrameSplitOperator.FormatDateString(item.Date,"YYYY-MM-DD"),Color:this.ValueColor};aryText.push(rowItem);var format="HH:MM";var rowItem={Title:"时间",Text:IFrameSplitOperator.FormatTimeString(item.Time,format),Color:this.ValueColor};aryText.push(rowItem);var rowItem={Title:"异动",Text:item.Title,Color:this.ValueColor};aryText.push(rowItem);this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};//ChartMultiSVGIconV2 图标信息
|
|
14719
14723
|
this.UpdatMultiSVGIconV2Tooltip=function(data){var tooltipData=data.Tooltip;if(!tooltipData.Data||!tooltipData.Data.Item)return;var item=tooltipData.Data.Item;var aryText=[];if(item&&IFrameSplitOperator.IsObject(item.Text)){var tooltipData=item.Text;if(IFrameSplitOperator.IsNonEmptyArray(tooltipData.AryText)){for(var i=0;i<tooltipData.AryText.length;++i){var tooltipItem=tooltipData.AryText[i];var textItem={Title:tooltipItem.Title,Text:tooltipItem.Text,Color:this.ValueColor};if(tooltipItem.Color)textItem.Color=tooltipItem.Color;if(tooltipItem.Align=="Left")tooltipItem.ClassName=this.ValueAlign.Left;aryText.push(tooltipItem);}}}else{var rowItem={Text:"",HTMLTitle:item.Text,Color:this.ValueColor,IsMergeCell:true};aryText.push(rowItem);}this.AryText=aryText;this.UpdateTableDOM();this.ShowTooltip(data);};//ChartOX 信息
|
|
@@ -14885,7 +14889,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
14885
14889
|
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);};}/********************************************************************************
|
|
14886
14890
|
* 版本信息输出
|
|
14887
14891
|
*
|
|
14888
|
-
*/var HQCHART_VERSION="1.1.
|
|
14892
|
+
*/var HQCHART_VERSION="1.1.14634";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();//把给外界调用的方法暴露出来
|
|
14889
14893
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
14890
14894
|
// BaseIndex:BaseIndex,
|
|
14891
14895
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -1182,6 +1182,10 @@ function JSFloatTooltip()
|
|
|
1182
1182
|
{
|
|
1183
1183
|
this.UpdateChartDrawSVGV2Tooltip(data);
|
|
1184
1184
|
}
|
|
1185
|
+
else if (tooltipData.Type==9) //ChartKLineTable
|
|
1186
|
+
{
|
|
1187
|
+
this.UpdateChartKLineTableTooltip(data);
|
|
1188
|
+
}
|
|
1185
1189
|
|
|
1186
1190
|
}
|
|
1187
1191
|
else if (data.DataType==2) //更新实时行情数据
|
|
@@ -1327,6 +1331,12 @@ function JSFloatTooltip()
|
|
|
1327
1331
|
|
|
1328
1332
|
this.ShowTooltip(data);
|
|
1329
1333
|
}
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
this.UpdateChartKLineTableTooltip=function(data)
|
|
1337
|
+
{
|
|
1338
|
+
this.UpdateChartDrawSVGV2Tooltip(data);
|
|
1339
|
+
}
|
|
1330
1340
|
|
|
1331
1341
|
//交易指标
|
|
1332
1342
|
this.UpdateTradeIndexTooltip=function(data)
|
|
@@ -22243,6 +22243,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
22243
22243
|
if (config.TextColor) chart.TextColor=config.TextColor;
|
|
22244
22244
|
if (config.BorderColor) chart.BorderColor=config.BorderColor;
|
|
22245
22245
|
if (IFrameSplitOperator.IsNumber(config.RowNamePosition)) chart.RowNamePosition=config.RowNamePosition;
|
|
22246
|
+
if (IFrameSplitOperator.IsNumber(config.RowHeightType)) chart.RowHeightType=config.RowHeightType;
|
|
22246
22247
|
|
|
22247
22248
|
if (config.ItemMergin)
|
|
22248
22249
|
{
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -8052,6 +8052,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
8052
8052
|
return;
|
|
8053
8053
|
}
|
|
8054
8054
|
}
|
|
8055
|
+
else if (toolTip.Type==9) //ChartKLineTable
|
|
8056
|
+
{
|
|
8057
|
+
if (toolTip.Data.Item && toolTip.Data.Item.Tooltip && this.FloatTooltip)
|
|
8058
|
+
{
|
|
8059
|
+
this.DrawFloatTooltip({X:x, Y:y, YMove:20/pixelTatio}, toolTip);
|
|
8060
|
+
bHideFloatToolip=false;
|
|
8061
|
+
return;
|
|
8062
|
+
}
|
|
8063
|
+
}
|
|
8055
8064
|
|
|
8056
8065
|
|
|
8057
8066
|
if (bHideFloatToolip) this.HideFloatTooltip();
|
|
@@ -32613,6 +32622,7 @@ function ChartKLineTable()
|
|
|
32613
32622
|
this.AryTableData=[];
|
|
32614
32623
|
this.MapCache=null; //key=date/date-time value={ Date:, Time:, Data:[ ] }
|
|
32615
32624
|
this.GetKValue=ChartData.GetKValue;
|
|
32625
|
+
this.AryCellRect=[]; //保存单元格信息
|
|
32616
32626
|
|
|
32617
32627
|
this.BuildCacheData=function()
|
|
32618
32628
|
{
|
|
@@ -32672,6 +32682,7 @@ function ChartKLineTable()
|
|
|
32672
32682
|
|
|
32673
32683
|
this.Draw=function()
|
|
32674
32684
|
{
|
|
32685
|
+
this.AryCellRect=[];
|
|
32675
32686
|
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
32676
32687
|
if (this.IsShowIndexTitleOnly()) return;
|
|
32677
32688
|
if (this.IsHideScriptIndex()) return;
|
|
@@ -32785,7 +32796,7 @@ function ChartKLineTable()
|
|
|
32785
32796
|
|
|
32786
32797
|
if (this.BGColor)
|
|
32787
32798
|
{
|
|
32788
|
-
var rtRightBG={Left:border.RightEx, Top:border.
|
|
32799
|
+
var rtRightBG={Left:border.RightEx, Top:border.Top, Right:border.ChartWidth, Bottom:border.Bottom };
|
|
32789
32800
|
rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;
|
|
32790
32801
|
rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;
|
|
32791
32802
|
this.Canvas.fillStyle=this.BGColor;
|
|
@@ -32826,9 +32837,11 @@ function ChartKLineTable()
|
|
|
32826
32837
|
var x=left,y=top, width=right-left;
|
|
32827
32838
|
var yOffset=3;
|
|
32828
32839
|
if (this.ItemMergin.YOffset) yOffset=this.ItemMergin.YOffset;
|
|
32829
|
-
for(var i=0;i<data.Data.length
|
|
32840
|
+
for(var i=0; i<data.Data.length; ++i, y+=this.RowHeight)
|
|
32830
32841
|
{
|
|
32831
32842
|
var item=data.Data[i];
|
|
32843
|
+
if (!item) continue;
|
|
32844
|
+
|
|
32832
32845
|
var rtBG={Left:x, Top:y, Right:right, Height:this.RowHeight, Width:width };
|
|
32833
32846
|
rtBG.Bottom=rtBG.Top+this.RowHeight;
|
|
32834
32847
|
|
|
@@ -32873,20 +32886,27 @@ function ChartKLineTable()
|
|
|
32873
32886
|
}
|
|
32874
32887
|
}
|
|
32875
32888
|
|
|
32889
|
+
if (rtBG.Width>5)
|
|
32890
|
+
{
|
|
32891
|
+
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, SubCell:subItem, SubIndex:j, Tooltip:subItem.Tooltip, Type:2 }, Rect:rtBG });
|
|
32892
|
+
}
|
|
32893
|
+
|
|
32876
32894
|
xCell+=subCellWidth;
|
|
32877
32895
|
}
|
|
32878
32896
|
}
|
|
32879
32897
|
else
|
|
32880
32898
|
{
|
|
32881
|
-
if (item
|
|
32899
|
+
if (item.BGColor)
|
|
32882
32900
|
{
|
|
32883
32901
|
this.Canvas.fillStyle=item.BGColor;
|
|
32884
32902
|
this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
|
|
32885
32903
|
}
|
|
32886
32904
|
|
|
32887
|
-
if (item
|
|
32905
|
+
if (item.Text && rtBG.Width>10)
|
|
32888
32906
|
{
|
|
32889
|
-
this.Canvas.fillStyle=item.Color;
|
|
32907
|
+
if (item.Color) this.Canvas.fillStyle=item.Color;
|
|
32908
|
+
else this.Canvas.fillStyle=this.TextColor;
|
|
32909
|
+
|
|
32890
32910
|
this.Canvas.textBaseline='bottom';
|
|
32891
32911
|
var yText=rtBG.Bottom-yOffset;
|
|
32892
32912
|
|
|
@@ -32906,9 +32926,14 @@ function ChartKLineTable()
|
|
|
32906
32926
|
this.Canvas.fillText(item.Text,rtBG.Left+2,yText, width-4);
|
|
32907
32927
|
}
|
|
32908
32928
|
}
|
|
32929
|
+
|
|
32930
|
+
if (rtBG.Width>5)
|
|
32931
|
+
{
|
|
32932
|
+
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, Tooltip:item.Tooltip, Type:1 }, Rect:rtBG });
|
|
32933
|
+
}
|
|
32909
32934
|
}
|
|
32910
32935
|
|
|
32911
|
-
|
|
32936
|
+
|
|
32912
32937
|
}
|
|
32913
32938
|
}
|
|
32914
32939
|
|
|
@@ -32942,6 +32967,30 @@ function ChartKLineTable()
|
|
|
32942
32967
|
{
|
|
32943
32968
|
return {Min:0, Max:this.RowCount};
|
|
32944
32969
|
}
|
|
32970
|
+
|
|
32971
|
+
this.GetTooltipData=function(x,y,tooltip)
|
|
32972
|
+
{
|
|
32973
|
+
if (!this.IsShow) return false;
|
|
32974
|
+
|
|
32975
|
+
for(var i=0;i<this.AryCellRect.length;++i)
|
|
32976
|
+
{
|
|
32977
|
+
var item=this.AryCellRect[i];
|
|
32978
|
+
if (!item.Rect) continue;
|
|
32979
|
+
|
|
32980
|
+
var rect=item.Rect;
|
|
32981
|
+
if (x>=rect.Left && x<=rect.Right && y>=rect.Top && y<=rect.Bottom)
|
|
32982
|
+
{
|
|
32983
|
+
var data=item.Item;
|
|
32984
|
+
JSConsole.Chart.Log('[ChartKLineTable::GetTooltipData] cell', item);
|
|
32985
|
+
tooltip.Data={ Rect:item.Rect, Item:data };
|
|
32986
|
+
tooltip.ChartPaint=this;
|
|
32987
|
+
tooltip.Type=9; //ChartKLineTable
|
|
32988
|
+
return true;
|
|
32989
|
+
}
|
|
32990
|
+
}
|
|
32991
|
+
|
|
32992
|
+
return false;
|
|
32993
|
+
}
|
|
32945
32994
|
}
|
|
32946
32995
|
|
|
32947
32996
|
//表格
|
|
@@ -12148,6 +12148,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
12148
12148
|
return;
|
|
12149
12149
|
}
|
|
12150
12150
|
}
|
|
12151
|
+
else if (toolTip.Type==9) //ChartKLineTable
|
|
12152
|
+
{
|
|
12153
|
+
if (toolTip.Data.Item && toolTip.Data.Item.Tooltip && this.FloatTooltip)
|
|
12154
|
+
{
|
|
12155
|
+
this.DrawFloatTooltip({X:x, Y:y, YMove:20/pixelTatio}, toolTip);
|
|
12156
|
+
bHideFloatToolip=false;
|
|
12157
|
+
return;
|
|
12158
|
+
}
|
|
12159
|
+
}
|
|
12151
12160
|
|
|
12152
12161
|
|
|
12153
12162
|
if (bHideFloatToolip) this.HideFloatTooltip();
|
|
@@ -36709,6 +36718,7 @@ function ChartKLineTable()
|
|
|
36709
36718
|
this.AryTableData=[];
|
|
36710
36719
|
this.MapCache=null; //key=date/date-time value={ Date:, Time:, Data:[ ] }
|
|
36711
36720
|
this.GetKValue=ChartData.GetKValue;
|
|
36721
|
+
this.AryCellRect=[]; //保存单元格信息
|
|
36712
36722
|
|
|
36713
36723
|
this.BuildCacheData=function()
|
|
36714
36724
|
{
|
|
@@ -36768,6 +36778,7 @@ function ChartKLineTable()
|
|
|
36768
36778
|
|
|
36769
36779
|
this.Draw=function()
|
|
36770
36780
|
{
|
|
36781
|
+
this.AryCellRect=[];
|
|
36771
36782
|
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
36772
36783
|
if (this.IsShowIndexTitleOnly()) return;
|
|
36773
36784
|
if (this.IsHideScriptIndex()) return;
|
|
@@ -36881,7 +36892,7 @@ function ChartKLineTable()
|
|
|
36881
36892
|
|
|
36882
36893
|
if (this.BGColor)
|
|
36883
36894
|
{
|
|
36884
|
-
var rtRightBG={Left:border.RightEx, Top:border.
|
|
36895
|
+
var rtRightBG={Left:border.RightEx, Top:border.Top, Right:border.ChartWidth, Bottom:border.Bottom };
|
|
36885
36896
|
rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;
|
|
36886
36897
|
rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;
|
|
36887
36898
|
this.Canvas.fillStyle=this.BGColor;
|
|
@@ -36922,9 +36933,11 @@ function ChartKLineTable()
|
|
|
36922
36933
|
var x=left,y=top, width=right-left;
|
|
36923
36934
|
var yOffset=3;
|
|
36924
36935
|
if (this.ItemMergin.YOffset) yOffset=this.ItemMergin.YOffset;
|
|
36925
|
-
for(var i=0;i<data.Data.length
|
|
36936
|
+
for(var i=0; i<data.Data.length; ++i, y+=this.RowHeight)
|
|
36926
36937
|
{
|
|
36927
36938
|
var item=data.Data[i];
|
|
36939
|
+
if (!item) continue;
|
|
36940
|
+
|
|
36928
36941
|
var rtBG={Left:x, Top:y, Right:right, Height:this.RowHeight, Width:width };
|
|
36929
36942
|
rtBG.Bottom=rtBG.Top+this.RowHeight;
|
|
36930
36943
|
|
|
@@ -36969,20 +36982,27 @@ function ChartKLineTable()
|
|
|
36969
36982
|
}
|
|
36970
36983
|
}
|
|
36971
36984
|
|
|
36985
|
+
if (rtBG.Width>5)
|
|
36986
|
+
{
|
|
36987
|
+
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, SubCell:subItem, SubIndex:j, Tooltip:subItem.Tooltip, Type:2 }, Rect:rtBG });
|
|
36988
|
+
}
|
|
36989
|
+
|
|
36972
36990
|
xCell+=subCellWidth;
|
|
36973
36991
|
}
|
|
36974
36992
|
}
|
|
36975
36993
|
else
|
|
36976
36994
|
{
|
|
36977
|
-
if (item
|
|
36995
|
+
if (item.BGColor)
|
|
36978
36996
|
{
|
|
36979
36997
|
this.Canvas.fillStyle=item.BGColor;
|
|
36980
36998
|
this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
|
|
36981
36999
|
}
|
|
36982
37000
|
|
|
36983
|
-
if (item
|
|
37001
|
+
if (item.Text && rtBG.Width>10)
|
|
36984
37002
|
{
|
|
36985
|
-
this.Canvas.fillStyle=item.Color;
|
|
37003
|
+
if (item.Color) this.Canvas.fillStyle=item.Color;
|
|
37004
|
+
else this.Canvas.fillStyle=this.TextColor;
|
|
37005
|
+
|
|
36986
37006
|
this.Canvas.textBaseline='bottom';
|
|
36987
37007
|
var yText=rtBG.Bottom-yOffset;
|
|
36988
37008
|
|
|
@@ -37002,9 +37022,14 @@ function ChartKLineTable()
|
|
|
37002
37022
|
this.Canvas.fillText(item.Text,rtBG.Left+2,yText, width-4);
|
|
37003
37023
|
}
|
|
37004
37024
|
}
|
|
37025
|
+
|
|
37026
|
+
if (rtBG.Width>5)
|
|
37027
|
+
{
|
|
37028
|
+
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, Tooltip:item.Tooltip, Type:1 }, Rect:rtBG });
|
|
37029
|
+
}
|
|
37005
37030
|
}
|
|
37006
37031
|
|
|
37007
|
-
|
|
37032
|
+
|
|
37008
37033
|
}
|
|
37009
37034
|
}
|
|
37010
37035
|
|
|
@@ -37038,6 +37063,30 @@ function ChartKLineTable()
|
|
|
37038
37063
|
{
|
|
37039
37064
|
return {Min:0, Max:this.RowCount};
|
|
37040
37065
|
}
|
|
37066
|
+
|
|
37067
|
+
this.GetTooltipData=function(x,y,tooltip)
|
|
37068
|
+
{
|
|
37069
|
+
if (!this.IsShow) return false;
|
|
37070
|
+
|
|
37071
|
+
for(var i=0;i<this.AryCellRect.length;++i)
|
|
37072
|
+
{
|
|
37073
|
+
var item=this.AryCellRect[i];
|
|
37074
|
+
if (!item.Rect) continue;
|
|
37075
|
+
|
|
37076
|
+
var rect=item.Rect;
|
|
37077
|
+
if (x>=rect.Left && x<=rect.Right && y>=rect.Top && y<=rect.Bottom)
|
|
37078
|
+
{
|
|
37079
|
+
var data=item.Item;
|
|
37080
|
+
JSConsole.Chart.Log('[ChartKLineTable::GetTooltipData] cell', item);
|
|
37081
|
+
tooltip.Data={ Rect:item.Rect, Item:data };
|
|
37082
|
+
tooltip.ChartPaint=this;
|
|
37083
|
+
tooltip.Type=9; //ChartKLineTable
|
|
37084
|
+
return true;
|
|
37085
|
+
}
|
|
37086
|
+
}
|
|
37087
|
+
|
|
37088
|
+
return false;
|
|
37089
|
+
}
|
|
37041
37090
|
}
|
|
37042
37091
|
|
|
37043
37092
|
//表格
|
|
@@ -126693,6 +126742,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
126693
126742
|
if (config.TextColor) chart.TextColor=config.TextColor;
|
|
126694
126743
|
if (config.BorderColor) chart.BorderColor=config.BorderColor;
|
|
126695
126744
|
if (IFrameSplitOperator.IsNumber(config.RowNamePosition)) chart.RowNamePosition=config.RowNamePosition;
|
|
126745
|
+
if (IFrameSplitOperator.IsNumber(config.RowHeightType)) chart.RowHeightType=config.RowHeightType;
|
|
126696
126746
|
|
|
126697
126747
|
if (config.ItemMergin)
|
|
126698
126748
|
{
|
|
@@ -146631,7 +146681,7 @@ function ScrollBarBGChart()
|
|
|
146631
146681
|
|
|
146632
146682
|
|
|
146633
146683
|
|
|
146634
|
-
var HQCHART_VERSION="1.1.
|
|
146684
|
+
var HQCHART_VERSION="1.1.14634";
|
|
146635
146685
|
|
|
146636
146686
|
function PrintHQChartVersion()
|
|
146637
146687
|
{
|
|
@@ -12192,6 +12192,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
12192
12192
|
return;
|
|
12193
12193
|
}
|
|
12194
12194
|
}
|
|
12195
|
+
else if (toolTip.Type==9) //ChartKLineTable
|
|
12196
|
+
{
|
|
12197
|
+
if (toolTip.Data.Item && toolTip.Data.Item.Tooltip && this.FloatTooltip)
|
|
12198
|
+
{
|
|
12199
|
+
this.DrawFloatTooltip({X:x, Y:y, YMove:20/pixelTatio}, toolTip);
|
|
12200
|
+
bHideFloatToolip=false;
|
|
12201
|
+
return;
|
|
12202
|
+
}
|
|
12203
|
+
}
|
|
12195
12204
|
|
|
12196
12205
|
|
|
12197
12206
|
if (bHideFloatToolip) this.HideFloatTooltip();
|
|
@@ -36753,6 +36762,7 @@ function ChartKLineTable()
|
|
|
36753
36762
|
this.AryTableData=[];
|
|
36754
36763
|
this.MapCache=null; //key=date/date-time value={ Date:, Time:, Data:[ ] }
|
|
36755
36764
|
this.GetKValue=ChartData.GetKValue;
|
|
36765
|
+
this.AryCellRect=[]; //保存单元格信息
|
|
36756
36766
|
|
|
36757
36767
|
this.BuildCacheData=function()
|
|
36758
36768
|
{
|
|
@@ -36812,6 +36822,7 @@ function ChartKLineTable()
|
|
|
36812
36822
|
|
|
36813
36823
|
this.Draw=function()
|
|
36814
36824
|
{
|
|
36825
|
+
this.AryCellRect=[];
|
|
36815
36826
|
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
36816
36827
|
if (this.IsShowIndexTitleOnly()) return;
|
|
36817
36828
|
if (this.IsHideScriptIndex()) return;
|
|
@@ -36925,7 +36936,7 @@ function ChartKLineTable()
|
|
|
36925
36936
|
|
|
36926
36937
|
if (this.BGColor)
|
|
36927
36938
|
{
|
|
36928
|
-
var rtRightBG={Left:border.RightEx, Top:border.
|
|
36939
|
+
var rtRightBG={Left:border.RightEx, Top:border.Top, Right:border.ChartWidth, Bottom:border.Bottom };
|
|
36929
36940
|
rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;
|
|
36930
36941
|
rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;
|
|
36931
36942
|
this.Canvas.fillStyle=this.BGColor;
|
|
@@ -36966,9 +36977,11 @@ function ChartKLineTable()
|
|
|
36966
36977
|
var x=left,y=top, width=right-left;
|
|
36967
36978
|
var yOffset=3;
|
|
36968
36979
|
if (this.ItemMergin.YOffset) yOffset=this.ItemMergin.YOffset;
|
|
36969
|
-
for(var i=0;i<data.Data.length
|
|
36980
|
+
for(var i=0; i<data.Data.length; ++i, y+=this.RowHeight)
|
|
36970
36981
|
{
|
|
36971
36982
|
var item=data.Data[i];
|
|
36983
|
+
if (!item) continue;
|
|
36984
|
+
|
|
36972
36985
|
var rtBG={Left:x, Top:y, Right:right, Height:this.RowHeight, Width:width };
|
|
36973
36986
|
rtBG.Bottom=rtBG.Top+this.RowHeight;
|
|
36974
36987
|
|
|
@@ -37013,20 +37026,27 @@ function ChartKLineTable()
|
|
|
37013
37026
|
}
|
|
37014
37027
|
}
|
|
37015
37028
|
|
|
37029
|
+
if (rtBG.Width>5)
|
|
37030
|
+
{
|
|
37031
|
+
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, SubCell:subItem, SubIndex:j, Tooltip:subItem.Tooltip, Type:2 }, Rect:rtBG });
|
|
37032
|
+
}
|
|
37033
|
+
|
|
37016
37034
|
xCell+=subCellWidth;
|
|
37017
37035
|
}
|
|
37018
37036
|
}
|
|
37019
37037
|
else
|
|
37020
37038
|
{
|
|
37021
|
-
if (item
|
|
37039
|
+
if (item.BGColor)
|
|
37022
37040
|
{
|
|
37023
37041
|
this.Canvas.fillStyle=item.BGColor;
|
|
37024
37042
|
this.Canvas.fillRect(rtBG.Left, rtBG.Top, rtBG.Width, rtBG.Height);
|
|
37025
37043
|
}
|
|
37026
37044
|
|
|
37027
|
-
if (item
|
|
37045
|
+
if (item.Text && rtBG.Width>10)
|
|
37028
37046
|
{
|
|
37029
|
-
this.Canvas.fillStyle=item.Color;
|
|
37047
|
+
if (item.Color) this.Canvas.fillStyle=item.Color;
|
|
37048
|
+
else this.Canvas.fillStyle=this.TextColor;
|
|
37049
|
+
|
|
37030
37050
|
this.Canvas.textBaseline='bottom';
|
|
37031
37051
|
var yText=rtBG.Bottom-yOffset;
|
|
37032
37052
|
|
|
@@ -37046,9 +37066,14 @@ function ChartKLineTable()
|
|
|
37046
37066
|
this.Canvas.fillText(item.Text,rtBG.Left+2,yText, width-4);
|
|
37047
37067
|
}
|
|
37048
37068
|
}
|
|
37069
|
+
|
|
37070
|
+
if (rtBG.Width>5)
|
|
37071
|
+
{
|
|
37072
|
+
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, Tooltip:item.Tooltip, Type:1 }, Rect:rtBG });
|
|
37073
|
+
}
|
|
37049
37074
|
}
|
|
37050
37075
|
|
|
37051
|
-
|
|
37076
|
+
|
|
37052
37077
|
}
|
|
37053
37078
|
}
|
|
37054
37079
|
|
|
@@ -37082,6 +37107,30 @@ function ChartKLineTable()
|
|
|
37082
37107
|
{
|
|
37083
37108
|
return {Min:0, Max:this.RowCount};
|
|
37084
37109
|
}
|
|
37110
|
+
|
|
37111
|
+
this.GetTooltipData=function(x,y,tooltip)
|
|
37112
|
+
{
|
|
37113
|
+
if (!this.IsShow) return false;
|
|
37114
|
+
|
|
37115
|
+
for(var i=0;i<this.AryCellRect.length;++i)
|
|
37116
|
+
{
|
|
37117
|
+
var item=this.AryCellRect[i];
|
|
37118
|
+
if (!item.Rect) continue;
|
|
37119
|
+
|
|
37120
|
+
var rect=item.Rect;
|
|
37121
|
+
if (x>=rect.Left && x<=rect.Right && y>=rect.Top && y<=rect.Bottom)
|
|
37122
|
+
{
|
|
37123
|
+
var data=item.Item;
|
|
37124
|
+
JSConsole.Chart.Log('[ChartKLineTable::GetTooltipData] cell', item);
|
|
37125
|
+
tooltip.Data={ Rect:item.Rect, Item:data };
|
|
37126
|
+
tooltip.ChartPaint=this;
|
|
37127
|
+
tooltip.Type=9; //ChartKLineTable
|
|
37128
|
+
return true;
|
|
37129
|
+
}
|
|
37130
|
+
}
|
|
37131
|
+
|
|
37132
|
+
return false;
|
|
37133
|
+
}
|
|
37085
37134
|
}
|
|
37086
37135
|
|
|
37087
37136
|
//表格
|
|
@@ -126737,6 +126786,7 @@ function ScriptIndex(name,script,args,option)
|
|
|
126737
126786
|
if (config.TextColor) chart.TextColor=config.TextColor;
|
|
126738
126787
|
if (config.BorderColor) chart.BorderColor=config.BorderColor;
|
|
126739
126788
|
if (IFrameSplitOperator.IsNumber(config.RowNamePosition)) chart.RowNamePosition=config.RowNamePosition;
|
|
126789
|
+
if (IFrameSplitOperator.IsNumber(config.RowHeightType)) chart.RowHeightType=config.RowHeightType;
|
|
126740
126790
|
|
|
126741
126791
|
if (config.ItemMergin)
|
|
126742
126792
|
{
|
|
@@ -154150,6 +154200,10 @@ function JSFloatTooltip()
|
|
|
154150
154200
|
{
|
|
154151
154201
|
this.UpdateChartDrawSVGV2Tooltip(data);
|
|
154152
154202
|
}
|
|
154203
|
+
else if (tooltipData.Type==9) //ChartKLineTable
|
|
154204
|
+
{
|
|
154205
|
+
this.UpdateChartKLineTableTooltip(data);
|
|
154206
|
+
}
|
|
154153
154207
|
|
|
154154
154208
|
}
|
|
154155
154209
|
else if (data.DataType==2) //更新实时行情数据
|
|
@@ -154295,6 +154349,12 @@ function JSFloatTooltip()
|
|
|
154295
154349
|
|
|
154296
154350
|
this.ShowTooltip(data);
|
|
154297
154351
|
}
|
|
154352
|
+
|
|
154353
|
+
|
|
154354
|
+
this.UpdateChartKLineTableTooltip=function(data)
|
|
154355
|
+
{
|
|
154356
|
+
this.UpdateChartDrawSVGV2Tooltip(data);
|
|
154357
|
+
}
|
|
154298
154358
|
|
|
154299
154359
|
//交易指标
|
|
154300
154360
|
this.UpdateTradeIndexTooltip=function(data)
|
|
@@ -157343,7 +157403,7 @@ function HQChartScriptWorker()
|
|
|
157343
157403
|
|
|
157344
157404
|
|
|
157345
157405
|
|
|
157346
|
-
var HQCHART_VERSION="1.1.
|
|
157406
|
+
var HQCHART_VERSION="1.1.14634";
|
|
157347
157407
|
|
|
157348
157408
|
function PrintHQChartVersion()
|
|
157349
157409
|
{
|