Beispiel #1
0
        private void ExportToolStripButton_Click(object sender, EventArgs e)
        {
            var selectedPage = tabControl.SelectedTab;

            if (selectedPage != null)
            {
                var session       = new SessionSettings();
                var ModbusControl = GetSettings(selectedPage, session);
                var sdlg          = new SaveFileDialog
                {
                    Title            = "Export to SharpMaster File",
                    Filter           = "LiteDB Files (*.SharpMaster)|*.SharpMaster",
                    OverwritePrompt  = true,
                    RestoreDirectory = true
                };
                if (sdlg.ShowDialog() == DialogResult.OK)
                {
                    File.Delete(sdlg.FileName);
                    using (var db = new LiteDatabase(sdlg.FileName))
                    {
                        var table = db.GetCollection <SessionSettings>("sessions");
                        table.Upsert(session);
                    }
                }
            }
        }
Beispiel #2
0
        private void ExportSelectedToolStripButton_Click(object sender, EventArgs e)
        {
            var selectedPage = tabControl.SelectedTab;

            if (selectedPage == null)
            {
                return;
            }

            var fd = new SaveFileDialog
            {
                Title            = "Export to SharpMaster File",
                Filter           = "LiteDB Files (*.SharpMaster)|*.SharpMaster",
                OverwritePrompt  = true,
                RestoreDirectory = true
            };

            if (fd.ShowDialog() == DialogResult.OK)
            {
                var session = new SessionSettings();
                var list    = new List <SessionSettings>();
                list.Add(session);
                GetSettings(selectedPage, session);
                var dao = new SessionDao(fd.FileName);
                dao.Save(list);
            }
        }
Beispiel #3
0
        private ModbusControl GetSettings(TabPage tabPage, SessionSettings session)
        {
            var ModbusControl = GetTerminal(tabPage);

            ModbusControl.FromUI(session);
            session.Name = tabPage.Text;
            return(ModbusControl);
        }
 public void ToUI(SessionSettings config)
 {
     config.Serial.CopyTo(serial);
     comboBoxSerialPortName.Text = config.SerialPortName;
     textBoxTcpIP.Text           = config.TcpIP;
     numericUpDownTcpPort.Value  = config.TcpPort;
     foreach (var settings in config.Controls)
     {
         AddControl(settings.Get("$Type"), settings);
     }
 }
Beispiel #5
0
        private void CloneToolStripButton_Click(object sender, EventArgs e)
        {
            var selectedPage = tabControl.SelectedTab;

            if (selectedPage != null)
            {
                var session       = new SessionSettings();
                var ModbusControl = GetSettings(selectedPage, session);
                AddSession(session);
            }
        }
Beispiel #6
0
        void MainFormFormClosed(object sender, FormClosedEventArgs e)
        {
            var sessions = new List <SessionSettings>();

            foreach (TabPage tabPage in tabControl.TabPages)
            {
                var session       = new SessionSettings();
                var ModbusControl = GetSettings(tabPage, session);
                ModbusControl.Unload();
                sessions.Add(session);
            }
            dao.Save(sessions);
        }
Beispiel #7
0
        private List <SessionSettings> GetSessionList()
        {
            var sessions = new List <SessionSettings>();

            foreach (TabPage tabPage in tabControl.TabPages)
            {
                var session       = new SessionSettings();
                var modbusControl = GetSettings(tabPage, session);
                modbusControl.Unload();
                sessions.Add(session);
            }
            return(sessions);
        }
Beispiel #8
0
        private void AddSession(SessionSettings session)
        {
            var tabPage = new TabPage
            {
                Text = session.Name
            };
            var ModbusControl = new ModbusControl
            {
                Dock = DockStyle.Fill
            };

            tabPage.Controls.Add(ModbusControl);
            tabControl.TabPages.Add(tabPage);
            ModbusControl.ToUI(session);
            tabControl.SelectedTab = tabPage;
        }
 public void FromUI(SessionSettings config)
 {
     config.Serial         = serial;
     config.SerialPortName = comboBoxSerialPortName.Text;
     config.TcpIP          = textBoxTcpIP.Text;
     config.TcpPort        = (int)numericUpDownTcpPort.Value;
     foreach (var control in panelContainer.Controls)
     {
         var wrapper  = (WrapperControl)control;
         var payload  = (IoControl)wrapper.Payload;
         var name     = wrapper.ItemName;
         var settings = payload.GetSettings();
         settings.Put("$Type", payload.GetType().Name);
         settings.Put("$Name", name);
         config.Controls.Add(settings);
     }
 }