Example #1
0
 private void LogControlForm_FormClosing(object sender, FormClosingEventArgs e)
 {
     if (e.CloseReason == CloseReason.UserClosing)
     {
         e.Cancel = true;
         _logStream.Disconnect();
     }
 }
Example #2
0
        private void dgvLogfile_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            // Only button column
            if (dgvLogfile.Columns[e.ColumnIndex].Name != "ChangeFile")
            {
                return;
            }

            // Get selected stream
            CANStreamer_Logfile selStream = logStreams[e.RowIndex];

            // Open file dialog
            OpenFileDialog oDialog = new OpenFileDialog();

            if (selStream is CANStreamer_XMLLogfile)
            {
                oDialog.Filter = CANStreamer_XMLLogfile.FileFilter;
            }
            else if (selStream is CANStreamer_KeesLogfile)
            {
                oDialog.Filter = CANStreamer_KeesLogfile.FileFilter;
            }
            else if (selStream is CANStreamer_N0183Logfile)
            {
                oDialog.Filter = CANStreamer_N0183Logfile.FileFilter;
            }
            else if (selStream is CANStreamer_WeatherLogfile)
            {
                oDialog.Filter = CANStreamer_WeatherLogfile.FileFilter;
            }
            else
            {
                throw new Exception("No file filter defined for type '" + selStream.GetType().Name + "'");
            }

            oDialog.FileName = selStream.FileName ?? "";
            if ((oDialog.ShowDialog() == DialogResult.OK) && (oDialog.CheckFileExists))
            {
                selStream.FileName = oDialog.FileName;

                if (selStream.ConnectionState == ConnectionStateEnum.Connected)
                {
                    selStream.Disconnect();
                    selStream.ConnectStream();
                }
            }
        }