hqchart 1.1.15198 → 1.1.15210

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.
@@ -1192,7 +1192,7 @@ if(option.CustomShow&&IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date)){
1192
1192
  {if(option.DrawPicture.StorageKey&&chart.ChartDrawStorage)chart.ChartDrawStorage.SetKey(option.DrawPicture.StorageKey);}if(option.DrawTool)//画图工具
1193
1193
  {var item=option.DrawTool;if(chart.ChartDrawStorage){if(item.StorageKey)chart.ChartDrawStorage.SetKey(item.StorageKey);if(IFrameSplitOperator.IsBool(item.EnableCrossPeriod))chart.ChartDrawStorage.EnableCrossPeriod=item.EnableCrossPeriod;}}if(chart.ChartDrawStorage)chart.ChartDrawStorage.Load();if(option.KeyboardMove){var item=option.KeyboardMove;if(IFrameSplitOperator.IsPlusNumber(item.Delay))chart.KeyboardMove.Delay=item.Delay;if(IFrameSplitOperator.IsPlusNumber(item.PressTime))chart.KeyboardMove.PressTime=item.PressTime;}if(IFrameSplitOperator.IsNumber(option.StepPixel))chart.StepPixel=option.StepPixel;if(option.ZoomStepPixel>0)chart.ZoomStepPixel=option.ZoomStepPixel;if(option.IsApiPeriod==true)chart.IsApiPeriod=option.IsApiPeriod;//图形选中
1194
1194
  if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.IsBool(item.EnableSelected))chart.SelectedChart.EnableSelected=item.EnableSelected;if(IFrameSplitOperator.IsBool(item.EnableMoveOn))chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;}if(option.PressKeyboardConfig)this.SetPressKeyboardConfig(chart,option.PressKeyboardConfig);if(!option.Windows||option.Windows.length<=0)return null;//K线扩展计算方法配置
1195
- if(IFrameSplitOperator.IsNonEmptyArray(option.KLineCalcOption)){for(var i=0;i<option.KLineCalcOption.length;++i){var item=option.KLineCalcOption[i];if(!item.ClassName||!item.Option)continue;chart.SetKLineCalcOption(item.ClassName,item.Option);}}if(option.FastSlide){var item=option.FastSlide;if(IFrameSplitOperator.IsNumber(item.MinDistance))chart.FastSlideConfig.MinDistance=item.MinDistance;if(IFrameSplitOperator.IsNumber(item.MinSpeed))chart.FastSlideConfig.MinSpeed=item.MinSpeed;if(IFrameSplitOperator.IsNumber(item.MaxTime))chart.FastSlideConfig.MaxTime=item.MaxTime;if(IFrameSplitOperator.IsBool(item.Enable))chart.FastSlideConfig.Enable=item.Enable;}if(chart.ClassName=="KLineChartContainer"){if(!option.DragSelectRect){option.DragSelectRect={Enable:true};//默认开启区间选中画布
1195
+ if(IFrameSplitOperator.IsNonEmptyArray(option.KLineCalcOption)){for(var i=0;i<option.KLineCalcOption.length;++i){var item=option.KLineCalcOption[i];if(!item.ClassName||!item.Option)continue;chart.SetKLineCalcOption(item.ClassName,item.Option);}}if(option.FastSlide){var item=option.FastSlide;if(IFrameSplitOperator.IsNumber(item.MinDistance))chart.FastSlideConfig.MinDistance=item.MinDistance;if(IFrameSplitOperator.IsNumber(item.MinSpeed))chart.FastSlideConfig.MinSpeed=item.MinSpeed;if(IFrameSplitOperator.IsNumber(item.MaxTime))chart.FastSlideConfig.MaxTime=item.MaxTime;if(IFrameSplitOperator.IsBool(item.Enable))chart.FastSlideConfig.Enable=item.Enable;}if(option.DataMove){var item=option.DataMove;var subItem=item.Touch;if(subItem&&IFrameSplitOperator.IsBool(subItem.EnableLR))chart.DataMoveConfig.Touch.EnableLR=subItem.EnableLR;var subItem=item.Mouse;if(subItem&&IFrameSplitOperator.IsBool(subItem.EnableLR))chart.DataMoveConfig.Mouse.EnableLR=subItem.EnableLR;}if(chart.ClassName=="KLineChartContainer"){if(!option.DragSelectRect){option.DragSelectRect={Enable:true};//默认开启区间选中画布
1196
1196
  }if(option.DragSelectRect){var zindex=10;var item=option.DragSelectRect;if(IFrameSplitOperator.IsNumber(item.ZIndex))zindex=item.ZIndex;if(item.Enable)this.CreateExtraCanvasElement(JSChart.RectDragCanvasKey,{ZIndex:zindex});//创建独立的区间选择画布
1197
1197
  }if(option.DragKLine){var item=option.DragKLine;if(IFrameSplitOperator.IsBool(item.EnableShfit))chart.KLineDragConfig.EnableShfit=item.EnableShfit;}}//创建子窗口
1198
1198
  chart.Create(option.Windows.length,option);this.SetChartBorder(chart,option);this.AdjustChartBorder(chart);if(option.KLine){if(option.KLine.PageSize>0)//一屏显示的数据个数
@@ -1941,6 +1941,7 @@ this.PreventRightMenu={Timer:null,Enable:false,Delay:2000};//阻止右键菜单
1941
1941
  this.AryHotKey=[];//热键 { KeyID:87, SecondKeyID:1, CMD:JSCHART_MENU_ID.CMD_FULLSCREEN_SUMMARY_ID, Args:null, Description:"Alt+W 全屏区间统计" },
1942
1942
  this.FastSlideConfig={MinDistance:500,MinSpeed:3,MaxTime:250,Enable:false};//快速滑动配置 MinDistance=最小的距离 MinSpeed=最小速度 MaxTime=最大间隔时间(ms)
1943
1943
  this.KeyboardMove={Timer:null,Delay:100,PressTime:500,Enable:false,Event:null};//键盘左右移动 PressTime=长按时间
1944
+ this.DataMoveConfig={Touch:{EnableLR:true},Mouse:{EnableLR:true}};//数据移动配置
1944
1945
  this.MapEventListenerCache=new _map2.default();//addEventListener 监听事件 key=type:"keydown|keyup ....", value:{ Callback:, Option: }
1945
1946
  this.AddEventListener=function(eventTarget,type,listener,option){if(!eventTarget||!type||!listener)return false;var callback=listener.bind(this);var item={Callback:callback,Option:option,Type:type,Element:eventTarget};eventTarget.addEventListener(type,callback,option);this.MapEventListenerCache.set(item.Type,item);return true;};this.RemoveEventListener=function(eventTarget,type){if(!eventTarget||!type)return false;if(!this.MapEventListenerCache.has(type))return false;var item=this.MapEventListenerCache.get(type);if(!item.Element||!item.Callback)return false;this.MapEventListenerCache.delete(item.Type);item.Element.removeEventListener(item.Type,item.Callback,item.Option);};//option={ KeyDown:, Wheel }
1946
1947
  this.AddDefaultEventListener=function(option){var _this4=this;var bRegisterKeydown=true;var bRegisterWheel=true;if(option){if(IFrameSplitOperator.IsBool(option.KeyDown))bRegisterKeydown=option.KeyDown;if(IFrameSplitOperator.IsBool(option.Wheel))bRegisterWheel=option.Wheel;}if(bRegisterKeydown){this.AddEventListener(this.UIElement,"keydown",function(e){_this4.OnKeyDown(e);},true);this.AddEventListener(this.UIElement,"keyup",function(e){_this4.OnKeyUp(e);},true);}if(bRegisterWheel){this.AddEventListener(this.UIElement,"wheel",function(e){_this4.OnWheel(e);},true);}JSConsole.Chart.Log('[JSChartContainer::AddDefaultEventListener] [keydown,keyup]='+bRegisterKeydown+', [wheel]='+bRegisterWheel);};this.RemoveAllEventListener=function(){var _iteratorNormalCompletion2=true;var _didIteratorError2=false;var _iteratorError2=undefined;try{for(var _iterator2=(0,_getIterator3.default)(this.MapEventListenerCache),_step2;!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=true){var mapItem=_step2.value;var item=mapItem[1];if(!item.Element||!item.Callback)continue;item.Element.removeEventListener(item.Type,item.Callback,item.Option);}}catch(err){_didIteratorError2=true;_iteratorError2=err;}finally{try{if(!_iteratorNormalCompletion2&&_iterator2.return){_iterator2.return();}}finally{if(_didIteratorError2){throw _iteratorError2;}}}this.MapEventListenerCache.clear();};this.ClearGlobalOption=function(){if(!this.GlobalOption)return;this.GlobalOption.LatestPoint=null;this.GlobalOption.TradeStatus=null;this.GlobalOption.CountDown=null;};this.RestoreFocus=function(delay){var _this5=this;var value=1000;if(IFrameSplitOperator.IsNumber(delay))value=delay;this.ClearRestoreFocusTimer();this.RestoreFocusTimer=setTimeout(function(){_this5.SetFocus();},value);};this.ClearRestoreFocusTimer=function(){if(this.RestoreFocusTimer){clearTimeout(this.RestoreFocusTimer);this.RestoreFocusTimer=null;}};this.GetVolUnit=function()//成交量单位
@@ -2019,7 +2020,7 @@ JSConsole.Chart.Log("[JSChartContainer::DocOnMouseMove] YDrag ",this.YDrag,yMove
2019
2020
  {var drawPicture=this.CurrentChartDrawPicture;if(drawPicture.Status==1||drawPicture.Status==2){if(Math.abs(drag.LastMove.X-e.clientX)<5&&Math.abs(drag.LastMove.Y-e.clientY)<5)return;if(this.SetChartDrawPictureSecondPoint(e.clientX,e.clientY)){this.DrawDynamicInfo();}}else if(drawPicture.Status==3){if(this.SetChartDrawPictureThirdPoint(e.clientX,e.clientY)){this.DrawDynamicInfo();}}else if(drawPicture.Status==20)//画图工具移动
2020
2021
  {if(Math.abs(drag.LastMove.X-e.clientX)<5&&Math.abs(drag.LastMove.Y-e.clientY)<1)return;if(this.SelectChartDrawPicture){if(this.SelectChartDrawPicture.EnableCtrlMove){if(!e.ctrlKey)return;}}if(this.SelectChartDrawPicture&&this.SelectChartDrawPicture.DragInfo)this.SelectChartDrawPicture.DragInfo.Move={X:e.clientX,Y:e.client};if(this.MoveChartDrawPicture(e.clientX-drag.LastMove.X,e.clientY-drag.LastMove.Y,false,drag)){this.DrawDynamicInfo();}}drag.LastMove.X=e.clientX;drag.LastMove.Y=e.clientY;}else if(drag.Click&&drag.Click.IsInFrameBottom){var dragType=this.GetDragXCoordinateType(e,"DocOnMouseMove");if(dragType==2)this.OnDragXCoordinateZoom(drag,{X:moveSetp,Y:moveSetpY},e);else if(dragType==1)this.OnDragXCoordinateKLine(drag,{X:moveSetp,Y:moveSetpY},e);}else if((bLButtonSelectRect||bRButtonSelectRect)&&!isDragSelectRect&&!isDragSubSelectRect&&!bShfitDragKLine)//左右键区间选择
2021
2022
  {var yMoveSetp=Math.abs(drag.LastMove.Y-e.clientY);if(moveSetp<5&&yMoveSetp<5)return;this.SetCursor({Cursor:"default"});var ptStart=this.PointAbsoluteToRelative(drag.Click.X,drag.Click.Y);var ptEnd=this.PointAbsoluteToRelative(e.clientX,e.clientY);this.ShowDragSelectRect(ptStart,ptEnd);drag.LastMove.X=e.clientX;drag.LastMove.Y=e.clientY;}else if(this.DragMode==1||isDragSelectRect||isDragSubSelectRect)//数据上下左右拖拽 区间选择框左右拖动
2022
- {this.OnDragMode_One({X:moveSetp,Y:moveSetpY},e);}};//X轴坐标拖动 缩放K线
2023
+ {if(this.DataMoveConfig.Mouse.EnableLR)this.OnDragMode_One({X:moveSetp,Y:moveSetpY},e);}};//X轴坐标拖动 缩放K线
2023
2024
  this.OnDragXCoordinateZoom=function(drag,moveData,e){var moveSetp=moveData.X;var moveSetpY=moveData.Y;if(moveSetp<5)return;var isLeft=true;if(drag.LastMove.X<e.clientX)isLeft=false;//右移数据
2024
2025
  var cursorStatus="ew-resize";var oneStepWidth=this.GetMoveOneStepWidth();if(moveSetp<oneStepWidth){this.SetCursor({Cursor:cursorStatus});return;}if(this.XCoordinateZoom(moveSetp,isLeft)){this.UpdataDataoffset();this.UpdateFrameMaxMin();this.ResetFrameXYSplit();this.Draw();this.OnKLinePageChange("datamove");}drag.LastMove.X=e.clientX;this.SetCursor({Cursor:cursorStatus});};//X轴坐标拖动 拖动K线
2025
2026
  this.OnDragXCoordinateKLine=function(drag,moveData,e){var moveSetpX=moveData.X;var moveSetpY=moveData.Y;if(moveSetpX<5)return false;var isLeft=true;if(drag.LastMove.X<e.clientX)isLeft=false;//右移数据
@@ -2103,7 +2104,7 @@ if(this.CurrentChartDrawPicture&&this.CurrentChartDrawPicture.EnableMove===true)
2103
2104
  {var mouseDrag=this.MouseDrag;this.MouseDrag=null;this.MoveCorssCursor(drag.Click,e);//移动十字光标
2104
2105
  }else if(this.DragMode==1||isMoveCorssCursor==false)//数据左右拖拽
2105
2106
  {if((moveUpDown>0&&moveSetp<=3||moveAngle<=this.TouchMoveMinAngle)&&this.EnableScrollUpDown==true){this.StopDragTimer();return;}if(moveSetp<5||moveAngle<=this.TouchMoveMinAngle){this.PreventTouchEvent(e);return;}if(this.EnableVerticalDrag){if(!this.VerticalDrag)return;if(!this.VerticalDrag.IsDrag)return;}var isLeft=true;if(drag.LastMove.X<touches[0].clientX)isLeft=false;//右移数据
2106
- var oneStepWidth=this.GetMoveOneStepWidth();if(moveSetp<oneStepWidth)return;if(this.DataMove(moveSetp,isLeft)){this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.ResetFrameXYSplit();this.Draw();this.OnKLinePageChange("OnTouchMove");}else{if(this.DragDownloadData)this.DragDownloadData();}drag.LastMove.X=touches[0].clientX;drag.LastMove.Y=touches[0].clientY;}}if(this.PhoneTouchInfo){this.PhoneTouchInfo.End.X=touches[0].clientX;this.PhoneTouchInfo.End.Y=touches[0].clientY;}if(this.TouchDrag){var touchDrag=this.TouchDrag;touchDrag.LastMove.X=touches[0].clientX;touchDrag.LastMove.Y=touches[0].clientY;}}else if(this.IsPhonePinching(e)){if(this.DragMode==JSCHART_DRAG_ID.DISABLE_DRAG_ID)return;this.PreventTouchEvent(e);var phonePinch=this.PhonePinch;if(!phonePinch)return;phonePinch.Operator=null;if(this.EnableZoomUpDown&&this.EnableZoomUpDown.Touch===false)return;var yHeight=Math.abs(touches[0].pageY-touches[1].pageY);var yLastHeight=Math.abs(phonePinch.Last.Y-phonePinch.Last.Y2);var yStep=yHeight-yLastHeight;var xHeight=Math.abs(touches[0].pageX-touches[1].pageX);var xLastHeight=Math.abs(phonePinch.Last.X-phonePinch.Last.X2);var xStep=xHeight-xLastHeight;var minStep=this.ZoomStepPixel;if(Math.abs(yStep)<minStep&&Math.abs(xStep)<minStep)return;var step=yStep;if(Math.abs(yStep)<minStep)step=xStep;if(step>0)//放大
2107
+ var oneStepWidth=this.GetMoveOneStepWidth();if(moveSetp<oneStepWidth)return;if(this.DataMoveConfig.Touch.EnableLR){if(this.DataMove(moveSetp,isLeft)){this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.ResetFrameXYSplit();this.Draw();this.OnKLinePageChange("OnTouchMove");}else{if(this.DragDownloadData)this.DragDownloadData();}}drag.LastMove.X=touches[0].clientX;drag.LastMove.Y=touches[0].clientY;}}if(this.PhoneTouchInfo){this.PhoneTouchInfo.End.X=touches[0].clientX;this.PhoneTouchInfo.End.Y=touches[0].clientY;}if(this.TouchDrag){var touchDrag=this.TouchDrag;touchDrag.LastMove.X=touches[0].clientX;touchDrag.LastMove.Y=touches[0].clientY;}}else if(this.IsPhonePinching(e)){if(this.DragMode==JSCHART_DRAG_ID.DISABLE_DRAG_ID)return;this.PreventTouchEvent(e);var phonePinch=this.PhonePinch;if(!phonePinch)return;phonePinch.Operator=null;if(this.EnableZoomUpDown&&this.EnableZoomUpDown.Touch===false)return;var yHeight=Math.abs(touches[0].pageY-touches[1].pageY);var yLastHeight=Math.abs(phonePinch.Last.Y-phonePinch.Last.Y2);var yStep=yHeight-yLastHeight;var xHeight=Math.abs(touches[0].pageX-touches[1].pageX);var xLastHeight=Math.abs(phonePinch.Last.X-phonePinch.Last.X2);var xStep=xHeight-xLastHeight;var minStep=this.ZoomStepPixel;if(Math.abs(yStep)<minStep&&Math.abs(xStep)<minStep)return;var step=yStep;if(Math.abs(yStep)<minStep)step=xStep;if(step>0)//放大
2107
2108
  {var cursorIndex={IsLockRight:this.IsZoomLockRight};cursorIndex.Index=parseInt(Math.abs(this.CursorIndex-0.5).toFixed(0));if(!this.Frame.ZoomUp(cursorIndex))return;phonePinch.Operator="ZoomUp";this.CursorIndex=cursorIndex.Index;this.UpdatePointByCursorIndex();this.UpdataDataoffset();this.UpdateFrameMaxMin();//this.ResetFrameXSplit();
2108
2109
  this.Draw();this.ShowTooltipByKeyDown();this.StopDragTimer();}else//缩小
2109
2110
  {var cursorIndex={IsLockRight:this.IsZoomLockRight};cursorIndex.Index=parseInt(Math.abs(this.CursorIndex-0.5).toFixed(0));if(!this.Frame.ZoomDown(cursorIndex))return;phonePinch.Operator="ZoomDown";this.CursorIndex=cursorIndex.Index;this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();//this.ResetFrameXSplit();
@@ -2472,7 +2473,7 @@ if(frameItem.IsYReverse===true)frame.CoordinateType=1;//反转坐标
2472
2473
  if(IFrameSplitOperator.IsNumber(frameItem.PercentageTextFormat))frame.YSplitOperator.PercentageTextFormat=frameItem.PercentageTextFormat;//百分比坐标格式
2473
2474
  if(frameItem.DefaultYMaxMin)frame.YSplitOperator.DefaultYMaxMin=frameItem.DefaultYMaxMin;//指定最大最小值
2474
2475
  if(IFrameSplitOperator.IsBool(frameItem.EnableRemoveZero))frame.YSplitOperator.EnableRemoveZero=frameItem.EnableRemoveZero;//Y轴文字小数位是否自动抹0
2475
- if(IFrameSplitOperator.IsPlusNumber(frameItem.MinYDistance))frame.MinYDistance=frameItem.MinYDistance;if(IFrameSplitOperator.IsNumber(frameItem.BorderLine))frame.BorderLine=frameItem.BorderLine;if(IFrameSplitOperator.IsBool(frameItem.IsDrawTitleBottomLine))frame.IsDrawTitleBottomLine=frameItem.IsDrawTitleBottomLine;if(IFrameSplitOperator.IsBool(frameItem.IsShowIndexTitle))frame.IsShowIndexTitle=frameItem.IsShowIndexTitle;if(frameItem.ClientBGColor)frame.ClientBGColor=frameItem.ClientBGColor;//分时图属性
2476
+ if(IFrameSplitOperator.IsPlusNumber(frameItem.MinYDistance))frame.MinYDistance=frameItem.MinYDistance;if(IFrameSplitOperator.IsNumber(frameItem.BorderLine))frame.BorderLine=frameItem.BorderLine;if(IFrameSplitOperator.IsBool(frameItem.IsDrawTitleBottomLine))frame.IsDrawTitleBottomLine=frameItem.IsDrawTitleBottomLine;if(IFrameSplitOperator.IsBool(frameItem.IsShowIndexTitle))frame.IsShowIndexTitle=frameItem.IsShowIndexTitle;if(frameItem.ClientBGColor)frame.ClientBGColor=frameItem.ClientBGColor;if(frameItem.Toolbar){var subItem=frameItem.Toolbar.Margin;if(subItem&&IFrameSplitOperator.IsNumber(subItem.Right))frame.ToolbarConfig.Margin.Right=subItem.Right;}//分时图属性
2476
2477
  if(IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton))frameItem.IsShowCloseButton=frameItem.CloseBeforeButton;if(frame.YSplitOperator.RightTextConfig)//主图右侧坐标设置
2477
2478
  {if(IFrameSplitOperator.IsNumber(frameItem.RightTextFormat))//废弃(兼容版本)
2478
2479
  {frame.YSplitOperator.RightTextConfig.Format=frameItem.RightTextFormat;if(frameItem.RightTextFormat==2)frame.MultiTextFormat=1;}if(frameItem.RightText)//主图右侧坐标设置(新版本)
@@ -2814,7 +2815,7 @@ this.MultiTextFormat=0;//多行刻度信息显示模式 0=显示第1行 1=单行
2814
2815
  this.RightTextMaxWidth=0;this.ShortYLineLength=5;this.ShortXLineLength=5;this.BeforeDrawXYCallback;//坐标绘制前回调,绘制深度图
2815
2816
  this.GetEventCallback;//事件回调
2816
2817
  this.DivFrameToolbar;//工具栏的按钮样式
2817
- this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowButton=CloneData(g_JSChartResource.Buttons.CloseWindow);this.OverlayIndexButton=CloneData(g_JSChartResource.Buttons.OverlayIndex);this.ChangeIndexButton=CloneData(g_JSChartResource.Buttons.ChangeIndex);this.ModifyIndexParamButton=CloneData(g_JSChartResource.Buttons.ModifyIndexParam);this.MaxMinWindowButton=CloneData(g_JSChartResource.Buttons.MaxMinWindow);this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);this.ExportDataButton=CloneData(g_JSChartResource.Buttons.ExportData);this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);//Y轴刻度长线
2818
+ this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowButton=CloneData(g_JSChartResource.Buttons.CloseWindow);this.OverlayIndexButton=CloneData(g_JSChartResource.Buttons.OverlayIndex);this.ChangeIndexButton=CloneData(g_JSChartResource.Buttons.ChangeIndex);this.ModifyIndexParamButton=CloneData(g_JSChartResource.Buttons.ModifyIndexParam);this.MaxMinWindowButton=CloneData(g_JSChartResource.Buttons.MaxMinWindow);this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);this.ExportDataButton=CloneData(g_JSChartResource.Buttons.ExportData);this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);this.ToolbarConfig={Margin:{Right:3}},this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);//Y轴刻度长线
2818
2819
  this.YLineExtend;//[0]=左 [1]=右 { Width:5, Color:颜色, }
2819
2820
  this.YTextExtend;//[0]=左 [1]=右 { Align:0=默认 1=左对齐 2=右对齐 }
2820
2821
  this.YRightTextInfo;//X轴延长线
@@ -2823,9 +2824,9 @@ this.XLineExtend;//[0]=底部 { Mode:1, Color: } Mode=1 分割线 Mode=2短
2823
2824
  this.FrameData={SubFrameItem:null};//窗口框架信息
2824
2825
  //画图工具刻度
2825
2826
  this.DrawPicture={BGColor:g_JSChartResource.DrawPicture.XYCoordinate.BGColor,TextBGColor:g_JSChartResource.DrawPicture.XYCoordinate.TextBGColor,TextColor:g_JSChartResource.DrawPicture.XYCoordinate.TextColor,Font:g_JSChartResource.DrawPicture.XYCoordinate.Font};this.IChartFramePainting_ReloadResource=this.ReloadResource;this.ReloadResource=function(resource){this.IChartFramePainting_ReloadResource(resource);if(!resource){this.ToolbarButtonStyle=g_JSChartResource.ToolbarButtonStyle;this.CloseWindowButton=CloneData(g_JSChartResource.Buttons.CloseWindow);this.OverlayIndexButton=CloneData(g_JSChartResource.Buttons.OverlayIndex);this.ChangeIndexButton=CloneData(g_JSChartResource.Buttons.ChangeIndex);this.ModifyIndexParamButton=CloneData(g_JSChartResource.Buttons.ModifyIndexParam);this.MaxMinWindowButton=CloneData(g_JSChartResource.Buttons.MaxMinWindow);this.TitleWindowButton=CloneData(g_JSChartResource.Buttons.TitleWindow);this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);}if(this.ToolbarButtonStyle==1){this.ClearToolbar();}else{if(this.DivFrameToolbar)this.DivFrameToolbar.ReloadResource(resource);}};this.DrawFrame=function(){if(this.XPointCount>0){var dInterval=this.ChartBorder.GetWidth()/(6*this.XPointCount);//分6份, 数据4 间距2
2826
- this.DistanceWidth=2*dInterval;this.DataWidth=4*dInterval;}this.DrawHorizontal();this.DrawVertical();};this.DrawTitleButton=function(aryButton,moveonPoint,mouseStatus){var border=this.GetBorder();if(this.IsHScreen){var y=border.Bottom-3;var x=border.RightTitle+this.ChartBorder.TitleHeight/2;this.ToolbarCacheSize={RToolbar:{Right:y,Left:y}};//相当于额 Top, Bottom
2827
+ this.DistanceWidth=2*dInterval;this.DataWidth=4*dInterval;}this.DrawHorizontal();this.DrawVertical();};this.DrawTitleButton=function(aryButton,moveonPoint,mouseStatus){var border=this.GetBorder();if(this.IsHScreen){var y=border.Bottom-this.ToolbarConfig.Margin.Right;var x=border.RightTitle+this.ChartBorder.TitleHeight/2;this.ToolbarCacheSize={RToolbar:{Right:y,Left:y}};//相当于额 Top, Bottom
2827
2828
  this.Canvas.save();this.Canvas.translate(x,y);this.Canvas.rotate(90*Math.PI/180);//底部开始画
2828
- var yButton=0,xButton=0,bottom=0;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xButton=bottom-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var color=item.Style.Color;this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xButton,0);var rtButton={Left:x-size/2,Right:x+size/2,Bottom:y,Width:size,Height:size+item.Style.MerginLeft};rtButton.Top=rtButton.Bottom-size-item.Style.MerginLeft;this.Buttons.push({ID:item.ID,Rect:rtButton});this.ToolbarCacheSize.RToolbar.Left=rtButton.Top;bottom=xButton;y=rtButton.Top;}this.Canvas.restore();}else{var right=border.RightEx-3;var left=border.Left;var yButton=border.Top+this.ChartBorder.TitleHeight/2;this.ToolbarCacheSize={RToolbar:{Right:right,Left:right}//右往左绘制
2829
+ var yButton=0,xButton=0,bottom=0;for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xButton=bottom-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var color=item.Style.Color;this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xButton,0);var rtButton={Left:x-size/2,Right:x+size/2,Bottom:y,Width:size,Height:size+item.Style.MerginLeft};rtButton.Top=rtButton.Bottom-size-item.Style.MerginLeft;this.Buttons.push({ID:item.ID,Rect:rtButton});this.ToolbarCacheSize.RToolbar.Left=rtButton.Top;bottom=xButton;y=rtButton.Top;}this.Canvas.restore();}else{var right=border.RightEx-this.ToolbarConfig.Margin.Right;var left=border.Left;var yButton=border.Top+this.ChartBorder.TitleHeight/2;this.ToolbarCacheSize={RToolbar:{Right:right,Left:right}//右往左绘制
2829
2830
  };for(var i=0;i<aryButton.length;++i){var item=aryButton[i];var size=item.Style.Size;var xBotton=right-size-item.Style.MerginLeft;var font=size+'px '+item.Style.Family;var rtButton={Left:xBotton,Top:yButton-size/2,Right:xBotton+size+item.Style.MerginLeft,Bottom:yButton+size/2,Width:size+item.Style.MerginLeft,Height:size};var color=item.Style.Color;if(moveonPoint&&moveonPoint.X>=rtButton.Left&&moveonPoint.X<rtButton.Right&&moveonPoint.Y>=rtButton.Top&&moveonPoint.Y<=rtButton.Bottom){color=item.Style.MoveOnColor;if(mouseStatus)mouseStatus.MouseOnToolbar={Rect:rtButton,Item:item,Frame:this,Point:{X:moveonPoint.X,Y:moveonPoint.Y}};}this.Canvas.fillStyle=color;this.Canvas.font=font;this.Canvas.textAlign="left";this.Canvas.textBaseline="middle";this.Canvas.fillText(item.Style.Text,xBotton,yButton);this.Buttons.push({ID:item.ID,Rect:rtButton});this.ToolbarCacheSize.RToolbar.Left=rtButton.Left;right=xBotton;}}};this.DrawToolbarTooltip=function(mouseOnToolbar){if(!mouseOnToolbar)return;var border=this.GetBorder();var text=null;if(mouseOnToolbar.Item.TooltipText){text=mouseOnToolbar.Item.TooltipText;}else{var key='Toolbar-'+mouseOnToolbar.Item.ID;text=g_JSChartLocalization.GetText(key,0);}if(!text)return;var pixelRatio=GetDevicePixelRatio();var canvas=this.Canvas;if(this.GetExtraCanvas){var finder=this.GetExtraCanvas(JSChart.TooltipCursorCanvasKey);if(finder)canvas=finder.Canvas;}var xCenter=mouseOnToolbar.Rect.Left+mouseOnToolbar.Rect.Width/2;canvas.font=this.ButtonTooltip.Font;canvas.textAlign="left";canvas.textBaseline="bottom";var mergin=this.ButtonTooltip.Mergin;var textWidth=canvas.measureText(text).width+mergin.Left+mergin.Right;var textHeight=this.GetFontHeight();var bgHeight=textHeight+mergin.Top+mergin.Bottom;if(mouseOnToolbar.ID=="TitleButton"){var x=mouseOnToolbar.Point.X;var y=mouseOnToolbar.Point.Y+20;if(y+textHeight>border.ChartHeight)y=mouseOnToolbar.Point.Y-5-textHeight;}else if(JSCHART_BUTTON_ID.CLOSE_BEFOREOPEN_ID==mouseOnToolbar.Item.ID){var x=mouseOnToolbar.Rect.Right+5;var y=mouseOnToolbar.Rect.Top;}else if(JSCHART_BUTTON_ID.DRAW_PICTURE_DELETE==mouseOnToolbar.Item.ID||JSCHART_BUTTON_ID.DRAW_PICTURE_SETTING==mouseOnToolbar.Item.ID||mouseOnToolbar.Item.ID>=JSCHART_BUTTON_ID.DRAW_PICTURE_BUTTON_1&&mouseOnToolbar.Item.ID<=JSCHART_BUTTON_ID.DRAW_PICTURE_BUTTON_18){var x=mouseOnToolbar.Point.X;var y=mouseOnToolbar.Point.Y+20;if(x+textWidth>=border.ChartWidth)x=border.ChartWidth-textWidth-2;}else{var x=xCenter-textWidth/2;var y=border.Top-bgHeight;if(y<0)y=border.TopEx+1;if(x+textWidth>border.ChartWidth)x=border.ChartWidth-textWidth-2;}if(IFrameSplitOperator.IsNumber(this.ButtonTooltip.BorderRadius))//圆角
2830
2831
  {var roundRadius=this.ButtonTooltip.BorderRadius;canvas.beginPath();canvas.roundRect(ToFixedPoint(x),ToFixedPoint(y),ToFixedRect(textWidth),ToFixedRect(bgHeight),[roundRadius]);canvas.closePath();canvas.fillStyle=this.ButtonTooltip.ColorBG;canvas.fill();canvas.strokeStyle=this.ButtonTooltip.ColorBorder;canvas.stroke();canvas.fillStyle=this.ButtonTooltip.Color;canvas.fillText(text,x+mergin.Left,y+bgHeight-mergin.Bottom);}else{canvas.fillStyle=this.ButtonTooltip.ColorBG;canvas.fillRect(x,y,textWidth,bgHeight);//画一个背景色, 不然是一个黑的背景
2831
2832
  canvas.fillStyle=this.ButtonTooltip.Color;canvas.fillText(text,x+mergin.Left,y+bgHeight-mergin.Bottom);}};//isLimit 是否限制在当前坐标下
@@ -6734,7 +6735,7 @@ return 180-angle;return angle;};//复制
6734
6735
  //this.PtInButtons=function(x, y) { }
6735
6736
  //计算标签页大小
6736
6737
  this.CalculateLabelSize=function(labelInfo){var config=labelInfo.Config;this.Canvas.font=config.Font;this.Canvas.textAlign="left";this.Canvas.textBaseline="top";var lineHeight=this.Canvas.measureText("擎").width+2;var maxWidth=0,lineCount=0,labelHeight=config.Mergin.Top+config.Mergin.Bottom;for(var i=0;i<labelInfo.AryText.length;++i){if(i>0)labelHeight+=config.LineSpace;var item=labelInfo.AryText[i];item.NameWidth=0;item.TextWidth=0;if(item.Name)item.NameWidth=this.Canvas.measureText(item.Name).width+2;if(item.Text)item.TextWidth=this.Canvas.measureText(item.Text).width+2;var itemWidth=item.NameWidth+item.TextWidth;if(maxWidth<itemWidth)maxWidth=itemWidth;++lineCount;labelHeight+=lineHeight;}var labelWidth=maxWidth+config.Mergin.Left+config.Mergin.Right;labelInfo.Width=labelWidth;labelInfo.Height=labelHeight;labelInfo.LineHeight=lineHeight;};this.DrawDefaultLabel=function(labelInfo,rtBG){var config=labelInfo.Config;if(config.BGColor){this.Canvas.fillStyle=config.BGColor;this.Canvas.fillRect(ToFixedRect(rtBG.Left),ToFixedRect(rtBG.Top),ToFixedRect(rtBG.Width),ToFixedRect(rtBG.Height));}var xText=rtBG.Left+config.Mergin.Left;var yText=rtBG.Top+config.Mergin.Top;for(var i=0;i<labelInfo.AryText.length;++i){var item=labelInfo.AryText[i];if(i>0)yText+=config.LineSpace;if(item.Name){this.Canvas.fillStyle=item.NameColor;this.Canvas.fillText(item.Name,xText,yText);}if(item.Text){var xOut=xText+item.NameWidth;if(config.TextAlign==1)//右对齐
6737
- xOut=rtBG.Right-config.Mergin.Right-item.TextWidth;this.Canvas.fillStyle=item.TextColor;this.Canvas.fillText(item.Text,xOut,yText);}yText+=labelInfo.LineHeight;}};this.IsActive=function(){if(!this.GetActiveDrawPicture)return false;var active=this.GetActiveDrawPicture();if(active.Move.Guid!=this.Guid&&active.Select.Guid!=this.Guid&&active.MoveOn.Guid!=this.Guid)return false;return true;};}IChartDrawPicture.ColorToRGBA=function(color,opacity){var reg=/^(rgb|RGB)/;if(reg.test(color)){var strHex="#";var aryColor=color.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(",");// 把RGB的3个数值变成数组
6738
+ xOut=rtBG.Right-config.Mergin.Right-item.TextWidth;this.Canvas.fillStyle=item.TextColor;this.Canvas.fillText(item.Text,xOut,yText);}yText+=labelInfo.LineHeight;}};this.IsActive=function(){if(!this.GetActiveDrawPicture)return false;var active=this.GetActiveDrawPicture();if(active.Move.Guid!=this.Guid&&active.Select.Guid!=this.Guid&&active.MoveOn.Guid!=this.Guid)return false;return true;};}IChartDrawPicture.ColorToRGBA=function(color,opacity){var reg=/^(rgb|RGB)/;if(reg.test(color)){var aryColor=color.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(",");// 把RGB的3个数值变成数组
6738
6739
  var r=parseInt(aryColor[0]);var g=parseInt(aryColor[1]);var b=parseInt(aryColor[2]);var value='rgba('+r+','+g+','+b+','+opacity+')';return value;}return"rgba("+parseInt("0x"+color.slice(1,3))+","+parseInt("0x"+color.slice(3,5))+","+parseInt("0x"+color.slice(5,7))+","+opacity+")";};IChartDrawPicture.RGBToHex=function(rgb){// Choose correct separator
6739
6740
  var sep=rgb.indexOf(",")>-1?",":" ";// Turn "rgb(r,g,b)" into [r,g,b]
6740
6741
  if(rgb.includes("rgba(")||rgb.includes("RGBA("))rgb=rgb.substr(5).split(")")[0].split(sep);else rgb=rgb.substr(4).split(")")[0].split(sep);var r=(+rgb[0]).toString(16),g=(+rgb[1]).toString(16),b=(+rgb[2]).toString(16);if(r.length==1)r="0"+r;if(g.length==1)g="0"+g;if(b.length==1)b="0"+b;return"#"+r+g+b;};//16进制颜色转rgb
@@ -15162,17 +15163,19 @@ var x=labelInfo.AryPoint[1].X-labelInfo.AryPoint[0].X;var y=labelInfo.AryPoint[1
15162
15163
  //
15163
15164
  ////////////////////////////////////////////////////////////////////////////////////
15164
15165
  function JSDialogModifyDraw(){this.DivDialog=null;this.HQChart;this.ChartPicture;//按钮
15165
- this.ColorButton=null;this.BGColorButton=null;this.FontColorButton=null;this.BorderColorButton=null;this.LockButton=null;this.FontZoomButton=null;this.FontZoomOutButton=null;this.ModifyTextButton=null;this.AdvancedButton=null;this.AryButton=[{Title:"修改图形颜色",ClassName:'hqchart_drawtool icon-huabi',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID}},{Title:"修改字体颜色",ClassName:'hqchart_drawtool icon-zitiyanse',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID}},{Title:"修改背景颜色",ClassName:'hqchart_drawtool icon-zitibeijingse',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID}},{Title:"修改边框颜色",ClassName:'hqchart_drawtool icon-biankuang',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID}},{Title:"字体放大",ClassName:'hqchart_drawtool icon-zoomin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID}},{Title:"字体缩小",ClassName:'hqchart_drawtool icon-zoomout',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID}},{Title:"随机生成文字内容",ClassName:'hqchart_drawtool icon-bianji',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID}},{Title:"高级设置",ClassName:'hqchart_drawtool icon-setting',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID}},{Title:"上锁",ClassName:'hqchart_drawtool icon-lock',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID}},{Title:"删除图形",ClassName:'hqchart_drawtool icon-recycle_bin',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID}}];this.RestoreFocusDelay=800;this.Inital=function(hqchart){this.HQChart=hqchart;};this.Destroy=function(){this.ChartPicture=null;this.ColorButton=null;if(this.DivDialog){document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Create=function(){var _this93=this;var divDom=document.createElement("div");divDom.className='UMyChart_Draw_Modify_Dialog_Div';var drgDiv=document.createElement("div");drgDiv.className="UMyChart_Draw_Modify_Dialog_Drag_Div";drgDiv.onmousedown=function(e){_this93.OnMouseDownTitle(e);};divDom.appendChild(drgDiv);var spanDom=document.createElement("span");spanDom.className="hqchart_drawtool icon-tuodong";spanDom.classList.add("UMyChart_Draw_Modify_Dialog_Drag_Span");drgDiv.appendChild(spanDom);for(var i=0;i<this.AryButton.length;++i){var item=this.AryButton[i];this.CreateButtonItem(item,divDom);}this.DivDialog=divDom;document.body.appendChild(divDom);};this.CreateButtonItem=function(item,parentDivDom){var _this94=this;var divItem=document.createElement("div");divItem.className="UMyChart_Draw_Modify_Dialog_Button_Div";var spanTooltip=document.createElement("span");spanTooltip.className="UMyChart_Draw_Modify_Tooltip";spanTooltip.innerText=item.Title;divItem.appendChild(spanTooltip);var spanDom=document.createElement("span");spanDom.className=item.ClassName;spanDom.classList.add("UMyChart_Draw_Modify_Dialog_Button_Span");divItem.appendChild(spanDom);var data={Div:divItem,Span:spanDom,Parent:parentDivDom,Item:item,Tooltip:spanTooltip};divItem.onmousedown=function(e){_this94.OnClickButton(e,data);};//点击
15166
- divItem.onmouseover=function(e){_this94.OnHoverButton(e,data);};divItem.onmouseout=function(e){_this94.OnLeaveButton(e,data);};switch(item.Data.ID){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ColorButton=data;var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.BGColorButton=data;var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.FontColorButton=data;var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.BorderColorButton=data;var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.LockButton=data;break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.FontZoomButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.FontZoomOutButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyTextButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedButton=data;divItem.style.display="none";break;}parentDivDom.appendChild(divItem);};this.CreateInputColor=function(data){var _this95=this;var inputColor=document.createElement("input");inputColor.setAttribute("type","color");inputColor.className="UMyChart_Draw_Modify_Input_Color";data.InputColor=inputColor;inputColor.oninput=function(e){_this95.OnChangeColor(e,data);};return inputColor;};this.OnClickButton=function(e,data){console.log('[JSDialogModifyDraw::OnClickButton] ',data);if(!data.Item||!data.Item.Data)return;var id=data.Item.Data.ID;switch(id){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ModifyLineColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID:this.DeleteDrawPicture();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.ModifyBGColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.ModifyFontColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.ModifyBorderColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.ModifyLockChart();break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.ModifyFontZoom(1);break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.ModifyFontZoom(-1);break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyText();break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedSetting();break;}};this.OnHoverButton=function(e,data){//var x=e.clientX;
15166
+ this.ColorButton=null;this.BGColorButton=null;this.FontColorButton=null;this.BorderColorButton=null;this.LockButton=null;this.FontZoomButton=null;this.FontZoomOutButton=null;this.ModifyTextButton=null;this.AdvancedButton=null;this.AryButton=[{Title:"修改图形颜色",ClassName:'hqchart_drawtool icon-Vector UMyChart_Draw_Modify_Dialog_Button_Color_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID}},{Title:"修改字体颜色",ClassName:'hqchart_drawtool icon-zitiyanse1 UMyChart_Draw_Modify_Dialog_Button_Color_Span ',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID}},{Title:"修改背景颜色",ClassName:'hqchart_drawtool icon-zitibeijingse UMyChart_Draw_Modify_Dialog_Button_Color_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID}},{Title:"修改边框颜色",ClassName:'hqchart_drawtool icon-biankuang UMyChart_Draw_Modify_Dialog_Button_Color_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID}},{Title:"字体放大",ClassName:'hqchart_drawtool icon-zoomin UMyChart_Draw_Modify_Dialog_Button_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID}},{Title:"字体缩小",ClassName:'hqchart_drawtool icon-zoomout UMyChart_Draw_Modify_Dialog_Button_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID}},{Title:"随机生成文字内容",ClassName:'hqchart_drawtool icon-bianji UMyChart_Draw_Modify_Dialog_Button_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID}},{Title:"高级设置",ClassName:'hqchart_drawtool icon-setting UMyChart_Draw_Modify_Dialog_Button_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID}},{Title:"上锁",ClassName:'hqchart_drawtool icon-lock',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID}},{Title:"删除图形",ClassName:'hqchart_drawtool icon-recycle_bin UMyChart_Draw_Modify_Dialog_Button_Span',Type:2,Data:{ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID}}];this.RestoreFocusDelay=800;this.Inital=function(hqchart){this.HQChart=hqchart;};this.Destroy=function(){this.ChartPicture=null;this.ColorButton=null;if(this.DivDialog){document.body.removeChild(this.DivDialog);this.DivDialog=null;}};this.Create=function(){var _this93=this;var divDom=document.createElement("div");divDom.className='UMyChart_Draw_Modify_Dialog_Div';var drgDiv=document.createElement("div");drgDiv.className="UMyChart_Draw_Modify_Dialog_Drag_Div";drgDiv.onmousedown=function(e){_this93.OnMouseDownTitle(e);};divDom.appendChild(drgDiv);var spanDom=document.createElement("span");spanDom.className="hqchart_drawtool icon-tuodong";spanDom.classList.add("UMyChart_Draw_Modify_Dialog_Drag_Span");drgDiv.appendChild(spanDom);for(var i=0;i<this.AryButton.length;++i){var item=this.AryButton[i];this.CreateButtonItem(item,divDom);}this.DivDialog=divDom;document.body.appendChild(divDom);};this.CreateButtonItem=function(item,parentDivDom){var _this94=this;var divItem=document.createElement("div");divItem.className="UMyChart_Draw_Modify_Dialog_Button_Div";var spanTooltip=document.createElement("span");spanTooltip.className="UMyChart_Draw_Modify_Tooltip";spanTooltip.innerText=item.Title;divItem.appendChild(spanTooltip);var spanDom=document.createElement("span");spanDom.className=item.ClassName;//spanDom.classList.add("UMyChart_Draw_Modify_Dialog_Button_Span");
15167
+ divItem.appendChild(spanDom);var data={Div:divItem,Span:spanDom,Parent:parentDivDom,Item:item,Tooltip:spanTooltip};divItem.onmousedown=function(e){_this94.OnClickButton(e,data);};//点击
15168
+ divItem.onmouseover=function(e){_this94.OnHoverButton(e,data);};divItem.onmouseout=function(e){_this94.OnLeaveButton(e,data);};switch(item.Data.ID){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ColorButton=data;var divColorBar=this.CreateColorBar(data);divItem.appendChild(divColorBar);var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.BGColorButton=data;var divColorBar=this.CreateColorBar(data);divItem.appendChild(divColorBar);var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.FontColorButton=data;var divColorBar=this.CreateColorBar(data);divItem.appendChild(divColorBar);var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.BorderColorButton=data;var divColorBar=this.CreateColorBar(data);divItem.appendChild(divColorBar);var inputColor=this.CreateInputColor(data);divItem.appendChild(inputColor);divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.LockButton=data;break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.FontZoomButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.FontZoomOutButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyTextButton=data;divItem.style.display="none";break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedButton=data;divItem.style.display="none";break;}parentDivDom.appendChild(divItem);};this.CreateInputColor=function(data){var _this95=this;var inputColor=document.createElement("input");inputColor.setAttribute("type","color");inputColor.className="UMyChart_Draw_Modify_Input_Color";data.InputColor=inputColor;inputColor.oninput=function(e){_this95.OnChangeColor(e,data);};return inputColor;};//颜色块
15169
+ this.CreateColorBar=function(data){var divColor=document.createElement("div");divColor.className="UMyChart_Draw_Modify_Dialog_Button_ColorBar_Div";data.DivColorBar=divColor;return divColor;};this.OnClickButton=function(e,data){console.log('[JSDialogModifyDraw::OnClickButton] ',data);if(!data.Item||!data.Item.Data)return;var id=data.Item.Data.ID;switch(id){case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:this.ModifyLineColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID:this.DeleteDrawPicture();break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:this.ModifyBGColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:this.ModifyFontColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:this.ModifyBorderColor(data);break;case JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID:this.ModifyLockChart();break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID:this.ModifyFontZoom(1);break;case JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID:this.ModifyFontZoom(-1);break;case JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID:this.ModifyText();break;case JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID:this.AdvancedSetting();break;}};this.OnHoverButton=function(e,data){//var x=e.clientX;
15167
15170
  //data.Tooltip.style.left=x+"px";
15168
- data.Tooltip.style.display="inline";};this.OnLeaveButton=function(e,data){data.Tooltip.style.display="none";};this.Close=function(e){if(!this.DivDialog)return;this.ChartPicture=null;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.DeleteDrawPicture=function(){if(this.ChartPicture&&this.HQChart){this.HQChart.ClearChartDrawPicture(this.ChartPicture);}this.Close();};this.OnClearChartDrawPicture=function(drawPicture){if(!this.IsShow())return;if(!drawPicture){this.Close();return;}if(this.ChartPicture&&drawPicture.Guid==this.ChartPicture.Guid)this.Close();};this.ShowButton=function(dom,diaplay){if(dom.style.display==diaplay)return;dom.style.display=diaplay;};this.OnChangeColor=function(e,data){if(!this.ChartPicture||!this.HQChart)return;var color=data.InputColor.value;color=IChartDrawPicture.HexToRGB(color);if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID){this.ChartPicture.LineColor=color;if(this.ColorButton)this.ColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15169
- this.HQChart.Draw();}else if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID){if(this.ChartPicture.ClassName=="ChartDrawNote")this.ChartPicture.NoteBorderColor=color;else this.ChartPicture.BorderColor=color;if(this.BorderColorButton)this.BorderColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15170
- this.HQChart.Draw();}else if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID){if(this.ChartPicture.ClassName=="ChartDrawNote")this.ChartPicture.NoteTextColor=color;else this.ChartPicture.TextColor=color;if(this.FontColorButton)this.FontColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15171
- this.HQChart.Draw();}else if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID){color=IChartDrawPicture.ColorToRGBA(color,0.8);if(this.ChartPicture.ClassName=="ChartDrawNote")this.ChartPicture.NoteBGColor=color;else this.ChartPicture.BGColor=color;if(this.BGColorButton)this.BGColorButton.Span.style['color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15171
+ data.Tooltip.style.display="inline";};this.OnLeaveButton=function(e,data){data.Tooltip.style.display="none";};this.Close=function(e){if(!this.DivDialog)return;this.ChartPicture=null;this.DivDialog.style.visibility='hidden';if(this.HQChart)this.HQChart.RestoreFocus(this.RestoreFocusDelay);};this.IsShow=function(){if(!this.DivDialog)return false;return this.DivDialog.style.visibility==='visible';};this.DeleteDrawPicture=function(){if(this.ChartPicture&&this.HQChart){this.HQChart.ClearChartDrawPicture(this.ChartPicture);}this.Close();};this.OnClearChartDrawPicture=function(drawPicture){if(!this.IsShow())return;if(!drawPicture){this.Close();return;}if(this.ChartPicture&&drawPicture.Guid==this.ChartPicture.Guid)this.Close();};this.ShowButton=function(dom,diaplay){if(dom.style.display==diaplay)return;dom.style.display=diaplay;};this.OnChangeColor=function(e,data){if(!this.ChartPicture||!this.HQChart)return;var color=data.InputColor.value;color=IChartDrawPicture.HexToRGB(color);if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID){this.ChartPicture.LineColor=color;if(this.ColorButton)this.ColorButton.DivColorBar.style['background-color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15172
+ this.HQChart.Draw();}else if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID){if(this.ChartPicture.ClassName=="ChartDrawNote")this.ChartPicture.NoteBorderColor=color;else this.ChartPicture.BorderColor=color;if(this.BorderColorButton)this.BorderColorButton.DivColorBar.style['background-color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15173
+ this.HQChart.Draw();}else if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID){if(this.ChartPicture.ClassName=="ChartDrawNote")this.ChartPicture.NoteTextColor=color;else this.ChartPicture.TextColor=color;if(this.FontColorButton)this.FontColorButton.DivColorBar.style['background-color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15174
+ this.HQChart.Draw();}else if(data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID){color=IChartDrawPicture.ColorToRGBA(color,0.8);if(this.ChartPicture.ClassName=="ChartDrawNote")this.ChartPicture.NoteBGColor=color;else this.ChartPicture.BGColor=color;if(this.BGColorButton)this.BGColorButton.DivColorBar.style['background-color']=color;if(this.HQChart.ChartDrawStorage)this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture);//保存下
15172
15175
  this.HQChart.Draw();}};this.ShowColorPicker=function(data,defaultColor){if(!data.InputColor)return;data.InputColor.setAttribute("value",IChartDrawPicture.RGBToHex(defaultColor));data.InputColor.click();//显示选色器
15173
15176
  };this.ModifyLineColor=function(data){if(!this.ChartPicture||!this.HQChart)return;var color=this.ChartPicture.LineColor;this.ShowColorPicker(data,color);};this.ModifyFontColor=function(data){if(!this.ChartPicture||!this.HQChart)return;var color=this.ChartPicture.TextColor;if(this.ChartPicture.ClassName=="ChartDrawNote")color=this.ChartPicture.NoteTextColor;this.ShowColorPicker(data,color);};this.ModifyBGColor=function(data){if(!this.ChartPicture||!this.HQChart)return;var color=this.ChartPicture.BGColor;if(this.ChartPicture.ClassName=="ChartDrawNote")color=this.ChartPicture.NoteBGColor;this.ShowColorPicker(data,color);};this.ModifyLockChart=function(){if(!this.ChartPicture||!this.HQChart)return;this.ChartPicture.EnableMove=!this.ChartPicture.EnableMove;return this.UpdateLockButtonStyle();};this.UpdateLockButtonStyle=function(){if(!this.LockButton)return;if(this.ChartPicture.EnableMove){this.LockButton.Span.classList.remove("UMyChart_Draw_Modify_Dialog_Button_Span");this.LockButton.Span.classList.add("UMyChart_Draw_Modify_Dialog_Unlock_Button_Span");}else{this.LockButton.Span.classList.remove("UMyChart_Draw_Modify_Dialog_Unlock_Button_Span");this.LockButton.Span.classList.add("UMyChart_Draw_Modify_Dialog_Button_Span");}};this.ModifyBorderColor=function(data){if(!this.ChartPicture||!this.HQChart)return;var color=this.ChartPicture.BorderColor;if(this.ChartPicture.ClassName=="ChartDrawNote")color=this.ChartPicture.NoteBorderColor;this.ShowColorPicker(data,color);};this.ModifyFontZoom=function(step){if(!this.ChartPicture||!this.HQChart)return;if(this.ChartPicture.FontOption.Size+step<=2)return;var chart=this.ChartPicture;chart.FontOption.Size+=step;if(chart.ClassName=="ChartDrawNote")chart.NoteFontOption.Size+=step;this.HQChart.Draw();};this.ModifyText=function(){if(!this.ChartPicture||!this.HQChart)return;var chart=this.ChartPicture;switch(chart.ClassName){case"ChartDrawPictureText":chart.Text=this.GetRandomText(chart.Text);break;case"ChartDrawAnchoredText":var text=null;if(IFrameSplitOperator.IsNonEmptyArray(chart.AryText))text=chart.AryText[0].Text;chart.AryText=[{Text:this.GetRandomText(text)},{Text:this.GetRandomText(null)}];break;case"ChartDrawNote":var text=null;if(IFrameSplitOperator.IsNonEmptyArray(chart.AryNoteText))text=chart.AryNoteText[0].Text;chart.AryNoteText=[{Text:this.GetRandomText(text)},{Text:this.GetRandomText(null)}];break;default:return;}this.HQChart.Draw();};this.AdvancedSetting=function(){};this.GetRandomText=function(text){var ARY_TEXT=["下跌形态","反转十字星","低位档五阳线","倒V型反转","双顶","持续整理形态"];var index=this.GetRandomTestData(0,ARY_TEXT.length-1);for(var i=index;i<10;++i){var value=ARY_TEXT[i%ARY_TEXT.length];if(value!=text)return value;}};this.GetRandomTestData=function(min,max)//测试数据
15174
15177
  {min=Math.ceil(min);max=Math.floor(max);return Math.floor(Math.random()*(max-min+1))+min;//含最大值,含最小值
15175
- };this.Show=function(x,y){if(!this.DivDialog)this.Create();this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.SetChartPicture=function(chart){this.ChartPicture=chart;var bShowLineColor=true,bShowBGColor=false,bShowFontColor=false,bShowBorderColor=false,bShowFontZoom=false,bModifyText=false,bAdvanced=false;;var bgColor=null,fontColor=null,borderColor=null;var ARRAY_TEXT_CHART=['ChartDrawPriceLabel',"ChartDrawAnchoredText","ChartDrawPriceNote"];if(ARRAY_TEXT_CHART.includes(chart.ClassName)){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bShowFontZoom=true;if(chart.ClassName=="ChartDrawAnchoredText")bModifyText=true;bgColor=chart.BGColor;fontColor=chart.TextColor;borderColor=chart.BorderColor;}else if(chart.ClassName=="ChartDrawPictureText"){bModifyText=true;bShowFontZoom=true;bShowLineColor=true;}else if(chart.ClassName=="ChartDrawNote"){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bModifyText=true;bShowFontZoom=true;bgColor=chart.NoteBGColor;fontColor=chart.NoteTextColor;borderColor=chart.NoteBorderColor;}else if(chart.ClassName=="ChartDrawVolProfile"){bShowLineColor=false;bAdvanced=true;}else if(chart.ClassName=="ChartDrawPictureIconFont"){bShowFontZoom=true;}if(this.ColorButton){var item=this.ColorButton;this.ShowButton(item.Div,bShowLineColor?"inline":"none");if(bShowLineColor){item.Span.style['color']=chart.LineColor;}}if(this.BGColorButton){var item=this.BGColorButton;this.ShowButton(item.Div,bShowBGColor?"inline":"none");if(bShowBGColor){item.Span.style['color']=bgColor;}}if(this.FontColorButton){var item=this.FontColorButton;this.ShowButton(item.Div,bShowFontColor?"inline":"none");if(bShowFontColor){item.Span.style['color']=fontColor;}}if(this.BorderColorButton){var item=this.BorderColorButton;this.ShowButton(item.Div,bShowBorderColor?"inline":"none");if(bShowBorderColor){item.Span.style['color']=borderColor;}}if(this.LockButton){this.UpdateLockButtonStyle();}if(this.FontZoomButton){var item=this.FontZoomButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.FontZoomOutButton){var item=this.FontZoomOutButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.ModifyTextButton){var item=this.ModifyTextButton;this.ShowButton(item.Div,bModifyText?"inline":"none");}if(this.AdvancedButton){var item=this.AdvancedButton;this.ShowButton(item.Div,bAdvanced?"inline":"none");}};this.OnMouseDownTitle=function(e){var _this96=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this96.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this96.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};}/*
15178
+ };this.Show=function(x,y){if(!this.DivDialog)this.Create();this.DivDialog.style.visibility='visible';this.DivDialog.style.top=y+"px";this.DivDialog.style.left=x+"px";};this.SetChartPicture=function(chart){this.ChartPicture=chart;var bShowLineColor=true,bShowBGColor=false,bShowFontColor=false,bShowBorderColor=false,bShowFontZoom=false,bModifyText=false,bAdvanced=false;;var bgColor=null,fontColor=null,borderColor=null;var ARRAY_TEXT_CHART=['ChartDrawPriceLabel',"ChartDrawAnchoredText","ChartDrawPriceNote"];if(ARRAY_TEXT_CHART.includes(chart.ClassName)){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bShowFontZoom=true;if(chart.ClassName=="ChartDrawAnchoredText")bModifyText=true;bgColor=chart.BGColor;fontColor=chart.TextColor;borderColor=chart.BorderColor;}else if(chart.ClassName=="ChartDrawPictureText"){bModifyText=true;bShowFontZoom=true;bShowLineColor=true;}else if(chart.ClassName=="ChartDrawNote"){bShowBGColor=true;bShowFontColor=true;bShowBorderColor=true;bModifyText=true;bShowFontZoom=true;bgColor=chart.NoteBGColor;fontColor=chart.NoteTextColor;borderColor=chart.NoteBorderColor;}else if(chart.ClassName=="ChartDrawVolProfile"){bShowLineColor=false;bAdvanced=true;}else if(chart.ClassName=="ChartDrawPictureIconFont"){bShowFontZoom=true;}if(this.ColorButton){var item=this.ColorButton;this.ShowButton(item.Div,bShowLineColor?"inline":"none");if(bShowLineColor){item.DivColorBar.style['background-color']=chart.LineColor;}}if(this.BGColorButton){var item=this.BGColorButton;this.ShowButton(item.Div,bShowBGColor?"inline":"none");if(bShowBGColor){item.DivColorBar.style['background-color']=bgColor;}}if(this.FontColorButton){var item=this.FontColorButton;this.ShowButton(item.Div,bShowFontColor?"inline":"none");if(bShowFontColor){item.DivColorBar.style['background-color']=fontColor;}}if(this.BorderColorButton){var item=this.BorderColorButton;this.ShowButton(item.Div,bShowBorderColor?"inline":"none");if(bShowBorderColor){item.DivColorBar.style['background-color']=borderColor;}}if(this.LockButton){this.UpdateLockButtonStyle();}if(this.FontZoomButton){var item=this.FontZoomButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.FontZoomOutButton){var item=this.FontZoomOutButton;this.ShowButton(item.Div,bShowFontZoom?"inline":"none");}if(this.ModifyTextButton){var item=this.ModifyTextButton;this.ShowButton(item.Div,bModifyText?"inline":"none");}if(this.AdvancedButton){var item=this.AdvancedButton;this.ShowButton(item.Div,bAdvanced?"inline":"none");}};this.OnMouseDownTitle=function(e){var _this96=this;if(!this.DivDialog)return;var dragData={X:e.clientX,Y:e.clientY};dragData.YOffset=e.clientX-this.DivDialog.offsetLeft;dragData.XOffset=e.clientY-this.DivDialog.offsetTop;this.DragTitle=dragData;document.onmousemove=function(e){_this96.DocOnMouseMoveTitle(e);};document.onmouseup=function(e){_this96.DocOnMouseUpTitle(e);};};this.DocOnMouseMoveTitle=function(e){if(!this.DragTitle)return;var left=e.clientX-this.DragTitle.YOffset;var top=e.clientY-this.DragTitle.XOffset;var right=left+this.DivDialog.offsetWidth;var bottom=top+this.DivDialog.offsetHeight;if(right+5>=window.innerWidth)left=window.innerWidth-this.DivDialog.offsetWidth-5;if(bottom+5>=window.innerHeight)top=window.innerHeight-this.DivDialog.offsetHeight-5;this.DivDialog.style.left=left+'px';this.DivDialog.style.top=top+'px';if(e.preventDefault)e.preventDefault();if(e.stopPropagation)e.stopPropagation();};this.DocOnMouseUpTitle=function(e){this.DragTitle=null;document.onmousemove=null;document.onmouseup=null;};}/*
15176
15179
  Copyright (c) 2018 jones
15177
15180
 
15178
15181
  http://www.apache.org/licenses/LICENSE-2.0
@@ -15636,7 +15639,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15636
15639
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
15637
15640
  * 版本信息输出
15638
15641
  *
15639
- */var HQCHART_VERSION="1.1.15197";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15642
+ */var HQCHART_VERSION="1.1.15209";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15640
15643
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15641
15644
  // BaseIndex:BaseIndex,
15642
15645
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.15198",
3
+ "version": "1.1.15210",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -687,17 +687,17 @@ function JSDialogModifyDraw()
687
687
 
688
688
  this.AryButton=
689
689
  [
690
- { Title:"修改图形颜色", ClassName: 'hqchart_drawtool icon-huabi', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID }},
691
- { Title:"修改字体颜色", ClassName: 'hqchart_drawtool icon-zitiyanse', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID }},
692
- { Title:"修改背景颜色", ClassName: 'hqchart_drawtool icon-zitibeijingse', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID }},
693
- { Title:"修改边框颜色", ClassName: 'hqchart_drawtool icon-biankuang', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID }},
694
- { Title:"字体放大", ClassName: 'hqchart_drawtool icon-zoomin', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID }},
695
- { Title:"字体缩小", ClassName: 'hqchart_drawtool icon-zoomout', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID }},
696
- { Title:"随机生成文字内容", ClassName: 'hqchart_drawtool icon-bianji', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID }},
697
- { Title:"高级设置", ClassName: 'hqchart_drawtool icon-setting', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID }},
690
+ { Title:"修改图形颜色", ClassName: 'hqchart_drawtool icon-Vector UMyChart_Draw_Modify_Dialog_Button_Color_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID }},
691
+ { Title:"修改字体颜色", ClassName: 'hqchart_drawtool icon-zitiyanse1 UMyChart_Draw_Modify_Dialog_Button_Color_Span ', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID }},
692
+ { Title:"修改背景颜色", ClassName: 'hqchart_drawtool icon-zitibeijingse UMyChart_Draw_Modify_Dialog_Button_Color_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID }},
693
+ { Title:"修改边框颜色", ClassName: 'hqchart_drawtool icon-biankuang UMyChart_Draw_Modify_Dialog_Button_Color_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID }},
694
+ { Title:"字体放大", ClassName: 'hqchart_drawtool icon-zoomin UMyChart_Draw_Modify_Dialog_Button_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_FONT_ID }},
695
+ { Title:"字体缩小", ClassName: 'hqchart_drawtool icon-zoomout UMyChart_Draw_Modify_Dialog_Button_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_ZOOM_OUT_FONT_ID }},
696
+ { Title:"随机生成文字内容", ClassName: 'hqchart_drawtool icon-bianji UMyChart_Draw_Modify_Dialog_Button_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_MODIFY_TEXT_ID }},
697
+ { Title:"高级设置", ClassName: 'hqchart_drawtool icon-setting UMyChart_Draw_Modify_Dialog_Button_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_ADVANCED_SETTING_ID }},
698
698
 
699
699
  { Title:"上锁", ClassName: 'hqchart_drawtool icon-lock', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_LOCK_DRAW_CHART_ID }},
700
- { Title:"删除图形", ClassName: 'hqchart_drawtool icon-recycle_bin', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID }},
700
+ { Title:"删除图形", ClassName: 'hqchart_drawtool icon-recycle_bin UMyChart_Draw_Modify_Dialog_Button_Span', Type:2, Data:{ ID:JS_DRAWTOOL_MENU_ID.CMD_DELETE_DRAW_CHART_ID }},
701
701
  ];
702
702
 
703
703
  this.RestoreFocusDelay=800;
@@ -753,10 +753,9 @@ function JSDialogModifyDraw()
753
753
  spanTooltip.innerText=item.Title;
754
754
  divItem.appendChild(spanTooltip);
755
755
 
756
-
757
756
  var spanDom=document.createElement("span");
758
757
  spanDom.className=item.ClassName;
759
- spanDom.classList.add("UMyChart_Draw_Modify_Dialog_Button_Span");
758
+ //spanDom.classList.add("UMyChart_Draw_Modify_Dialog_Button_Span");
760
759
  divItem.appendChild(spanDom);
761
760
 
762
761
 
@@ -770,23 +769,31 @@ function JSDialogModifyDraw()
770
769
  {
771
770
  case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID:
772
771
  this.ColorButton=data;
772
+ var divColorBar=this.CreateColorBar(data);
773
+ divItem.appendChild(divColorBar);
773
774
  var inputColor=this.CreateInputColor(data);
774
775
  divItem.appendChild(inputColor);
775
776
  break;
776
777
  case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BG_COLOR_ID:
777
778
  this.BGColorButton=data;
779
+ var divColorBar=this.CreateColorBar(data);
780
+ divItem.appendChild(divColorBar);
778
781
  var inputColor=this.CreateInputColor(data);
779
782
  divItem.appendChild(inputColor);
780
783
  divItem.style.display="none";
781
784
  break;
782
785
  case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_FONT_COLOR_ID:
783
786
  this.FontColorButton=data;
787
+ var divColorBar=this.CreateColorBar(data);
788
+ divItem.appendChild(divColorBar);
784
789
  var inputColor=this.CreateInputColor(data);
785
790
  divItem.appendChild(inputColor);
786
791
  divItem.style.display="none";
787
792
  break;
788
793
  case JS_DRAWTOOL_MENU_ID.CMD_CHANGE_BORDER_COLOR_ID:
789
794
  this.BorderColorButton=data;
795
+ var divColorBar=this.CreateColorBar(data);
796
+ divItem.appendChild(divColorBar);
790
797
  var inputColor=this.CreateInputColor(data);
791
798
  divItem.appendChild(inputColor);
792
799
  divItem.style.display="none";
@@ -826,6 +833,16 @@ function JSDialogModifyDraw()
826
833
  return inputColor;
827
834
  }
828
835
 
836
+ //颜色块
837
+ this.CreateColorBar=function(data)
838
+ {
839
+ var divColor=document.createElement("div");
840
+ divColor.className="UMyChart_Draw_Modify_Dialog_Button_ColorBar_Div";
841
+ data.DivColorBar=divColor;
842
+
843
+ return divColor;
844
+ }
845
+
829
846
  this.OnClickButton=function(e, data)
830
847
  {
831
848
  console.log('[JSDialogModifyDraw::OnClickButton] ', data);
@@ -934,7 +951,7 @@ function JSDialogModifyDraw()
934
951
  if (data.Item.Data.ID==JS_DRAWTOOL_MENU_ID.CMD_CHANGE_LINE_COLOR_ID)
935
952
  {
936
953
  this.ChartPicture.LineColor=color;
937
- if (this.ColorButton) this.ColorButton.Span.style['color']=color;
954
+ if (this.ColorButton) this.ColorButton.DivColorBar.style['background-color']=color;
938
955
  if (this.HQChart.ChartDrawStorage) this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture); //保存下
939
956
 
940
957
  this.HQChart.Draw();
@@ -944,7 +961,7 @@ function JSDialogModifyDraw()
944
961
  if (this.ChartPicture.ClassName=="ChartDrawNote") this.ChartPicture.NoteBorderColor=color;
945
962
  else this.ChartPicture.BorderColor=color;
946
963
 
947
- if (this.BorderColorButton) this.BorderColorButton.Span.style['color']=color;
964
+ if (this.BorderColorButton) this.BorderColorButton.DivColorBar.style['background-color']=color;
948
965
  if (this.HQChart.ChartDrawStorage) this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture); //保存下
949
966
 
950
967
  this.HQChart.Draw();
@@ -954,7 +971,7 @@ function JSDialogModifyDraw()
954
971
  if (this.ChartPicture.ClassName=="ChartDrawNote") this.ChartPicture.NoteTextColor=color;
955
972
  else this.ChartPicture.TextColor=color;
956
973
 
957
- if (this.FontColorButton) this.FontColorButton.Span.style['color']=color;
974
+ if (this.FontColorButton) this.FontColorButton.DivColorBar.style['background-color']=color;
958
975
  if (this.HQChart.ChartDrawStorage) this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture); //保存下
959
976
 
960
977
  this.HQChart.Draw();
@@ -965,7 +982,7 @@ function JSDialogModifyDraw()
965
982
  if (this.ChartPicture.ClassName=="ChartDrawNote") this.ChartPicture.NoteBGColor=color;
966
983
  else this.ChartPicture.BGColor=color;
967
984
 
968
- if (this.BGColorButton) this.BGColorButton.Span.style['color']=color;
985
+ if (this.BGColorButton) this.BGColorButton.DivColorBar.style['background-color']=color;
969
986
  if (this.HQChart.ChartDrawStorage) this.HQChart.ChartDrawStorage.SaveDrawData(this.ChartPicture); //保存下
970
987
 
971
988
  this.HQChart.Draw();
@@ -1167,7 +1184,7 @@ function JSDialogModifyDraw()
1167
1184
  this.ShowButton(item.Div, bShowLineColor?"inline":"none");
1168
1185
  if (bShowLineColor)
1169
1186
  {
1170
- item.Span.style['color']=chart.LineColor;
1187
+ item.DivColorBar.style['background-color']=chart.LineColor;
1171
1188
  }
1172
1189
  }
1173
1190
 
@@ -1177,7 +1194,7 @@ function JSDialogModifyDraw()
1177
1194
  this.ShowButton(item.Div, bShowBGColor?"inline":"none");
1178
1195
  if (bShowBGColor)
1179
1196
  {
1180
- item.Span.style['color']=bgColor;
1197
+ item.DivColorBar.style['background-color']=bgColor;
1181
1198
  }
1182
1199
  }
1183
1200
 
@@ -1187,7 +1204,7 @@ function JSDialogModifyDraw()
1187
1204
  this.ShowButton(item.Div, bShowFontColor?"inline":"none");
1188
1205
  if (bShowFontColor)
1189
1206
  {
1190
- item.Span.style['color']=fontColor;
1207
+ item.DivColorBar.style['background-color']=fontColor;
1191
1208
  }
1192
1209
  }
1193
1210
 
@@ -1197,7 +1214,7 @@ function JSDialogModifyDraw()
1197
1214
  this.ShowButton(item.Div, bShowBorderColor?"inline":"none");
1198
1215
  if (bShowBorderColor)
1199
1216
  {
1200
- item.Span.style['color']=borderColor;
1217
+ item.DivColorBar.style['background-color']=borderColor;
1201
1218
  }
1202
1219
  }
1203
1220
 
@@ -476,6 +476,17 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
476
476
  if (IFrameSplitOperator.IsBool(item.Enable)) chart.FastSlideConfig.Enable=item.Enable;
477
477
  }
478
478
 
479
+ if (option.DataMove)
480
+ {
481
+ var item=option.DataMove;
482
+
483
+ var subItem=item.Touch;
484
+ if (subItem && IFrameSplitOperator.IsBool(subItem.EnableLR)) chart.DataMoveConfig.Touch.EnableLR=subItem.EnableLR;
485
+
486
+ var subItem=item.Mouse;
487
+ if (subItem && IFrameSplitOperator.IsBool(subItem.EnableLR)) chart.DataMoveConfig.Mouse.EnableLR=subItem.EnableLR;
488
+ }
489
+
479
490
  if (chart.ClassName=="KLineChartContainer")
480
491
  {
481
492
  if (!option.DragSelectRect)
@@ -3430,8 +3441,9 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
3430
3441
  //SecondKeyID 1=shiftKey 2=ctrlKey 3=altKey
3431
3442
  this.AryHotKey=[]; //热键 { KeyID:87, SecondKeyID:1, CMD:JSCHART_MENU_ID.CMD_FULLSCREEN_SUMMARY_ID, Args:null, Description:"Alt+W 全屏区间统计" },
3432
3443
 
3433
- this.FastSlideConfig={ MinDistance:500, MinSpeed:3, MaxTime:250, Enable:false }; //快速滑动配置 MinDistance=最小的距离 MinSpeed=最小速度 MaxTime=最大间隔时间(ms)
3434
- this.KeyboardMove={ Timer:null, Delay:100 , PressTime:500, Enable:false, Event:null }; //键盘左右移动 PressTime=长按时间
3444
+ this.FastSlideConfig={ MinDistance:500, MinSpeed:3, MaxTime:250, Enable:false }; //快速滑动配置 MinDistance=最小的距离 MinSpeed=最小速度 MaxTime=最大间隔时间(ms)
3445
+ this.KeyboardMove={ Timer:null, Delay:100 , PressTime:500, Enable:false, Event:null }; //键盘左右移动 PressTime=长按时间
3446
+ this.DataMoveConfig={ Touch:{ EnableLR: true}, Mouse:{ EnableLR:true } }; //数据移动配置
3435
3447
 
3436
3448
  this.MapEventListenerCache=new Map(); //addEventListener 监听事件 key=type:"keydown|keyup ....", value:{ Callback:, Option: }
3437
3449
 
@@ -4932,7 +4944,8 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
4932
4944
  }
4933
4945
  else if (this.DragMode==1 || isDragSelectRect || isDragSubSelectRect) //数据上下左右拖拽 区间选择框左右拖动
4934
4946
  {
4935
- this.OnDragMode_One({X:moveSetp, Y:moveSetpY}, e);
4947
+ if (this.DataMoveConfig.Mouse.EnableLR)
4948
+ this.OnDragMode_One({X:moveSetp, Y:moveSetpY}, e);
4936
4949
  }
4937
4950
  }
4938
4951
 
@@ -6111,18 +6124,21 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
6111
6124
  var oneStepWidth=this.GetMoveOneStepWidth();
6112
6125
  if (moveSetp<oneStepWidth) return;
6113
6126
 
6114
- if(this.DataMove(moveSetp,isLeft))
6115
- {
6116
- this.UpdataDataoffset();
6117
- this.UpdatePointByCursorIndex();
6118
- this.UpdateFrameMaxMin();
6119
- this.ResetFrameXYSplit();
6120
- this.Draw();
6121
- this.OnKLinePageChange("OnTouchMove");
6122
- }
6123
- else
6127
+ if (this.DataMoveConfig.Touch.EnableLR)
6124
6128
  {
6125
- if (this.DragDownloadData) this.DragDownloadData();
6129
+ if(this.DataMove(moveSetp,isLeft))
6130
+ {
6131
+ this.UpdataDataoffset();
6132
+ this.UpdatePointByCursorIndex();
6133
+ this.UpdateFrameMaxMin();
6134
+ this.ResetFrameXYSplit();
6135
+ this.Draw();
6136
+ this.OnKLinePageChange("OnTouchMove");
6137
+ }
6138
+ else
6139
+ {
6140
+ if (this.DragDownloadData) this.DragDownloadData();
6141
+ }
6126
6142
  }
6127
6143
 
6128
6144
  drag.LastMove.X=touches[0].clientX;
@@ -10498,6 +10514,12 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10498
10514
  if (IFrameSplitOperator.IsBool(frameItem.IsShowIndexTitle)) frame.IsShowIndexTitle=frameItem.IsShowIndexTitle;
10499
10515
  if (frameItem.ClientBGColor) frame.ClientBGColor=frameItem.ClientBGColor;
10500
10516
 
10517
+ if (frameItem.Toolbar)
10518
+ {
10519
+ var subItem=frameItem.Toolbar.Margin;
10520
+ if (subItem && IFrameSplitOperator.IsNumber(subItem.Right)) frame.ToolbarConfig.Margin.Right=subItem.Right;
10521
+ }
10522
+
10501
10523
  //分时图属性
10502
10524
  if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton)) frameItem.IsShowCloseButton=frameItem.CloseBeforeButton;
10503
10525
  if (frame.YSplitOperator.RightTextConfig) //主图右侧坐标设置
@@ -13824,6 +13846,8 @@ function AverageWidthFrame()
13824
13846
  this.ExportDataButton=CloneData(g_JSChartResource.Buttons.ExportData);
13825
13847
  this.AddIndexWindowButton=CloneData(g_JSChartResource.Buttons.AddIndexWindow);
13826
13848
  this.IndexHelpButton=CloneData(g_JSChartResource.Buttons.IndexHelp);
13849
+
13850
+ this.ToolbarConfig={ Margin:{ Right:3 } },
13827
13851
 
13828
13852
  this.ButtonTooltip=CloneData(g_JSChartResource.Buttons.Tooltip);
13829
13853
 
@@ -13893,7 +13917,7 @@ function AverageWidthFrame()
13893
13917
  var border=this.GetBorder();
13894
13918
  if (this.IsHScreen)
13895
13919
  {
13896
- var y=border.Bottom-3;
13920
+ var y=border.Bottom-this.ToolbarConfig.Margin.Right;
13897
13921
  var x=border.RightTitle+this.ChartBorder.TitleHeight/2;
13898
13922
 
13899
13923
  this.ToolbarCacheSize={ RToolbar:{ Right:y, Left:y }}; //相当于额 Top, Bottom
@@ -13932,7 +13956,7 @@ function AverageWidthFrame()
13932
13956
  }
13933
13957
  else
13934
13958
  {
13935
- var right=border.RightEx-3;
13959
+ var right=border.RightEx-this.ToolbarConfig.Margin.Right;
13936
13960
  var left=border.Left;
13937
13961
  var yButton=border.Top+this.ChartBorder.TitleHeight/2;
13938
13962
 
@@ -66148,7 +66172,6 @@ IChartDrawPicture.ColorToRGBA=function(color,opacity)
66148
66172
  var reg = /^(rgb|RGB)/;
66149
66173
  if (reg.test(color))
66150
66174
  {
66151
- var strHex = "#";
66152
66175
  var aryColor = color.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(","); // 把RGB的3个数值变成数组
66153
66176
  var r = parseInt(aryColor[0]);
66154
66177
  var g = parseInt(aryColor[1]);
@@ -1153,12 +1153,28 @@ input[type="color"] {
1153
1153
  color:var(--HQChart-DialogModifyDraw-ButtonColor);
1154
1154
  }
1155
1155
 
1156
+ .UMyChart_Draw_Modify_Dialog_Button_ColorBar_Div
1157
+ {
1158
+ margin-top: 2px;
1159
+ height: 3px;
1160
+ width: 22px;
1161
+ }
1162
+
1163
+ .UMyChart_Draw_Modify_Dialog_Button_Color_Span
1164
+ {
1165
+ font-size:17px;
1166
+ margin-left: 2px;
1167
+ color:var(--HQChart-DialogModifyDraw-ButtonColor);
1168
+ }
1169
+
1170
+
1156
1171
  .UMyChart_Draw_Modify_Dialog_Unlock_Button_Span
1157
1172
  {
1158
1173
  font-size:22px;
1159
1174
  color:var(--HQChart-DialogModifyDraw-UnlockButtonColor);
1160
1175
  }
1161
1176
 
1177
+
1162
1178
  .UMyChart_Draw_Modify_Tooltip
1163
1179
  {
1164
1180
  position: absolute;
@@ -1166,14 +1182,14 @@ input[type="color"] {
1166
1182
  top: 30px;
1167
1183
  z-index: 2;
1168
1184
  width: 80px;
1169
- color: rgb(0,0,0);
1185
+ color: var(--HQChart-DialogModifyDraw-Tooltip-Color);
1170
1186
  font-size: 12px;
1171
1187
  text-align: center;
1172
- background-color:rgb(250,250,250);
1188
+ background-color:var(--HQChart-DialogModifyDraw-Tooltip-BGColor);
1173
1189
  border-radius: 2px;
1174
1190
  padding: 5px 5px 5px 5px;
1175
1191
  pointer-events: none;
1176
- border-color: rgb(169,169,169);
1192
+ border-color: var(--HQChart-DialogModifyDraw-Tooltip-BorderColor);
1177
1193
  border-style:solid;
1178
1194
  border-width:1px;
1179
1195
  user-select: none;
@@ -1183,7 +1199,7 @@ input[type="color"] {
1183
1199
  {
1184
1200
  visibility:hidden;
1185
1201
  width:22px;
1186
- height:22px;
1202
+ height:4px;
1187
1203
  position:absolute;
1188
1204
  }
1189
1205
 
@@ -2124,6 +2140,10 @@ input[type="color"] {
2124
2140
  --HQChart-DialogModifyDraw-ButtonBorderColor:rgb(20,20,20);
2125
2141
  --HQChart-DialogModifyDraw-UnlockButtonColor:rgb(220,220,220);
2126
2142
 
2143
+ --HQChart-DialogModifyDraw-Tooltip-BGColor: rgb(250,250,250);
2144
+ --HQChart-DialogModifyDraw-Tooltip-BorderColor: rgb(20,20,20);
2145
+ --HQChart-DialogModifyDraw-Tooltip-Color: rgb(20,20,20);
2146
+
2127
2147
  /*
2128
2148
  JSDialogSearchIndex
2129
2149
  */
@@ -2200,6 +2220,9 @@ input[type="color"] {
2200
2220
  --HQChart-DialogModifyDraw-ButtonBorderColor:rgb(20,20,20);
2201
2221
  --HQChart-DialogModifyDraw-UnlockButtonColor:rgb(220,220,220);
2202
2222
 
2223
+ --HQChart-DialogModifyDraw-Tooltip-BGColor: rgb(250,250,250);
2224
+ --HQChart-DialogModifyDraw-Tooltip-BorderColor: rgb(20,20,20);
2225
+ --HQChart-DialogModifyDraw-Tooltip-Color: rgb(20,20,20);
2203
2226
 
2204
2227
  /*
2205
2228
  JSDialogSearchIndex
@@ -2272,6 +2295,9 @@ input[type="color"] {
2272
2295
  --HQChart-DialogModifyDraw-ButtonBorderColor:rgb(170,170,170);
2273
2296
  --HQChart-DialogModifyDraw-UnlockButtonColor:rgb(60,60,60);
2274
2297
 
2298
+ --HQChart-DialogModifyDraw-Tooltip-BGColor: rgb(38,38,38);
2299
+ --HQChart-DialogModifyDraw-Tooltip-BorderColor: rgb(170,170,170);
2300
+ --HQChart-DialogModifyDraw-Tooltip-Color: rgb(210,210,210);
2275
2301
 
2276
2302
  /*
2277
2303
  JSDialogSearchIndex