hqchart 1.1.15018 → 1.1.15029

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.15018",
3
+ "version": "1.1.15029",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -2358,6 +2358,7 @@ function JSSmallFloatTooltip()
2358
2358
  this.DivDialog=null;
2359
2359
  this.DivContent=null;
2360
2360
  this.HQChart=null;
2361
+ this.ClassName="JSSmallFloatTooltip";
2361
2362
 
2362
2363
  this.Destroy=function()
2363
2364
  {
@@ -2445,23 +2446,242 @@ function JSSmallFloatTooltip()
2445
2446
  }
2446
2447
  }
2447
2448
 
2449
+
2450
+ function JSSmallFloatTooltipV2()
2451
+ {
2452
+ this.newMethod=JSSmallFloatTooltip; //派生
2453
+ this.newMethod();
2454
+ delete this.newMethod;
2455
+
2456
+ this.ClassName="JSSmallFloatTooltipV2";
2457
+
2458
+ this.AryData=[]; //输出文字信息
2459
+ this.AryText=[]; //表格tr
2460
+ this.MaxRowCount=25;
2461
+
2462
+ this.BGColor=g_JSChartResource.SmallFloatTooltipV2.BGColor;
2463
+ this.BorderColor=g_JSChartResource.SmallFloatTooltipV2.BorderColor;
2464
+
2465
+ this.TextColor=g_JSChartResource.SmallFloatTooltipV2.TextColor;
2466
+ this.ValueColor=g_JSChartResource.SmallFloatTooltipV2.ValueColor;
2467
+
2468
+ this.ValueAlign=
2469
+ {
2470
+ Left:"UMyChart_Small_Tooltip_V2_Text2_Span", //左对齐
2471
+ MarginLeft:'UMyChart_Small_Tooltip_V2_Text3_Span',
2472
+ Right:"UMyChart_Small_Tooltip_V2_Text_Span",
2473
+ }
2474
+
2475
+ this.TitleAlign=
2476
+ {
2477
+ Default:"UMyChart_Small_Tooltip_V2_Title_Span", //标题默认
2478
+ }
2479
+
2480
+ this.Destroy=function()
2481
+ {
2482
+ this.AryData=[];
2483
+ this.AryText=[];
2484
+ this.HQChart=null;
2485
+
2486
+ if (this.DivDialog)
2487
+ {
2488
+ document.body.removeChild(this.DivDialog);
2489
+ this.DivDialog=null;
2490
+ }
2491
+ }
2492
+
2493
+ this.Create=function()
2494
+ {
2495
+ var divDom=document.createElement("div");
2496
+ divDom.className='UMyChart_Small_Tooltip_V2_Div';
2497
+
2498
+ var table=document.createElement("table");
2499
+ table.className="UMyChart_Small_Tooltip_V2_Table";
2500
+ divDom.appendChild(table);
2501
+
2502
+ var tbody=document.createElement("tbody");
2503
+ tbody.className="UMyChart_Small_Tooltip_V2_Tbody";
2504
+ table.appendChild(tbody);
2505
+
2506
+ this.AryData=[];
2507
+
2508
+ for(var i=0;i<this.MaxRowCount;++i)
2509
+ {
2510
+ var rowItem={ Tr:null, TitleSpan:null, TextSpan:null, TitleTd:null, TextTd:null };
2511
+
2512
+ var trDom=document.createElement("tr");
2513
+ trDom.className='UMyChart_Small_Tooltip_V2_Group_Tr';
2514
+ tbody.appendChild(trDom);
2515
+ rowItem.Tr=trDom;
2516
+
2517
+ var tdDom=document.createElement("td");
2518
+ tdDom.className="UMyChart_Small_Tooltip_V2_Title_Td"; //标题
2519
+ trDom.appendChild(tdDom);
2520
+ rowItem.TitleTd=tdDom;
2521
+
2522
+ var spanDom=document.createElement("span");
2523
+ spanDom.className=this.TitleAlign.Default;
2524
+ spanDom.innerText='标题';
2525
+ tdDom.appendChild(spanDom);
2526
+ rowItem.TitleSpan=spanDom;
2527
+
2528
+ var tdDom=document.createElement("td");
2529
+ tdDom.className="UMyChart_Small_Tooltip_V2_Text_Td"; //数值
2530
+ trDom.appendChild(tdDom);
2531
+ rowItem.TextTd=tdDom;
2532
+
2533
+ var spanDom=document.createElement("span");
2534
+ spanDom.className='UMyChart_Small_Tooltip_V2_Text_Span';
2535
+ spanDom.innerText='数值';
2536
+ tdDom.appendChild(spanDom);
2537
+ rowItem.TextSpan=spanDom;
2538
+
2539
+ this.AryData.push(rowItem);
2540
+ }
2541
+
2542
+ document.body.appendChild(divDom);
2543
+
2544
+ this.DivDialog=divDom;
2545
+
2546
+ this.UpdateStyle();
2547
+ }
2548
+
2549
+ this.UpdateStyle=function()
2550
+ {
2551
+ if (!this.DivDialog) return;
2552
+
2553
+ if (this.BGColor) this.DivDialog.style['background-color']=this.BGColor;
2554
+ if (this.BorderColor) this.DivDialog.style['border-color']=this.BorderColor;
2555
+ }
2556
+
2557
+ this.Update=function(data)
2558
+ {
2559
+ if (!this.DivDialog) return;
2560
+
2561
+ this.AryText=[];
2562
+ for(var i=0;i<data.AryData.length;++i)
2563
+ {
2564
+ var item=data.AryData[i];
2565
+ if (item.Type==1) this.UpdateDefaultTooltip(item);
2566
+ //else if (item.Type==2) this.Updateddd();
2567
+ }
2568
+
2569
+ this.UpdateTableDOM();
2570
+ this.ShowTooltip(data);
2571
+ }
2572
+
2573
+ this.UpdateDefaultTooltip=function(data)
2574
+ {
2575
+ var text=data.Data.Text;
2576
+ var rowItem={ Text:"", HTMLTitle:text, Color:this.ValueColor, IsMergeCell:true };
2577
+ this.AryText.push(rowItem);
2578
+ }
2579
+
2580
+ this.UpdateTableDOM=function()
2581
+ {
2582
+ var index=0;
2583
+ for(index=0;index<this.AryText.length && index<this.MaxRowCount;++index)
2584
+ {
2585
+ var outItem=this.AryText[index];
2586
+ var item=this.AryData[index];
2587
+
2588
+ if (outItem.HTMLTitle) item.TitleSpan.innerHTML=outItem.HTMLTitle
2589
+ else item.TitleSpan.innerText=outItem.Title;
2590
+
2591
+ if (outItem.TitleColor) item.TitleSpan.style.color=outItem.TitleColor;
2592
+ else item.TitleSpan.style.color=this.TextColor;
2593
+
2594
+ if (outItem.HTMLText) item.TextSpan.innerHTML=outItem.HTMLText
2595
+ else item.TextSpan.innerText=outItem.Text;
2596
+
2597
+ item.TextSpan.style.color=outItem.Color;
2598
+ item.TextTd.style.color=outItem.Color;
2599
+
2600
+ if (outItem.ClassName)
2601
+ {
2602
+ item.TextSpan.className=outItem.ClassName;
2603
+ }
2604
+ else
2605
+ {
2606
+ if (item.TextSpan.className!=this.ValueAlign.Right) item.TextSpan.className=this.ValueAlign.Right;
2607
+ }
2608
+
2609
+ if (outItem.TitleClassName)
2610
+ {
2611
+ item.TitleSpan.className=outItem.TitleClassName;
2612
+ }
2613
+ else
2614
+ {
2615
+ if (item.TitleSpan.className!=this.TitleAlign.Default) item.TitleSpan.className=this.TitleAlign.Default;
2616
+ }
2617
+
2618
+ if (outItem.IsMergeCell) //合并单元格
2619
+ {
2620
+ item.TitleTd.colspan=2;
2621
+ item.TextTd.style.display="none";
2622
+ }
2623
+ else
2624
+ {
2625
+ if (item.TitleTd.colspan!=1) item.TitleTd.colspan=1;
2626
+ item.TextTd.style.display="";
2627
+ }
2628
+
2629
+ item.Tr.style.display="";
2630
+ if (item.Tr2) item.Tr2.style.display="none";
2631
+
2632
+ }
2633
+
2634
+ for( ; index<this.MaxRowCount; ++index)
2635
+ {
2636
+ var item=this.AryData[index];
2637
+ item.Tr.style.display="none";
2638
+ if (item.Tr2) item.Tr2.style.display="none";
2639
+ }
2640
+ }
2641
+ }
2642
+
2448
2643
  function JSSmallFloatTooltipGroup()
2449
2644
  {
2450
2645
  this.AryTooltip=[];
2451
2646
  this.HQChart=null;
2452
2647
  this.MaxCount=5;
2648
+ this.MaxRowCount=15;
2649
+ this.Style=0;
2453
2650
 
2454
2651
  this.Inital=function(hqchart, option)
2455
2652
  {
2456
2653
  this.HQChart=hqchart;
2654
+ if (option)
2655
+ {
2656
+ if (IFrameSplitOperator.IsNumber(option.Style)) this.Style=option.Style;
2657
+ if (IFrameSplitOperator.IsNumber(option.MaxRowCount)) this.Style=option.MaxRowCount;
2658
+ if (IFrameSplitOperator.IsNumber(option.MaxCount)) this.Style=option.MaxCount;
2659
+ }
2660
+ }
2661
+
2662
+ this.CreateTooltipDom=function()
2663
+ {
2664
+ var item=null;
2665
+ if (this.Style==1)
2666
+ {
2667
+ item=new JSSmallFloatTooltipV2();
2668
+ item.MaxRowCount=this.MaxRowCount;
2669
+ }
2670
+ else
2671
+ {
2672
+ item=new JSSmallFloatTooltip();
2673
+ }
2674
+
2675
+ item.HQChart=this.HQChart;
2676
+ return item;
2457
2677
  }
2458
2678
 
2459
2679
  this.Create=function()
2460
2680
  {
2461
2681
  for(var i=0;i<this.MaxCount;++i)
2462
2682
  {
2463
- var item=new JSSmallFloatTooltip();
2464
- item.HQChart=this.HQChart;
2683
+ var item=this.CreateTooltipDom();
2684
+
2465
2685
  item.Create();
2466
2686
  this.AryTooltip.push(item);
2467
2687
  }
@@ -2480,6 +2700,12 @@ function JSSmallFloatTooltipGroup()
2480
2700
 
2481
2701
  this.Update=function(data)
2482
2702
  {
2703
+ if (this.Style==1)
2704
+ {
2705
+ this.UpdateV2(data);
2706
+ return;
2707
+ }
2708
+
2483
2709
  var tooltipData=data.Tooltip;
2484
2710
  var pixelTatio = GetDevicePixelRatio();
2485
2711
  if (pixelTatio===0) pixelTatio=1;
@@ -2501,6 +2727,47 @@ function JSSmallFloatTooltipGroup()
2501
2727
  }
2502
2728
  }
2503
2729
 
2730
+ //Style==1 同价格合并输出
2731
+ this.UpdateV2=function(data)
2732
+ {
2733
+ var tooltipData=data.Tooltip;
2734
+ var pixelTatio = GetDevicePixelRatio();
2735
+ if (pixelTatio===0) pixelTatio=1;
2736
+
2737
+ var x=tooltipData.X/pixelTatio;
2738
+ var mapTooltip=new Map(); //根据Y轴 归类
2739
+ for(var i=0; i<tooltipData.AryData.length;++i)
2740
+ {
2741
+ var item=tooltipData.AryData[i];
2742
+ var key=parseInt(item.Y);
2743
+ if (mapTooltip.has(key))
2744
+ {
2745
+ var mapItem=mapTooltip.get(key);
2746
+ mapItem.AryData.push(item);
2747
+ }
2748
+ else
2749
+ {
2750
+ mapTooltip.set(key, { Key:key, Point:{ X:x, Y:item.Y/pixelTatio }, AryData:[ item ] });
2751
+ }
2752
+ }
2753
+
2754
+ var aryData=[];
2755
+ for(var mapItem of mapTooltip) aryData.push(mapItem[1]);
2756
+
2757
+ for(var i=0; i<aryData.length && i<this.AryTooltip.length; ++i)
2758
+ {
2759
+ var item=aryData[i];
2760
+ var tooltipItem=this.AryTooltip[i];
2761
+ tooltipItem.Update(item);
2762
+ }
2763
+
2764
+ for(var i=tooltipData.AryData.length; i<this.AryTooltip.length; ++i)
2765
+ {
2766
+ var item=this.AryTooltip[i];
2767
+ item.Hide();
2768
+ }
2769
+ }
2770
+
2504
2771
  this.Hide=function()
2505
2772
  {
2506
2773
  for(var i=0;i<this.AryTooltip.length;++i)
@@ -291,7 +291,7 @@ function JSTReportChartContainer(uielement)
291
291
  this.Symbol; //期权对应的品种代码
292
292
  this.Name; //期权对应的品种名称
293
293
  this.NetworkFilter; //数据回调接口
294
- this.Data={ XOffset:0, YOffset:0, Data:[], Price:null }; //股票列表 Price=标的物市场价格
294
+ this.Data={ XOffset:0, YOffset:0, Data:[], Price:null, MatchExePrice:null }; //股票列表 Price=标的物市场价格 MatchExePrice=标的物市场价格匹配的行权价格
295
295
  this.BorderData={ MapData:null }; //key=Field Value:[null, {ExePrice} ,{ExePrice} ]
296
296
  this.SourceData={ Data:[] } ; //原始股票顺序(排序还原用) {ExePrice=行权价格 LeftData:, RightData}
297
297
 
@@ -841,7 +841,11 @@ function JSTReportChartContainer(uielement)
841
841
  }
842
842
  }
843
843
 
844
- if (IFrameSplitOperator.IsNumber(data.price)) this.Data.Price=data.price;
844
+ if (IFrameSplitOperator.IsNumber(data.price))
845
+ {
846
+ this.Data.Price=data.price;
847
+ this.Data.MatchExePrice=null;
848
+ }
845
849
 
846
850
  if (IFrameSplitOperator.IsNonEmptyArray(data.fixedRowData))
847
851
  {
@@ -880,11 +884,13 @@ function JSTReportChartContainer(uielement)
880
884
  //计算统计数据
881
885
  this.CalculateData=function()
882
886
  {
887
+ this.Data.MatchExePrice=null;
883
888
  if (!this.MapExePriceData || this.MapExePriceData.size<=0) return;
884
889
 
885
890
  var leftMaxPosition={ Max:null, ExePrice:null, CellType:1 };
886
891
  var rightMaxPosition={ Max:null,ExePrice:null, CellType:2 };
887
892
  this.BorderData.MapData=new Map();
893
+ var aryPrice=[];
888
894
  for(var mapItem of this.MapExePriceData)
889
895
  {
890
896
  var item=mapItem[1];
@@ -907,6 +913,8 @@ function JSTReportChartContainer(uielement)
907
913
  rightMaxPosition.ExePrice=mapItem[0];
908
914
  }
909
915
  }
916
+
917
+ aryPrice.push(item.ExePrice);
910
918
  }
911
919
 
912
920
  var aryData=[null, null, null];
@@ -914,6 +922,24 @@ function JSTReportChartContainer(uielement)
914
922
  if (rightMaxPosition.ExePrice) aryData[2]=rightMaxPosition;
915
923
 
916
924
  this.BorderData.MapData.set(TREPORT_COLUMN_ID.POSITION_ID, { Data:aryData });
925
+
926
+ if (IFrameSplitOperator.IsNumber(this.Data.Price))
927
+ {
928
+ aryPrice.sort((left, right)=>{ return left-right;});
929
+ var prePrice=null;
930
+ for(var i=0;i<aryPrice.length;++i)
931
+ {
932
+ var value=aryPrice[i];
933
+ if (value>this.Data.Price)
934
+ {
935
+ this.Data.MatchExePrice=prePrice
936
+ break;
937
+ }
938
+
939
+ prePrice=value;
940
+ }
941
+ }
942
+
917
943
  }
918
944
 
919
945
  //读取单条股票json数据
@@ -1968,7 +1994,8 @@ function ChartTReport()
1968
1994
  {
1969
1995
  TextColor:g_JSChartResource.TReport.CenterItem.TextColor,
1970
1996
  BaseTextColor:g_JSChartResource.TReport.CenterItem.BaseTextColor,
1971
- BGColor: g_JSChartResource.TReport.CenterItem.BGColor
1997
+ BGColor: g_JSChartResource.TReport.CenterItem.BGColor,
1998
+ MatchTextColor:g_JSChartResource.TReport.CenterItem.MatchTextColor,
1972
1999
  };
1973
2000
 
1974
2001
  //缓存
@@ -2487,13 +2514,13 @@ function ChartTReport()
2487
2514
  var leftBGColor=null, rightBGColor=null;
2488
2515
  if (exePrice>this.Data.Price)
2489
2516
  {
2490
- leftBGColor=this.UpBGColor;
2491
- rightBGColor=this.DownBGColor;
2517
+ leftBGColor=this.DownBGColor;
2518
+ rightBGColor=this.UpBGColor;
2492
2519
  }
2493
2520
  else
2494
2521
  {
2495
- leftBGColor=this.DownBGColor;
2496
- rightBGColor=this.UpBGColor;
2522
+ leftBGColor=this.UpBGColor;
2523
+ rightBGColor=this.DownBGColor;
2497
2524
  }
2498
2525
 
2499
2526
  if (leftBGColor)
@@ -2612,6 +2639,11 @@ function ChartTReport()
2612
2639
  var drawInfo={ Text:null, TextColor:this.CenterItemConfig.TextColor, BGColor:this.CenterItemConfig.BGColor, TextAlign:column.TextAlign, Rect:rtItem, RectText:rtText };
2613
2640
  drawInfo.Text=`${data.ExePrice.toFixed(data.Decimal)}`;
2614
2641
 
2642
+ if (IFrameSplitOperator.IsNumber(this.Data.MatchExePrice) && this.Data.MatchExePrice==data.ExePrice)
2643
+ {
2644
+ drawInfo.TextColor=this.CenterItemConfig.MatchTextColor;
2645
+ }
2646
+
2615
2647
  this.FormatCenterItem(data,drawInfo);
2616
2648
 
2617
2649
  this.DrawCell(drawInfo);
@@ -3292,7 +3292,7 @@ function JSAlgorithm(errorHandler,symbolData)
3292
3292
  this.EMA=function(data,dayCount)
3293
3293
  {
3294
3294
  var result = [];
3295
- if (data.length<=0) return result;
3295
+ if (!data || data.length<=0) return result;
3296
3296
 
3297
3297
  if (Array.isArray(dayCount))
3298
3298
  {
@@ -6372,12 +6372,20 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
6372
6372
  canvas.clearRect(0,0,this.UIElement.width,this.UIElement.height);
6373
6373
  }
6374
6374
 
6375
+ this.ClearCorssCursorCanvas=function()
6376
+ {
6377
+ if (!this.CorssCursorCanvas) return;
6378
+
6379
+ this.CorssCursorCanvas.clearRect(0,0,this.CorssCursorElement.width,this.CorssCursorElement.height);
6380
+ }
6381
+
6375
6382
  this.Draw=function()
6376
6383
  {
6377
6384
  if (this.ChartCorssCursor) this.ChartCorssCursor.Status=0;
6378
6385
  if (this.UIElement.width<=0 || this.UIElement.height<=0) return;
6379
6386
 
6380
6387
  this.StopDrawDynamicInfo();
6388
+ this.ClearCorssCursorCanvas();
6381
6389
 
6382
6390
  var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_BEFORE_DRAW);
6383
6391
  if (event && event.Callback)
@@ -6551,7 +6559,6 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
6551
6559
  if (this.CorssCursorCanvas) //独立的十字光标层
6552
6560
  {
6553
6561
  this.ChartCorssCursor.Canvas=this.CorssCursorCanvas;
6554
- this.ChartCorssCursor.Canvas.clearRect(0,0,this.CorssCursorElement.width,this.CorssCursorElement.height)
6555
6562
  bRestoreCanvas=true;
6556
6563
  }
6557
6564
 
@@ -7355,6 +7362,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7355
7362
  {
7356
7363
  if (!this.ChartCorssCursor) return null;
7357
7364
  if (this.ChartCorssCursor.Status===0) return null;
7365
+ if (!this.ChartCorssCursor.IsShowCorss) return null;
7358
7366
 
7359
7367
  var kItem=this.ChartCorssCursor.StringFormatX.KItem;
7360
7368
  if (!kItem) return null;
@@ -54793,6 +54801,8 @@ IFrameSplitOperator.FormatDateTimeStringV2=function(datetime, format, languageID
54793
54801
 
54794
54802
  case "HH:MM:SS":
54795
54803
  return `${IFrameSplitOperator.NumberToString(datetime.getHours())}:${IFrameSplitOperator.NumberToString(datetime.getMinutes())}:${IFrameSplitOperator.NumberToString(datetime.getSeconds())}`;
54804
+ case "MM:SS":
54805
+ return `${IFrameSplitOperator.NumberToString(datetime.getMinutes())}:${IFrameSplitOperator.NumberToString(datetime.getSeconds())}`;
54796
54806
  case "HH:MM":
54797
54807
  return `${IFrameSplitOperator.NumberToString(datetime.getHours())}:${IFrameSplitOperator.NumberToString(datetime.getMinutes())}`;
54798
54808
  case "HH:MM:SS.fff":
@@ -57882,7 +57892,7 @@ function ChartCorssCursor()
57882
57892
 
57883
57893
  //内部使用
57884
57894
  this.Close=null; //收盘价格
57885
- this.Status=0; //当前状态 0=隐藏 1=显示
57895
+ this.Status=0; //当前状态 0=隐藏 1=显示底部 2=十字线
57886
57896
 
57887
57897
  this.ReloadResource=function(resource)
57888
57898
  {
@@ -77453,6 +77463,15 @@ function JSChartResource()
77453
77463
  ValueColor:"rgb(0,0,0)", //数值
77454
77464
  };
77455
77465
 
77466
+ this.SmallFloatTooltipV2=
77467
+ {
77468
+ BGColor:'rgb(250,250,250)', //背景色
77469
+ BorderColor:'rgb(20,20,20)', //边框颜色
77470
+
77471
+ TextColor:"rgb(0,0,0)", //数值名称
77472
+ ValueColor:"rgb(0,0,0)", //数值
77473
+ };
77474
+
77456
77475
  //区间统计
77457
77476
  this.DialogSelectRect=
77458
77477
  {
@@ -78164,7 +78183,8 @@ function JSChartResource()
78164
78183
  {
78165
78184
  TextColor:"rgb(60,60,83)",
78166
78185
  BaseTextColor:"rgb(60,60,83)",
78167
- BGColor:"rgb(180,180,180)"
78186
+ BGColor:"rgb(180,180,180)",
78187
+ MatchTextColor:"rgb(60,60,83)",
78168
78188
  },
78169
78189
 
78170
78190
  FieldColor:
@@ -79238,8 +79258,20 @@ function JSChartResource()
79238
79258
 
79239
79259
  if (style.ChartDrawTVLongPosition) this.SetChartDrawTVLongPosition(style.ChartDrawTVLongPosition);
79240
79260
  if (style.KLineCountDownPaint) this.SetKLineCountDownPaint(style.KLineCountDownPaint);
79261
+
79262
+ if (style.SmallFloatTooltipV2) this.SetSmallFloatTooltipV2(style.SmallFloatTooltipV2);
79241
79263
  }
79242
79264
 
79265
+ this.SetSmallFloatTooltipV2=function(style)
79266
+ {
79267
+ var dest=this.SmallFloatTooltipV2;
79268
+
79269
+ if (style.BGColor) dest.BGColor=style.BGColor;
79270
+ if (style.BorderColor) dest.BorderColor=style.BorderColor;
79271
+
79272
+ if (style.TextColor) dest.TextColor=style.TextColor;
79273
+ if (style.ValueColor) dest.ValueColor=style.ValueColor;
79274
+ }
79243
79275
 
79244
79276
  this.SetKLineCountDownPaint=function(style)
79245
79277
  {
@@ -79774,6 +79806,7 @@ function JSChartResource()
79774
79806
  if (cell.TextColor) dest.CenterItem.TextColor=cell.TextColor;
79775
79807
  if (cell.BaseTextColor) dest.CenterItem.BaseTextColor=cell.BaseTextColor;
79776
79808
  if (cell.BGColor) dest.CenterItem.BGColor=cell.BGColor;
79809
+ if (cell.MatchTextColor) dest.CenterItem.MatchTextColor=cell.MatchTextColor;
79777
79810
  }
79778
79811
 
79779
79812
  if (item.Item)
@@ -2000,7 +2000,7 @@ input[type="color"] {
2000
2000
 
2001
2001
 
2002
2002
  /*
2003
- 小浮窗
2003
+ 十字光标小浮窗
2004
2004
  */
2005
2005
  .UMyChart_Small_Tooltip_Div
2006
2006
  {
@@ -2024,6 +2024,76 @@ input[type="color"] {
2024
2024
  margin: 5px 5px 5px 5px;
2025
2025
  }
2026
2026
 
2027
+ /*
2028
+ 十字光标小浮窗V2
2029
+ */
2030
+ .UMyChart_Small_Tooltip_V2_Div
2031
+ {
2032
+ font-family: "微软雅黑";
2033
+ /*display: flex;*/
2034
+ border: 1px solid;
2035
+ width:fit-content;
2036
+ border-color: rgb(204,204,204);
2037
+ visibility:hidden;
2038
+ position: absolute;
2039
+ background-color: rgba(20,20,20,1);
2040
+ left:1px;
2041
+ top:1px;
2042
+ pointer-events:none;
2043
+ z-index: 98;
2044
+ }
2045
+
2046
+
2047
+ .UMyChart_Small_Tooltip_V2_Table
2048
+ {
2049
+ border-spacing: 3px;
2050
+ user-select: none;
2051
+ font-size:12px;
2052
+ }
2053
+
2054
+ .UMyChart_Small_Tooltip_V2_Group_Tr
2055
+ {
2056
+
2057
+ }
2058
+
2059
+ .UMyChart_Small_Tooltip_V2_Title_Td
2060
+ {
2061
+ min-width: 40px;
2062
+ }
2063
+
2064
+ .UMyChart_Small_Tooltip_V2_Text_Td
2065
+ {
2066
+ min-width:80px;
2067
+ max-width: 500px;
2068
+
2069
+ white-space: nowrap;
2070
+ overflow: hidden;
2071
+ text-overflow: ellipsis;
2072
+ }
2073
+
2074
+ .UMyChart_Tooltip_Float_Title_Span
2075
+ {
2076
+ color: rgb(230,230,230);
2077
+ }
2078
+
2079
+ .UMyChart_Small_Tooltip_V2_Text_Span
2080
+ {
2081
+ float: right;
2082
+ margin-right: 1px;
2083
+ color: rgb(230,230,230);
2084
+ }
2085
+
2086
+ .UMyChart_Tooltip_Float_Text2_Span
2087
+ {
2088
+ margin-left: 1px;
2089
+ }
2090
+
2091
+ .UMyChart_Tooltip_Float_Text3_Span
2092
+ {
2093
+ margin-left: 5px;
2094
+
2095
+ }
2096
+
2027
2097
  /*
2028
2098
  Copyright (c) 2018 jones
2029
2099
 
@@ -483,6 +483,15 @@ function GetBlackStyle()
483
483
  ValueColor:"rgb(210,210,210)", //数值
484
484
  },
485
485
 
486
+ SmallFloatTooltipV2:
487
+ {
488
+ BGColor:'rgb(20,20,20)', //背景色
489
+ BorderColor:'rgb(170,170,170)', //边框颜色
490
+
491
+ TextColor:"rgb(210,210,210)", //数值名称
492
+ ValueColor:"rgb(210,210,210)", //数值
493
+ },
494
+
486
495
  DialogSelectRect:
487
496
  {
488
497
  BGColor:'rgb(20,20,20)', //背景色
@@ -913,7 +922,8 @@ function GetBlackStyle()
913
922
  {
914
923
  TextColor:"rgb(16,226,217)",
915
924
  BaseTextColor:"rgb(60,60,83)",
916
- BGColor:"rgb(65,65,65)"
925
+ BGColor:"rgb(65,65,65)",
926
+ MatchTextColor:"rgb(210,210,210)"
917
927
  },
918
928
 
919
929
  FieldColor: