/***Settings***************************************************************************************************/ public virtual GenericGadgetSettings GetGadgetSettings(string name) { CheckGadgetKey(name); var settings = new GenericGadgetSettings(); settings.name = name; settings.channel = gadgets[name].channel; return(settings); }
public void UpdateGadget(string name, GenericGadgetSettings settings) { if (GadgetNameExists(name)) { settings = gadgets[name].OnUpdate(settings); RemoveGadget(name, false); } CreateGadget(settings, true); gadgets[settings.name].NotifyGadgetUpdated(name, settings); }
protected void CreateGadget(GenericGadgetSettings settings, bool saveToFile) { if (GadgetNameExists(settings.name)) { throw new Exception(string.Format("gadget: {0} already exists", settings.name)); } var equip = GadgetCreater(settings); if (equip.Valid()) { gadgets[equip.name] = equip; if (saveToFile) { AddGadgetSettingsToFile(settings); } } else { equip.Dispose(); } }
public virtual GenericGadgetSettings OnUpdate(GenericGadgetSettings settings) { return(settings); }
public GenericGadget(GenericGadgetSettings settings) { name = settings.name; channel = settings.channel; }
protected virtual GenericGadget GadgetCreater(GenericGadgetSettings settings) => throw new NotImplementedException();
public void CreateGadget(GenericGadgetSettings settings) { CreateGadget(settings, true); }
public GadgetUpdatedEvent(string name, GenericGadgetSettings settings) { this.name = name; this.settings = settings; }
public void NotifyGadgetUpdated(string name, GenericGadgetSettings settings) { MessageHub.Instance.Publish(key, new GadgetUpdatedEvent(name, settings)); }