hqchart 1.1.14713 → 1.1.14722

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.
@@ -6913,6 +6913,8 @@ var JSCHART_EVENT_ID=
6913
6913
  ON_TOUCH_FAST_SLIDE:169, //快速滑动
6914
6914
 
6915
6915
  ON_CLICK_CROSSCURSOR_BOTTOM:170, //十字光标底部文字点击
6916
+
6917
+ ON_CLICK_CHART_CELL:171, //点击图形单元
6916
6918
  }
6917
6919
 
6918
6920
  var JSCHART_OPERATOR_ID=
@@ -7344,7 +7346,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7344
7346
  this.EnableVerticalDrag=false;
7345
7347
 
7346
7348
  //十字光标长留(手势才有)
7347
- this.ClickModel={ IsShowCorssCursor:false, PreventHide:false }; //PreventHide 阻止隐藏十字光标
7349
+ this.ClickModel={ IsShowCorssCursor:false, PreventHide:false, IsClickButton:false }; //PreventHide 阻止隐藏十字光标
7348
7350
  this.EnableClickModel=false;
7349
7351
 
7350
7352
  //标题栏显示最新数据
@@ -7826,6 +7828,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7826
7828
  if (this.IndexChartDrag) return;
7827
7829
  if (this.CustomChartDrag) return;
7828
7830
  //if (this.RectSelectDrag) return;
7831
+ if (this.EnableClickModel && this.ClickModel.IsClickButton) return;
7829
7832
 
7830
7833
  /*
7831
7834
  if (this.CurrentChartDrawPicture)
@@ -8042,7 +8045,11 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8042
8045
  if (item.IsHideScriptIndex()) continue;
8043
8046
 
8044
8047
  result=item.ClickCell(x,y,e);
8045
- if (result) return result;
8048
+ if (result)
8049
+ {
8050
+ result.Chart=item;
8051
+ return result;
8052
+ }
8046
8053
  }
8047
8054
 
8048
8055
  for(var i=0;i<this.OverlayChartPaint.length;++i)
@@ -8051,7 +8058,12 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8051
8058
  if (!item.ClickCell) continue;
8052
8059
 
8053
8060
  result=item.ClickCell(x,y,e);
8054
- if (result) return result;
8061
+ if (result)
8062
+ {
8063
+ result.Chart=item;
8064
+ result.IsOverlayChart=true;
8065
+ return result;
8066
+ }
8055
8067
  }
8056
8068
 
8057
8069
  for(var i=0,j=0,k=0;i<this.Frame.SubFrame.length;++i)
@@ -8072,7 +8084,12 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8072
8084
  if (chart.ClickCell)
8073
8085
  {
8074
8086
  result=chart.ClickCell(x,y,e);
8075
- if (result) return result;
8087
+ if (result)
8088
+ {
8089
+ result.Chart=chart;
8090
+ result.IsOverlayIndex=true;
8091
+ return result;
8092
+ }
8076
8093
  }
8077
8094
  }
8078
8095
  }
@@ -8396,6 +8413,13 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8396
8413
 
8397
8414
  if (clickCellData)
8398
8415
  {
8416
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_CHART_CELL); //点击图形单个元素
8417
+ if (event && event.Callback)
8418
+ {
8419
+ var data={ Event:e, CellData:clickCellData };
8420
+ event.Callback(event,data,this);
8421
+ }
8422
+
8399
8423
  if (clickCellData.Redraw===true) bRedraw=true;
8400
8424
  }
8401
8425
  else
@@ -9093,6 +9117,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9093
9117
  this.UIOnMounseOut=function(e)
9094
9118
  {
9095
9119
  JSConsole.Chart.Log('[KLineChartContainer::UIOnMounseOut]',e);
9120
+ if (this.EnableClickModel && this.ClickModel.IsShowCorssCursor==true) return; //点击模式 十字光标显示下 不需要处理
9121
+
9096
9122
  if (!this.IsLockCorssCursor()) this.UIOnMouseMove(e); //锁十字光标时, 始终显示十字光标
9097
9123
  }
9098
9124
 
@@ -9512,7 +9538,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9512
9538
  this.TouchDrawCount=0;
9513
9539
  this.PhonePinch=null;
9514
9540
  this.TouchDrag=null;
9515
- if (this.ClickModel) this.ClickModel.PreventHide=false;
9541
+ this.ClickModel.IsClickButton=false;
9542
+ this.ClickModel.PreventHide=false;
9543
+
9544
+
9516
9545
  this.StopDragTimer();
9517
9546
 
9518
9547
  var isSingleTouch=this.IsSingleTouch(e);
@@ -9528,8 +9557,11 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9528
9557
  var pt=this.PointAbsoluteToRelative(touches[0].clientX, touches[0].clientY, true);
9529
9558
 
9530
9559
  if (this.TryPhoneClickButton(pt.X, pt.Y, e))
9560
+ {
9561
+ this.ClickModel.IsClickButton=true;
9531
9562
  return;
9532
-
9563
+ }
9564
+
9533
9565
  if (this.EnableVerticalDrag )
9534
9566
  {
9535
9567
  this.VerticalDrag={ IsDrag:false };
@@ -9714,6 +9746,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9714
9746
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
9715
9747
 
9716
9748
  var touches=this.GetToucheData(e,this.IsForceLandscape);
9749
+ this.ClickModel.IsClickButton=false;
9717
9750
 
9718
9751
  if (this.IsPhoneDragging(e))
9719
9752
  {
@@ -60006,7 +60039,7 @@ function ChartCorssCursor()
60006
60039
  Enable:false, Rect:null,
60007
60040
  BGColor:g_JSChartResource.CorssCursor.RightButton.BGColor ,
60008
60041
  PenColor:g_JSChartResource.CorssCursor.RightButton.PenColor,
60009
- Icon:g_JSChartResource.CorssCursor.RightButton.Icon
60042
+ Icon:CloneData(g_JSChartResource.CorssCursor.RightButton.Icon)
60010
60043
  };
60011
60044
 
60012
60045
  //底部按钮
@@ -60015,9 +60048,11 @@ function ChartCorssCursor()
60015
60048
  Enable:false, Rect:null,
60016
60049
  }
60017
60050
 
60018
- this.RightMargin=CloneData(g_JSChartResource.CorssCursor.RightMargin);
60019
- this.BottomConfig=CloneData(g_JSChartResource.CorssCursor.BottomText); //底部输出配置
60020
- this.LeftConfig=CloneData(g_JSChartResource.CorssCursor.LeftText);
60051
+ this.BottomConfig=CloneData(g_JSChartResource.CorssCursor.BottomText); //底部输出配置
60052
+ this.LeftConfig=CloneData(g_JSChartResource.CorssCursor.LeftText); //左侧输出配置
60053
+ this.RightConfig=CloneData(g_JSChartResource.CorssCursor.RightText); //右侧输出配置
60054
+ this.RightOverlayConfig=CloneData(g_JSChartResource.CorssCursor.RightOverlayText); //右侧叠加指标输出配置
60055
+
60021
60056
 
60022
60057
  //内部使用
60023
60058
  this.Close=null; //收盘价格
@@ -60035,6 +60070,10 @@ function ChartCorssCursor()
60035
60070
  this.XRangeBGColor=g_JSChartResource.CorssCursorXRangeBGColor;
60036
60071
  this.LineDash=g_JSChartResource.CorssCursorLineDash.slice(); //虚线
60037
60072
 
60073
+ this.RightButton.BGColor=g_JSChartResource.CorssCursor.RightButton.BGColor;
60074
+ this.RightButton.PenColor=g_JSChartResource.CorssCursor.RightButton.PenColor;
60075
+ this.RightButton.Icon=CloneData(g_JSChartResource.CorssCursor.RightButton.Icon);
60076
+ this.RightOverlayConfig=CloneData(g_JSChartResource.CorssCursor.RightOverlayText);
60038
60077
 
60039
60078
  this.CorssPointConfig.Center=CloneData(g_JSChartResource.CorssCursor.CorssPoint.Center);
60040
60079
  this.CorssPointConfig.Border=CloneData(g_JSChartResource.CorssCursor.CorssPoint.Border);
@@ -60440,7 +60479,7 @@ function ChartCorssCursor()
60440
60479
  {
60441
60480
  ShowType:0, //0=单行(默认) 1=多行
60442
60481
  Font:this.Font, Color:this.TextColor,
60443
- Text:[ { Text:text, Margin:this.RightMargin } ],
60482
+ Text:[ { Text:text, Margin:this.RightConfig.Margin, TextOffset:this.RightConfig.TextOffset } ],
60444
60483
  };
60445
60484
 
60446
60485
  var yTop=y-this.TextHeight/2;
@@ -60499,74 +60538,73 @@ function ChartCorssCursor()
60499
60538
  //叠加坐标
60500
60539
  if (isOverlayIndex && textSize.Width>overlayIndexInterval && overlayIndexInterval>0) //大于子坐标宽度
60501
60540
  {
60541
+ var rtBG={ Right:right+overlayIndexInterval, Width:textSize.Width, YCenter:y, Height:textSize.Height };
60542
+ rtBG.Left=rtBG.Right-rtBG.Width;
60543
+ if (complexText.ShowType==1)
60544
+ {
60545
+ rtBG.Top=rtBG.YCenter-this.TextHeight/2;
60546
+ rtBG.Bottom=rtBG.Top+rtBG.Height;
60547
+ }
60548
+ else
60549
+ {
60550
+ rtBG.Top=rtBG.YCenter-rtBG.Height/2;
60551
+ rtBG.Bottom=rtBG.Top+rtBG.Height;
60552
+ }
60553
+
60554
+ if (rtBG.Right>chartRight)
60555
+ {
60556
+ rtBG.Right=chartRight;
60557
+ rtBG.Left=rtBG.Right-rtBG.Width;
60558
+ }
60559
+
60502
60560
  var drawRight=right+overlayIndexInterval;
60503
60561
  if (drawRight>chartRight) drawRight=chartRight;
60504
60562
 
60505
- var itemLeft=drawRight-2-textSize.Width;
60506
- this.DrawTextBGRect(itemLeft,yTop,textSize.Width,textSize.Height);
60507
- this.DrawComplexTextV2(itemLeft, yTop, complexText, textSize);
60563
+ this.DrawTextBGRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);
60564
+ this.DrawComplexRightText(rtBG,complexText,textSize);
60508
60565
 
60509
- if (this.RightButton.Enable) this.DrawRightButton(yTop, itemLeft,this.TextHeight,this.TextHeight,buttonData);
60510
- }
60511
- else if (rightWidth<textSize.Width) //右边空白显示不下,
60512
- {
60513
- var itemLeft=chartRight-2-textSize.Width;
60514
- this.DrawTextBGRect(itemLeft,yTop,textSize.Width,textSize.Height);
60515
- this.DrawComplexTextV2(itemLeft, yTop ,complexText, textSize);
60516
-
60517
- if (this.RightButton.Enable) this.DrawRightButton(yTop, chartRight-2-textSize.Width,this.TextHeight,this.TextHeight,buttonData);
60566
+ if (this.RightButton.Enable) this.DrawRightButtonV2(rtBG, complexText, textSize, buttonData);
60518
60567
  }
60519
60568
  else
60520
60569
  {
60521
- var itemLeft=right+2;
60522
- this.DrawTextBGRect(itemLeft,yTop,textSize.Width,textSize.Height);
60523
- this.DrawComplexTextV2(itemLeft,yTop,complexText,textSize);
60524
-
60525
- if (this.RightButton.Enable) this.DrawRightButton(yTop, right+2,this.TextHeight,this.TextHeight,buttonData);
60526
- }
60527
-
60528
- /*
60529
- if (this.StringFormatY.RExtendText && this.StringFormatY.RExtendText.length>0)
60530
- {
60531
- var yOffset=0;
60532
- for(var i in this.StringFormatY.RExtendText)
60570
+ var rtBG={ Left:right+1, Width:textSize.Width, YCenter:y, Height:textSize.Height };
60571
+ rtBG.Right=rtBG.Left+rtBG.Width;
60572
+ if (complexText.ShowType==1)
60533
60573
  {
60534
- var item=this.StringFormatY.RExtendText[i];
60535
- var rText='--.--'
60536
- if (item.YText) rText=item.YText;
60537
- else if (IFrameSplitOperator.IsNumber(item.Y)) rText=item.Y.toFixed(0);
60538
- var rTextWidth=this.Canvas.measureText(rText).width+4; //前后各空2个像素
60539
-
60540
- if (rightWidth<rTextWidth)
60541
- {
60542
- this.DrawTextBGRect(chartRight-2-rTextWidth,y+yOffset+this.TextHeight/2,rTextWidth,this.TextHeight);
60543
- this.Canvas.textAlign="right";
60544
- this.Canvas.textBaseline="middle";
60545
- this.Canvas.fillStyle=item.TextColor;
60546
- this.Canvas.fillText(rText,chartRight-4,y+yOffset+this.TextHeight,rTextWidth);
60547
- }
60548
- else
60549
- {
60550
- this.DrawTextBGRect(right+2,y+yOffset+this.TextHeight/2,rTextWidth,this.TextHeight);
60551
- this.Canvas.textAlign="left";
60552
- this.Canvas.textBaseline="middle";
60553
- this.Canvas.fillStyle=item.TextColor;
60554
- this.Canvas.fillText(rText,right+4,y+yOffset+this.TextHeight,rTextWidth);
60555
- }
60556
-
60557
- yOffset+=this.TextHeight;
60574
+ rtBG.Top=rtBG.YCenter-this.TextHeight/2;
60575
+ rtBG.Bottom=rtBG.Top+rtBG.Height;
60558
60576
  }
60577
+ else
60578
+ {
60579
+ rtBG.Top=rtBG.YCenter-rtBG.Height/2;
60580
+ rtBG.Bottom=rtBG.Top+rtBG.Height;
60581
+ }
60582
+
60583
+ if (rtBG.Right>chartRight)
60584
+ {
60585
+ rtBG.Right=chartRight;
60586
+ rtBG.Left=rtBG.Right-rtBG.Width;
60587
+ }
60588
+
60589
+ this.DrawTextBGRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);
60590
+ this.DrawComplexRightText(rtBG,complexText,textSize);
60591
+
60592
+ if (this.RightButton.Enable) this.DrawRightButtonV2(rtBG, complexText, textSize, buttonData);
60559
60593
  }
60560
- */
60561
60594
  }
60562
- else if (this.ShowTextMode.Right==2)
60595
+ else if (this.ShowTextMode.Right==2) //框架内侧显示
60563
60596
  {
60597
+ var rtBG={ Right:right, Width:textSize.Width, YCenter:y, Height:textSize.Height };
60598
+ rtBG.Left=rtBG.Right-rtBG.Width;
60599
+ rtBG.Top=rtBG.YCenter-rtBG.Height/2;
60600
+ rtBG.Bottom=rtBG.Top+rtBG.Height;
60601
+
60564
60602
  this.Canvas.fillStyle=this.TextBGColor;
60565
60603
  var showLeft=right-textSize.Width;
60566
- this.DrawTextBGRect(showLeft,yTop,textSize.Width,textSize.Height);
60567
- this.DrawComplexTextV2(showLeft,yTop,complexText,textSize);
60604
+ this.DrawTextBGRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);
60605
+ this.DrawComplexRightText(rtBG,complexText,textSize);
60568
60606
 
60569
- if (this.RightButton.Enable) this.DrawRightButton(yTop, showLeft,this.TextHeight,this.TextHeight,buttonData);
60607
+ if (this.RightButton.Enable) this.DrawRightButtonV2(rtBG, complexText, textSize, buttonData);
60570
60608
  }
60571
60609
  }
60572
60610
 
@@ -60649,8 +60687,19 @@ function ChartCorssCursor()
60649
60687
  //if (overlayLeft+30>chartRight) break;
60650
60688
  var yValue=item.Frame.GetYData(y);
60651
60689
  var text=IFrameSplitOperator.FormatValueString(yValue,2);
60652
- var textWidth=this.Canvas.measureText(text).width+4; //前后各空2个像素
60690
+ var textWidth=this.Canvas.measureText(text).width; //前后各空2个像素
60691
+
60692
+
60693
+ var margin=this.RightOverlayConfig.Margin;
60694
+ var textOffset=this.RightOverlayConfig.TextOffset;
60695
+
60696
+ var rtBG={ Left:overlayLeft+1, Width:textWidth+margin.Left+margin.Right, YCenter:y, Height:textHeight+margin.Top+margin.Bottom };
60697
+ rtBG.Right=rtBG.Left-rtBG.Width;
60698
+ rtBG.Top=rtBG.YCenter-rtBG.Height/2;
60699
+ rtBG.Bottom=rtBG.Top+rtBG.Height;
60653
60700
 
60701
+ this.DrawTextBGRect(rtBG.Left,rtBG.Top,rtBG.Width,rtBG.Height);
60702
+
60654
60703
  /*
60655
60704
  for(var j=2;j>=0;--j)
60656
60705
  {
@@ -60660,19 +60709,17 @@ function ChartCorssCursor()
60660
60709
  }
60661
60710
  */
60662
60711
 
60663
- this.Canvas.fillStyle=this.TextBGColor;
60664
- this.Canvas.fillRect(overlayLeft+1,y-this.TextHeight/2,textWidth,this.TextHeight);
60665
60712
  this.Canvas.textAlign="left";
60666
- this.Canvas.textBaseline="middle";
60713
+ this.Canvas.textBaseline="bottom";
60667
60714
  this.Canvas.fillStyle=this.TextColor;
60668
- this.Canvas.fillText(text,overlayLeft+4,y,textWidth);
60715
+ this.Canvas.fillText(text,rtBG.Left+textOffset.X, rtBG.Bottom+textOffset.Y);
60669
60716
  }
60670
60717
  }
60671
60718
 
60672
60719
  this.Status=1;
60673
60720
  }
60674
60721
 
60675
- this.DrawComplexTextV2=function(left, yTop, complexText, size)
60722
+ this.DrawComplexRightText=function(rtBG, complexText, size)
60676
60723
  {
60677
60724
  this.Canvas.textAlign="left";
60678
60725
  this.Canvas.textBaseline="bottom";
@@ -60680,8 +60727,8 @@ function ChartCorssCursor()
60680
60727
  if (complexText.ShowType==1) showType=complexText.ShowType;
60681
60728
  if (showType==1) //多行
60682
60729
  {
60683
- var xLeft=left;
60684
- var yText=yTop; //顶
60730
+ var xLeft=rtBG.Left;
60731
+ var yTop=rtBG.Top; //顶
60685
60732
  for(var i=0; i<complexText.Text.length; ++i)
60686
60733
  {
60687
60734
  var item=complexText.Text[i];
@@ -60693,24 +60740,25 @@ function ChartCorssCursor()
60693
60740
  if (item.Color) this.Canvas.fillStyle=item.Color;
60694
60741
  else this.Canvas.fillStyle=complexText.Color;
60695
60742
 
60696
- var y=yText+itemSize.Height;
60743
+ var y=yTop+itemSize.Height;
60697
60744
  var x=xLeft;
60698
- if (item.Margin)
60745
+
60746
+ if (item.TextOffset)
60699
60747
  {
60700
- var margin=item.Margin;
60701
- if (IFrameSplitOperator.IsNumber(margin.Bottom)) y-=margin.Bottom;
60702
- if (IFrameSplitOperator.IsNumber(margin.Left)) x+=margin.Left;
60748
+ var textOffset=item.TextOffset;
60749
+ if (IFrameSplitOperator.IsNumber(textOffset.X)) x+=textOffset.X;
60750
+ if (IFrameSplitOperator.IsNumber(textOffset.Y)) y+=textOffset.Y;
60703
60751
  }
60704
60752
 
60705
60753
  this.Canvas.fillText(item.Text,x,y,itemSize.Width);
60706
60754
 
60707
- yText+=itemSize.Height;
60755
+ yTop+=itemSize.Height;
60708
60756
  }
60709
60757
  }
60710
60758
  else //水平 单行
60711
60759
  {
60712
- var xText=left;
60713
- var yBottom=yTop+size.Height;
60760
+ var xText=rtBG.Left;
60761
+ var yBottom=rtBG.Bottom;
60714
60762
  for(var i=0; i<complexText.Text.length; ++i)
60715
60763
  {
60716
60764
  var item=complexText.Text[i];
@@ -60722,15 +60770,16 @@ function ChartCorssCursor()
60722
60770
  if (item.Color) this.Canvas.fillStyle=item.Color;
60723
60771
  else this.Canvas.fillStyle=complexText.Color;
60724
60772
 
60725
- var y=yBottom;
60726
60773
  var x=xText;
60727
- if (item.Margin)
60774
+ var y=yBottom;
60775
+
60776
+ if (item.TextOffset)
60728
60777
  {
60729
- var margin=item.Margin;
60730
- if (IFrameSplitOperator.IsNumber(margin.Bottom)) y-=margin.Bottom;
60731
- if (IFrameSplitOperator.IsNumber(margin.Left)) x+=margin.Left;
60778
+ var textOffset=item.TextOffset;
60779
+ if (IFrameSplitOperator.IsNumber(textOffset.X)) x+=textOffset.X;
60780
+ if (IFrameSplitOperator.IsNumber(textOffset.Y)) y+=textOffset.Y;
60732
60781
  }
60733
-
60782
+
60734
60783
  this.Canvas.fillText(item.Text,x,y,itemSize.Width);
60735
60784
 
60736
60785
  xText+=itemSize.Width;
@@ -60753,7 +60802,7 @@ function ChartCorssCursor()
60753
60802
  if (item.Font) this.Canvas.font=item.Font;
60754
60803
  else this.Canvas.font=complexText.Font;
60755
60804
  var itemWidth=this.Canvas.measureText(item.Text).width; //前后各空2个像素
60756
- var itemHeight=this.Canvas.measureText("擎").width;
60805
+ var itemHeight=this.GetFontHeight();
60757
60806
  if (item.Margin)
60758
60807
  {
60759
60808
  var margin=item.Margin;
@@ -60774,7 +60823,7 @@ function ChartCorssCursor()
60774
60823
  }
60775
60824
  else //水平 单行
60776
60825
  {
60777
- var textWidth=0, textHeight=0;
60826
+ var textWidth=0, textHeight=this.GetFontHeight();
60778
60827
  for(var i=0; i<complexText.Text.length; ++i)
60779
60828
  {
60780
60829
  var item=complexText.Text[i];
@@ -60803,6 +60852,61 @@ function ChartCorssCursor()
60803
60852
  }
60804
60853
  }
60805
60854
 
60855
+
60856
+ this.DrawRightButtonV2=function(rtTextBG, complexText, textSize, data)
60857
+ {
60858
+ this.Canvas.fillStyle=this.RightButton.BGColor;
60859
+ var drawHeight=rtTextBG.Height;
60860
+ var drawWidth=rtTextBG.Height;
60861
+
60862
+ if (complexText.ShowType==1) //多行 取第1行高度
60863
+ {
60864
+ var itemSize=textSize.Text[0];
60865
+ drawHeight=itemSize.Height;
60866
+ drawWidth=itemSize.Height;
60867
+ }
60868
+
60869
+ var rtButton={Left:rtTextBG.Left-drawHeight, Top:rtTextBG.Top, Width:drawWidth, Height:drawHeight };
60870
+ rtButton.Right=rtButton.Left+rtButton.Width;
60871
+ rtButton.Bottom=rtButton.Top+rtButton.Height;
60872
+ this.RightButton.Rect=rtButton;
60873
+ this.RightButton.Data=data;
60874
+ this.Canvas.fillRect(ToFixedPoint(rtButton.Left+1),ToFixedPoint(rtButton.Top),ToFixedRect(rtButton.Width),ToFixedRect(rtButton.Height));
60875
+
60876
+ var pixelRatio=GetDevicePixelRatio();
60877
+ var spaceWidth=3;
60878
+ var yCenter=(rtButton.Top+spaceWidth)+(rtButton.Height-spaceWidth*2)/2;
60879
+ var xCenter=(rtButton.Left+spaceWidth)+(rtButton.Width-spaceWidth*2)/2;
60880
+
60881
+ if (this.RightButton.Icon)
60882
+ {
60883
+ var icon=this.RightButton.Icon;
60884
+ this.Canvas.font=`${icon.Size*pixelRatio}px ${icon.Family}`;
60885
+ this.Canvas.textAlign="center";
60886
+ this.Canvas.textBaseline="middle";
60887
+ this.Canvas.fillStyle=icon.Color;
60888
+ this.Canvas.fillText("\ue6a3",xCenter,yCenter);
60889
+ }
60890
+ else
60891
+ {
60892
+ //画加号
60893
+ this.Canvas.strokeStyle=this.RightButton.PenColor;
60894
+ var x=rtButtom.Left+spaceWidth;
60895
+ var y=rtButtom.Top+spaceWidth;
60896
+ this.Canvas.save();
60897
+ this.Canvas.linewidth=1*pixelRatio;
60898
+ this.Canvas.beginPath();
60899
+ this.Canvas.moveTo(ToFixedPoint(x), ToFixedPoint(yCenter));
60900
+ this.Canvas.lineTo(ToFixedPoint(x+rtButton.Width-spaceWidth*2), ToFixedPoint(yCenter));
60901
+
60902
+ this.Canvas.moveTo(ToFixedPoint(xCenter),ToFixedPoint(y));
60903
+ this.Canvas.lineTo(ToFixedPoint(xCenter), ToFixedPoint(y+rtButton.Height-spaceWidth*2));
60904
+
60905
+ this.Canvas.stroke();
60906
+ this.Canvas.restore();
60907
+ }
60908
+ }
60909
+
60806
60910
  this.DrawRightButton=function(drawTop, drawRight, drawWidth, drawHeight, data)
60807
60911
  {
60808
60912
  this.Canvas.fillStyle=this.RightButton.BGColor;
@@ -78291,13 +78395,13 @@ function JSChartResource()
78291
78395
  {
78292
78396
  BGColor:'rgb(43,54,69)',
78293
78397
  PenColor:'rgb(255,255,255)',
78294
- Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:18 }
78398
+ Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:14 }
78295
78399
  },
78296
78400
 
78297
- RightMargin: { Left:2, Right:2, Top:5, Bottom:3 },
78298
-
78299
78401
  BottomText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
78300
78402
  LeftText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
78403
+ RightText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
78404
+ RightOverlayText:{ Margin: { Left:2, Right:2, Top:0, Bottom:0 }, TextOffset:{X:2, Y:-1 } }, //右侧叠加坐标
78301
78405
 
78302
78406
  CorssPoint:{ Center:{ Radius:5*GetDevicePixelRatio(), Color:"rgb(50,171,205)"}, Border:{ Color:'rgb(255,255,255)', Width:1*GetDevicePixelRatio() } }
78303
78407
  };
@@ -132475,7 +132579,7 @@ function GetBlackStyle()
132475
132579
  {
132476
132580
  BGColor:'rgb(43,54,69)',
132477
132581
  PenColor:'rgb(255,255,255)',
132478
- Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:18 }
132582
+ Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:12 }
132479
132583
  },
132480
132584
 
132481
132585
  CorssPoint:{ Center:{ Color:"rgb(50,171,205)" }, Border:{ Color:'rgba(0,0,0,0.8)', Width:1*GetDevicePixelRatio() } }
@@ -158705,7 +158809,7 @@ function HQChartScriptWorker()
158705
158809
 
158706
158810
 
158707
158811
 
158708
- var HQCHART_VERSION="1.1.14712";
158812
+ var HQCHART_VERSION="1.1.14721";
158709
158813
 
158710
158814
  function PrintHQChartVersion()
158711
158815
  {