private void FileViewer_BottomScrollReached(object sender, EventArgs e) { DiffFiles.SelectNextVisibleItem(); diffViewer.ScrollToTop(); }
private void FileViewer_TopScrollReached(object sender, EventArgs e) { DiffFiles.SelectPreviousVisibleItem(); diffViewer.ScrollToBottom(); }
public FormDiffSmall() { InitializeComponent(); Translate(); DiffText.ExtraDiffArgumentsChanged += DiffText_ExtraDiffArgumentsChanged; DiffFiles.Focus(); }
private bool DeleteSelectedFiles() { try { if (DiffFiles.SelectedItem == null || DiffFiles.Revision == null || !DiffFiles.Revision.IsArtificial || MessageBox.Show(this, _deleteSelectedFiles.Text, _deleteSelectedFilesCaption.Text, MessageBoxButtons.YesNo) != DialogResult.Yes) { return(false); } var selectedItems = DiffFiles.SelectedItems; // If any file is staged, it must be unstaged var files = new List <GitItemStatus>(); var stagedItems = selectedItems.Where(item => item.Staged == StagedStatus.Index); foreach (var item in stagedItems) { if (!item.IsNew) { Module.UnstageFileToRemove(item.Name); if (item.IsRenamed) { Module.UnstageFileToRemove(item.OldName); } } else { files.Add(item); } } Module.UnstageFiles(files); DiffFiles.StoreNextIndexToSelect(); var items = DiffFiles.SelectedItems.Where(item => !item.IsSubmodule); foreach (var item in items) { var path = _fullPathResolver.Resolve(item.Name); bool isDir = (File.GetAttributes(path) & FileAttributes.Directory) == FileAttributes.Directory; if (isDir) { Directory.Delete(path, true); } else { File.Delete(path); } } RefreshArtificial(); } catch (Exception ex) { MessageBox.Show(this, _deleteFailed.Text + Environment.NewLine + ex.Message); return(false); } return(true); }
private void RevisionGridSelectionChanged(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; DiffFiles.SetDiffs(RevisionGrid.GetSelectedRevisions()); Cursor.Current = Cursors.Default; }