Esempio n. 1
0
 private void DeleteItem(UserGroupTimeLine t, UserGroupTimeLine.GroupTerm gt)
 {
     if(PockeTwit.Localization.LocalizedMessageBox.Show("Are you sure you want to remove {0} from this group?", "Remove", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, gt.Name)==DialogResult.Yes)
     {
         t.RemoveItem(gt.Term);
         ResetGroupItems();
         this.NeedsReRender = true;
     }
 }
Esempio n. 2
0
        private void CreateNewGroup(bool Exclusive)
        {
            StatusItem selectedItem = (StatusItem)statList.SelectedItem;
            if (selectedItem == null) { return; }
            if (selectedItem.Tweet.user == null) { return; }

            using (DefineGroup d = new DefineGroup())
            {
                d.Owner = this;
                if (d.ShowDialog() == DialogResult.OK)
                {
                    UserGroupTimeLine t = new UserGroupTimeLine();
                    t.name = d.GroupName;

                    if(AddUserToGroup(t, Exclusive, false))
                    {
                        SpecialTimeLinesRepository.Add(t);

                        AddGroupSelectMenuItem(t);

                        AddAddUserToGroupMenuItem(t);
                        SpecialTimeLinesRepository.Save();
                        if(Exclusive)
                        {
                            Cursor.Current = Cursors.WaitCursor;
                            ReloadTimeLine();
                            Cursor.Current = Cursors.Default;
                        }
                    }
                }
                d.Dispose();
            }
        }
Esempio n. 3
0
        private bool AddUserToGroup(UserGroupTimeLine t, bool Exclusive, bool ReloadImmediately)
        {
            StatusItem selectedItem = (StatusItem)statList.SelectedItem;
            if (selectedItem == null) { return false; }
            if (selectedItem.Tweet.user == null) { return false; }

            string Message = "";
            switch (Exclusive)
            {
                case true:
                    Message="This will move {0} out of the Friends timeline and into the {1} group.\n\nAre you sure you want to proceed?";
                    break;
                case false:
                    Message = "This will copy {0} into the {1} group and still show them in the Friends timeline.\n\nAre you sure you want to proceed?";

                    break;

            }
            if (PockeTwit.Localization.LocalizedMessageBox.Show(Message, "Group User", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, selectedItem.Tweet.user.screen_name, t.name) == DialogResult.Yes)
            {
                t.AddItem(selectedItem.Tweet.user.id, selectedItem.Tweet.user.screen_name, Exclusive);
                SpecialTimeLinesRepository.Save();
            }
            else
            {
                return false;
            }
            if(Exclusive && ReloadImmediately)
            {
                Cursor.Current = Cursors.WaitCursor;
                ReloadTimeLine();
                Cursor.Current = Cursors.Default;
            }
            return true;
        }
Esempio n. 4
0
 private bool AddUserToGroup(UserGroupTimeLine t, bool Exclusive)
 {
     return AddUserToGroup(t, Exclusive, true);
 }
Esempio n. 5
0
        private void AddAddUserToGroupMenuItem(UserGroupTimeLine t)
        {
            delMenuClicked copyItemClicked = () => AddUserToGroup(t, false);

            delMenuClicked moveItemClicked = () => AddUserToGroup(t, true);

            FingerUI.Menu.SideMenuItem copyitem = new FingerUI.Menu.SideMenuItem(copyItemClicked, t.name, statList.RightMenu);
            FingerUI.Menu.SideMenuItem moveitem = new FingerUI.Menu.SideMenuItem(moveItemClicked, t.name, statList.RightMenu);
            MoveToGroupMenuItem.SubMenuItems.Add(moveitem);
            CopyToGroupMenuItem.SubMenuItems.Add(copyitem);
        }
        public static void Load()
        {
            using (var conn = DataBaseUtility.GetConnection())
            {
                conn.Open();
                using (var comm = new SQLiteCommand(conn))
                {
                    comm.CommandText =
                        "SELECT groupname, userid, exclusive, users.screenname FROM usersInGroups INNER JOIN users ON usersInGroups.userid = users.id";
                    using (var r = comm.ExecuteReader())
                    {
                        while (r.Read())
                        {
                            var groupName = r.GetString(0);
                            var userID = r.GetString(1);
                            var exclusive = r.GetBoolean(2);
                            var screenName = r.GetString(3);
                            var thisLine = new UserGroupTimeLine();
                            if (Items.ContainsKey(groupName))
                            {
                                thisLine = (UserGroupTimeLine) Items[groupName];
                            }
                            else
                            {
                                thisLine.name = groupName;
                                Add(thisLine);
                            }
                            thisLine.AddItem(userID, screenName, exclusive);
                        }
                    }

                    comm.CommandText =
                        "SELECT searchName, searchTerm, autoUpdate from savedSearches;";

                    try
                    {

                        using (var r = comm.ExecuteReader())
                        {
                            while (r.Read())
                            {
                                var searchName = r.GetString(0);
                                var searchTerm = r.GetString(1);
                                var autoUpdate = r.GetBoolean(2);

                                var savedLine = new SavedSearchTimeLine
                                                    {
                                                        name = searchName,
                                                        SearchPhrase = searchTerm,
                                                        autoUpdate = autoUpdate
                                                    };
                                Add(savedLine);
                            }
                        }
                    }
                    //Ignore it when we have a mismatched save search table.
                    catch{}
                }
            }
        }
Esempio n. 7
0
        private void AddGroupSelectMenuItem(UserGroupTimeLine t)
        {
            FingerUI.delMenuClicked showItemClicked = delegate()
            {
                ShowUserGroup(t);
            };

            GroupsMenuItem.Visible = true;
            FingerUI.SideMenuItem item = new FingerUI.SideMenuItem(showItemClicked, t.name, statList.LeftMenu, t.ListName);
            GroupsMenuItem.SubMenuItems.Add(item);
        }
Esempio n. 8
0
 private void ToggleExclusive(UserGroupTimeLine t, UserGroupTimeLine.GroupTerm gt, CheckBox sender)
 {
     gt.Exclusive = sender.Checked;
     this.NeedsReRender = true;
     SpecialTimeLinesRepository.Save();
 }
Esempio n. 9
0
        private void GetConversation(HistoryItem history)
        {
            currentGroup = null;
            UpdateHistoryPosition();
            HistoryItem i = new HistoryItem();
            Library.status lastStatus;
            Yedda.Twitter Conn;

            if (history == null)
            {
                if (statList.SelectedItem == null) { return; }
                FingerUI.StatusItem selectedItem = (FingerUI.StatusItem)statList.SelectedItem;
                if (string.IsNullOrEmpty(selectedItem.Tweet.in_reply_to_status_id)) { return; }
                Conn = GetMatchingConnection(selectedItem.Tweet.Account);
                lastStatus = selectedItem.Tweet;

                i.Account = selectedItem.Tweet.Account;
                i.Action = Yedda.Twitter.ActionType.Conversation;
                i.Argument = lastStatus.id;
            }
            else
            {
                i = history;
                Conn = GetMatchingConnection(history.Account);
                try
                {
                    lastStatus = Library.status.DeserializeSingle(Conn.ShowSingleStatus(i.Argument), i.Account);
                }
                catch
                {
                    return;
                }
            }
            ChangeCursor(Cursors.WaitCursor);

            //List<Library.status> Conversation = GetConversationFROMTHEFUTURE(lastStatus);
            List<Library.status> Conversation = new List<PockeTwit.Library.status>();
            History.Push(i);

            while (!string.IsNullOrEmpty(lastStatus.in_reply_to_status_id))
            {
                Conversation.Add(lastStatus);
                try
                {
                    lastStatus = Library.status.DeserializeSingle(Conn.ShowSingleStatus(lastStatus.in_reply_to_status_id), Conn.AccountInfo);
                }
                catch
                {
                    lastStatus = null;
                    break;
                }
            }
            if (lastStatus != null)
            {
                Conversation.Add(lastStatus);
            }
            statList.SwitchTolist("Conversation");
            statList.ClearVisible();
            AddStatusesToList(Conversation.ToArray());
            ChangeCursor(Cursors.Default);
            this.SetLeftMenu();
        }
Esempio n. 10
0
        private void ShowUserGroup(UserGroupTimeLine t)
        {
            UpdateHistoryPosition();
            currentGroup = t;
            ChangeCursor(Cursors.WaitCursor);
            HistoryItem i = new HistoryItem();
            i.Action = Yedda.Twitter.ActionType.Search;
            i.Argument = t.name;
            History.Push(i);

            SwitchToList(t.ListName);
            this.statList.ClearVisible();
            AddStatusesToList(Manager.GetGroupedTimeLine(t));
            
            ChangeCursor(Cursors.Default);
        }
Esempio n. 11
0
        private void ShowUserTimeLine()
        {
            currentGroup = null;
            UpdateHistoryPosition();
            ChangeCursor(Cursors.WaitCursor);
            FingerUI.StatusItem statItem = (FingerUI.StatusItem)statList.SelectedItem;
            if (statItem == null) { return; }
            ShowUserID = statItem.Tweet.user.screen_name;
            CurrentlySelectedAccount = statItem.Tweet.Account;
            Yedda.Twitter Conn = GetMatchingConnection(CurrentlySelectedAccount);
            SwitchToList("@User_TimeLine");
            HistoryItem i = new HistoryItem();
            i.Action = Yedda.Twitter.ActionType.User_Timeline;
            i.Account = CurrentlySelectedAccount;
            i.Argument = ShowUserID;
            History.Push(i);
            AddStatusesToList(Manager.GetUserTimeLine(Conn, ShowUserID));
            ChangeCursor(Cursors.Default);

            return;
        }
Esempio n. 12
0
 private void ShowMessagesTimeLine()
 {
     currentGroup = null;
     ChangeCursor(Cursors.WaitCursor);
     SwitchToList("Messages_TimeLine");
     History.Clear();
     HistoryItem i = new HistoryItem();
     i.Action = Yedda.Twitter.ActionType.Replies;
     History.Push(i);
     statList.SetSelectedMenu(RefreshMessagesMenuItem);
     AddStatusesToList(Manager.GetMessagesImmediately());
     ChangeCursor(Cursors.Default);
 }
Esempio n. 13
0
 private void ShowFriendsTimeLine()
 {
     currentGroup = null;
     ChangeCursor(Cursors.WaitCursor);
     bool Redraw = statList.CurrentList() != "Friends_TimeLine";
     SwitchToList("Friends_TimeLine");
     History.Clear();
     HistoryItem i = new HistoryItem();
     i.Action = Yedda.Twitter.ActionType.Friends_Timeline;
     History.Push(i);
     statList.SetSelectedMenu(RefreshFriendsTimeLineMenuItem);
     AddStatusesToList(Manager.GetFriendsImmediately());
     ChangeCursor(Cursors.Default);
 }
Esempio n. 14
0
 private void ShowPublicTimeLine()
 {
     currentGroup = null;
     ChangeCursor(Cursors.WaitCursor);
     
     SwitchToList("Public_TimeLine");
     HistoryItem i = new HistoryItem();
     i.Action = Yedda.Twitter.ActionType.Public_Timeline;
     History.Push(i);
     statList.SetSelectedMenu(PublicMenuItem);
     AddStatusesToList(Manager.GetPublicTimeLine());
     ChangeCursor(Cursors.Default);
 }
Esempio n. 15
0
 private void ShowFavorites()
 {
     currentGroup = null;
     ChangeCursor(Cursors.WaitCursor);
     
     SwitchToList("Favorites_TimeLine");
     HistoryItem i = new HistoryItem();
     i.Action = Yedda.Twitter.ActionType.Favorites;
     History.Push(i);
     statList.SetSelectedMenu(ViewFavoritesMenuItem);
     AddStatusesToList(Manager.GetFavorites());
     ChangeCursor(Cursors.Default);
 }