public MainForm(IFormOpener formManager, IMainFormPresenter presenter, MainFormStyler mainFormStyler, IPubSub pubsub, IPropertiesRepository propertiesRepository) { InitializeComponent(); _mainFormStyler = mainFormStyler; _pubsub = pubsub; RenderTheme(); if (propertiesRepository.GetValue <bool>(Constants.AppProperties.UpdateSettings)) { propertiesRepository.Upgrade(); propertiesRepository.SetValue(Constants.AppProperties.UpdateSettings, false); propertiesRepository.Save(); } _formManager = formManager; presenter.InitializePresenter(new { MainForm = this, PubSub = _pubsub }); var selectedPath = propertiesRepository.GetValue <string>(Constants.AppProperties.SelectedPath); if (!string.IsNullOrEmpty(selectedPath)) { Presenter.PopulateTreeView(selectedPath); } _propertiesRepository = propertiesRepository; }
private void queryTabControl_DrawItem(object sender, DrawItemEventArgs e) { var BackBrush = MainFormStyler.GetTabBrush(AppReferences.CurrentTheme); e.Graphics.FillRectangle(BackBrush, queryTabControl.Bounds); queryTabControl.SuspendLayout(); var list = (System.Collections.IList)queryTabControl.TabPages; for (var i = 0; i < list.Count; i++) { var tabRect = queryTabControl.GetTabRect(i); var tabPage = queryTabControl.TabPages[i]; var presenter = tabPage.Tag as QueryWindowPresenter; var brushColor = MainFormStyler.GetTabBackground(AppReferences.CurrentTheme); if (presenter.SelectedConnection != null) { brushColor = Presenter.GetConnectionColor(presenter.SelectedConnection.Name); } using (Brush br = new SolidBrush(brushColor)) { e.Graphics.FillRectangle(br, tabRect); var rect = tabRect; rect.Offset(0, 1); rect.Inflate(0, -1); e.Graphics.DrawRectangle(Pens.DarkGray, rect); e.DrawFocusRectangle(); } tabRect.Inflate(-2, -2); var closeImage = Properties.Resources.closeIcon; e.Graphics.DrawImage(closeImage, (tabRect.Right - 10), tabRect.Top + (tabRect.Height - closeImage.Height) / 2, 10, 10); TextRenderer.DrawText(e.Graphics, tabPage.Text, tabPage.Font, tabRect, Color.Black, TextFormatFlags.Left); } queryTabControl.ResumeLayout(); }
public MainForm(IFormOpener formManager, IMainFormPresenter presenter, MainFormStyler mainFormStyler) { InitializeComponent(); mainFormStyler.ApplyTheme(ThemeType.Dark, this); if (Properties.Settings.Default.UpdateSettings) { Properties.Settings.Default.Upgrade(); Properties.Settings.Default.UpdateSettings = false; Properties.Settings.Default.Save(); } _formManager = formManager; presenter.InitializePresenter(new { MainForm = this }); if (!string.IsNullOrEmpty(Properties.Settings.Default.SelectedPath)) { Presenter.PopulateTreeView(Properties.Settings.Default.SelectedPath); } }