コード例 #1
0
        public SubmitListView()
        {
            SmartColumn path     = new SmartColumn(this, "Path", 60, "Path");
            SmartColumn project  = new SmartColumn(this, "Project", 60, "Project");
            SmartColumn change   = new SmartColumn(this, "Change", 60, "Change");
            SmartColumn fullPath = new SmartColumn(this, "Full Path", 60, "FullPath");

            Columns.AddRange(new ColumnHeader[]
            {
                path,
                project,
                change,
                fullPath
            });

            project.Groupable = true;

            path.Hideable = false;

            SortColumns.Add(path);
            GroupColumns.Add(project);

            FinalSortColumn = path;

            ShowSelectAllCheckBox = true;
        }
コード例 #2
0
ファイル: ListViewSort.cs プロジェクト: windygu/AnkhSVN
        protected override void OnExecute(SmartListView list, CommandEventArgs e)
        {
            bool extend = ((Control.ModifierKeys & Keys.Shift) != 0);

            int         n      = (int)(e.Command - AnkhCommand.ListViewSort0);
            SmartColumn column = list.AllColumns[n];

            if (list.SortColumns.Contains(column))
            {
                list.SortColumns.Remove(column);

                list.UpdateSortGlyphs();

                if (list.SortColumns.Count > 0)
                {
                    list.Sort();
                }
            }
            else if (!extend)
            {
                list.SortColumns.Clear();
                list.SortColumns.Add(column);
                list.UpdateSortGlyphs();
                list.Sort();
            }
            else
            {
                list.SortColumns.Add(column);
                list.UpdateSortGlyphs();
                list.Sort();
            }
        }
コード例 #3
0
        public SubmitListView()
        {
            SmartColumn path = new SmartColumn(this, "Path", 60, "Path");
            SmartColumn project = new SmartColumn(this, "Project", 60, "Project");
            SmartColumn change = new SmartColumn(this, "Change", 60, "Change");
            SmartColumn fullPath = new SmartColumn(this, "Full Path", 60, "FullPath");

            Columns.AddRange(new ColumnHeader[]
            {
                path,
                project,
                change,
                fullPath
            });

            project.Groupable = true;

            path.Hideable = false;

            SortColumns.Add(path);
            GroupColumns.Add(project);

            FinalSortColumn = path;

            ShowSelectAllCheckBox = true;
        }
コード例 #4
0
ファイル: ListViewSort.cs プロジェクト: windygu/AnkhSVN
        protected override void OnUpdate(SmartListView list, CommandUpdateEventArgs e)
        {
            int n = (int)(e.Command - AnkhCommand.ListViewSort0);

            if (n >= list.AllColumns.Count || n < 0)
            {
                e.Text           = "";
                e.DynamicMenuEnd = true;
                return;
            }

            SmartColumn column = list.AllColumns[n];

            if (e.TextQueryType == TextQueryType.Name)
            {
                e.Text = column.MenuText;
            }

            if (!column.Sortable)
            {
                e.Enabled = false;
            }

            e.Checked = list.SortColumns.Contains(column);
        }
コード例 #5
0
        void Initialize()
        {
            SmartColumn path                = new SmartColumn(this, PCResources.PathColumn, 288, "Path");
            SmartColumn project             = new SmartColumn(this, PCResources.ProjectColumn, 76, "Project");
            SmartColumn conflictType        = new SmartColumn(this, PCResources.ConflictTypeColumn, 92, "ConflictType");
            SmartColumn conflictDescription = new SmartColumn(this, PCResources.ConflictDescriptionColumn, 288, "ConflictDescription");

            SmartColumn change   = new SmartColumn(this, PCResources.ChangeColumn, 76, "Change");
            SmartColumn fullPath = new SmartColumn(this, PCResources.FullPathColumn, 327, "FullPath");

            SmartColumn changeList  = new SmartColumn(this, PCResources.ChangeListColumn, 76, "ChangeList");
            SmartColumn folder      = new SmartColumn(this, PCResources.FolderColumn, 196, "Folder");
            SmartColumn locked      = new SmartColumn(this, PCResources.LockedColumn, 38, "Locked");
            SmartColumn modified    = new SmartColumn(this, PCResources.ModifiedColumn, 76, "Modified");
            SmartColumn name        = new SmartColumn(this, PCResources.NameColumn, 76, "Name");
            SmartColumn type        = new SmartColumn(this, PCResources.TypeColumn, 76, "Type");
            SmartColumn workingCopy = new SmartColumn(this, PCResources.WorkingCopyColumn, 76, "WorkingCopy");

            Columns.AddRange(new ColumnHeader[]
            {
                path,
                project,
                conflictType,
                conflictDescription,
            });

            modified.Sorter = new SortWrapper(
                delegate(ConflictListItem x, ConflictListItem y)
            {
                return(x.PendingChange.SvnItem.Modified.CompareTo(y.PendingChange.SvnItem.Modified));
            });

            change.Groupable      = true;
            changeList.Groupable  = true;
            folder.Groupable      = true;
            locked.Groupable      = true;
            project.Groupable     = true;
            type.Groupable        = true;
            workingCopy.Groupable = true;

            path.Hideable = false;

            AllColumns.Add(change);
            AllColumns.Add(changeList);
            AllColumns.Add(conflictType);
            AllColumns.Add(conflictDescription);
            AllColumns.Add(folder);
            AllColumns.Add(fullPath);
            AllColumns.Add(locked);
            AllColumns.Add(modified);
            AllColumns.Add(name);
            AllColumns.Add(path);
            AllColumns.Add(project);
            AllColumns.Add(type);
            AllColumns.Add(workingCopy);

            SortColumns.Add(path);

            FinalSortColumn = path;
        }
コード例 #6
0
ファイル: LogRevisionControl.cs プロジェクト: windygu/AnkhSVN
        void Init()
        {
            _expand         = new SmartColumn(this, "\x00A0", "&Expand Merges", 12, HorizontalAlignment.Left);
            _revisionColumn = new SmartColumn(this, "&Revision", 64, HorizontalAlignment.Right);
            SmartColumn author = new SmartColumn(this, "&Author", 73);
            SmartColumn date   = new SmartColumn(this, "&Date", 118);
            SmartColumn issue  = new SmartColumn(this, "&Issue", 60);

            _messageColumn = new SmartColumn(this, "&Message", 300);

            _expand.Hideable = false;
            _expand.Sortable = _revisionColumn.Sortable = author.Sortable = date.Sortable = issue.Sortable = _messageColumn.Sortable = false;

            AllColumns.Add(_expand);
            AllColumns.Add(_revisionColumn);
            AllColumns.Add(author);

            AllColumns.Add(date);
            AllColumns.Add(issue);
            AllColumns.Add(_messageColumn);

            // The listview can't align the first column right. We switch their display position
            // to work around this
            Columns.AddRange(
                new ColumnHeader[]
            {
                _expand,
                _revisionColumn,
                author,
                date,
                _messageColumn
            });
        }
コード例 #7
0
        public RepositoryProviderPage()
        {
            Text        = RepositoryWizardResources.RepoProviderPageHeaderTitle;
            Description = RepositoryWizardResources.RepoProviderPageHeaderMessage;
            InitializeComponent();
            SmartColumn providerName = new SmartColumn(this.providerListView, "&Provider", 200, "RepositoryProviderName");

            this.providerListView.AllColumns.Add(providerName);
            this.providerListView.Columns.AddRange(
                new ColumnHeader[]
            {
                providerName
            });
        }
コード例 #8
0
        void Init()
        {
            SmartColumn issueId = new SmartColumn(this, "&Issue Id", 100, "IssueId");

            AllColumns.Add(issueId);

            Columns.AddRange(
                new ColumnHeader[]
            {
                issueId
            });

            SortColumns.Add(issueId);
            FinalSortColumn = issueId;
        }
コード例 #9
0
ファイル: ListViewShow.cs プロジェクト: windygu/AnkhSVN
        protected override void OnExecute(SmartListView list, CommandEventArgs e)
        {
            int n = (int)(e.Command - AnkhCommand.ListViewShow0);

            SmartColumn sc  = list.AllColumns[n];
            int         col = sc.Index;

            if (col > 0)
            {
                list.Columns.Remove(sc);

                if (!list.VirtualMode)
                {
                    Debug.Assert(sc.Index < 0);

                    foreach (ListViewItem li in list.Items)
                    {
                        if (li.SubItems.Count > col)
                        {
                            li.SubItems.RemoveAt(col);
                        }
                    }
                }
            }
            else
            {
                list.Columns.Add(sc);

                if (!list.VirtualMode)
                {
                    col = sc.Index;
                    foreach (ListViewItem li in list.Items)
                    {
                        SmartListViewItem si = li as SmartListViewItem;

                        if (si != null)
                        {
                            si.SetValue(sc.AllColumnsIndex, si.GetValue(sc.AllColumnsIndex));
                        }
                    }
                }
            }
        }
コード例 #10
0
        void RefreshFileList()
        {
            fileView.Items.Clear();

            RepositoryTreeNode tn = treeView.SelectedNode as RepositoryTreeNode;

            if (tn != null && tn.Origin != null)
            {
                foreach (RepositoryTreeNode sn in tn.Nodes)
                {
                    if (sn.FolderItems.Contains(sn.RawUri))
                    {
                        ISvnRepositoryListItem ea   = sn.FolderItems[sn.RawUri];
                        RepositoryListItem     item = new RepositoryListItem(fileView, ea, tn.Origin, IconMapper);

                        fileView.Items.Add(item);
                    }
                }
                foreach (ISvnRepositoryListItem ee in tn.FolderItems)
                {
                    if (ee.Uri != tn.RawUri)
                    {
                        RepositoryListItem item = new RepositoryListItem(fileView, ee, tn.Origin, IconMapper);

                        fileView.Items.Add(item);
                    }
                }

                if (fileView.Items.Count > 0)
                {
                    SmartColumn fileColumn = fileView.AllColumns[0];

                    if (fileColumn.DisplayIndex >= 0)
                    {
                        fileColumn.AutoResize(ColumnHeaderAutoResizeStyle.ColumnContent);
                    }
                }
            }
        }
コード例 #11
0
ファイル: ListViewGroup.cs プロジェクト: windygu/AnkhSVN
        protected override void OnExecute(SmartListView list, CommandEventArgs e)
        {
            bool extend = ((Control.ModifierKeys & Keys.Shift) != 0);

            int         n      = (int)(e.Command - AnkhCommand.ListViewGroup0);
            SmartColumn column = list.AllColumns[n];

            if (list.GroupColumns.Contains(column))
            {
                list.GroupColumns.Remove(column);
            }
            else if (!extend)
            {
                list.GroupColumns.Clear();
                list.GroupColumns.Add(column);
            }
            else
            {
                list.GroupColumns.Add(column);
            }

            list.RefreshGroups();
        }
コード例 #12
0
        void Init()
        {
            SmartColumn action  = new SmartColumn(this, "&Action", 60);
            SmartColumn path    = new SmartColumn(this, "&Path", 342);
            SmartColumn copy    = new SmartColumn(this, "&Copy", 60);
            SmartColumn copyRev = new SmartColumn(this, "Copy &Revision", 60);

            AllColumns.Add(action);
            AllColumns.Add(path);
            AllColumns.Add(copy);
            AllColumns.Add(copyRev);

            Columns.AddRange(
                new ColumnHeader[]
            {
                action,
                path,
                copy,
                copyRev
            });

            SortColumns.Add(path);
            FinalSortColumn = path;
        }
コード例 #13
0
ファイル: PendingCommitsView.cs プロジェクト: windygu/AnkhSVN
        public void Initialize()
        {
            SmartColumn path     = new SmartColumn(this, PCResources.PathColumn, 288, "Path");
            SmartColumn project  = new SmartColumn(this, PCResources.ProjectColumn, 76, "Project");
            SmartColumn change   = new SmartColumn(this, PCResources.ChangeColumn, 76, "Change");
            SmartColumn fullPath = new SmartColumn(this, PCResources.FullPathColumn, 327, "FullPath");

            SmartColumn changeList  = new SmartColumn(this, PCResources.ChangeListColumn, 76, "ChangeList");
            SmartColumn folder      = new SmartColumn(this, PCResources.FolderColumn, 196, "Folder");
            SmartColumn locked      = new SmartColumn(this, PCResources.LockedColumn, 38, "Locked");
            SmartColumn modified    = new SmartColumn(this, PCResources.ModifiedColumn, 76, "Modified");
            SmartColumn name        = new SmartColumn(this, PCResources.NameColumn, 76, "Name");
            SmartColumn revision    = new SmartColumn(this, PCResources.RevisionColumn, 38, "Revision");
            SmartColumn type        = new SmartColumn(this, PCResources.TypeColumn, 76, "Type");
            SmartColumn workingCopy = new SmartColumn(this, PCResources.WorkingCopyColumn, 76, "WorkingCopy");

            Columns.AddRange(new ColumnHeader[]
            {
                path,
                project,
                change,
                fullPath
            });

            modified.Sorter = new SortWrapper(
                delegate(PendingCommitItem x, PendingCommitItem y)
            {
                return(x.PendingChange.SvnItem.Modified.CompareTo(y.PendingChange.SvnItem.Modified));
            });

            revision.Sorter = new SortWrapper(
                delegate(PendingCommitItem x, PendingCommitItem y)
            {
                long?xRev, yRev;
                xRev = x.PendingChange.Revision;
                yRev = y.PendingChange.Revision;

                if (xRev.HasValue && yRev.HasValue)
                {
                    return(xRev.Value.CompareTo(yRev.Value));
                }
                else if (!xRev.HasValue)
                {
                    return(yRev.HasValue ? 1 : 0);
                }
                else
                {
                    return(-1);
                }
            });

            change.Groupable      = true;
            changeList.Groupable  = true;
            folder.Groupable      = true;
            locked.Groupable      = true;
            project.Groupable     = true;
            type.Groupable        = true;
            workingCopy.Groupable = true;

            path.Hideable = false;

            AllColumns.Add(change);
            AllColumns.Add(changeList);
            AllColumns.Add(folder);
            AllColumns.Add(fullPath);
            AllColumns.Add(locked);
            AllColumns.Add(modified);
            AllColumns.Add(name);
            AllColumns.Add(path);
            AllColumns.Add(project);
            AllColumns.Add(revision);
            AllColumns.Add(type);
            AllColumns.Add(workingCopy);

            SortColumns.Add(path);
            GroupColumns.Add(changeList);

            FinalSortColumn = path;
        }
コード例 #14
0
        private void InitializeColumns()
        {
            AllColumns.Clear();
            SortColumns.Clear();
            Columns.Clear();
            _nameColumn = new SmartColumn(this, "&Name", characterWidth * NameColumnNumberOfCharacters, "Name");
            SmartColumn modified       = new SmartColumn(this, "&Modified", characterWidth * 15, "Modified");
            SmartColumn type           = new SmartColumn(this, "&Type", characterWidth * 20, "Type");
            SmartColumn change         = new SmartColumn(this, "&Change", characterWidth * 15, "Change");
            SmartColumn locked         = new SmartColumn(this, "&Locked", characterWidth * 8, "Locked");
            SmartColumn revision       = new SmartColumn(this, "&Revision", characterWidth * 8, "Revision");
            SmartColumn lastChangeTime = new SmartColumn(this, "Last C&hange", characterWidth * 20, "LastChange");
            SmartColumn lastRev        = new SmartColumn(this, "Last Re&vision", characterWidth * 8, "LastRevision");
            SmartColumn lastAuthor     = new SmartColumn(this, "Last &Author", characterWidth * 8, "LastAuthor");
            SmartColumn contStatus     = new SmartColumn(this, "&Content Status", characterWidth * 15, "ContentStatus");
            SmartColumn propStatus     = new SmartColumn(this, "&Property Status", characterWidth * 15, "PropertyStatus");
            SmartColumn isCopied       = new SmartColumn(this, "C&opied", characterWidth * 6, "Copied");
            SmartColumn isConficted    = new SmartColumn(this, "Co&nflicted", characterWidth * 6, "Conflicted");
            SmartColumn fullPath       = new SmartColumn(this, "Fu&ll Path", characterWidth * 60, "FullPath");

            _nameColumn.Sorter = new SortWrapper(
                delegate(FileSystemListViewItem x, FileSystemListViewItem y)
            {
                if (x.IsDirectory ^ y.IsDirectory)
                {
                    return(x.IsDirectory ? -1 : 1);
                }

                return(StringComparer.OrdinalIgnoreCase.Compare(x.Text, y.Text));
            });

            modified.Sorter = new SortWrapper(
                delegate(FileSystemListViewItem x, FileSystemListViewItem y)
            {
                return(x.Modified.CompareTo(y.Modified));
            });

            lastChangeTime.Sorter = new SortWrapper(
                delegate(FileSystemListViewItem x, FileSystemListViewItem y)
            {
                return(x.SvnItem.Status.LastChangeTime.CompareTo(y.SvnItem.Status.LastChangeTime));
            });

            AllColumns.Add(_nameColumn);
            AllColumns.Add(modified);
            AllColumns.Add(type);
            AllColumns.Add(change);
            AllColumns.Add(locked);
            AllColumns.Add(revision);
            AllColumns.Add(lastChangeTime);
            AllColumns.Add(lastRev);
            AllColumns.Add(lastAuthor);
            AllColumns.Add(contStatus);
            AllColumns.Add(propStatus);
            AllColumns.Add(isCopied);
            AllColumns.Add(isConficted);
            AllColumns.Add(fullPath);

            Columns.AddRange(
                new ColumnHeader[]
            {
                _nameColumn,
                modified,
                type,
                change,
                locked,
                revision
            });

            SortColumns.Add(_nameColumn);
            FinalSortColumn = _nameColumn;
            UpdateSortGlyphs();
        }
コード例 #15
0
        void Initialize()
        {
            SmartColumn path         = new SmartColumn(this, PCResources.PathColumn, 288, "Path");
            SmartColumn project      = new SmartColumn(this, PCResources.ProjectColumn, 76, "Project");
            SmartColumn localChange  = new SmartColumn(this, PCResources.LocalChangeColumn, 102, "LocalChange");
            SmartColumn remoteChange = new SmartColumn(this, PCResources.RemoteChangeColumn, 102, "RemoteChange");
            SmartColumn fullPath     = new SmartColumn(this, PCResources.FullPathColumn, 327, "FullPath");

            SmartColumn changeList  = new SmartColumn(this, PCResources.ChangeListColumn, 76, "ChangeList");
            SmartColumn folder      = new SmartColumn(this, PCResources.FolderColumn, 196, "Folder");
            SmartColumn locked      = new SmartColumn(this, PCResources.LockedColumn, 38, "Locked");
            SmartColumn modified    = new SmartColumn(this, PCResources.ModifiedColumn, 76, "Modified");
            SmartColumn name        = new SmartColumn(this, PCResources.NameColumn, 76, "Name");
            SmartColumn type        = new SmartColumn(this, PCResources.TypeColumn, 76, "Type");
            SmartColumn workingCopy = new SmartColumn(this, PCResources.WorkingCopyColumn, 76, "WorkingCopy");

            Columns.AddRange(new ColumnHeader[]
            {
                path,
                project,
                localChange,
                remoteChange,
                fullPath
            });

            localChange.Groupable  = true;
            remoteChange.Groupable = true;

            changeList.Groupable  = true;
            folder.Groupable      = true;
            locked.Groupable      = true;
            project.Groupable     = true;
            type.Groupable        = true;
            workingCopy.Groupable = true;

            path.Hideable = false;

            modified.Sorter = new SortWrapper(
                delegate(SynchronizeListItem x, SynchronizeListItem y)
            {
                return(x.SvnItem.Modified.CompareTo(y.SvnItem.Modified));
            });

            AllColumns.Add(changeList);
            AllColumns.Add(folder);
            AllColumns.Add(fullPath);
            AllColumns.Add(localChange);
            AllColumns.Add(locked);
            AllColumns.Add(modified);
            AllColumns.Add(name);
            AllColumns.Add(path);
            AllColumns.Add(project);
            AllColumns.Add(remoteChange);
            AllColumns.Add(type);
            AllColumns.Add(workingCopy);

            SortColumns.Add(path);
            GroupColumns.Add(changeList);

            FinalSortColumn = path;
        }
コード例 #16
0
        private void InitializeColumns()
        {
            SmartColumn name      = new SmartColumn(this, RepositoryStrings.NameColumn, 120, "Name");
            SmartColumn type      = new SmartColumn(this, RepositoryStrings.TypeColumn, 100, "Type");
            SmartColumn revision  = new SmartColumn(this, RepositoryStrings.RevisionColumn, 60, "Revision");
            SmartColumn author    = new SmartColumn(this, RepositoryStrings.AuthorColumn, 60, "Author");
            SmartColumn size      = new SmartColumn(this, RepositoryStrings.SizeColumn, 60, "Size");
            SmartColumn date      = new SmartColumn(this, RepositoryStrings.DateColumn, 100, "Date");
            SmartColumn lockOwner = new SmartColumn(this, RepositoryStrings.LockOwnerColumn, 100, "LockOwner");

            name.Sorter = new SortWrapper(
                delegate(RepositoryListItem x, RepositoryListItem y)
            {
                if (x.IsFolder ^ y.IsFolder)
                {
                    return(x.IsFolder ? -1 : 1);
                }

                return(StringComparer.OrdinalIgnoreCase.Compare(x.Text, y.Text));
            });
            size.Sorter = new SortWrapper(
                delegate(RepositoryListItem x, RepositoryListItem y)
            {
                if (x.IsFolder ^ y.IsFolder)
                {
                    return(x.IsFolder ? -1 : 1);
                }

                long lx = x.Entry.FileSize;
                long ly = y.Entry.FileSize;

                if (lx < ly)
                {
                    return(-1);
                }
                else if (lx > ly)
                {
                    return(1);
                }
                else
                {
                    return(0);
                }
            });
            date.Sorter = new SortWrapper(
                delegate(RepositoryListItem x, RepositoryListItem y)
            {
                return(x.Entry.Time.CompareTo(y.Entry.Time));
            });

            AllColumns.Add(name);
            AllColumns.Add(type);
            AllColumns.Add(revision);
            AllColumns.Add(author);
            AllColumns.Add(size);
            AllColumns.Add(date);
            AllColumns.Add(lockOwner);

            Columns.AddRange(new ColumnHeader[]
            {
                name,
                date,
                type,
                revision,
                author,
                size,
                lockOwner
            });

            SortColumns.Add(name);
            FinalSortColumn = name;
            UpdateSortGlyphs();

            FinalSortColumn    = name;
            AllowColumnReorder = true;
        }