hqchart 1.1.14864 → 1.1.14874

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.
@@ -7902,6 +7902,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7902
7902
 
7903
7903
  this.DestroyPopMenu();
7904
7904
 
7905
+ if (this.DestroyPopMinuteChart) this.DestroyPopMinuteChart();
7906
+
7905
7907
  this.StopLatestPointFlash();
7906
7908
 
7907
7909
  document.oncontextmenu=null;
@@ -18655,6 +18657,7 @@ function AverageWidthFrame()
18655
18657
  if (IFrameSplitOperator.IsNumber(item.Margin.Bottom)) lineInfo.Margin.Bottom=item.Margin.Bottom;
18656
18658
  }
18657
18659
  if (IFrameSplitOperator.IsNumber(item.YOffset)) lineInfo.YOffset=item.YOffset;
18660
+ if (IFrameSplitOperator.IsNumber(item.Align)) lineInfo.Align=item.Align;
18658
18661
 
18659
18662
  lineInfo.Height=lineHeight+lineInfo.Margin.Top+lineInfo.Margin.Bottom;
18660
18663
 
@@ -18692,13 +18695,17 @@ function AverageWidthFrame()
18692
18695
 
18693
18696
  if (width<=0 || height<=0) return null;
18694
18697
 
18695
- return { Width:width, Height:height, AryLine:aryLine, Align:2 }; //Align 1=left 2=center 3=right
18698
+ var drawInfo={ Width:width, Height:height, AryLine:aryLine, Align:2 }; //Align 1=left 2=center 3=right
18699
+ if (IFrameSplitOperator.IsNumber(obj.Align)) drawInfo.Align=obj.Align;
18700
+
18701
+ return drawInfo;
18696
18702
  }
18697
18703
 
18698
18704
  //X轴底部文字多行输出
18699
18705
  this.DrawMultiLineVText=function(drawInfo)
18700
18706
  {
18701
18707
  var xLeft=drawInfo.XCenter-drawInfo.Width/2;
18708
+ if (drawInfo.Align==1) xLeft=drawInfo.XCenter;
18702
18709
  if (drawInfo.TextRightPrev!=null && drawInfo.TextRightPrev>xLeft)
18703
18710
  return false;
18704
18711
 
@@ -18710,8 +18717,19 @@ function AverageWidthFrame()
18710
18717
  for(var i=0, j=0;i<drawInfo.AryLine.length;++i)
18711
18718
  {
18712
18719
  var lineItem=drawInfo.AryLine[i];
18713
- if (lineItem.Align==2)
18714
- var xLeft=drawInfo.XCenter-lineItem.Width/2;
18720
+ if (drawInfo.Align==1)
18721
+ {
18722
+ var xLeft=drawInfo.XCenter-drawInfo.Width/2;
18723
+ if (lineItem.Align==1) xLeft=drawInfo.XCenter;
18724
+ else if (lineItem.Align==2) xLeft=drawInfo.XCenter+drawInfo.Width-lineItem.Width;
18725
+ }
18726
+ else
18727
+ {
18728
+ var xLeft=drawInfo.XCenter-lineItem.Width/2;
18729
+ if (lineItem.Align==1) xLeft=drawInfo.XCenter-drawInfo.Width/2;
18730
+ else if (lineItem.Align==2) xLeft=drawInfo.XCenter+drawInfo.Width/2-lineItem.Width;
18731
+ }
18732
+
18715
18733
  if (xLeft<1) xLeft=1;
18716
18734
  yText+=lineItem.Height;
18717
18735
  for(j=0;j<lineItem.AryText.length;++j)
@@ -24023,7 +24041,7 @@ function OverlayKLineFrame()
24023
24041
 
24024
24042
  var text=item.Message[1];
24025
24043
  if (Array.isArray(item.Message[1])) text=item.Message[1][0];
24026
-
24044
+ this.Canvas.fillStyle=item.TextColor;
24027
24045
  if (rightExtendText && rightExtendText.Align)
24028
24046
  {
24029
24047
  var textWidth=rightWidth;
@@ -24035,7 +24053,6 @@ function OverlayKLineFrame()
24035
24053
  {
24036
24054
  var xText=right+2;
24037
24055
  if (rightLine && rightLine.Width>0) xText+=rightLine.Width;
24038
- this.Canvas.fillStyle=item.TextColor;
24039
24056
  this.Canvas.textAlign="left";
24040
24057
  this.Canvas.fillText(text,xText,y);
24041
24058
  }
@@ -37866,6 +37883,7 @@ function ChartKLineTable()
37866
37883
 
37867
37884
  this.TextFont;
37868
37885
  this.TextColor='rgb(0,0,0)';
37886
+ this.Style=0; //0=全部窗口模式 1=顶部指定行数 2=底部指定行数;
37869
37887
 
37870
37888
  this.AryTableData=[];
37871
37889
  this.MapCache=null; //key=date/date-time value={ Date:, Time:, Data:[ ] }
@@ -37891,9 +37909,15 @@ function ChartKLineTable()
37891
37909
  {
37892
37910
  if (!this.BGColor) return;
37893
37911
 
37894
- if (this.BGColor)
37912
+ this.Canvas.fillStyle=this.BGColor;
37913
+ if ((this.Style===1 || this.Style===2) && this.RowHeightType==1)
37914
+ {
37915
+ var height=this.RowCount*this.RowHeight;
37916
+ height=Math.min(rtBG.Height,height);
37917
+ this.Canvas.fillRect(rtBG.Left+1, rtBG.Top, rtBG.Width-2, height);
37918
+ }
37919
+ else
37895
37920
  {
37896
- this.Canvas.fillStyle=this.BGColor;
37897
37921
  this.Canvas.fillRect(rtBG.Left+1, rtBG.Top, rtBG.Width-1, rtBG.Height);
37898
37922
  }
37899
37923
  }
@@ -37902,8 +37926,11 @@ function ChartKLineTable()
37902
37926
  {
37903
37927
  if (!this.BorderColor) return;
37904
37928
 
37929
+ var lineCount=30;
37930
+ if (this.Style===1 || this.Style===2) lineCount=this.RowCount+1;
37931
+
37905
37932
  var yLine=rtBG.Top;
37906
- for(var i=0;i<30;++i)
37933
+ for(var i=0;i<lineCount;++i)
37907
37934
  {
37908
37935
  this.Canvas.beginPath();
37909
37936
  this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));
@@ -37953,12 +37980,29 @@ function ChartKLineTable()
37953
37980
  var bottom=border.Bottom;
37954
37981
 
37955
37982
  //绘制背景
37956
- var rtBG={ Left:border.LeftEx, Top:top, Right:border.RightEx, Bottom:bottom };
37957
- rtBG.Width=rtBG.Right-rtBG.Left;
37958
- rtBG.Height=rtBG.Bottom-rtBG.Top;
37959
- this.DrawBG(rtBG);
37960
-
37983
+ if (this.Style===1)
37984
+ {
37985
+ var rtBG={ Left:border.LeftEx, Top:border.TopTitle, Right:border.RightEx, Bottom:border.TopEx };
37986
+ rtBG.Width=rtBG.Right-rtBG.Left;
37987
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
37988
+ }
37989
+ else if (this.Style===2)
37990
+ {
37991
+ var rtBG={ Left:border.LeftEx, Top:border.BottomEx, Right:border.RightEx, Bottom:border.Bottom };
37992
+ rtBG.Width=rtBG.Right-rtBG.Left;
37993
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
37994
+ top=rtBG.Top;
37995
+ }
37996
+ else
37997
+ {
37998
+ var rtBG={ Left:border.LeftEx, Top:top, Right:border.RightEx, Bottom:bottom };
37999
+ rtBG.Width=rtBG.Right-rtBG.Left;
38000
+ rtBG.Height=rtBG.Bottom-rtBG.Top;
38001
+ }
38002
+
37961
38003
  this.CalculateRowHeight(rtBG);
38004
+
38005
+ this.DrawBG(rtBG);
37962
38006
 
37963
38007
  var itemHeight=this.RowHeight;
37964
38008
  var itemWidth=dataWidth+distanceWidth;
@@ -37991,7 +38035,7 @@ function ChartKLineTable()
37991
38035
  if (!bDrawName) this.DrawRow(mapItem, top, bottom, left, right); //绘制一列
37992
38036
  }
37993
38037
 
37994
- if (this.RowNamePosition==3) this.DrawRightRowName();
38038
+ if (this.RowNamePosition==3) this.DrawRightRowName(rtBG);
37995
38039
 
37996
38040
  this.DrawBorder(rtBG);
37997
38041
  }
@@ -38038,20 +38082,51 @@ function ChartKLineTable()
38038
38082
  }
38039
38083
 
38040
38084
  //绘制右侧行名
38041
- this.DrawRightRowName=function()
38085
+ this.DrawRightRowName=function(rtBG)
38042
38086
  {
38043
38087
  var border=this.ChartFrame.GetBorder();
38044
38088
 
38045
38089
  if (this.BGColor)
38046
38090
  {
38047
- var rtRightBG={Left:border.RightEx, Top:border.Top, Right:border.ChartWidth, Bottom:border.Bottom };
38048
- rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;
38049
- rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;
38050
- this.Canvas.fillStyle=this.BGColor;
38051
- this.Canvas.fillRect(rtRightBG.Left+1, rtRightBG.Top, rtRightBG.Width-1, rtRightBG.Height);
38091
+ if (this.Style===1)
38092
+ {
38093
+ var height=this.RowCount*this.RowHeight;
38094
+ height=Math.min(rtBG.Height,height);
38095
+ var width=border.ChartWidth-rtBG.Right-2;
38096
+ var maxTextWidth=0;
38097
+ for(var i=0;i<this.RowName.length;++i)
38098
+ {
38099
+ var item=this.RowName[i];
38100
+ if (!item || !item.Name) continue;
38101
+
38102
+ var textWidth=this.Canvas.measureText(item.Name).width;
38103
+ if (textWidth>maxTextWidth) maxTextWidth=textWidth;
38104
+ }
38105
+ if (maxTextWidth>0)
38106
+ {
38107
+ maxTextWidth+=4;
38108
+ width=Math.min(width, maxTextWidth);
38109
+ }
38110
+
38111
+ var rtRightBG={Left:rtBG.Right+1, Top:rtBG.Top+1, Width:width, Height:height };
38112
+ rtRightBG.Right=rtRightBG.Left+rtRightBG.Width;
38113
+ rtRightBG.Bottom=rtRightBG.Top+rtRightBG.Height;
38114
+
38115
+
38116
+ this.Canvas.fillStyle=this.BGColor;
38117
+ this.Canvas.fillRect(rtRightBG.Left, rtRightBG.Top, rtRightBG.Width, rtRightBG.Height);
38118
+ }
38119
+ else
38120
+ {
38121
+ var rtRightBG={Left:border.RightEx, Top:border.Top, Right:border.ChartWidth, Bottom:border.Bottom };
38122
+ rtRightBG.Width=rtRightBG.Right-rtRightBG.Left;
38123
+ rtRightBG.Height=rtRightBG.Bottom-rtRightBG.Top;
38124
+ this.Canvas.fillStyle=this.BGColor;
38125
+ this.Canvas.fillRect(rtRightBG.Left+1, rtRightBG.Top, rtRightBG.Width-2, rtRightBG.Height);
38126
+ }
38052
38127
  }
38053
38128
 
38054
- var x=border.RightEx, y=border.TopTitle;
38129
+ var x=rtBG.Right, y=rtBG.Top;
38055
38130
  var yOffset=3;
38056
38131
  if (this.ItemMergin.YOffset) yOffset=this.ItemMergin.YOffset;
38057
38132
  for(var i=0;i<this.RowName.length;++i)
@@ -68399,9 +68474,14 @@ function IChartDrawPicture()
68399
68474
  pt.X=this.Frame.GetXFromIndex(item.XValue-data.DataOffset);
68400
68475
  pt.Y=this.Frame.GetYFromData(item.YValue);
68401
68476
  }
68477
+
68478
+ if (Path2DHelper.PtInPoint(x,y,pt,radius))
68479
+ return i;
68480
+ /*
68402
68481
  this.Canvas.beginPath();
68403
68482
  this.Canvas.arc(pt.X,pt.Y,radius,0,360);
68404
68483
  if (this.Canvas.isPointInPath(x,y)) return i;
68484
+ */
68405
68485
  }
68406
68486
 
68407
68487
  return -1;
@@ -68419,6 +68499,20 @@ function IChartDrawPicture()
68419
68499
  var pixel=GetDevicePixelRatio();
68420
68500
  lineWidth*=pixel;
68421
68501
  for(var i=0;i<this.LinePoint.length; ++i)
68502
+ {
68503
+ var item=this.LinePoint[i];
68504
+ var ptStart=item.Start;
68505
+ var ptEnd=item.End;
68506
+
68507
+ if (Path2DHelper.PtInLine(x, y, ptStart, ptEnd, lineWidth))
68508
+ {
68509
+ return i;
68510
+ }
68511
+ }
68512
+ return -1;
68513
+
68514
+ /*
68515
+ for(var i=0;i<this.LinePoint.length; ++i)
68422
68516
  {
68423
68517
  var item=this.LinePoint[i];
68424
68518
  var ptStart=item.Start;
@@ -68447,6 +68541,7 @@ function IChartDrawPicture()
68447
68541
  }
68448
68542
 
68449
68543
  return -1;
68544
+ */
68450
68545
  }
68451
68546
 
68452
68547
  //0-10 鼠标对应的点索引 100=鼠标在正个图形上 -1 鼠标不在图形上
@@ -71140,6 +71235,18 @@ function ChartDrawPictureRect()
71140
71235
  //点是否在线段上 水平线段
71141
71236
  this.IsPointInLine=function(aryPoint,x,y,option)
71142
71237
  {
71238
+ var lineWidth=5;
71239
+ var pixel=GetDevicePixelRatio();
71240
+ if (IFrameSplitOperator.IsPlusNumber(this.LineWidth) && this.LineWidth>lineWidth) lineWidth=this.LineWidth;
71241
+ if (option && IFrameSplitOperator.IsNumber(option.Zoom)) lineWidth+=option.Zoom;
71242
+ else if (this.Option && IFrameSplitOperator.IsNumber(this.Option.Zoom)) lineWidth+=this.Option.Zoom;
71243
+ lineWidth*=pixel;
71244
+ if (Path2DHelper.PtInLine(x,y,aryPoint[0], aryPoint[1], lineWidth))
71245
+ return true;
71246
+
71247
+ return false;
71248
+
71249
+ /*
71143
71250
  var radius=5;
71144
71251
  if (option && IFrameSplitOperator.IsNumber(option.Zoom)) radius+=option.Zoom;
71145
71252
  else if (this.Option && IFrameSplitOperator.IsNumber(this.Option.Zoom)) radius+=this.Option.Zoom;
@@ -71154,11 +71261,14 @@ function ChartDrawPictureRect()
71154
71261
  this.Canvas.closePath();
71155
71262
  if (this.Canvas.isPointInPath(x,y))
71156
71263
  return true;
71264
+ */
71157
71265
  }
71158
71266
 
71159
71267
  //垂直线段
71160
71268
  this.IsPointInLine2=function(aryPoint,x,y,option)
71161
71269
  {
71270
+ return this.IsPointInLine(aryPoint,x,y,option);
71271
+ /*
71162
71272
  var radius=5;
71163
71273
  if (option && IFrameSplitOperator.IsNumber(option.Zoom)) radius+=option.Zoom;
71164
71274
  else if (this.Option && IFrameSplitOperator.IsNumber(this.Option.Zoom)) radius+=this.Option.Zoom;
@@ -71173,6 +71283,7 @@ function ChartDrawPictureRect()
71173
71283
  this.Canvas.closePath();
71174
71284
  if (this.Canvas.isPointInPath(x,y))
71175
71285
  return true;
71286
+ */
71176
71287
  }
71177
71288
  }
71178
71289
 
@@ -84817,6 +84928,13 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84817
84928
  this.PopMinuteChart=null;
84818
84929
  }
84819
84930
 
84931
+ this.ClosePopMinuteChart=function()
84932
+ {
84933
+ if (!this.PopMinuteChart) return;
84934
+
84935
+ this.PopMinuteChart.Close();
84936
+ }
84937
+
84820
84938
  this.ShowMinuteChartDialog=function(data, x,y)
84821
84939
  {
84822
84940
  if (!this.PopMinuteChart) return;
@@ -87405,6 +87523,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
87405
87523
  //周期切换
87406
87524
  this.ChangePeriod=function(period,option)
87407
87525
  {
87526
+ this.ClosePopMinuteChart();
87527
+
87408
87528
  var oldData={ Period:this.Period, Right:this.Right, KLineDrawType:this.KLineDrawType, Symbol:this.Symbol};
87409
87529
 
87410
87530
  var isChangeKLineDrawType=false;
@@ -88963,6 +89083,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
88963
89083
  this.ClearIndexRunCount();
88964
89084
  this.UnlockCorssCursor();
88965
89085
  this.Frame.ClearYCoordinateMaxMin();
89086
+ this.ClosePopMinuteChart();
88966
89087
 
88967
89088
 
88968
89089
  this.Symbol=symbol;
@@ -107211,6 +107332,117 @@ function GetLocalTime(i) //得到标准时区的时间的函数
107211
107332
  return new Date(utcTime + 3600000 * i);
107212
107333
  }
107213
107334
 
107335
+ //图形路径方法
107336
+ function Path2DHelper() { }
107337
+ const PI2 = Math.PI * 2;
107338
+
107339
+ //点是否在线段上
107340
+ Path2DHelper.PtInLine=function(x, y, pt, pt2, lineWidth)
107341
+ {
107342
+ if (lineWidth<=0) return false;
107343
+
107344
+ var x0=pt.X, y0=pt.Y;
107345
+ var x1=pt2.X, y1=pt2.Y;
107346
+
107347
+ const _l = lineWidth;
107348
+ let _a = 0;
107349
+ let _b = x0;
107350
+
107351
+ // Quick reject
107352
+ if (
107353
+ (y > y0 + _l && y > y1 + _l)
107354
+ || (y < y0 - _l && y < y1 - _l)
107355
+ || (x > x0 + _l && x > x1 + _l)
107356
+ || (x < x0 - _l && x < x1 - _l)
107357
+ )
107358
+ {
107359
+ return false;
107360
+ }
107361
+
107362
+ if (x0 !== x1)
107363
+ {
107364
+ _a = (y0 - y1) / (x0 - x1);
107365
+ _b = (x0 * y1 - x1 * y0) / (x0 - x1);
107366
+ }
107367
+ else
107368
+ {
107369
+ return Math.abs(x - x0) <= _l / 2;
107370
+ }
107371
+
107372
+ const tmp = _a * x - y + _b;
107373
+ const _s = tmp * tmp / (_a * _a + 1);
107374
+ return _s <= _l / 2 * _l / 2;
107375
+ }
107376
+
107377
+ //点是否在圆点上
107378
+ Path2DHelper.PtInPoint=function(x,y, ptCenter, radius)
107379
+ {
107380
+ if (radius<=0) return false;
107381
+
107382
+ var cx=ptCenter.X;
107383
+ var cy=ptCenter.Y;
107384
+
107385
+ x -= cx;
107386
+ y -= cy;
107387
+ const d = Math.sqrt(x * x + y * y); //到圆心的距离
107388
+
107389
+ if (d>radius) return false;
107390
+
107391
+ return true;
107392
+ }
107393
+
107394
+ Path2DHelper.PtInArc=function(x, y, ptCenter, radius, startAngle, endAngle,lineWidth, anticlockwise)
107395
+ {
107396
+ if (lineWidth<=0) return false;
107397
+
107398
+ const _l = lineWidth;
107399
+ var cx=ptCenter.X;
107400
+ var cy=ptCenter.Y;
107401
+
107402
+ x -= cx;
107403
+ y -= cy;
107404
+ const d = Math.sqrt(x * x + y * y);
107405
+
107406
+ if ((d - _l > r) || (d + _l < r))
107407
+ return false;
107408
+
107409
+ // TODO
107410
+ if (Math.abs(startAngle - endAngle) % PI2 < 1e-4)
107411
+ {
107412
+ // Is a circle
107413
+ return true;
107414
+ }
107415
+
107416
+ if (anticlockwise)
107417
+ {
107418
+ const tmp = startAngle;
107419
+ startAngle = Path2DHelper.FormatRadian(endAngle);
107420
+ endAngle = Path2DHelper.FormatRadian(tmp);
107421
+ }
107422
+ else
107423
+ {
107424
+ startAngle = Path2DHelper.FormatRadian(startAngle);
107425
+ endAngle = Path2DHelper.FormatRadian(endAngle);
107426
+ }
107427
+
107428
+ if (startAngle > endAngle)
107429
+ endAngle += PI2;
107430
+
107431
+ var angle = Math.atan2(y, x);
107432
+ if (angle < 0)
107433
+ angle += PI2;
107434
+
107435
+ return (angle >= startAngle && angle <= endAngle) || (angle + PI2 >= startAngle && angle + PI2 <= endAngle);
107436
+ }
107437
+
107438
+ //统一弧度方向
107439
+ Path2DHelper.FormatRadian=function(angle)
107440
+ {
107441
+ angle%= PI2;
107442
+ if (angle<0) angle += PI2;
107443
+ return angle;
107444
+ }
107445
+
107214
107446
 
107215
107447
 
107216
107448
 
@@ -130301,6 +130533,9 @@ function OverlayScriptIndex(name,script,args,option)
130301
130533
  case SCRIPT_CHART_NAME.BASELINE_BAR:
130302
130534
  this.CreateBaseLineBar(hqChart,windowIndex,item,i);
130303
130535
  break;
130536
+ case SCRIPT_CHART_NAME.KLINE_TABLE:
130537
+ this.CreateKLineTable(hqChart,windowIndex,item,i);
130538
+ break;
130304
130539
  case "DRAWCOLORKLINE":
130305
130540
  this.CreateDrawColorKLine(hqChart,windowIndex,item,i);
130306
130541
  break;
@@ -131110,6 +131345,7 @@ function OverlayScriptIndex(name,script,args,option)
131110
131345
  }
131111
131346
 
131112
131347
  chart.BuildCacheData();
131348
+ this.SetChartIndexName(chart);
131113
131349
  frame.ChartPaint.push(chart);
131114
131350
  }
131115
131351
 
@@ -131140,6 +131376,61 @@ function OverlayScriptIndex(name,script,args,option)
131140
131376
  frame.ChartPaint.push(chart);
131141
131377
  }
131142
131378
 
131379
+ this.CreateKLineTable=function(hqChart,windowIndex,varItem,id)
131380
+ {
131381
+ var overlayIndex=this.OverlayIndex;
131382
+ var frame=overlayIndex.Frame;
131383
+ var chart=new ChartKLineTable();
131384
+ chart.Canvas=hqChart.Canvas;
131385
+ chart.Name=varItem.Name;
131386
+ chart.HQChart=hqChart;
131387
+ chart.ChartBorder=frame.Frame.ChartBorder;
131388
+ chart.ChartFrame=frame.Frame;
131389
+ chart.Identify=overlayIndex.Identify;
131390
+
131391
+ chart.Data=hqChart.GetKData(); //绑定K线
131392
+ chart.AryTableData=varItem.Draw.DrawData;
131393
+ if (IFrameSplitOperator.IsNumber(varItem.Draw.RowCount)) chart.RowCount=varItem.Draw.RowCount;
131394
+ if (IFrameSplitOperator.IsNonEmptyArray(varItem.Draw.RowName)) chart.RowName=varItem.Draw.RowName;
131395
+
131396
+ var config=varItem.Draw.Config;
131397
+ if (config)
131398
+ {
131399
+ if (config.BGColor) chart.BGColor=config.BGColor;
131400
+ if (config.TextColor) chart.TextColor=config.TextColor;
131401
+ if (config.BorderColor) chart.BorderColor=config.BorderColor;
131402
+ if (IFrameSplitOperator.IsNumber(config.RowNamePosition)) chart.RowNamePosition=config.RowNamePosition;
131403
+ if (IFrameSplitOperator.IsNumber(config.RowHeightType)) chart.RowHeightType=config.RowHeightType;
131404
+ if (IFrameSplitOperator.IsNumber(config.Style)) chart.Style=config.Style;
131405
+
131406
+ if (config.ItemMergin)
131407
+ {
131408
+ var subItem=config.ItemMergin;
131409
+ if (IFrameSplitOperator.IsNumber(subItem.Left)) chart.ItemMergin.Left=subItem.Left;
131410
+ if (IFrameSplitOperator.IsNumber(subItem.Top)) chart.ItemMergin.Top=subItem.Top;
131411
+ if (IFrameSplitOperator.IsNumber(subItem.Bottom)) chart.ItemMergin.Bottom=subItem.Bottom;
131412
+ if (IFrameSplitOperator.IsNumber(subItem.Right)) chart.ItemMergin.Right=subItem.Right;
131413
+ if (IFrameSplitOperator.IsNumber(subItem.YOffset)) chart.ItemMergin.YOffset=subItem.YOffset;
131414
+ }
131415
+
131416
+ if (config.TextFont)
131417
+ {
131418
+ var subItem=config.TextFont;
131419
+ if (IFrameSplitOperator.IsNumber(subItem.FontMaxSize)) chart.TextFontConfig.FontMaxSize=subItem.FontMaxSize;
131420
+ if (subItem.Family) chart.TextFontConfig.Family=subItem.Family;
131421
+ }
131422
+ }
131423
+
131424
+ chart.BuildCacheData();
131425
+ frame.ChartPaint.push(chart);
131426
+
131427
+ var titleIndex=windowIndex+1;
131428
+ var titlePaint=hqChart.TitlePaint[titleIndex];
131429
+ var titleData=new DynamicTitleData(chart.Data,chart.BarName,chart.BarColor);
131430
+ titleData.DataType="ChartKLineTable";
131431
+ titlePaint.OverlayIndex.get(overlayIndex.Identify).Data[id]=titleData;
131432
+ }
131433
+
131143
131434
 
131144
131435
  //创建通道
131145
131436
  this.CreateChannel=function(hqChart,windowIndex,varItem,id)
@@ -150433,7 +150724,7 @@ function ScrollBarBGChart()
150433
150724
 
150434
150725
 
150435
150726
 
150436
- var HQCHART_VERSION="1.1.14863";
150727
+ var HQCHART_VERSION="1.1.14873";
150437
150728
 
150438
150729
  function PrintHQChartVersion()
150439
150730
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14863";
8
+ var HQCHART_VERSION="1.1.14873";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {