Xamarin Public Jenkins (auto-signing) e79aa3c0ed Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
2016-08-03 10:59:49 +00:00

50 lines
1.3 KiB
C#

// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*=============================================================================
**
** Class: ConsoleCancelEventArgs
**
**
** Purpose: This class provides support goop for hooking Control-C and
** Control-Break, then preventing Control-C from interrupting the
** process.
**
**
=============================================================================*/
namespace System {
using System;
using System.Diagnostics.Contracts;
public delegate void ConsoleCancelEventHandler(Object sender, ConsoleCancelEventArgs e);
[Serializable]
public sealed class ConsoleCancelEventArgs : EventArgs
{
private ConsoleSpecialKey _type;
private bool _cancel; // Whether to cancel the CancelKeyPress event
internal ConsoleCancelEventArgs(ConsoleSpecialKey type)
{
_type = type;
_cancel = false;
}
// Whether to cancel the break event. By setting this to true, the
// Control-C will not kill the process.
public bool Cancel {
get { return _cancel; }
set {
_cancel = value;
}
}
public ConsoleSpecialKey SpecialKey {
get { return _type; }
}
}
}