public ComposeWindowViewModel(Tweet inReplyTo) : this() { var screenNames = new[] { inReplyTo.OriginalStatus.User.ScreenName }.AsEnumerable(); if (inReplyTo.OriginalStatus.Entities.UserMentions != null) screenNames = screenNames.Concat(inReplyTo.OriginalStatus.Entities.UserMentions.Select(e => e.ScreenName)).Distinct().Where(s => s != inReplyTo.Account.UserInfo.ScreenName); Text = screenNames.Select(s => "@" + s + " ").Aggregate((l, r) => l + r); SelectionStart = Text.Length; _inReplyToStatusId = inReplyTo.OriginalStatus.Id; InReplyToStatusText = "@" + inReplyTo.OriginalStatus.User.ScreenName + ": " + (inReplyTo.OriginalStatus.FullText ?? inReplyTo.OriginalStatus.Text); InReplyToStatus = true; }
public bool Eval(Tweet tweet) { if (_assembly == null) return false; var type = _assembly.GetType("ScriptingClass"); return (bool)type.InvokeMember("Eval", BindingFlags.InvokeMethod, null, null, new object[] { tweet }); }
public static ApplicationMessage CreateDeleteMessage(Tweet tweet) { return new ApplicationMessage(MessageType.Deleted, "MessageDeletedTweet", "Format", new[] { tweet.Status.User.ScreenName }, new[] { tweet.Status.FullText ?? tweet.Status.Text }); }