예제 #1
0
        private void SetStatus()
        {
            Status status = UserControler.GetStatus(_slackAdapter, _slackAdapter.CurrentUser);

            if (status != null && status.Presence != null)
            {
                switch (status.Presence)
                {
                case "active":
                    pictureBoxStatus.Image = status.Last_Activity == null ? imageListStatus.Images[imageListStatus.Images.IndexOfKey("connected")] : imageListStatus.Images[imageListStatus.Images.IndexOfKey("disconnected")];
                    break;

                case "away":
                    pictureBoxStatus.Image = imageListStatus.Images[imageListStatus.Images.IndexOfKey("disconnected")];
                    break;

                default:
                    pictureBoxStatus.Image = imageListStatus.Images[imageListStatus.Images.IndexOfKey("unknow")];
                    break;
                }
            }
            else
            {
                pictureBoxStatus.Image = imageListStatus.Images[imageListStatus.Images.IndexOfKey("unknow")];
            }
        }
예제 #2
0
        private void LoadUsers()
        {
            try
            {
                Status   connected;
                TreeNode tn;
                if (_tmpTnUsers == null)
                {
                    _tmpTnUsers = new TreeView();
                }
                _tmpTnUsers.Nodes.Clear();
                if (SlackAdapter.Users != null)
                {
                    TreeNode root = _tmpTnUsers.Nodes.Add("Members");
                    root.ImageIndex = -1;
                    root.ImageKey   = null;
                    foreach (Member item in SlackAdapter.Users)
                    {
                        connected = UserControler.GetStatus(_slackAdapter, item);
                        tn        = new TreeNode(item.Name);
                        tn.Tag    = item;
                        switch (connected.Presence)
                        {
                        case "active":
                            tn.ImageKey = connected.Last_Activity == null ? "connected" : "unactive";
                            break;

                        case "away":
                            tn.ImageKey = "disconnected";
                            break;

                        default:
                            tn.ImageKey = "unknow";
                            break;
                        }
                        tn.ImageIndex = imageListStatus.Images.IndexOfKey(tn.ImageKey);
                        root.Nodes.Add(tn);
                    }
                    root.ExpandAll();
                }
            }
            catch (Exception exp)
            {
            }
        }