protected void Initialize(IAmpSineView pView) { mView = pView; if (mLightGroup != null) { foreach (LightViewPresenter lvp in mLightGroup.Lights) { //this one updates the UI as well as the lights in the room. mLights.Add(lvp); } } else { foreach (Light l in mLightState.Lights) { mLights.Add(l); } } mView.StartFired += new gigaFlash.Delegates.TypedDelegate<Color>(OnStartFired); mView.StopFired += new gigaFlash.Delegates.VoidDelegate(OnStopFired); mView.TwinkleFired += new gigaFlash.Delegates.VoidDelegate(OnTwinkleFired); mView.SpeedChanged += new gigaFlash.Delegates.TypedDelegate<int>(OnSpeedChanged); InitializeThread(); mTwinkleWorker = new BackgroundWorker(); mTwinkleWorker.WorkerSupportsCancellation = true; mTwinkleWorker.DoWork += new DoWorkEventHandler(OnTwinkleThreadFired); mTwinkleWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(OnSineFinished); OnStartFired(mView.Color2); }
public AmpSinePresenter(IAmpSineView pView, ILightState pState, LightGroup pGroup) : base(pView, pState) { mLightGroup = pGroup; Initialize(pView); }
public AmpSinePresenter(IAmpSineView pView, ILightState pState) : base(pView, pState) { Initialize(pView); }
public override AmpSinePresenter Create(LightState pState) { IAmpSineView view = ModuleCatalog.Instance.GetView <IAmpSineView>(ModuleOptions.AmpSine); return(new AmpSinePresenter(view, pState)); }