public RevisionGrid()
{
InitLayout();
InitializeComponent();
// Parent-child navigation can expect that SetSelectedRevision is always successfull since it always uses first-parents
_parentChildNavigationHistory = new ParentChildNavigationHistory(revision => SetSelectedRevision(revision));
_revisionHighlighting = new AuthorEmailBasedRevisionHighlighting();
this.Loading.Image = global::GitUI.Properties.Resources.loadingpanel;
Translate();
_revisionGridMenuCommands = new RevisionGridMenuCommands(this);
_revisionGridMenuCommands.CreateOrUpdateMenuCommands();
// fill View context menu from MenuCommands
var viewMenuCommands = _revisionGridMenuCommands.GetViewMenuCommands();
FillMenuFromMenuCommands(viewMenuCommands, viewToolStripMenuItem);
// fill Navigate context menu from MenuCommands
var navigateMenuCommands = _revisionGridMenuCommands.GetNavigateMenuCommands();
FillMenuFromMenuCommands(navigateMenuCommands, navigateToolStripMenuItem);
NormalFont = AppSettings.Font;
Loading.Paint += Loading_Paint;
Revisions.CellPainting += RevisionsCellPainting;
Revisions.CellFormatting += RevisionsCellFormatting;
Revisions.KeyPress += RevisionsKeyPress;
Revisions.KeyDown += RevisionsKeyDown;
Revisions.MouseDown += RevisionsMouseDown;
showMergeCommitsToolStripMenuItem.Checked = AppSettings.ShowMergeCommits;
BranchFilter = String.Empty;
SetShowBranches();
QuickRevisionFilter = "";
FixedRevisionFilter = "";
FixedPathFilter = "";
InMemFilterIgnoreCase = true;
InMemAuthorFilter = "";
InMemCommitterFilter = "";
InMemMessageFilter = "";
AllowGraphWithFilter = false;
_quickSearchString = "";
quickSearchTimer.Tick += QuickSearchTimerTick;
Revisions.Loading += RevisionsLoading;
//Allow to drop patch file on revisiongrid
Revisions.DragEnter += Revisions_DragEnter;
Revisions.DragDrop += Revisions_DragDrop;
Revisions.AllowDrop = true;
Revisions.ColumnHeadersVisible = false;
Revisions.IdColumn.Visible = AppSettings.ShowIds;
IsMessageMultilineDataGridViewColumn.Width = 25;
IsMessageMultilineDataGridViewColumn.DisplayIndex = 2;
IsMessageMultilineDataGridViewColumn.Resizable = DataGridViewTriState.False;
this.HotkeysEnabled = true;
try
{
SetRevisionsLayout((RevisionGridLayout)AppSettings.RevisionGraphLayout);
}
catch
{
SetRevisionsLayout(RevisionGridLayout.SmallWithGraph);
}
compareToBaseToolStripMenuItem.Enabled = false;
}