/// <summary>Saves the base form settings.</summary> /// <param name="settings">The settings to save.</param> protected void SaveBaseFormSettings(BaseFormSettings settings) { if (settings == null) throw new ArgumentNullException("settings"); switch (WindowState) { case FormWindowState.Normal: Rectangle bounds = Bounds; settings.X = bounds.X; settings.Y = bounds.Y; settings.Width = bounds.Width; settings.Height = bounds.Height; settings.IsMaximized = false; break; case FormWindowState.Maximized: settings.IsMaximized = true; break; } }
/// <summary>Loads the base form settings.</summary> /// <param name="settings">The settings to load.</param> protected void LoadBaseFormSettings(BaseFormSettings settings) { if (settings == null) throw new ArgumentNullException("settings"); Rectangle bounds = Bounds; if (settings.X >= 0) bounds.X = settings.X; if (settings.Y >= 0) bounds.Y = settings.Y; if (settings.Width >= 0) bounds.Width = settings.Width; if (settings.Height >= 0) bounds.Height = settings.Height; Bounds = bounds.AdjustBoundsToWorkingArea(); WindowState = settings.IsMaximized ? FormWindowState.Maximized : FormWindowState.Normal; }