private void InitializeTabControls() { _applicationState.Initializing = true; if (!_logicManager.HasExistingDatabase) { _applicationState.DatabaseLoaded = false; _applicationState.DatabaseExists = false; } else { _applicationState.DatabaseExists = true; } // Dispose current Tab controls foreach (TabPage tabPage in tabControlNotepad.TabPages) { foreach (Control tabPageControl in tabPage.Controls) { tabPageControl.Dispose(); } tabPage.Dispose(); } tabControlNotepad.TabPages.Clear(); for (int index = 0; index < _logicManager.PageCount; index++) { var tabPageControl = new MemoTabPageControl("MemoTabPageControl", index) { Dock = DockStyle.Fill }; var tabPage = new TabPage(_logicManager.GetTabPageLabel(index)); tabPageControl.TabTextDataChanged += tabPageControl_TabTextDataChanged; tabPage.Controls.Add(tabPageControl); if (ControlHelper.GetChildControlByName(tabPageControl, tabPageControl.TabPageControlTextboxName) is RichTextBox richTextBox) { SecureMemoFontSettings fontSettings = _appSettingsService.Settings.FontSettings; richTextBox.Font = new Font(fontSettings.FontFamily, fontSettings.FontSize, fontSettings.Style); richTextBox.Text = _logicManager.GetTabPageText(index); richTextBox.ContextMenuStrip = contextMenuTextArea; richTextBox.SelectionChanged += RichTextBox_SelectionChanged; } tabControlNotepad.TabPages.Add(tabPage); } tabControlNotepad.SelectedIndex = _logicManager.ActivePageIndex; _applicationState.Initializing = false; _applicationState.FontSettingsChanged = false; UpdateApplicationState(); }
private void InitializeTabControls() { _applicationState.Initializing = true; if (!_memoStorageService.DatabaseExists()) { _applicationState.DatabaseLoaded = false; _applicationState.DatabaseExists = false; } else { _applicationState.DatabaseExists = true; } // Create tab pages tabControlNotepad.TabPages.Clear(); foreach (int tabPageIndex in _tabPageDataCollection.TabPageDictionary.Keys) { TabPageData tabPageData = _tabPageDataCollection.TabPageDictionary[tabPageIndex]; var tabPageControl = new MemoTabPageControl("MemoTabPageControl", tabPageIndex) { Dock = DockStyle.Fill }; var tabPage = new TabPage(tabPageData.TabPageLabel); tabPageControl.TabTextDataChanged += tabPageControl_TabTextDataChanged; tabPage.Controls.Add(tabPageControl); var richTextBox = ControlHelper.GetChildControlByName(tabPageControl, tabPageControl.TabPageControlTextboxName) as RichTextBox; if (richTextBox != null) { SecureMemoFontSettings fontSettings = _appSettingsService.Settings.FontSettings; richTextBox.Font = new Font(fontSettings.FontFamily, fontSettings.FontSize, fontSettings.Style); richTextBox.Text = tabPageData.TabPageText; richTextBox.ContextMenuStrip = contextMenuTextArea; richTextBox.SelectionChanged += RichTextBox_SelectionChanged; } tabControlNotepad.TabPages.Add(tabPage); } tabControlNotepad.SelectedIndex = _tabPageDataCollection.ActiveTabIndex; _applicationState.Initializing = false; UpdateApplicationState(); }