/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void mnuStationAdd_Click(object sender, EventArgs e) { frmStationType f = new frmStationType(); DialogResult dr = f.ShowDialog(); if (dr == DialogResult.OK) { StationType stationType = f.SelectedStationType; ISPU spu = Soft.SPUs[stationType]; IStationUI stationUI = spu.StationUI; StationCollection stations = this.Soft.Hardware.Stations; IStation newStation; DialogResult dr2 = stationUI.Add(stationType, stations, out newStation); if (dr2 == DialogResult.OK) { Debug.Assert(newStation.StationType != null); Debug.Assert(newStation.Spu != null); Debug.Assert(newStation.Guid != null); stations.Add(newStation); spu.StationPersister.Add(newStation); StationTreeNode stationNode = new StationTreeNode(newStation); this.HardwareTreeView.Nodes.Add(stationNode); } } }
/// <summary> /// /// </summary> /// <param name="spu"></param> public void Add(ISPU spu) { if (spu == null) { throw new ArgumentNullException("spu"); } // TODO: exist // this.SPUCollection.Add(spu); }
/// <summary> /// /// </summary> /// <returns></returns> public IStation Create(ISPU spu) { if (spu == null) { throw new ArgumentNullException("spu"); } object obj = Activator.CreateInstance(this.Type); IStation st = (IStation)obj; st.Spu = spu; st.StationType = this; return st; }
/// <summary> /// /// </summary> /// <param name="spu"></param> private void VerifySPU(ISPU spu) { if (spu == null) { throw new ArgumentNullException("spu"); } VerifyNotNull(spu.StationFactory, "spu.StationFactory"); VerifyNotNull(spu.StationPersister, "spu.StationPersister"); VerifyNotNull(spu.StationSourceProvider, "spu.StationSourceProvider"); VerifyNotNull(spu.StationType, "spu.StationType"); VerifyNotNull(spu.StationUI, "spu.StationUI"); }
/// <summary> /// /// </summary> /// <returns></returns> public IStation Create(ISPU spu) { if (spu == null) { throw new ArgumentNullException("spu"); } object obj = Activator.CreateInstance(this.Type); IStation st = (IStation)obj; st.Spu = spu; st.StationType = this; return(st); }
/// <summary> /// /// </summary> /// <param name="spu"></param> public StationFactory(ISPU spu) : base(spu) { }
/// <summary> /// /// </summary> /// <param name="spu"></param> protected StationFactoryBase(ISPU spu) { this.Spu = spu; }
/// <summary> /// /// </summary> /// <param name="spu"></param> public StationUI(ISPU spu) { this.Spu = spu; }
public TStationFactory(ISPU spu) : base(spu) { }