Ejemplo n.º 1
0
        private void OnClick(ButtonClickEventArgs obj)
        {
            var thread = new Thread(() =>
            {
                var chartObjectModels = _chart.GetObjectModels();

                if (chartObjectModels.Length == 0)
                {
                    MessageBox.Show("There is no pattern object on your chart to save", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);

                    return;
                }

                var saveFileDialog = new SaveFileDialog
                {
                    Title            = "Save Chart Patters",
                    Filter           = "pt Files (*.pt)|*.pt",
                    RestoreDirectory = true
                };

                if (saveFileDialog.ShowDialog() != DialogResult.OK)
                {
                    return;
                }

                ChartObjectsSerializer.Serialize(chartObjectModels, saveFileDialog.FileName);
            });

            thread.SetApartmentState(ApartmentState.STA);

            thread.Start();

            thread.Join();
        }
Ejemplo n.º 2
0
        private void OnClick(ButtonClickEventArgs obj)
        {
            var thread = new Thread(() =>
            {
                var openFileDialog = new OpenFileDialog
                {
                    Title            = "Load Chart Patters",
                    Filter           = "pt Files (*.pt)|*.pt",
                    RestoreDirectory = true
                };

                if (openFileDialog.ShowDialog() != DialogResult.OK)
                {
                    return;
                }

                var chartObjectModels = _chart.GetObjectModels();

                var models = ChartObjectsSerializer.Deserialize(openFileDialog.FileName);

                if (models.Length == 0)
                {
                    MessageBox.Show("There is no pattern object inside your selected file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);

                    return;
                }

                _chart.DrawModels(models);
            });

            thread.SetApartmentState(ApartmentState.STA);

            thread.Start();

            thread.Join();
        }