Пример #1
0
        public SelectTransferSyntaxesForm(Dvtk.Sessions.EmulatorSession session)
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            this._session = session;
            ts_list       = new ArrayList();
            ts_list.Add(DvtkData.Dul.TransferSyntax.Implicit_VR_Little_Endian);
            ts_list.Add(DvtkData.Dul.TransferSyntax.Explicit_VR_Big_Endian);
            ts_list.Add(DvtkData.Dul.TransferSyntax.Explicit_VR_Little_Endian);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Baseline_Process_1);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Extended_Hierarchical_16_And_18);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Extended_Hierarchical_17_And_19);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Extended_Process_2_And_4);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Extended_Process_3_And_5);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Hierarchical_24_And_26);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Hierarchical_25_And_27);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Non_Hierarchical_10_And_12);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Non_Hierarchical_11_And_13);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Lossless_Hierarchical_28);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Lossless_Hierarchical_29);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Lossless_Non_Hierarchical_14);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Lossless_Non_Hierarchical_15);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Lossless_Non_Hierarchical_1st_Order_Prediction);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_LS_Lossless_Image_Compression);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_LS_Lossy_Image_Compression);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_2000_IC_Lossless_Only);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_2000_IC);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Hierarchical_20_And_22);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Hierarchical_21_And_23);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Non_Hierarchical_6_And_8);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Non_Hierarchical_7_And_9);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_2000_Multicomponent_lossless2);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPEG_2000_Multicomponent2);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPIP_Referenced);
            ts_list.Add(DvtkData.Dul.TransferSyntax.JPIP_Referenced_Deflate);
            ts_list.Add(DvtkData.Dul.TransferSyntax.MPEG2_Main_Profile_Level);
            ts_list.Add(DvtkData.Dul.TransferSyntax.RFC_2557_Mime_Encapsulation);
            ts_list.Add(DvtkData.Dul.TransferSyntax.RLE_Lossless);
            ts_list.Add(DvtkData.Dul.TransferSyntax.Deflated_Explicit_VR_Little_Endian);

            foreach (DvtkData.Dul.TransferSyntax ts in ts_list)
            {
                TreeNode node = this.TreeViewSTS.Nodes.Add(ts.ToString());
                // Set the item to 'checked' if the transfer syntax is supported by the emulator
                if (this._session.SupportedTransferSyntaxSettings.SupportedTransferSyntaxes.Contains(ts))
                {
                    node.Checked = true;
                }
            }
        }
Пример #2
0
        public SelectTransferSyntaxesForm(Dvtk.Sessions.EmulatorSession session)
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            this._session = session;
            ts_list = new ArrayList();
            ts_list.Add (DvtkData.Dul.TransferSyntax.Implicit_VR_Little_Endian);
            ts_list.Add (DvtkData.Dul.TransferSyntax.Explicit_VR_Big_Endian);
            ts_list.Add (DvtkData.Dul.TransferSyntax.Explicit_VR_Little_Endian);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Baseline_Process_1);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Extended_Hierarchical_16_And_18);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Extended_Hierarchical_17_And_19);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Extended_Process_2_And_4);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Extended_Process_3_And_5);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Hierarchical_24_And_26);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Hierarchical_25_And_27);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Non_Hierarchical_10_And_12);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Full_Progression_Non_Hierarchical_11_And_13);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Lossless_Hierarchical_28);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Lossless_Hierarchical_29);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Lossless_Non_Hierarchical_14);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Lossless_Non_Hierarchical_15);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Lossless_Non_Hierarchical_1st_Order_Prediction);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_LS_Lossless_Image_Compression);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_LS_Lossy_Image_Compression);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_2000_IC_Lossless_Only);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_2000_IC);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Hierarchical_20_And_22);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Hierarchical_21_And_23);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Non_Hierarchical_6_And_8);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_Spectral_Selection_Non_Hierarchical_7_And_9);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_2000_Multicomponent_lossless2);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPEG_2000_Multicomponent2);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPIP_Referenced);
            ts_list.Add (DvtkData.Dul.TransferSyntax.JPIP_Referenced_Deflate);
            ts_list.Add (DvtkData.Dul.TransferSyntax.MPEG2_Main_Profile_Level);
            ts_list.Add (DvtkData.Dul.TransferSyntax.RFC_2557_Mime_Encapsulation);
            ts_list.Add (DvtkData.Dul.TransferSyntax.RLE_Lossless);
            ts_list.Add (DvtkData.Dul.TransferSyntax.Deflated_Explicit_VR_Little_Endian);

            foreach (DvtkData.Dul.TransferSyntax ts in ts_list)
            {
                TreeNode node = this.TreeViewSTS.Nodes.Add (ts.ToString());
                // Set the item to 'checked' if the transfer syntax is supported by the emulator
                if (this._session.SupportedTransferSyntaxSettings.SupportedTransferSyntaxes.Contains (ts))
                {
                    node.Checked = true;
                }
            }
        }
Пример #3
0
        public PrintEmulatorStatusForm(Dvtk.Sessions.EmulatorSession emulator_session)
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            this.session = emulator_session;

            this.TextBoxManufacturer.Text      = this.session.Printer.Manufacturer;
            this.TextBoxModelName.Text         = this.session.Printer.ManufacturerModelName;
            this.TextBoxPrinterName.Text       = this.session.Printer.PrinterName;
            this.TextBoxSerialNumber.Text      = this.session.Printer.DeviceSerialNumber;
            this.TextBoxSoftwareVersions.Text  = this.session.Printer.SoftwareVersions;
            this.DateTimeCalibrationDate.Value = this.session.Printer.DateOfLastCalibration.Date;
            this.DateTimeCalibrationTime.Value = this.session.Printer.TimeOfLastCalibration.ToLocalTime();

            // add the 3 possible Printer Status values
            this.ComboBoxPrinterStatus.Items.Add("NORMAL");
            this.ComboBoxPrinterStatus.Items.Add("WARNING");
            this.ComboBoxPrinterStatus.Items.Add("ERROR");
            string status = this.session.Printer.Status.ToString();

            foreach (object o in this.ComboBoxPrinterStatus.Items)
            {
                if (o.ToString() == status)
                {
                    this.ComboBoxPrinterStatus.SelectedItem = o;
                }
            }

            string statusInfo = this.session.Printer.StatusInfo.ToString();

            foreach (string info_dt in this.session.Printer.StatusInfoDefinedTerms)
            {
                this.ComboBoxPrinterStatusInfo.Items.Add(info_dt);
            }
            foreach (object o in this.ComboBoxPrinterStatusInfo.Items)
            {
                if (o.ToString() == statusInfo)
                {
                    this.ComboBoxPrinterStatusInfo.SelectedItem = o;
                }
            }
        }
Пример #4
0
        public PrintEmulatorStatusForm(Dvtk.Sessions.EmulatorSession emulator_session)
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            this.session = emulator_session;

            this.TextBoxManufacturer.Text = this.session.Printer.Manufacturer;
            this.TextBoxModelName.Text = this.session.Printer.ManufacturerModelName;
            this.TextBoxPrinterName.Text = this.session.Printer.PrinterName;
            this.TextBoxSerialNumber.Text = this.session.Printer.DeviceSerialNumber;
            this.TextBoxSoftwareVersions.Text = this.session.Printer.SoftwareVersions;
            this.DateTimeCalibrationDate.Value = this.session.Printer.DateOfLastCalibration.Date;
            this.DateTimeCalibrationTime.Value = this.session.Printer.TimeOfLastCalibration.ToLocalTime ();

            // add the 3 possible Printer Status values
            this.ComboBoxPrinterStatus.Items.Add("NORMAL");
            this.ComboBoxPrinterStatus.Items.Add("WARNING");
            this.ComboBoxPrinterStatus.Items.Add("ERROR");
            string status = this.session.Printer.Status.ToString();
            foreach (object o in this.ComboBoxPrinterStatus.Items)
            {
                if (o.ToString() == status) this.ComboBoxPrinterStatus.SelectedItem = o;
            }

            string statusInfo = this.session.Printer.StatusInfo.ToString();
            foreach (string info_dt in this.session.Printer.StatusInfoDefinedTerms)
            {
                this.ComboBoxPrinterStatusInfo.Items.Add (info_dt);
            }
            foreach (object o in this.ComboBoxPrinterStatusInfo.Items)
            {
                if (o.ToString() == statusInfo) this.ComboBoxPrinterStatusInfo.SelectedItem = o;
            }
        }
Пример #5
0
 public DialogResult ShowDialog(IWin32Window theIWin32Window, Dvtk.Sessions.EmulatorSession theEmulatorSession)
 {
     _EmulatorSession = theEmulatorSession;
     return(ShowDialog(theIWin32Window));
 }
Пример #6
0
 public DialogResult ShowDialog(IWin32Window theIWin32Window, Dvtk.Sessions.EmulatorSession theEmulatorSession)
 {
     _EmulatorSession = theEmulatorSession;
     return(ShowDialog(theIWin32Window));
 }
Пример #7
0
        private void ComboBoxSessionType_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            if ((this.ComboBoxSessionType.SelectedItem.ToString() == "Script") &&
                !(this.selected_session is Dvtk.Sessions.ScriptSession))
            {
                // We only want to replace the selected session when the user
                // has changed the session type.
                Dvtk.Sessions.ScriptSession    session;
                session = new Dvtk.Sessions.ScriptSession();

                session.SessionFileName = this.selected_session.SessionFileName;

                session.SessionTitle = this.TextBoxSessionTitle.Text;
                session.SessionId = Convert.ToUInt16 (this.NumericSessonID.Value);
                session.TestedBy = this.TextBoxTestedBy.Text;
                session.Date = this.DateTested.Value;
                if (this.TextBoxResultsRoot.Text == "")
                    session.ResultsRootDirectory = ".";
                else
                    session.ResultsRootDirectory = this.TextBoxResultsRoot.Text;

                if (this.TextBoxScriptRoot.Text == "")
                    session.DicomScriptRootDirectory = ".";
                else
                    session.DicomScriptRootDirectory = this.TextBoxScriptRoot.Text;

                session.DvtSystemSettings.AeTitle = this.TextBoxDVTAETitle.Text;
                session.DvtSystemSettings.Port = (ushort)this.NumericDVTListenPort.Value;
                session.DvtSystemSettings.SocketTimeout = (ushort)this.NumericDVTTimeOut.Value;
                session.DvtSystemSettings.MaximumLengthReceived = (uint)this.NumericDVTMaxPDU.Value;

                session.SutSystemSettings.AeTitle = this.TextBoxSUTAETitle.Text;
                session.SutSystemSettings.Port = (ushort)this.NumericSUTListenPort.Value;
                session.SutSystemSettings.HostName = this.TextBoxSUTTCPIPAddress.Text;
                session.SutSystemSettings.MaximumLengthReceived = (uint)this.NumericSUTMaxPDU.Value;

                session.SecuritySettings.SecureSocketsEnabled = this.CheckBoxSecureConnection.Checked;
                if (this.CheckBoxSecureConnection.Checked)
                {
                    session.SecuritySettings.CacheTlsSessions = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CacheTlsSessions;
                    session.SecuritySettings.CertificateFileName = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CertificateFileName;
                    session.SecuritySettings.CheckRemoteCertificate = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CheckRemoteCertificate;
                    session.SecuritySettings.CipherFlags = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CipherFlags;
                    session.SecuritySettings.CredentialsFileName = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CredentialsFileName;
                    session.SecuritySettings.TlsCacheTimeout = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.TlsCacheTimeout;
                    session.SecuritySettings.TlsPassword = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.TlsPassword;
                    session.SecuritySettings.TlsVersionFlags = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.TlsVersionFlags;
                }

                // Copy the definition settings (SOP Classes, AE title/version and definition dirs)
                session.DefinitionManagement.ApplicationEntityName = this.selected_session.DefinitionManagement.ApplicationEntityName;
                session.DefinitionManagement.ApplicationEntityVersion = this.selected_session.DefinitionManagement.ApplicationEntityVersion;
                session.DefinitionManagement.DefinitionFileDirectoryList.Clear ();
                foreach (string def_dir in this.selected_session.DefinitionManagement.DefinitionFileDirectoryList)
                    session.DefinitionManagement.DefinitionFileDirectoryList.Add (def_dir);
                session.DefinitionManagement.DefinitionFileRootDirectory = this.selected_session.DefinitionManagement.DefinitionFileRootDirectory;
                foreach (string def_file in this.selected_session.DefinitionManagement.LoadedDefinitionFileNames)
                    session.DefinitionManagement.LoadDefinitionFile (def_file);
                this.selected_session.DefinitionManagement.UnLoadDefinitionFiles ();

                //this.project.ReplaceSession (this.selected_session, session, this._activity_handler);
                foreach (TreeNode node in this.SessionBrowser.Nodes)
                {
                    // Clear the tree node representing the old session.
                    if (node.Text == session.SessionFileName)
                        node.Nodes.Clear ();
                }

                this.selected_session = session;
                this.UpdateSessionProperties ();
                ////////this.project.SetSessionChanged (session.SessionFileName, true);
                this.ResizeSessionPropertiesView ();
            }
            if ((this.ComboBoxSessionType.SelectedItem.ToString() == "Media") &&
                !(this.selected_session is Dvtk.Sessions.MediaSession))
            {
                // We only want to replace the selected session when the user
                // has changed the session type.
                Dvtk.Sessions.MediaSession  session;
                session = new Dvtk.Sessions.MediaSession ();

                session.SessionFileName = this.selected_session.SessionFileName;

                session.SessionTitle = this.TextBoxSessionTitle.Text;
                session.SessionId = Convert.ToUInt16 (this.NumericSessonID.Value);
                session.TestedBy = this.TextBoxTestedBy.Text;
                session.Date = this.DateTested.Value;
                if (this.TextBoxResultsRoot.Text == "")
                    session.ResultsRootDirectory = ".";
                else
                    session.ResultsRootDirectory = this.TextBoxResultsRoot.Text;

                // Copy the definition settings (SOP Classes, AE title/version and definition dirs)
                session.DefinitionManagement.ApplicationEntityName = this.selected_session.DefinitionManagement.ApplicationEntityName;
                session.DefinitionManagement.ApplicationEntityVersion = this.selected_session.DefinitionManagement.ApplicationEntityVersion;
                session.DefinitionManagement.DefinitionFileDirectoryList.Clear ();
                foreach (string def_dir in this.selected_session.DefinitionManagement.DefinitionFileDirectoryList)
                    session.DefinitionManagement.DefinitionFileDirectoryList.Add (def_dir);
                session.DefinitionManagement.DefinitionFileRootDirectory = this.selected_session.DefinitionManagement.DefinitionFileRootDirectory;
                foreach (string def_file in this.selected_session.DefinitionManagement.LoadedDefinitionFileNames)
                    session.DefinitionManagement.LoadDefinitionFile (def_file);
                this.selected_session.DefinitionManagement.UnLoadDefinitionFiles ();

                //this.project.ReplaceSession (this.selected_session, session, this._activity_handler);
                foreach (TreeNode node in this.SessionBrowser.Nodes)
                {
                    // Clear the tree node representing the old session.
                    if (node.Text == session.SessionFileName)
                        node.Nodes.Clear ();
                }

                this.selected_session = session;
                this.UpdateSessionProperties ();
                //////this.project.SetSessionChanged (session.SessionFileName, true);
                this.ResizeSessionPropertiesView ();
            }
            if ((this.ComboBoxSessionType.SelectedItem.ToString() == "Emulator") &&
                !(this.selected_session is Dvtk.Sessions.EmulatorSession))
            {
                // We only want to replace the selected session when the user
                // has changed the session type.
                Dvtk.Sessions.EmulatorSession   session;
                session = new Dvtk.Sessions.EmulatorSession ();

                session.SessionFileName = this.selected_session.SessionFileName;

                session.SessionTitle = this.TextBoxSessionTitle.Text;
                session.SessionId = Convert.ToUInt16 (this.NumericSessonID.Value);
                session.TestedBy = this.TextBoxTestedBy.Text;
                session.Date = this.DateTested.Value;
                if (this.TextBoxResultsRoot.Text == "")
                    session.ResultsRootDirectory = ".";
                else
                    session.ResultsRootDirectory = this.TextBoxResultsRoot.Text;

                session.DvtSystemSettings.AeTitle = this.TextBoxDVTAETitle.Text;
                session.DvtSystemSettings.Port = (ushort)this.NumericDVTListenPort.Value;
                session.DvtSystemSettings.SocketTimeout = (ushort)this.NumericDVTTimeOut.Value;
                session.DvtSystemSettings.MaximumLengthReceived = (uint)this.NumericDVTMaxPDU.Value;

                session.SutSystemSettings.AeTitle = this.TextBoxSUTAETitle.Text;
                session.SutSystemSettings.Port = (ushort)this.NumericSUTListenPort.Value;
                session.SutSystemSettings.HostName = this.TextBoxSUTTCPIPAddress.Text;
                session.SutSystemSettings.MaximumLengthReceived = (uint)this.NumericSUTMaxPDU.Value;

                session.SecuritySettings.SecureSocketsEnabled = this.CheckBoxSecureConnection.Checked;
                if (this.CheckBoxSecureConnection.Checked)
                {
                    session.SecuritySettings.CacheTlsSessions = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CacheTlsSessions;
                    session.SecuritySettings.CertificateFileName = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CertificateFileName;
                    session.SecuritySettings.CheckRemoteCertificate = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CheckRemoteCertificate;
                    session.SecuritySettings.CipherFlags = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CipherFlags;
                    session.SecuritySettings.CredentialsFileName = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.CredentialsFileName;
                    session.SecuritySettings.TlsCacheTimeout = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.TlsCacheTimeout;
                    session.SecuritySettings.TlsPassword = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.TlsPassword;
                    session.SecuritySettings.TlsVersionFlags = ((Dvtk.Sessions.ISecure)this.selected_session).SecuritySettings.TlsVersionFlags;
                }

                // Copy the definition settings (SOP Classes, AE title/version and definition dirs)
                session.DefinitionManagement.ApplicationEntityName = this.selected_session.DefinitionManagement.ApplicationEntityName;
                session.DefinitionManagement.ApplicationEntityVersion = this.selected_session.DefinitionManagement.ApplicationEntityVersion;
                session.DefinitionManagement.DefinitionFileDirectoryList.Clear ();
                foreach (string def_dir in this.selected_session.DefinitionManagement.DefinitionFileDirectoryList)
                    session.DefinitionManagement.DefinitionFileDirectoryList.Add (def_dir);
                session.DefinitionManagement.DefinitionFileRootDirectory = this.selected_session.DefinitionManagement.DefinitionFileRootDirectory;
                foreach (string def_file in this.selected_session.DefinitionManagement.LoadedDefinitionFileNames)
                    session.DefinitionManagement.LoadDefinitionFile (def_file);
                this.selected_session.DefinitionManagement.UnLoadDefinitionFiles ();

                //this.project.ReplaceSession (this.selected_session, session, this._activity_handler);
                foreach (TreeNode node in this.SessionBrowser.Nodes)
                {
                    // Clear the tree node representing the old session.
                    if (node.Text == session.SessionFileName)
                        node.Nodes.Clear ();
                }

                this.selected_session = session;
                this.UpdateSessionProperties ();
                //////this.project.SetSessionChanged (session.SessionFileName, true);
                this.ResizeSessionPropertiesView ();
            }

            // Update the session tree browser
            this.UpdateSessionTreeView ();

            // Update the mainform controls (menu, toolbar, title)
            ((MainForm)this.ParentForm).UpdateUIControls ();
        }