public CommitInfo() { InitializeComponent(); Translate(); GitUICommandsSourceSet += (a, uiCommandsSource) => { _sortedRefs = null; }; _commitDataManager = new CommitDataManager(() => Module); var labelFormatter = new TabbedHeaderLabelFormatter(); var headerRenderer = new TabbedHeaderRenderStyleProvider(); _commitDataHeaderRenderer = new CommitDataHeaderRenderer(labelFormatter, _dateFormatter, headerRenderer, _linkFactory); _commitDataBodyRenderer = new CommitDataBodyRenderer(() => Module, _linkFactory); _externalLinksStorage = new ExternalLinksStorage(); _effectiveLinkDefinitionsProvider = new ConfiguredLinkDefinitionsProvider(_externalLinksStorage); _gitRemoteManager = new GitRemoteManager(() => Module); _externalLinkRevisionParser = new ExternalLinkRevisionParser(_gitRemoteManager); _gitRevisionExternalLinksParser = new GitRevisionExternalLinksParser(_effectiveLinkDefinitionsProvider, _externalLinkRevisionParser); _gitDescribeProvider = new GitDescribeProvider(() => Module); RevisionInfo.Font = AppSettings.Font; using (Graphics g = CreateGraphics()) { _RevisionHeader.Font = _commitDataHeaderRenderer.GetFont(g); } _RevisionHeader.SelectionTabs = _commitDataHeaderRenderer.GetTabStops().ToArray(); Hotkeys = HotkeySettingsManager.LoadHotkeys(FormBrowse.HotkeySettingsName); addNoteToolStripMenuItem.ShortcutKeyDisplayString = GetShortcutKeys((int)FormBrowse.Commands.AddNotes).ToShortcutKeyDisplayString(); }
public CommitInfo() { InitializeComponent(); InitializeComplete(); UICommandsSourceSet += delegate { this.InvokeAsync(() => ReloadCommitInfo()).FileAndForget(); }; _commitDataManager = new CommitDataManager(() => Module); _commitDataBodyRenderer = new CommitDataBodyRenderer(() => Module, _linkFactory); _externalLinksStorage = new ExternalLinksStorage(); _effectiveLinkDefinitionsProvider = new ConfiguredLinkDefinitionsProvider(_externalLinksStorage); _gitRemoteManager = new GitRemoteManager(() => Module); _externalLinkRevisionParser = new ExternalLinkRevisionParser(_gitRemoteManager); _gitRevisionExternalLinksParser = new GitRevisionExternalLinksParser(_effectiveLinkDefinitionsProvider, _externalLinkRevisionParser); _gitDescribeProvider = new GitDescribeProvider(() => Module); RevisionInfo.Font = AppSettings.Font; var color = SystemColors.Window.MakeColorDarker(0.04); pnlCommitMessage.BackColor = color; rtbxCommitMessage.BackColor = color; Hotkeys = HotkeySettingsManager.LoadHotkeys(FormBrowse.HotkeySettingsName); addNoteToolStripMenuItem.ShortcutKeyDisplayString = GetShortcutKeys((int)FormBrowse.Command.AddNotes).ToShortcutKeyDisplayString(); }
public CommitInfo() { InitializeComponent(); InitializeComplete(); UICommandsSourceSet += delegate { this.InvokeAsync(() => { UICommandsSource.UICommandsChanged += delegate { RefreshSortedTags(); }; // call this event handler also now (necessary for "Contained in branches/tags") RefreshSortedTags(); }).FileAndForget(); }; _commitDataManager = new CommitDataManager(() => Module); _commitDataBodyRenderer = new CommitDataBodyRenderer(() => Module, _linkFactory); _externalLinksStorage = new ExternalLinksStorage(); _effectiveLinkDefinitionsProvider = new ConfiguredLinkDefinitionsProvider(_externalLinksStorage); _remotesManager = new ConfigFileRemoteSettingsManager(() => Module); _externalLinkRevisionParser = new ExternalLinkRevisionParser(_remotesManager); _gitRevisionExternalLinksParser = new GitRevisionExternalLinksParser(_effectiveLinkDefinitionsProvider, _externalLinkRevisionParser); _gitDescribeProvider = new GitDescribeProvider(() => Module); _refsFormatter = new RefsFormatter(_linkFactory); var messageBackground = KnownColor.Window.MakeBackgroundDarkerBy(0.04); pnlCommitMessage.BackColor = messageBackground; rtbxCommitMessage.BackColor = messageBackground; rtbxCommitMessage.Font = AppSettings.CommitFont; RevisionInfo.Font = AppSettings.Font; Hotkeys = HotkeySettingsManager.LoadHotkeys(FormBrowse.HotkeySettingsName); addNoteToolStripMenuItem.ShortcutKeyDisplayString = GetShortcutKeys((int)FormBrowse.Command.AddNotes).ToShortcutKeyDisplayString(); _commitMessageResizedSubscription = subscribeToContentsResized(rtbxCommitMessage, CommitMessage_ContentsResized); _revisionInfoResizedSubscription = subscribeToContentsResized(RevisionInfo, RevisionInfo_ContentsResized); IDisposable subscribeToContentsResized(RichTextBox richTextBox, Action <ContentsResizedEventArgs> handler) => Observable .FromEventPattern <ContentsResizedEventHandler, ContentsResizedEventArgs>( h => richTextBox.ContentsResized += h, h => richTextBox.ContentsResized -= h) .Throttle(TimeSpan.FromMilliseconds(100)) .ObserveOn(MainThreadScheduler.Instance) .Subscribe(_ => handler(_.EventArgs)); commitInfoHeader.SetContextMenuStrip(commitInfoContextMenuStrip); }
public void Setup() { _testHelper = new GitModuleTestHelper(); var content = EmbeddedResourceLoader.Load(Assembly.GetExecutingAssembly(), $"{GetType().Namespace}.MockData.level1_repogit_GitExtensions.settings.xml"); _level1 = _testHelper.CreateRepoFile(".git", "GitExtensions.settings", content); content = EmbeddedResourceLoader.Load(Assembly.GetExecutingAssembly(), $"{GetType().Namespace}.MockData.level2_repodist_GitExtensions.settings.xml"); _level2 = _testHelper.CreateFile(_testHelper.TemporaryPath + "/RoamingProfile", "GitExtensions.settings", content); content = EmbeddedResourceLoader.Load(Assembly.GetExecutingAssembly(), $"{GetType().Namespace}.MockData.level3_roaming_GitExtensions.settings.xml"); _level3 = _testHelper.CreateRepoFile("GitExtensions.settings", content); _userRoaming = new RepoDistSettings(null, new GitExtSettingsCache(_level3)); _repoDistributed = new RepoDistSettings(_userRoaming, new GitExtSettingsCache(_level2)); _repoLocal = new RepoDistSettings(_repoDistributed, new GitExtSettingsCache(_level1)); _externalLinksStorage = Substitute.For <IExternalLinksStorage>(); _provider = new ConfiguredLinkDefinitionsProvider(_externalLinksStorage); }
public CommitInfo() { InitializeComponent(); InitializeComplete(); UICommandsSourceSet += delegate { this.InvokeAsync(() => ReloadCommitInfo()).FileAndForget(); }; _commitDataManager = new CommitDataManager(() => Module); _commitDataBodyRenderer = new CommitDataBodyRenderer(() => Module, _linkFactory); _externalLinksStorage = new ExternalLinksStorage(); _effectiveLinkDefinitionsProvider = new ConfiguredLinkDefinitionsProvider(_externalLinksStorage); _gitRemoteManager = new GitRemoteManager(() => Module); _externalLinkRevisionParser = new ExternalLinkRevisionParser(_gitRemoteManager); _gitRevisionExternalLinksParser = new GitRevisionExternalLinksParser(_effectiveLinkDefinitionsProvider, _externalLinkRevisionParser); _gitDescribeProvider = new GitDescribeProvider(() => Module); var color = SystemColors.Window.MakeColorDarker(0.04); pnlCommitMessage.BackColor = color; rtbxCommitMessage.BackColor = color; rtbxCommitMessage.Font = AppSettings.CommitFont; RevisionInfo.Font = AppSettings.Font; Hotkeys = HotkeySettingsManager.LoadHotkeys(FormBrowse.HotkeySettingsName); addNoteToolStripMenuItem.ShortcutKeyDisplayString = GetShortcutKeys((int)FormBrowse.Command.AddNotes).ToShortcutKeyDisplayString(); _commitMessageResizedSubscription = subscribeToContentsResized(rtbxCommitMessage, CommitMessage_ContentsResized); _revisionInfoResizedSubscription = subscribeToContentsResized(RevisionInfo, RevisionInfo_ContentsResized); IDisposable subscribeToContentsResized(RichTextBox richTextBox, Action <ContentsResizedEventArgs> handler) => Observable .FromEventPattern <ContentsResizedEventHandler, ContentsResizedEventArgs>( h => richTextBox.ContentsResized += h, h => richTextBox.ContentsResized -= h) .Throttle(TimeSpan.FromMilliseconds(100)) .ObserveOn(MainThreadScheduler.Instance) .Subscribe(_ => handler(_.EventArgs)); }
public ConfiguredLinkDefinitionsProvider(IExternalLinksStorage externalLinksStorage) { _externalLinksStorage = externalLinksStorage; }