示例#1
0
 public virtual void BindStartResumePlaybackView(IStartResumePlaybackView view)
 {
     _startResumePlaybackView = view;
     _startResumePlaybackPresenter = Bootstrapper.GetContainer().Resolve<IStartResumePlaybackPresenter>(new NamedParameterOverloads() { { "device", _resumeCloudDeviceInfo } });
     _startResumePlaybackPresenter.BindView(view);
     _startResumePlaybackView.OnViewDestroy = (view2) =>
     {
         _startResumePlaybackPresenter.ViewDestroyed();
         _startResumePlaybackPresenter = null;
         _startResumePlaybackView = null;
     };            
 }
示例#2
0
        public virtual IStartResumePlaybackView CreateStartResumePlaybackView()
        {
            // If the view is still visible, just make it the top level window
            if (_startResumePlaybackView != null)
            {
                _startResumePlaybackView.ShowView(true);
                return _startResumePlaybackView;
            }

            // The view invokes the OnViewReady action when the view is ready. This means the presenter can be created and bound to the view.
            Action<IBaseView> onViewReady = (view) =>
            {
                _startResumePlaybackPresenter = Bootstrapper.GetContainer().Resolve<IStartResumePlaybackPresenter>(new NamedParameterOverloads() { { "device", _resumeCloudDeviceInfo } });
                _startResumePlaybackPresenter.BindView((IStartResumePlaybackView)view);
            };

            // Create view and manage view destruction
            _startResumePlaybackView = Bootstrapper.GetContainer().Resolve<IStartResumePlaybackView>(new NamedParameterOverloads() { { "onViewReady", onViewReady }, { "device", _resumeCloudDeviceInfo } });
            _startResumePlaybackView.OnViewDestroy = (view) =>
            {
                _startResumePlaybackPresenter.ViewDestroyed();
                _startResumePlaybackPresenter = null;
                _startResumePlaybackView = null;
            };
            return _startResumePlaybackView;
        }