Пример #1
0
 private void editIndicatorMenuItem_Click(object sender, EventArgs e)
 {
     try
     {
         if (activeIndicatorLV.FocusedItem == null)
         {
             return;
         }
         IndicatorCurveInfo info = (IndicatorCurveInfo)activeIndicatorLV.FocusedItem.Tag;
         application.forms.baseIndicatorForm form = GetIndicatorForm(info.meta);
         if (form == null)
         {
             return;
         }
         this.CurrentEditCurveName = info.CurveName;
         form.ShowDialog();
     }
     catch (Exception er)
     {
         this.ShowError(er);
     }
     finally
     {
         this.CurrentEditCurveName = "";
     }
 }
Пример #2
0
        private application.forms.baseIndicatorForm GetIndicatorForm(application.Indicators.Meta meta)
        {
            if (meta == null)
            {
                return(null);
            }
            application.forms.baseIndicatorForm form = null;

            form = (application.forms.baseIndicatorForm) this.indicatorFormCache.Find(meta.ClassType.Name);
            if (form == null || form.IsDisposed)
            {
                form              = application.Indicators.Libs.GetIndicatorForm(meta);
                form.Text         = meta.Name;
                form.onPlotChart += new application.forms.baseIndicatorForm.PlotChart(IndicatorFormHandler);
            }
            //TUAN update list new windows on indicator form
            else
            {
                if (form.GetType().Equals(typeof(application.forms.commonIndicatorForm)))
                {
                    ((application.forms.commonIndicatorForm)(form)).updateFormFromMeta(meta);
                }
            }
            //TUAN
            this.indicatorFormCache.Add(meta.ClassType.Name, form);
            return(form);
        }
Пример #3
0
 /// <summary>
 /// Plot indicator charts. The function displays a form to collect indicator options and then plot the chart.
 /// </summary>
 /// <param name="indicatorTypeName">Indicator name to be drawn</param>
 ///
 public void PlotIndicator(string indicatorName)
 {
     application.forms.baseIndicatorForm form = GetIndicatorForm(indicatorName);
     if (form == null)
     {
         return;
     }
     form.ShowDialog();
 }
Пример #4
0
 //IndicatorFormHandler : Draw / Remove indicator's curves
 private void IndicatorFormHandler(application.forms.baseIndicatorForm indicatorForm, bool removeChart)
 {
     if (removeChart)
     {
         string curveName = constCurveNamePrefixIndicator + indicatorForm.FormMeta.ClassType.Name + "-" +
                            indicatorForm.FormMeta.ParameterString;
         RemoveCurveIndicator(curveName, true);
     }
     else
     {
         DrawCurveIndicator(indicatorForm.FormMeta);
     }
     UpdateChart();
 }
Пример #5
0
 private application.forms.baseIndicatorForm FindIndicatorForm(string typeName)
 {
     application.Indicators.Meta meta = application.Indicators.Libs.FindMetaByName(typeName);
     if (meta == null)
     {
         return(null);
     }
     application.forms.baseIndicatorForm form = (application.forms.baseIndicatorForm) this.indicatorFormCache.Find(meta.ClassType.Name);
     if (form == null || form.IsDisposed)
     {
         return(null);
     }
     return(form);
 }
Пример #6
0
        private application.forms.baseIndicatorForm GetIndicatorForm(application.Indicators.Meta meta)
        {
            if (meta == null)
            {
                return(null);
            }
            application.forms.baseIndicatorForm form = null;

            form = (application.forms.baseIndicatorForm) this.indicatorFormCache.Find(meta.ClassType.Name);
            if (form == null || form.IsDisposed)
            {
                form              = application.Indicators.Libs.GetIndicatorForm(meta);
                form.Text         = meta.Name;
                form.onPlotChart += new application.forms.baseIndicatorForm.PlotChart(IndicatorFormHandler);
            }
            this.indicatorFormCache.Add(meta.ClassType.Name, form);
            return(form);
        }