Example #1
0
        private bool loadDrives()
        {
            InfoWindow info = new InfoWindow(Localization.Strings.VirtualDriveSearching);

            info.Show(this);
            driveField.Items.Clear();
            List <VirtualDrive> drives = new List <VirtualDrive>();

            for (int i = 0; i < DT.CountDrv(VirtualDriveType.DT); i++)
            {
                drives.Add(new VirtualDrive(VirtualDriveType.DT, i));
            }

            for (int i = 0; i < DT.CountDrv(VirtualDriveType.SCSI); i++)
            {
                drives.Add(new VirtualDrive(VirtualDriveType.SCSI, i));
            }

            if (DT.Type == DTType.Pro)
            {
                for (int i = 0; i < DT.CountDrv(VirtualDriveType.IDE); i++)
                {
                    drives.Add(new VirtualDrive(VirtualDriveType.IDE, i));
                }
            }

            drives.Sort((x, y) => string.Compare(x.Letter.ToString(), y.Letter.ToString()));

            if (drives.Count < 1)
            {
                return(false);
            }

            foreach (VirtualDrive drive in drives)
            {
                driveField.Items.Add(drive);

                if (drive.Type == _options.VirtualDrive.Type &&
                    drive.Num == _options.VirtualDrive.Num)
                {
                    driveField.SelectedIndex = driveField.Items.Count - 1;
                }
            }
            info.Close();

            return(true);
        }
Example #2
0
        private bool saveOptions()
        {
            if (driveField.SelectedIndex < 0 || driveField.SelectedIndex >= driveField.Items.Count)
            {
                return(false);
            }

            VirtualDrive drive = (VirtualDrive)driveField.SelectedItem;

            if (drive.Num >= DT.CountDrv(drive.Type))
            {
                return(false);
            }

            _options.VirtualDrive = drive;
            LogHelper.WriteLine(String.Format(Localization.Strings.VirtualDriveSelected, drive.ToString()), LogHelper.MessageType.INFO);
            return(true);
        }