hqchart 1.1.14258 → 1.1.14274

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.
@@ -6683,6 +6683,8 @@ var JSCHART_BUTTON_ID=
6683
6683
  INDEX_NAME_BUTTON:43,
6684
6684
 
6685
6685
  ADD_INDEX_WINDOW:44, //增加指标窗口
6686
+
6687
+ CHIP_CLOSE:45, //关闭筹码图
6686
6688
  }
6687
6689
 
6688
6690
  var JSCHART_DATA_FIELD_ID=
@@ -8767,6 +8769,34 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8767
8769
 
8768
8770
  }
8769
8771
 
8772
+ this.TryPhoneClickButton=function(x,y,e)
8773
+ {
8774
+ if (this.TryClickLock || this.TryClickIndexTitle) //指标枷锁区域 , 指标标题点击
8775
+ {
8776
+ if (this.TryClickLock && this.TryClickLock(x, y)) return true;
8777
+ if (this.TryClickIndexTitle && this.TryClickIndexTitle(x,y)) return true;
8778
+ }
8779
+
8780
+ if (this.ClickFrameButton)
8781
+ {
8782
+ var button=this.Frame.PtInButtons(x,y);
8783
+ if (button)
8784
+ {
8785
+ this.ClickFrameButton(button, e);
8786
+ return true;
8787
+ }
8788
+ }
8789
+
8790
+ button=this.PtInExtendChartButtons(x,y);
8791
+ if (button && this.ClickExtendChartButton)
8792
+ {
8793
+ this.ClickExtendChartButton(button, e);
8794
+ return true;
8795
+ }
8796
+
8797
+ return false;
8798
+ }
8799
+
8770
8800
  this.OnTouchStart=function(e)
8771
8801
  {
8772
8802
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
@@ -8789,23 +8819,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
8789
8819
  var touches = this.GetToucheData(e, this.IsForceLandscape);
8790
8820
  var pt=this.PointAbsoluteToRelative(touches[0].clientX, touches[0].clientY, true);
8791
8821
 
8792
- if (this.TryClickLock || this.TryClickIndexTitle) //指标枷锁区域 , 指标标题点击
8793
- {
8794
- var x = pt.X;
8795
- var y = pt.Y;
8796
- if (this.TryClickLock && this.TryClickLock(x, y)) return;
8797
- if (this.TryClickIndexTitle && this.TryClickIndexTitle(x,y)) return;
8798
- }
8799
-
8800
- if (this.ClickFrameButton)
8801
- {
8802
- var button=this.Frame.PtInButtons(pt.X,pt.Y);
8803
- if (button)
8804
- {
8805
- this.ClickFrameButton(button, e);
8806
- return;
8807
- }
8808
- }
8822
+ if (this.TryPhoneClickButton(pt.X, pt.Y, e)) return;
8809
8823
 
8810
8824
  if (this.EnableVerticalDrag )
8811
8825
  {
@@ -48686,8 +48700,12 @@ function StockChipPhone()
48686
48700
  //手机端没有按钮
48687
48701
  this.DrawToolbar=function(moveonPoint, mouseStatus) { }
48688
48702
 
48703
+ this.CloseButtonConfig=CloneData(g_JSChartResource.StockChip.PhoneCloseButton);
48704
+
48705
+
48689
48706
  this.Draw=function()
48690
48707
  {
48708
+ this.Buttons=[];
48691
48709
  this.IsHScreen=this.ChartFrame.IsHScreen==true;
48692
48710
  this.PixelRatio=GetDevicePixelRatio();
48693
48711
  if (this.IsHScreen)
@@ -48730,6 +48748,7 @@ function StockChipPhone()
48730
48748
  }
48731
48749
 
48732
48750
  this.DrawBorder();
48751
+ this.DrawCloseButton();
48733
48752
  this.SizeChange=false;
48734
48753
  }
48735
48754
 
@@ -49092,6 +49111,73 @@ function StockChipPhone()
49092
49111
 
49093
49112
  this.Canvas.fill();
49094
49113
  }
49114
+
49115
+ //关闭按钮
49116
+ this.DrawCloseButton=function()
49117
+ {
49118
+ var config=this.CloseButtonConfig;
49119
+ var font=`${config.Size}px ${config.Family}`;
49120
+ var rtButton=null;
49121
+ if (this.IsHScreen)
49122
+ {
49123
+ var border=this.ChartBorder.GetHScreenBorder();
49124
+ var right=border.Left-2;
49125
+ var bottom=border.ChartHeight-2;
49126
+ var left=right-config.Size;
49127
+ var top=bottom-config.Size;
49128
+
49129
+ var rtButton={ Left:left, Top:top, Bottom:bottom, Right:right };
49130
+ rtButton.Width=rtButton.Right-rtButton.Left;
49131
+ rtButton.Height=rtButton.Bottom-rtButton.Top;
49132
+ }
49133
+ else
49134
+ {
49135
+ var border=this.ChartBorder.GetBorder();
49136
+ var top=border.Bottom+2;
49137
+ var bottom=top+config.Size;
49138
+ var right=border.ChartWidth-2;
49139
+ var left=right-config.Size;
49140
+
49141
+ var rtButton={ Left:left, Top:top, Bottom:bottom, Right:right };
49142
+ rtButton.Width=rtButton.Right-rtButton.Left;
49143
+ rtButton.Height=rtButton.Bottom-rtButton.Top;
49144
+ }
49145
+
49146
+ if (!rtButton) return;
49147
+
49148
+ if (config.Border)
49149
+ {
49150
+ if (config.Border.BGColor)
49151
+ {
49152
+ this.Canvas.fillStyle=config.Border.BGColor;
49153
+ this.Canvas.fillRect(rtButton.Left,rtButton.Top,rtButton.Width,rtButton.Height);
49154
+ }
49155
+ }
49156
+
49157
+ this.Canvas.fillStyle=config.Color;
49158
+ this.Canvas.font=font;
49159
+ this.Canvas.textAlign="left";
49160
+ this.Canvas.textBaseline="bottom";
49161
+ if (this.IsHScreen)
49162
+ {
49163
+ var radius=config.Size/2;
49164
+ var x=rtButton.Left+radius, y=rtButton.Bottom-radius;
49165
+ this.Canvas.save();
49166
+ this.Canvas.translate(x,y);
49167
+ this.Canvas.rotate(90 * Math.PI / 180);
49168
+ this.Canvas.fillText(config.Text,-radius,radius);
49169
+ this.Canvas.restore();
49170
+
49171
+ }
49172
+ else
49173
+ {
49174
+ this.Canvas.fillText(config.Text, rtButton.Left, rtButton.Bottom);
49175
+ }
49176
+
49177
+ var btnItem={ ID:JSCHART_BUTTON_ID.CHIP_CLOSE, Rect:rtButton };
49178
+ this.Buttons.push(btnItem);
49179
+
49180
+ }
49095
49181
  }
49096
49182
 
49097
49183
  //窗口分割
@@ -52773,6 +52859,10 @@ IFrameSplitOperator.FormatDateString=function(value,format, languageID)
52773
52859
  {
52774
52860
  case 'MM-DD':
52775
52861
  return IFrameSplitOperator.NumberToString(month) + '-' + IFrameSplitOperator.NumberToString(day);
52862
+ case "MM-DD/W":
52863
+ var date=new Date(year,month-1,day);
52864
+ var week=g_JSChartLocalization.GetText(WEEK_NAME[date.getDay()],languageID);
52865
+ return `${IFrameSplitOperator.NumberToString(month)}-${IFrameSplitOperator.NumberToString(day)}/${week}`;
52776
52866
  case "MM/DD":
52777
52867
  return `${IFrameSplitOperator.NumberToString(month)}/${IFrameSplitOperator.NumberToString(day)}`;
52778
52868
  case "MM/DD/W":
@@ -74326,6 +74416,16 @@ function JSChartResource()
74326
74416
  Size:13*GetDevicePixelRatio(),
74327
74417
  MerginLeft:4
74328
74418
  },
74419
+
74420
+ //手机端
74421
+ PhoneCloseButton:
74422
+ {
74423
+ Family:"iconfont",
74424
+ Size:16*GetDevicePixelRatio(),
74425
+ Text:"\ue60c",
74426
+ Color:"rgb(255,255,255)",
74427
+ Border:{ BGColor:"rgb(169,169,169)" }
74428
+ }
74329
74429
  }
74330
74430
 
74331
74431
  //深度图
@@ -74460,7 +74560,7 @@ function JSChartResource()
74460
74560
  Size:12, Family:"iconfont",
74461
74561
  Arrow:[null, "\ue6b2", "\ue6b1"], //[0]=默认排序的图标背景色
74462
74562
  Color:[null, "rgb(255,0,0)", "rgb(255,0,0)"],
74463
- Margin:{ Left:0, Bottom:6 }
74563
+ Margin:{ Left:0, Bottom:2, Right:0,}
74464
74564
  },
74465
74565
 
74466
74566
  Item:
@@ -75244,6 +75344,20 @@ function JSChartResource()
75244
75344
  if (item.DefaultButton) T_SetButtonStyle(item.DefaultButton, this.StockChip.DefaultButton);
75245
75345
  if (item.LongButton) T_SetButtonStyle(item.LongButton, this.StockChip.LongButton);
75246
75346
  if (item.RecentButton) T_SetButtonStyle(item.RecentButton, this.StockChip.RecentButton);
75347
+ if (item.CloseButton) T_SetButtonStyle(item.CloseButton, this.StockChip.CloseButton);
75348
+
75349
+ if (item.PhoneCloseButton)
75350
+ {
75351
+ var subItem=item.PhoneCloseButton;
75352
+ if (subItem.Family) this.StockChip.PhoneCloseButton.Family=subItem.Family;
75353
+ if (subItem.Text) this.StockChip.PhoneCloseButton.Text=subItem.Text;
75354
+ if (subItem.Color) this.StockChip.PhoneCloseButton.Color=subItem.Color;
75355
+ if (IFrameSplitOperator.IsNumber(subItem.Size)) this.StockChip.PhoneCloseButton.Size=subItem.Size;
75356
+ if (subItem.Border)
75357
+ {
75358
+ if (subItem.Border.BGColor) this.StockChip.PhoneCloseButton.Border.BGColor=subItem.Border.BGColor;
75359
+ }
75360
+ }
75247
75361
  }
75248
75362
 
75249
75363
  if (style.DepthChart)
@@ -84490,6 +84604,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84490
84604
  button.Chart.ShowType=2;
84491
84605
  this.Draw();
84492
84606
  }
84607
+ else if (button.ID==JSCHART_BUTTON_ID.CHIP_CLOSE)
84608
+ {
84609
+ if (this.DeleteStockChipChart) this.DeleteStockChipChart();
84610
+ }
84493
84611
  }
84494
84612
 
84495
84613
  //成交量分布图数据请求
@@ -92090,6 +92208,9 @@ function KLineChartHScreenContainer(uielement)
92090
92208
  var touches = this.GetToucheData(e, false);
92091
92209
  var pt=this.PointAbsoluteToRelative(touches[0].clientX, touches[0].clientY, true);
92092
92210
 
92211
+ if (this.TryPhoneClickButton(pt.X,pt.Y,e)) return;
92212
+
92213
+ /*
92093
92214
  if (this.TryClickLock || this.TryClickIndexTitle) //指标枷锁区域, 指标标题点击
92094
92215
  {
92095
92216
  var x = pt.X;
@@ -92107,6 +92228,7 @@ function KLineChartHScreenContainer(uielement)
92107
92228
  return;
92108
92229
  }
92109
92230
  }
92231
+ */
92110
92232
 
92111
92233
  if (this.EnableVerticalDrag )
92112
92234
  {
@@ -116543,9 +116665,6 @@ function JSExecute(ast,option)
116543
116665
 
116544
116666
  case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_OTHER_SYMBOL_DATA: //指定股票数据
116545
116667
  return this.SymbolData.GetOtherSymbolData(jobItem);
116546
-
116547
- case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_RELEASE_DATE_DATA:
116548
- return this.SymbolData.GetCompanyReleaseDate(jobItem.ID);
116549
116668
 
116550
116669
  case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_MARGIN_BALANCE:
116551
116670
  case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_MARGIN_RATE:
@@ -126000,7 +126119,17 @@ function GetBlackStyle()
126000
126119
  StockChip:
126001
126120
  {
126002
126121
  InfoColor:'rgb(255,255,255)', //文字颜色
126003
- DayInfoColor:'rgb(0,0,0)' //周期颜色内文字颜色
126122
+ DayInfoColor:'rgb(0,0,0)', //周期颜色内文字颜色
126123
+
126124
+ //手机端
126125
+ PhoneCloseButton:
126126
+ {
126127
+ Family:"iconfont",
126128
+ Size:16*GetDevicePixelRatio(),
126129
+ Text:"\ue60c",
126130
+ Color:"rgb(255,255,255)",
126131
+ Border:{ BGColor:"rgb(40,42,44)" }
126132
+ }
126004
126133
  },
126005
126134
 
126006
126135
  //深度图
@@ -128011,15 +128140,8 @@ function JSReportChart(divElement)
128011
128140
  if (option.EnableResize==true) this.CreateResizeListener();
128012
128141
 
128013
128142
  if (option.EnablePopMenuV2===true) chart.InitalPopMenu();
128014
- if (option.EnableTooltip)
128015
- {
128016
- this.CreateExtraCanvasElement(JSReportChart.TooltipCursorCanvasKey, { ZIndex:99 });
128017
- }
128018
-
128019
- if (option.MinuteChartTooltip && option.MinuteChartTooltip.Enable)
128020
- {
128021
- chart.InitalMinuteChartTooltip(option.MinuteChartTooltip);
128022
- }
128143
+ if (option.FloatTooltip && option.FloatTooltip.Enable) chart.InitalFloatTooltip(option.FloatTooltip); //提示信息
128144
+ if (option.MinuteChartTooltip && option.MinuteChartTooltip.Enable) chart.InitalMinuteChartTooltip(option.MinuteChartTooltip);
128023
128145
 
128024
128146
  if (option.Symbol) chart.Symbol=option.Symbol;
128025
128147
  if (option.Name) chart.Name=option.Name;
@@ -128189,8 +128311,6 @@ function JSReportChart(divElement)
128189
128311
  }
128190
128312
  }
128191
128313
 
128192
- JSReportChart.TooltipCursorCanvasKey="hq_report_tooltip"; //提示信息
128193
-
128194
128314
 
128195
128315
  JSReportChart.Init=function(divElement)
128196
128316
  {
@@ -128269,9 +128389,6 @@ function JSReportChartContainer(uielement)
128269
128389
  this.SplashTitle={ StockList:"下载码表中.....", MemberList:"下载成分中....." } ;
128270
128390
 
128271
128391
  this.Canvas=uielement.getContext("2d"); //画布
128272
-
128273
- this.TooltipCanvas;
128274
- this.ChartTooltip;
128275
128392
 
128276
128393
  this.Tooltip=document.createElement("div");
128277
128394
  this.Tooltip.className='jsreport-tooltip';
@@ -128355,6 +128472,7 @@ function JSReportChartContainer(uielement)
128355
128472
  this.StopAutoUpdate();
128356
128473
 
128357
128474
  this.DestroyMinuteChartTooltip();
128475
+ this.DestroyFloatTooltip();
128358
128476
  }
128359
128477
 
128360
128478
  this.StopAutoDragScrollTimer=function()
@@ -128393,6 +128511,51 @@ function JSReportChartContainer(uielement)
128393
128511
  this.TooltipMinuteChart=null;
128394
128512
  }
128395
128513
 
128514
+ this.InitalFloatTooltip=function(option)
128515
+ {
128516
+ if (this.FloatTooltip) return;
128517
+
128518
+ this.FloatTooltip=new JSFloatTooltip();
128519
+ this.FloatTooltip.Inital(this, option);
128520
+ this.FloatTooltip.Create();
128521
+ }
128522
+
128523
+ this.HideFloatTooltip=function()
128524
+ {
128525
+ if (!this.FloatTooltip) return;
128526
+
128527
+ this.FloatTooltip.Hide();
128528
+ }
128529
+
128530
+ this.DestroyFloatTooltip=function()
128531
+ {
128532
+ if (!this.FloatTooltip) return;
128533
+
128534
+ this.FloatTooltip.Destroy();
128535
+ this.FloatTooltip=null;
128536
+ }
128537
+
128538
+ this.DrawFloatTooltip=function(point,toolTip)
128539
+ {
128540
+ if (!this.FloatTooltip) return;
128541
+
128542
+ this.UpdateFloatTooltip(point, toolTip)
128543
+ }
128544
+
128545
+ this.UpdateFloatTooltip=function(point, toolTip)
128546
+ {
128547
+ if (!this.FloatTooltip) return;
128548
+
128549
+ var sendData=
128550
+ {
128551
+ Tooltip:toolTip,
128552
+ Point:point,
128553
+ DataType:3,
128554
+ };
128555
+
128556
+ this.FloatTooltip.Update(sendData);
128557
+ }
128558
+
128396
128559
  //data={ Symbol }
128397
128560
  this.ShowMinuteChartTooltip=function(x,y, data)
128398
128561
  {
@@ -128543,12 +128706,6 @@ function JSReportChartContainer(uielement)
128543
128706
 
128544
128707
  this.ChartPaint[0]=chart;
128545
128708
 
128546
- //提示信息
128547
- var chartTooltip=new ChartCellTooltip();
128548
- chartTooltip.Frame=this.Frame;
128549
- chartTooltip.ChartBorder=this.Frame.ChartBorder;
128550
- this.ChartTooltip=chartTooltip;
128551
-
128552
128709
  //页脚
128553
128710
  if (option && option.PageInfo===true)
128554
128711
  {
@@ -128570,6 +128727,7 @@ function JSReportChartContainer(uielement)
128570
128727
  if (IFrameSplitOperator.IsNumber(option.FixedRowCount)) chart.FixedRowCount=option.FixedRowCount; //固定行
128571
128728
  if (IFrameSplitOperator.IsBool(option.ItemBorder)) chart.IsDrawBorder=option.ItemBorder; //单元格边框
128572
128729
  if (IFrameSplitOperator.IsNumber(option.SelectedModel)) chart.SelectedModel=option.SelectedModel;
128730
+ if (IFrameSplitOperator.IsNumber(option.HeaderRowCount)) chart.HeaderRowCount=option.HeaderRowCount;
128573
128731
 
128574
128732
  if (IFrameSplitOperator.IsNonEmptyArray(option.FixedSymbol))
128575
128733
  {
@@ -128661,8 +128819,6 @@ function JSReportChartContainer(uielement)
128661
128819
  {
128662
128820
  this.DelayDraw(500);
128663
128821
  }
128664
-
128665
- this.DrawTooltip(this.LastMouseStatus.TooltipStatus);
128666
128822
  }
128667
128823
 
128668
128824
  this.DelayDraw=function(frequency)
@@ -129594,6 +129750,7 @@ function JSReportChartContainer(uielement)
129594
129750
  {
129595
129751
  this.LastMouseStatus.TooltipStatus=null;
129596
129752
  this.HideMinuteChartTooltip();
129753
+ this.HideFloatTooltip();
129597
129754
  if (this.GotoNextItem(1))
129598
129755
  {
129599
129756
  this.Draw();
@@ -129604,6 +129761,7 @@ function JSReportChartContainer(uielement)
129604
129761
  {
129605
129762
  this.LastMouseStatus.TooltipStatus=null;
129606
129763
  this.HideMinuteChartTooltip();
129764
+ this.HideFloatTooltip();
129607
129765
  if (this.GotoNextItem(-1))
129608
129766
  {
129609
129767
  this.Draw();
@@ -129617,6 +129775,7 @@ function JSReportChartContainer(uielement)
129617
129775
  {
129618
129776
  this.LastMouseStatus.TooltipStatus=null;
129619
129777
  this.HideMinuteChartTooltip();
129778
+ this.HideFloatTooltip();
129620
129779
  if (this.GotoNextPage(this.PageUpDownCycle))
129621
129780
  {
129622
129781
  this.Draw();
@@ -129627,6 +129786,7 @@ function JSReportChartContainer(uielement)
129627
129786
  {
129628
129787
  this.LastMouseStatus.TooltipStatus=null;
129629
129788
  this.HideMinuteChartTooltip();
129789
+ this.HideFloatTooltip();
129630
129790
  if (this.GotoPreviousPage(this.PageUpDownCycle))
129631
129791
  {
129632
129792
  this.Draw();
@@ -129649,6 +129809,7 @@ function JSReportChartContainer(uielement)
129649
129809
  if (keyID==116) return; //F15刷新不处理
129650
129810
 
129651
129811
  this.HideMinuteChartTooltip();
129812
+ this.HideFloatTooltip();
129652
129813
  switch(keyID)
129653
129814
  {
129654
129815
  case 33: //page up
@@ -130049,7 +130210,17 @@ function JSReportChartContainer(uielement)
130049
130210
  if (mouseStatus) this.UIElement.style.cursor=mouseStatus.Cursor;
130050
130211
 
130051
130212
  if (bDraw || bDrawTab) this.Draw();
130052
- else if (bDrawTooltip) this.DrawTooltip(this.LastMouseStatus.TooltipStatus);
130213
+
130214
+ if (this.LastMouseStatus.TooltipStatus)
130215
+ {
130216
+ var xTooltip = e.clientX-this.UIElement.getBoundingClientRect().left;
130217
+ var yTooltip = e.clientY-this.UIElement.getBoundingClientRect().top;
130218
+ this.DrawFloatTooltip({X:xTooltip, Y:yTooltip, YMove:20/pixelTatio},this.LastMouseStatus.TooltipStatus.Data);
130219
+ }
130220
+ else
130221
+ {
130222
+ this.HideFloatTooltip();
130223
+ }
130053
130224
 
130054
130225
  if (bShowChartTooltip)
130055
130226
  {
@@ -130064,6 +130235,7 @@ function JSReportChartContainer(uielement)
130064
130235
  this.UIOnMounseOut=function(e)
130065
130236
  {
130066
130237
  this.HideMinuteChartTooltip();
130238
+ this.HideFloatTooltip();
130067
130239
 
130068
130240
  var bDraw=false;
130069
130241
  var tabChart=this.GetTabChart();
@@ -130090,6 +130262,7 @@ function JSReportChartContainer(uielement)
130090
130262
  this.UIOnMouseleave=function(e)
130091
130263
  {
130092
130264
  this.HideMinuteChartTooltip();
130265
+ this.HideFloatTooltip();
130093
130266
 
130094
130267
  var tabChart=this.GetTabChart();
130095
130268
  if (tabChart && tabChart.MoveOnTabIndex>=0)
@@ -131646,16 +131819,16 @@ function JSReportChartContainer(uielement)
131646
131819
  case REPORT_COLUMN_ID.VOL_OUT_ID:
131647
131820
  case REPORT_COLUMN_ID.DATE_ID:
131648
131821
 
131649
- case TREPORT_COLUMN_ID.RESERVE_NUMBER1_ID:
131650
- case TREPORT_COLUMN_ID.RESERVE_NUMBER2_ID:
131651
- case TREPORT_COLUMN_ID.RESERVE_NUMBER3_ID:
131652
- case TREPORT_COLUMN_ID.RESERVE_NUMBER4_ID:
131653
- case TREPORT_COLUMN_ID.RESERVE_NUMBER5_ID:
131654
- case TREPORT_COLUMN_ID.RESERVE_NUMBER6_ID:
131655
- case TREPORT_COLUMN_ID.RESERVE_NUMBER7_ID:
131656
- case TREPORT_COLUMN_ID.RESERVE_NUMBER8_ID:
131657
- case TREPORT_COLUMN_ID.RESERVE_NUMBER9_ID:
131658
- case TREPORT_COLUMN_ID.RESERVE_NUMBER10_ID:
131822
+ case REPORT_COLUMN_ID.RESERVE_NUMBER1_ID:
131823
+ case REPORT_COLUMN_ID.RESERVE_NUMBER2_ID:
131824
+ case REPORT_COLUMN_ID.RESERVE_NUMBER3_ID:
131825
+ case REPORT_COLUMN_ID.RESERVE_NUMBER4_ID:
131826
+ case REPORT_COLUMN_ID.RESERVE_NUMBER5_ID:
131827
+ case REPORT_COLUMN_ID.RESERVE_NUMBER6_ID:
131828
+ case REPORT_COLUMN_ID.RESERVE_NUMBER7_ID:
131829
+ case REPORT_COLUMN_ID.RESERVE_NUMBER8_ID:
131830
+ case REPORT_COLUMN_ID.RESERVE_NUMBER9_ID:
131831
+ case REPORT_COLUMN_ID.RESERVE_NUMBER10_ID:
131659
131832
 
131660
131833
  return this.LocalNumberSort(left, right, column, sortType);
131661
131834
  case REPORT_COLUMN_ID.CUSTOM_NUMBER_TEXT_ID: //自定义数值字段
@@ -132041,28 +132214,6 @@ function JSReportChartContainer(uielement)
132041
132214
 
132042
132215
  return true;
132043
132216
  }
132044
-
132045
- this.DrawTooltip=function(tooltipStatus)
132046
- {
132047
- if (!this.GetExtraCanvas) return;
132048
- if (!this.TooltipCanvas)
132049
- {
132050
- var finder=this.GetExtraCanvas(JSReportChart.TooltipCursorCanvasKey);
132051
- if (!finder) return;
132052
- this.TooltipCanvas=finder.Canvas;
132053
- }
132054
-
132055
- if (!this.TooltipCanvas) return;
132056
- this.ClearCanvas(this.TooltipCanvas);
132057
- if (!this.ChartTooltip) return;
132058
-
132059
- if (!tooltipStatus || !tooltipStatus.Data) return;
132060
-
132061
- this.ChartTooltip.Canvas=this.TooltipCanvas;
132062
- this.ChartTooltip.Point={ X:tooltipStatus.X, Y:tooltipStatus.Y };
132063
- this.ChartTooltip.Data=tooltipStatus.Data.Data;
132064
- this.ChartTooltip.Draw();
132065
- }
132066
132217
  }
132067
132218
 
132068
132219
 
@@ -132391,6 +132542,7 @@ function ChartReport()
132391
132542
  this.SelectedRow=-1; //选中行ID
132392
132543
  this.SelectedFixedRow=-1; //选中固定行ID
132393
132544
  this.IsDrawBorder=1; //是否绘制单元格边框
132545
+ this.HeaderRowCount=1; //表头行数
132394
132546
 
132395
132547
  //多选模式
132396
132548
  this.MultiSelectModel=0; //0=禁用 1=开启
@@ -132435,6 +132587,7 @@ function ChartReport()
132435
132587
  Margin:
132436
132588
  {
132437
132589
  Left:g_JSChartResource.Report.SortIcon.Margin.Left,
132590
+ Right:g_JSChartResource.Report.SortIcon.Margin.Right,
132438
132591
  Bottom:g_JSChartResource.Report.SortIcon.Margin.Bottom
132439
132592
  }
132440
132593
  }
@@ -132523,6 +132676,7 @@ function ChartReport()
132523
132676
  this.NameSymbolFont={ Symbol:null, Name:null };
132524
132677
  this.RowCount=0; //一屏显示行数
132525
132678
  this.HeaderHeight=0; //表头高度
132679
+ this.HeaderFontHeight=0; //表头字体高度
132526
132680
  this.FixedRowHeight=0; //固定行高度
132527
132681
  this.RowHeight=0; //行高度
132528
132682
  this.ItemTextLines=1; //单元格输出行数
@@ -132656,6 +132810,7 @@ function ChartReport()
132656
132810
  if (!colItem) return null;
132657
132811
 
132658
132812
  if (item.Title) colItem.Title=item.Title;
132813
+ if (IFrameSplitOperator.IsNonEmptyArray(item.AryTitle)) colItem.AryTitle=item.AryTitle;
132659
132814
  if (item.TextAlign) colItem.TextAlign=item.TextAlign;
132660
132815
  if (item.TextColor) colItem.TextColor=item.TextColor;
132661
132816
  if (item.HeaderColor) colItem.HeaderColor=item.HeaderColor;
@@ -133188,7 +133343,17 @@ function ChartReport()
133188
133343
  if (item.Width<itemWidth) item.Width=itemWidth;
133189
133344
  }
133190
133345
 
133191
- this.HeaderHeight=this.GetFontHeight(this.HeaderFont,"擎")+ this.HeaderMergin.Top+ this.HeaderMergin.Bottom;
133346
+ this.HeaderFontHeight=this.GetFontHeight(this.HeaderFont,"擎");
133347
+ if (this.HeaderRowCount<=1) //单行
133348
+ {
133349
+ this.HeaderHeight=this.HeaderFontHeight+(this.HeaderMergin.Top+this.HeaderMergin.Bottom);
133350
+ }
133351
+ else
133352
+ {
133353
+ this.HeaderHeight=(this.HeaderFontHeight*this.HeaderRowCount)+(this.HeaderMergin.Top+this.HeaderMergin.Bottom);
133354
+ }
133355
+
133356
+
133192
133357
  if (!this.IsShowHeader) this.HeaderHeight=0;
133193
133358
  if (this.FixedRowCount<=0) this.FixedRowHeight=0;
133194
133359
 
@@ -133205,90 +133370,70 @@ function ChartReport()
133205
133370
  this.IsShowAllColumn=(subWidth<reportWidth);
133206
133371
  }
133207
133372
 
133208
- this.DrawHeader=function()
133373
+ this.DrawHeaderItem=function(column, rtCell, index)
133209
133374
  {
133210
- if (!this.IsShowHeader) return;
133211
-
133212
- var left=this.RectClient.Left;
133213
- var top=this.RectClient.Top;
133214
- var y=top+this.HeaderMergin.Top+(this.HeaderHeight-this.HeaderMergin.Top-this.HeaderMergin.Bottom)/2;
133215
- var yBottom=top+this.HeaderHeight;
133216
- var bDrawSortBG=this.IsDrawSortBGIcon();
133217
-
133218
- this.Canvas.font=this.HeaderFont;
133219
-
133220
- var textLeft=left;
133221
- //固定列
133222
- for(var i=0;i<this.FixedColumn && i<this.Column.length;++i)
133375
+ if (column.HeaderBGColor) //背景色
133223
133376
  {
133224
- var item=this.Column[i];
133225
- var itemWidth=item.Width;
133226
- var textWidth=itemWidth-this.HeaderMergin.Left-this.HeaderMergin.Right;
133227
- var x=textLeft+this.HeaderMergin.Left;
133377
+ this.DrawItemBG({ Rect:rtCell, BGColor:column.HeaderBGColor });
133378
+ }
133228
133379
 
133229
- if (item.HeaderBGColor)
133230
- {
133231
- var rtBG={Left:textLeft, Top:top, Width:itemWidth, Height:this.HeaderHeight };
133232
- rtBG.Right=rtBG.Left+rtBG.Width;
133233
- rtBG.Bottom=rtBG.Top+rtBG.Height;
133234
- this.DrawItemBG({ Rect:rtBG, BGColor:item.HeaderBGColor });
133235
- }
133380
+ var textWidth=rtCell.Width-this.HeaderMergin.Left-this.HeaderMergin.Right;
133381
+ //AryText=[ { Text:标题, Sort:{Type:排序}, Icon:图标 }]
133382
+ var drawInfo={ Rect:rtCell, AryText:[ { Text:null} ], YText:rtCell.Bottom-this.HeaderMergin.Bottom, Index:index, TextWidth:textWidth };
133236
133383
 
133237
- var iconWidth=0;
133238
- if (item.Icon && item.Icon.Symbol) //图标
133384
+ if (this.HeaderRowCount>1) //多行
133385
+ {
133386
+ if (IFrameSplitOperator.IsNonEmptyArray(column.AryTitle))
133239
133387
  {
133240
- var iconWidth=item.Icon.Size;
133241
- if (item.Icon.Margin)
133388
+ drawInfo.AryText=[];
133389
+ for(var i=0;i<column.AryTitle.length && i<this.HeaderRowCount;++i)
133242
133390
  {
133243
- var margin=item.Icon.Margin;
133244
- if (IFrameSplitOperator.IsNumber(margin.Left)) iconWidth+=margin.Left;
133245
- if (IFrameSplitOperator.IsNumber(margin.Right)) iconWidth+=margin.Right;
133391
+ var text=column.AryTitle[i];
133392
+ drawInfo.AryText.push({ Text:text } );
133246
133393
  }
133247
- }
133248
- textWidth-=iconWidth;
133249
-
133250
- if (item.HeaderColor) this.Canvas.fillStyle=item.HeaderColor;
133251
- else this.Canvas.fillStyle=this.HeaderColor;
133252
-
133253
- var textSize={ }
133254
- if (this.SortInfo && this.SortInfo.Field==i && this.SortInfo.Sort>0)
133255
- {
133256
- this.DrawSortHeader(item.Title,item.TextAlign,x,yBottom,textWidth,this.SortInfo.Sort, textSize);
133257
- }
133258
- else if (item.Sort>0 && bDrawSortBG)
133259
- {
133260
- this.DrawSortHeader(item.Title,item.TextAlign,x,yBottom,textWidth,0,textSize);
133394
+ drawInfo.YText-=((this.HeaderRowCount-1)*this.HeaderFontHeight);
133261
133395
  }
133262
133396
  else
133263
133397
  {
133264
- this.DrawText(item.Title,item.TextAlign,x,yBottom,textWidth,textSize);
133398
+ if (column.Title) drawInfo.AryText[0].Text=column.Title;
133399
+ drawInfo.YText=rtCell.Bottom-this.HeaderMergin.Bottom-(this.HeaderRowCount*this.HeaderFontHeight)/2+this.HeaderFontHeight/2;
133265
133400
  }
133401
+ }
133402
+ else //单行
133403
+ {
133404
+ if (column.Title) drawInfo.AryText[0].Text=column.Title;
133405
+ }
133266
133406
 
133267
- if (iconWidth>0)
133268
- {
133269
- this.DrawHeaderIcon(item.Icon, textSize.Right, yBottom, i, item);
133270
- this.Canvas.font=this.HeaderFont;
133271
- }
133407
+ var lastItem=drawInfo.AryText[drawInfo.AryText.length-1];
133272
133408
 
133273
- this.Canvas.fillStyle=this.HeaderColor;
133409
+ //排序
133410
+ var bDrawSortBG=this.IsDrawSortBGIcon();
133411
+ if (this.SortInfo && this.SortInfo.Field==index && this.SortInfo.Sort>0) lastItem.Sort={ Type:this.SortInfo.Sort };
133412
+ else if (column.Sort>0 && bDrawSortBG) lastItem.Sort={ Type:0 };
133274
133413
 
133275
- textLeft+=item.Width;
133276
- }
133414
+ //图标
133415
+ if (column.Icon) lastItem.Icon=column.Icon;
133277
133416
 
133278
- for(var i=this.FixedColumn+this.Data.XOffset;i<this.Column.length;++i)
133279
- {
133280
- var item=this.Column[i];
133281
- var itemWidth=item.Width;
133282
- var textWidth=itemWidth-this.HeaderMergin.Left-this.HeaderMergin.Right;
133283
- var x=textLeft+this.HeaderMergin.Left;
133417
+ this.DrawHeaderText(column, drawInfo);
133418
+ }
133284
133419
 
133285
- if (item.HeaderBGColor)
133286
- {
133287
- var rtBG={Left:textLeft, Top:top, Width:itemWidth, Height:this.HeaderHeight };
133288
- rtBG.Right=rtBG.Left+rtBG.Width;
133289
- rtBG.Bottom=rtBG.Top+rtBG.Height;
133290
- this.DrawItemBG({ Rect:rtBG, BGColor:item.HeaderBGColor });
133291
- }
133420
+ this.DrawHeaderText=function(column, drawInfo)
133421
+ {
133422
+ if (column.HeaderColor) this.Canvas.fillStyle=column.HeaderColor;
133423
+ else this.Canvas.fillStyle=this.HeaderColor;
133424
+
133425
+ var pixelRatio=GetDevicePixelRatio();
133426
+ var cellWidth=drawInfo.Rect.Width;
133427
+
133428
+ if (drawInfo.AryText.length>1)
133429
+ var nnnn=10;
133430
+
133431
+ var y=drawInfo.YText;
133432
+ for(var i=0;i<drawInfo.AryText.length;++i)
133433
+ {
133434
+ var x=drawInfo.Rect.Left+this.HeaderMergin.Left;
133435
+ var item=drawInfo.AryText[i];
133436
+ var textSize={ TextMaxWidth:drawInfo.TextWidth };
133292
133437
 
133293
133438
  var iconWidth=0;
133294
133439
  if (item.Icon && item.Icon.Symbol) //图标
@@ -133301,81 +133446,113 @@ function ChartReport()
133301
133446
  if (IFrameSplitOperator.IsNumber(margin.Right)) iconWidth+=margin.Right;
133302
133447
  }
133303
133448
  }
133449
+ if (iconWidth>0) textSize.TextMaxWidth-=iconWidth;
133304
133450
 
133305
- textWidth-=iconWidth;
133306
-
133307
- if (item.HeaderColor) this.Canvas.fillStyle=item.HeaderColor;
133308
- else this.Canvas.fillStyle=this.HeaderColor;
133451
+ var sortWidth=0; //排序图标
133452
+ if (item.Sort && this.SortConfig && IFrameSplitOperator.IsPlusNumber(this.SortConfig.Size))
133453
+ {
133454
+ sortWidth=this.SortConfig.Size*pixelRatio;
133455
+ if (this.SortConfig.Margin)
133456
+ {
133457
+ var margin=this.SortConfig.Margin;
133458
+ if (IFrameSplitOperator.IsNumber(margin.Left)) sortWidth+=margin.Left;
133459
+ if (IFrameSplitOperator.IsNumber(margin.Right)) sortWidth+=margin.Right;
133460
+ }
133461
+ }
133462
+ if (sortWidth>0) textSize.TextMaxWidth-=sortWidth;
133463
+
133309
133464
 
133310
- var textSize={ }
133311
- if (this.SortInfo && this.SortInfo.Field==i && this.SortInfo.Sort>0)
133465
+ var textWidth=0;
133466
+ if (item.Text)
133312
133467
  {
133313
- this.DrawSortHeader(item.Title,item.TextAlign,x,yBottom,textWidth,this.SortInfo.Sort,textSize);
133468
+ this.Canvas.font=this.HeaderFont;
133469
+ textWidth=this.Canvas.measureText(item.Text).width;
133314
133470
  }
133315
- else if (item.Sort>0)
133471
+
133472
+ if (column.TextAlign=='center') x=x+(cellWidth-textWidth)/2;
133473
+ else if (column.TextAlign=='right') x=x+textSize.TextMaxWidth-textWidth;
133474
+
133475
+ if (item.Text) //文字
133316
133476
  {
133317
- this.DrawSortHeader(item.Title,item.TextAlign,x,yBottom,textWidth,0, textSize);
133477
+ this.Canvas.fillText(item.Text,x,y);
133478
+ x+=textWidth;
133318
133479
  }
133319
- else
133480
+
133481
+ if (sortWidth>1) //排序
133320
133482
  {
133321
- this.DrawText(item.Title,item.TextAlign,x,yBottom,textWidth,textSize);
133483
+ var sortText=this.SortConfig.Arrow[item.Sort.Type];
133484
+ var sortColor=this.SortConfig.Color[item.Sort.Type];
133485
+ this.Canvas.font=this.SortFont;
133486
+ this.Canvas.fillStyle=sortColor;
133487
+ this.Canvas.fillText(sortText,x,y-this.SortConfig.Margin.Bottom);
133488
+ x+=sortWidth;
133322
133489
  }
133323
133490
 
133324
- if (iconWidth>0)
133491
+ if (iconWidth>1) //图标
133325
133492
  {
133326
- this.DrawHeaderIcon(item.Icon, textSize.Right, yBottom, i, item);
133327
- this.Canvas.font=this.HeaderFont;
133493
+ var icon=item.Icon;
133494
+ var iconFont=`${icon.Size}px ${icon.Family}`;
133495
+ this.Canvas.font=iconFont;
133496
+ if (icon.Color) this.Canvas.fillStyle=icon.Color;
133497
+ var yOffset=0, xOffset=0;
133498
+ if (icon.Margin && IFrameSplitOperator.IsNumber(icon.Margin.Left)) xOffset=icon.Margin.Left;
133499
+ if (icon.Margin && IFrameSplitOperator.IsNumber(icon.Margin.Bottom)) yOffset=-icon.Margin.Bottom;
133500
+ this.Canvas.fillText(icon.Symbol, x+xOffset, y+yOffset);
133501
+
133502
+ if (icon.Tooltip)
133503
+ {
133504
+ var rtIcon={ Left:x+xOffset, Bottom:y+yOffset, Width:icon.Size, Height:icon.Size };
133505
+ rtIcon.Right=rtIcon.Left+rtIcon.Width;
133506
+ rtIcon.Top=rtIcon.Bottom-rtIcon.Height;
133507
+
133508
+ var tooltipData={ Rect:rtIcon, Type:2, Column:column, Index:drawInfo.Index, Data:icon.Tooltip.Data };
133509
+ this.TooltipRect.push(tooltipData);
133510
+ }
133328
133511
  }
133329
133512
 
133330
- textLeft+=item.Width;
133331
- }
133513
+ y+=this.HeaderFontHeight;
133514
+ }
133332
133515
  }
133333
133516
 
133334
- this.DrawText=function(text, textAlign, x, yBottom, cellWidth, textSize)
133517
+ this.DrawHeader=function()
133335
133518
  {
133336
- var textWidth=this.Canvas.measureText(text).width;
133337
- if (textAlign=='center')
133338
- {
133339
- x=x+(cellWidth-textWidth)/2;
133340
- }
133341
- else if (textAlign=='right')
133342
- {
133343
- x=x+cellWidth-textWidth;
133344
- }
133519
+ if (!this.IsShowHeader) return;
133345
133520
 
133521
+ var left=this.RectClient.Left;
133522
+ var top=this.RectClient.Top;
133523
+ this.Canvas.font=this.HeaderFont;
133524
+
133525
+ var textLeft=left;
133346
133526
  this.Canvas.textAlign="left";
133347
133527
  this.Canvas.textBaseline="bottom";
133348
- this.Canvas.fillText(text,x,yBottom-this.HeaderMergin.Bottom);
133349
-
133350
- if (textSize)
133528
+ //固定列
133529
+ for(var i=0;i<this.FixedColumn && i<this.Column.length;++i)
133351
133530
  {
133352
- textSize.Right=x+textWidth;
133353
- textSize.Width=textWidth;
133354
- }
133355
- }
133531
+ var item=this.Column[i];
133532
+ var itemWidth=item.Width;
133533
+ //var textWidth=itemWidth-this.HeaderMergin.Left-this.HeaderMergin.Right;
133356
133534
 
133357
- this.DrawHeaderIcon=function(icon, x, yBottom, index, column)
133358
- {
133359
- var iconFont=`${icon.Size}px ${icon.Family}`;
133360
- this.Canvas.font=iconFont;
133361
- this.Canvas.textAlign="left";
133362
- if (icon.Color) this.Canvas.fillStyle=icon.Color;
133535
+ var rtCell={ Left:textLeft, Width:itemWidth, Top:top, Height:this.HeaderHeight };
133536
+ rtCell.Right=rtCell.Left+rtCell.Width;
133537
+ rtCell.Bottom=rtCell.Top+rtCell.Height;
133363
133538
 
133364
- var xIcon=x;
133365
- var yIcon=yBottom;
133366
- if (icon.Margin && IFrameSplitOperator.IsNumber(icon.Margin.Left)) xIcon+=icon.Margin.Left;
133367
- if (icon.Margin && IFrameSplitOperator.IsNumber(icon.Margin.Bottom)) yIcon-=icon.Margin.Bottom;
133368
- this.Canvas.fillText(icon.Symbol, xIcon, yIcon);
133539
+ this.DrawHeaderItem(item, rtCell, i);
133540
+ textLeft+=item.Width;
133541
+ }
133369
133542
 
133370
- if (icon.Tooltip)
133543
+ for(var i=this.FixedColumn+this.Data.XOffset;i<this.Column.length;++i)
133371
133544
  {
133372
- var rtIcon={ Left:xIcon, Bottom:yIcon, Width:icon.Size, Height:icon.Size };
133373
- rtIcon.Right=rtIcon.Left+rtIcon.Width;
133374
- rtIcon.Top=rtIcon.Bottom-rtIcon.Height;
133545
+ var item=this.Column[i];
133546
+ var itemWidth=item.Width;
133547
+ //var textWidth=itemWidth-this.HeaderMergin.Left-this.HeaderMergin.Right;
133375
133548
 
133376
- var tooltipData={ Rect:rtIcon, Type:2, Column:column, Index:index, Data:icon.Tooltip.Data };
133377
- this.TooltipRect.push(tooltipData);
133378
- }
133549
+ var rtCell={ Left:textLeft, Width:itemWidth, Top:top, Height:this.HeaderHeight };
133550
+ rtCell.Right=rtCell.Left+rtCell.Width;
133551
+ rtCell.Bottom=rtCell.Top+rtCell.Height;
133552
+
133553
+ this.DrawHeaderItem(item, rtCell, i);
133554
+ textLeft+=item.Width;
133555
+ }
133379
133556
  }
133380
133557
 
133381
133558
  //是否绘制排序背景图标
@@ -133390,57 +133567,6 @@ function ChartReport()
133390
133567
  return true;
133391
133568
  }
133392
133569
 
133393
- this.DrawSortHeader=function(text, textAlign, x, yBottom, width, sortType,textSize)
133394
- {
133395
- var pixelRatio=GetDevicePixelRatio();
133396
- var sortText=this.SortConfig.Arrow[sortType];
133397
- var sortBGText=this.SortConfig.Arrow[0];
133398
- var sortBGColor=this.SortConfig.Color[0];
133399
- this.Canvas.font=this.HeaderFont;
133400
- var textWidth=this.Canvas.measureText(text).width;
133401
- var sortTextWidth=this.SortConfig.Size*pixelRatio+this.SortConfig.Margin.Left;
133402
-
133403
- if (textAlign=='center')
133404
- {
133405
- x=x+width/2-(sortTextWidth+textWidth)/2;
133406
- }
133407
- else if (textAlign=='right')
133408
- {
133409
- x=(x+width)-sortTextWidth-textWidth;
133410
- }
133411
-
133412
- this.Canvas.textBaseline="bottom";
133413
- this.Canvas.textAlign="left";
133414
-
133415
- var xText=x;
133416
- this.Canvas.font=this.HeaderFont;
133417
- this.Canvas.fillStyle=this.HeaderColor;
133418
- this.Canvas.fillText(text,xText,yBottom-this.HeaderMergin.Bottom);
133419
-
133420
- xText+=(textWidth+this.SortConfig.Margin.Left);
133421
- this.Canvas.font=this.SortFont;
133422
- if (sortBGText && sortBGColor)
133423
- {
133424
- this.Canvas.fillStyle=sortBGColor;
133425
- this.Canvas.fillText(sortBGText,xText,yBottom-this.SortConfig.Margin.Bottom);
133426
- }
133427
-
133428
- if (sortType>0)
133429
- {
133430
- this.Canvas.fillStyle=this.SortConfig.Color[sortType];
133431
- this.Canvas.fillText(sortText,xText,yBottom-this.SortConfig.Margin.Bottom);
133432
- }
133433
-
133434
- this.Canvas.font=this.HeaderFont;
133435
- this.Canvas.fillStyle=this.HeaderColor;
133436
-
133437
- if (textSize)
133438
- {
133439
- textSize.Right=x+textWidth+sortTextWidth;
133440
- textSize.Width=textWidth+sortTextWidth;
133441
- }
133442
- }
133443
-
133444
133570
  this.DrawBorder=function()
133445
133571
  {
133446
133572
  if (!this.IsDrawBorder) return;
@@ -134064,9 +134190,7 @@ function ChartReport()
134064
134190
  {
134065
134191
  this.FormatReserveNumber(column, stock, drawInfo);
134066
134192
  }
134067
- else if ([REPORT_COLUMN_ID.RESERVE_STRING1_ID,REPORT_COLUMN_ID.RESERVE_STRING2_ID,REPORT_COLUMN_ID.RESERVE_STRING3_ID,REPORT_COLUMN_ID.RESERVE_STRING4_ID,
134068
- REPORT_COLUMN_ID.RESERVE_STRING5_ID,REPORT_COLUMN_ID.RESERVE_STRING6_ID,REPORT_COLUMN_ID.RESERVE_STRING7_ID,REPORT_COLUMN_ID.RESERVE_STRING8_ID,
134069
- REPORT_COLUMN_ID.RESERVE_STRING9_ID,REPORT_COLUMN_ID.RESERVE_STRING10_ID].includes(column.Type))
134193
+ else if (this.IsReserveString(column.Type))
134070
134194
  {
134071
134195
  this.FormatReserveString(column, stock, drawInfo);
134072
134196
  }
@@ -134125,7 +134249,7 @@ function ChartReport()
134125
134249
 
134126
134250
  this.DrawItemBG(drawInfo);
134127
134251
 
134128
- if (column.Type==REPORT_COLUMN_ID.CUSTOM_STRING_TEXT_ID)
134252
+ if (column.Type==REPORT_COLUMN_ID.CUSTOM_STRING_TEXT_ID || this.IsReserveString(column.Type))
134129
134253
  this.DrawCustomText(drawInfo,column, x, top, textWidth);
134130
134254
  else
134131
134255
  this.DrawItemText(drawInfo.Text, drawInfo.TextColor, drawInfo.TextAlign, x, top, textWidth, drawInfo.BGColor);
@@ -134177,6 +134301,20 @@ function ChartReport()
134177
134301
  return ARARY_TYPE.includes(value);
134178
134302
  }
134179
134303
 
134304
+ this.IsReserveString=function(value)
134305
+ {
134306
+ var ARARY_TYPE=
134307
+ [
134308
+ REPORT_COLUMN_ID.RESERVE_STRING1_ID,REPORT_COLUMN_ID.RESERVE_STRING2_ID,REPORT_COLUMN_ID.RESERVE_STRING3_ID,REPORT_COLUMN_ID.RESERVE_STRING4_ID,
134309
+ REPORT_COLUMN_ID.RESERVE_STRING5_ID,REPORT_COLUMN_ID.RESERVE_STRING6_ID,REPORT_COLUMN_ID.RESERVE_STRING7_ID,REPORT_COLUMN_ID.RESERVE_STRING8_ID,
134310
+ REPORT_COLUMN_ID.RESERVE_STRING9_ID,REPORT_COLUMN_ID.RESERVE_STRING10_ID
134311
+ ];
134312
+
134313
+ return ARARY_TYPE.includes(value);
134314
+ }
134315
+
134316
+
134317
+
134180
134318
  this.DrawCustomText=function(drawInfo, column, left, top, cellWidth)
134181
134319
  {
134182
134320
  if (!drawInfo.Text) return;
@@ -136906,7 +137044,7 @@ function ChartVScrollbar()
136906
137044
  }
136907
137045
  }
136908
137046
 
136909
-
137047
+ /* 使用div替换掉了
136910
137048
  function ChartCellTooltip()
136911
137049
  {
136912
137050
  this.Canvas; //画布
@@ -137068,6 +137206,7 @@ function ChartCellTooltip()
137068
137206
  }
137069
137207
  }
137070
137208
  }
137209
+ */
137071
137210
  /*
137072
137211
  Copyright (c) 2018 jones
137073
137212
 
@@ -140409,7 +140548,7 @@ function ScrollBarBGChart()
140409
140548
 
140410
140549
 
140411
140550
 
140412
- var HQCHART_VERSION="1.1.14257";
140551
+ var HQCHART_VERSION="1.1.14273";
140413
140552
 
140414
140553
  function PrintHQChartVersion()
140415
140554
  {