Пример #1
0
        private void ReinsertFakeItems(IGraphBuilder <Revision> builder)
        {
            int fakeItems   = 0;
            int graphLength = 0;

            if (_stagedItem != null)
            {
                if (_currentIndex != -1)
                {
                    Items.Insert(_currentIndex, _stagedItem);
                    ++_currentIndex;
                    _stagedItem.Graph = builder.AddGraphLineToTop(_currentRevisionItem.Graph);
                    graphLength       = _stagedItem.Graph.Length;
                    ++fakeItems;
                }
                else if (_repository.IsEmpty)
                {
                    Items.Insert(0, _stagedItem);
                    _stagedItem.Graph = builder.AddGraphLineToTop(null);
                    graphLength       = _stagedItem.Graph.Length;
                    ++fakeItems;
                }
                else
                {
                    _stagedItem = null;
                }
            }
            if (_unstagedItem != null)
            {
                if (_currentIndex != -1)
                {
                    if (_stagedItem != null)
                    {
                        Items.Insert(_currentIndex - 1, _unstagedItem);
                    }
                    else
                    {
                        Items.Insert(_currentIndex, _unstagedItem);
                    }
                    ++_currentIndex;
                    if (_unstagedItem != null && _stagedItem != null)
                    {
                        _unstagedItem.Graph = builder.AddGraphLineToTop(_stagedItem.Graph);
                    }
                    else
                    {
                        if (_currentRevisionItem != null)
                        {
                            _unstagedItem.Graph = builder.AddGraphLineToTop(_currentRevisionItem.Graph);
                        }
                        else
                        {
                            _unstagedItem.Graph = builder.AddGraphLineToTop(null);
                        }
                    }
                    if (_unstagedItem.Graph.Length > graphLength)
                    {
                        graphLength = _unstagedItem.Graph.Length;
                    }
                    ++fakeItems;
                }
                else if (_repository.IsEmpty)
                {
                    Items.Insert(0, _unstagedItem);
                    if (_unstagedItem != null && _stagedItem != null)
                    {
                        _unstagedItem.Graph = builder.AddGraphLineToTop(_stagedItem.Graph);
                    }
                    else
                    {
                        if (_currentRevisionItem != null)
                        {
                            _unstagedItem.Graph = builder.AddGraphLineToTop(_currentRevisionItem.Graph);
                        }
                        else
                        {
                            _unstagedItem.Graph = builder.AddGraphLineToTop(null);
                        }
                    }
                    if (_unstagedItem.Graph.Length > graphLength)
                    {
                        graphLength = _unstagedItem.Graph.Length;
                    }
                    ++fakeItems;
                }
                else
                {
                    _unstagedItem = null;
                }
            }
            if (fakeItems != 0)
            {
                graphLength *= 21;
                var graphColumn = GraphColumn;
                if (graphColumn != null)
                {
                    if (graphColumn.Width < graphLength)
                    {
                        graphColumn.Width = graphLength;
                    }
                    else
                    {
                        graphColumn.AutoSize();
                    }
                }
            }
        }
Пример #2
0
 private void ReinsertFakeItems(IGraphBuilder<Revision> builder)
 {
     int fakeItems = 0;
     int graphLength = 0;
     if(_stagedItem != null)
     {
         if(_currentIndex != -1)
         {
             Items.Insert(_currentIndex, _stagedItem);
             ++_currentIndex;
             _stagedItem.Graph = builder.AddGraphLineToTop(_currentRevisionItem.Graph);
             graphLength = _stagedItem.Graph.Length;
             ++fakeItems;
         }
         else if(_repository.IsEmpty)
         {
             Items.Insert(0, _stagedItem);
             _stagedItem.Graph = builder.AddGraphLineToTop(null);
             graphLength = _stagedItem.Graph.Length;
             ++fakeItems;
         }
         else
         {
             _stagedItem = null;
         }
     }
     if(_unstagedItem != null)
     {
         if(_currentIndex != -1)
         {
             if(_stagedItem != null)
             {
                 Items.Insert(_currentIndex - 1, _unstagedItem);
             }
             else
             {
                 Items.Insert(_currentIndex, _unstagedItem);
             }
             ++_currentIndex;
             if(_unstagedItem != null && _stagedItem != null)
             {
                 _unstagedItem.Graph = builder.AddGraphLineToTop(_stagedItem.Graph);
             }
             else
             {
                 if(_currentRevisionItem != null)
                 {
                     _unstagedItem.Graph = builder.AddGraphLineToTop(_currentRevisionItem.Graph);
                 }
                 else
                 {
                     _unstagedItem.Graph = builder.AddGraphLineToTop(null);
                 }
             }
             if(_unstagedItem.Graph.Length > graphLength)
             {
                 graphLength = _unstagedItem.Graph.Length;
             }
             ++fakeItems;
         }
         else if(_repository.IsEmpty)
         {
             Items.Insert(0, _unstagedItem);
             if(_unstagedItem != null && _stagedItem != null)
             {
                 _unstagedItem.Graph = builder.AddGraphLineToTop(_stagedItem.Graph);
             }
             else
             {
                 if(_currentRevisionItem != null)
                 {
                     _unstagedItem.Graph = builder.AddGraphLineToTop(_currentRevisionItem.Graph);
                 }
                 else
                 {
                     _unstagedItem.Graph = builder.AddGraphLineToTop(null);
                 }
             }
             if(_unstagedItem.Graph.Length > graphLength)
             {
                 graphLength = _unstagedItem.Graph.Length;
             }
             ++fakeItems;
         }
         else
         {
             _unstagedItem = null;
         }
     }
     if(fakeItems != 0)
     {
         graphLength *= 21;
         var graphColumn = GraphColumn;
         if(graphColumn != null)
         {
             if(graphColumn.Width < graphLength)
             {
                 graphColumn.Width = graphLength;
             }
             else
             {
                 graphColumn.AutoSize();
             }
         }
     }
 }