public static EventViewModel Select(Event ev) { var favorite = ev as Favorite; if (favorite != null) { var fav = favorite; return fav.Unfavorite ? new UnfavoriteViewModel(fav) : new FavoriteViewModel(fav) as EventViewModel; } var retweet = ev as Retweet; if (retweet != null) { return new RetweetViewModel(retweet); } var follow = ev as Follow; if (follow != null) { return new FollowViewModel(follow); } var mention = ev as Mention; if (mention != null) { return new MentionViewModel(mention); } return new UnknownViewModel(ev); }
private void RaiseEvent(Event @event) { if (this.EventRaised != null && [email protected]) // 自アカウントから発するイベントは通知しない { this.EventRaised(this, new EventRaisedEventArgs { Event = @event, }); } }
public UnknownViewModel(Event ev) : base(ev) { }
protected EventViewModel(Event ev) { this.Event = ev; }