Mini Kabibi Habibi

Current Path : C:/Users/Public/Documents/DXperience 13.1 Demos/Silverlight/CS/DockingDemo/DemoTesting/
Upload File :
Current File : C:/Users/Public/Documents/DXperience 13.1 Demos/Silverlight/CS/DockingDemo/DemoTesting/Fixtures.cs

using System;
using System.Windows;
using DevExpress.Xpf.Core.Native;
using DevExpress.Xpf.DemoBase.DemoTesting;
using DevExpress.Xpf.Docking;
using DevExpress.Xpf.Layout.Core;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.Bars;

namespace DockingDemo.Tests {
    #region DockingDemoModulesAccessor
    public class DockingDemoModulesAccessor : DemoModulesAccessor<DockingDemoModule> {
        public DockingDemoModulesAccessor(BaseDemoTestingFixture fixture)
            : base(fixture) {
        }
        DockLayoutManager manager;
        public DockLayoutManager DockLayoutManager {
            get {
                if(manager == null)
                    manager = LayoutHelper.FindElement(DemoModule, Criteria) as DockLayoutManager;
                return manager;
            }
        }
        bool Criteria(FrameworkElement element) {
            return element is DevExpress.Xpf.Docking.DockLayoutManager;
        }
        public void ResetDockLayoutManager() {
            manager = null;
        }
        public IDEComplexLayout IDEComplexLayoutModule { get { return DemoModule as IDEComplexLayout; } }
        public RowColumnLayout RowColumnLayoutModule { get { return DemoModule as RowColumnLayout; } }
    }
    #endregion DockingDemoModulesAccessor
    public abstract class BaseDockingDemoTestingFixture : BaseDemoTestingFixture {
        readonly DockingDemoModulesAccessor modulesAccessor;
        public BaseDockingDemoTestingFixture() {
            modulesAccessor = new DockingDemoModulesAccessor(this);
        }
        public DockLayoutManager DockLayoutManager { get { return modulesAccessor.DockLayoutManager; } }
        protected void ResetDockLayoutManager() {
            modulesAccessor.ResetDockLayoutManager();
        }
        public IDEComplexLayout IDEComplexLayoutModule { get { return modulesAccessor.IDEComplexLayoutModule; } }
        public RowColumnLayout RowColumnLayoutModule { get { return modulesAccessor.RowColumnLayoutModule; } }
    }
    public class DockingCheckAllDemosFixture :
        CheckAllDemosFixture {
        Type[] skipMemoryLeaksCheckModules = new Type[] {
            typeof(IDEComplexLayout),
            typeof(VS2010Docking),
        };
        protected override bool CheckMemoryLeaks(Type moduleTyle) {
            return true;
        }
        protected override void CreateSwitchAllThemesActions() {
            base.CreateSwitchAllThemesActions();
        }
    }
}