Files
ZuneShell.dll/ZuneShell/ZuneUI/PropertyDescriptor.cs

117 lines
3.8 KiB
C#

// Decompiled with JetBrains decompiler
// Type: ZuneUI.PropertyDescriptor
// Assembly: ZuneShell, Version=4.7.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
// MVID: FC8028F3-A47B-4FB4-B35B-11D1752D8264
// Assembly location: C:\Program Files\Zune\ZuneShell.dll
namespace ZuneUI
{
public class PropertyDescriptor
{
private string _name;
private string _unknownString;
private string _multiValueString;
private int _maxTextLength;
private bool _required;
private object _defaultValue;
public PropertyDescriptor(
string name,
string multiValueString,
string unknownString,
int maxTextLength,
bool required,
object defaultValue)
{
this._name = name;
this._unknownString = unknownString;
this._multiValueString = multiValueString;
this._maxTextLength = maxTextLength;
this._required = required;
this._defaultValue = defaultValue;
}
public PropertyDescriptor(
string name,
string multiValueString,
string unknownString,
int maxTextLength,
bool required)
: this(name, multiValueString, unknownString, maxTextLength, required, null)
{
}
public PropertyDescriptor(
string name,
string multiValueString,
string unknownString,
int maxTextLength)
: this(name, multiValueString, unknownString, maxTextLength, false, null)
{
}
public PropertyDescriptor(string name, string multiValueString, string unknownString)
: this(name, multiValueString, unknownString, 1000, false, null)
{
}
public PropertyDescriptor(
string name,
string multiValueString,
string unknownString,
bool required)
: this(name, multiValueString, unknownString, 1000, required, null)
{
this._required = required;
}
public virtual string ConvertToString(object value, object state) => this.ConvertToString(value);
public virtual string ConvertToString(object value) => value?.ToString();
public virtual object ConvertFromString(string value, object state) => this.ConvertFromString(value);
public virtual object ConvertFromString(string value) => value != null ? value.Trim() : null;
public bool IsValid(string value, object state)
{
string str = value;
if (str != null)
str = str.Trim();
return (!this._required || !string.IsNullOrEmpty(str) && !(str == this._unknownString)) && (str == null || str.Length <= this._maxTextLength) && this.IsValidInternal(str, state);
}
public virtual bool IsValidInternal(string value, object state) => this.IsValidInternal(value);
public virtual bool IsValidInternal(string value) => true;
public bool IsRequired(object state) => this.IsRequiredInternal(state);
public virtual bool IsRequiredInternal(object state) => this.IsRequiredInternal();
public virtual bool IsRequiredInternal() => this._required;
public bool Required => this.IsRequiredInternal();
internal virtual string GetOverlayString(object state) => string.Empty;
internal virtual string GetLabelString(object state) => string.Empty;
public object DefaultValue
{
get => this._defaultValue;
protected set => this._defaultValue = value;
}
public virtual string DefaultError => (string)null;
public string DescriptorName => this._name;
public string UnknownString => this._unknownString;
public string MultiValueString => this._multiValueString;
public int MaxTextLength => this._maxTextLength;
}
}