public void Execute(IContext context) { Module module = ModuleUtilities.LoadModule(this.modname, context); IValues values = context; int nname = 0; foreach (var name in this.names) { string normname = name.Trim(); if (nname == this.names.Length - 1) { values.SetValue(normname, module); } else if (!values.HasValue(normname)) { var mod = new Module(context.GlobalContext); values.SetValue(normname, mod); values = mod; } else { values = (IValues)values.GetValue(normname); } nname++; } }
/// <summary> /// Stores a color setting. /// </summary> /// <param name="values"> /// The settings. /// </param> /// <param name="name"> /// The name of the setting. /// </param> /// <param name="color"> /// The color to be stored. /// </param> public static void SetColorSetting(this IValues <string> values, string name, Color32 color) { // convert to string var value = string.Format("{0} {1} {2} {3}", color.a, color.r, color.g, color.b); // store setting values.SetValue(name, value); }
public void Execute(IContext context) { var target = this.targetExpression.Evaluate(context); var value = this.expression.Evaluate(context); IValues values = target as IValues; if (values != null) { values.SetValue(this.name, value); } ObjectUtilities.SetValue(target, this.name, value); }