コード例 #1
0
        ISimulatorNode CreateOutstation(ISimulatorNodeCallbacks callbacks, IOutstationModule module)
        {
            using (var dialog = new Components.OutstationDialog(config, module))
            {
                if (dialog.ShowDialog() == DialogResult.OK)
                {
                    var outstationConfig = dialog.Configuration;
                    var alias            = dialog.SelectedAlias;
                    var factory          = module.CreateFactory();

                    var outstation = channel.AddOutstation(alias, factory.CommandHandler, factory.Application, outstationConfig);

                    if (outstation == null)
                    {
                        return(null);
                    }
                    else
                    {
                        var instance = factory.CreateInstance(outstation, alias, outstationConfig);
                        outstation.Enable();

                        if (instance.ShowFormOnCreation)
                        {
                            instance.ShowForm();
                        }

                        return(new OutstationNode(outstation, instance, callbacks));
                    }
                }
                else
                {
                    return(null);
                }
            }
        }
コード例 #2
0
        public OutstationDialog(IDNP3Config config, IOutstationModule module)
        {
            InitializeComponent();

            this.config = config;
            this.initialConfig = module.DefaultConfig;
            this.allowTemplateEdit = module.AllowTemplateEditing;
            this.textBoxID.Text = module.DefaultLogName;

            this.linkConfigControl.Configuration = initialConfig.link;

            if (allowTemplateEdit)
            {
                comboBoxTemplate.DataSource = config.Templates.Select(kv => kv.Key).ToList();
            }
            else
            {
                groupBoxDatabase.Enabled = false;
            }
        }
コード例 #3
0
ファイル: OutstationDialog.cs プロジェクト: bkearns/dnp3
        public OutstationDialog(IDNP3Config config, IOutstationModule module)
        {
            InitializeComponent();

            this.config            = config;
            this.initialConfig     = module.DefaultConfig;
            this.allowTemplateEdit = module.AllowTemplateEditing;
            this.textBoxID.Text    = module.DefaultLogName;

            this.linkConfigControl.Configuration = initialConfig.link;

            if (allowTemplateEdit)
            {
                comboBoxTemplate.DataSource = config.Templates.Select(kv => kv.Key).ToList();
            }
            else
            {
                groupBoxDatabase.Enabled = false;
            }
        }
コード例 #4
0
 void SelectModule()
 {
     this.selectedModule   = (IOutstationModule)this.comboBoxModules.SelectedItem;
     this.textBoxDesc.Text = this.selectedModule.Description;
 }
コード例 #5
0
        ISimulatorNode CreateOutstation(ISimulatorNodeCallbacks callbacks, IOutstationModule module)
        {
            using (var dialog = new Components.OutstationDialog(config, module))
            {
                if (dialog.ShowDialog() == DialogResult.OK)
                {
                    var outstationConfig = dialog.Configuration;
                    var alias = dialog.SelectedAlias;
                    var factory = module.CreateFactory();

                    var outstation = channel.AddOutstation(alias, factory.CommandHandler, factory.Application, outstationConfig);

                    if (outstation == null)
                    {
                        return null;
                    }
                    else
                    {
                        var instance = factory.CreateInstance(outstation, alias, outstationConfig);
                        outstation.Enable();

                        if (instance.ShowFormOnCreation)
                        {
                            instance.ShowForm();
                        }

                        return new OutstationNode(outstation, instance, callbacks);
                    }
                }
                else
                {
                    return null;
                }
            }
        }
コード例 #6
0
 void SelectModule()
 {
     this.selectedModule = (IOutstationModule)this.comboBoxModules.SelectedItem;
     this.textBoxDesc.Text = this.selectedModule.Description;
 }