#if FRAMEWORK20
using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;
using System.Drawing;
namespace DevComponents.DotNetBar
{
[System.ComponentModel.ToolboxItem(false), System.ComponentModel.DesignTimeVisible(false), TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public class AdvPropertyGridAppearance : Component, INotifyPropertyChanged
{
#region Internal Implementation
protected override void Dispose(bool disposing)
{
if (BarUtilities.DisposeItemImages && !this.DesignMode)
{
BarUtilities.DisposeImage(ref _PropertyValueErrorImage);
}
base.Dispose(disposing);
}
private Color _ErrorHighlightColor = ColorScheme.GetColor(0xD99694);
///
/// Gets or sets the color of the node highlight when error has occurred while setting property value.
///
[Category("Colors"), Description("Indicates color of the node highlight when error has occurred while setting property value.")]
public Color ErrorHighlightColor
{
get { return _ErrorHighlightColor; }
set
{
_ErrorHighlightColor = value;
OnPropertyChanged(new PropertyChangedEventArgs("ErrorHighlightColor"));
}
}
///
/// Gets whether property should be serialized.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public bool ShouldSerializeErrorHighlightColor()
{
return !_ErrorHighlightColor.Equals(ColorScheme.GetColor(0xD99694));
}
///
/// Resets property to its default value.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public void ResetErrorHighlightColor()
{
this.ErrorHighlightColor = ColorScheme.GetColor(0xD99694);
}
private Color _SuccessHighlightColor = ColorScheme.GetColor(0x9BBB59);
///
/// Gets or sets the color of the node highlight when property update was successful.
///
[Category("Colors"), Description("Indicates color of node highlight when property update was successful.")]
public Color SuccessHighlightColor
{
get { return _SuccessHighlightColor; }
set
{
_SuccessHighlightColor = value;
OnPropertyChanged(new PropertyChangedEventArgs("SuccessHighlightColor"));
}
}
///
/// Gets whether property should be serialized.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public bool ShouldSerializeSuccessHighlightColor()
{
return !_SuccessHighlightColor.Equals(ColorScheme.GetColor(0x9BBB59));
}
///
/// Resets property to its default value.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public void ResetSuccessHighlightColor()
{
this.SuccessHighlightColor = ColorScheme.GetColor(0x9BBB59);
}
private ElementStyle _DefaultPropertyStyle = null;
///
/// Gets or sets default style for property node.
///
///
/// Default value is null.
///
[DefaultValue(null), /*Editor("DevComponents.AdvTree.Design.ElementStyleTypeEditor, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral, PublicKeyToken=90f470f34c89ccaf", typeof(System.Drawing.Design.UITypeEditor)),*/ Description("Gets or sets default style for property node.")]
public ElementStyle DefaultPropertyStyle
{
get { return _DefaultPropertyStyle; }
set
{
if (_DefaultPropertyStyle != value)
{
if (_DefaultPropertyStyle != null)
_DefaultPropertyStyle.StyleChanged -= new EventHandler(this.DefaultPropertyStyleChanged);
if (value != null)
value.StyleChanged += new EventHandler(DefaultPropertyStyleChanged);
_DefaultPropertyStyle = value;
OnPropertyChanged(new PropertyChangedEventArgs("DefaultPropertyStyle"));
}
}
}
private void DefaultPropertyStyleChanged(object sender, EventArgs e)
{
}
private ElementStyle _ReadOnlyPropertyStyle = null;
///
/// Gets or sets style for property node when in read-only state.
///
///
/// Default value is null.
///
[DefaultValue(null), /*Editor("DevComponents.AdvTree.Design.ElementStyleTypeEditor, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral, PublicKeyToken=90f470f34c89ccaf", typeof(System.Drawing.Design.UITypeEditor)),*/ Description("Gets or sets style for property node when in read-only state.")]
public ElementStyle ReadOnlyPropertyStyle
{
get { return _ReadOnlyPropertyStyle; }
set
{
if (_ReadOnlyPropertyStyle != value)
{
if (_ReadOnlyPropertyStyle != null)
_ReadOnlyPropertyStyle.StyleChanged -= this.ReadOnlyPropertyStyleChanged;
if (value != null)
value.StyleChanged += ReadOnlyPropertyStyleChanged;
_ReadOnlyPropertyStyle = value;
OnPropertyChanged(new PropertyChangedEventArgs("ReadOnlyPropertyStyle"));
}
}
}
private void ReadOnlyPropertyStyleChanged(object sender, EventArgs e)
{
}
private ElementStyle _ValueChangedPropertyStyle = null;
///
/// Gets or sets style for property node when in read-only state.
///
///
/// Default value is null.
///
[DefaultValue(null), /*Editor("DevComponents.AdvTree.Design.ElementStyleTypeEditor, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral, PublicKeyToken=90f470f34c89ccaf", typeof(System.Drawing.Design.UITypeEditor)),*/ Description("Gets or sets style for property node when in read-only state.")]
public ElementStyle ValueChangedPropertyStyle
{
get { return _ValueChangedPropertyStyle; }
set
{
if (_ValueChangedPropertyStyle != value)
{
if (_ValueChangedPropertyStyle != null)
_ValueChangedPropertyStyle.StyleChanged -= this.ValueChangedPropertyStyleChanged;
if (value != null)
value.StyleChanged += ValueChangedPropertyStyleChanged;
_ValueChangedPropertyStyle = value;
OnPropertyChanged(new PropertyChangedEventArgs("ValueChangedPropertyStyle"));
}
}
}
private void ValueChangedPropertyStyleChanged(object sender, EventArgs e)
{
}
private ElementStyle _DefaultEditCellStyle = null;
///
/// Gets or sets style for property node edit cell when displaying unchanged property value.
///
///
/// Default value is null.
///
[DefaultValue(null), /*Editor("DevComponents.AdvTree.Design.ElementStyleTypeEditor, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral, PublicKeyToken=90f470f34c89ccaf", typeof(System.Drawing.Design.UITypeEditor)),*/ Description("Indicates style for property node edit cell when displaying unchanged property value.")]
public ElementStyle DefaultEditCellStyle
{
get { return _DefaultEditCellStyle; }
set
{
if (_DefaultEditCellStyle != value)
{
if (_DefaultEditCellStyle != null)
_DefaultEditCellStyle.StyleChanged -= this.DefaultEditCellStyleChanged;
if (value != null)
value.StyleChanged += ValueChangedPropertyStyleChanged;
_DefaultEditCellStyle = value;
OnPropertyChanged(new PropertyChangedEventArgs("DefaultEditCellStyle"));
}
}
}
private void DefaultEditCellStyleChanged(object sender, EventArgs e)
{
}
private ElementStyle _CategoryStyle = null;
///
/// Gets or sets style for property node when in read-only state.
///
///
/// Default value is null.
///
[DefaultValue(null), /*Editor("DevComponents.AdvTree.Design.ElementStyleTypeEditor, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral, PublicKeyToken=90f470f34c89ccaf", typeof(System.Drawing.Design.UITypeEditor)),*/ Description("Gets or sets style for property node when in read-only state.")]
public ElementStyle CategoryStyle
{
get { return _CategoryStyle; }
set
{
if (_CategoryStyle != value)
{
if (_CategoryStyle != null)
_CategoryStyle.StyleChanged -= this.CategoryStyleChanged;
if (value != null)
value.StyleChanged += CategoryStyleChanged;
_CategoryStyle = value;
OnPropertyChanged(new PropertyChangedEventArgs("CategoryStyle"));
}
}
}
private void CategoryStyleChanged(object sender, EventArgs e)
{
}
private Image _PropertyValueErrorImage = null;
///
/// Gets or sets the image that is displayed in property name cell when property value has failed the validation.
///
[DefaultValue(null), Category("Appearance"), Description("Indicates image that is displayed in property name cell when property value has failed the validation.")]
public Image PropertyValueErrorImage
{
get { return _PropertyValueErrorImage; }
set
{
if (_PropertyValueErrorImage == value) return;
_PropertyValueErrorImage = value;
OnPropertyChanged(new PropertyChangedEventArgs("PropertyValueErrorImage"));
}
}
#endregion
#region INotifyPropertyChanged Members
private void OnPropertyChanged(PropertyChangedEventArgs e)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
handler(this, e);
}
public event PropertyChangedEventHandler PropertyChanged;
#endregion
}
}
#endif