hqchart 1.1.15719 → 1.1.15726
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/lib/umychart.vue.js +16 -12
- package/package.json +1 -1
- package/src/jscommon/umychart.complier.js +1 -1
- package/src/jscommon/umychart.js +50 -2
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +52 -4
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +52 -4
package/lib/umychart.vue.js
CHANGED
|
@@ -1699,7 +1699,9 @@ SUSP_ID:1//停牌
|
|
|
1699
1699
|
//十字光标状态
|
|
1700
1700
|
};var JSCHART_CORSSCURSOR_STATUS_ID={NONE_ID:0,LINE_ID:1,LEFT_TEXT_ID:2,LEFT_INTER_TEXT_ID:4,RIGHT_TEXT_ID:8,RIGHT_INTER_TEXT_ID:16,BOTTOM_TEXT_ID:32};var JSCHART_TEMPORARY_ATTRIBUTE={MAINFRAME:{BOTTOMSPACE:"MainFrame-BottomSpace",//主图底部预留空间,单位像素
|
|
1701
1701
|
TOPSPACE:"MainFrame-TopSpace",//主图顶部预留空间,单位像素
|
|
1702
|
-
SHOWLEFTTEXT:"MainFrame-ShowLeftText",SHOWRIGHTTEXT:"MainFrame-ShowRightText",SPLITTYPE:"MainFrame-SplitType"
|
|
1702
|
+
SHOWLEFTTEXT:"MainFrame-ShowLeftText",SHOWRIGHTTEXT:"MainFrame-ShowRightText",SPLITTYPE:"MainFrame-SplitType",//0=自动分割 1=数据的最大最小值分割 2=堆积图(0-100)
|
|
1703
|
+
HRESERVED:"MainFrame-HorizontalReserved",//上下预留空间 { Top:, Bottom: }
|
|
1704
|
+
TITLEHEIGHT:"MainFrame-TitleHeight"//标题栏高度
|
|
1703
1705
|
}};function PhoneDBClick(){this.Start=[];this.Clear=function(){this.Start=[];};this.AddTouchStart=function(x,y,time){if(this.Start.length>0){var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>0&&spanTime<300){this.Start.push({X:x,Y:y,Time:time});}else{this.Start=[];}}else{this.Start.push({X:x,Y:y,Time:time});}};this.IsVaildDBClick=function(){if(this.Start.length==2)return true;return false;};this.AddTouchEnd=function(time){if(this.Start.length<=0)return;var item=this.Start[this.Start.length-1];var spanTime=time-item.Time;if(spanTime>=0&&spanTime<150){}else{this.Start=[];}};}/*
|
|
1704
1706
|
图形控件
|
|
1705
1707
|
*/function JSChartContainer(uielement,OffscreenElement,cacheElement){var _this9=this;this.ClassName='JSChartContainer';var _self=this;this.Frame;//框架画法
|
|
@@ -2345,8 +2347,7 @@ this.GetExtendChartByClassNameV2=function(name){var aryChart=[];for(var i=0;i<th
|
|
|
2345
2347
|
this.DeleteExtendChart=function(data){if(data.Index>=this.ExtendChartPaint.length)return;if(this.ExtendChartPaint[data.Index]!=data.Chart)return;if(typeof data.Chart.Clear=='function')data.Chart.Clear();this.ExtendChartPaint.splice(data.Index,1);};//删除扩展画法
|
|
2346
2348
|
this.DeleteExtendChartByID=function(id){for(var i=0;i<this.ExtendChartPaint.length;++i){var item=this.ExtendChartPaint[i];if(item.ID==id){this.ExtendChartPaint.splice(i,1);return true;}}return false;};//全屏提示信息 { Title:提示信息, Draw:false/true 是否立即重绘, }
|
|
2347
2349
|
this.EnableSplashScreen=function(enable,option){if(!this.ChartSplashPaint)return;this.ChartSplashPaint.EnableSplash(enable);if(option&&option.Draw===false)return;if(enable)this.DrawSplashScreen(option);else this.Draw();};this.SetSplashScreen=function(option){if(!option)return;if(IFrameSplitOperator.IsBool(option.Enable))this.ChartSplashPaint.EnableSplash(option.Enable);if(option.Title)this.ChartSplashPaint.SetTitle(option.Title);if(option.Draw)this.Draw();};this.IsEnableSplashScreen=function(){if(!this.ChartSplashPaint)return false;return this.ChartSplashPaint.IsEnableSplash;};//设置指标窗口属性 windowItem=SetOption.Windows[i], frameItem=SetOption.Frames[i];
|
|
2348
|
-
this.SetSubFrameAttribute=function(subFrame,windowItem,frameItem){if(!subFrame||!subFrame.Frame)return;var frame=subFrame.Frame;var pixelRatio=GetDevicePixelRatio();if(windowItem){if(IFrameSplitOperator.IsBool(windowItem.Modify))frame.ModifyIndex=windowItem.Modify;if(IFrameSplitOperator.IsBool(windowItem.Change))frame.ChangeIndex=windowItem.Change;if(IFrameSplitOperator.IsBool(windowItem.Close))frame.CloseIndex=windowItem.Close;if(IFrameSplitOperator.IsBool(windowItem.Overlay))frame.OverlayIndex=windowItem.Overlay;if(IFrameSplitOperator.IsBool(windowItem.Export))frame.ExportData=windowItem.Export;if(IFrameSplitOperator.IsBool(windowItem.MaxMin))frame.MaxMinWindow=windowItem.MaxMin;if(IFrameSplitOperator.IsBool(windowItem.TitleWindow))frame.TitleWindow=windowItem.TitleWindow;if(IFrameSplitOperator.IsBool(windowItem.AddIndexWindow))frame.AddIndexWindow=windowItem.AddIndexWindow;if(IFrameSplitOperator.IsBool(windowItem.IndexHelp))frame.IndexHelp=windowItem.IndexHelp;if(IFrameSplitOperator.IsBool(windowItem.IsDrawTitleBG))frame.IsDrawTitleBG=windowItem.IsDrawTitleBG;if(IFrameSplitOperator.IsBool(windowItem.IsShowNameArrow))frame.IsShowNameArrow=windowItem.IsShowNameArrow;if(IFrameSplitOperator.IsNumber(windowItem.TitleHeight))frame.ChartBorder.TitleHeight=windowItem.TitleHeight;else windowItem.TitleHeight=frame.ChartBorder.TitleHeight;if(IFrameSplitOperator.IsBool(windowItem.IsShowTitleArrow))frame.IsShowTitleArrow=windowItem.IsShowTitleArrow;if(IFrameSplitOperator.IsNumber(windowItem.TitleArrowType))frame.TitleArrowType=windowItem.TitleArrowType;if(IFrameSplitOperator.IsBool(windowItem.IsShowIndexName))frame.IsShowIndexName=windowItem.IsShowIndexName;if(IFrameSplitOperator.IsBool(windowItem.IsSinlgeLine))frame.IsSinlgeLine=windowItem.IsSinlgeLine;if(IFrameSplitOperator.IsBool(windowItem.IsShowOverlayIndexName))frame.IsShowOverlayIndexName=windowItem.IsShowOverlayIndexName;if(IFrameSplitOperator.IsNumber(windowItem.IndexParamSpace))frame.IndexParamSpace=windowItem.IndexParamSpace;if(IFrameSplitOperator.IsNumber(windowItem.IndexTitleSpace))frame.IndexTitleSpace=windowItem.IndexTitleSpace;if(
|
|
2349
|
-
if(windowItem.OverlayIndexType){if(IFrameSplitOperator.IsNumber(windowItem.OverlayIndexType.Position))frame.OverlayIndexType.Position=windowItem.OverlayIndexType.Position;if(IFrameSplitOperator.IsNumber(windowItem.OverlayIndexType.LineSpace))frame.OverlayIndexType.LineSpace=windowItem.OverlayIndexType.LineSpace;}}if(frameItem){if(frameItem.SplitCount)frame.YSplitOperator.SplitCount=frameItem.SplitCount;//Y轴刻度线个数
|
|
2350
|
+
this.SetSubFrameAttribute=function(subFrame,windowItem,frameItem){if(!subFrame||!subFrame.Frame)return;var frame=subFrame.Frame;var pixelRatio=GetDevicePixelRatio();if(windowItem){if(IFrameSplitOperator.IsBool(windowItem.Modify))frame.ModifyIndex=windowItem.Modify;if(IFrameSplitOperator.IsBool(windowItem.Change))frame.ChangeIndex=windowItem.Change;if(IFrameSplitOperator.IsBool(windowItem.Close))frame.CloseIndex=windowItem.Close;if(IFrameSplitOperator.IsBool(windowItem.Overlay))frame.OverlayIndex=windowItem.Overlay;if(IFrameSplitOperator.IsBool(windowItem.Export))frame.ExportData=windowItem.Export;if(IFrameSplitOperator.IsBool(windowItem.MaxMin))frame.MaxMinWindow=windowItem.MaxMin;if(IFrameSplitOperator.IsBool(windowItem.TitleWindow))frame.TitleWindow=windowItem.TitleWindow;if(IFrameSplitOperator.IsBool(windowItem.AddIndexWindow))frame.AddIndexWindow=windowItem.AddIndexWindow;if(IFrameSplitOperator.IsBool(windowItem.IndexHelp))frame.IndexHelp=windowItem.IndexHelp;if(IFrameSplitOperator.IsBool(windowItem.IsDrawTitleBG))frame.IsDrawTitleBG=windowItem.IsDrawTitleBG;if(IFrameSplitOperator.IsBool(windowItem.IsShowNameArrow))frame.IsShowNameArrow=windowItem.IsShowNameArrow;if(IFrameSplitOperator.IsNumber(windowItem.TitleHeight))frame.ChartBorder.TitleHeight=windowItem.TitleHeight;else windowItem.TitleHeight=frame.ChartBorder.TitleHeight;if(IFrameSplitOperator.IsBool(windowItem.IsShowTitleArrow))frame.IsShowTitleArrow=windowItem.IsShowTitleArrow;if(IFrameSplitOperator.IsNumber(windowItem.TitleArrowType))frame.TitleArrowType=windowItem.TitleArrowType;if(IFrameSplitOperator.IsBool(windowItem.IsShowIndexName))frame.IsShowIndexName=windowItem.IsShowIndexName;if(IFrameSplitOperator.IsBool(windowItem.IsSinlgeLine))frame.IsSinlgeLine=windowItem.IsSinlgeLine;if(IFrameSplitOperator.IsBool(windowItem.IsShowOverlayIndexName))frame.IsShowOverlayIndexName=windowItem.IsShowOverlayIndexName;if(IFrameSplitOperator.IsNumber(windowItem.IndexParamSpace))frame.IndexParamSpace=windowItem.IndexParamSpace;if(IFrameSplitOperator.IsNumber(windowItem.IndexTitleSpace))frame.IndexTitleSpace=windowItem.IndexTitleSpace;if(windowItem.OverlayIndexType){if(IFrameSplitOperator.IsNumber(windowItem.OverlayIndexType.Position))frame.OverlayIndexType.Position=windowItem.OverlayIndexType.Position;if(IFrameSplitOperator.IsNumber(windowItem.OverlayIndexType.LineSpace))frame.OverlayIndexType.LineSpace=windowItem.OverlayIndexType.LineSpace;}}if(frameItem){if(frameItem.SplitCount)frame.YSplitOperator.SplitCount=frameItem.SplitCount;//Y轴刻度线个数
|
|
2350
2351
|
if(frameItem.StringFormat)frame.YSplitOperator.StringFormat=frameItem.StringFormat;//Y轴文字格式
|
|
2351
2352
|
if(IFrameSplitOperator.IsNumber(frameItem.FloatPrecision))frame.YSplitOperator.FloatPrecision=frameItem.FloatPrecision;//Y轴小数位数
|
|
2352
2353
|
if(frameItem.Custom)frame.YSplitOperator.Custom=frameItem.Custom;//Y轴自定义刻度
|
|
@@ -2357,8 +2358,9 @@ if(frameItem.IsYReverse===true)frame.CoordinateType=1;//反转坐标
|
|
|
2357
2358
|
if(IFrameSplitOperator.IsNumber(frameItem.PercentageTextFormat))frame.YSplitOperator.PercentageTextFormat=frameItem.PercentageTextFormat;//百分比坐标格式
|
|
2358
2359
|
if(frameItem.DefaultYMaxMin)frame.YSplitOperator.DefaultYMaxMin=frameItem.DefaultYMaxMin;//指定最大最小值
|
|
2359
2360
|
if(IFrameSplitOperator.IsBool(frameItem.EnableRemoveZero))frame.YSplitOperator.EnableRemoveZero=frameItem.EnableRemoveZero;//Y轴文字小数位是否自动抹0
|
|
2360
|
-
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;}
|
|
2361
|
-
|
|
2361
|
+
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;}if(!IFrameSplitOperator.IsUndefined(frameItem.HorizontalReserved))frame.HorizontalReserved=frameItem.HorizontalReserved;//Y轴上下预留
|
|
2362
|
+
//分时图属性
|
|
2363
|
+
if(IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton))frame.IsShowCloseButton=frameItem.CloseBeforeButton;if(frame.YSplitOperator.RightTextConfig)//主图右侧坐标设置
|
|
2362
2364
|
{if(IFrameSplitOperator.IsNumber(frameItem.RightTextFormat))//废弃(兼容版本)
|
|
2363
2365
|
{frame.YSplitOperator.RightTextConfig.Format=frameItem.RightTextFormat;if(frameItem.RightTextFormat==2)frame.MultiTextFormat=1;}if(frameItem.RightText)//主图右侧坐标设置(新版本)
|
|
2364
2366
|
{var subItem=frameItem.RightText;if(IFrameSplitOperator.IsNumber(subItem.Format))frame.YSplitOperator.RightTextConfig.Format=subItem.Format;if(subItem.Format==2)frame.MultiTextFormat=1;if(subItem.Percentage&&IFrameSplitOperator.IsNumber(subItem.Percentage.Dec))frame.YSplitOperator.RightTextConfig.Percentage.Dec=subItem.Percentage.Dec;}}}if(frame.DivFrameToolbar)frame.DivFrameToolbar.UpdateButton();//更新div工具条
|
|
@@ -2523,7 +2525,7 @@ this.UpdateTradeStatusData=function(data,option){if(option){//是否清空
|
|
|
2523
2525
|
if(option.IsClear===true)this.GlobalOption.TradeStatus=null;}if(!data)return false;if(IFrameSplitOperator.IsNumber(data.Date)&&IFrameSplitOperator.IsNumber(data.Time)&&IFrameSplitOperator.IsNumber(data.Status)){this.GlobalOption.TradeStatus={Date:data.Date,Time:data.Time,Status:data.Status};return true;}return false;};//键盘下按暂停更新
|
|
2524
2526
|
this.IsPauseUpdateByKeyboard=function(){if(!this.IsPressKeyboard)return false;if(!this.PressKeyboardConfig)return false;if(!this.PressKeyboardConfig.PauseUpdate)return false;return true;},//启动|关闭锁指标 aryIndex=[{ IndexID:指标ID, LockData:{IsLocked:} } ]
|
|
2525
2527
|
this.EnableLockIndex=function(aryIndex){if(!IFrameSplitOperator.IsNonEmptyArray(aryIndex))return false;var mapIndex=new _map2.default();for(var i=0;i<aryIndex.length;++i){var item=aryIndex[i];if(item.IndexID&&item.LockData)mapIndex.set(item.IndexID,item);}var aryUpdate=[];for(var i=0;i<this.WindowIndex.length;++i){var item=this.WindowIndex[i];if(!item)continue;if(mapIndex.has(item.ID)){var mapItem=mapIndex.get(item.ID);item.SetLock(mapItem.LockData);//设置锁
|
|
2526
|
-
aryUpdate.push({ID:i});}}for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];if(!IFrameSplitOperator.IsNonEmptyArray(item.OverlayIndex))continue;for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];var script=overlayItem.Script;if(mapIndex.has(script.ID)){var mapItem=mapIndex.get(script.ID);script.SetLock(mapItem.LockData);aryUpdate.push({OverlayID:overlayItem.Identify});}}}if(!IFrameSplitOperator.IsNonEmptyArray(aryUpdate))return false;this.UpdateWindowIndexV2(aryUpdate);return true;};this.TryClickLock=function(x,y){if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];var chartLock=item.Frame.LockPaint;if(!chartLock||!chartLock.LockRect)continue;var tooltip=new TooltipData();if(!chartLock.GetTooltipData(x,y,tooltip))continue;tooltip.HQChart=this;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_INDEX_LOCK);if(event&&event.Callback){var sendData={FrameID:item.Frame.Identify,Data:tooltip};event.Callback(event,sendData,this);}if(tooltip.Data.Callback)tooltip.Data.Callback(tooltip);return true;}return false;};this.RecvOverlayIndex=function(identify,data){var overlayIndex=this.GetOverlayIndexByIdentify(identify);if(overlayIndex==null){console.warn('[JSChartContainer::RecvOverlayIndex] can\'t find overlay index. [identify='+identify+']');return;}var script=overlayIndex.OverlayItem.Script;if(!script)return;if(typeof script.RecvSubscribeData!="function")return;var kData=this.GetKData();if(!kData)return;script.RecvSubscribeData(data,this,overlayIndex.WindowIndex,kData);};this.UpdateIndexTemporaryAttribute=function(windowIndex,aryAttribute){if(windowIndex<0)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;this.IndexTemporaryAttribute[windowIndex]=[];var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){var backup=mainFrame.YSplitOperator.IsShowLeftText;mainFrame.YSplitOperator.IsShowLeftText=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){var backup=mainFrame.YSplitOperator.IsShowRightText;mainFrame.YSplitOperator.IsShowRightText=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SPLITTYPE){var backup=mainFrame.YSplitOperator.SplitType;mainFrame.YSplitOperator.SplitType=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreIndexTemporaryAttribute=function(windowIndex){if(windowIndex<0)return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];if(!IFrameSplitOperator.IsNonEmptyArray(aryTemporaryAttribute))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;for(var i=0;i<aryTemporaryAttribute.length;++i){var item=aryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){mainFrame.YSplitOperator.IsShowLeftText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SPLITTYPE){mainFrame.YSplitOperator.SplitType=item.BackupValue;}}};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
|
|
2528
|
+
aryUpdate.push({ID:i});}}for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];if(!IFrameSplitOperator.IsNonEmptyArray(item.OverlayIndex))continue;for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];var script=overlayItem.Script;if(mapIndex.has(script.ID)){var mapItem=mapIndex.get(script.ID);script.SetLock(mapItem.LockData);aryUpdate.push({OverlayID:overlayItem.Identify});}}}if(!IFrameSplitOperator.IsNonEmptyArray(aryUpdate))return false;this.UpdateWindowIndexV2(aryUpdate);return true;};this.TryClickLock=function(x,y){if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];var chartLock=item.Frame.LockPaint;if(!chartLock||!chartLock.LockRect)continue;var tooltip=new TooltipData();if(!chartLock.GetTooltipData(x,y,tooltip))continue;tooltip.HQChart=this;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_INDEX_LOCK);if(event&&event.Callback){var sendData={FrameID:item.Frame.Identify,Data:tooltip};event.Callback(event,sendData,this);}if(tooltip.Data.Callback)tooltip.Data.Callback(tooltip);return true;}return false;};this.RecvOverlayIndex=function(identify,data){var overlayIndex=this.GetOverlayIndexByIdentify(identify);if(overlayIndex==null){console.warn('[JSChartContainer::RecvOverlayIndex] can\'t find overlay index. [identify='+identify+']');return;}var script=overlayIndex.OverlayItem.Script;if(!script)return;if(typeof script.RecvSubscribeData!="function")return;var kData=this.GetKData();if(!kData)return;script.RecvSubscribeData(data,this,overlayIndex.WindowIndex,kData);};this.UpdateIndexTemporaryAttribute=function(windowIndex,aryAttribute){if(windowIndex<0)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;this.IndexTemporaryAttribute[windowIndex]=[];var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){var backup=mainFrame.YSplitOperator.IsShowLeftText;mainFrame.YSplitOperator.IsShowLeftText=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){var backup=mainFrame.YSplitOperator.IsShowRightText;mainFrame.YSplitOperator.IsShowRightText=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SPLITTYPE){var backup=mainFrame.YSplitOperator.SplitType;mainFrame.YSplitOperator.SplitType=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED){var backup=mainFrame.HorizontalReserved;mainFrame.HorizontalReserved=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT){var backup=mainFrame.ChartBorder.TitleHeight;mainFrame.ChartBorder.TitleHeight=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreIndexTemporaryAttribute=function(windowIndex){if(windowIndex<0)return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];if(!IFrameSplitOperator.IsNonEmptyArray(aryTemporaryAttribute))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;for(var i=0;i<aryTemporaryAttribute.length;++i){var item=aryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){mainFrame.YSplitOperator.IsShowLeftText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SPLITTYPE){mainFrame.YSplitOperator.SplitType=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED){mainFrame.HorizontalReserved=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT){mainFrame.ChartBorder.TitleHeight=item.BackupValue;}}};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
|
|
2527
2529
|
{if(this.JSChartContainer&&this.JSChartContainer.OnKeyDown)this.JSChartContainer.OnKeyDown(e);}function OnKeyUp(e)//键盘事件
|
|
2528
2530
|
{if(this.JSChartContainer&&this.JSChartContainer.OnKeyUp)this.JSChartContainer.OnKeyUp(e);}function OnWheel(e)//上下滚动事件
|
|
2529
2531
|
{if(this.JSChartContainer&&this.JSChartContainer.OnWheel)this.JSChartContainer.OnWheel(e);}function ToFixed(number,precision){var b=1;if(isNaN(number))return number;if(number<0)b=-1;var multiplier=Math.pow(10,precision);var value=Math.round(Math.abs(number)*multiplier)/multiplier*b;if(/^(\d+(?:\.\d+)?)(e)([\-]?\d+)$/.test(value))var s=value.toFixed2(precision);else var s=value.toString();var rs=s.indexOf('.');if(rs<0&&precision>0){rs=s.length;s+='.';}while(s.length<=rs+precision){s+='0';}return s;}function IsRectOverlap(rt,rt2){if(Math.max(rt.Left,rt2.Left)<Math.min(rt.Right,rt2.Right)&&Math.max(rt.Top,rt2.Top)<Math.min(rt.Bottom,rt2.Bottom))return true;return false;}//获取文字高度和宽度
|
|
@@ -3316,8 +3318,8 @@ this.UpdateFrameMaxMin=function()//调整坐标最大 最小值
|
|
|
3316
3318
|
{this.Frame.XYSplit=true;return;}if(this.Frame.YSpecificMaxMin)//固定坐标
|
|
3317
3319
|
{value.Max=this.Frame.YSpecificMaxMin.Max;value.Min=this.Frame.YSpecificMaxMin.Min;}else{for(var i=0;i<this.ChartPaint.length;++i){var paint=this.ChartPaint[i];if(paint.IsShow==false)continue;//隐藏的图形不计算
|
|
3318
3320
|
var range=paint.GetMaxMin();if(range==null||range.Max==null||range.Min==null)continue;if(IFrameSplitOperator.IsNumber(range.Max)){if(value.Max==null||value.Max<range.Max)value.Max=range.Max;}if(IFrameSplitOperator.IsNumber(range.Min)){if(value.Min==null||value.Min>range.Min)value.Min=range.Min;}}}if(!IFrameSplitOperator.IsNumber(this.Frame.YMaxMin.Max)||this.Frame.YMaxMin.Max!=value.Max){this.Frame.YMaxMin.Max=value.Max;this.Frame.XYSplit=true;}if(!IFrameSplitOperator.IsNumber(this.Frame.YMaxMin.Min)||this.Frame.YMaxMin.Min!=value.Min){this.Frame.YMaxMin.Min=value.Min;this.Frame.XYSplit=true;}if(this.Frame.XYSplit){var max=10,min=0;if(value.Max!=null)max=value.Max;if(value.Min!=null)min=value.Min;this.Frame.HorizontalMax=max;this.Frame.HorizontalMin=min;}else{this.Frame.XYSplit=true;}};this.UpdateTemporaryAttribute=function(mainFrame,aryAttribute)//更新临时属性
|
|
3319
|
-
{if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){var backup=mainFrame.YSplitOperator.IsShowLeftText;mainFrame.YSplitOperator.IsShowLeftText=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){var backup=mainFrame.YSplitOperator.IsShowRightText;mainFrame.YSplitOperator.IsShowRightText=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreTemporaryAttribute=function(mainFrame)//还原临时属性
|
|
3320
|
-
{if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTemporaryAttribute))return;for(var i=0;i<this.AryTemporaryAttribute.length;++i){var item=this.AryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){mainFrame.YSplitOperator.IsShowLeftText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;}}this.AryTemporaryAttribute=[];};}//行情框架
|
|
3321
|
+
{if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){var backup=mainFrame.YSplitOperator.IsShowLeftText;mainFrame.YSplitOperator.IsShowLeftText=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){var backup=mainFrame.YSplitOperator.IsShowRightText;mainFrame.YSplitOperator.IsShowRightText=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED){var backup=mainFrame.HorizontalReserved;mainFrame.HorizontalReserved=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT){var backup=mainFrame.ChartBorder.TitleHeight;mainFrame.ChartBorder.TitleHeight=item.Value;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreTemporaryAttribute=function(mainFrame)//还原临时属性
|
|
3322
|
+
{if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTemporaryAttribute))return;for(var i=0;i<this.AryTemporaryAttribute.length;++i){var item=this.AryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){mainFrame.YSplitOperator.IsShowLeftText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED){mainFrame.HorizontalReserved=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT){mainFrame.ChartBorder.TitleHeight=item.BackupValue;this.AryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}this.AryTemporaryAttribute=[];};}//行情框架
|
|
3321
3323
|
function HQTradeFrame(){this.SubFrame=new Array();//SubFrameItem 数组
|
|
3322
3324
|
this.SizeChange=true;//大小是否改变
|
|
3323
3325
|
this.ChartBorder;this.Canvas;//画布
|
|
@@ -8524,9 +8526,11 @@ this.ChartPaint[0].TradeData=null;//交易系统数据取消
|
|
|
8524
8526
|
var title=this.TitlePaint[1];if(title){title.TradeIndex=null;title.ColorIndex=null;}this.UpdataDataoffset();//更新数据偏移
|
|
8525
8527
|
this.UpdateFrameMaxMin();//调整坐标最大 最小值
|
|
8526
8528
|
this.Draw();};this.SetFrameToolbar=function(windowIndex,window){if(!window||!this.Frame.SubFrame[windowIndex]||!this.Frame.SubFrame[windowIndex].Frame)return;var frame=this.Frame.SubFrame[windowIndex].Frame;var bChanged=false;if(IFrameSplitOperator.IsBool(window.Modify)){frame.ModifyIndex=window.Modify;bChanged=true;}if(IFrameSplitOperator.IsBool(window.Change)){frame.ChangeIndex=window.Change;bChanged=true;}if(IFrameSplitOperator.IsBool(window.Close)){frame.CloseIndex=window.Close;bChanged=true;}if(IFrameSplitOperator.IsBool(window.Overlay)){frame.OverlayIndex=window.Overlay;bChanged=true;}//工具栏变 先刷新工具栏
|
|
8527
|
-
if(bChanged){frame.SizeChange=true;frame.DrawToolbar();}}
|
|
8529
|
+
if(bChanged){frame.SizeChange=true;frame.DrawToolbar();}};//TODO:准备废弃
|
|
8530
|
+
this.SetFrameAttribute=function(windowIndex,attr){if(!this.Frame.SubFrame[windowIndex]||!this.Frame.SubFrame[windowIndex].Frame)return;if(!attr)return;var frame=this.Frame.SubFrame[windowIndex].Frame;if(!IFrameSplitOperator.IsUndefined(attr.HorizontalReserved))frame.HorizontalReserved=attr.HorizontalReserved;//Y轴上下预留
|
|
8528
8531
|
if(IFrameSplitOperator.IsNumber(attr.TitleHeight))frame.ChartBorder.TitleHeight=attr.TitleHeight;//指标标题高度
|
|
8529
|
-
}
|
|
8532
|
+
};//TODO:准备废弃
|
|
8533
|
+
this.ResetFrameAttribute=function(windowIndex){if(!this.Frame.SubFrame[windowIndex]||!this.Frame.SubFrame[windowIndex].Frame)return;var frame=this.Frame.SubFrame[windowIndex].Frame;frame.HorizontalReserved=null;};//切换成 脚本指标
|
|
8530
8534
|
this.ChangeScriptIndex=function(windowIndex,indexData,option){this.DeleteIndexPaint(windowIndex,true);this.RestoreIndexTemporaryAttribute(windowIndex);//恢复临时属性
|
|
8531
8535
|
this.WindowIndex[windowIndex]=new ScriptIndex(indexData.Name,indexData.Script,indexData.Args,indexData);//脚本执行
|
|
8532
8536
|
this.ResetFrameAttribute(windowIndex);this.Frame.ClearYCoordinateMaxMin(windowIndex);if(option){if(option.Window){this.SetFrameToolbar(windowIndex,option.Window);this.SetFrameAttribute(windowIndex,option.Window);//窗口属性
|
|
@@ -12092,7 +12096,7 @@ this.HORLINE=function(condition,data,type,extend){var drawData={Data:[],LineType
|
|
|
12092
12096
|
//{ Color:背景色, Border:边框颜色, Margin=[上,下,左, 右] }
|
|
12093
12097
|
this.BACKGROUND=function(color,borderColor,left,right,top,bottom){var bg={Margin:[0,1,1,1]};if(color)bg.Color=color;if(borderColor)bg.Border=borderColor;if(IFrameSplitOperator.IsNumber(left))bg.Margin[2]=left;if(IFrameSplitOperator.IsNumber(right))bg.Margin[3]=right;if(IFrameSplitOperator.IsNumber(top))bg.Margin[0]=top;if(IFrameSplitOperator.IsNumber(bottom))bg.Margin[1]=bottom;return bg;};//该函数和DRAWTEXT, DRAWICON连用
|
|
12094
12098
|
//{ color:线段颜色, lineWidth:宽度 lineType:线段样式0=直线 1=虚线}
|
|
12095
|
-
this.CKLINE=function(color,lineWidth,lineType,lineDotted){var drawData={Color:color,LineWidth:1,LineType:0,LineDot:[3,3]};if(IFrameSplitOperator.IsPlusNumber(lineWidth))drawData.LineWidth=lineWidth;if(IFrameSplitOperator.IsPlusNumber(lineType))drawData.LineType=lineType;if(lineDotted){var ary=lineDotted.split(',');var dotted=[];for(var i in ary){var item=ary[i];if(!item)continue;var value=parseInt(ary[i]);if(value<=0)continue;dotted.push(value);}if(dotted.length>0)drawData.LineDotted=dotted;}drawData.Data=[];for(var i=0;i<this.SymbolData.Data.Data.length;++i){var item=this.SymbolData.Data.Data[i];drawData.Data[i]={High:item.High,Low:item.Low};}return drawData;};//多头建仓(买入开仓).
|
|
12099
|
+
this.CKLINE=function(color,lineWidth,lineType,lineDotted){var drawData={Color:color,LineWidth:1,LineType:0,LineDot:[3,3]};if(IFrameSplitOperator.IsPlusNumber(lineWidth))drawData.LineWidth=lineWidth;if(IFrameSplitOperator.IsPlusNumber(lineType))drawData.LineType=lineType;if(lineDotted){var ary=lineDotted.split(',');var dotted=[];for(var i in ary){var item=ary[i];if(!item)continue;var value=parseInt(ary[i]);if(value<=0)continue;dotted.push(value);}if(dotted.length>0)drawData.LineDotted=dotted;}drawData.Data=[];for(var i=0;i<this.SymbolData.Data.Data.length;++i){var item=this.SymbolData.Data.Data[i];drawData.Data[i]={High:item.High,Low:item.Low,Close:item.Close};}return drawData;};//多头建仓(买入开仓).
|
|
12096
12100
|
//参数1为触发条件,参数2为标记放置位置.此函数只适用于特定版本交易模式下.
|
|
12097
12101
|
//例如: BUY(CROSS(A,B),LOW),当A上穿B时,在LOW处画标记,同时突出提示或直接下单,如果LOW改为DRAWNULL,就不画标记.(分时图上不支持)
|
|
12098
12102
|
this.BUY=function(condition,data,iconSymbol,color){var iconInfo={Color:"rgb(0,255,0)",Type:"SVG",Icon:'\uE660'};if(IFrameSplitOperator.IsString(iconSymbol))iconInfo.Icon=iconSymbol;if(color)iconInfo.Color=color;var result=this.CalculateTradeData(condition,data,iconInfo);result.DrawType='BUY';return result;};this.BUYSHORT=function(condition,data,iconSymbol,color){var iconInfo={Color:"rgb(0,255,0)",Type:"SVG",Icon:'\uE660'};if(IFrameSplitOperator.IsString(iconSymbol))iconInfo.Icon=iconSymbol;if(color)iconInfo.Color=color;var result=this.CalculateTradeData(condition,data,iconInfo);result.DrawType='BUYSHORT';return result;};//多头平仓(卖出平仓).
|
|
@@ -16326,7 +16330,7 @@ if(this.MouseOnItem){if(this.MouseOnItem.Data==item)color=this.TextConfig.MouseO
|
|
|
16326
16330
|
*/this.Canvas.restore();this.ResizeDataCount(endIndex);};this.ResizeDataCount=function(startIndex){if(!IFrameSplitOperator.IsNumber(startIndex))return;if(startIndex<=0)return;if(this.LimitCount<=0)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return;if(this.Data.AryText.length<=this.LimitCount)return;var delCount=this.Data.AryText.length-this.LimitCount;for(var i=0;i<delCount&&i<startIndex;++i){this.Data.AryText.shift();}};this.GetTooltipData=function(x,y,tooltip){var rtClient=this.GetClientRect();if(x>=rtClient.Left&&x<=rtClient.Right){for(var i=0;i<this.AryRect.length;++i){var item=this.AryRect[i];if(Path2DHelper.PtInRect(x,y,item.Rect)){tooltip.Data=item;tooltip.ChartPaint=this;tooltip.Type=1;return true;}}}return false;};this.ScrollStep=function(defaultStep){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return false;if(!this.FirstItem)return false;var moveStep=this.MoveStep;if(IFrameSplitOperator.IsNumber(defaultStep))moveStep=defaultStep;var rtClient=this.GetClientRect();var left=rtClient.Left;var right=rtClient.Right;var width=this.FirstItem.Move.Width;var xOffset=this.FirstItem.Move.XOffset+moveStep;if(right-xOffset+width<left){var startIndex=this.GetDataIndex(this.FirstItem);nextIndex=startIndex-1;if(nextIndex<0){var index=this.Data.AryText.length-1;this.FirstItem=this.Data.AryText[index];this.FirstItem.Move={XOffset:0};}else{this.FirstItem=this.Data.AryText[nextIndex];this.FirstItem.Move={XOffset:xOffset-width};}}else{this.FirstItem.Move.XOffset=xOffset;}return true;};}/********************************************************************************
|
|
16327
16331
|
* 版本信息输出
|
|
16328
16332
|
*
|
|
16329
|
-
*/var HQCHART_VERSION="1.1.
|
|
16333
|
+
*/var HQCHART_VERSION="1.1.15725";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();//把给外界调用的方法暴露出来
|
|
16330
16334
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
16331
16335
|
// BaseIndex:BaseIndex,
|
|
16332
16336
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -11748,7 +11748,7 @@ function JSDraw(errorHandler,symbolData)
|
|
|
11748
11748
|
for(var i=0;i<this.SymbolData.Data.Data.length;++i)
|
|
11749
11749
|
{
|
|
11750
11750
|
var item=this.SymbolData.Data.Data[i];
|
|
11751
|
-
drawData.Data[i]={ High:item.High, Low:item.Low };
|
|
11751
|
+
drawData.Data[i]={ High:item.High, Low:item.Low, Close:item.Close };
|
|
11752
11752
|
}
|
|
11753
11753
|
|
|
11754
11754
|
return drawData;
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -3083,6 +3083,8 @@ var JSCHART_TEMPORARY_ATTRIBUTE=
|
|
|
3083
3083
|
SHOWLEFTTEXT:"MainFrame-ShowLeftText",
|
|
3084
3084
|
SHOWRIGHTTEXT:"MainFrame-ShowRightText",
|
|
3085
3085
|
SPLITTYPE:"MainFrame-SplitType", //0=自动分割 1=数据的最大最小值分割 2=堆积图(0-100)
|
|
3086
|
+
HRESERVED:"MainFrame-HorizontalReserved", //上下预留空间 { Top:, Bottom: }
|
|
3087
|
+
TITLEHEIGHT:"MainFrame-TitleHeight", //标题栏高度
|
|
3086
3088
|
}
|
|
3087
3089
|
}
|
|
3088
3090
|
|
|
@@ -10542,7 +10544,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
10542
10544
|
if (IFrameSplitOperator.IsBool(windowItem.IsShowOverlayIndexName)) frame.IsShowOverlayIndexName=windowItem.IsShowOverlayIndexName;
|
|
10543
10545
|
if (IFrameSplitOperator.IsNumber(windowItem.IndexParamSpace)) frame.IndexParamSpace=windowItem.IndexParamSpace;
|
|
10544
10546
|
if (IFrameSplitOperator.IsNumber(windowItem.IndexTitleSpace)) frame.IndexTitleSpace=windowItem.IndexTitleSpace;
|
|
10545
|
-
|
|
10547
|
+
|
|
10546
10548
|
|
|
10547
10549
|
if (windowItem.OverlayIndexType)
|
|
10548
10550
|
{
|
|
@@ -10602,8 +10604,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
10602
10604
|
if (subItem && IFrameSplitOperator.IsNumber(subItem.Right)) frame.ToolbarConfig.Margin.Right=subItem.Right;
|
|
10603
10605
|
}
|
|
10604
10606
|
|
|
10607
|
+
if (!IFrameSplitOperator.IsUndefined(frameItem.HorizontalReserved)) frame.HorizontalReserved=frameItem.HorizontalReserved; //Y轴上下预留
|
|
10608
|
+
|
|
10605
10609
|
//分时图属性
|
|
10606
|
-
if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton))
|
|
10610
|
+
if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton)) frame.IsShowCloseButton=frameItem.CloseBeforeButton;
|
|
10607
10611
|
if (frame.YSplitOperator.RightTextConfig) //主图右侧坐标设置
|
|
10608
10612
|
{
|
|
10609
10613
|
if (IFrameSplitOperator.IsNumber(frameItem.RightTextFormat)) //废弃(兼容版本)
|
|
@@ -12931,6 +12935,18 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
12931
12935
|
mainFrame.YSplitOperator.SplitType=item.Value;
|
|
12932
12936
|
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
12933
12937
|
}
|
|
12938
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
12939
|
+
{
|
|
12940
|
+
var backup=mainFrame.HorizontalReserved;
|
|
12941
|
+
mainFrame.HorizontalReserved=item.Value;
|
|
12942
|
+
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
12943
|
+
}
|
|
12944
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
12945
|
+
{
|
|
12946
|
+
var backup=mainFrame.ChartBorder.TitleHeight;
|
|
12947
|
+
mainFrame.ChartBorder.TitleHeight=item.Value;
|
|
12948
|
+
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
12949
|
+
}
|
|
12934
12950
|
|
|
12935
12951
|
}
|
|
12936
12952
|
}
|
|
@@ -12966,6 +12982,14 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
12966
12982
|
{
|
|
12967
12983
|
mainFrame.YSplitOperator.SplitType=item.BackupValue;
|
|
12968
12984
|
}
|
|
12985
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
12986
|
+
{
|
|
12987
|
+
mainFrame.HorizontalReserved=item.BackupValue;
|
|
12988
|
+
}
|
|
12989
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
12990
|
+
{
|
|
12991
|
+
mainFrame.ChartBorder.TitleHeight=item.BackupValue;
|
|
12992
|
+
}
|
|
12969
12993
|
}
|
|
12970
12994
|
|
|
12971
12995
|
}
|
|
@@ -21939,6 +21963,19 @@ function OverlayIndexItem()
|
|
|
21939
21963
|
mainFrame.YSplitOperator.IsShowRightText=item.Value;
|
|
21940
21964
|
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
21941
21965
|
}
|
|
21966
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
21967
|
+
{
|
|
21968
|
+
var backup=mainFrame.HorizontalReserved;
|
|
21969
|
+
mainFrame.HorizontalReserved=item.Value;
|
|
21970
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
21971
|
+
}
|
|
21972
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
21973
|
+
{
|
|
21974
|
+
var backup=mainFrame.ChartBorder.TitleHeight;
|
|
21975
|
+
mainFrame.ChartBorder.TitleHeight=item.Value;
|
|
21976
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
21977
|
+
}
|
|
21978
|
+
|
|
21942
21979
|
}
|
|
21943
21980
|
}
|
|
21944
21981
|
|
|
@@ -21965,6 +22002,15 @@ function OverlayIndexItem()
|
|
|
21965
22002
|
{
|
|
21966
22003
|
mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;
|
|
21967
22004
|
}
|
|
22005
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
22006
|
+
{
|
|
22007
|
+
mainFrame.HorizontalReserved=item.BackupValue;
|
|
22008
|
+
}
|
|
22009
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
22010
|
+
{
|
|
22011
|
+
mainFrame.ChartBorder.TitleHeight=item.BackupValue;
|
|
22012
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
22013
|
+
}
|
|
21968
22014
|
}
|
|
21969
22015
|
|
|
21970
22016
|
this.AryTemporaryAttribute=[];
|
|
@@ -88885,6 +88931,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
88885
88931
|
}
|
|
88886
88932
|
}
|
|
88887
88933
|
|
|
88934
|
+
//TODO:准备废弃
|
|
88888
88935
|
this.SetFrameAttribute=function(windowIndex, attr)
|
|
88889
88936
|
{
|
|
88890
88937
|
if (!this.Frame.SubFrame[windowIndex] || !this.Frame.SubFrame[windowIndex].Frame) return;
|
|
@@ -88896,6 +88943,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
88896
88943
|
if (IFrameSplitOperator.IsNumber(attr.TitleHeight)) frame.ChartBorder.TitleHeight=attr.TitleHeight; //指标标题高度
|
|
88897
88944
|
}
|
|
88898
88945
|
|
|
88946
|
+
//TODO:准备废弃
|
|
88899
88947
|
this.ResetFrameAttribute=function(windowIndex)
|
|
88900
88948
|
{
|
|
88901
88949
|
if (!this.Frame.SubFrame[windowIndex] || !this.Frame.SubFrame[windowIndex].Frame) return;
|
|
@@ -7181,6 +7181,8 @@ var JSCHART_TEMPORARY_ATTRIBUTE=
|
|
|
7181
7181
|
SHOWLEFTTEXT:"MainFrame-ShowLeftText",
|
|
7182
7182
|
SHOWRIGHTTEXT:"MainFrame-ShowRightText",
|
|
7183
7183
|
SPLITTYPE:"MainFrame-SplitType", //0=自动分割 1=数据的最大最小值分割 2=堆积图(0-100)
|
|
7184
|
+
HRESERVED:"MainFrame-HorizontalReserved", //上下预留空间 { Top:, Bottom: }
|
|
7185
|
+
TITLEHEIGHT:"MainFrame-TitleHeight", //标题栏高度
|
|
7184
7186
|
}
|
|
7185
7187
|
}
|
|
7186
7188
|
|
|
@@ -14640,7 +14642,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
14640
14642
|
if (IFrameSplitOperator.IsBool(windowItem.IsShowOverlayIndexName)) frame.IsShowOverlayIndexName=windowItem.IsShowOverlayIndexName;
|
|
14641
14643
|
if (IFrameSplitOperator.IsNumber(windowItem.IndexParamSpace)) frame.IndexParamSpace=windowItem.IndexParamSpace;
|
|
14642
14644
|
if (IFrameSplitOperator.IsNumber(windowItem.IndexTitleSpace)) frame.IndexTitleSpace=windowItem.IndexTitleSpace;
|
|
14643
|
-
|
|
14645
|
+
|
|
14644
14646
|
|
|
14645
14647
|
if (windowItem.OverlayIndexType)
|
|
14646
14648
|
{
|
|
@@ -14700,8 +14702,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
14700
14702
|
if (subItem && IFrameSplitOperator.IsNumber(subItem.Right)) frame.ToolbarConfig.Margin.Right=subItem.Right;
|
|
14701
14703
|
}
|
|
14702
14704
|
|
|
14705
|
+
if (!IFrameSplitOperator.IsUndefined(frameItem.HorizontalReserved)) frame.HorizontalReserved=frameItem.HorizontalReserved; //Y轴上下预留
|
|
14706
|
+
|
|
14703
14707
|
//分时图属性
|
|
14704
|
-
if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton))
|
|
14708
|
+
if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton)) frame.IsShowCloseButton=frameItem.CloseBeforeButton;
|
|
14705
14709
|
if (frame.YSplitOperator.RightTextConfig) //主图右侧坐标设置
|
|
14706
14710
|
{
|
|
14707
14711
|
if (IFrameSplitOperator.IsNumber(frameItem.RightTextFormat)) //废弃(兼容版本)
|
|
@@ -17029,6 +17033,18 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
17029
17033
|
mainFrame.YSplitOperator.SplitType=item.Value;
|
|
17030
17034
|
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
17031
17035
|
}
|
|
17036
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
17037
|
+
{
|
|
17038
|
+
var backup=mainFrame.HorizontalReserved;
|
|
17039
|
+
mainFrame.HorizontalReserved=item.Value;
|
|
17040
|
+
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
17041
|
+
}
|
|
17042
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
17043
|
+
{
|
|
17044
|
+
var backup=mainFrame.ChartBorder.TitleHeight;
|
|
17045
|
+
mainFrame.ChartBorder.TitleHeight=item.Value;
|
|
17046
|
+
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
17047
|
+
}
|
|
17032
17048
|
|
|
17033
17049
|
}
|
|
17034
17050
|
}
|
|
@@ -17064,6 +17080,14 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
17064
17080
|
{
|
|
17065
17081
|
mainFrame.YSplitOperator.SplitType=item.BackupValue;
|
|
17066
17082
|
}
|
|
17083
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
17084
|
+
{
|
|
17085
|
+
mainFrame.HorizontalReserved=item.BackupValue;
|
|
17086
|
+
}
|
|
17087
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
17088
|
+
{
|
|
17089
|
+
mainFrame.ChartBorder.TitleHeight=item.BackupValue;
|
|
17090
|
+
}
|
|
17067
17091
|
}
|
|
17068
17092
|
|
|
17069
17093
|
}
|
|
@@ -26037,6 +26061,19 @@ function OverlayIndexItem()
|
|
|
26037
26061
|
mainFrame.YSplitOperator.IsShowRightText=item.Value;
|
|
26038
26062
|
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26039
26063
|
}
|
|
26064
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
26065
|
+
{
|
|
26066
|
+
var backup=mainFrame.HorizontalReserved;
|
|
26067
|
+
mainFrame.HorizontalReserved=item.Value;
|
|
26068
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26069
|
+
}
|
|
26070
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
26071
|
+
{
|
|
26072
|
+
var backup=mainFrame.ChartBorder.TitleHeight;
|
|
26073
|
+
mainFrame.ChartBorder.TitleHeight=item.Value;
|
|
26074
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26075
|
+
}
|
|
26076
|
+
|
|
26040
26077
|
}
|
|
26041
26078
|
}
|
|
26042
26079
|
|
|
@@ -26063,6 +26100,15 @@ function OverlayIndexItem()
|
|
|
26063
26100
|
{
|
|
26064
26101
|
mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;
|
|
26065
26102
|
}
|
|
26103
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
26104
|
+
{
|
|
26105
|
+
mainFrame.HorizontalReserved=item.BackupValue;
|
|
26106
|
+
}
|
|
26107
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
26108
|
+
{
|
|
26109
|
+
mainFrame.ChartBorder.TitleHeight=item.BackupValue;
|
|
26110
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26111
|
+
}
|
|
26066
26112
|
}
|
|
26067
26113
|
|
|
26068
26114
|
this.AryTemporaryAttribute=[];
|
|
@@ -92983,6 +93029,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
92983
93029
|
}
|
|
92984
93030
|
}
|
|
92985
93031
|
|
|
93032
|
+
//TODO:准备废弃
|
|
92986
93033
|
this.SetFrameAttribute=function(windowIndex, attr)
|
|
92987
93034
|
{
|
|
92988
93035
|
if (!this.Frame.SubFrame[windowIndex] || !this.Frame.SubFrame[windowIndex].Frame) return;
|
|
@@ -92994,6 +93041,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
92994
93041
|
if (IFrameSplitOperator.IsNumber(attr.TitleHeight)) frame.ChartBorder.TitleHeight=attr.TitleHeight; //指标标题高度
|
|
92995
93042
|
}
|
|
92996
93043
|
|
|
93044
|
+
//TODO:准备废弃
|
|
92997
93045
|
this.ResetFrameAttribute=function(windowIndex)
|
|
92998
93046
|
{
|
|
92999
93047
|
if (!this.Frame.SubFrame[windowIndex] || !this.Frame.SubFrame[windowIndex].Frame) return;
|
|
@@ -125435,7 +125483,7 @@ function JSDraw(errorHandler,symbolData)
|
|
|
125435
125483
|
for(var i=0;i<this.SymbolData.Data.Data.length;++i)
|
|
125436
125484
|
{
|
|
125437
125485
|
var item=this.SymbolData.Data.Data[i];
|
|
125438
|
-
drawData.Data[i]={ High:item.High, Low:item.Low };
|
|
125486
|
+
drawData.Data[i]={ High:item.High, Low:item.Low, Close:item.Close };
|
|
125439
125487
|
}
|
|
125440
125488
|
|
|
125441
125489
|
return drawData;
|
|
@@ -159164,7 +159212,7 @@ function ScrollBarBGChart()
|
|
|
159164
159212
|
|
|
159165
159213
|
|
|
159166
159214
|
|
|
159167
|
-
var HQCHART_VERSION="1.1.
|
|
159215
|
+
var HQCHART_VERSION="1.1.15725";
|
|
159168
159216
|
|
|
159169
159217
|
function PrintHQChartVersion()
|
|
159170
159218
|
{
|
|
@@ -7225,6 +7225,8 @@ var JSCHART_TEMPORARY_ATTRIBUTE=
|
|
|
7225
7225
|
SHOWLEFTTEXT:"MainFrame-ShowLeftText",
|
|
7226
7226
|
SHOWRIGHTTEXT:"MainFrame-ShowRightText",
|
|
7227
7227
|
SPLITTYPE:"MainFrame-SplitType", //0=自动分割 1=数据的最大最小值分割 2=堆积图(0-100)
|
|
7228
|
+
HRESERVED:"MainFrame-HorizontalReserved", //上下预留空间 { Top:, Bottom: }
|
|
7229
|
+
TITLEHEIGHT:"MainFrame-TitleHeight", //标题栏高度
|
|
7228
7230
|
}
|
|
7229
7231
|
}
|
|
7230
7232
|
|
|
@@ -14684,7 +14686,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
14684
14686
|
if (IFrameSplitOperator.IsBool(windowItem.IsShowOverlayIndexName)) frame.IsShowOverlayIndexName=windowItem.IsShowOverlayIndexName;
|
|
14685
14687
|
if (IFrameSplitOperator.IsNumber(windowItem.IndexParamSpace)) frame.IndexParamSpace=windowItem.IndexParamSpace;
|
|
14686
14688
|
if (IFrameSplitOperator.IsNumber(windowItem.IndexTitleSpace)) frame.IndexTitleSpace=windowItem.IndexTitleSpace;
|
|
14687
|
-
|
|
14689
|
+
|
|
14688
14690
|
|
|
14689
14691
|
if (windowItem.OverlayIndexType)
|
|
14690
14692
|
{
|
|
@@ -14744,8 +14746,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
14744
14746
|
if (subItem && IFrameSplitOperator.IsNumber(subItem.Right)) frame.ToolbarConfig.Margin.Right=subItem.Right;
|
|
14745
14747
|
}
|
|
14746
14748
|
|
|
14749
|
+
if (!IFrameSplitOperator.IsUndefined(frameItem.HorizontalReserved)) frame.HorizontalReserved=frameItem.HorizontalReserved; //Y轴上下预留
|
|
14750
|
+
|
|
14747
14751
|
//分时图属性
|
|
14748
|
-
if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton))
|
|
14752
|
+
if (IFrameSplitOperator.IsBool(frameItem.CloseBeforeButton)) frame.IsShowCloseButton=frameItem.CloseBeforeButton;
|
|
14749
14753
|
if (frame.YSplitOperator.RightTextConfig) //主图右侧坐标设置
|
|
14750
14754
|
{
|
|
14751
14755
|
if (IFrameSplitOperator.IsNumber(frameItem.RightTextFormat)) //废弃(兼容版本)
|
|
@@ -17073,6 +17077,18 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
17073
17077
|
mainFrame.YSplitOperator.SplitType=item.Value;
|
|
17074
17078
|
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
17075
17079
|
}
|
|
17080
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
17081
|
+
{
|
|
17082
|
+
var backup=mainFrame.HorizontalReserved;
|
|
17083
|
+
mainFrame.HorizontalReserved=item.Value;
|
|
17084
|
+
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
17085
|
+
}
|
|
17086
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
17087
|
+
{
|
|
17088
|
+
var backup=mainFrame.ChartBorder.TitleHeight;
|
|
17089
|
+
mainFrame.ChartBorder.TitleHeight=item.Value;
|
|
17090
|
+
aryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
17091
|
+
}
|
|
17076
17092
|
|
|
17077
17093
|
}
|
|
17078
17094
|
}
|
|
@@ -17108,6 +17124,14 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
17108
17124
|
{
|
|
17109
17125
|
mainFrame.YSplitOperator.SplitType=item.BackupValue;
|
|
17110
17126
|
}
|
|
17127
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
17128
|
+
{
|
|
17129
|
+
mainFrame.HorizontalReserved=item.BackupValue;
|
|
17130
|
+
}
|
|
17131
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
17132
|
+
{
|
|
17133
|
+
mainFrame.ChartBorder.TitleHeight=item.BackupValue;
|
|
17134
|
+
}
|
|
17111
17135
|
}
|
|
17112
17136
|
|
|
17113
17137
|
}
|
|
@@ -26081,6 +26105,19 @@ function OverlayIndexItem()
|
|
|
26081
26105
|
mainFrame.YSplitOperator.IsShowRightText=item.Value;
|
|
26082
26106
|
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26083
26107
|
}
|
|
26108
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
26109
|
+
{
|
|
26110
|
+
var backup=mainFrame.HorizontalReserved;
|
|
26111
|
+
mainFrame.HorizontalReserved=item.Value;
|
|
26112
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26113
|
+
}
|
|
26114
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
26115
|
+
{
|
|
26116
|
+
var backup=mainFrame.ChartBorder.TitleHeight;
|
|
26117
|
+
mainFrame.ChartBorder.TitleHeight=item.Value;
|
|
26118
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26119
|
+
}
|
|
26120
|
+
|
|
26084
26121
|
}
|
|
26085
26122
|
}
|
|
26086
26123
|
|
|
@@ -26107,6 +26144,15 @@ function OverlayIndexItem()
|
|
|
26107
26144
|
{
|
|
26108
26145
|
mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;
|
|
26109
26146
|
}
|
|
26147
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED)
|
|
26148
|
+
{
|
|
26149
|
+
mainFrame.HorizontalReserved=item.BackupValue;
|
|
26150
|
+
}
|
|
26151
|
+
else if (item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT)
|
|
26152
|
+
{
|
|
26153
|
+
mainFrame.ChartBorder.TitleHeight=item.BackupValue;
|
|
26154
|
+
this.AryTemporaryAttribute.push({ Name:item.Name, Value:item.Value, BackupValue:backup });
|
|
26155
|
+
}
|
|
26110
26156
|
}
|
|
26111
26157
|
|
|
26112
26158
|
this.AryTemporaryAttribute=[];
|
|
@@ -93027,6 +93073,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
93027
93073
|
}
|
|
93028
93074
|
}
|
|
93029
93075
|
|
|
93076
|
+
//TODO:准备废弃
|
|
93030
93077
|
this.SetFrameAttribute=function(windowIndex, attr)
|
|
93031
93078
|
{
|
|
93032
93079
|
if (!this.Frame.SubFrame[windowIndex] || !this.Frame.SubFrame[windowIndex].Frame) return;
|
|
@@ -93038,6 +93085,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
93038
93085
|
if (IFrameSplitOperator.IsNumber(attr.TitleHeight)) frame.ChartBorder.TitleHeight=attr.TitleHeight; //指标标题高度
|
|
93039
93086
|
}
|
|
93040
93087
|
|
|
93088
|
+
//TODO:准备废弃
|
|
93041
93089
|
this.ResetFrameAttribute=function(windowIndex)
|
|
93042
93090
|
{
|
|
93043
93091
|
if (!this.Frame.SubFrame[windowIndex] || !this.Frame.SubFrame[windowIndex].Frame) return;
|
|
@@ -125479,7 +125527,7 @@ function JSDraw(errorHandler,symbolData)
|
|
|
125479
125527
|
for(var i=0;i<this.SymbolData.Data.Data.length;++i)
|
|
125480
125528
|
{
|
|
125481
125529
|
var item=this.SymbolData.Data.Data[i];
|
|
125482
|
-
drawData.Data[i]={ High:item.High, Low:item.Low };
|
|
125530
|
+
drawData.Data[i]={ High:item.High, Low:item.Low, Close:item.Close };
|
|
125483
125531
|
}
|
|
125484
125532
|
|
|
125485
125533
|
return drawData;
|
|
@@ -175526,7 +175574,7 @@ function ChartScrollText()
|
|
|
175526
175574
|
|
|
175527
175575
|
|
|
175528
175576
|
|
|
175529
|
-
var HQCHART_VERSION="1.1.
|
|
175577
|
+
var HQCHART_VERSION="1.1.15725";
|
|
175530
175578
|
|
|
175531
175579
|
function PrintHQChartVersion()
|
|
175532
175580
|
{
|