hqchart 1.1.14081 → 1.1.14093

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.
@@ -53,9 +53,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
53
53
  this.CacheCanvasElement=null;
54
54
  if (bCacheCanvas) this.CacheCanvasElement=document.createElement("canvas");
55
55
 
56
- //改参数div
57
- this.ModifyIndexDialog=new ModifyIndexDialog(divElement);
58
-
59
56
  //额外的画布
60
57
  this.MapExtraCanvasElement=new Map(); //key=画布名字, value={ Element:, Canvas:}
61
58
 
@@ -288,9 +285,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
288
285
  if (option.EventCallback) this.SetEventCallback(chart, option.EventCallback);
289
286
  if (option.NetworkFilter) chart.NetworkFilter=option.NetworkFilter;
290
287
 
291
- //创建改参数div
292
- chart.ModifyIndexDialog=this.ModifyIndexDialog;
293
-
294
288
  var pixelRatio=GetDevicePixelRatio();
295
289
 
296
290
  //右键菜单
@@ -740,9 +734,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
740
734
  {
741
735
  var chart=new CustomKLineChartContainer(this.CanvasElement);
742
736
 
743
- //创建改参数div
744
- chart.ModifyIndexDialog=this.ModifyIndexDialog;
745
-
746
737
  //右键菜单
747
738
  if (IFrameSplitOperator.IsBool(option.IsShowRightMenu)) chart.IsShowRightMenu=option.IsShowRightMenu;
748
739
 
@@ -843,8 +834,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
843
834
  if (option.EventCallback) this.SetEventCallback(chart, option.EventCallback);
844
835
  if (option.NetworkFilter) chart.NetworkFilter=option.NetworkFilter;
845
836
 
846
- chart.ModifyIndexDialog=this.ModifyIndexDialog;
847
-
848
837
  var pixelRatio=GetDevicePixelRatio();
849
838
 
850
839
  var windowsCount=2;
@@ -1423,9 +1412,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1423
1412
  if (option.NetworkFilter) chart.NetworkFilter=option.NetworkFilter;
1424
1413
  if (option.IsApiPeriod==true) chart.IsApiPeriod=option.IsApiPeriod;
1425
1414
 
1426
- //创建改参数div
1427
- chart.ModifyIndexDialog=this.ModifyIndexDialog;
1428
-
1429
1415
  if (option.ScriptError) chart.ScriptErrorCallback=option.ScriptError;
1430
1416
 
1431
1417
  if (option.KLine) //k线图的属性设置
@@ -1723,6 +1709,9 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1723
1709
  if (option.SelectRectDialog && option.SelectRectDialog.Enable)
1724
1710
  chart.InitalSelectRectDialog(option.SelectRectDialog);
1725
1711
 
1712
+ if (option.ModifyIndexParamDialog && option.ModifyIndexParamDialog.Enable)
1713
+ chart.InitalModifyIndexParamDialog(option.ModifyIndexParamDialog);
1714
+
1726
1715
  if (option.SearchIndexDialog && option.SearchIndexDialog.Enable)
1727
1716
  chart.InitalSearchIndexDialog(option.SearchIndexDialog);
1728
1717
 
@@ -2821,6 +2810,9 @@ var JSCHART_MENU_ID=
2821
2810
 
2822
2811
  CMD_DIALOG_TOOLTIP_ATTRIBUTE:65, //修改K线信息框属性 Ary:[{ Enable:, Style:}, ]
2823
2812
  CMD_KLINE_TOOLTIP_ATTRIBUTE:66, //修改K线提示框属性 Ary:[{ Enable:true/false, EnableKeyDown:true/false}]
2813
+
2814
+ CMD_MODIFY_INDEX_PARAM:67, //指标删除修改 [windowIndex, ]
2815
+ CMD_MODIFY_OVERLAY_INDEX_PARAM:68, //叠加指标修改 [windowIndex, ID ]
2824
2816
  }
2825
2817
 
2826
2818
 
@@ -3049,6 +3041,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
3049
3041
  this.DialogSelectRect; //区间统计
3050
3042
  this.FloatTooltip; //浮动tooltip信息
3051
3043
  this.DialogSearchIndex; //指标搜索
3044
+ this.DialogModifyIndexParam; //指标参数修改
3052
3045
 
3053
3046
 
3054
3047
  this.ClearStockCache=function()
@@ -3118,6 +3111,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
3118
3111
  this.DialogSearchIndex.Create();
3119
3112
  }
3120
3113
 
3114
+ this.InitalModifyIndexParamDialog=function(option)
3115
+ {
3116
+ if (this.DialogModifyIndexParam) return;
3117
+
3118
+ this.DialogModifyIndexParam=new JSDialogModifyIndexParam();
3119
+ this.DialogModifyIndexParam.Inital(this, option);
3120
+ this.DialogModifyIndexParam.Create();
3121
+ }
3122
+
3121
3123
  this.ShowChangeIndexDialog=function(data)
3122
3124
  {
3123
3125
  if (!data) return;
@@ -3137,6 +3139,46 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
3137
3139
  this.DialogSearchIndex.SetOpData(data);
3138
3140
  this.DialogSearchIndex.Show();
3139
3141
  }
3142
+
3143
+ //添加指标窗口
3144
+ this.ShowAddIndexWindowDialog=function(option)
3145
+ {
3146
+ if (!this.DialogSearchIndex) return;
3147
+ var data=option;
3148
+ if (!data) data={ };
3149
+
3150
+ data.OpType=3;
3151
+
3152
+ data.Title=`增加指标窗口`;
3153
+ this.DialogSearchIndex.SetOpData(data);
3154
+ this.DialogSearchIndex.Show();
3155
+ }
3156
+
3157
+ this.ShowModifyIndexParamDialog=function(data)
3158
+ {
3159
+ if (!this.DialogModifyIndexParam) return;
3160
+
3161
+ if (data.Type==1)
3162
+ {
3163
+ var indexScript=this.WindowIndex[data.WindowIndex];
3164
+ if (!indexScript) return;
3165
+
3166
+ data.IndexScript=indexScript;
3167
+ data.Title=`[${indexScript.Name}]参数修改 窗口[${data.WindowIndex+1}]`;
3168
+ }
3169
+ else if (data.Type==2)
3170
+ {
3171
+ var overlayIndex=this.GetOverlayIndexByIdentify(data.Identify);
3172
+ if (!overlayIndex || !overlayIndex.OverlayItem.Script) return;
3173
+ var indexScript=overlayIndex.OverlayItem.Script;
3174
+
3175
+ data.IndexScript=indexScript;
3176
+ data.Title=`[${indexScript.Name}]参数修改 叠加窗口[${data.WindowIndex+1}]`;
3177
+ }
3178
+
3179
+ this.DialogModifyIndexParam.SetIndexData(data);
3180
+ this.DialogModifyIndexParam.Show();
3181
+ }
3140
3182
 
3141
3183
 
3142
3184
  this.DrawSelectRectDialog=function()
@@ -10012,6 +10054,17 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10012
10054
  if (IFrameSplitOperator.IsBool(option.Enable)) this.KLineTooltipConfig.Enable=option.Enable;
10013
10055
  if (IFrameSplitOperator.IsBool(option.EnableKeyDown)) this.KLineTooltipConfig.EnableKeyDown=option.EnableKeyDown;
10014
10056
  break;
10057
+ case JSCHART_MENU_ID.CMD_MODIFY_INDEX_PARAM:
10058
+ if (param==null) return false;
10059
+ var sendData={ e:null, WindowIndex:param, Type:1 }
10060
+ this.ShowModifyIndexParamDialog(sendData);
10061
+ break;
10062
+ case JSCHART_MENU_ID.CMD_MODIFY_OVERLAY_INDEX_PARAM:
10063
+ if (param==null) return false;
10064
+ if (!aryArgs[1]) return false;
10065
+ var sendData={ e:null, WindowIndex:param, Type:2, Identify:aryArgs[1] };
10066
+ this.ShowModifyIndexParamDialog(sendData);
10067
+ break;
10015
10068
  }
10016
10069
  }
10017
10070
 
@@ -10025,6 +10078,12 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10025
10078
  return data;
10026
10079
  }
10027
10080
 
10081
+ this.GetModifyIndexMenuData=function(windowIndex)
10082
+ {
10083
+ var data= { Name:"参数修改", Data:{ ID: JSCHART_MENU_ID.CMD_MODIFY_INDEX_PARAM, Args:[windowIndex] } };
10084
+ return data;
10085
+ }
10086
+
10028
10087
  this.GetShowOverlayIndexMenuData=function(indexGuid, showType)
10029
10088
  {
10030
10089
  var overlay=this.GetOverlayIndexByIdentify(indexGuid);
@@ -10036,6 +10095,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10036
10095
  return data;
10037
10096
  }
10038
10097
 
10098
+ this.GetModifyOverlayIndexMenuData=function(indexGuid)
10099
+ {
10100
+ var overlay=this.GetOverlayIndexByIdentify(indexGuid);
10101
+ if (!overlay) return null;
10102
+
10103
+ var data= { Name:"参数修改", Data:{ ID: JSCHART_MENU_ID.CMD_MODIFY_OVERLAY_INDEX_PARAM, Args:[overlay.WindowIndex,indexGuid] } };
10104
+ return data;
10105
+ }
10106
+
10039
10107
  this.GetShowOverlayIndexYAxisMenuData=function(indexGuid, showType)
10040
10108
  {
10041
10109
  var overlay=this.GetOverlayIndexByIdentify(indexGuid);
@@ -13912,7 +13980,6 @@ function MinuteFrame()
13912
13980
  this.ExportData=g_JSChartResource.MinuteToolbar.ExportData; //是否显示'导出数据'菜单
13913
13981
  this.OverlayIndex=g_JSChartResource.MinuteToolbar.OverlayIndex; //是否显示叠加指标
13914
13982
 
13915
- this.ModifyIndexEvent; //改参数 点击事件
13916
13983
  this.ToolbarRect=null; //保存工具条的位置
13917
13984
  this.IsShowPositionTitle=false; //是否显示持仓标题
13918
13985
 
@@ -16341,7 +16408,6 @@ function KLineFrame()
16341
16408
 
16342
16409
  this.SelBorderColor=g_JSChartResource.SelFrameBorderColor;
16343
16410
 
16344
- this.ModifyIndexEvent; //改参数 点击事件
16345
16411
  this.ToolbarRect=null; //保存工具条的位置
16346
16412
  this.ReDrawToolbar=false;
16347
16413
 
@@ -34061,6 +34127,13 @@ function ChartStickLine()
34061
34127
  return (this.BarType==1 || this.BarType==-1);
34062
34128
  }
34063
34129
 
34130
+ this.CalculateBarHeight=function(y,y2)
34131
+ {
34132
+ var barHeight=Math.abs(y-y2);
34133
+ if (barHeight<=0) barHeight=1;
34134
+ return barHeight;
34135
+ }
34136
+
34064
34137
  this.Draw=function()
34065
34138
  {
34066
34139
  if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
@@ -34200,7 +34273,7 @@ function ChartStickLine()
34200
34273
  }
34201
34274
  else
34202
34275
  {
34203
- this.Canvas.fillRect(ToFixedRect(left),ToFixedRect(Math.min(y,y2)),ToFixedRect(width),ToFixedRect(Math.abs(y-y2)));
34276
+ this.Canvas.fillRect(ToFixedRect(left),ToFixedRect(Math.min(y,y2)),ToFixedRect(width),ToFixedRect(this.CalculateBarHeight(y,y2)));
34204
34277
  }
34205
34278
  }
34206
34279
  }
@@ -34227,9 +34300,14 @@ function ChartStickLine()
34227
34300
  else
34228
34301
  {
34229
34302
  if (isHScreen)
34303
+ {
34230
34304
  this.Canvas.fillRect(ToFixedRect(Math.min(y,y2)),ToFixedRect(xOffset),ToFixedRect(Math.abs(y-y2)),ToFixedRect(dataWidth));
34305
+ }
34231
34306
  else
34232
- this.Canvas.fillRect(ToFixedRect(xOffset),ToFixedRect(Math.min(y,y2)),ToFixedRect(dataWidth),ToFixedRect(Math.abs(y-y2)));
34307
+ {
34308
+ this.Canvas.fillRect(ToFixedRect(xOffset),ToFixedRect(Math.min(y,y2)),ToFixedRect(dataWidth),ToFixedRect(this.CalculateBarHeight(y,y2)));
34309
+ }
34310
+
34233
34311
  }
34234
34312
  }
34235
34313
  else
@@ -34245,8 +34323,9 @@ function ChartStickLine()
34245
34323
  {
34246
34324
  var xFix=parseInt(x.toString())+0.5;
34247
34325
  this.Canvas.beginPath();
34248
- this.Canvas.moveTo(xFix,y);
34249
- this.Canvas.lineTo(xFix,y2);
34326
+ this.Canvas.moveTo(xFix,y);
34327
+ if (Math.abs(y-y2)>0) this.Canvas.lineTo(xFix,y2);
34328
+ else this.Canvas.lineTo(xFix,y+1); //太窄了,就画一个像素的宽度
34250
34329
  this.Canvas.stroke();
34251
34330
  }
34252
34331
  }
@@ -69315,6 +69394,17 @@ function JSChartResource()
69315
69394
  InputTextColor:"rgb(0,0,0)"
69316
69395
  };
69317
69396
 
69397
+ this.DialogModifyIndexParam=
69398
+ {
69399
+ BGColor:'rgb(250,250,250)', //背景色
69400
+ BorderColor:'rgb(20,20,20)', //边框颜色
69401
+ TitleColor:'rgb(250,250,250)', //标题颜色
69402
+ TitleBGColor:"rgb(200, 66, 69)", //标题背景颜色
69403
+
69404
+ ParamNameColor:"rgb(0,0,0)", //数值名称
69405
+ InputTextColor:"rgb(0,0,0)"
69406
+ };
69407
+
69318
69408
  //弹幕
69319
69409
  this.Barrage= {
69320
69410
  Font:16*GetDevicePixelRatio() +'px 微软雅黑', //字体
@@ -73477,8 +73567,6 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73477
73567
  frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
73478
73568
  frame.GlobalOption=this.GlobalOption;
73479
73569
 
73480
- if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
73481
-
73482
73570
  frame.HorizontalMax=20;
73483
73571
  frame.HorizontalMin=10;
73484
73572
 
@@ -73561,8 +73649,6 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
73561
73649
  frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
73562
73650
  frame.GlobalOption=this.GlobalOption;
73563
73651
 
73564
- if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
73565
-
73566
73652
  frame.HorizontalMax=20;
73567
73653
  frame.HorizontalMin=10;
73568
73654
  frame.YSplitOperator=new FrameSplitY();
@@ -79547,9 +79633,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79547
79633
  {
79548
79634
  var id=button.IndexID;
79549
79635
  var frame=button.Frame;
79550
- e.data={ Chart:this, Identify:id, IsOverlay:true };
79551
- if (frame.ModifyIndexEvent)
79552
- frame.ModifyIndexEvent(e);
79636
+ var sendData={ e:e, WindowIndex:frame.Identify, Type:2, Identify:id };
79637
+ this.ShowModifyIndexParamDialog(sendData);
79553
79638
  }
79554
79639
  else if (button.ID==JSCHART_BUTTON_ID.CLOSE_INDEX_WINDOW)
79555
79640
  {
@@ -79570,9 +79655,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79570
79655
  else if (button.ID==JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM)
79571
79656
  {
79572
79657
  var frame=button.Frame;
79573
- e.data={ Chart:this, Identify:frame.Identify, IsOverlay:false };
79574
- if (frame.ModifyIndexEvent)
79575
- frame.ModifyIndexEvent(e);
79658
+ var sendData={ e:e, WindowIndex:frame.Identify, Type:1 }
79659
+ this.ShowModifyIndexParamDialog(sendData);
79576
79660
  }
79577
79661
  else if (button.ID==JSCHART_BUTTON_ID.OVERLAY_INDEX)
79578
79662
  {
@@ -80384,9 +80468,9 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
80384
80468
  {
80385
80469
  var id=button.IndexID;
80386
80470
  var frame=button.Frame;
80387
- e.data={ Chart:this, Identify:id, IsOverlay:true };
80388
- if (frame.ModifyIndexEvent)
80389
- frame.ModifyIndexEvent(e);
80471
+ var sendData={ e:e, WindowIndex:frame.Identify, Type:2, Identify:id };
80472
+ this.ShowModifyIndexParamDialog(sendData);
80473
+
80390
80474
  }
80391
80475
  else if (button.ID==JSCHART_BUTTON_ID.CLOSE_INDEX_WINDOW)
80392
80476
  {
@@ -80402,9 +80486,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
80402
80486
  else if (button.ID==JSCHART_BUTTON_ID.MODIFY_INDEX_PARAM)
80403
80487
  {
80404
80488
  var frame=button.Frame;
80405
- e.data={ Chart:this, Identify:frame.Identify, IsOverlay:false };
80406
- if (frame.ModifyIndexEvent)
80407
- frame.ModifyIndexEvent(e);
80489
+ var sendData={ e:e, WindowIndex:frame.Identify, Type:1 }
80490
+ this.ShowModifyIndexParamDialog(sendData);
80408
80491
  }
80409
80492
  else if (button.ID==JSCHART_BUTTON_ID.OVERLAY_INDEX)
80410
80493
  {
@@ -82171,7 +82254,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
82171
82254
 
82172
82255
  if (i>=2)
82173
82256
  {
82174
- if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
82257
+
82175
82258
  }
82176
82259
 
82177
82260
  var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];
@@ -82258,12 +82341,6 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
82258
82341
  frame.GlobalOption=this.GlobalOption;
82259
82342
  frame.HQChart=this;
82260
82343
  frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
82261
-
82262
-
82263
- if (id>=2)
82264
- {
82265
- if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
82266
- }
82267
82344
 
82268
82345
  var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];
82269
82346
  frame.HorizontalMax=DEFAULT_HORIZONTAL[0];
@@ -87836,8 +87913,6 @@ function KLineChartHScreenContainer(uielement)
87836
87913
  frame.Identify=i; //窗口序号
87837
87914
  frame.RightSpaceCount=this.RightSpaceCount; //右边
87838
87915
 
87839
- if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
87840
-
87841
87916
  frame.HorizontalMax=20;
87842
87917
  frame.HorizontalMin=10;
87843
87918
 
@@ -90442,230 +90517,6 @@ function IDivDialog(divElement)
90442
90517
  }
90443
90518
  }
90444
90519
 
90445
-
90446
- //修改指标
90447
- function ModifyIndexDialog(divElement)
90448
- {
90449
- this.newMethod=IDivDialog; //派生
90450
- this.newMethod(divElement);
90451
- delete this.newMethod;
90452
-
90453
- this.Title={ ID:Guid() }; //标题
90454
- this.ParamList={ID:Guid() }; //参数列表 class='parameter-content'
90455
- this.ParamData=[]; //{ ID:参数ID, Value:参数值}
90456
- this.Identify;
90457
- this.HQChart;
90458
- this.IsOverlay=false; //是否是叠加指标
90459
-
90460
- this.IndexScript;
90461
-
90462
- //创建
90463
- this.Create=function()
90464
- {
90465
- this.ID=Guid();
90466
-
90467
- var div=document.createElement('div');
90468
- div.className='jchart-modifyindex-box';
90469
- div.id=this.ID;
90470
- div.innerHTML=
90471
- "<div class='parameter'>\
90472
- <div class='parameter-header'>\
90473
- <span></span>\
90474
- <strong id='close' class='icon iconfont icon-close'></strong>\
90475
- </div>\
90476
- <div class='parameter-content'><input/>MA</div>\
90477
- <div class='parameter-footer'>\
90478
- <button class='submit' >确定</button>\
90479
- <button class='cancel' >取消</button>\
90480
- </div>\
90481
- </div>";
90482
-
90483
- this.DivElement.appendChild(div);
90484
-
90485
- //确定按钮
90486
- $("#"+this.ID+" .submit").click(
90487
- {
90488
- divBox:this,
90489
- },
90490
- function(event)
90491
- {
90492
- event.data.divBox.Hide();
90493
- });
90494
-
90495
- //给一个id 后面查找方便
90496
- var titleElement=div.getElementsByTagName('span')[0];
90497
- titleElement.id=this.Title.ID;
90498
-
90499
- var paramListElement=div.getElementsByClassName('parameter-content')[0];
90500
- paramListElement.id=this.ParamList.ID;
90501
- }
90502
-
90503
- //设置标题
90504
- this.SetTitle=function(title)
90505
- {
90506
- $("#"+this.Title.ID).html(title);
90507
- }
90508
-
90509
- //清空参数
90510
- this.ClearParamList=function()
90511
- {
90512
- $("#"+this.ParamList.ID).empty();
90513
- this.ParamData=[];
90514
- }
90515
-
90516
- this.BindParam=function()
90517
- {
90518
- for(var i=0; i<this.IndexScript.Arguments.length; ++i)
90519
- {
90520
- var item=this.IndexScript.Arguments[i];
90521
- if (item.Name==null || isNaN(item.Value)) break;
90522
-
90523
- var guid=Guid();
90524
- var param = '<input class="row-line" id="'+guid+'" value="'+item.Value+'" type="number" step="1"/>'+ item.Name +'<br>';
90525
- $("#"+this.ParamList.ID).append(param);
90526
-
90527
- this.ParamData.push({ID:guid,Value:item.Value});
90528
- }
90529
-
90530
- //绑定参数修改事件
90531
- var self=this;
90532
- for(var i=0; i<this.ParamData.length; ++i)
90533
- {
90534
- var item=this.ParamData[i];
90535
- $("#"+item.ID).mouseup(
90536
- {
90537
- ParamIndex:i //参数序号
90538
- },
90539
- function(event)
90540
- {
90541
- var value = parseInt($(this).val()); //获取当前操作的input属性值,转化为整型
90542
- if (!IFrameSplitOperator.IsNumber(value))
90543
- {
90544
- alert("参数不能为空");
90545
- return;
90546
- }
90547
- var chart=self.HQChart;
90548
- var identify=self.Identify;
90549
- var paramIndex=event.data.ParamIndex;
90550
- var script=self.IndexScript;
90551
- var isOverlay=self.IsOverlay;
90552
-
90553
- script.Arguments[paramIndex].Value = value; //为参数属性重新赋值
90554
- if (isOverlay) chart.UpdateOverlayIndex(identify);
90555
- else chart.UpdateWindowIndex(identify); //调用更新窗口指标函数,参数用来定位窗口
90556
- }
90557
- )
90558
-
90559
- $("#"+item.ID).keyup(
90560
- {
90561
- ParamIndex:i //参数序号
90562
- },
90563
- function(event)
90564
- {
90565
- var value = parseInt($(this).val()); //获取当前操作的input属性值,转化为整型
90566
- if (!IFrameSplitOperator.IsNumber(value))
90567
- {
90568
- alert("参数不能为空");
90569
- return;
90570
- }
90571
- var chart=self.HQChart;
90572
- var identify=self.Identify;
90573
- var paramIndex=event.data.ParamIndex;
90574
- var script=self.IndexScript;
90575
- var isOverlay=self.IsOverlay;
90576
-
90577
- script.Arguments[paramIndex].Value = value; //为参数属性重新赋值
90578
- if (isOverlay) chart.UpdateOverlayIndex(identify);
90579
- else chart.UpdateWindowIndex(identify); //调用更新窗口指标函数,参数用来定位窗口
90580
- }
90581
- )
90582
- }
90583
- }
90584
-
90585
- //绑定取消事件
90586
- this.BindCancel=function()
90587
- {
90588
- //取消按钮事件
90589
- var self=this;
90590
- var test=$("#"+this.ID+" .cancel");
90591
- $("#"+this.ID+" .cancel").unbind("click").click(
90592
- function(event)
90593
- {
90594
- var chart=self.HQChart;
90595
- var identify=self.Identify;
90596
- self.RestoreParam();
90597
- var isOverlay=self.IsOverlay;
90598
- if (isOverlay) chart.UpdateOverlayIndex(identify);
90599
- else chart.UpdateWindowIndex(identify);
90600
- self.IndexScript=null;
90601
- self.Hide();
90602
- }
90603
- );
90604
-
90605
- //关闭和取消是一样的
90606
- $("#"+this.ID+" #close").unbind("click").click(
90607
- function(event)
90608
- {
90609
- var chart=self.HQChart;
90610
- var identify=self.Identify;
90611
- var isOverlay=self.IsOverlay;
90612
- self.RestoreParam();
90613
- if (isOverlay) chart.UpdateOverlayIndex(identify);
90614
- else chart.UpdateWindowIndex(identify);
90615
- self.IndexScript=null;
90616
- self.Hide();
90617
- }
90618
- );
90619
- }
90620
-
90621
- //还原参数
90622
- this.RestoreParam=function()
90623
- {
90624
- if (!this.IndexScript) return;
90625
-
90626
- for(var i=0; i<this.ParamData.length; ++i)
90627
- {
90628
- var item=this.ParamData[i];
90629
- this.IndexScript.Arguments[i].Value=item.Value;
90630
- }
90631
- }
90632
-
90633
- //显示
90634
- this.DoModal=function(event)
90635
- {
90636
- var chart=event.data.Chart;
90637
- var identify=event.data.Identify;
90638
- var dialog=chart.ModifyIndexDialog;
90639
- var isOverlay=event.data.IsOverlay===true;
90640
-
90641
- if(!dialog) return;
90642
-
90643
- if (dialog.ID==null) dialog.Create(); //第1次 需要创建div
90644
- dialog.Identify=identify;
90645
- dialog.HQChart=chart;
90646
- dialog.IsOverlay=isOverlay
90647
-
90648
- if (isOverlay)
90649
- {
90650
- var overlayIndex=chart.GetOverlayIndexByIdentify(identify);
90651
- if (!overlayIndex || !overlayIndex.OverlayItem.Script) return;
90652
- dialog.IndexScript=overlayIndex.OverlayItem.Script;
90653
- dialog.SetTitle(dialog.IndexScript.Name+" 叠加指标参数设置"); //设置标题
90654
- }
90655
- else
90656
- {
90657
- dialog.IndexScript=chart.WindowIndex[identify];
90658
- dialog.SetTitle(dialog.IndexScript.Name+" 指标参数设置"); //设置标题
90659
- }
90660
-
90661
- dialog.ClearParamList(); //清空参数
90662
- dialog.BindParam(chart,identify); //绑定参数
90663
- dialog.BindCancel(); //绑定取消和关闭事件
90664
-
90665
- dialog.Show();//显示, 在css里调整居中
90666
- }
90667
- }
90668
-
90669
90520
  //等待动画窗口
90670
90521
  function WaitDialog(divElement)
90671
90522
  {