Exemplo n.º 1
0
        private void DisplayRefs()
        {
            _items.Clear();
            RefsList.Clear();

            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_BranchName, 150);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_DateLastCommit, 120);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_LastCommit, 200);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_LastAuthor, 80);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_SHA1, 80);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_Description, 100);

            foreach (var r in _repo.Refs)
            {
                if (r.IsLocalBranch && _headsNode != null ||
                    r.IsRemoteTrackingBranch && _remotesNode != null ||
                    r.IsTag && _tagsNode != null ||
                    r.IsNote && _notesNode != null)
                {
                    ListViewItem lvi = new ListViewItem();

                    lvi.Tag  = r;
                    lvi.Name = r.CanonicalName;
                    lvi.Text = r.CanonicalName.Replace("refs/", string.Empty);

                    Commit commit      = null;
                    string description = string.Empty;

                    if (r.IsTag)
                    {
                        var tag = _repo.Tags[r.CanonicalName];
                        commit      = tag?.Target as Commit;
                        description = tag?.Annotation?.Message;
                    }

                    if (r.IsNote)
                    {
                        var note = _repo.Notes[r.CanonicalName];
                    }

                    if (r.IsLocalBranch || r.IsRemoteTrackingBranch)
                    {
                        var branch = _repo.Branches[r.CanonicalName];
                        commit      = branch?.Tip;
                        description = _repo.GetBranchDescription(branch?.FriendlyName);
                    }

                    lvi.SubItems.Add(commit?.Author.When.ToString("G"));
                    lvi.SubItems.Add(commit?.MessageShort);
                    lvi.SubItems.Add(commit?.Author.Name);
                    lvi.SubItems.Add(commit?.Sha);
                    lvi.SubItems.Add(description);

                    _items.Add(lvi);
                }
            }

            RefsList.Items.Clear();
            RefsList.Items.AddRange(_items.AsParallel().Where(i => IsItemFiltered(i)).ToArray());
        }
Exemplo n.º 2
0
        private void DisplayTags()
        {
            _items.Clear();
            RefsList.Clear();

            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_BranchName, 150);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_DateLastCommit, 120);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_LastCommit, 200);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_LastAuthor, 80);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_SHA1, 80);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_Description, 100);

            foreach (var tag in _repo.Tags)
            {
                ListViewItem lvi = new ListViewItem();
                lvi.Tag  = tag;
                lvi.Name = tag.FriendlyName;
                lvi.Text = tag.FriendlyName;

                var commit = tag.Target as Commit;
                lvi.SubItems.Add(commit?.Author.When.ToString("G"));
                lvi.SubItems.Add(commit?.MessageShort);
                lvi.SubItems.Add(commit?.Author.Name);
                lvi.SubItems.Add(commit?.Sha);
                lvi.SubItems.Add(tag.Annotation?.Message);

                _items.Add(lvi);
            }

            RefsList.Items.Clear();
            RefsList.Items.AddRange(_items.AsParallel().Where(i => IsItemFiltered(i)).ToArray());
        }
Exemplo n.º 3
0
 private void RefList_SetFocus()
 {
     if (SelectedReference is Branch)
     {
         var item = RefsList.Items[(SelectedReference as Branch).FriendlyName];
         if (item != null)
         {
             item.Focused  = true;
             item.Selected = true;
             RefsList.Focus();
         }
     }
 }
Exemplo n.º 4
0
        private void DisplayRemotes([Optional] Remote remote)
        {
            _items.Clear();
            RefsList.Clear();

            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_BranchName, 150);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_TrackedBranch, 120);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_DateLastCommit, 120);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_LastCommit, 200);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_LastAuthor, 80);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_SHA1, 80);
            RefsList.Columns.Add(VBAGitUI.BrowseReferencesForm_Description, 100);

            var branches = (remote == null) ? _repo.Branches : _repo.Branches.Where(b => b.Remote == remote);

            foreach (var branch in branches)
            {
                if (branch.IsRemote)
                {
                    ListViewItem lvi = new ListViewItem();
                    lvi.Tag  = branch;
                    lvi.Name = branch.FriendlyName;
                    lvi.Text = (remote == null) ? branch.FriendlyName : branch.FriendlyName.Replace(remote.Name + "/", string.Empty);
                    lvi.SubItems.Add(branch.TrackedBranch?.FriendlyName);
                    lvi.SubItems.Add(branch.Tip?.Author.When.ToString("G"));
                    lvi.SubItems.Add(branch.Tip?.MessageShort);
                    lvi.SubItems.Add(branch.Tip?.Author.Name);
                    lvi.SubItems.Add(branch.Tip?.Sha);
                    lvi.SubItems.Add(_repo.GetBranchDescription(branch.FriendlyName));

                    _items.Add(lvi);
                }
            }

            RefsList.Items.Clear();
            RefsList.Items.AddRange(_items.AsParallel().Where(i => IsItemFiltered(i)).ToArray());
        }