Example #1
0
        private void Open()
        {
            if (!SaveIfDirty())
            {
                return;
            }

            var dialog = new OpenFileDialog()
            {
                Filter = Filter
            };

            if (dialog.ShowDialog() == true)
            {
                _path = dialog.FileName;

                //Load up the project
                var projectModel = ProjectFactory.LoadProject(_path);

                //Get the slave (we're only going to grab the first one
                var slaveModel = projectModel?.Slaves?.FirstOrDefault() ?? new SlaveModel();

                //Create the view model
                Slave = new SlaveViewModel(_modbusAdapters, slaveModel, _dirty);

                //We're clean people.
                _dirty.MarkClean();
            }

            RaisePropertyChanged(() => Title);
        }