예제 #1
0
 public TweetActionArgs(TOBEntityBase _status, TOBEntityEnum TweetType)
 {
     statuslist = _status;
     this.TweetType = TweetType;
 }
예제 #2
0
        private void btnSendTweets_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            try
            {
                string tweetText = txtTweets.Text;
                if (tweetText.Length > 140)
                {
                    return;
                }
                if (status != null && (_currentMode == TOBEntityEnum.DirectMessages || _currentMode == TOBEntityEnum.Replies))
                {
                    TOBBaseObject Twitter = AccountManager.Instance.GetTOBObject(status.Account);
                    Twitter.UploadNewStatus(txtTweets.Text);
                    MessageNotifier.Instance.NotifyMessage("Direct Message sent");
                }
                else
                {
                    foreach (Account listItem in listAccountNames.SelectedItems)
                    {
                        TOBBaseObject Twitter = AccountManager.Instance.GetTOBObject(listItem);
                        Twitter.UploadNewStatus(txtTweets.Text);
                        TOB.Utility.MessageNotifier.Instance.NotifyMessage("Tweet sent");
                    }
                }
                CollapseTweetBox();
                btnTweet.IsChecked = false;

            }
            catch (AuthFailureException ex)
            {
                MessageBox.Show(ex.Message);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                txtTweets.Text = string.Empty;
                _currentMode = TOBEntityEnum.Status;
            }
        }
예제 #3
0
        public void TweetActions(object entitybase, TOBEntityEnum tweetEnum)
        {
            _currentMode = tweetEnum;
            btnTweet.IsChecked = true;

            string screenname = null;
            string text = null;

            if (entitybase is Status)
            {
                this.status = entitybase as Status;
                screenname = status.UserProfile.ScreenName;
                text = status.Text;
            }
            else if (entitybase is TweetSharp.TwitterStatus)
            {
                TweetSharp.TwitterStatus ts = (entitybase as TweetSharp.TwitterStatus);
                screenname = ts.User.ScreenName;
                text = ts.Text;
            }
            else if (entitybase is TweetSharp.TwitterSearchStatus)
            {
                TweetSharp.TwitterSearchStatus ts = (entitybase as TweetSharp.TwitterSearchStatus);
                screenname = ts.FromUserScreenName;
                text = ts.Text;
            }
            else if (entitybase is DirectMessage)
            {
                this._directMessage = entitybase as DirectMessage;
                screenname = _directMessage.UserProfile.ScreenName;
            }
            else if (entitybase is string)
            {
                txtTweets.Text = "d " + entitybase + " ";
            }

            switch (tweetEnum)
            {
                case TOBEntityEnum.ReTweet:
                    {
                        txtTweets.Text = "RT " + "@" + screenname + ": " + text;
                        break;
                    }
                case TOBEntityEnum.DirectMessages:
                    {
                        txtTweets.Text = "d " + screenname + " ";
                        break;
                    }
                case TOBEntityEnum.Replies:
                    {
                        txtTweets.Text = "@" + screenname + " ";
                        break;
                    }
            }

            ExpandTweetBox();
        }
예제 #4
0
 private void btnCancel_Click(object sender, System.Windows.RoutedEventArgs e)
 {
     CollapseTweetBox();
     btnTweet.IsChecked = false;
     txtTweets.Text="";
     _currentMode = TOBEntityEnum.Status;
 }
예제 #5
0
        private void SetMessageObjectPanelCollection(UserAllTweets moPanel, TOBEntityEnum tweetEnum, List<int> accList)
        {
            Collection<TOBEntityBase> collection = null;

            switch (tweetEnum)
            {
                case TOBEntityEnum.Home:
                    {
                        break;
                    }
                case TOBEntityEnum.ReTweet:
                    {
                        moPanel.CollectionFilter = ReTweetCollectionFilter;
                        break;
                    }
                case TOBEntityEnum.DirectMessages:
                    {
                        if (accList != null)
                        {
                            collection = new Collection<TOBEntityBase>(_directMessagesCollection.Where(s => accList.Contains((int)(s as DirectMessage).AccountId)).ToList());
                        }
                        else
                        {
                            collection = new Collection<TOBEntityBase>(_directMessagesCollection);
                        }

                        moPanel.CollectionTypeFilter = TOBEntityEnum.DirectMessages;

                        break;
                    }
                case TOBEntityEnum.Replies:
                    {
                        moPanel.CollectionFilter = ReplyCollectionFilter;
                        break;
                    }
                case TOBEntityEnum.Favorite:
                    {
                        moPanel.CollectionFilter = FavoriteCollectionFilter;
                        break;
                    }
            }

            if (collection == null)
            {
                if (accList != null)
                {
                    collection = new Collection<TOBEntityBase>(_statusCollection.Where(s => accList.Contains((int)(s as Status).AccountId)).ToList());
                }
                else
                {
                    collection = _statusCollection;
                }

                moPanel.Collection = collection;
            }
        }