public CherryPickerView( IRepository root, IEnumerable <CherryPickConfig> repositories, ICommandService commandService, IHistoryDivergenceService historyDivergenceService) : base(DefaultTitle) { this.repositories = repositories; this.commandService = commandService; this.historyDivergenceService = historyDivergenceService; IsRootMode = repositories.Count() == 1 && repositories.ElementAt(0).Repository == root; listView = new ListView <CommitEntry>( IsRootMode ? new NullColumnDefinition <CommitEntry>() : new ColumnDefinition <CommitEntry>(x => x.Config.Repository.GetName(), 30), new ColumnDefinition <CommitEntry>(x => x.Commit.GetShortSha(), 10), new ColumnDefinition <CommitEntry>(x => x.Commit.MessageShort, "*"), new ColumnDefinition <CommitEntry>(x => x.Commit.Author.Name, 15), new ColumnDefinition <CommitEntry>(x => x.Commit.Committer.When.ToString("g"), 20)) { AllowsMarking = true }; Content = listView; }
public SyncView(IRepository repository, IHistoryDivergenceService historyDivergenceService) : base(Resources.Sync) { this.repository = repository; this.historyDivergenceService = historyDivergenceService; aheadListView = new ListView <Commit>(columnDefinitions); aheadFrameView = new FrameView(string.Empty) { Y = 1, Width = Dim.Percent(50) }; aheadFrameView.Add(aheadListView); behindListView = new ListView <Commit>(columnDefinitions); behindFrameView = new FrameView(string.Empty) { Y = 1, Width = Dim.Percent(100) }; behindFrameView.Add(behindListView); Content = new StackPanel(StackPanelOrientation.Horizontal, aheadFrameView, behindFrameView); }