Exemple #1
0
        bool UpdateForChangedFiles(CommandUpdateEventArgs e)
        {
            ISvnLogChangedPathItem change = EnumTools.GetSingle(e.Selection.GetSelection <ISvnLogChangedPathItem>());

            if (change == null)
            {
                return(false);
            }

            // Skip all the files we cannot diff
            switch (change.Action)
            {
            case SvnChangeAction.Add:
                if (change.CopyFromRevision >= 0)
                {
                    break;     // We can retrieve this file using CopyFromPath
                }
                e.Enabled = false;
                break;

            case SvnChangeAction.Delete:
                e.Enabled = false;
                break;
            }

            if (change.NodeKind == SvnNodeKind.Directory)
            {
                e.Enabled = false;
            }

            return(true);
        }
Exemple #2
0
        void PerformFileChanges(CommandEventArgs e)
        {
            ISvnLogChangedPathItem item = EnumTools.GetSingle(e.Selection.GetSelection <ISvnLogChangedPathItem>());

            if (item != null)
            {
                switch (item.Action)
                {
                case SvnChangeAction.Delete:
                    return;

                case SvnChangeAction.Add:
                case SvnChangeAction.Replace:
                    if (item.CopyFromRevision < 0)
                    {
                        return;
                    }
                    break;
                }

                ExecuteDiff(e, new SvnOrigin[] { item.Origin }, new SvnRevisionRange(item.Revision - 1, item.Revision));
            }
        }