// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using System.ComponentModel;
namespace ICSharpCode.ILSpy.Debugger
{
public class DebuggerSettings : INotifyPropertyChanged
{
bool showWarnings = true;
bool askArguments = true;
bool debugWholeTypesOnly = false;
///
/// Show warnings messages.
/// Default value is true.
///
[DefaultValue(true)]
public bool ShowWarnings {
get { return showWarnings; }
set {
if (showWarnings != value) {
showWarnings = value;
OnPropertyChanged("ShowWarnings");
}
}
}
///
/// Ask for arguments and working directory before executing a process.
///
[DefaultValue(true)]
public bool AskForArguments {
get { return askArguments; }
set {
if (askArguments != value) {
askArguments = value;
OnPropertyChanged("AskForArguments");
}
}
}
///
/// True, if debug only whole types; otherwise false (debug only methods and properties).
/// Default value is false.
///
[DefaultValue(false)]
public bool DebugWholeTypesOnly {
get { return debugWholeTypesOnly; }
set {
if (debugWholeTypesOnly != value) {
debugWholeTypesOnly = value;
OnPropertyChanged("DebugWholeTypesOnly");
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null) {
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
}