Пример #1
0
        /*
         * StoreFormState
         */

        /// <summary>
        /// </summary>
        /// <exception cref="ArgumentNullException">
        /// <paramref name="formToStore"/> is <see langword="null"/>.
        /// </exception>
        public void StoreFormState(Form formToStore)
        {
            if (formToStore == null)
            {
                throw new ArgumentNullException("formToStore");
            }

            NuGenFormStateDescriptor stateDescriptor = new NuGenFormStateDescriptor();

            stateDescriptor.BackColor = formToStore.BackColor;
            stateDescriptor.Padding   = formToStore.Padding;

            ControlStyles[] formControlStyles = NuGenEnum.ToArray <ControlStyles>();
            Debug.Assert(formControlStyles != null, "formControlStyles != null");

            for (int i = 0; i < formControlStyles.Length; i++)
            {
                stateDescriptor.Styles.Add(
                    formControlStyles[i],
                    NuGenControlPaint.GetStyle(formToStore, formControlStyles[i])
                    );
            }

            Debug.Assert(this.StoredForms != null, "this.StoredForms != null");

            if (this.StoredForms.ContainsKey(formToStore))
            {
                this.StoredForms[formToStore] = stateDescriptor;
            }
            else
            {
                this.StoredForms.Add(formToStore, stateDescriptor);
            }
        }
Пример #2
0
        public void StoreRestoreTest()
        {
            _Store.StoreFormState(_Form);

            bool    originalDoubleBuffer = NuGenControlPaint.GetStyle(_Form, ControlStyles.OptimizedDoubleBuffer);
            bool    originalOpaque       = NuGenControlPaint.GetStyle(_Form, ControlStyles.Opaque);
            bool    originalResizeRedraw = NuGenControlPaint.GetStyle(_Form, ControlStyles.ResizeRedraw);
            bool    originalSelectable   = NuGenControlPaint.GetStyle(_Form, ControlStyles.Selectable);
            Color   originalBackColor    = _Form.BackColor;
            Padding originalPadding      = _Form.Padding;

            bool    doubleBuffer = true;
            bool    opaque       = true;
            bool    resizeRedraw = true;
            bool    selectable   = true;
            Color   backColor    = Color.Blue;
            Padding padding      = new Padding(2, 3, 4, 5);

            Assert.AreNotEqual(originalBackColor, backColor);
            Assert.AreNotEqual(originalBackColor, padding);

            NuGenControlPaint.SetStyle(_Form, ControlStyles.OptimizedDoubleBuffer, doubleBuffer);
            NuGenControlPaint.SetStyle(_Form, ControlStyles.Opaque, opaque);
            NuGenControlPaint.SetStyle(_Form, ControlStyles.ResizeRedraw, resizeRedraw);
            NuGenControlPaint.SetStyle(_Form, ControlStyles.Selectable, selectable);
            _Form.BackColor = backColor;
            _Form.Padding   = padding;

            _Store.RestoreFormState(_Form);

            bool    restoredDoubleBuffer = NuGenControlPaint.GetStyle(_Form, ControlStyles.OptimizedDoubleBuffer);
            bool    restoredOpaque       = NuGenControlPaint.GetStyle(_Form, ControlStyles.Opaque);
            bool    restoredResizeRedraw = NuGenControlPaint.GetStyle(_Form, ControlStyles.ResizeRedraw);
            bool    restoredSelectable   = NuGenControlPaint.GetStyle(_Form, ControlStyles.Selectable);
            Color   restoredBackColor    = _Form.BackColor;
            Padding restoredPadding      = _Form.Padding;

            Assert.AreEqual(originalDoubleBuffer, restoredDoubleBuffer);
            Assert.AreEqual(originalOpaque, restoredOpaque);
            Assert.AreEqual(originalResizeRedraw, restoredResizeRedraw);
            Assert.AreEqual(originalSelectable, restoredSelectable);
            Assert.AreEqual(originalBackColor, restoredBackColor);
            Assert.AreEqual(originalPadding, restoredPadding);
        }