예제 #1
0
        /// <summary>
        /// Override this method to define the async command body te execute on the
        /// background thread
        /// </summary>
        protected override async Task ExecuteAsync()
        {
            if (FloppyDevice == null)
            {
                return;
            }

            if (string.Compare(FloppyDevice.DriveAFloppy?.Filename, ItemPath,
                               StringComparison.InvariantCultureIgnoreCase) == 0)
            {
                await FloppyDevice.EjectDriveA();
            }
            else if (string.Compare(FloppyDevice.DriveBFloppy?.Filename, ItemPath,
                                    StringComparison.InvariantCultureIgnoreCase) == 0)
            {
                await FloppyDevice.EjectDriveB();
            }
        }
예제 #2
0
 /// <summary>
 /// Inserts the floppy to the device
 /// </summary>
 /// <param name="device">Floppy device</param>
 /// <param name="vfddPath">Path of the floppy file</param>
 /// <returns></returns>
 protected override Task InsertFloppyAsync(FloppyDevice device, string vfddPath)
 => device.InsertDriveB(vfddPath);
예제 #3
0
 /// <summary>
 /// The floppy file that belongs to the menu function
 /// </summary>
 /// <param name="device">Floppy device</param>
 protected override VirtualFloppyFile FloppyFile(FloppyDevice device)
 => device.DriveBFloppy;
예제 #4
0
 /// <summary>
 /// Inserts the floppy to the device
 /// </summary>
 /// <param name="device">Floppy device</param>
 /// <param name="vfddPath">Path of the floppy file</param>
 /// <returns></returns>
 protected abstract Task InsertFloppyAsync(FloppyDevice device, string vfddPath);
예제 #5
0
 /// <summary>
 /// The floppy file that belongs to the menu function
 /// </summary>
 /// <param name="device">Floppy device</param>
 protected abstract VirtualFloppyFile FloppyFile(FloppyDevice device);