Exemple #1
0
        /// <summary>
        /// Erases the CD if the recorder is a CDRW and the media type is read write.
        /// </summary>
        /// <param name="eraseType">Either a quick or full delete</param>
        public void Erase(EraseKind eraseType)
        {
            if ((fIsErasing) || (fIsBurning))
            {
                throw new XPBurnException(Resource.BurningOrErasing);
            }

            if ((fRecorderType == RecorderType.rtCDRW) && (MediaInfo.isReadWrite))
            {
                fFullErase = (eraseType == EraseKind.ekFull);
                Thread eraseThread = new Thread(new ThreadStart(EraseDiscThread));
                fIsErasing = true;
                eraseThread.Start();
            }
            else
            {
                throw new XPBurnException(Resource.CantErase);
            }
        }
Exemple #2
0
        public void Erase(EraseKind kind, EraseRegion region)
        {
            // ReSharper disable SwitchStatementMissingSomeCases
            switch (kind)
            {
            case EraseKind.Line:
                switch (region)
                {
                case EraseRegion.FromBeginningToCursor:
                    Write(VT100.SequenceModifyEraseLineFromBeginningToCursor);
                    break;

                case EraseRegion.FromCursorToEnd:
                    Write(VT100.SequenceModifyEraseLineFromCursorToEnd);
                    break;

                case EraseRegion.FromBeginningToEnd:
                    Write(VT100.SequenceModifyEraseLine);
                    break;
                }
                break;

            case EraseKind.Display:
                switch (region)
                {
                case EraseRegion.FromBeginningToCursor:
                    Write(VT100.SequenceModifyEraseDisplayFromBeginningToCursor);
                    break;

                case EraseRegion.FromCursorToEnd:
                    Write(VT100.SequenceModifyEraseDisplayFromCursorToEnd);
                    break;

                case EraseRegion.FromBeginningToEnd:
                    Write(VT100.SequenceModifyEraseDisplay);
                    break;
                }
                break;
            }
            // ReSharper restore SwitchStatementMissingSomeCases
        }