hqchart 1.1.13375 → 1.1.13381

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.
@@ -6090,6 +6090,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
6090
6090
  JSChart.LastVersion=null; //最新的版本号
6091
6091
  JSChart.EnableCanvasWillReadFrequently=false; //https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently
6092
6092
  JSChart.CorssCursorCanvasKey="hqchart_corsscursor";
6093
+ JSChart.TooltipCursorCanvasKey="hqchart_tooltip";
6093
6094
 
6094
6095
  //初始化
6095
6096
  JSChart.Init=function(divElement,bScreen,bCacheCanvas)
@@ -6500,6 +6501,7 @@ var JSCHART_OPERATOR_ID=
6500
6501
  OP_SCROOLBAR_SLIDER_CHANGED:15, //滑块变动
6501
6502
 
6502
6503
  OP_GOTO:16, //移动到某一个天或某一个分钟
6504
+ OP_GOTO_BY_DATAINDEX:17, //的移动到某一个数据起始位置
6503
6505
  }
6504
6506
 
6505
6507
  var JSCHART_DRAG_ID=
@@ -14721,15 +14723,21 @@ function AverageWidthFrame()
14721
14723
  if (!text) return;
14722
14724
 
14723
14725
  var pixelRatio=GetDevicePixelRatio();
14726
+ var canvas=this.Canvas;
14727
+ if (this.GetExtraCanvas)
14728
+ {
14729
+ var finder=this.GetExtraCanvas(JSChart.TooltipCursorCanvasKey);
14730
+ if (finder) canvas=finder.Canvas;
14731
+ }
14724
14732
 
14725
14733
  var xCenter=mouseOnToolbar.Rect.Left+mouseOnToolbar.Rect.Width/2;
14726
14734
 
14727
- this.Canvas.font=this.ButtonTooltip.Font;
14728
- this.Canvas.textAlign="left";
14729
- this.Canvas.textBaseline="bottom";
14735
+ canvas.font=this.ButtonTooltip.Font;
14736
+ canvas.textAlign="left";
14737
+ canvas.textBaseline="bottom";
14730
14738
 
14731
14739
  var mergin= this.ButtonTooltip.Mergin;
14732
- var textWidth=this.Canvas.measureText(text).width+mergin.Left+mergin.Right;
14740
+ var textWidth=canvas.measureText(text).width+mergin.Left+mergin.Right;
14733
14741
  var textHeight=this.GetFontHeight();
14734
14742
  var bgHeight=textHeight+mergin.Top+mergin.Bottom;
14735
14743
  if (mouseOnToolbar.ID=="TitleButton")
@@ -14761,25 +14769,25 @@ function AverageWidthFrame()
14761
14769
  if (IFrameSplitOperator.IsNumber(this.ButtonTooltip.BorderRadius)) //圆角
14762
14770
  {
14763
14771
  var roundRadius=this.ButtonTooltip.BorderRadius;
14764
- this.Canvas.beginPath();
14765
- this.Canvas.roundRect(ToFixedPoint(x), ToFixedPoint(y), ToFixedRect(textWidth), ToFixedRect(bgHeight), [roundRadius]);
14766
- this.Canvas.closePath();
14772
+ canvas.beginPath();
14773
+ canvas.roundRect(ToFixedPoint(x), ToFixedPoint(y), ToFixedRect(textWidth), ToFixedRect(bgHeight), [roundRadius]);
14774
+ canvas.closePath();
14767
14775
 
14768
- this.Canvas.fillStyle=this.ButtonTooltip.ColorBG;
14769
- this.Canvas.fill();
14776
+ canvas.fillStyle=this.ButtonTooltip.ColorBG;
14777
+ canvas.fill();
14770
14778
 
14771
- this.Canvas.strokeStyle=this.ButtonTooltip.ColorBorder;
14772
- this.Canvas.stroke();
14779
+ canvas.strokeStyle=this.ButtonTooltip.ColorBorder;
14780
+ canvas.stroke();
14773
14781
 
14774
- this.Canvas.fillStyle=this.ButtonTooltip.Color;
14775
- this.Canvas.fillText(text, x+mergin.Left, y+bgHeight-mergin.Bottom);
14782
+ canvas.fillStyle=this.ButtonTooltip.Color;
14783
+ canvas.fillText(text, x+mergin.Left, y+bgHeight-mergin.Bottom);
14776
14784
  }
14777
14785
  else
14778
14786
  {
14779
- this.Canvas.fillStyle=this.ButtonTooltip.ColorBG;
14780
- this.Canvas.fillRect(x,y,textWidth,bgHeight); //画一个背景色, 不然是一个黑的背景
14781
- this.Canvas.fillStyle=this.ButtonTooltip.Color;
14782
- this.Canvas.fillText(text, x+mergin.Left,y+bgHeight-mergin.Bottom);
14787
+ canvas.fillStyle=this.ButtonTooltip.ColorBG;
14788
+ canvas.fillRect(x,y,textWidth,bgHeight); //画一个背景色, 不然是一个黑的背景
14789
+ canvas.fillStyle=this.ButtonTooltip.Color;
14790
+ canvas.fillText(text, x+mergin.Left,y+bgHeight-mergin.Bottom);
14783
14791
  }
14784
14792
 
14785
14793
 
@@ -73157,6 +73165,29 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73157
73165
 
73158
73166
  this.ChartOperator_Temp_Update();
73159
73167
  }
73168
+ else if (id==JSCHART_OPERATOR_ID.OP_GOTO_BY_DATAINDEX) //{PageSize:可选, DataIndex:起始位置数据索引}
73169
+ {
73170
+ if (!IFrameSplitOperator.IsNumber(obj.DataIndex)) return;
73171
+ var hisData=this.ChartOperator_Temp_GetHistroyData();
73172
+ if (!hisData) return; //数据还没有到达
73173
+ if (obj.DataIndex<0 || obj.DataIndex>=hisData.Data.length)
73174
+ {
73175
+ JSConsole.Chart.Log(`[KLineChartContainer::ChartOperator] OP_GOTO_BY_DATAINDEX obj.DataIndex=${obj.DataIndex} error.}`);
73176
+ return;
73177
+ }
73178
+
73179
+ var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;
73180
+ var xPointCount=oldXPointCount;
73181
+ if (obj.PageSize>0) xPointCount=obj.PageSize; //调整一屏显示的个数
73182
+ if (xPointCount!=oldXPointCount) this.Frame.SetXShowCount(xPointCount); //设置X轴显示数据个数
73183
+
73184
+ hisData.DataOffset=obj.DataIndex;
73185
+ this.CursorIndex=0;
73186
+ this.LastPoint.X=null;
73187
+ this.LastPoint.Y=null;
73188
+
73189
+ this.ChartOperator_Temp_Update();
73190
+ }
73160
73191
  else if (id==JSCHART_OPERATOR_ID.OP_CORSSCURSOR_GOTO) //移动十字光标{ Date:, Time }
73161
73192
  {
73162
73193
  if (!IFrameSplitOperator.IsNumber(obj.Date)) return;
@@ -73607,6 +73638,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73607
73638
 
73608
73639
  var frame=g_ChartFrameFactory.Create("KLineFrame", { ID:i });
73609
73640
  frame.Canvas=this.Canvas;
73641
+ frame.GetExtraCanvas=(name)=>{ this.GetExtraCanvas(name); };
73610
73642
  frame.ChartBorder=border;
73611
73643
  frame.Identify=i; //窗口序号
73612
73644
  frame.RightSpaceCount=this.RightSpaceCount; //右边
@@ -73692,6 +73724,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73692
73724
  var frame=g_ChartFrameFactory.Create(frameClassName, { ID:id });
73693
73725
 
73694
73726
  frame.Canvas=this.Canvas;
73727
+ frame.GetExtraCanvas=(name)=>{ this.GetExtraCanvas(name); };
73695
73728
  frame.ChartBorder=border;
73696
73729
  frame.Identify=id; //窗口序号
73697
73730
  frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
@@ -87629,6 +87662,7 @@ function KLineChartHScreenContainer(uielement)
87629
87662
 
87630
87663
  var frame=g_ChartFrameFactory.Create("KLineHScreenFrame", { ID:i });
87631
87664
  frame.Canvas=this.Canvas;
87665
+ frame.GetExtraCanvas=(name)=>{ this.GetExtraCanvas(name); };
87632
87666
  frame.ChartBorder=border;
87633
87667
  frame.Identify=i; //窗口序号
87634
87668
  frame.RightSpaceCount=this.RightSpaceCount; //右边
@@ -136410,7 +136444,8 @@ var JS_DRAWTOOL_MENU_ID=
136410
136444
  CMD_DELETE_DRAW_CHART_ID:6,
136411
136445
 
136412
136446
  CMD_CHANGE_FONT_COLOR_ID:7, //切换字体颜色
136413
- CMD_CHANGE_BG_COLOR_ID:8 //切换背景色
136447
+ CMD_CHANGE_BG_COLOR_ID:8, //切换背景色
136448
+ CMD_CHANGE_BORDER_COLOR_ID:9, //边框颜色
136414
136449
  };
136415
136450
 
136416
136451
  function JSDialogDrawTool()
@@ -137002,16 +137037,19 @@ function JSDialogModifyDraw()
137002
137037
  this.ColorButton=null;
137003
137038
  this.BGColorButton=null;
137004
137039
  this.FontColorButton=null;
137040
+ this.BorderColorButton=null;
137005
137041
 
137006
137042
  this.RandomLineColor=["rgb(255,69,0)", "rgb(173,255,47)", "rgb(238,154,73)", "rgb(255,105,180)"]; //线段颜色
137007
137043
  this.RandomBGColor=["rgba(210,251,209,0.8)", "rgb(217,217,253)", "rgb(255,208,204)", "rgb(252,249,206)"]; //背景颜色
137008
137044
  this.RandomFontColor=["rgb(0,0,0)", "rgb(255, 0, 0)", "rgb(20, 255, 0)", "rgb(255, 0, 255)"]; //文字颜色
137045
+ this.RandomBorderColor=["rgb(0,0,0)", "rgb(5, 246, 143)", "rgb(139, 137, 137)", "rgb(255, 20, 147)"]; //边框颜色
137009
137046
 
137010
137047
  this.AryButton=
137011
137048
  [
137012
- { Title:"点击线段颜色", ClassName: 'hqchart_drawtool icon-huabi', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID }},
137013
- { Title:"点击字体颜色", ClassName: 'hqchart_drawtool icon-zitiyanse', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID }},
137014
- { Title:"点击背景色", ClassName: 'hqchart_drawtool icon-zitibeijingse', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID }},
137049
+ { Title:"修改线段颜色", ClassName: 'hqchart_drawtool icon-huabi', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID }},
137050
+ { Title:"修改字体颜色", ClassName: 'hqchart_drawtool icon-zitiyanse', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID }},
137051
+ { Title:"修改背景颜色", ClassName: 'hqchart_drawtool icon-zitibeijingse', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID }},
137052
+ { Title:"修改边框颜色", ClassName: 'hqchart_drawtool icon-biankuang', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID }},
137015
137053
  { Title:"删除图形", ClassName: 'hqchart_drawtool icon-recycle_bin', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID }}
137016
137054
  ];
137017
137055
 
@@ -137092,6 +137130,11 @@ function JSDialogModifyDraw()
137092
137130
  this.FontColorButton=data;
137093
137131
  divItem.style.display="none";
137094
137132
  break;
137133
+ case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:
137134
+ this.BorderColorButton=data;
137135
+ divItem.style.display="none";
137136
+ break;
137137
+
137095
137138
  }
137096
137139
 
137097
137140
  parentDivDom.appendChild(divItem);
@@ -137117,6 +137160,9 @@ function JSDialogModifyDraw()
137117
137160
  case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:
137118
137161
  this.ModifyFontColor();
137119
137162
  break;
137163
+ case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:
137164
+ this.ModifyBorderColor();
137165
+ break;
137120
137166
  }
137121
137167
  }
137122
137168
 
@@ -137241,6 +137287,28 @@ function JSDialogModifyDraw()
137241
137287
  this.HQChart.Draw();
137242
137288
  }
137243
137289
 
137290
+ this.ModifyBorderColor=function()
137291
+ {
137292
+ if (!this.ChartPicture || !this.HQChart) return;
137293
+
137294
+ if (this.ChartPicture.ClassName=="ChartDrawNote")
137295
+ {
137296
+ var color=this.GetRandomColor(this.ChartPicture.NoteBorderColor, this.RandomBorderColor);
137297
+ this.ChartPicture.NoteBorderColor=color;
137298
+ }
137299
+ else
137300
+ {
137301
+ var color=this.GetRandomColor(this.ChartPicture.BorderColor, this.RandomBorderColor);
137302
+ this.ChartPicture.BorderColor=color;
137303
+ }
137304
+
137305
+
137306
+ if (this.BorderColorButton) this.BorderColorButton.Span.style['color']=color;
137307
+ if (this.HQChart.ChartDrawStorage) this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture); //保存下
137308
+
137309
+ this.HQChart.Draw();
137310
+ }
137311
+
137244
137312
  this.Show=function(x, y)
137245
137313
  {
137246
137314
  if (!this.DivDialog) this.Create();
@@ -137254,22 +137322,26 @@ function JSDialogModifyDraw()
137254
137322
  {
137255
137323
  this.ChartPicture=chart;
137256
137324
 
137257
- var bShowLineColor=true, bShowBGColor=false, bShowFontColor=false;
137258
- var bgColor=null, fontColor=null;
137325
+ var bShowLineColor=true, bShowBGColor=false, bShowFontColor=false, bShowBorderColor=false;
137326
+ var bgColor=null, fontColor=null,borderColor=null;
137259
137327
  var ARRAY_TEXT_CHART=['ChartDrawPriceLabel', "ChartDrawAnchoredText","ChartDrawPriceNote"];
137260
137328
  if (ARRAY_TEXT_CHART.includes(chart.ClassName))
137261
137329
  {
137262
137330
  bShowBGColor=true;
137263
137331
  bShowFontColor=true;
137332
+ bShowBorderColor=true;
137264
137333
  bgColor=chart.BGColor;
137265
137334
  fontColor=chart.TextColor;
137335
+ borderColor=chart.BorderColor;
137266
137336
  }
137267
137337
  else if (chart.ClassName=="ChartDrawNote")
137268
137338
  {
137269
137339
  bShowBGColor=true;
137270
137340
  bShowFontColor=true;
137341
+ bShowBorderColor=true;
137271
137342
  bgColor=chart.NoteBGColor;
137272
137343
  fontColor=chart.NoteTextColor;
137344
+ borderColor=chart.NoteBorderColor;
137273
137345
  }
137274
137346
 
137275
137347
  if (this.ColorButton)
@@ -137301,6 +137373,16 @@ function JSDialogModifyDraw()
137301
137373
  item.Span.style['color']=fontColor;
137302
137374
  }
137303
137375
  }
137376
+
137377
+ if (this.BorderColorButton)
137378
+ {
137379
+ var item=this.BorderColorButton;
137380
+ this.ShowButton(item.Div, bShowBorderColor?"inline":"none");
137381
+ if (bShowBorderColor)
137382
+ {
137383
+ item.Span.style['color']=borderColor;
137384
+ }
137385
+ }
137304
137386
 
137305
137387
  }
137306
137388
 
@@ -137470,22 +137552,52 @@ function HQChartScriptWorker()
137470
137552
 
137471
137553
 
137472
137554
 
137473
- var HQCHART_VERSION="1.1.13374";
137555
+ var HQCHART_VERSION="1.1.13380";
137474
137556
 
137475
137557
  function PrintHQChartVersion()
137476
137558
  {
137477
- var log=
137478
- `*************************************************************************************************************
137559
+ var logo=`
137560
+
137561
+ ***************************************************************************************************************************************************************************
137562
+ *
137563
+ * :%@@-
137564
+ * :@@@@-
137565
+ * =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@.
137566
+ * :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@*
137567
+ * +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+
137568
+ * %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@=
137569
+ * @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@-
137570
+ * @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%%
137571
+ * .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@
137572
+ * :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@#
137573
+ * -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@.
137574
+ * +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#::
137575
+ * #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+
137576
+ * %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@-
137577
+ * @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@.
137578
+ * .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@.
137579
+ * -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@
137580
+ * =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@
137581
+ * +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@#
137582
+ * *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+
137583
+ * %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@-
137584
+ * @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+
137585
+ * .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+-
137586
+ * :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@-
137587
+ * =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@#
137588
+ * *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@*
137589
+ * =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:.
137590
+ *
137591
+ *
137592
+ * HQChart
137593
+ * Ver: ${HQCHART_VERSION}
137594
+ * License: Apache License 2.0
137595
+ * Source: https://github.com/jones2000/HQChart
137479
137596
  *
137480
- * HQChart Ver: ${HQCHART_VERSION}
137481
- *
137482
- * License: Apache License 2.0
137483
- * Source: https://github.com/jones2000/HQChart
137484
- *
137485
- *************************************************************************************************************
137486
- `
137487
-
137488
- console.log(log);
137597
+ **************************************************************************************************************************************************************************
137598
+ `;
137599
+
137600
+ console.log(logo);
137489
137601
  }
137490
137602
 
137491
137603