protected virtual void OnStrategyChanged()
        {
            InitializeTickersDataMenu();

            this.chartDataControl1.AnnotationDoubleClick    += OnChartAnnotationDoubleClick;
            this.chartDataControl1.ShowHistogrammItemClick  += OnShowHistogrammItemClick;
            this.strategyHistoryItemBindingSource.DataSource = Strategy.History;
            this.tradingResultBindingSource.DataSource       = Strategy.TradeHistory;
            Text = Strategy.Name + " - Data";
            StrategyDataVisualiser visualizer = new StrategyDataVisualiser(Strategy);

            visualizer.GetControl += OnVisulizerGetControl;
            visualizer.Visualize(this.gcData);
            visualizer.Visualize(this.chartDataControl1.Chart);
            this.chartDataControl1.Visual = Strategy;
            visualizer.GetControl        -= OnVisulizerGetControl;

            StrategyDataVisualiser visualizer2 = new StrategyDataVisualiser(new OpenPositionVisualDataProvider(Strategy.OrdersHistory));

            visualizer2.GetControl += OnVisulizerGetControl;
            visualizer2.Visualize(this.tcPosition);
            visualizer2.GetControl += OnVisulizerGetControl;

            if (File.Exists(ChartSettingsFileName))
            {
                DetachePoints();
                this.chartDataControl1.Chart.LoadFromFile(ChartSettingsFileName);
                AttachPoints();
            }
        }
        private ChartControl ShowChartForm(IStrategyDataItemInfoOwner visual, StrategyDataVisualiser visualiser, bool showInSeparateForm)
        {
            Crypto.UI.Forms.ChartDataControl control = new Crypto.UI.Forms.ChartDataControl();
            control.Dock   = DockStyle.Fill;
            control.Visual = visual;
            control.AnnotationDoubleClick += OnChartAnnotationDoubleClick;

            visualiser.GetControl -= OnVisulizerGetControl;
            visualiser.GetControl += OnVisulizerGetControl;
            visualiser.Visualize(control.Chart);

            if (showInSeparateForm)
            {
                XtraForm form = new XtraForm();
                form.Text = visual.Name;
                form.Controls.Add(control);
                form.Show();
                return(control.Chart);
            }
            DockPanel panel = new DockPanel();

            panel.DockedAsTabbedDocument = true;
            panel.ID   = Guid.NewGuid();
            panel.Text = visual.Name + " - Data Chart";
            panel.Controls.Add(control);
            //panel.FloatForm.Size = new Size((int)(Size.Width * 0.8), (int)(Size.Height * 0.8));
            this.dockManager1.RootPanels.AddRange(new DockPanel[] { panel });
            panel.Show();
            return(control.Chart);
        }
        private void OnVisulizerGetControl(object sender, DataControlProvideEventArgs e)
        {
            StrategyDataVisualiser visualizer = new StrategyDataVisualiser(e.DataItem)
            {
                SkipSeparateItems = false
            };

            ShowChartForm(e.DataItem, visualizer, true);
        }
        protected void ShowTableForm(IStrategyDataItemInfoOwner visual)
        {
            XtraForm        form    = new XtraForm();
            GridDataControl control = new GridDataControl();

            control.Grid.DoubleClick += OnGridControlDoubleClick;
            control.Dock              = DockStyle.Fill;
            form.Controls.Add(control);
            StrategyDataVisualiser visualiser = new StrategyDataVisualiser(visual);

            visualiser.Visualize(control.Grid);

            form.Text = visual.Name + " - Data Table";
            //form.MdiParent = this;
            //form.WindowState = FormWindowState.Maximized;
            form.Show();
        }
        protected virtual void OnVisualChanged()
        {
            this.chartDataControl1.AnnotationDoubleClick   += OnChartAnnotationDoubleClick;
            this.chartDataControl1.ShowHistogrammItemClick += OnShowHistogrammItemClick;
            Text = Visual.Name + " - Data";
            StrategyDataVisualiser visualizer = new StrategyDataVisualiser(Visual);

            visualizer.GetControl += OnVisulizerGetControl;
            visualizer.Visualize(this.gcData);
            visualizer.Visualize(this.chartDataControl1.Chart);
            this.chartDataControl1.Visual = Visual;
            visualizer.GetControl        -= OnVisulizerGetControl;

            this.dockManager1.ForceInitialize();

            if (File.Exists(ChartSettingsFileName))
            {
                DetachePoints();
                this.chartDataControl1.Chart.LoadFromFile(ChartSettingsFileName);
                AttachPoints();
            }
        }