4 using System.Collections.Generic;
6 namespace SiliconStudio.Presentation.Quantum
10 private readonly Dictionary<string, object> associatedData =
new Dictionary<string,object>();
11 private readonly
int? order;
14 : base(ownerViewModel, name, parentNode, null)
18 ValueChangedCommand = valueChangedCommand;
29 public override int? Order {
get {
return order; } }
31 public override bool HasList {
get {
return false; } }
33 public override bool HasDictionary {
get {
return false; } }
35 public override bool IsPrimitive {
get {
return true; } }
42 internal void AddAssociatedData(
string key,
object data)
44 associatedData.Add(key, data);
53 : base(ownerViewModel, name, parentNode, order, valueChangedCommand)
55 value = (T)initialValue;
66 bool hasChanged = SetValue(ref this.value, value);
67 if (hasChanged && ValueChangedCommand != null)
69 ValueChangedCommand.Execute(value);
75 public override Type Type {
get {
return typeof(T); } }
78 public override sealed
object Value {
get {
return TypedValue; } set { TypedValue = (T)value; } }
VirtualObservableNode(ObservableViewModel ownerViewModel, string name, SingleObservableNode parentNode, int?order, NodeCommandWrapperBase valueChangedCommand)
A base class to wrap one or multiple INodeCommand instances into a CancellableCommand.
VirtualObservableNode(ObservableViewModel ownerViewModel, string name, SingleObservableNode parentNode, int?order, object initialValue, NodeCommandWrapperBase valueChangedCommand)