protected override void OnSuccess(object arg) { // notify ui bindings ThreadPageDataSource page = arg as ThreadPageDataSource; CurrentPage = page.PageNumber; OnPropertyChanged("CurrentThread"); OnPropertyChanged("CurrentThreadPage"); OnPropertyChanged("Rating"); // empty loading text Status = string.Empty; if (SynchronizeSlideView) { // ignore the selected item change when we bind new items to view TotalPages = page.Data.LastPage; CurrentState = ViewStates.New; OnPropertyChanged("Items"); SelectedItem = Items[CurrentPage - 1]; SynchronizeSlideView = false; } // we are ready to show the view CurrentState = ViewStates.Ready; }
protected override object DoWork(LoadPageCommandArgs value) { // load the page ThreadPageMetadata page = value.LoadPage(value.State); if (page == null) { throw new Exception("There was an error loading the requested page."); } else { this._pageCache.AddPage(page); } UpdateStatus("Rendering..."); ThreadPageDataObject dataObject = new ThreadPageDataObject(page); this._currentThread = MetadataExtensions.FromPageMetadata(page); this._ratingCommand.ThreadId = page.ThreadID; this._rating = 0; this._currentThreadPage = dataObject; if (TotalPages != page.LastPage) { this._items = new ThreadPageSlideViewList(page.LastPage); SynchronizeSlideView = true; } return(dataObject); }
private void OnThreadPageUpdating(ThreadPageDataSource source) { Deployment.Current.Dispatcher.BeginInvoke(() => { if (ThreadPageUpdating != null) { ThreadPageUpdating(source, EventArgs.Empty); } }); }
private void OnThreadPageUpdated(ThreadPageDataSource source) { Deployment.Current.Dispatcher.BeginInvoke(() => { if (ThreadPageUpdated != null) { ThreadPageUpdated(source, EventArgs.Empty); NotifyAllPropertiesChanged(); } }); }
public virtual ThreadPageDataSource Refresh() { ThreadPageDataSource result = null; ThreadPageMetadata metadata = Data != null ? Data : new ThreadPageMetadata() { ThreadID = ThreadID, PageNumber = PageNumber }; var page = metadata.Refresh(); if (page != null) { result = new ThreadPageDataObject(page); } return(result); }
private void LoadPage(object source) { ThreadPageDataSource page = null; try { page = (source as ThreadPageDataSource).Refresh(); if (page != null) { this._page = page; } OnThreadPageUpdated(this); } catch (Exception ex) { AwfulDebugger.AddLog(this, AwfulDebugger.Level.Critical, ex); OnThreadPageUpdated(null); } }
public ThreadPageDataProxy(ThreadPageDataObject obj) { _page = obj; }
public ThreadPageDataProxy(ThreadPageMetadata metadata) { _page = new ThreadPageDataObject(metadata); }